xterm.log.html revision 5104ee6e
1<!-- 2 ***************************************************************************** 3 * this file is part of xterm * 4 * * 5 * Copyright 1997-2024,2025 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.2672 2025/01/06 00:11:11 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-2024,2025 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_397">Patch #397 - 2025/01/05</a></li> 74 75 <li><a href="#xterm_396">Patch #396 - 2024/12/02</a></li> 76 77 <li><a href="#xterm_395">Patch #395 - 2024/10/24</a></li> 78 79 <li><a href="#xterm_394">Patch #394 - 2024/09/02</a></li> 80 81 <li><a href="#xterm_393">Patch #393 - 2024/07/11</a></li> 82 83 <li><a href="#xterm_392">Patch #392 - 2024/05/22</a></li> 84 85 <li><a href="#xterm_391">Patch #391 - 2024/05/12</a></li> 86 87 <li><a href="#xterm_390">Patch #390 - 2024/02/19</a></li> 88 89 <li><a href="#xterm_389">Patch #389 - 2024/01/01</a></li> 90 91 <li><a href="#xterm_388">Patch #388 - 2023/10/22</a></li> 92 93 <li><a href="#xterm_387">Patch #387 - 2023/10/15</a></li> 94 95 <li><a href="#xterm_386">Patch #386 - 2023/10/09</a></li> 96 97 <li><a href="#xterm_385">Patch #385 - 2023/10/01</a></li> 98 99 <li><a href="#xterm_384">Patch #384 - 2023/07/10</a></li> 100 101 <li><a href="#xterm_383">Patch #383 - 2023/06/27</a></li> 102 103 <li><a href="#xterm_382">Patch #382 - 2023/05/30</a></li> 104 105 <li><a href="#xterm_381">Patch #381 - 2023/05/28</a></li> 106 107 <li><a href="#xterm_380">Patch #380 - 2023/05/09</a></li> 108 109 <li><a href="#xterm_379">Patch #379 - 2023/02/15</a></li> 110 111 <li><a href="#xterm_378">Patch #378 - 2023/01/09</a></li> 112 113 <li><a href="#xterm_377">Patch #377 - 2022/11/25</a></li> 114 115 <li><a href="#xterm_376">Patch #376 - 2022/11/16</a></li> 116 117 <li><a href="#xterm_375">Patch #375 - 2022/10/23</a></li> 118 119 <li><a href="#xterm_374">Patch #374 - 2022/10/10</a></li> 120 121 <li><a href="#xterm_373">Patch #373 - 2022/09/25</a></li> 122 123 <li><a href="#xterm_372">Patch #372 - 2022/03/09</a></li> 124 125 <li><a href="#xterm_371">Patch #371 - 2022/02/24</a></li> 126 127 <li><a href="#xterm_370">Patch #370 - 2021/11/13</a></li> 128 129 <li><a href="#xterm_369">Patch #369 - 2021/09/21</a></li> 130 131 <li><a href="#xterm_368">Patch #368 - 2021/06/07</a></li> 132 133 <li><a href="#xterm_367">Patch #367 - 2021/03/26</a></li> 134 135 <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li> 136 137 <li><a href="#xterm_365">Patch #365 - 2021/02/03</a></li> 138 139 <li><a href="#xterm_364">Patch #364 - 2021/02/02</a></li> 140 141 <li><a href="#xterm_363">Patch #363 - 2020/12/26</a></li> 142 143 <li><a href="#xterm_362">Patch #362 - 2020/11/11</a></li> 144 145 <li><a href="#xterm_361">Patch #361 - 2020/10/14</a></li> 146 147 <li><a href="#xterm_360">Patch #360 - 2020/09/20</a></li> 148 149 <li><a href="#xterm_359">Patch #359 - 2020/08/17</a></li> 150 151 <li><a href="#xterm_358">Patch #358 - 2020/07/12</a></li> 152 153 <li><a href="#xterm_357">Patch #357 - 2020/07/05</a></li> 154 155 <li><a href="#xterm_356">Patch #356 - 2020/05/02</a></li> 156 157 <li><a href="#xterm_355">Patch #355 - 2020/05/01</a></li> 158 159 <li><a href="#xterm_354">Patch #354 - 2020/04/26</a></li> 160 161 <li><a href="#xterm_353">Patch #353 - 2020/02/01</a></li> 162 163 <li><a href="#xterm_352">Patch #352 - 2020/01/16</a></li> 164 165 <li><a href="#xterm_351">Patch #351 - 2019/11/17</a></li> 166 167 <li><a href="#xterm_350">Patch #350 - 2019/11/02</a></li> 168 169 <li><a href="#xterm_349">Patch #349 - 2019/09/22</a></li> 170 171 <li><a href="#xterm_348">Patch #348 - 2019/07/22</a></li> 172 173 <li><a href="#xterm_347">Patch #347 - 2019/06/30</a></li> 174 175 <li><a href="#xterm_346">Patch #346 - 2019/05/27</a></li> 176 177 <li><a href="#xterm_345">Patch #345 - 2019/05/14</a></li> 178 179 <li><a href="#xterm_344">Patch #344 - 2019/02/12</a></li> 180 181 <li><a href="#xterm_343">Patch #343 - 2019/01/13</a></li> 182 183 <li><a href="#xterm_342">Patch #342 - 2019/01/03</a></li> 184 185 <li><a href="#xterm_341">Patch #341 - 2018/12/24</a></li> 186 187 <li><a href="#xterm_340">Patch #340 - 2018/12/16</a></li> 188 189 <li><a href="#xterm_339">Patch #339 - 2018/12/12</a></li> 190 191 <li><a href="#xterm_338">Patch #338 - 2018/12/09</a></li> 192 193 <li><a href="#xterm_337">Patch #337 - 2018/09/21</a></li> 194 195 <li><a href="#xterm_336">Patch #336 - 2018/09/19</a></li> 196 197 <li><a href="#xterm_335">Patch #335 - 2018/08/14</a></li> 198 199 <li><a href="#xterm_334">Patch #334 - 2018/08/12</a></li> 200 201 <li><a href="#xterm_333">Patch #333 - 2018/05/03</a></li> 202 203 <li><a href="#xterm_332">Patch #332 - 2018/04/15</a></li> 204 205 <li><a href="#xterm_331">Patch #331 - 2017/12/30</a></li> 206 207 <li><a href="#xterm_330">Patch #330 - 2017/06/20</a></li> 208 209 <li><a href="#xterm_329">Patch #329 - 2017/06/12</a></li> 210 211 <li><a href="#xterm_328">Patch #328 - 2017/06/01</a></li> 212 213 <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> 214 215 <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> 216 217 <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> 218 219 <li><a href="#xterm_324">Patch #324 - 2016/03/10</a></li> 220 221 <li><a href="#xterm_323">Patch #323 - 2016/03/07</a></li> 222 223 <li><a href="#xterm_322">Patch #322 - 2016/01/02</a></li> 224 225 <li><a href="#xterm_321">Patch #321 - 2015/12/31</a></li> 226 227 <li><a href="#xterm_320">Patch #320 - 2015/08/28</a></li> 228 229 <li><a href="#xterm_319">Patch #319 - 2015/08/19</a></li> 230 231 <li><a href="#xterm_318">Patch #318 - 2015/04/12</a></li> 232 233 <li><a href="#xterm_317">Patch #317 - 2015/03/27</a></li> 234 235 <li><a href="#xterm_316">Patch #316 - 2015/03/07</a></li> 236 237 <li><a href="#xterm_315">Patch #315 - 2015/03/02</a></li> 238 239 <li><a href="#xterm_314">Patch #314 - 2014/12/28</a></li> 240 241 <li><a href="#xterm_313">Patch #313 - 2014/11/28</a></li> 242 243 <li><a href="#xterm_312">Patch #312 - 2014/09/28</a></li> 244 245 <li><a href="#xterm_311">Patch #311 - 2014/09/18</a></li> 246 247 <li><a href="#xterm_310">Patch #310 - 2014/07/25</a></li> 248 249 <li><a href="#xterm_309">Patch #309 - 2014/07/13</a></li> 250 251 <li><a href="#xterm_308">Patch #308 - 2014/06/19</a></li> 252 253 <li><a href="#xterm_307">Patch #307 - 2014/06/17</a></li> 254 255 <li><a href="#xterm_306">Patch #306 - 2014/06/03</a></li> 256 257 <li><a href="#xterm_305">Patch #305 - 2014/06/02</a></li> 258 259 <li><a href="#xterm_304">Patch #304 - 2014/05/03</a></li> 260 261 <li><a href="#xterm_303">Patch #303 - 2014/03/06</a></li> 262 263 <li><a href="#xterm_302">Patch #302 - 2014/03/02</a></li> 264 265 <li><a href="#xterm_301">Patch #301 - 2014/01/19</a></li> 266 267 <li><a href="#xterm_300">Patch #300 - 2013/12/03</a></li> 268 269 <li><a href="#xterm_299">Patch #299 - 2013/12/01</a></li> 270 271 <li><a href="#xterm_298">Patch #298 - 2013/11/27</a></li> 272 273 <li><a href="#xterm_297">Patch #297 - 2013/09/10</a></li> 274 275 <li><a href="#xterm_296">Patch #296 - 2013/07/10</a></li> 276 277 <li><a href="#xterm_295">Patch #295 - 2013/07/06</a></li> 278 279 <li><a href="#xterm_294">Patch #294 - 2013/07/05</a></li> 280 281 <li><a href="#xterm_293">Patch #293 - 2013/05/27</a></li> 282 283 <li><a href="#xterm_292">Patch #292 - 2013/04/25</a></li> 284 285 <li><a href="#xterm_291">Patch #291 - 2013/02/26</a></li> 286 287 <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li> 288 289 <li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li> 290 291 <li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li> 292 293 <li><a href="#xterm_287">Patch #287 - 2012/11/25</a></li> 294 295 <li><a href="#xterm_286">Patch #286 - 2012/10/29</a></li> 296 297 <li><a href="#xterm_285">Patch #285 - 2012/10/23</a></li> 298 299 <li><a href="#xterm_284">Patch #284 - 2012/10/14</a></li> 300 301 <li><a href="#xterm_283">Patch #283 - 2012/10/09</a></li> 302 303 <li><a href="#xterm_282">Patch #282 - 2012/09/28</a></li> 304 305 <li><a href="#xterm_281">Patch #281 - 2012/06/26</a></li> 306 307 <li><a href="#xterm_280">Patch #280 - 2012/06/24</a></li> 308 309 <li><a href="#xterm_279">Patch #279 - 2012/05/10</a></li> 310 311 <li><a href="#xterm_278">Patch #278 - 2012/01/18</a></li> 312 313 <li><a href="#xterm_277">Patch #277 - 2012/01/07</a></li> 314 315 <li><a href="#xterm_276">Patch #276 - 2011/10/10</a></li> 316 317 <li><a href="#xterm_275">Patch #275 - 2011/09/11</a></li> 318 319 <li><a href="#xterm_274">Patch #274 - 2011/09/05</a></li> 320 321 <li><a href="#xterm_273">Patch #273 - 2011/08/25</a></li> 322 323 <li><a href="#xterm_272">Patch #272 - 2011/08/24</a></li> 324 325 <li><a href="#xterm_271">Patch #271 - 2011/07/14</a></li> 326 327 <li><a href="#xterm_270">Patch #270 - 2011/04/26</a></li> 328 329 <li><a href="#xterm_269">Patch #269 - 2011/02/19</a></li> 330 331 <li><a href="#xterm_268">Patch #268 - 2011/02/10</a></li> 332 333 <li><a href="#xterm_267">Patch #267 - 2010/11/20</a></li> 334 335 <li><a href="#xterm_266">Patch #266 - 2010/10/24</a></li> 336 337 <li><a href="#xterm_265">Patch #265 - 2010/10/22</a></li> 338 339 <li><a href="#xterm_264">Patch #264 - 2010/10/14</a></li> 340 341 <li><a href="#xterm_263">Patch #263 - 2010/10/13</a></li> 342 343 <li><a href="#xterm_262">Patch #262 - 2010/8/30</a></li> 344 345 <li><a href="#xterm_261">Patch #261 - 2010/6/28</a></li> 346 347 <li><a href="#xterm_260">Patch #260 - 2010/6/20</a></li> 348 349 <li><a href="#xterm_259">Patch #259 - 2010/6/5</a></li> 350 351 <li><a href="#xterm_258">Patch #258 - 2010/5/1</a></li> 352 353 <li><a href="#xterm_257">Patch #257 - 2010/4/22</a></li> 354 355 <li><a href="#xterm_256">Patch #256 - 2010/3/6</a></li> 356 357 <li><a href="#xterm_255">Patch #255 - 2010/1/21</a></li> 358 359 <li><a href="#xterm_254">Patch #254 - 2010/1/6</a></li> 360 361 <li><a href="#xterm_253">Patch #253 - 2009/12/10</a></li> 362 363 <li><a href="#xterm_252">Patch #252 - 2009/12/7</a></li> 364 365 <li><a href="#xterm_251">Patch #251 - 2009/11/11</a></li> 366 367 <li><a href="#xterm_250">Patch #250 - 2009/10/13</a></li> 368 369 <li><a href="#xterm_249">Patch #249 - 2009/10/1</a></li> 370 371 <li><a href="#xterm_248">Patch #248 - 2009/9/11</a></li> 372 373 <li><a href="#xterm_247">Patch #247 - 2009/8/30</a></li> 374 375 <li><a href="#xterm_246">Patch #246 - 2009/8/16</a></li> 376 377 <li><a href="#xterm_245">Patch #245 - 2009/8/12</a></li> 378 379 <li><a href="#xterm_244">Patch #244 - 2009/8/9</a></li> 380 381 <li><a href="#xterm_243">Patch #243 - 2009/3/28</a></li> 382 383 <li><a href="#xterm_242">Patch #242 - 2009/2/15</a></li> 384 385 <li><a href="#xterm_241">Patch #241 - 2009/1/26</a></li> 386 387 <li><a href="#xterm_240">Patch #240 - 2009/1/25</a></li> 388 389 <li><a href="#xterm_239">Patch #239 - 2009/1/8</a></li> 390 391 <li><a href="#xterm_238">Patch #238 - 2008/12/30</a></li> 392 393 <li><a href="#xterm_237">Patch #237 - 2008/09/14</a></li> 394 395 <li><a href="#xterm_236">Patch #236 - 2008/07/27</a></li> 396 397 <li><a href="#xterm_235">Patch #235 - 2008/04/20</a></li> 398 399 <li><a href="#xterm_234">Patch #234 - 2008/03/02</a></li> 400 401 <li><a href="#xterm_233">Patch #233 - 2008/02/24</a></li> 402 403 <li><a href="#xterm_232">Patch #232 - 2008/01/30</a></li> 404 405 <li><a href="#xterm_231">Patch #231 - 2008/01/05</a></li> 406 407 <li><a href="#xterm_230">Patch #230 - 2007/12/31</a></li> 408 409 <li><a href="#xterm_229">Patch #229 - 2007/8/12</a></li> 410 411 <li><a href="#xterm_228">Patch #228 - 2007/7/22</a></li> 412 413 <li><a href="#xterm_227">Patch #227 - 2007/6/27</a></li> 414 415 <li><a href="#xterm_226">Patch #226 - 2007/6/17</a></li> 416 417 <li><a href="#xterm_225">Patch #225 - 2007/3/24</a></li> 418 419 <li><a href="#xterm_224">Patch #224 - 2007/2/11</a></li> 420 421 <li><a href="#xterm_223">Patch #223 - 2006/11/30</a></li> 422 423 <li><a href="#xterm_222">Patch #222 - 2006/10/17</a></li> 424 425 <li><a href="#xterm_221">Patch #221 - 2006/10/1</a></li> 426 427 <li><a href="#xterm_220">Patch #220 - 2006/9/10</a></li> 428 429 <li><a href="#xterm_219">Patch #219 - 2006/9/4</a></li> 430 431 <li><a href="#xterm_218">Patch #218 - 2006/8/27</a></li> 432 433 <li><a href="#xterm_217">Patch #217 - 2006/8/20</a></li> 434 435 <li><a href="#xterm_216">Patch #216 - 2006/8/3</a></li> 436 437 <li><a href="#xterm_215">Patch #215 - 2006/6/19 - XFree86 438 4.6.99.2</a></li> 439 440 <li><a href="#xterm_214">Patch #214 - 2006/6/18 - XFree86 441 4.6.99.2</a></li> 442 443 <li><a href="#xterm_213">Patch #213 - 2006/4/30 - XFree86 444 4.5.99.905</a></li> 445 446 <li><a href="#xterm_212">Patch #212 - 2006/4/9 - XFree86 447 4.5.99.904</a></li> 448 449 <li><a href="#xterm_211">Patch #211 - 2006/3/19 - XFree86 450 4.5.99.902</a></li> 451 452 <li><a href="#xterm_210">Patch #210 - 2006/3/12 - XFree86 453 4.5.99.902</a></li> 454 455 <li><a href="#xterm_209">Patch #209 - 2006/2/12 - XFree86 456 4.5.99.22</a></li> 457 458 <li><a href="#xterm_208">Patch #208 - 2006/1/3 - XFree86 459 4.5.99.19</a></li> 460 461 <li><a href="#xterm_207">Patch #207 - 2005/11/13 - XFree86 462 4.5.99.16</a></li> 463 464 <li><a href="#xterm_206">Patch #206 - 2005/11/3 - XFree86 465 4.5.99.15</a></li> 466 467 <li><a href="#xterm_205">Patch #205 - 2005/9/18 - XFree86 468 4.5.99.12</a></li> 469 470 <li><a href="#xterm_204">Patch #204 - 2005/8/4 - XFree86 471 4.5.99.9</a></li> 472 473 <li><a href="#xterm_203">Patch #203 - 2005/7/6 - XFree86 474 4.5.99.7</a></li> 475 476 <li><a href="#xterm_202">Patch #202 - 2005/5/2 - XFree86 477 4.5.99.3</a></li> 478 479 <li><a href="#xterm_201">Patch #201 - 2005/4/21 - XFree86 480 4.5.99.2</a></li> 481 482 <li><a href="#xterm_200">Patch #200 - 2005/2/6 - XFree86 483 4.4.99.23</a></li> 484 485 <li><a href="#xterm_199">Patch #199 - 2005/1/17 - XFree86 486 4.4.99.22</a></li> 487 488 <li><a href="#xterm_198">Patch #198 - 2005/1/13 - XFree86 489 4.4.99.21</a></li> 490 491 <li><a href="#xterm_197">Patch #197 - 2004/11/30 - XFree86 492 4.4.99.19</a></li> 493 494 <li><a href="#xterm_196">Patch #196 - 2004/8/15 - XFree86 495 4.4.99.12</a></li> 496 497 <li><a href="#xterm_195">Patch #195 - 2004/8/8 - XFree86 498 4.4.99.11</a></li> 499 500 <li><a href="#xterm_194">Patch #194 - 2004/7/27 - XFree86 501 4.4.99.11</a></li> 502 503 <li><a href="#xterm_193">Patch #193 - 2004/7/19 - XFree86 504 4.4.99.10</a></li> 505 506 <li><a href="#xterm_192">Patch #192 - 2004/7/12 - XFree86 507 4.4.99.9</a></li> 508 509 <li><a href="#xterm_191">Patch #191 - 2004/6/6 - XFree86 510 4.4.99.7</a></li> 511 512 <li><a href="#xterm_190">Patch #190 - 2004/5/25 - XFree86 513 4.4.99.6</a></li> 514 515 <li><a href="#xterm_189">Patch #189 - 2004/5/16 - XFree86 516 4.4.99.6</a></li> 517 518 <li><a href="#xterm_188">Patch #188 - 2004/5/12 - XFree86 519 4.4.99.6</a></li> 520 521 <li><a href="#xterm_187">Patch #187 - 2004/4/27 - XFree86 522 4.4.99.4</a></li> 523 524 <li><a href="#xterm_186">Patch #186 - 2004/4/18 - XFree86 525 4.4.99.4</a></li> 526 527 <li><a href="#xterm_185">Patch #185 - 2004/3/3 - XFree86 528 4.4</a></li> 529 530 <li><a href="#xterm_184">Patch #184 - 2003/12/31 - XFree86 531 4.3.99.903</a></li> 532 533 <li><a href="#xterm_183">Patch #183 - 2003/12/26 - XFree86 534 4.3.99.903</a></li> 535 536 <li><a href="#xterm_182">Patch #182 - 2003/12/2 - XFree86 537 4.3.99.901</a></li> 538 539 <li><a href="#xterm_181">Patch #181 - 2003/10/26 - XFree86 540 4.3.99.15</a></li> 541 542 <li><a href="#xterm_180">Patch #180 - 2003/10/12 - XFree86 543 4.3.99.15</a></li> 544 545 <li><a href="#xterm_179">Patch #179 - 2003/5/21 - XFree86 546 4.3.99.5</a></li> 547 548 <li><a href="#xterm_178">Patch #178 - 2003/5/18 - XFree86 549 4.3.99.5</a></li> 550 551 <li><a href="#xterm_177">Patch #177 - 2003/3/23 - XFree86 552 4.3.0</a></li> 553 554 <li><a href="#xterm_176">Patch #176 - 2003/3/22 - XFree86 555 4.3.0</a></li> 556 557 <li><a href="#xterm_175">Patch #175 - 2003/3/9 - XFree86 558 4.3.0</a></li> 559 560 <li><a href="#xterm_174">Patch #174 - 2003/2/25 - XFree86 561 4.2.99.903</a></li> 562 563 <li><a href="#xterm_173">Patch #173 - 2003/2/6 - XFree86 564 4.2.99.902</a></li> 565 566 <li><a href="#xterm_172">Patch #172 - 2002/12/27 - XFree86 567 4.2.99.3</a></li> 568 569 <li><a href="#xterm_171">Patch #171 - 2002/12/12 - XFree86 570 4.2.99.3</a></li> 571 572 <li><a href="#xterm_170">Patch #170 - 2002/10/13 - XFree86 573 4.2.1</a></li> 574 575 <li><a href="#xterm_169">Patch #169 - 2002/10/5 - XFree86 576 4.2.1</a></li> 577 578 <li><a href="#xterm_168">Patch #168 - 2002/9/29 - XFree86 579 4.2.1</a></li> 580 581 <li><a href="#xterm_167">Patch #167 - 2002/8/24 - XFree86 582 4.2.0</a></li> 583 584 <li><a href="#xterm_166">Patch #166 - 2002/3/25 - XFree86 585 4.2.0</a></li> 586 587 <li><a href="#xterm_165">Patch #165 - 2002/1/5 - XFree86 588 4.1.0</a></li> 589 590 <li><a href="#xterm_164">Patch #164 - 2001/11/13 - XFree86 591 4.1.0</a></li> 592 593 <li><a href="#xterm_163">Patch #163 - 2001/11/04 - XFree86 594 4.1.0</a></li> 595 596 <li><a href="#xterm_162">Patch #162 - 2001/10/23 - XFree86 597 4.1.0</a></li> 598 599 <li><a href="#xterm_161">Patch #161 - 2001/10/10 - XFree86 600 4.1.0</a></li> 601 602 <li><a href="#xterm_160">Patch #160 - 2001/10/7 - XFree86 603 4.1.0</a></li> 604 605 <li><a href="#xterm_159">Patch #159 - 2001/9/19 - XFree86 606 4.1.0</a></li> 607 608 <li><a href="#xterm_158">Patch #158 - 2001/9/8 - XFree86 609 4.1.0</a></li> 610 611 <li><a href="#xterm_157">Patch #157 - 2001/6/18 - XFree86 612 4.1.0</a></li> 613 614 <li><a href="#xterm_156">Patch #156 - 2001/4/28 - XFree86 615 4.0.3</a></li> 616 617 <li><a href="#xterm_155">Patch #155 - 2001/4/20 - XFree86 618 4.0.3</a></li> 619 620 <li><a href="#xterm_154">Patch #154 - 2001/4/11 - XFree86 621 4.0.3</a></li> 622 623 <li><a href="#xterm_153">Patch #153 - 2001/3/29 - XFree86 624 4.0.3</a></li> 625 626 <li><a href="#xterm_152">Patch #152 - 2001/3/13 - XFree86 627 4.0.2</a></li> 628 629 <li><a href="#xterm_151">Patch #151 - 2001/3/10 - XFree86 630 4.0.2</a></li> 631 632 <li><a href="#xterm_150">Patch #150 - 2000/12/29 - XFree86 633 4.0.2</a></li> 634 635 <li><a href="#xterm_149">Patch #149 - 2000/12/6 - XFree86 636 4.0.1h</a></li> 637 638 <li><a href="#xterm_148">Patch #148 - 2000/10/31 - XFree86 639 4.0.1d</a></li> 640 641 <li><a href="#xterm_147">Patch #147 - 2000/10/26 - XFree86 642 4.0.1c</a></li> 643 644 <li><a href="#xterm_146">Patch #146 - 2000/9/12 - XFree86 645 4.0.1c</a></li> 646 647 <li><a href="#xterm_145">Patch #145 - 2000/9/11 - XFree86 648 4.0.1c</a></li> 649 650 <li><a href="#xterm_144">Patch #144 - 2000/8/23 - XFree86 651 4.0.1b</a></li> 652 653 <li><a href="#xterm_143">Patch #143 - 2000/8/19 - XFree86 654 4.0.1b</a></li> 655 656 <li><a href="#xterm_142">Patch #142 - 2000/8/18 - XFree86 657 4.0.1b</a></li> 658 659 <li><a href="#xterm_141">Patch #141 - 2000/8/14 - XFree86 660 4.0.1b</a></li> 661 662 <li><a href="#xterm_140">Patch #140 - 2000/7/23 - XFree86 663 4.0.1</a></li> 664 665 <li><a href="#xterm_139">Patch #139 - 2000/6/17 - XFree86 666 4.0d</a></li> 667 668 <li><a href="#xterm_138">Patch #138 - 2000/6/15 - XFree86 669 4.0c</a></li> 670 671 <li><a href="#xterm_137">Patch #137 - 2000/6/10 - XFree86 672 4.0b</a></li> 673 674 <li><a href="#xterm_136">Patch #136 - 2000/6/3 - XFree86 675 4.0b</a></li> 676 677 <li><a href="#xterm_135">Patch #135 - 2000/5/29 - XFree86 678 4.0b</a></li> 679 680 <li><a href="#xterm_134">Patch #134 - 2000/5/28 - XFree86 681 4.0b</a></li> 682 683 <li><a href="#xterm_133">Patch #133 - 2000/5/2 - XFree86 684 4.0a</a></li> 685 686 <li><a href="#xterm_132">Patch #132 - 2000/4/11 - XFree86 687 4.0a</a></li> 688 689 <li><a href="#xterm_131">Patch #131 - 2000/3/3 - XFree86 690 3.9.18b</a></li> 691 692 <li><a href="#xterm_130">Patch #130 - 2000/3/1 - XFree86 693 3.9.18a</a></li> 694 695 <li><a href="#xterm_129">Patch #129 - 2000/2/26 - XFree86 696 3.9.18a</a></li> 697 698 <li><a href="#xterm_128">Patch #128 - 2000/2/17 - XFree86 699 3.9.18</a></li> 700 701 <li><a href="#xterm_127">Patch #127 - 2000/2/12 - XFree86 702 3.9.17e</a></li> 703 704 <li><a href="#xterm_126">Patch #126 - 2000/2/8 - XFree86 705 3.9.17c</a></li> 706 707 <li><a href="#xterm_125">Patch #125 - 2000/1/31 - XFree86 708 3.9.17c</a></li> 709 710 <li><a href="#xterm_124">Patch #124 - 2000/1/27 - XFree86 711 3.9.17b</a></li> 712 713 <li><a href="#xterm_123">Patch #123 - 2000/1/22 - XFree86 714 3.9.17a</a></li> 715 716 <li><a href="#xterm_122">Patch #122 - 1999/12/28 - XFree86 717 3.9.16f</a></li> 718 719 <li><a href="#xterm_121">Patch #121 - 1999/11/14 - XFree86 720 3.9.16c</a></li> 721 722 <li><a href="#xterm_120">Patch #120 - 1999/10/28 - XFree86 723 3.9.16c</a></li> 724 725 <li><a href="#xterm_119">Patch #119 - 1999/10/16 - XFree86 726 3.9.16c</a></li> 727 728 <li><a href="#xterm_118">Patch #118 - 1999/10/5 - XFree86 729 3.9.16b</a></li> 730 731 <li><a href="#xterm_117">Patch #117 - 1999/9/29 - XFree86 732 3.9.16b</a></li> 733 734 <li><a href="#xterm_116">Patch #116 - 1999/9/25 - XFree86 735 3.9.16a</a></li> 736 737 <li><a href="#xterm_115">Patch #115 - 1999/9/18 - XFree86 738 3.9.16a</a></li> 739 740 <li><a href="#xterm_114">Patch #114 - 1999/9/15 - XFree86 741 3.9.16</a></li> 742 743 <li><a href="#xterm_113">Patch #113 - 1999/8/15 - XFree86 744 3.9.15b</a></li> 745 746 <li><a href="#xterm_112">Patch #112 - 1999/7/17 - XFree86 747 3.9Pw</a></li> 748 749 <li><a href="#xterm_111">Patch #111 - 1999/7/10 - XFree86 750 3.9Pw</a></li> 751 752 <li><a href="#xterm_110">Patch #110 - 1999/6/29 - XFree86 753 3.9Pu</a></li> 754 755 <li><a href="#xterm_109">Patch #109 - 1999/6/23 - XFree86 756 3.9Pt</a></li> 757 758 <li><a href="#xterm_108">Patch #108 - 1999/6/19 - XFree86 759 3.9Ps</a></li> 760 761 <li><a href="#xterm_107">Patch #107 - 1999/6/12 - XFree86 762 3.9Pq</a></li> 763 764 <li><a href="#xterm_106">Patch #106 - 1999/6/9 - XFree86 765 3.9Pq</a></li> 766 767 <li><a href="#xterm_105">Patch #105 - 1999/6/5 - XFree86 768 3.9Pp</a></li> 769 770 <li><a href="#xterm_104">Patch #104 - 1999/5/30 - XFree86 771 3.9Pn</a></li> 772 773 <li><a href="#xterm_103">Patch #103 - 1999/5/14 - XFree86 774 3.9Pm</a></li> 775 776 <li><a href="#xterm_102">Patch #102 - 1999/5/12 - XFree86 777 3.9Pm</a></li> 778 779 <li><a href="#xterm_101">Patch #101 - 1999/5/10 - XFree86 780 3.9Pm</a></li> 781 782 <li><a href="#xterm_100">Patch #100 - 1999/5/3 - XFree86 783 3.9Pl</a></li> 784 785 <li><a href="#xterm_99">Patch #99 - 1999/5/2 - XFree86 786 3.9Pk</a></li> 787 788 <li><a href="#xterm_98">Patch #98 - 1999/4/26 - XFree86 789 3.9Pk</a></li> 790 791 <li><a href="#xterm_97">Patch #97 - 1999/4/25 - XFree86 792 3.9Pk</a></li> 793 794 <li><a href="#xterm_96">Patch #96 - 1999/4/19 - XFree86 795 3.9Pj</a></li> 796 797 <li><a href="#xterm_95">Patch #95 - 1999/4/5 - XFree86 798 3.9Ph</a></li> 799 800 <li><a href="#xterm_94">Patch #94 - 1999/3/27 - XFree86 801 3.9Pf</a></li> 802 803 <li><a href="#xterm_93">Patch #93 - 1999/3/14 - XFree86 804 3.9Pd</a></li> 805 806 <li><a href="#xterm_92">Patch #92 - 1999/2/5 - XFree86 807 3.9Nz</a></li> 808 809 <li><a href="#xterm_91">Patch #91 - 1999/1/21 - XFree86 810 3.9Nw</a></li> 811 812 <li><a href="#xterm_90">Patch #90 - 1998/12/13 - XFree86 813 3.9Nq</a></li> 814 815 <li><a href="#xterm_89">Patch #89 - 1998/11/20 - XFree86 816 3.9Nm</a></li> 817 818 <li><a href="#xterm_88">Patch #88 - 1998/10/31 - XFree86 3.9Nk 819 and 3.3.2h</a></li> 820 821 <li><a href="#xterm_87">Patch #87 - 1998/10/21 - XFree86 3.9Nj 822 and 3.3.2f</a></li> 823 824 <li><a href="#xterm_86">Patch #86 - 1998/10/14 - XFree86 3.9Nj 825 and 3.3.2e</a></li> 826 827 <li><a href="#xterm_85">Patch #85 - 1998/10/12 - XFree86 3.9Nj 828 and 3.3.2e</a></li> 829 830 <li><a href="#xterm_84">Patch #84 - 1998/10/9 - XFree86 3.9Ni 831 and 3.3.2e</a></li> 832 833 <li><a href="#sync_83">Resync #83 - 1998/10/7 - XFree86 834 3.3.2e</a></li> 835 836 <li><a href="#xterm_83">Patch #83 - 1998/8/25 - XFree86 837 3.9Nb</a></li> 838 839 <li><a href="#xterm_82">Patch #82 - 1998/7/15 - XFree86 840 3.9Aj</a></li> 841 842 <li><a href="#xterm_81">Patch #81 - 1998/7/14 - XFree86 843 3.9Aj</a></li> 844 845 <li><a href="#xterm_80">Patch #80 - 1998/6/29 - XFree86 846 3.9Ai</a></li> 847 848 <li><a href="#xterm_79">Patch #79 - 1998/6/28 - XFree86 849 3.9Ai</a></li> 850 851 <li><a href="#xterm_78">Patch #78 - 1998/6/3 - XFree86 3.9Ah 852 and 3.3.2</a></li> 853 854 <li><a href="#xterm_77">Patch #77 - 1998/5/26 - XFree86 3.9Ah 855 and 3.3.2</a></li> 856 857 <li><a href="#xterm_76">Patch #76 - 1998/5/8 - XFree86 3.9Ah 858 and 3.3.2</a></li> 859 860 <li><a href="#xterm_75">Patch #75 - 1998/5/7 - XFree86 3.9Ah 861 and 3.3.2</a></li> 862 863 <li><a href="#xterm_74">Patch #74 - 1998/4/27 - XFree86 3.9Ag 864 and 3.3.2</a></li> 865 866 <li><a href="#xterm_73">Patch #73 - 1998/4/25 - XFree86 3.9Ag 867 and 3.3.2</a></li> 868 869 <li><a href="#xterm_72">Patch #72 - 1998/4/17 - XFree86 3.9Ag 870 and 3.3.2</a></li> 871 872 <li><a href="#xterm_71">Patch #71 - 1998/4/12 - XFree86 3.9Ag 873 and 3.3.2</a></li> 874 875 <li><a href="#xterm_70">Patch #70 - 1998/3/29 - XFree86 3.9Af 876 and 3.3.2</a></li> 877 878 <li><a href="#xterm_69">Patch #69 - 1998/3/16 - XFree86 3.9Ad 879 and 3.3.2</a></li> 880 881 <li><a href="#xterm_68">Patch #68 - 1998/3/4 - XFree86 3.9Ad 882 and 3.3.1z</a></li> 883 884 <li><a href="#xterm_67">Patch #67 - 1998/2/23 - XFree86 3.9Ad 885 and 3.3.1e</a></li> 886 887 <li><a href="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad 888 and 3.3.1d</a></li> 889 890 <li><a href="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad 891 and 3.3.1c</a></li> 892 893 <li><a href="#xterm_64">Patch #64 - 1998/2/8 - XFree86 894 3.9Ad</a></li> 895 896 <li><a href="#xterm_63">Patch #63 - 1998/2/5 - XFree86 897 3.9Ad</a></li> 898 899 <li><a href="#xterm_62">Patch #62 - 1998/1/23 - XFree86 900 3.9Ac</a></li> 901 902 <li><a href="#xterm_61">Patch #61 - 1998/1/17 - XFree86 903 3.9Ac</a></li> 904 905 <li><a href="#xterm_60">Patch #60 - 1998/1/10 - XFree86 906 3.9Ab</a></li> 907 908 <li><a href="#xterm_59">Patch #59 - 1998/1/5 - XFree86 909 3.9Ab</a></li> 910 911 <li><a href="#xterm_58">Patch #58 - 1998/1/3 - XFree86 912 3.9Ab</a></li> 913 914 <li><a href="#xterm_57">Patch #57 - 1997/12/26 - XFree86 915 3.9Aa</a></li> 916 917 <li><a href="#xterm_56">Patch #56 - 1997/11/28 - XFree86 918 3.9x</a></li> 919 920 <li><a href="#xterm_55">Patch #55 - 1997/11/25 - XFree86 921 3.9x</a></li> 922 923 <li><a href="#xterm_54">Patch #54 - 1997/10/17 - XFree86 924 3.9s</a></li> 925 926 <li><a href="#xterm_53">Patch #53 - 1997/10/12 - XFree86 927 3.9r</a></li> 928 929 <li><a href="#xterm_52">Patch #52 - 1997/9/29 - XFree86 930 3.9q</a></li> 931 932 <li><a href="#xterm_51">Patch #51 - 1997/9/15 - XFree86 933 3.9p</a></li> 934 935 <li><a href="#xterm_50">Patch #50 - 1997/8/22 - XFree86 936 3.9m</a></li> 937 938 <li><a href="#xterm_49">Patch #49 - 1997/8/10 - XFree86 939 3.9k</a></li> 940 941 <li><a href="#xterm_48">Patch #48 - 1997/7/26 - XFree86 942 3.9j</a></li> 943 944 <li><a href="#xterm_47">Patch #47 - 1997/7/13 - XFree86 945 3.9i</a></li> 946 947 <li><a href="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</a></li> 948 949 <li><a href="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</a></li> 950 951 <li><a href="#xterm_44">Patch #44 - 1997/6/22 - XFree86 952 3.9g</a></li> 953 954 <li><a href="#xterm_43">Patch #43 - 1997/6/10 - XFree86 955 3.9d</a></li> 956 957 <li><a href="#xterm_42">Patch #42 - 1997/6/8 - XFree86 958 3.2Xl</a></li> 959 960 <li><a href="#xterm_41">Patch #41 - 1997/5/28 - XFree86 961 3.2Xl</a></li> 962 963 <li><a href="#xterm_40">Patch #40 - 1997/5/26 - XFree86 964 3.2Xl</a></li> 965 966 <li><a href="#xterm_39">Patch #39 - 1997/5/24 - XFree86 967 3.2Xl</a></li> 968 969 <li><a href="#xterm_38">Patch #38 - 1997/5/22 - XFree86 970 3.2Xh</a></li> 971 972 <li><a href="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</a></li> 973 974 <li><a href="#xterm_36">Patch #36 - 1997/1/16 - XFree86 975 3.2r</a></li> 976 977 <li><a href="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</a></li> 978 979 <li><a href="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</a></li> 980 981 <li><a href="#xterm_33">Patch #33 - 1996/11/24 - XFree86 982 3.2</a></li> 983 984 <li><a href="#xterm_32">Patch #32 - 1996/11/21 - XFree86 985 3.2</a></li> 986 987 <li><a href="#xterm_31">Patch #31 - 1996/11/16 - XFree86 988 3.2</a></li> 989 990 <li><a href="#xterm_30">Patch #30 - 1996/11/16 - XFree86 991 3.2</a></li> 992 993 <li><a href="#xterm_29">Patch #29 - 1996/9/15 - XFree86 994 3.1.2Gb</a></li> 995 996 <li><a href="#xterm_28">Patch #28 - 1996/8/31 - XFree86 997 3.1.2F</a></li> 998 999 <li><a href="#xterm_27">Patch #27 - 1996/8/21 - XFree86 1000 3.1.2Ek</a></li> 1001 1002 <li><a href="#xterm_26">Patch #26 - 1996/8/20 - XFree86 1003 3.1.2Ei</a></li> 1004 1005 <li><a href="#xterm_25">Patch #25 - 1996/8/18 - XFree86 1006 3.1.2Ei</a></li> 1007 1008 <li><a href="#xterm_24">Patch #24 - 1996/8/11 - XFree86 1009 3.1.2Ee</a></li> 1010 1011 <li><a href="#xterm_23">Patch #23 - 1996/7/31 - XFree86 1012 3.1.2Ec</a></li> 1013 1014 <li><a href="#xterm_22">Patch #22 - 1996/7/26 - XFree86 1015 3.1.2Ec</a></li> 1016 1017 <li><a href="#xterm_21">Patch #21 - 1996/7/24 - XFree86 1018 3.1.2Ec</a></li> 1019 1020 <li><a href="#xterm_20">Patch #20 - 1996/7/24 - XFree86 1021 3.1.2Ec</a></li> 1022 1023 <li><a href="#xterm_19">Patch #19 - 1996/7/21 - XFree86 1024 3.1.2Ec</a></li> 1025 1026 <li><a href="#xterm_18">Patch #18 - 1996/7/18 - XFree86 1027 3.1.2Ec</a></li> 1028 1029 <li><a href="#xterm_17">Patch #17 - 1996/7/2 - XFree86 1030 3.1.2Eb</a></li> 1031 1032 <li><a href="#xterm_16">Patch #16 - 1996/6/25 - XFree86 1033 3.1.2Ea</a></li> 1034 1035 <li><a href="#xterm_15">Patch #15 - 1996/5/29 - XFree86 1036 3.1.2E</a></li> 1037 1038 <li><a href="#xterm_14">Patch #14 - 1996/5/12 - XFree86 1039 3.1.2Dj</a></li> 1040 1041 <li><a href="#xterm_13">Patch #13 - 1996/4/23 - XFree86 1042 3.1.2Df</a></li> 1043 1044 <li><a href="#xterm_12">Patch #12 - 1996/3/16 - XFree86 1045 3.1.2Dc</a></li> 1046 1047 <li><a href="#xterm_11">Patch #11 - 1996/3/5 - XFree86 1048 3.1.2Db</a></li> 1049 1050 <li><a href="#xterm_10">Patch #10 - 1996/2/14 - XFree86 1051 3.1.2Cd</a></li> 1052 1053 <li><a href="#xterm_09">Patch #9 - 1996/2/10 - XFree86 1054 3.1.2Cb</a></li> 1055 1056 <li><a href="#xterm_08">Patch #8 - 1996/2/9 - XFree86 1057 3.1.2Cb</a></li> 1058 1059 <li><a href="#xterm_07">Patch #7 - 1996/1/28 - XFree86 1060 3.1.2n</a></li> 1061 1062 <li><a href="#xterm_06">Patch #6 - 1996/1/8</a></li> 1063 1064 <li><a href="#xterm_05">Patch #5 - 1996/1/7</a></li> 1065 1066 <li><a href="#xterm_04">Patch #4 - 1996/1/7</a></li> 1067 1068 <li><a href="#xterm_03">Patch #3 - 1996/1/7</a></li> 1069 1070 <li><a href="#xterm_02">Patch #2 - 1996/1/7</a></li> 1071 1072 <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> 1073 </ul> 1074 1075 <h1><a name="xterm_397" id="xterm_397">Patch #397 - 1076 2025/01/05</a></h1> 1077 1078 <ul> 1079 <li>add resource <tt>printRawChars</tt> to allow bypassing 1080 check in <a href="#xterm_389">patch #389</a> which omits 1081 Unicode non-characters from printing (request by Adam 1082 Saponara).</li> 1083 1084 <li>add visible-effect for <tt>SUB</tt>, per DEC 070 page 1085 5-132.</li> 1086 1087 <li>correct a limit-check in private mode <tt>1045</tt>.</li> 1088 1089 <li>add optional feature for block-selection, bound to 1090 meta-button-one (patch by Adam Saponara).</li> 1091 1092 <li>if started as a VT52, identify the terminal as a real VT52 1093 rather than VT52 emulated by VT100.</li> 1094 1095 <li>amend change to VT52 cursor-addressing per DEC 070 (mintty 1096 #1299).</li> 1097 1098 <li>correct <tt>ctlseqs.ms</tt> suffix for 1099 <tt>XTTITLEPOS</tt></li> 1100 </ul> 1101 1102 <h1><a name="xterm_396" id="xterm_396">Patch #396 - 1103 2024/12/02</a></h1> 1104 1105 <ul> 1106 <li>fix stricter warnings provided by upcoming gcc 15, as well 1107 as NetBSD lint.</li> 1108 1109 <li>modify title-stack test script, adding logging and 1110 command-replay options. Improved the script with new controls: 1111 <ul> 1112 <li>add <tt>XTTITLEPOS</tt> query to get position in 1113 title-stack.</li> 1114 1115 <li>add <tt>DECRQSS</tt> for <tt>XTSMTITLE</tt>.</li> 1116 </ul> 1117 </li> 1118 1119 <li>correct cursor-addressing limit for VT52 mode (report by 1120 Serguei Fichel).</li> 1121 1122 <li>amend change in <a href="#xterm_395">patch #395</a> for 1123 7-bit parsing to allow UTF-8 titles (report by Dmytro 1124 Bagril).</li> 1125 1126 <li>portability fixes for configure script, from ncurses</li> 1127 1128 <li>update config.guess, config.sub</li> 1129 </ul> 1130 1131 <h1><a name="xterm_395" id="xterm_395">Patch #395 - 1132 2024/10/24</a></h1> 1133 1134 <ul> 1135 <li>add <tt>DECRQSS</tt> response for <tt>DECSTGLT</tt>, i.e., 1136 ANSI SGR color.</li> 1137 1138 <li>add Russian and SCS NRCS character set mappings.</li> 1139 1140 <li>remove obsolete code for OS390 and VMS.</li> 1141 1142 <li>minor fixes to work with vttest 20240929's 7-bit parsing 1143 test.</li> 1144 1145 <li>improve DECRPM responses for unsupported modes; those which 1146 are valid for a given DEC terminal are reported as permanently 1147 reset rather than unknown.</li> 1148 1149 <li>add JIS-Roman and JIS-Katakana character sets, for 1150 VT382.</li> 1151 1152 <li>fix typo in <tt>ctlseqs.ms</tt> note about function key vs 1153 DSR (report by Michael Thomas Greer).</li> 1154 1155 <li>formatting fixes for <tt>ctlseqs.ms</tt> (report by Mark 1156 Manning).</li> 1157 1158 <li>update tables in <code>wcwidth.c</code> based on Unicode 1159 16.0.0</li> 1160 </ul> 1161 1162 <h1><a name="xterm_394" id="xterm_394">Patch #394 - 1163 2024/09/02</a></h1> 1164 1165 <ul> 1166 <li>add <tt>-nomap</tt> option (request by Tavis Ormandy).</li> 1167 1168 <li>improve checks for rectangle operations, per DEC 070.</li> 1169 1170 <li>improve check for missing characters in bitmap fonts, for a 1171 case where the font is marked complete but its range does not 1172 include non-Latin1 codes (prompted by discussion with Craig 1173 Leres).</li> 1174 1175 <li>correct upper-limit in check for missing characters, from 1176 <a href="#xterm_393">patch #393</a> changes (report/patch by 1177 Matthew Martin).</li> 1178 1179 <li>fix for <tt>-report-fonts</tt> option when the font's first 1180 character position is nonzero (prompted by discussion with 1181 Craig Leres).</li> 1182 1183 <li>add null-pointer check for a Heisenbug (Debian 1184 #1078255).</li> 1185 </ul> 1186 1187 <h1><a name="xterm_393" id="xterm_393">Patch #393 - 1188 2024/07/11</a></h1> 1189 1190 <ul> 1191 <li>add a check for ANSI SC/RC, to ignore CSI parameters.</li> 1192 1193 <li>improve check for missing characters for bitmap-fonts by 1194 using the normal font for reference in the case where the 1195 current font, e.g., the wide-font was derived from the normal 1196 font and lacks per-character metrics (report by Rajeev V. 1197 Pillai).</li> 1198 1199 <li>fix regression in error-recovery for SGR parameters from 1200 <a href="#xterm_357">patch #357</a> (report by James 1201 Holderness).</li> 1202 1203 <li>remove some duplicates in <tt>xtermcfg.h</tt> (report by 1204 Matthew Green).</li> 1205 1206 <li>change default for <tt>--enable-imake</tt> configure 1207 option.</li> 1208 1209 <li>fixes for <tt>wcwidth</tt>: 1210 <ul> 1211 <li>return 0 for format effectors, like a zero-width 1212 printing character rather than -1 like a control character 1213 (report by Rajeev V. Pillai).</li> 1214 1215 <li>correct <tt>doublewidth</tt> to account for reserved 1216 codepoints which are listed in the EastAsianWidth 1217 file.</li> 1218 1219 <li>add a special case for surrogate pairs, which might be 1220 checked in testing the <tt>wcwidth</tt> function.</li> 1221 </ul> 1222 </li> 1223 1224 <li>amend sixel bounds-check added in <a href= 1225 "#xterm_371">patch #371</a> to not wrap out-of-bounds 1226 data.</li> 1227 1228 <li>eliminate <tt>maxStringParse</tt> limit for SIXEL.</li> 1229 1230 <li>improve logic which ignores APC, PM and SOS controls to 1231 also not accumulate their data temporarily in a buffer.</li> 1232 1233 <li>exclude <tt>TERM_INGRESS</tt> from cleanup of environment 1234 variables (patch by Iain Riley).</li> 1235 1236 <li>fix some documentation typos (report by Thomas Wolff).</li> 1237 </ul> 1238 1239 <h1><a name="xterm_392" id="xterm_392">Patch #392 - 1240 2024/05/22</a></h1> 1241 1242 <ul> 1243 <li>improve input decoding for non-Latin1 character sets by 1244 preserving the sense of GL/GR.</li> 1245 1246 <li>add resource <tt>preferLatin1</tt> to simplify UPSS 1247 configuration (Gentoo #932154).</li> 1248 1249 <li>build-fix for <tt>--disable-boxchars</tt>; <a href= 1250 "#xterm_390">patch #390</a> reuses that feature's code to draw 1251 the part of the DEC Technical character set which has no 1252 Unicode equivalent.</li> 1253 1254 <li>modify <tt>#include</tt> of <tt>pty.h</tt> to work with 1255 musl (report by Khem Raj).</li> 1256 1257 <li>improve definitions used in <tt>clock_gettime</tt> logic in 1258 <tt>graphics_sixel.c</tt>, as well as updating comments (patch 1259 by Ben Wong).</li> 1260 1261 <li>amend <code>allowC1Printable</code> changes from <a href= 1262 "#xterm_391">patch #391</a>, restoring a special case which 1263 caused C1 characters to be ignored (report/testcase by Dmytro 1264 Bagrii).</li> 1265 </ul> 1266 1267 <h1><a name="xterm_391" id="xterm_391">Patch #391 - 1268 2024/05/12</a></h1> 1269 1270 <ul> 1271 <li>improve integration between UTF-8 and 1272 <code>allowC1Printable</code>.</li> 1273 1274 <li>alter SIXEL HLS computation to make blue 0 degrees (patch 1275 by Ben Wong).</li> 1276 1277 <li>disable SIXEL aspect-ratio, pending a rewrite (patch by Ben 1278 Wong).</li> 1279 1280 <li>add resource <code>incrementalGraphics</code> (prompted by 1281 patch by Ben Wong).</li> 1282 1283 <li>reorganize <tt>graphics_sixel.c</tt> as a step toward 1284 eliminating graphics buffer-size (integrated patch by Ben 1285 Wong).</li> 1286 1287 <li>use <code>__linux__</code> consistently rather than the 1288 older <code>linux</code>.</li> 1289 1290 <li>build-fix for musl (report by Jonáš Vidra, 1291 adapted patch by Khem Raj): 1292 <ul> 1293 <li>modify <code><em>ifdef</em></code> for 1294 <code>USE_OPENPTY</code>, changing test for 1295 <code>__GLIBC__</code> to <code>__linux__</code></li> 1296 1297 <li>change <code><em>ifdef</em></code>'s for 1298 <code>_POSIX_SOURCE</code> to 1299 <code>_POSIX_VERSION</code></li> 1300 1301 <li>modify <code><em>ifdef</em></code> for 1302 <code>setsid</code> to use a configure-script check for 1303 that function's existence and move the old check to imake 1304 fallbacks.</li> 1305 </ul> 1306 </li> 1307 1308 <li>minor consistency fixes for manpage.</li> 1309 1310 <li>fix regression in <a href="#xterm_390">patch #390</a>: 1311 non-UTF8 text pasted as a XA_UTF8_STRING was not decoded 1312 (report by Petri Kaukasoina).</li> 1313 </ul> 1314 1315 <h1><a name="xterm_390" id="xterm_390">Patch #390 - 1316 2024/02/19</a></h1> 1317 1318 <ul> 1319 <li>improve typography of control-sequences page (patches by 1320 Branden Robinson).</li> 1321 1322 <li>amend UPSS change from <a href="#xterm_389">patch #389</a>, 1323 fixing a regression in VT100/VT220 character sets.</li> 1324 1325 <li>modify ANSI conformance per ECMA-43 and DEC 070: 1326 <ul> 1327 <li>set ANSI conformance level to 3 for DEC levels 2 and 1328 up.</li> 1329 1330 <li>disable locking shifts in level 1, e.g., VT100.</li> 1331 1332 <li>disable single-shifts from G2/G3 in level 1.</li> 1333 1334 <li>use UPSS for G2/G3 in levels 2 and up.</li> 1335 </ul> 1336 </li> 1337 1338 <li>modify invisible-character attribute to permit 1339 <tt>DECRQCRA</tt> to report a consistent checksum 1340 (report/testcase by Thomas Wolff).</li> 1341 1342 <li>align terminfo building blocks in terminfo to correspond to 1343 recent refactoring/trimming in ncurses.</li> 1344 1345 <li>set flag in regexec call for 1346 <code>on<em>N</em>Clicks</code> to handle 1347 “<tt>^</tt>” anchor (patch by Matthew Martin).</li> 1348 1349 <li>add line-drawing data for the characters in <a href= 1350 "https://www.vt100.net/charsets/technical.html"><em>DEC 1351 Technical</em></a> which have no Unicode equivalents.</li> 1352 1353 <li>remove a special case in <tt>encode_scs</tt> which made 1354 xterm report Latin-1 when encoding is set to UTF-8, where ASCII 1355 is the selected character set. This fixes a regression in 1356 vttest for the <tt>DECRSPS</tt> cursor test.</li> 1357 1358 <li>correct values for <em>Ps</em> of <tt>DECAUPSS</tt> in 1359 <tt>ctlseqs.ms</tt> (report by James Holderness).</li> 1360 1361 <li>simplify/correct expression for checking Unicode 1362 non-characters (report by Thomas Wolff).</li> 1363 1364 <li>correct loop for trimming environment variables 1365 (report/patch by Casper Dik).</li> 1366 1367 <li>fixes for manpage formatting (Debian #1041809).</li> 1368 1369 <li>update config.guess, config.sub</li> 1370 </ul> 1371 1372 <h1><a name="xterm_389" id="xterm_389">Patch #389 - 1373 2024/01/01</a></h1> 1374 1375 <ul> 1376 <li>interchange variables in subparameter parsing, fixing a bug 1377 where subparameters after the first parameter could be 1378 misidentified (patch by Adam Saponara).</li> 1379 1380 <li>correct popping of icon/window titles in a case where only 1381 one was pushed from <a href="#xterm_385">patch #385</a> 1382 changes.</li> 1383 1384 <li>add <tt>XTQMODKEYS</tt> response in <tt>DECRQSS</tt>, as 1385 alternative for vim.</li> 1386 1387 <li>correct <tt>DECCIR</tt> encoded information on character 1388 set size, handle a VT525 quirk, and add <tt>DECST8C</tt> 1389 (Windows Terminal #14984).</li> 1390 1391 <li>improve <tt>DECRQCRA</tt> (prompted by discussion with 1392 James Holderness, Windows Terminal #14974).</li> 1393 1394 <li>add part of VT525 color controls: 1395 <ul> 1396 <li><tt>DECAC</tt>, to update default 1397 foreground/background, respond to <tt>DECRQSS</tt></li> 1398 1399 <li><tt>DECATC</tt>, to respond with <tt>DECRQSS</tt></li> 1400 </ul> 1401 </li> 1402 1403 <li>prevent Unicode non-characters from being printed (prompted 1404 by patch by Grady Martin).</li> 1405 1406 <li>modify <tt>send_SGR()</tt> to avoid modifying colors 16 to 1407 255 in printed output (patch by Grady Martin).</li> 1408 1409 <li>minor cleanup of miscellaneous error-codes with 1410 <tt>ERROR_MISC</tt>.</li> 1411 1412 <li>remove legacy <tt><em>CSI</em> 53</tt> for locator status, 1413 corrected in <a href="#xterm_294">patch #294</a>.</li> 1414 1415 <li>modify <tt>DECRQUPSS</tt> and <tt>DECAUPSS</tt> feature to 1416 support VT5xx character sets (report by Thomas Wolff).</li> 1417 1418 <li>improve configure script: 1419 <ul> 1420 <li>reduce configure-check compiler warnings (prompted by 1421 Florian Weimer, Redhat #2251945)</li> 1422 1423 <li>improve usage messages in configure script to make it 1424 clearer when an option value is optional.</li> 1425 </ul> 1426 </li> 1427 1428 <li>improve EWMH handling (report/analysis by Edward Rosten) 1429 <ul> 1430 <li>reset <tt>_NET_WM_STATE_HIDDEN</tt> flag from 1431 <tt>_NET_WM_STATE</tt> before mapping the window to 1432 deiconify.</li> 1433 1434 <li>cache X properties to reduce latency (adapted from 1435 patch by Edward Rosten).</li> 1436 </ul> 1437 </li> 1438 </ul> 1439 1440 <h1><a name="xterm_388" id="xterm_388">Patch #388 - 1441 2023/10/22</a></h1> 1442 1443 <ul> 1444 <li>improve <tt>disallowPasteControls</tt> by adding a category 1445 for the special characters known to <tt>stty</tt> (prompted by 1446 discussion with David Leadbeater).</li> 1447 1448 <li>amend support of <tt>DECAUPSS</tt>, undoing change to 1449 initialization of G2/G3 so that pasting of GR characters works 1450 properly (report/analysis by Petri Kaukasoina).</li> 1451 1452 <li>update config.guess, config.sub</li> 1453 </ul> 1454 1455 <h1><a name="xterm_387" id="xterm_387">Patch #387 - 1456 2023/10/15</a></h1> 1457 1458 <ul> 1459 <li>add <tt>DECRQUPSS</tt> and <tt>DECAUPSS</tt>.</li> 1460 1461 <li>add <tt>DECRQDE</tt> (report by Jake Hamby).</li> 1462 1463 <li>correct indexing expression in title-stack, from <a href= 1464 "#xterm_385">patch #385</a> changes (report by Brian 1465 Lindholm).</li> 1466 </ul> 1467 1468 <h1><a name="xterm_386" id="xterm_386">Patch #386 - 1469 2023/10/09</a></h1> 1470 1471 <ul> 1472 <li>improve references in <tt>ctlseqs.ms</tt> (prompted by 1473 discussion with Kirill Chibisov).</li> 1474 1475 <li>make the maximum amount of memory used for buffering DCS 1476 and OSC strings configurable with <tt>maxStringParse</tt> 1477 resource (report by Daniel Franke).</li> 1478 1479 <li>improve performance of ReGIS when initializing the largest 1480 fontsize (report by Ben Wong).</li> 1481 1482 <li>fix regression in SIXEL colors, in <a href= 1483 "#xterm_385">patch #385</a> (report/patch by Jonny 1484 Langley).</li> 1485 1486 <li>fix typo in <code>--with-wtmp</code> (report/patch by Sven 1487 Joachim)</li> 1488 </ul> 1489 1490 <h1><a name="xterm_385" id="xterm_385">Patch #385 - 1491 2023/10/01</a></h1> 1492 1493 <ul> 1494 <li>fixes for ReGIS (report by Ben Wong). 1495 <ul> 1496 <li>correct conversion from HLS to RGB</li> 1497 1498 <li>improve font-caching performance.</li> 1499 </ul> 1500 </li> 1501 1502 <li>update tables in <code>wcwidth.c</code> based on Unicode 1503 15.1.0</li> 1504 1505 <li>improve <code>fastScroll</code> resource: 1506 <ul> 1507 <li>suppress screen-refreshes for carriage-returns</li> 1508 1509 <li>add <code>-jf</code> option to simplify use of this 1510 resource.</li> 1511 1512 <li>add a control sequence for enabling/disabling the 1513 resource.</li> 1514 1515 <li>enable this feature by default</li> 1516 </ul> 1517 </li> 1518 1519 <li>extend title-stack feature to allow an additional parameter 1520 to directly access the stack, like the 1521 <code>XTPUSHCOLORS</code> and <code>XTPOPCOLORS</code> 1522 feature.</li> 1523 1524 <li>correct size and position of box shown for double-cell 1525 character which happens to be missing from the bitmap font 1526 (report by Peter Fabinski).</li> 1527 1528 <li>improved configure script: 1529 <ul> 1530 <li>add pattern for uClibc-ng to <tt>CF_XOPEN_SOURCE</tt> 1531 (report/patch by Waldemar Brodkorb).</li> 1532 1533 <li>add configure options <tt>--with-utmp-path</tt> and 1534 <tt>--with-wtmp-path</tt> to override configure script's 1535 check for utmp/wtmp pathnames which are shown in the manual 1536 (Debian #1042767).</li> 1537 1538 <li><tt>CF_XOPEN_SOURCE</tt> provides for defining 1539 <tt>_DEFAULT_SOURCE</tt> for MinGW32 and MinGW64.</li> 1540 1541 <li>sed expression used to report gcc version now works 1542 with MinGW</li> 1543 </ul> 1544 </li> 1545 1546 <li>ensure that line-attributes are reset after drawing missing 1547 character (report by Christian Weisgerber).</li> 1548 1549 <li>update config.guess, config.sub</li> 1550 </ul> 1551 1552 <h1><a name="xterm_384" id="xterm_384">Patch #384 - 1553 2023/07/10</a></h1> 1554 1555 <ul> 1556 <li>exclude ASCII space from <code>showMissingGlyphs</code>, 1557 since a few bitmap fonts lack this (report by "SanRemo", 1558 Emanuel Haupt).</li> 1559 1560 <li>correct a step in rendering double-width characters with 1561 bitmap-fonts (report by Peter Fabinski, Debian #1039986).</li> 1562 1563 <li>fixes for ReGIS-related problems (report by Ben Wong): 1564 <ul> 1565 <li>mimic an undocumented hardware VT340 feature which 1566 handles color initialization with incomplete 1567 parameters.</li> 1568 1569 <li>handle whitespace between operator/operands for color 1570 values.</li> 1571 1572 <li>reset ReGIS-context when resetting graphics in 1573 <tt>RIS</tt>.</li> 1574 </ul> 1575 </li> 1576 </ul> 1577 1578 <h1><a name="xterm_383" id="xterm_383">Patch #383 - 1579 2023/06/27</a></h1> 1580 1581 <ul> 1582 <li>expand description of full- and soft-reset in the 1583 manual.</li> 1584 1585 <li>fixes for full- and soft-reset: 1586 <ul> 1587 <li>clear alternate screen on full reset.</li> 1588 1589 <li>disable menu-entry for active icon; it merely shows 1590 whether the feature is enabled.</li> 1591 1592 <li>use <tt>appcursorDefault</tt> and 1593 <tt>appkeypadDefault</tt> resources for reset of 1594 <tt>DECCKM</tt> and <tt>DECKPAM</tt>.</li> 1595 1596 <li>save initial resource values for 1597 <tt>sixelScrolling</tt> and <tt>privateColorRegisters</tt>, 1598 using those in full reset.</li> 1599 1600 <li>update checkbox for <em>Enable Blinking Cursor</em> 1601 (report by Rajeev V. Pillai).</li> 1602 </ul> 1603 </li> 1604 1605 <li>add reply for <tt>DECSACE</tt> with <tt>DECRQSS</tt>.</li> 1606 1607 <li>modify status-line feature to exit without erasing for 1608 <tt>DECSTR</tt>.</li> 1609 1610 <li>add private mode <tt>1045</tt> which imitates the original 1611 xterm cursor-back reverse wrapping mode <tt>45</tt> (see 1612 <a href="#xterm_380">patch #380</a>).</li> 1613 1614 <li>improve checks for non-Unicode values, e.g., in 1615 <tt>DECRQCRA</tt>.</li> 1616 1617 <li>re-checkout from RCS archive to fix stale identifiers 1618 (report by Sven Joachim).</li> 1619 </ul> 1620 1621 <h1><a name="xterm_382" id="xterm_382">Patch #382 - 1622 2023/05/30</a></h1> 1623 1624 <ul> 1625 <li>amend change to <tt>CursorBack</tt> in <a href= 1626 "#xterm_380">patch #380</a>, allowing the result to be on the 1627 hidden right-half of double-cell characters (report by Rajeev 1628 V. Pillai).</li> 1629 1630 <li>amend <tt>xtermDrawString</tt>, fixing regression with 1631 <tt>--disable-wide-chars</tt> configuration from <a href= 1632 "#xterm_380">patch #380</a>.</li> 1633 1634 <li>corrected pathname for <tt>run-tic.sh</tt>, for full 1635 install in an out-of-tree build (report by Rajeev V. 1636 Pillai).</li> 1637 </ul> 1638 1639 <h1><a name="xterm_381" id="xterm_381">Patch #381 - 1640 2023/05/28</a></h1> 1641 1642 <ul> 1643 <li>fix a regression in wide bitmap fonts versus check for 1644 missing glyphs (report by Rajeev V. Pillai).</li> 1645 </ul> 1646 1647 <h1><a name="xterm_380" id="xterm_380">Patch #380 - 1648 2023/05/09</a></h1> 1649 1650 <ul> 1651 <li>simplify the change for <code>sixelScrolling</code> from 1652 <a href="#xterm_374">patch #374</a> (report by Per 1653 Bothner).</li> 1654 1655 <li>add <tt>xterm+focus</tt> and <tt>report+da2</tt>, update 1656 <tt>report+version</tt> building blocks in terminfo, from 1657 post-ncurses 6.4</li> 1658 1659 <li>drop the <tt>-title</tt> option from <tt>uxterm</tt> and 1660 <tt>koi8rxterm</tt>, because that interferes with deriving the 1661 default title from the <tt>-e</tt> option (Debian #1031837). 1662 Compensate for this by using the <tt>-class</tt> option to 1663 derive a default title.</li> 1664 1665 <li>improve description of readline 2003 mode in 1666 <tt>ctlseqs.ms</tt> (report by Thomas Wolff).</li> 1667 1668 <li>other improvements to status-line feature (report by Thomas 1669 Wolff): 1670 <ul> 1671 <li>clear status line on <tt>DECCOLM</tt></li> 1672 1673 <li>ignore <tt>DECSASD</tt> if no previous 1674 <tt>DECSSDT</tt></li> 1675 1676 <li>allow <tt>DECSSDT 1</tt> immediately after 1677 <tt>DECSSDT 2</tt>, i.e., without switching back to 1678 host mode.</li> 1679 </ul> 1680 </li> 1681 1682 <li>adjust <tt>RequestResize</tt> to avoid shrinking screen 1683 when using <tt>DECCOLM</tt> while the status-line is active 1684 (report/patch by Thomas Wolff).</li> 1685 1686 <li>disallow wrapping before the beginning of the screen, to 1687 the end of the screen, for cursor-back sequences (Redhat 1688 #2182357).</li> 1689 1690 <li>modify makefile to install the 16x16 xpm files (report by 1691 Harald Dunkel).</li> 1692 1693 <li>update test-package to reflect resolution of Debian 1694 #906901.</li> 1695 1696 <li>change default of <code>showMissingGlyphs</code> to 1697 <em>True</em>.</li> 1698 1699 <li>improve handling of double-sized characters when those 1700 happen to be missing from the bitmap font and/or are 1701 fullwidth.</li> 1702 1703 <li>pointer/overflow fixes (reported by David Leadbeater): 1704 <ul> 1705 <li>improve limit-checks for control-sequence numeric 1706 parameters in SIXEL graphics.</li> 1707 1708 <li>add null-pointer checks in <tt>WriteNow</tt> macro to 1709 handle a case where <tt>SS2</tt> or <tt>SS3</tt> might be 1710 in effect while processing a combining character.</li> 1711 1712 <li>disallow ReGIS reporting for character-set names 1713 containing characters other than alphanumerics or 1714 underscore.</li> 1715 1716 <li>implement TrueType fallback font for double-sized 1717 characters, including Unicode fullwidth. Also add 1718 <tt>limitFontHeight</tt> to provide for configuring the 1719 distinction between slightly-oversized glyphs and 1720 double-sized glyphs.</li> 1721 </ul> 1722 </li> 1723 1724 <li>configure script improvements: 1725 <ul> 1726 <li>check for <tt>nfsd_t</tt></li> 1727 </ul> 1728 </li> 1729 1730 <li>fix a typo in the underline cursor thickness derivation 1731 (patch by Jan Engelhardt).</li> 1732 </ul> 1733 1734 <h1><a name="xterm_379" id="xterm_379">Patch #379 - 1735 2023/02/15</a></h1> 1736 1737 <ul> 1738 <li>improve text-cursor (patch by Jan Engelhardt): 1739 <ul> 1740 <li>allow selecting <tt>CURSOR_BAR</tt> mode from 1741 command-line/Xresources.</li> 1742 1743 <li>draw cursor using filled rectangle instead of rectangle 1744 outline to permit thicker underlines/bars.</li> 1745 1746 <li>scale up cursor relative to font size.</li> 1747 </ul> 1748 </li> 1749 1750 <li>improve readline modes (Fedora #2166860): 1751 <ul> 1752 <li>document readline modes</li> 1753 1754 <li>change the feature to configure by default</li> 1755 1756 <li>replace hard-coded SS3 for cursor movement with current 1757 mode</li> 1758 1759 <li>replace hard-coded erase/lnext characters with current 1760 values</li> 1761 </ul> 1762 </li> 1763 1764 <li>improve status-line (report by Thomas Wolff): 1765 <ul> 1766 <li><tt>RIS</tt> turns off status-line</li> 1767 1768 <li>Right-margin (<tt>DECLRMM</tt> and <tt>DECSLRM</tt>) 1769 limits the length of text written/updated in the 1770 status-line.</li> 1771 1772 <li>Most controls which affect the whole screen are ignored 1773 while updating the status-line.</li> 1774 </ul> 1775 </li> 1776 1777 <li>modify configure check for <tt>tgetent</tt> to allow for 1778 some special cases of ncurses configuration (report by Satadru 1779 Pramani).</li> 1780 1781 <li>reduce timeout, improve warning message if resize is run on 1782 a terminal which is not VT100-compatible.</li> 1783 1784 <li>reduce compiler warnings in configure script.</li> 1785 </ul> 1786 1787 <h1><a name="xterm_378" id="xterm_378">Patch #378 - 1788 2023/01/09</a></h1> 1789 1790 <ul> 1791 <li>improve descriptions of <em>XTQMODKEYS</em> and 1792 <em>XTQALLOWED</em> features in <tt>ctlseqs.ms</tt> (reports by 1793 Bram Moolenaar, Thomas Wolff).</li> 1794 1795 <li>add <tt>bracketed+paste</tt> and <tt>report+version</tt> 1796 building blocks to terminfo, from ncurses 6.4</li> 1797 1798 <li>improve check for unsupported formatting characters, e.g., 1799 zero-width space, to properly ignore them (report by Thomas 1800 Wolff).</li> 1801 1802 <li>improve/document error-checking for some of the controls 1803 which return responses: DECRQSS, XTGETXRES, XTSETTCAP, 1804 XTGETTCAP (prompted by discussion with David Leadbeater).</li> 1805 1806 <li>improve limit-checks for fallback font cache (report by 1807 Dimitrije Erdeljan).</li> 1808 1809 <li>improve check for too-wide glyph in fallback font by 1810 allowing xterm to continue searching for a suitable font rather 1811 than just failing on the first. Also add 1812 <tt>limitFontWidth</tt> to allow changing the amount by which a 1813 glyph must extend outside the font's bounding box to disallow 1814 it.</li> 1815 </ul> 1816 1817 <h1><a name="xterm_377" id="xterm_377">Patch #377 - 1818 2022/11/25</a></h1> 1819 1820 <ul> 1821 <li>add control sequences for reporting the current state of 1822 the modified keys options (XTQMODKEYS) and allowed/disallowed 1823 operations (XTQALLOWED), (prompted by discussion with Bram 1824 Moolenaar).</li> 1825 1826 <li>amend <code>modifyOtherKeys</code> case 2 to distinguish 1827 the escape character with modifiers, e.g., shift-escape, from a 1828 plain escape character (suggested by Bram Moolenaar).</li> 1829 1830 <li>improve parsing and error-recovery in the case where a list 1831 of X11 bitmap fonts is given in the <code>-fn</code> and 1832 related options.</li> 1833 1834 <li>change default for <code>xftTrackMemUsage</code> to false, 1835 because libXft does not handle certain fonts.</li> 1836 </ul> 1837 1838 <h1><a name="xterm_376" id="xterm_376">Patch #376 - 1839 2022/11/16</a></h1> 1840 1841 <ul> 1842 <li>modify configure script to always check for gcc 1843 attributes,</li> 1844 1845 <li>update <code>install-sh</code>.</li> 1846 1847 <li>fix parsing of <code>result -u</code> in 1848 <code>vttests/halves.pl</code>.</li> 1849 1850 <li>add a note in <code>ctlseqs.ms</code> about compatibility 1851 of <code>TBC</code>.</li> 1852 1853 <li>fix a copy/paste error in manual (patch by Grady 1854 Martin).</li> 1855 1856 <li>add null-pointer checks in <code>x_strcasecmp</code> and 1857 <code>x_strncasecmp</code>, to help with error-recovery for a 1858 missing font (Debian #1022942).</li> 1859 </ul> 1860 1861 <h1><a name="xterm_375" id="xterm_375">Patch #375 - 1862 2022/10/23</a></h1> 1863 1864 <ul> 1865 <li>improve error-recovery when setting a bitmap font for the 1866 VT100 window, e.g., in case <em>OSC 50</em> failed, 1867 restoring the most recent valid font so that a subsequent 1868 <em>OSC 50</em> reports this correctly (report by David 1869 Leadbeater).</li> 1870 1871 <li>exclude <code>MC_XDG_OPEN</code> from environment variables 1872 trimmed on startup (report by Gabor Hauzer).</li> 1873 1874 <li>check for null pointer in <code>isSelect()</code> (report 1875 by Column Paget).</li> 1876 </ul> 1877 1878 <h1><a name="xterm_374" id="xterm_374">Patch #374 - 1879 2022/10/10</a></h1> 1880 1881 <ul> 1882 <li>eliminate use of grep aliases from vttests scripts.</li> 1883 1884 <li>amend discussion of <code>DECSDM</code> versus <em>Sixel 1885 Scrolling</em> in <code>ctlseqs.ms</code> (reports by Hayaki 1886 Saito, Ben Wong).</li> 1887 1888 <li>change default for <code>sixelScrolling</code> resource to 1889 better match VT330/VT340 <code>DECSDM</code> setting (patch by 1890 Ben Wong).</li> 1891 1892 <li>fix some gcc and coverity warnings.</li> 1893 1894 <li>improve memory usage for <tt>OSC 52</tt> (report by 1895 David Leadbeater).</li> 1896 1897 <li>fix regression in <a href="#xterm_373">xterm-373</a> change 1898 adding resources <tt>xftTrackMemUsage</tt> to 1899 <tt>xftMaxGlyphMemory</tt>, which did not first cache the 1900 server's resource-settings (report/testcase by Gabor Hauzer, as 1901 well as Debian #1021243).</li> 1902 1903 <li>fix regression in <a href="#xterm_373">xterm-373</a> change 1904 for status-line vs alternate screen (report by Rajeev V. 1905 Pillai).</li> 1906 1907 <li>configure script improvements: 1908 <ul> 1909 <li>modify <tt>CF_XOPEN_SOURCE</tt> to handle more special 1910 cases of Linux (reports by Adam Sampson, Sven 1911 Joachim).</li> 1912 1913 <li>modify checks for egrep/fgrep aliases to work around 1914 warning messages from GNU grep 3.8</li> 1915 </ul> 1916 </li> 1917 </ul> 1918 1919 <h1><a name="xterm_373" id="xterm_373">Patch #373 - 1920 2022/09/25</a></h1> 1921 1922 <ul> 1923 <li>improve rendering of TrueType fonts: 1924 <ul> 1925 <li>add resource <tt>xftTrackMemUsage</tt> to 1926 enable/disable a new feature of Xft which improves 1927 performance.</li> 1928 1929 <li>add resources <tt>xftMaxGlyphMemory</tt> and 1930 <tt>xftMaxUnrefFonts</tt> to customize memory-usage of Xft 1931 and fontconfig.</li> 1932 1933 <li>provide for display of colored fonts in libXft 1934 2.3.5</li> 1935 1936 <li>allow for an extra TrueType font to be specified using 1937 the <code>-fa</code> option, as an override to the 1938 <em>fontconfig</em> scheme of fallback fonts (request by 1939 Nickolas Raymond Kaczynski).</li> 1940 1941 <li>improve caching of TrueType missing-glyph tests.</li> 1942 1943 <li>allow no more than 255 fonts to be scanned for a 1944 fontset.</li> 1945 1946 <li>eliminate a table-lookup in <tt>findXftGlyph</tt></li> 1947 </ul> 1948 </li> 1949 1950 <li>improvements status-line feature: 1951 <ul> 1952 <li>save/restore wraparound flag when updating the 1953 status-line (report by Rajeev V. Pillai).</li> 1954 1955 <li>avoid clearing the status-line when switching between 1956 normal and alternate screens (report by Valtteri 1957 Vuorikoski).</li> 1958 1959 <li>remove adjustment from <tt>update_winsize</tt> leftover 1960 from initial work (report by Valtteri Vuorikoski).</li> 1961 </ul> 1962 </li> 1963 1964 <li>modify <tt>wcwidth</tt> tables to separate Unicode 1965 <em>Cf</em> category as <em>formatting</em> control-characters, 1966 to better match the guideline for <a href= 1967 "http://www.unicode.org/faq/unsup_char.html">unsupported 1968 characters</a> (report by Tim Chase).</li> 1969 1970 <li>add configure option 1971 <tt>--disable-exec-selection</tt>.</li> 1972 1973 <li>use <tt>mkstemp</tt> where <tt>mkdtemp</tt> is unavailable, 1974 when initializing colored cursor.</li> 1975 1976 <li>adapt fixes from OpenBSD xenocara: 1977 <ul> 1978 <li>improve ifdef's for a few optional features.</li> 1979 1980 <li>correct <tt>#ifdef</tt> to <tt>#if</tt> in a few uses 1981 of <tt>OPT_PRINT_ON_EXIT</tt>.</li> 1982 </ul> 1983 </li> 1984 1985 <li>set <tt>StartupWMClass</tt> in 1986 “<tt>.desktop</tt>” files, e.g., to help 1987 <tt>cinnamon-session</tt> notice that xterm sets 1988 <tt>WM_CLASS</tt> and use its icon (patch by Richard de 1989 Boer).</li> 1990 1991 <li>disable pixel computation when rgb width is greater than 8, 1992 to work with depth 30 (patch by Denis Kaganovich).</li> 1993 1994 <li>improve color-computation for SGR 2 faint/dim (patch by 1995 Boian Bonev). Add resource <tt>faintIsRelative</tt> to specify 1996 if the modified computation should be used (prompted by 1997 discussion with Matthieu Herrb).</li> 1998 1999 <li>correct comparison-length for environment variable cleanup 2000 (patch by Brendan O' Dea).</li> 2001 2002 <li>correct <tt>dsl</tt> capability for <tt>dec+sl</tt> block 2003 in terminfo (report by Rajeev V. Pillai).</li> 2004 2005 <li>improve output formatting by <tt>vttests/utf8.pl</tt></li> 2006 2007 <li>repair test/demo scripts still using "vxt-" prefix, some 2008 cleanup with shellcheck.</li> 2009 2010 <li>enable page-number for <tt>DECXCPR</tt> response in 2011 VT330.</li> 2012 2013 <li>amend change for combining characters in <a href= 2014 "#xterm_371">patch #371</a> to limit it to the 2015 currently-defined codes (report by Thomas Wolff).</li> 2016 2017 <li>add directory-template parameter to <tt>mktemp</tt> in 2018 shell-scripts to improve portability to older systems (patch by 2019 Ryan Schmidt).</li> 2020 2021 <li>mention webpage <a href= 2022 "https://invisible-island.net/xterm/xterm-paste64.html"><em>XTerm 2023 – bracketed-paste</em></a> in 2024 <code>ctlseqs.ms</code></li> 2025 2026 <li>update manual-page descriptions for 2027 <code>allowPasteControls</code> and 2028 <code>disallowedPasteControls</code> (<a href= 2029 "#xterm_363">patch #363</a>).</li> 2030 2031 <li>further extended list of environment variables to purge on 2032 startup (suggested by Thomas Wolff).</li> 2033 2034 <li>update config.guess, config.sub</li> 2035 </ul> 2036 2037 <h1><a name="xterm_372" id="xterm_372">Patch #372 - 2038 2022/03/09</a></h1> 2039 2040 <ul> 2041 <li>amend allocation/freeing of scrollback lines, eliminating 2042 an adjustment for status-line added in <a href= 2043 "#xterm_371">patch #371</a> (report/testcase by Rajeev V. 2044 Pillai).</li> 2045 </ul> 2046 2047 <h1><a name="xterm_371" id="xterm_371">Patch #371 - 2048 2022/02/24</a></h1> 2049 2050 <ul> 2051 <li>drop double-buffer default from test-packages, since that 2052 interferes with status-line.</li> 2053 2054 <li>add <code>faceSize7</code> to table in 2055 <code>charproc.c</code>, overlooked in <a href= 2056 "#xterm_360">patch #360</a> (patch by Vladimir A. Pavlov).</li> 2057 2058 <li>use <code>XDrawString</code> rather than 2059 <code>XDrawString16</code> for text when the latter is not 2060 needed.</li> 2061 2062 <li>improve performance for initializing/reusing graphic 2063 objects in the SIXEL feature.</li> 2064 2065 <li>improve error-checking for <code>resize</code>.</li> 2066 2067 <li>fix errata in manual page (Debian #988221).</li> 2068 2069 <li>extended list of environment variables to purge on startup, 2070 i.e., in case a user starts xterm from another terminal 2071 emulator.</li> 2072 2073 <li>add comment in <code>cursor.c</code> to explain why 2074 autowrap (<code>DECAWM</code>) does not apply to data 2075 saved/restored with save/restore cursor-operations (report by 2076 Thomas Wolff).</li> 2077 2078 <li>add special case in generating the combining-character 2079 table in <code>wcwidth.c</code>, for Hangul Jamo Extended-B 2080 (report by Luis Javier Merino).</li> 2081 2082 <li>simplify/improve portability of <code>trap</code> commands 2083 in shell-scripts.</li> 2084 2085 <li>update configure options<br> 2086 <code>--disable-rectangles</code>,<br> 2087 <code>--disable-tcap-fkeys</code> and<br> 2088 <code>--disable-tcap-query</code><br> 2089 to account for changed default settings.</li> 2090 2091 <li>rather than ignore empty parameter for setting title, use 2092 that to reset it to “xterm” for scripting.</li> 2093 2094 <li>check for out-of-bounds condition while drawing sixels, and 2095 quit that operation (report by Nick Black).</li> 2096 2097 <li>add fallback definition for <code>PROJECTROOT</code> so 2098 that a suitable default location for <code>luit</code> will be 2099 compiled-in on build-servers.</li> 2100 2101 <li>implement DEC status-line controls DECSASD/DECSSDT: 2102 <ul> 2103 <li>decode controls, set state</li> 2104 2105 <li>implement DECRQSS responses</li> 2106 2107 <li>implement indicator-style status-line</li> 2108 2109 <li>add configure option 2110 <code>--enable-status-line</code></li> 2111 2112 <li>add resource <code>indicatorFormat</code></li> 2113 2114 <li>implement host-writable status-line, able to handle 2115 video-attributes and simple left/right cursor movement. 2116 This disallows all of the DEC/xterm private modes such as 2117 switching to/from the alternate screen.</li> 2118 2119 <li>move the status-line if the window is resized.</li> 2120 2121 <li><em>Note:</em> the associated screen-resizing does not 2122 work for the special case of TrueType fonts with 2123 double-buffering (see note in <a href= 2124 "#xterm_349_xft_bug">patch #349</a>).</li> 2125 </ul> 2126 </li> 2127 2128 <li>modify configure-script fixup for <code>-Werror</code> 2129 options to exclude fixup for <code>-Werror=format</code>, e.g., 2130 <code>-Werror=format-security</code>.</li> 2131 2132 <li>amend change from <a href="#xterm_370">patch #370</a>; DEC 2133 070's pseudo-code for DECCOLM incorrectly suggests that it 2134 enables DECLRMM as a side-effect.</li> 2135 2136 <li>fix some memory leaks seen using esctest and asan2 (patch 2137 by Luis Javier Merino).</li> 2138 </ul> 2139 2140 <h1><a name="xterm_370" id="xterm_370">Patch #370 - 2141 2021/11/13</a></h1> 2142 2143 <ul> 2144 <li>add <code>-a</code>, <code>-c</code> and <code>-d</code> 2145 options to <code>query-status.pl</code> to improve test for 2146 <code>DECRQSS</code>.</li> 2147 2148 <li>expanded discussion of maximum graphics geometry in 2149 <code>ctlseqs.ms</code> (suggested by Bon Wong).</li> 2150 2151 <li>corrected parameter symbol for <code>DECCARA</code> and 2152 <code>DECRARA</code> in <code>ctlseqs.ms</code> to indicate 2153 that multiple parameters may be used (report by Thomas 2154 Wolff).</li> 2155 2156 <li>add several test/demo scripts.</li> 2157 2158 <li>improve <code>DECCOLM</code>, <code>DECLRMM</code> and 2159 <code>DECALN</code> referring to pseudo-code in DEC 070.</li> 2160 2161 <li>amend a change in patch #348 which caused left/right margin 2162 mode to be reset when resizing the terminal window (report by 2163 Valentine Barshak).</li> 2164 2165 <li>fix a misnamed macro-parameter (patch by Rajeev V. 2166 Pillai).</li> 2167 2168 <li>fix spacing of <code>wideFont</code> when its width is not 2169 exactly twice as wide as the normal font (report by Rajeev V. 2170 Pillai).</li> 2171 2172 <li>suppress loading of italic font in a few places when 2173 <code>colorITmode</code> is enabled (report/analysis by Rajeev 2174 V. Pillai).</li> 2175 2176 <li>modify <code>XTSMGRAPHICS</code> to return failure status 2177 if the terminal is not configured to support the corresponding 2178 ReGIS or SIXEL feature (report by Nick Black, notcurses #2252, 2179 notcurses #2257).</li> 2180 2181 <li>modify <code>DECERA</code> and <code>DECFRA</code> to erase 2182 corresponding area in SIXEL graphics (patch by Nick Black, 2183 notcurses #1740, vt340test #16). Also modify 2184 <code>DECSERA</code>.</li> 2185 2186 <li>equate visuals for TrueColor and DirectColor (patch by 2187 Denis Kaganovich).</li> 2188 2189 <li>correct computation for pixel value of rgb when using depth 2190 16 (report by Denis Kaganovich).</li> 2191 2192 <li>correct wrapping of VT100-style double-sized characters 2193 when configured for Unicode wide-characters (report by Luis 2194 Javier Merino).</li> 2195 2196 <li>updated default value for <code>sixelScrolling</code> 2197 resource to match expected behavior versus <code>DECSDM</code> 2198 change in <a href="#xterm_369">patch #369</a> (report by Grant 2199 Taylor).</li> 2200 </ul> 2201 2202 <h1><a name="xterm_369" id="xterm_369">Patch #369 - 2203 2021/09/21</a></h1> 2204 2205 <ul> 2206 <li>modify <code>run-tic.sh</code> to work around bug in 2207 development version of ncurses which was packaged in FreeBSD 2208 ports.</li> 2209 2210 <li>remove ifdef's for <code>OPT_COLOR_RES</code> and 2211 <code>OPT_COLOR_RES2</code>.</li> 2212 2213 <li>improve performance over slow connections (report by Harald 2214 Dunkel).</li> 2215 2216 <li>update cursor if restoring mode for DECTCEM.</li> 2217 2218 <li>modify <code>CharWidth</code> macro to ensure that the 2219 shortcut for Latin-1 is only applied when UTF-8 is not enabled, 2220 to fix a bug in handling soft-hyphen from <a href= 2221 "#xterm_334">patch #334</a> changes (patch by Martijn van 2222 Duren).</li> 2223 2224 <li>improve terminfo: 2225 <ul> 2226 <li>fill-in function-keys in terminfo which are not Sun/HP 2227 keyboards using <code>xterm+nopcfkeys</code> 2228 building-block.</li> 2229 2230 <li>add kbeg to xterm+keypad to accommodate termcap 2231 applications</li> 2232 2233 <li>add smglp and smgrp to vt420+lrmm, to provide useful 2234 data for the "tabs" <code><strong>+m</strong></code> 2235 option</li> 2236 </ul> 2237 </li> 2238 2239 <li>support shift-tab in Sun, HP and SCO keyboards.</li> 2240 2241 <li>document some legacy features in <code>ctlseqs.ms</code> 2242 (prompted by discussion with Jimmy Aguilar Mena "Ergus").</li> 2243 2244 <li>add “trim” option to <code>cdXtraScroll</code> 2245 and <code>tiXtraScroll</code>.</li> 2246 2247 <li>remove support for non-fifo save-lines configuration.</li> 2248 2249 <li>extend <code>cdXtraScroll</code> to check if the cursor is 2250 at the upper-left of the scrolling region when the erasure is 2251 for the remainder of the screen versus the whole screen 2252 (prompted by discussion with Jörg Breitbart).</li> 2253 2254 <li>add workaround for broken pcre2 package in Debian 10.</li> 2255 2256 <li>change screen-refresh call used for <code>DECCARA</code> 2257 and <code>DECRARA</code> to ensure that trailing blanks which 2258 are part of the rectangle are repainted (report/analysis by 2259 Dennis Filder).</li> 2260 2261 <li>when resetting the terminal, ensure that the cursor shape 2262 also is reset, e.g., if <code>DECSCUSR</code> has been used to 2263 modify the cursor shape for an xterm which was started with the 2264 underlined cursor option (report/analysis by Luis Javier 2265 Merino).</li> 2266 2267 <li>prevent <code>DECSCUSR</code> from blinking the cursor if 2268 the <code>cursorBlink</code> resource is “never” 2269 (report by Vladimir D Seleznev).</li> 2270 2271 <li>invert the sense of <code>DECSDM</code>, to correspond with 2272 VT382 manuals (lsix #41).</li> 2273 2274 <li>update tables in <code>wcwidth.c</code> based on Unicode 2275 14.0.0</li> 2276 </ul> 2277 2278 <h1><a name="xterm_368" id="xterm_368">Patch #368 - 2279 2021/06/07</a></h1> 2280 2281 <ul> 2282 <li>add <code>DefaultOff</code> option to 2283 <code>RenderFont</code> resource, as part of the 2284 session-management feature.</li> 2285 2286 <li>add auto-scroll-lock feature (patch by Stelios 2287 Bounanos).</li> 2288 2289 <li>update the window-size information returned via 2290 <code>TIOCGWINSZ</code> when rows/columns are unchanged but the 2291 font-size changes (report by Nick Black).</li> 2292 2293 <li>improve session-management feature by saving/restoring the 2294 font settings.</li> 2295 2296 <li>update config.guess, config.sub</li> 2297 </ul> 2298 2299 <h1><a name="xterm_367" id="xterm_367">Patch #367 - 2300 2021/03/26</a></h1> 2301 2302 <ul> 2303 <li>add <code>OSC 22</code> to allow programs to select 2304 different pointer cursor at runtime.</li> 2305 2306 <li>change configuration for <em>no-return</em> functions to 2307 use <code>_Noreturn</code> when it is available, because 2308 <code>clang --analyze</code> does not properly handle the gcc 2309 noreturn attribute.</li> 2310 2311 <li>add <code>cursorTheme</code> resource to provide a way to 2312 enable or disable the cursor theme feature.</li> 2313 2314 <li>modified <code>CopyWait</code> event retries to use shorter 2315 sleeps, to improve responsiveness (tmux #2556).</li> 2316 2317 <li>improve quoting/escaping in demo-scripts per 2318 shellcheck.</li> 2319 2320 <li>add <code>resizeByPixel</code> resource, to permit 2321 disabling window manager resizing-hints (patch by Tim 2322 Oehl).</li> 2323 2324 <li>corrected <code>printOptsImmediate</code> handling of 2325 alternate-screen (report by Abhijit Dasgupta).</li> 2326 2327 <li>update sample terminfo to more closely match ncurses.</li> 2328 2329 <li>add/improve limit-checks for Xlib calls (report by Roman 2330 Fiedler).</li> 2331 2332 <li>fix a typo in the help-message (report by Tomas 2333 Korbar).</li> 2334 </ul> 2335 2336 <h1><a name="xterm_366" id="xterm_366">Patch #366 - 2337 2021/02/10</a></h1> 2338 2339 <ul> 2340 <li>correct a compiler-warning fix in <a href= 2341 "#xterm_352">patch #352</a> which allowed sign-extension of 2342 coordinate values (report by "CismonX").</li> 2343 2344 <li>correct upper-limit for selection buffer, accounting for 2345 combining characters (report/testcase by Tavis Ormandy).</li> 2346 2347 <li>with <code>alwaysHighlight</code> true, xterm does not 2348 properly track focus. The <em>screen->select</em> 2349 <code>FOCUS</code> flag remains always on, which prevents 2350 <code>bellIsUrgent</code> from working, as the urgent 2351 <code>WM_HINT</code> flag is only set in 2352 <code>setXUrgency()</code> when the window is not focused. Fix 2353 this by updating <em>screen->select</em> in 2354 <code>unselectwindow()</code> regardless of the value of 2355 <code>always_highlight</code> (patch by Jiri Bohac).</li> 2356 2357 <li>improve fix for interaction between SRM and ENQ (report by 2358 Grant Taylor).</li> 2359 2360 <li>build-fix for <code>--with-Xaw3dxft</code>, needed when 2361 <code>--with-toolbar</code> is omitted (report by Jimmy Olgeni, 2362 Emanuel Haupt).</li> 2363 </ul> 2364 2365 <h1><a name="xterm_365" id="xterm_365">Patch #365 - 2366 2021/02/03</a></h1> 2367 2368 <ul> 2369 <li>amend fix for “word” selection in <a href= 2370 "#xterm_364">patch #364</a> to limit that to the 2371 <code>insert-selectable</code> <em>action</em>, which reads 2372 data from the screen. This restores the interactive behavior 2373 where double-clicking on a “word” would make 2374 subsequent selection extensions by words as well as suppressing 2375 some boundary-checks (report by David Wolfskill, FreeBSD 2376 #253225).</li> 2377 </ul> 2378 2379 <h1><a name="xterm_364" id="xterm_364">Patch #364 - 2380 2021/02/02</a></h1> 2381 2382 <ul> 2383 <li>add <code>-fc</code> option.</li> 2384 2385 <li>correct/improve limit-checks for SRM versus ENQ from 2386 <a href="#xterm_344">patch #344</a> (report by Tom 2387 Szilagyi).</li> 2388 2389 <li>enable <code>XftFont</code> resource in Xaw3dxft 2390 configuration (patch by Tavis Ormandy).</li> 2391 2392 <li>improve quoting/escaping in build-scripts per 2393 shellcheck.</li> 2394 2395 <li>add <code>libpcre2-posix</code> to the packages tested for 2396 <code>--with-pcre2</code> option, needed with Fedora (report by 2397 Tomas Korbar).</li> 2398 2399 <li>correct a typo in manual page, and note that 2400 <code>KeepClipboard</code> may not be compiled-in (report/patch 2401 by Sean C Farley).</li> 2402 2403 <li>corrected boundary-checks for “word” selection 2404 used in <code>on<em>N</em>Clicks</code> resources (report by 2405 Tavis Ormandy).</li> 2406 2407 <li>update to autoconf-2.52-20210101, to improve shellcheck 2408 warnings.</li> 2409 2410 <li>improve configure check for desktop categories.</li> 2411 </ul> 2412 2413 <h1><a name="xterm_363" id="xterm_363">Patch #363 - 2414 2020/12/26</a></h1> 2415 2416 <ul> 2417 <li>disable groff hyphenation in generated html when using 2418 man2html.</li> 2419 2420 <li>change SCS “<code>&4</code>” Cyrillic to 2421 non-NRCS, per VT520 manual.</li> 2422 2423 <li>amend fix for SCS in <a href="#xterm_198">patch #198</a> to 2424 remove <code>DEL</code> rather than converting it to a space 2425 (report by Thomas Wolff).</li> 2426 2427 <li>modify state transitions for selecting character sets to 2428 eliminate an ambiguity between the “A” used in 2429 VT220 versus VT320.</li> 2430 2431 <li>improve error recovery when selecting characters by 2432 resetting to US ASCII when no suitable encoding is found, e.g., 2433 attempting to use an NRCS sequence when NRCS is not 2434 enabled.</li> 2435 2436 <li>turn off hyphenation in “<code>.txt</code>” 2437 conversion, prompted by groff changes.</li> 2438 2439 <li>add VT5xx ISO Latin-2 (prompted by discussion with Thomas 2440 Wolff).</li> 2441 2442 <li>amend change from <a href="#xterm_361">patch #361</a> to 2443 event-handling in <code>CopyWait</code> to handle active-icon 2444 as a special case (Debian #975687).</li> 2445 2446 <li>add call to <code>loadColorTable</code> to get the visual 2447 information needed to decode BE RGBA32 color format (patch by 2448 Leandro Lupori).</li> 2449 2450 <li>modify the resource-parsing for 2451 <code>disallowedPasteControls</code> and similar lists of 2452 names/numbers to recognize “~;” (tilde) for 2453 cancelling a given name/number.</li> 2454 2455 <li>add ENQ, EOT and NUL to default for 2456 <code>disallowedPasteControls</code>.</li> 2457 2458 <li>change default for <code>disallowedPasteControls</code> to 2459 omit the tab character (suggested by Harald Dunkel).</li> 2460 2461 <li>fix swapped height/width in <code>regisScreenSize</code> 2462 and <code>maxGraphicSize</code> resources using "auto" value, 2463 from <a href="#xterm_314">patch #314</a> (report by Anton 2464 Lavrentiev)</li> 2465 2466 <li>revise <a href="#xterm_362">patch #362</a> change for 2467 shift-modifier versus mouse protocol and select/paste by adding 2468 resource <code>shiftEscape</code>, which can be enabled via a 2469 control sequence (prompted by discussion with Matthijs van 2470 Duin).</li> 2471 2472 <li>simplify/improve ifdef in trace code for using a separate 2473 set of files for each run of xterm.</li> 2474 2475 <li>add options <code>-r</code> and <code>-t</code> to 2476 <code>vttests/query-color.pl</code> to show the 6-digit RGB 2477 code and actual colors.</li> 2478 2479 <li>add <code>nel</code> to <code>xterm-basic</code> 2480 terminfo.</li> 2481 2482 <li>alter <code>vttests/modify-keys.pl</code> to omit HTML 2483 reference links to the modified-keys table where no keycode was 2484 available.</li> 2485 </ul> 2486 2487 <h1><a name="xterm_362" id="xterm_362">Patch #362 - 2488 2020/11/11</a></h1> 2489 2490 <ul> 2491 <li>cleanup of calls to <code>free</code>, removing checks for 2492 null (Walter Harms).</li> 2493 2494 <li>improved mouse-button reporting (prompted by discussion 2495 with Stephane Chazelas) 2496 <ul> 2497 <li>narrow the scope of the change for shift-key in 2498 <a href="#xterm_361">patch #361</a> to make it apply only 2499 when the <code>modifyOtherKeys</code> resource is set to 2 2500 (i.e., “program mode”). Also, when checking the 2501 shift-key, ignore modifiers other than shift, control and 2502 “meta”</li> 2503 2504 <li>use the alt/meta modifier information obtained in 2505 <code>VTInitModifiers</code> to replace a hard-coded 2506 <em>mod1</em> used to detect “Meta” for 2507 mouse-button responses.</li> 2508 </ul> 2509 </li> 2510 2511 <li>reduce <code>SIGWINCH</code>'s sent to the client by 2512 filtering out duplicates.</li> 2513 2514 <li>improve display when <code>scaleHeight</code> is greater 2515 than 1: 2516 <ul> 2517 <li>the text-cursor is vertically-centered on the current 2518 line, rather than only extending below the current line 2519 (report by Manu Chaturvedi).</li> 2520 2521 <li>the built-in line-drawing characters extend to the 2522 scaled cell-height.</li> 2523 </ul> 2524 </li> 2525 2526 <li>fill-in special case for motion-events to match the changes 2527 for shift-key in pointer-button events from <a href= 2528 "#xterm_361">patch #361</a>.</li> 2529 </ul> 2530 2531 <h1><a name="xterm_361" id="xterm_361">Patch #361 - 2532 2020/10/14</a></h1> 2533 2534 <ul> 2535 <li>treat the return value of <code>strerror</code> as readonly 2536 (patch by Philipp Klaus Krause).</li> 2537 2538 <li>modify event-handling in <code>CopyWait</code> to work 2539 around hanging while writing large amounts of text to an active 2540 icon and at the same time iconifying/deiconifying (report by 2541 Dave Kemper).</li> 2542 2543 <li>initialize double-buffer for active-icon window.</li> 2544 2545 <li>improve manual page description of scrollbar resources 2546 (report by Brian Lindholm).</li> 2547 2548 <li>correct ifdef for menu entry for active-icon, when 2549 initializing it with toolbar configuration.</li> 2550 2551 <li>add preprocessor option to makefile to set internal 2552 definition of pixmaps directory to match the 2553 install-configuration (FreeBSD #250036).</li> 2554 2555 <li>cleanup of calls to <code>free</code>, removing checks for 2556 null (Walter Harms).</li> 2557 2558 <li>add fallback actions <code>pointer-button</code> and 2559 <code>pointer-motion</code> which handle events for the mouse 2560 control-sequences protocol if the <em>select</em>-related 2561 translations are omitted with 2562 <code>*omitTranslation:select</code> (prompted by discussion 2563 with "Ergus")</li> 2564 2565 <li>amend rule for using shift-key to override mouse-protocol 2566 for select/paste to limit that feature to mouse-buttons which 2567 are actually bound to select/paste actions (prompted by 2568 discussion with "Ergus").</li> 2569 2570 <li>corrected mapping in special case for repainting wrap-marks 2571 when viewing the scrollback area.</li> 2572 2573 <li>use separate <em>GCs</em> for <code>showWrapMarks</code> 2574 feature, to work around cursor coloring change in <a href= 2575 "#xterm_345">patch #345</a> (report by Paulo Silva de 2576 Alíbano).</li> 2577 </ul> 2578 2579 <h1><a name="xterm_360" id="xterm_360">Patch #360 - 2580 2020/09/20</a></h1> 2581 2582 <ul> 2583 <li>mention <code>decGraphicsID</code> in 2584 <code>ctlseqs.ms</code> (suggested by Thomas Wolff).</li> 2585 2586 <li>modify pixel-coordinate mouse response to use as origin the 2587 VT100-window rather than the underlying widget, which includes 2588 the scrollbar (report by Thomas Wolff).</li> 2589 2590 <li>add configure option <code>--disable-print-graphics</code> 2591 (Ross Combs).</li> 2592 2593 <li>add <code>test_ptydata</code> to “make check” 2594 rule.</li> 2595 2596 <li>minor fixes for <code>ctlseqs.ms</code> (report by 2597 Jean-Marc Bourguet).</li> 2598 2599 <li>minor fixes for manpage style (report/patch by 2600 "a1346054").</li> 2601 2602 <li>correct cleanup from switch between italics/normal font in 2603 the show/hide cursor functions (report/testcase by Peter 2604 Fabinski).</li> 2605 2606 <li>integrated patch by Ross Combs: 2607 <ul> 2608 <li>internal renaming of GraphicsID symbols, for 2609 readability.</li> 2610 2611 <li>adjust logic for VT125, treating it as a ReGIS 2612 terminal.</li> 2613 </ul> 2614 </li> 2615 2616 <li>update configure macros, for compiler-warning fixes.</li> 2617 2618 <li>integrated patch by Ross Combs: 2619 <ul> 2620 <li>add control sequence modes for graphics printing.</li> 2621 2622 <li>improve conversion to bitmaps for TrueType fonts in 2623 ReGIS</li> 2624 2625 <li>add <code>font7</code> resource, for an 2626 “enormous” bitmap font.</li> 2627 2628 <li>do not reset graphics in a soft-reset.</li> 2629 2630 <li>add <code>pointerFont</code> resource, and 2631 <code>-pf</code> command-line option.</li> 2632 </ul> 2633 </li> 2634 2635 <li>improve typography of manual page (patch by Branden 2636 Robinson).</li> 2637 2638 <li>amend <a href="#xterm_359">patch #359</a> change to 2639 <code>df-install.in</code> to ignore a command-line assignment 2640 to <code>DESTDIR</code> if followed by an explicit 2641 <code>--dir</code> (report by Sven Joachim).</li> 2642 </ul> 2643 2644 <h1><a name="xterm_359" id="xterm_359">Patch #359 - 2645 2020/08/17</a></h1> 2646 2647 <ul> 2648 <li>add special case in <code>WriteText</code> to allow colors 2649 8-15 to override <code>colorBDMode</code> (patch by Ingo 2650 Brückl).</li> 2651 2652 <li>add <code>utf8Weblike</code> resource, to provide an 2653 alternate scheme for handling ill-formed UTF-8 sequences 2654 (adapted from patch by Dan Gohman).</li> 2655 2656 <li>improve computation for the number of lines needed to 2657 scroll-up a SIXEL graphic (report/patch by Ben Wong).</li> 2658 2659 <li>correct manpage description for default value of 2660 <code>disallowWindowOps</code> from changes in <a href= 2661 "#xterm_331">xterm #331</a> (patch by Ben Wong).</li> 2662 2663 <li>correct a loop starting-point in 2664 <code>refresh_graphics</code> from optimization in <a href= 2665 "#xterm_358">patch #358</a> changes (report by Ben Wong).</li> 2666 2667 <li>add a new mouse mode 1016, which uses the same format as 2668 mode 1006, but sends the mouse's position in pixels (suggested 2669 by Igor van den Hoven).</li> 2670 2671 <li>fix an issue from <a href="#xterm_338">patch #338</a> 2672 changes where only the first selection buffer specified in the 2673 request would be updated using OSC 52 (patch by Michael 2674 Gulick).</li> 2675 2676 <li>modify makefile/scripts to allow <code>DESTDIR</code> to 2677 prefix the target directory for desktop-file-install (report by 2678 Fred Heitkamp).</li> 2679 2680 <li>enable SIXEL feature by default.</li> 2681 2682 <li>update config.guess, config.sub</li> 2683 </ul> 2684 2685 <h1><a name="xterm_358" id="xterm_358">Patch #358 - 2686 2020/07/12</a></h1> 2687 2688 <ul> 2689 <li>correct logic for decodeTerminalID changes in <a href= 2690 "#xterm_357">patch #357</a> (report by "Chartreuse").</li> 2691 2692 <li>modify makefile to use <code>plink.sh</code> when linking 2693 test-programs, to fix build when using pcre (report by H Merijn 2694 Brand)</li> 2695 2696 <li>build-fix for test_ptydata program (patch by H Merijn 2697 Brand)</li> 2698 </ul> 2699 2700 <h1><a name="xterm_357" id="xterm_357">Patch #357 - 2701 2020/07/05</a></h1> 2702 2703 <ul> 2704 <li>several minor optimizations for the ReGIS and SIXEL 2705 features, improving performance by 10%.</li> 2706 2707 <li>add resource <code>decGraphicsID</code> to allow displaying 2708 graphics when the emulation level would ordinarily disallow 2709 this (prompted by discussion with Thomas Wolff).</li> 2710 2711 <li>add control sequences for fast switching of color palettes: 2712 <code>XTPUSHCOLORS</code>, <code>XTPOPCOLORS</code>, 2713 <code>XTREPORTCOLORS</code></li> 2714 2715 <li>amend change for soft-hyphen from <a href= 2716 "#xterm_328">patch #328</a> to avoid stripping 2717 replacement-characters which would be shown with malformed or 2718 overlong UTF-8 input.</li> 2719 2720 <li>corrected an error-handling case in 2721 <code>decodeUtf8</code>, matching a similar fix in <a href= 2722 "#xterm_268">patch #268</a> (report/patch by Dan Gohman).</li> 2723 2724 <li>add a test-driver for <code>ptydata.c</code></li> 2725 2726 <li>minor cleanup of macros (adapted from patch by Walter 2727 Harms).</li> 2728 2729 <li>fix some errata in <code>ctlseqs.ms</code> (report by 2730 Thomas Wolff).</li> 2731 2732 <li>allow immediate repaint-on-palette-changed if 2733 double-buffering is enabled.</li> 2734 2735 <li>deprecate codes 10/11 in sgr push controls, changing those 2736 to 30/31, to avoid confusion with sgr 10-19.</li> 2737 2738 <li>modify <code>SGR</code> parameter handling to stop if an 2739 unrecognized parameter is encountered, to guard against 2740 malformed or nonstandard sequences (report by Bram 2741 Moolenaar).</li> 2742 2743 <li>modify <code>DECERA</code> color for consistency with other 2744 erasures/clearing (report by Thomas Wolff).</li> 2745 2746 <li><code>ECH</code> should not be masked by 2747 <code>DECSCA</code> (report by Thomas Wolff).</li> 2748 2749 <li>extend <code>DECFRA</code> and <code>REP</code> to accept 2750 any “graphic” character rather than just Latin1, 2751 etc. (report by Thomas Wolff).</li> 2752 2753 <li>add <code>-C</code> option to 256colors2.pl and 2754 88colors2.pl, to demonstrate mixed semicolon/colon separators 2755 which are implied by ECMA-48.</li> 2756 2757 <li>update sample terminfo to reflect the documentation 2758 improvements.</li> 2759 2760 <li>update description of 88/256/direct color in 2761 <code>ctlseqs.ms</code> to point out that using semicolons is a 2762 deprecated legacy feature, and standard terminal applications 2763 should use colons (prompted by discussion with Bram 2764 Moolenaar).</li> 2765 2766 <li>modify configure-check for <code>tgetent</code> to 2767 conditionally include <code>termcap.h</code>, enabling 2768 configuration using <code>clang</code>'s pedantic-errors option 2769 (report by Dennis Clarke). See <a href= 2770 "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h3-Other-Compatibility"> 2771 <em>Other Compatibility</em></a> in ncurses' 2772 <em>curs_termcap(3X)</em>.</li> 2773 2774 <li>remove some unnecessary pointer checks (patch by Walter 2775 Harms).</li> 2776 2777 <li>accept terminal-id and add DA response for VT131, 2778 VT132.</li> 2779 </ul> 2780 2781 <h1><a name="xterm_356" id="xterm_356">Patch #356 - 2782 2020/05/02</a></h1> 2783 2784 <ul> 2785 <li>revise fix for Debian #954730, which interfered with wheel 2786 mouse events (report by Gabriele Balducci).</li> 2787 </ul> 2788 2789 <h1><a name="xterm_355" id="xterm_355">Patch #355 - 2790 2020/05/01</a></h1> 2791 2792 <ul> 2793 <li>revise fix for Debian #954730, which interfered with wheel 2794 mouse events (report by Henri Menke).</li> 2795 2796 <li>fix typos in documentation (reports by Stephen Hurd, Stefan 2797 Assmann).</li> 2798 2799 <li>add mapping for <code>decTerminalID</code> for 2800 “100” overlooked in <a href="#xterm_354">patch 2801 #354</a>.</li> 2802 2803 <li>update tables in wcwidth.c based on Unicode 13.0.0</li> 2804 2805 <li>build-fix for “make check” when building 2806 out-of-tree (report by Sven Joachim).</li> 2807 </ul> 2808 2809 <h1><a name="xterm_354" id="xterm_354">Patch #354 - 2810 2020/04/26</a></h1> 2811 2812 <ul> 2813 <li>work around performance problems of 2814 <code>XDrawImageString</code> and 2815 <code>XDrawImageString16</code> functions (Debian 2816 #954845).</li> 2817 2818 <li>add a control sequence which reports xterm's version (patch 2819 by Nicholas Marriott, mintty #881).</li> 2820 2821 <li>temporarily set numeric locale category to "C" when parsing 2822 resources, so that <code>scaleHeight</code> and 2823 <code>faceSize</code> settings do not depend on locale (Debian 2824 #820803).</li> 2825 2826 <li>improve DA/DA2 response by ensuring that the 2827 <code>decTerminalID</code> maps to one of the known 2828 identifiers, as well as providing DA2 response for VT241 and 2829 VT382.</li> 2830 2831 <li>terminfo improvements: 2832 <ul> 2833 <li>add (my) comments from ncurses which explain the keypad 2834 layouts.</li> 2835 2836 <li>add <code>vt52+keypad</code> from ncurses</li> 2837 2838 <li>use improved <code>xm</code> example for 2839 <code>xterm+x11mouse</code>, <code>xterm+sm+1006</code> 2840 from ncurses 6.2 terminfo.src</li> 2841 </ul> 2842 </li> 2843 2844 <li>two fixes for left/right wheel mouse event reporting 2845 (Debian #954730): 2846 <ul> 2847 <li>filter identical button-events</li> 2848 2849 <li>correct order of button-range versus protocol type (see 2850 <a href="#xterm_345">patch #345</a>)</li> 2851 </ul> 2852 </li> 2853 2854 <li>change “make check” makefile-rule to use 2855 test-drivers for charclass and wcwidth data.</li> 2856 2857 <li>quiet “did not find a usable <em>xxx</em> TrueType 2858 font” warnings by making <code>fontWarnings</code> apply 2859 to these messages (report by Jim Rees).</li> 2860 2861 <li>improve reinitialization of parameter list (report/testcase 2862 by James Holderness).</li> 2863 2864 <li>temporarily set numeric locale category to "C" when 2865 formatting SVG or XHTML screendumps, to make the radix 2866 separator used in RGB values consistent (adapted from patch by 2867 George Kouryachy).</li> 2868 2869 <li>add resource <code>forceXftHeight</code> to control whether 2870 workaround from Debian #880407 is used.</li> 2871 2872 <li>apply updated ascent/descent in workaround from Debian 2873 #880407 to fix a 1-pixel gap in built-in vertical lines 2874 (report/testcase by Stefan Assmann).</li> 2875 2876 <li>improve round-off of scaling for built-in line-drawing 2877 (prompted by discussion with Stefan Assmann).</li> 2878 2879 <li>adjust fonts in svg-icon files to accommodate reduced 2880 functionality of new pango (report/analysis by YOKOTA 2881 Hiroshi).</li> 2882 2883 <li>improve configure check for X Toolkit library.</li> 2884 2885 <li>correct Y-coordinate transformation in 2886 <code>ClearCurBackground</code>, overlooked in changes for 2887 <a href="#xterm_334">patch #334</a> (report/analysis by Chuck 2888 Silvers).</li> 2889 2890 <li>remove <code>--vendor</code> option from test-packages' 2891 install of desktop files; the feature is badly broken in 2892 <em>gnome-shell</em>.</li> 2893 2894 <li>modify <code>uxterm</code> to make it possible to select 2895 nonstandard locale <em>C.UTF-8</em>, e.g, if the user's locale 2896 is set to “C” (Debian #940626).</li> 2897 2898 <li>re-save/tweak “.svg” icon-files to work around 2899 breakage in toolset since the files were created in <a href= 2900 "#xterm_283">patch #283</a>.</li> 2901 </ul> 2902 2903 <h1><a name="xterm_353" id="xterm_353">Patch #353 - 2904 2020/02/01</a></h1> 2905 2906 <ul> 2907 <li>amend change in <a href="#xterm_352">patch #352</a> for 2908 button-events to fix a case where some followup events were not 2909 processed soon enough (report/patch by Jimmy Aguilar 2910 Mena).</li> 2911 2912 <li>handle <em>MappingNotify</em> X event, to improve recovery 2913 when switching keyboard configurations using 2914 <code>xkbcomp</code> (prompted by discussion with Frank Mosch, 2915 Debian #661295). There is more work needed here, possibly in 2916 the X libraries.</li> 2917 2918 <li>improve discussion of mouse-mode in <code>ctlseqs.ms</code> 2919 (suggested by Igor van den Hoven).</li> 2920 2921 <li>further improve checks for Xft <em>max-advance-width</em> 2922 to take into account fonts which use two cells for ambiguous 2923 width characters. Also improve the time used for these checks 2924 (reports by Yuri Pankov, Frank Mosch).</li> 2925 2926 <li>fix a few spelling errors reported by codespell (report by 2927 Jens Schleusener).</li> 2928 2929 <li>modify <code>run-tic.sh</code> to prefer development 2930 version of ncurses since changes to terminfo file in <a href= 2931 "#xterm_345">patch #345</a> rely upon bug-fixes in ncurses 2932 (prompted by discussion with Will Senn).</li> 2933 </ul> 2934 2935 <h1><a name="xterm_352" id="xterm_352">Patch #352 - 2936 2020/01/16</a></h1> 2937 2938 <ul> 2939 <li>adjust fontsize data to handle a minor inconsistency from 2940 recent Xft versions (Debian #880407, adapted from patch by 2941 Vincent Lefèvre).</li> 2942 2943 <li>add a table to the manual page description of 2944 <code>forceBoxChars</code> to alert the reader to the special 2945 characters aside from “line-drawing” which are 2946 drawn directly when this resource is set (Debian #931305).</li> 2947 2948 <li>improve <code>checkXft</code> logic which attempts to 2949 detect fonts whose <em>max-advance-width</em> is inconsistent 2950 with the actual glyph widths. For some fonts, it is necessary 2951 to check additional characters (report/analysis by Jan 2952 Engelhardt).</li> 2953 2954 <li>improve configure-checks for X headers and libraries on 2955 recent MacOS, which has moved those files under 2956 <code>/usr/X11</code>.</li> 2957 2958 <li>improve portability of iconify/deiconify feature by taking 2959 into account some window managers which manipulate the EWMH 2960 <code>_NET_WM_STATE</code> property, adding/removing 2961 <code>_NET_WM_STATE_HIDDEN</code> rather than actually 2962 <em>minimizing</em> the window (prompted by discussion with 2963 Jörg Breitbart).</li> 2964 2965 <li>improve workaround from <a href="#xterm_287">patch #287</a> 2966 for the <code>-iconic</code> option when configured with 2967 toolbar by postponing the extra request for minimizing the 2968 window to the end of menu-initialization.</li> 2969 2970 <li>modify <code>xevents</code> special-case for mouse-events 2971 to include button-events so that the meta key by itself can 2972 generate button-events (report/analysis by Mattias 2973 Engdegård).</li> 2974 2975 <li>amend SGR-stack change from <a href="#xterm_348">patch 2976 #348</a> to not associate bold attribute with background color 2977 (report by Nicholas Marriott).</li> 2978 2979 <li>fix copy/paste error in manual page (patch by Larry 2980 Hynes).</li> 2981 2982 <li>add definitions in <code>xterm_io.h</code> so that GNU/Hurd 2983 will use <code>posix_openpty</code> (patch by Samuel 2984 Thibault).</li> 2985 2986 <li>build-fix in debug-tracing, for <code>esctest</code>.</li> 2987 2988 <li>updated autoconf macros</li> 2989 2990 <li>update config.guess</li> 2991 </ul> 2992 2993 <h1><a name="xterm_351" id="xterm_351">Patch #351 - 2994 2019/11/17</a></h1> 2995 2996 <ul> 2997 <li>correct logic in <code>property_to_string</code> for 2998 deciding when to fallback from UTF-8 decoding to ISO-8859-1 2999 decoding, broken in <a href="#xterm_350">xterm #350</a> 3000 (FreeBSD #241961).</li> 3001 3002 <li>add <code>-report-icons</code> to help-message.</li> 3003 3004 <li>improved autoconf macros: 3005 <ul> 3006 <li><code>CF_ADD_LIBS</code>: the change to filter out 3007 duplicates caused this to append rather than prepend. 3008 revise to fix that.</li> 3009 3010 <li><code>CF_GCC_VERSION</code> and 3011 <code>CF_GCC_WARNINGS</code>: move checks to distinguish 3012 icc/clang from gcc from the macro which handles the 3013 --enable-warnings option, to make this work 3014 without-warnings for the inline-checks.</li> 3015 </ul> 3016 </li> 3017 3018 <li>update config.guess, config.sub</li> 3019 3020 <li>correct status in <code>XTGETXRES</code> replies when the 3021 resource was not found.</li> 3022 3023 <li>fix some gcc, cppcheck, clang and coverity warnings.</li> 3024 3025 <li>guard call to <code>RequestResize</code> from the 3026 struct-notify event handler to prevent recursion in the 3027 Xft+buffered workaround in some cases when doing manual 3028 resizing rather than resizing via escape sequences (reports by 3029 Stefan Assmann, Mike Thornburg).</li> 3030 3031 <li>amend the workaround for Xft+buffered blanking by moving 3032 the switch to bitmap-fonts to account for differences in font 3033 metrics between bitmap- and TrueType-fonts (report by Stefan 3034 Assmann).</li> 3035 3036 <li>improve the note on the <code>xterm-rep</code> terminfo 3037 entry (prompted by discussion with Sven Joachim).</li> 3038 </ul> 3039 3040 <h1><a name="xterm_350" id="xterm_350">Patch #350 - 3041 2019/11/02</a></h1> 3042 3043 <ul> 3044 <li>modify html/svg dump to not ignore zero'd/blank cells.</li> 3045 3046 <li>align terminfo file with ncurses, e.g., add 3047 <code>xterm+osc104</code> block.</li> 3048 3049 <li>improve discussion of <code>modifyOtherKeys</code> in 3050 manual page and in <code>ctlseqs.ms</code>.</li> 3051 3052 <li>add <code>vttests/modify-keys.pl</code> script to 3053 illustrate the <code>modifyOtherKeys</code> resource (prompted 3054 by discussion with Bram Moolenaar).</li> 3055 3056 <li>various improvements to <code>ctlseqs.ms</code>, as part of 3057 autogenerating links for the website.</li> 3058 3059 <li>update manual page default for <code>saveLines</code> 3060 resource default value (Branden Robinson, Debian #913815).</li> 3061 3062 <li>add command-line option <code>-report-xres</code> to show 3063 the values of the VT100 widget X resources when initialization 3064 is complete.</li> 3065 3066 <li>add a control sequence which, like tcap-query, allows an 3067 application to inspect most X resource settings of the VT100 3068 widget.</li> 3069 3070 <li>adjust some optional features to enable them in the imake 3071 configuration as they would be by default via the configure 3072 script.</li> 3073 3074 <li>add null-pointer checks to improve error recovery when 3075 bitmap fonts are missing or corrupt (report by Jonne 3076 Ransijn).</li> 3077 3078 <li>correct the condition for deleting the EWMH window-title 3079 property, i.e., if UTF-8 titles are disabled, rather than if an 3080 update to the EWHM property found no change (report by Sven 3081 Joachim).</li> 3082 3083 <li>build-fix for the case when configure 3084 <code>--enable-trace</code> is used without 3085 <code>--enable-warnings</code> (report by Sven Joachim).</li> 3086 3087 <li>fix a few minor bugs found with Coverity.</li> 3088 3089 <li>add a check in <code>property_to_string</code> to avoid 3090 translating <code>UTF8_STRING</code> or 3091 <code>COMPOUND_TEXT</code> into Latin-1 when UTF-8 encoding is 3092 active, e.g., when pushing onto the title-stack while switching 3093 to the alternate screen.</li> 3094 3095 <li>build-fix for the <code>--disable-doublechars</code> 3096 configure option (report by Brian Lindholm).</li> 3097 </ul> 3098 3099 <h1><a name="xterm_349" id="xterm_349">Patch #349 - 3100 2019/09/22</a></h1> 3101 3102 <ul> 3103 <li>add graphic context to support bold+italics (patch by Quinn 3104 Strahl).</li> 3105 3106 <li>document window properties in the manual page.</li> 3107 3108 <li>improve title-string feature: 3109 <ul> 3110 <li>if any of <code>allowC1Printable</code>, 3111 <code>utf8Title</code> or <code>titleModes</code> hint that 3112 an application might send a title-string encoded in UTF-8, 3113 check if that is the case, and if it is recodable into 3114 ISO-8859-1, use that for the ICCCM-style title.</li> 3115 3116 <li>check if the title given by a control sequence happens 3117 to be already encoded in UTF-8, to avoid double-encoding 3118 (FreeBSD #240393).</li> 3119 3120 <li>Make <code>sameName</code> resource work for the EWMH 3121 titles.</li> 3122 3123 <li>Modify menu-state of <code>utf8Title</code> to be 3124 consistent with the <code>utf8</code> source, i.e., setting 3125 the EWMH properties automatically when UTF-8 is 3126 active.</li> 3127 </ul> 3128 </li> 3129 3130 <li id="xterm_349_xft_bug">reorganize text-drawing to make it 3131 possible to investigate using Xft to implement VT100-style 3132 double-sized characters. While doing this, made a workaround 3133 for apparent Xft bug which loses its drawable state when 3134 switching from 132 to 80 columns.</li> 3135 3136 <li>improve font-warning messages by showing which are 3137 <em>derived</em> rather than directly from resource settings 3138 (suggested by Tomas Korbar). Also filter repeated font-warning 3139 messages, to accommodate broken X configurations.</li> 3140 3141 <li>fix an inconsistency between failure to load derived wide 3142 font versus failure to load derived wide-bold font (Redhat 3143 #1679790). That relies upon the “:unscaled” 3144 property which is broken in some distributions (however, recent 3145 Debian and the BSDs such as MacOS work).</li> 3146 3147 <li>updated autoconf-252 to check X11R7 include/lib directories 3148 found on some older configurations.</li> 3149 3150 <li>set a graphic-context for border when double-buffering is 3151 active; to prevent the border color from changing when 3152 switching to reverse-video.</li> 3153 3154 <li>build-fix for <code>--disable-ziconbeep</code>, which 3155 conflicted with the new double-buffer configuration (report by 3156 Brian Lindholm).</li> 3157 3158 <li>fix loop-limit for lookup of <code>fullscreen</code> 3159 resource broken in <a href="#xterm_347">xterm #347</a> (report 3160 by Scott Bertilson).</li> 3161 </ul> 3162 3163 <h1><a name="xterm_348" id="xterm_348">Patch #348 - 3164 2019/07/22</a></h1> 3165 3166 <ul> 3167 <li>update window-manager hints when exiting Tek4014 mode 3168 (Debian #932569, patch by Jonathan Irwin).</li> 3169 3170 <li>fix a misformatted printf in 3171 <code>report-sgr.pl</code>.</li> 3172 3173 <li>add configure check for termios types, to improve 3174 compiler-warnings.</li> 3175 3176 <li>ensure that when resetting margins, to also reset 3177 <code>DECLRMM</code>. This affects <code>DECCOLM</code>, 3178 <code>DECALN</code> (although DEC STD 070 mentions only 3179 top/bottom margins), and <code>DECSTR</code>.</li> 3180 3181 <li>corrected order of reset/move when setting 3182 <code>DECCOLM</code>, and make it more consistent by always 3183 resetting margins, rather than only when the mode is changed 3184 (report by James Holderness).</li> 3185 3186 <li>compile-in double-buffer support by default, changing the 3187 configure option to set the default resource value for 3188 <code>buffered</code> to true or false.</li> 3189 3190 <li>take in account the reverse-video state when computing the 3191 filler-color used when clearing the screen in double-buffering 3192 configuration.</li> 3193 3194 <li>correct logic for filtering scrollbar-updates when 3195 <code>buffered</code> resource is compiled-in but not enabled 3196 (report by Paul Lampert).</li> 3197 3198 <li>improve state saved/restored for cursor-save and SGR stack 3199 features.</li> 3200 3201 <li>improve description of 1006 and 1005 mouse modes, to avoid 3202 implying that they use character-parameters (report by Bryan 3203 Christ).</li> 3204 3205 <li>explain in <code>ctlseqs.ms</code> that some of the numeric 3206 keypad keys were xterm extensions rather than VT100/VT220 3207 terminal features (prompted by discussion with Thomas 3208 Wolff).</li> 3209 3210 <li>explain in <code>ctlseqs.ms</code> how the DEC windowing 3211 extension is supported by xterm.</li> 3212 3213 <li>add 28 rectangular editing to the primary response 3214 (suggested by Thomas Wolff).</li> 3215 3216 <li>fix a typo, improve wording in <code>ctlseqs.ms</code> 3217 (Thomas Wolff).</li> 3218 3219 <li>fix internal column-parameter when <code>SL</code> or 3220 <code>SR</code> is used with left/right margins (patch by 3221 Thomas Wolff).</li> 3222 3223 <li>fix off-by-one in VT52 graphics character mapping (patch by 3224 Thomas Wolff).</li> 3225 3226 <li>use <code>_X_UNUSED</code>, etc., when available as a 3227 fallback for <code>GCC_UNUSED</code>, etc., to reduce compiler 3228 warnings when building with <code><em>imake</em></code>.</li> 3229 3230 <li>update config.sub</li> 3231 </ul> 3232 3233 <h1><a name="xterm_347" id="xterm_347">Patch #347 - 3234 2019/06/30</a></h1> 3235 3236 <ul> 3237 <li>fix a few minor bugs found with Coverity.</li> 3238 3239 <li>improve double-buffering for scrollbars combined with 3240 scrolled text; add <code>bufferedFPS</code> resource to control 3241 the maximum rate of screen updates (report by Mike 3242 Thornburg).</li> 3243 3244 <li>improve fixes for <code>DECCRA</code> handling of 3245 double-width characters (patch by Martin Hostettler).</li> 3246 3247 <li>improve discussion of ECMA-48's typographical error for 3248 <code>SD</code> in <code>ctlseqs.ms</code> (prompted by report 3249 by Martin Hostettler).</li> 3250 3251 <li>correct off-by-one in parameter limit-check for 3252 <code>DECCRA</code> (report by Martin Hostettler).</li> 3253 3254 <li>modify <code>saveCellData</code> to handle case where 3255 double-width character is partially copied; that should be 3256 blanked (report/testcase by Thomas Wolff).</li> 3257 3258 <li>add resource <code>buffered</code> to allow 3259 enabling/disabling double-buffered mode.</li> 3260 3261 <li>two fixes for the double-buffer configuration, prompted by 3262 MacPorts' switch to double-buffering (patch by Mike Thornburg, 3263 MacPorts #58313): 3264 <ul> 3265 <li>ensure that the needSwap flag is set after drawing 3266 TrueType text</li> 3267 3268 <li>corrected the drawable-parameter used for the 3269 bar-cursor</li> 3270 </ul> 3271 </li> 3272 3273 <li>modify <code>ScrnRefresh</code> to ignore a case where the 3274 left/right halves of a double-width character have been set to 3275 different video attributes. The attribute to use is in the 3276 left-half (report/testcase by Thomas Wolff).</li> 3277 3278 <li>correct a limit-check for <code>DECCRA</code> in case the 3279 target lies off-screen (report/testcase by Thomas Wolff).</li> 3280 3281 <li>documentation errata (report by Thomas Wolff).</li> 3282 3283 <li>reset flags including wraparound and reverse-wrap when 3284 switching to VT52 mode, while noting that DEC's standard 3285 documentation leaves that behavior <em>undefined</em> (report 3286 by Thomas Wolff).</li> 3287 3288 <li>ensure that italic font is turned off on hard/soft resets 3289 (report by Martin Hostettler).</li> 3290 3291 <li>improve responsiveness to X events while processing HTML or 3292 SVG dumps (report by Martin Hostettler).</li> 3293 3294 <li>replace logic in <code>wcwidth.c</code> for detecting 3295 double-width characters with binary-search table generated 3296 using updated <code>uniset</code> (report by Robert Ross).</li> 3297 3298 <li>add test-driver for <code>wcwidth.c</code> to simplify 3299 comparison with system's <code>wcwidth</code>.</li> 3300 3301 <li>ensure that window-manager name comparisons work when 3302 active-icon is enabled, since <code><em>CSI</em>13t</code> uses 3303 the window-manager name (report by Glenn Golden, Arch 3304 #62818).</li> 3305 3306 <li>trim a stray “experimental” in one of the 3307 comments about the tcap-query feature, which has been a 3308 supported feature since 2008 (see <a href="#xterm_238">patch 3309 #238</a>).</li> 3310 </ul> 3311 3312 <h1><a name="xterm_346" id="xterm_346">Patch #346 - 3313 2019/05/27</a></h1> 3314 3315 <ul> 3316 <li>update description of the “default” setting for 3317 the <code>renderFont</code> resource to match the behavior in 3318 <a href="#xterm_261">patch #261</a> (Debian #862042).</li> 3319 3320 <li>account for <code>internalBorder</code> in 3321 <code>useBorderClipping</code> (report by Robert Ross).</li> 3322 3323 <li>update table of unknown-width characters in wcwidth.c based 3324 on Unicode 12.1.0 (prompted by discussion with Robert 3325 Ross).</li> 3326 3327 <li>improve description of DECSCL versus S7C1T and S8C1T in 3328 <code>ctlseqs.ms</code>.</li> 3329 3330 <li>improve consistency between <code><em>CSI</em>3t</code> and 3331 <code><em>CSI</em>13t</code>, accounting for differences 3332 between some window managers' handling of EMWH extents (report 3333 by Bram Moolenaar).</li> 3334 3335 <li>fix a sign-extension when reporting offscreen window 3336 position (report by Bram Moolenaar).</li> 3337 </ul> 3338 3339 <h1><a name="xterm_345" id="xterm_345">Patch #345 - 3340 2019/05/14</a></h1> 3341 3342 <ul> 3343 <li>updated FreeBSD test-package from recent /usr/ports 3344 scripts.</li> 3345 3346 <li>workaround in <code>run-tic.sh</code> for HPUX, whose 3347 <code>mktemp</code> prints the name of a temporary directory 3348 without creating it.</li> 3349 3350 <li>add left/right margin capabilities to terminfo, since the 3351 default terminal emulation is VT420 (suggested by Thomas 3352 Wolff).</li> 3353 3354 <li>modify treatment of <code>reverseVideo</code> for dynamic 3355 colors to make text foreground/background consistent with the 3356 cursor color (prompted by discussion with Ben Wong, lsix 3357 #20).</li> 3358 3359 <li>modify button-handling to make SGR button-release distinct 3360 from button-press for button-codes starting with 8 (patch by 3361 Mikulas Patocka).</li> 3362 3363 <li>add aliases for the sgr push/pop controls to work around 3364 language limitations of C# (request by Dan Thompson).</li> 3365 3366 <li>correct a typo in <code>setDirectFG</code>, which could 3367 cause setting of indexed-color after a direct-color to be 3368 ignored.</li> 3369 3370 <li>add resource <code>useBorderClipping</code> as an 3371 alternative to <code>useClipping</code> (request by Robert 3372 Ross).</li> 3373 3374 <li>improve logic for displaying xterm's built-in line-drawing 3375 characters vs missing glyphs, e.g., for U+2409 to U+240D (patch 3376 by Robert Ross).</li> 3377 3378 <li>add <code>vttests/sgrPushPop2.pl</code> to illustrate how 3379 selective pushes work, as well as to demonstrate push/pop of 3380 the various color types supported by xterm.</li> 3381 3382 <li>fix a special case in <code>XTPOPSGR</code> where 3383 direct-colors were not checked as a dependency of 3384 indexed-colors, contrary to documentation.</li> 3385 3386 <li>reduce buffer-flushes for <code>OSC 4</code> and 3387 <code>OSC 5</code> color-queries, as well as in the 3388 queries for dynamic colors.<br> 3389 <strong>Note:</strong> this change makes the reply for 3390 <code>OSC 5</code> use the “5” in the 3391 response; formerly it was mapped to ”4” after 3392 adding the maximum number of colors.</li> 3393 3394 <li>modify <code>vttests/query-color.pl</code> to demonstrate 3395 multiple queries in one request.</li> 3396 3397 <li>update tables of combining and unknown-width characters in 3398 wcwidth.c based on Unicode 12.0.0.</li> 3399 3400 <li>modify response for <code>OSC 5</code> to be 3401 consistent with documentation.</li> 3402 3403 <li>add <code>vttests/query-dynamic.pl</code></li> 3404 3405 <li>modify <code>vttests/query-color.pl</code> to accept bold, 3406 underline, etc., keywords to decide whether to use 3407 <code>OSC 5</code> rather than 3408 <code>OSC 4</code>.</li> 3409 3410 <li>modify cursor coloring to avoid a case where the cursor 3411 matched the foreground color while the text was displayed in 3412 reverse-video (report by Nuno Silva).</li> 3413 3414 <li>fix an inconsistency in X10 mouse responses from <a href= 3415 "#xterm_342">patch #342</a> changes; the legacy protocol 3416 supports only buttons 1-3.</li> 3417 3418 <li>reduce the number of buffer-flushes for tcap-query 3419 batches.</li> 3420 3421 <li>modify <code>tcapquery.pl</code> to demonstrate batch 3422 queries with <code>-q</code> option.</li> 3423 3424 <li>increase response-buffer size, and make it configurable as 3425 <code>limitResponse</code> (prompted by discussion with Stephen 3426 P Wall).</li> 3427 3428 <li>modified configure script: 3429 <ul> 3430 <li>check/workaround for non-POSIX manipulation of 3431 predefined symbols</li> 3432 3433 <li>check for updated X Toolkit, which uses 3434 <code>const</code>.</li> 3435 </ul> 3436 </li> 3437 3438 <li>update config.guess, config.sub</li> 3439 3440 <li>provide for secondary-selection, overlooked in <a href= 3441 "#xterm_338">patch #338</a> (report by Emile LeBlanc).</li> 3442 3443 <li>documentation errata (patch by Larry Hynes).</li> 3444 3445 <li>improve pointer-checks in <code>Tekproc.c</code></li> 3446 3447 <li>revise solution for Debian #919475, to allow for 3448 struct-notify events occurring as a side-effect of toggling 3449 to/from full-screen mode.</li> 3450 3451 <li>window's border-size was incorrectly added to position when 3452 maximizing window (report by Gary Langshaw).</li> 3453 </ul> 3454 3455 <h1><a name="xterm_344" id="xterm_344">Patch #344 - 3456 2019/02/12</a></h1> 3457 3458 <ul> 3459 <li>add ASCII escape to default for 3460 <code>disallowedPasteControls</code> (prompted by discussion 3461 with Martin Hostettler).</li> 3462 3463 <li>fix typo in <code>ctlseqs.ms</code> (Robert Ross).</li> 3464 3465 <li>implement DEC Cyrillic NRCS (based on screenshots of vttest 3466 provided by Markus Schmidt).</li> 3467 3468 <li>correct control returning sixel geometry maximum versus 3469 actual size (patch by Ben Wong).</li> 3470 3471 <li>improve manual page for <code>resize</code> to clarify that 3472 <code>resize</code> does not execute the shell commands which 3473 it generates for setting environment variables.</li> 3474 3475 <li>improve memory-management for parser, to handle response 3476 strings that might occur with <code>ENQ</code> or when 3477 <code>SRM</code> mode is active (patch by Martin 3478 Hostettler).</li> 3479 3480 <li>change <code>Comment</code> text in uxterm's desktop file 3481 to work around a limitation of GNOME's GIO application 3482 (<a href="https://gitlab.gnome.org/GNOME/gnome-shell/issues/940#note_427334">issue 3483 #940</a>). The <a href= 3484 "https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-search"> 3485 documentation</a> reads: 3486 <blockquote> 3487 <p>Searches desktop files for ones that match 3488 <em><code>search_string</code></em>.</p> 3489 3490 <p>The return value is an array of <em>strv</em>s. Each 3491 <em>strv</em> contains a list of applications that matched 3492 search_string with an equal score. The outer list is sorted 3493 by score so that the first <em>strv</em> contains the 3494 best-matching applications, and so on. The algorithm for 3495 determining matches is undefined and may change at any 3496 time.</p> 3497 </blockquote> 3498 </li> 3499 3500 <li>a check of <code>zIconBeep</code> resource was removed in 3501 double-buffer fix in <a href="#xterm_334">patch #334</a>. That 3502 is used to decide whether to handle struct-notify events. When 3503 xterm does handle the events, it may negotiate a new 3504 window-size with the window manager. In that case, the 3505 <code>limitResize</code> resource setting limited the new 3506 window-size to the screen-size. Amended that by eliminating the 3507 limit for this special case when double-buffer is configured, 3508 and restoring the check for <code>zIconBeep</code> when 3509 double-buffer is not configured (Debian #919475).</li> 3510 3511 <li>disallow recursion which could happen if a user configures 3512 the <code>answerbackString</code> resource with the 3513 <code>ENQ</code> code and experiments with that code when 3514 <code>SRM</code> is enabled (report by by Martin 3515 Hostettler).</li> 3516 3517 <li>add remaining credits in <code>COPYING</code> file.</li> 3518 3519 <li>modify <code>run-tic.sh</code> to check if it is using an 3520 older version of ncurses which does not support large terminal 3521 descriptions, and if so, remove a non-essential feature to keep 3522 within the 4096-byte legacy limit.</li> 3523 </ul> 3524 3525 <h1><a name="xterm_343" id="xterm_343">Patch #343 - 3526 2019/01/13</a></h1> 3527 3528 <ul> 3529 <li>modify <code>run-tic.sh</code> to prefer ncurses6 over 3530 ncurses5, when available.</li> 3531 3532 <li>add <code>COPYING</code> file, and dummy "check" makefile 3533 rule for testing Arch packages.</li> 3534 3535 <li>add/update package scripts for FreeBSD and NetBSD, for 3536 testing.</li> 3537 3538 <li>update tables of combining and ambiguous-width characters 3539 in wcwidth.c based on Unicode 11.0.0.</li> 3540 3541 <li>modify <code>xterm-new</code> sample terminfo entry to 3542 correspond to ncurses 6.1, using the SGR 1006 mouse 3543 protocol.</li> 3544 3545 <li>improve manual page discussion of selection ownership 3546 versus highlighting (prompted by discussion with Martin 3547 Hostettler).</li> 3548 3549 <li>restore/repair <code>keepClipboard</code> feature which was 3550 broken by changes in <a href="#xterm_338">patch #338</a> 3551 (report by Martin Hostettler).</li> 3552 3553 <li>improve documentation for <code>deleteIsDEL</code> 3554 resource.</li> 3555 3556 <li>modify DECRQM response for private mode 1037 to account for 3557 cases where the resource <code>deleteIsDEL</code> is initially 3558 neither true nor false, but dependent upon the keyboard type 3559 (report/analysis by Martin Hostettler).</li> 3560 3561 <li>clear pointers for pattern/fontset after destroying their 3562 data when switching facename with an escape sequence (report by 3563 Robert Ross).</li> 3564 3565 <li>modify logic for TrueType fallback fonts to match the 3566 sort-order used by <code>fc-match</code> (report by Robert 3567 Ross).</li> 3568 3569 <li>add resource setting <code>limitFontsets</code> which can 3570 be used to limit or disable the new TrueType fontset feature 3571 (request by Robert Ross).</li> 3572 </ul> 3573 3574 <h1><a name="xterm_342" id="xterm_342">Patch #342 - 3575 2019/01/03</a></h1> 3576 3577 <ul> 3578 <li>limit mouse-button events to 11 buttons in the original 3579 protocol, and 15 in the extended mouse-protocol (patch by 3580 Martin Hostettler).</li> 3581 3582 <li>correct calculation for buttons past 11 in 3583 <code>mouse-codes</code> sample script (patch by Martin 3584 Hostettler).</li> 3585 3586 <li>disable a supplementary check added in <a href= 3587 "#xterm_341">patch #341</a> which interferes with using 3588 fontconfig to select different-sized bitmap fonts (Arch 3589 #61237).</li> 3590 </ul> 3591 3592 <h1><a name="xterm_341" id="xterm_341">Patch #341 - 3593 2018/12/24</a></h1> 3594 3595 <ul> 3596 <li>add options to <code>mouse-codes</code> script to 3597 demonstrate that the encoding used for mouse events limits 3598 button numbers to 11.</li> 3599 3600 <li>allow mouse button numbers up to 11 using an offset of 128 3601 for button numbers 8-11 rather than the offset of 64 used for 3602 wheel-mouse, etc., buttons 4-7 in <a href="#xterm_338">patch 3603 #338</a> (adapted from patch by Martin Hostettler).</li> 3604 3605 <li>correct off-by-one right-margin checks for double-width 3606 character adjustments in DECERA/DECFRA (patch by Martin 3607 Hostettler).</li> 3608 3609 <li>allocated size of selection buffer was not reset when 3610 freeing the buffer in <a href="#xterm_338">patch #338</a> 3611 (report/analysis by Stefan Assmann).</li> 3612 3613 <li>modify the initial pattern passed to fontconfig to disallow 3614 color bitmap fonts.</li> 3615 3616 <li>improve error recovery for a case where fontconfig ignores 3617 the requested pattern due to override in the user's font 3618 configuration (report/testcase by Stefan Assmann).</li> 3619 </ul> 3620 3621 <h1><a name="xterm_340" id="xterm_340">Patch #340 - 3622 2018/12/16</a></h1> 3623 3624 <ul> 3625 <li>suppress a spurious warning about fontsets when 3626 initializing menus for the toolbar configuration.</li> 3627 3628 <li>fix some strict compiler warnings.</li> 3629 3630 <li>improve checks for TrueType font, to help with the case of 3631 color bitmap fonts, which fontconfig misrepresents (Arch Linux 3632 #58706).</li> 3633 </ul> 3634 3635 <h1><a name="xterm_339" id="xterm_339">Patch #339 - 3636 2018/12/12</a></h1> 3637 3638 <ul> 3639 <li>modify <code>CF_GNU_SOURCE</code> macro to treat 3640 <em>newlib</em> as similar to <em>glibc</em>, fixing a problem 3641 with the configure checks for pseudoterminals in Cygwin 3642 overlooked in <a href="#xterm_334">patch #334</a> updates for 3643 configure-macros.</li> 3644 </ul> 3645 3646 <h1><a name="xterm_338" id="xterm_338">Patch #338 - 3647 2018/12/09</a></h1> 3648 3649 <ul> 3650 <li>ignore <code>$TERMINFO</code> in the configure script if it 3651 is set to a non-directory value.</li> 3652 3653 <li>updated configure macros: 3654 <ul> 3655 <li><code>CF_WITH_PCRE2</code>, modified to work with 3656 Debian's (mis-numbered) pcre3 package.</li> 3657 3658 <li><code>CF_CC_ENV_FLAGS</code> , report preprocessor 3659 options in <code>CFLAGS</code></li> 3660 3661 <li><code>CF_LD_RPATH_OPT</code> , suppress check if 3662 <code>--disable-rpath</code> option was given.</li> 3663 3664 <li><code>CF_XOPEN_SOURCE</code>, add case for 3665 midnightbsd</li> 3666 </ul> 3667 </li> 3668 3669 <li>update config.guess, config.sub</li> 3670 3671 <li>add a check to ensure that the filename parameter passed to 3672 <code>XpmReadFileToPixmap</code> is actually a file, since that 3673 function does not check (report by Ben Nott).</li> 3674 3675 <li>amend solution for Debian #758633 to ensure that replies 3676 for bracketed paste are not sent while processing a selection 3677 for <code>exec-formatted</code> (Debian #913237).</li> 3678 3679 <li>improve adjustments/clearing for double-width characters in 3680 <code>DECERA</code>, <code>DECFRA</code>, 3681 <code>DECSERA</code>.</li> 3682 3683 <li>improve adjustments/clearing for double-width characters 3684 when doing vertical scrolling within left/right margins (patch 3685 by Martin Hostettler).</li> 3686 3687 <li>modify wcwidth to encode a few spacing combining marks as 3688 regular combining characters.</li> 3689 3690 <li>change compiled-in default for <code>saveLines</code> to 3691 match the resource-file changed in <a href="#xterm_192">patch 3692 #192</a> (Debian #913815).</li> 3693 3694 <li>change default <code>faceSize</code> to 8.0, to simplify 3695 switching back/forth between bitmap fonts and TrueType. This 3696 was originally (mis)set to 14.0 in <a href="#xterm_148">patch 3697 #148</a>.</li> 3698 3699 <li>add fallback support in Xft configuration for missing 3700 glyphs (prompted by discussion with Mike Burns).</li> 3701 3702 <li>fix a problem with using direct-colors for the background 3703 color when clearing/scrolling (report by Nicholas 3704 Marriott).</li> 3705 3706 <li>add a "sources" rule for the makefile's generated 3707 source.</li> 3708 3709 <li>add a short explanation in <code>ctlseqs.ms</code> 3710 discussing the differences in error-recovery for malformed 3711 sequences versus unimplemented features, and amend one case for 3712 consistency (prompted by discussion with Martin 3713 Hostettler).</li> 3714 3715 <li>adjusted ifdef's so that the paste64 configure option does 3716 not automatically enable the readline-mouse configure 3717 option.</li> 3718 3719 <li>revert the change which prevented concurrent ownership of 3720 different selection targets, and instead modify selection 3721 storage so that different concurrent requests for different 3722 selection targets will be stored/retrieved independently 3723 (Debian #901249).</li> 3724 3725 <li>remove a check which prevented returning button-codes past 3726 the documented 4/5 for wheel mouse, and add a script 3727 <code>mouse-codes</code> which makes a report showing the 3728 various mouse codes for different button/modifier combinations 3729 (discussion with Přemysl Janouch).</li> 3730 3731 <li>improve display and checksum for DEC Special Graphics by 3732 mapping 0x5f to 0.</li> 3733 3734 <li>add a null-pointer check for table-ending in the 3735 extended-boolean resource-handling (report by Felix von 3736 Leitner).</li> 3737 3738 <li>remove stray <code>]</code>'s from INSTALL-file (Larry 3739 Hynes).</li> 3740 </ul> 3741 3742 <h1><a name="xterm_337" id="xterm_337">Patch #337 - 3743 2018/09/21</a></h1> 3744 3745 <ul> 3746 <li>regenerated configure script (report by Sven Joachim).</li> 3747 3748 <li>revise/improve fix for scrolling in margins 3749 (report/analysis by Martin Hostettler):</li> 3750 3751 <li>amend change to default-translations "select" subset to 3752 ensure that specific key-press actions are listed before 3753 generic key-press actions (reports by H Merijn Brand, Sven 3754 Joachim).</li> 3755 </ul> 3756 3757 <h1><a name="xterm_336" id="xterm_336">Patch #336 - 3758 2018/09/19</a></h1> 3759 3760 <ul> 3761 <li>ensure that only one of PRIMARY and CLIPBOARD is owned by 3762 xterm at a given time (Debian #901249).</li> 3763 3764 <li>documentation fixes (report by Lars Krueger): 3765 <ul> 3766 <li>document <code>SL</code> and <code>SR</code>.</li> 3767 3768 <li>document <code>DECRPTUI</code>, change number of digits 3769 to match VT420.</li> 3770 </ul> 3771 </li> 3772 3773 <li>revise <code>omitTranslation</code> resource, e.g., 3774 splitting “default” into several more useful 3775 categories.</li> 3776 3777 <li>modify mask-logic to permit <em>control-</em> and 3778 <em>meta-</em> modifiers to be used in mouse protocol.</li> 3779 3780 <li>several fixes for parsing/state (report/testcases by Martin 3781 Hostettler): 3782 <ul> 3783 <li>remove an old/unimplemented entry for xterm-title from 3784 state table.</li> 3785 3786 <li>save/restore wrap-flag when scrolling, to fix an 3787 inconsistency between jump-scrolling and 3788 normal-scrolling.</li> 3789 3790 <li>improve a special case of wrapping where the cursor 3791 starts beyond the right-margin, and wraps at the terminal's 3792 last-column before the settable-margins can take 3793 effect.</li> 3794 3795 <li>if origin mode is set, adjust a restored cursor column 3796 relative to the left margin.</li> 3797 3798 <li>when scrolling a line within left/right margins, 3799 correct order of the fixups needed when a double-width 3800 character crosses the margin boundary.</li> 3801 </ul> 3802 </li> 3803 3804 <li>review/fix a few cases where the parsing state was not 3805 reset after completing a control sequence (prompted by report 3806 by Martin Hostettler).</li> 3807 3808 <li>disallow <code>XTCHECKSUM</code> if the corresponding 3809 window-ops "SetChecksum" is unset.</li> 3810 3811 <li>add <code>print-vt-chars.pl</code> script to illustrate the 3812 NRCS and codepages supported by xterm.</li> 3813 3814 <li>add <code>other-sgr.sh</code> script to demonstrate the 3815 non-VT100 video attributes implemented in <a href= 3816 "#xterm_305">patch #305</a>, and added a summary of their 3817 introduction in ECMA-48 to the control sequences document.</li> 3818 3819 <li>add <code>tabs</code> and <code>-tabs</code> keywords to 3820 <code>ttyModes</code> resource to simplify workaround for 3821 terminal drivers which are not aware of UTF-8 (FreeBSD 3822 #229682).</li> 3823 3824 <li>add VT5xx NRCS 7-bit Turkish and DEC Turkish.</li> 3825 3826 <li>add VT5xx NRCS 7-bit Hebrew and DEC Hebrew.</li> 3827 3828 <li>add VT5xx NRCS 7-bit Greek and DEC Greek.</li> 3829 3830 <li>correct a few post-VT220 codepages to make them display 3831 without setting the NRCS state.</li> 3832 3833 <li>extend <code>vt100Graphics</code> resource to include other 3834 character-sets such as the VT500 codepages in UTF-8 mode.</li> 3835 3836 <li>add some VT5xx codepages to help with the discussion of 3837 96-character sets: <em>ISO Greek Supplemental</em>, <em>ISO 3838 Hebrew Supplemental</em>, <em>ISO Latin–5 3839 Supplemental</em>, and <em>ISO Latin–Cyrillic</em>.</li> 3840 3841 <li>improve description of the VT300-controls for designating 3842 character sets, and fix a typo which indicated that some were 3843 used for 94-character sets (prompted by discussion with Lars 3844 Krueger).</li> 3845 3846 <li>add private control <code>XTCHECKSUM</code> for modifying 3847 <code>checksumExtension</code>.</li> 3848 3849 <li>factor out xterm's <code>DECRQCRA</code> checksum 3850 extensions as a resource setting 3851 <code>checksumExtension</code>.</li> 3852 3853 <li>revise calculation of checksum for <code>DECRQCRA</code> to 3854 match DEC's terminals (using screenshots of vttest provided by 3855 Markus Schmidt).</li> 3856 3857 <li>restore a fix for memory-checksum setup of 3858 <code>DECCKSR</code> from <a href="#xterm_315">patch #315</a> 3859 incorrectly reverted in <a href="#xterm_334">patch #334</a> as 3860 part of fix for <code>DECRQCRA</code>.</li> 3861 </ul> 3862 3863 <h1><a name="xterm_335" id="xterm_335">Patch #335 - 3864 2018/08/14</a></h1> 3865 3866 <ul> 3867 <li>add <code>colorInnerBorder</code> resource to make a change 3868 from <a href="#xterm_334">patch #334</a> configurable (reports 3869 by H Merijn Brand, Gabriele Balducci).</li> 3870 </ul> 3871 3872 <h1><a name="xterm_334" id="xterm_334">Patch #334 - 3873 2018/08/12</a></h1> 3874 3875 <ul> 3876 <li>modify <code>Imakefile</code> to reflect the fact that 3877 NetBSD no longer has a working termcap emulation.</li> 3878 3879 <li>add resource-setting <code>validShells</code> which can be 3880 used to augment the system's <code>/etc/shell</code> (prompted 3881 by discussion with Paul Lampert).</li> 3882 3883 <li>stifle some useless warnings from lintian in 3884 test-packages.</li> 3885 3886 <li>add the ncurses extension “RGB” to the 3887 responses for the termcap-query feature.</li> 3888 3889 <li>improved getopts-handling in sample scripts.</li> 3890 3891 <li>fix some warnings from gcc8 and clang --analyze.</li> 3892 3893 <li>update note about incorrect documentation for 3894 <code>DECRQSS</code> to include VT525 (report by Markus 3895 Schmidt).</li> 3896 3897 <li>correct check for default-values in rectangular parsing; a 3898 zero counts as a missing or default parameter (report/testcase 3899 by Markus Schmidt).</li> 3900 3901 <li>correct some ranges in the <code>ambiguous[]</code> table 3902 in wcwidth (adapted from patch by KUGA Tsutomu).</li> 3903 3904 <li>fix a special case with faint video attribute incorrectly 3905 combined with default color.</li> 3906 3907 <li>add private control <code>XTREPORTSGR</code> for reporting 3908 video-attributes and color on a rectangle, and script 3909 <code>report-sgr.pl</code> to demonstrate it.</li> 3910 3911 <li>modify some of the markup in <code>ctlseqs.ms</code> to 3912 work around groff's reassignment of ASCII punctuation 3913 characters as documented in <em>groff_char(7)</em>.</li> 3914 3915 <li>treat ECMA-48 SGR 6 the same as SGR 5.</li> 3916 3917 <li>add private controls <code>XTPUSHSGR</code> and 3918 <code>XTPOPSGR</code> for saving/restoring the current 3919 video-attributes on a stack (adapted from patch by Dan 3920 Thompson).</li> 3921 3922 <li>modify <code>DECRPM</code> response for logging enable to 3923 indicate its state even when enabling/disabling it is not 3924 allowed.</li> 3925 3926 <li>implement <code>DECSNLS</code></li> 3927 3928 <li>implement <code>DECRSPS</code></li> 3929 3930 <li>improve fill-color for double-buffer configuration, which 3931 was sharing a graphic context with the cursor.</li> 3932 3933 <li>fix a couple of cases where double-sized VT100 characters 3934 were not clipped, seen in Joe Smith's <a href= 3935 "http://www.inwap.com/pdp10/#Tymnet">VT100 torture 3936 test</a>.</li> 3937 3938 <li>color the inner border using the same 3939 <code>borderColor</code> as the outer border, rather than 3940 filling with the VT100's default background.</li> 3941 3942 <li>change encoding of “THANKS” to UTF-8.</li> 3943 3944 <li>modify handling of <code>DECELR</code> to recognize 3945 <code>MotionNotify</code> events again, amending a check for 3946 <code>allowMouseOps</code> which limited that to button-events 3947 in <a href="#xterm_328">patch #328</a> (Olaf Rogalsky).</li> 3948 3949 <li>fix some screen-painting problems with left/right margins 3950 when using insert-line or delete-line (report/testcase by 3951 Martin Hostettler). also fix similar case with 3952 index/reverse-index.</li> 3953 3954 <li>several minor performance improvements using macros, e.g., 3955 inline checks for character width.</li> 3956 3957 <li>add <code>DECSCPP</code> and <code>DECSLPP</code> to 3958 <code>DECRQSS</code>.</li> 3959 3960 <li>implement <code>DECSCPP</code>.</li> 3961 3962 <li>implement <code>DECCIR</code> and <code>DECTABSR</code> 3963 presentation reports.</li> 3964 3965 <li>modify checksum computation for <code>DECRQCRA</code> to 3966 treat uninitialized cells as blanks rather than nulls.</li> 3967 3968 <li>drop custom-entity from HTML-dump, use UTF-8 for &nbsp; 3969 (Debian #902381).</li> 3970 3971 <li>modify display of non-BMP characters when using bitmap 3972 fonts to show a null/empty box rather than the replacement 3973 character which was used in cleanup changes for <a href= 3974 "#xterm_233">patch #233</a> (report by Christian 3975 Weisgerber).</li> 3976 3977 <li>when setting up clipping rectangle for Xft, allow for the 3978 case where xterm is only displaying a combining character, 3979 where the base was already written (report by Joshua 3980 Crowgey).</li> 3981 3982 <li>allow reset Xft's state if switching font-sizes when 3983 double-buffering is used.</li> 3984 3985 <li>fix repainting, e.g., on resize, when double-buffering is 3986 used with Xft (patch by Daniel Colascione).</li> 3987 3988 <li>correct some interchanged pairs of symbols in 3989 <code>unicode/keysym.map</code> (Brad Town).</li> 3990 3991 <li>improve configure macros CF_GCC_WARNINGS, CF_GNU_SOURCE, 3992 CF_POSIX_C_SOURCE, CF_TRY_XOPEN_SOURCE, CF_XOPEN_SOURCE, 3993 CF_X_ATHENA_CPPFLAGS.</li> 3994 3995 <li>modify <code>logFile</code> resource to interpret 3996 “<code>-</code>” as the standard output (adapted 3997 patch by Colum Paget).</li> 3998 3999 <li>improve documentation of Tek4014 menu options; fix a case 4000 where the Tek4014 window was not displayed before switching 4001 modes.</li> 4002 4003 <li>re-correct parameter for <em>pid</em> used for DECCKSR, 4004 DECRQCSR (see <a href="#xterm_315">xterm #315</a>).</li> 4005 4006 <li>hard/soft reset now resets the cursor-blinking state that 4007 may have been set via escape sequences; the cursor-blinking 4008 menu-entry feature is unmodified (report by Matthieu 4009 Herrb).</li> 4010 4011 <li>update config.guess, config.sub</li> 4012 </ul> 4013 4014 <h1><a name="xterm_333" id="xterm_333">Patch #333 - 4015 2018/05/03</a></h1> 4016 4017 <ul> 4018 <li>ensure that i18n is enabled if input-method is 4019 enabled.</li> 4020 4021 <li>modify logic for pre-edit to update spot-location while the 4022 cursor is invisible (Kakoune #1940).</li> 4023 4024 <li>change default icon to newer one, "mini.xterm".</li> 4025 4026 <li>install a complete set of icons, to simplify post-install 4027 customization.</li> 4028 4029 <li>add resource <code>disallowedPasteControls</code> to extend 4030 filtering of control characters from pastes.</li> 4031 4032 <li>add <code>print-on-error</code> action-hook, and document 4033 action-hooks for dump-html, dump-svg.</li> 4034 4035 <li>provide action-hook for <code>print-immediate</code>, which 4036 was available only as a menu-item (report by Rastislav 4037 Barlik).</li> 4038 4039 <li>continue to improve notes in <code>ctlseqs.ms</code> which 4040 mention where various controls originated.</li> 4041 4042 <li>add case to accept ECMA-48's bogus <code>SD</code>, but 4043 document the issue in <code>ctlseqs.ms</code>.</li> 4044 4045 <li>add control sequence for loading XPM-icon file, using the 4046 analogous control sequence from shelltool/dtterm.</li> 4047 4048 <li>add <code>-report-icons</code> option, to report on 4049 XPM-icon and title-bar updates.</li> 4050 4051 <li>correct a discrepancy between locator-reports for VT220 vs 4052 VT330.</li> 4053 4054 <li>add window-ops control sequences to complement existing 4055 ones for reporting window-position and text-area size with 4056 reports for text-area position and window-size.</li> 4057 4058 <li>display vt52 graphics mode characters.</li> 4059 4060 <li>correct case-statement for window-ops 10, overlooked since 4061 some window managers equate vertical-maximize and 4062 horizontal-maximize window hints with full-screen 4063 maximize.</li> 4064 </ul> 4065 4066 <h1><a name="xterm_332" id="xterm_332">Patch #332 - 4067 2018/04/15</a></h1> 4068 4069 <ul> 4070 <li>add a <code>GetChecksum</code> item to 4071 <code>disallowedWindowOps</code></li> 4072 4073 <li>improve notes in <code>ctlseqs.ms</code> which mention 4074 where various controls originated.</li> 4075 4076 <li>add control sequences for querying the X display size and 4077 the character size, both in pixels to help eliminate some of 4078 the constants in <code>esctest</code>.</li> 4079 4080 <li>fixes prompted by review of George Nachman's 4081 <code>esctest</code> script: 4082 <ul> 4083 <li>add a null-pointer check and a limit-check in 4084 <code>xtermCheckRect</code>.</li> 4085 4086 <li>correct limit-check for right-margin when processing 4087 autowrapping if xterm is not built for 4088 wide-characters.</li> 4089 4090 <li>repair logic in <code>RIS</code> to reset 132-column 4091 mode when an escape sequence is used to enable 4092 80/132-column switching.</li> 4093 4094 <li>correct array-limit for EWMH working state.</li> 4095 4096 <li>further improve limit-checks versus assert's (see 4097 <a href="#xterm_315">patch #315</a>).</li> 4098 4099 <li>correct order of check-margins and move-to-left margin 4100 for <code>DL</code> and <code>IL</code>.</li> 4101 4102 <li>modify reverse-wrap to pay attention to top/bottom 4103 margins as it has done for left/right margins since 4104 <a href="#xterm_279">patch #279</a>.</li> 4105 4106 <li>modify behavior of <code>DECFI</code> and 4107 <code>DECBI</code> to not index the screen at the 4108 left/right edge of the display unless those happen to be 4109 the left/right margins.</li> 4110 4111 <li>add case for VT320 DSR response for keyboard 4112 status.</li> 4113 </ul> 4114 </li> 4115 4116 <li>improve check for valid shell path using 4117 <code>getusershell</code> and <code>endusershell</code> if 4118 available, in case <code>/etc/shells</code> does not exist 4119 (suggested by Rainer Orth).</li> 4120 4121 <li>modified configure checks for groff and man2html, to use 4122 the latter by default, but allowing mandoc as a partial 4123 replacement for former.</li> 4124 4125 <li>revisited the inconsistent copyright notices mentioned in 4126 <a href="#xterm_165">patch #165</a>, and eliminate the issue as 4127 mentioned in this <a href= 4128 "https://invisible-island.net/personal/copyrights.html">copyright 4129 discussion</a>.</li> 4130 4131 <li>fix typo in this change-log (report by Sven Joachim)</li> 4132 4133 <li>update config.guess, config.sub</li> 4134 </ul> 4135 4136 <h1><a name="xterm_331" id="xterm_331">Patch #331 - 4137 2017/12/30</a></h1> 4138 4139 <ul> 4140 <li>add workaround for improper grayscale adjustments made in 4141 FreeType library, exposed by changes to rounding in 2.8.1, 4142 which shows up as a gap in line-drawing characters (Debian 4143 #880407).</li> 4144 4145 <li>improve a special case where a non-Unicode font's 4146 line-drawing characters were not used, when specifying it via 4147 the <code>utf8Fonts</code> resource, e.g., 4148 <blockquote> 4149 <pre> 4150 -fs 15 \ 4151 -xrm '*VT100.font:12x24' \ 4152 -xrm '*VT100.boldFont:12x24' \ 4153 -xrm '*VT100.utf8Fonts.font: 12x24' \ 4154 -xrm '*VT100.utf8Fonts.boldFont: 12x24' \ 4155</pre> 4156 </blockquote> 4157 </li> 4158 4159 <li>replace constant 10msec delay for next X event with new 4160 resource <code>nextEventDelay</code>, and reduce that to 1msec 4161 to accommodate faster machines than used when 4162 <code>-hold</code> was implemented in <a href= 4163 "#xterm_116">1999</a> (Debian #877628).</li> 4164 4165 <li>add <code>scroll-to</code> action, which simplifies binding 4166 a key to scroll to the beginning or end of the saved-lines 4167 (Debian #880120).</li> 4168 4169 <li>add building blocks for alternate screen and/or title-stack 4170 features in the <code>terminfo</code> file.</li> 4171 4172 <li>improve calculations for cell-data size.</li> 4173 4174 <li>change configure script to enable XHTML/SVG screen dumps by 4175 default.</li> 4176 4177 <li>change configure script to enable 256-colors by 4178 default.</li> 4179 4180 <li>update config.guess, config.sub</li> 4181 4182 <li>change configure script option for 4183 <code>--with-man2html</code> to use improved script by 4184 default.</li> 4185 4186 <li>add case for private mode 1044 in DECRQM, to report the 4187 keepClipboard resource setting and corresponding menu 4188 entry.</li> 4189 4190 <li>fix an inconsistency between private mode 12 (the AT&T 4191 610 cursor blink) and <code>DECSCUSR</code>: the former relied 4192 on having the <code>cursorBlink</code> resource set initially 4193 to enable the escape sequence, while the latter does not.</li> 4194 4195 <li>add private modes 13 and 14, as well as resource 4196 <code>cursorBlinkXOR</code> to allow better control over the 4197 cursor-blinking state (discussion with Bram Moolenaar).</li> 4198 4199 <li>modify the html and svg screen dumps to support direct 4200 color</li> 4201 4202 <li>modify media copy (screen-printing) to support the same SGR 4203 codes as <code>DECRQSS</code>, including 88/256 indexed color 4204 as well as direct color.</li> 4205 4206 <li>improve options-parsing for query-status.pl script.</li> 4207 4208 <li>modify parsing of <code>SGR</code> direct-color control 4209 making <em>color space identitier</em> optional. The 4210 corresponding <code>DECRQSS</code> reply always returns an 4211 empty (default) field for the identifier.</li> 4212 4213 <li>add wide-attributes to <code>DECRQSS</code> reply for 4214 <code>SGR</code>.</li> 4215 4216 <li>add private mode 1046 to help with scripting 4217 applications.</li> 4218 4219 <li>correct expression used for readline-flags in DECRQM; to 4220 test the current flag rather than information <em>stacked</em> 4221 within the same variable.</li> 4222 4223 <li>correct typo in <code>ctlseqs.ms</code> reference to 4224 ISO-8613-6 (patch by Mike Frysinger).</li> 4225 4226 <li>fix lintian warning for test-package.</li> 4227 4228 <li>fix typo in <code>DECRQSS</code> for <code>SGR</code> 48, 4229 which printed the foreground value for colors past 15. Also use 4230 colon delimiter for codes 38/48 in response (report by Paul 4231 LeoNerd Evans).</li> 4232 4233 <li>improve workaround for Debian #542434 by using the font's 4234 maximum width when no ISO-8859-1 glyphs are provided (Debian 4235 #879936).</li> 4236 4237 <li>work around a special case of <em>Xft</em>'s mismanagement 4238 of its cached data by adding a check before the 4239 <code>-report-fonts</code> option to ensure that it does not 4240 use an <code>XftPattern</code> which may have been freed during 4241 a call to <code>XftFontOpenPattern</code>.</li> 4242 4243 <li>improve manual page description of <code>regex</code> 4244 option for <code>on<em>X</em>Clicks</code> resources (report by 4245 Lukas Mai).</li> 4246 4247 <li>add <code>directColor</code> resource.</li> 4248 4249 <li>additional manpage macro cleanup (Branden Robinson, Debian 4250 #880551).</li> 4251 4252 <li>add optional support for direct-colors (adapted from patch 4253 by anonymous “Nibby Nebbulous”).</li> 4254 4255 <li>improve legacy/NRC character set mapping (patch by Thomas 4256 Wolff), e.g., 4257 <ul> 4258 <li>enable alternate NRC set designators for French and 4259 French Canadian, ‘9’ and ‘f’ 4260 respectively, as documented in ctlseqs. (‘9’ is 4261 documented for VT510, ‘f’ is a Kermit 4262 feature).</li> 4263 4264 <li>correct the Unicode value in the <em>DEC Technical</em> 4265 table to show capital delta.</li> 4266 4267 <li>referring to 4268 <blockquote> 4269 <p><a href= 4270 "http://vt100.net/docs/vt220-rm/table2-3b.html">http://vt100.net/docs/vt220-rm/table2-3b.html</a><br> 4271 4272 <a href= 4273 "http://vt100.net/docs/vt320-uu/appendixe.html">http://vt100.net/docs/vt320-uu/appendixe.html</a></p> 4274 </blockquote> 4275 4276 <p>add entries for the <em>DEC Supplemental Graphics</em> 4277 table to display 0x28/0xa8 as ¤ and 0x5d/0xdd as 4278 Ÿ.</p> 4279 </li> 4280 4281 <li>referring to 4282 <blockquote> 4283 <p><a href= 4284 "http://www.vt100.net/charsets/technical.html">http://www.vt100.net/charsets/technical.html</a></p> 4285 </blockquote> 4286 4287 <p>alter the Unicode values used for 0x2b through 0x2c to 4288 use <em>curly braces</em> to work with the 4289 “middle” parts displayed with 0x2f and 4290 0x30.</p> 4291 </li> 4292 4293 <li>modify the VT220 “Supplemental” table, 4294 giving a hint that it was probably meant to be 4295 “Supplemental Graphics” and is the same as 4296 VT320's table.</li> 4297 </ul> 4298 </li> 4299 4300 <li>quiet a few font-warnings when a derived fontname cannot be 4301 opened, overlooked in refactoring of font resources in <a href= 4302 "#xterm_328">patch #328</a> (initially reported on <a href= 4303 "https://cygwin.com/ml/cygwin/2017-06/msg00255.html">Cygwin 4304 mailing list</a>, with <a href= 4305 "https://cygwin.com/ml/cygwin/2017-07/msg00216.html">followup</a>).</li> 4306 4307 <li>correct error response for <code>DECRQSS</code> broken in 4308 cleanup of Coverity reports in <a href="#xterm_288">patch 4309 #288</a> (reports by Bram Moolenaar and IWAMOTO Kouichi).</li> 4310 4311 <li>improve <code>DECRPM</code> responses by returning <em>mode 4312 not recognized</em> for modes which may not be settable due to 4313 the selected <code>decTerminalID</code> resource (report by 4314 IWAMOTO Kouichi).</li> 4315 4316 <li>correct logic for <code>print-immediate</code> action, and 4317 enable corresponding menu entry (patch by Lauri 4318 Tirkkonen).</li> 4319 4320 <li>add configure option <code>--with-pcre2</code> (patch by 4321 David Michael).</li> 4322 4323 <li>fix a misspelled subsection title in ctlseqs.ms and add a 4324 note regarding blink which was rendered as bold in X11R6. 4325 Blinking text was implemented in <a href="#xterm_60">Patch 4326 #60</a>.</li> 4327 4328 <li>fix typos in <code>xterm.man</code> (patches by Sven 4329 Joachim, Larry Hynes).</li> 4330 4331 <li>fix typography in <code>xterm.man</code> (patch by Bjarni 4332 Ingi Gislason, Debian #869248).</li> 4333 4334 <li>fix typo in <code>INSTALL</code> (Larry Hynes).</li> 4335 4336 <li>add <code>xterm-direct</code> terminal description based on 4337 changes introduced in <a href="#xterm_277">patch #277</a>, and 4338 relying upon ncurses <code><strong>RGB</strong></code> 4339 extension.</li> 4340 4341 <li>modify <code>xterm-new</code> terminal description to use 4342 ECMA-48 <code>REP</code>, reflecting its use in xterm since 4343 <a href="#xterm_32">patch #32</a> (1996).</li> 4344 4345 <li>clarify comment in ctlseqs.ms regarding blink: it has been 4346 part of xterm since <a href="#xterm_60">patch #60</a> 4347 (1998).</li> 4348 4349 <li>update ftp URLs in documentation.</li> 4350 </ul> 4351 4352 <h1><a name="xterm_330" id="xterm_330">Patch #330 - 4353 2017/06/20</a></h1> 4354 4355 <ul> 4356 <li>updates for ReGIS (Ross Combs): 4357 <ul> 4358 <li>remove redundant text command error check which broke 4359 <code>T(B)</code> and <code>T(E)</code>.</li> 4360 4361 <li>retain the loading alphabet number across multiple 4362 “L” commands.</li> 4363 4364 <li>add <code>S(T)</code> delay handler.</li> 4365 4366 <li>fix some color handling error messages.</li> 4367 4368 <li>add stubbed-out macrograph handling.</li> 4369 4370 <li>use <code>fragment_remaining()</code> and 4371 <code>fragment_consumed()</code> instead of manually 4372 checking position / length in various places.</li> 4373 4374 <li>rename some local variables in string / extent / option 4375 parsing</li> 4376 4377 <li>wrap some long lines.</li> 4378 4379 <li>move macrograph command handling out of the 4380 top-level.</li> 4381 </ul> 4382 </li> 4383 4384 <li>add a summary of the italic fonts loaded to 4385 <code>-report-fonts</code> option.</li> 4386 4387 <li>modify the font-lookup for italics to allow for 4388 “<code>-i-</code>” if no match is found with slant 4389 “<code>-o-</code>” (prompted by patch by Ben 4390 Wong).</li> 4391 4392 <li>change default values for <code>mkSamplePass</code> and 4393 <code>mkSampleSize</code> to reflect generally-improved locale 4394 support in various operating systems (FreeBSD #219800).</li> 4395 4396 <li>modify <code>wcwidth.c</code> to return -1 for non-Unicode 4397 values, and adjust a couple of blocks to better match 4398 assumptions about ambiguous-width characters in other 4399 implementations. Also modify <code>wcwidth.c</code> to support 4400 configurable soft-hyphen, so there is no drawback to using this 4401 version rather than a system <code>wcwidth</code>.</li> 4402 4403 <li>amend change made in <a href="#xterm_328">patch #328</a> 4404 for cursor-visibility to handle case where an application is 4405 updating the reverse-video state (FreeBSD #219800).</li> 4406 4407 <li>update tables of combining and ambiguous-width characters 4408 in wcwidth.c based on Unicode 10.0.0.</li> 4409 4410 <li>build-fix for <code>--enable-sixel-graphics</code> without 4411 <code>--enable-regis-graphics</code> (reports by Sven Joachim, 4412 FreeBSD #219945).</li> 4413 </ul> 4414 4415 <h1><a name="xterm_329" id="xterm_329">Patch #329 - 4416 2017/06/12</a></h1> 4417 4418 <ul> 4419 <li>add control sequences for reading the Sixel and ReGIS 4420 graphics sizes (suggested by Ben Wong).</li> 4421 4422 <li>add a workaround for <code>wcwidth</code> returning -1 for 4423 characters which should have been printable (FreeBSD 4424 #219800).</li> 4425 4426 <li>fix a bug in font initialization from <a href= 4427 "#xterm_328">patch #328</a> (FreeBSD #219800).</li> 4428 4429 <li>fix a special case in <code>HideCursor</code> which 4430 assigned a bold font to the slot used for normal font in 4431 changes for italics in <a href="#xterm_307">patch #307</a> 4432 (Debian #858304).</li> 4433 4434 <li>updates for ReGIS (Ross Combs): 4435 <ul> 4436 <li>Strings specified with no command are used as 4437 "comments". Print these in the log when tracing.</li> 4438 4439 <li>Catch attempts to use "alternate display" mode (AKA 4440 "blink") from the GIGI, but do not implement it.</li> 4441 4442 <li>The <code>T(M)</code> command should only multiply the 4443 height by 10, not 20.</li> 4444 4445 <li>Make the <code>S(E)</code> command reset more state 4446 than just the screen contents.</li> 4447 4448 <li>Remove two rotation variables which were only being 4449 printed.</li> 4450 4451 <li>Numerous minor fixes and comment updates in the 4452 <code>R</code> command.</li> 4453 4454 <li>Unknown <code>R</code> command option names trigger an 4455 empty response.</li> 4456 4457 <li>Fix the output position after printing rotated text (it 4458 was missing the the sign before).</li> 4459 4460 <li>Fix the position change with pixelvectors and rotated 4461 text (the rotation transform was not being applied).</li> 4462 4463 <li>Update the <em>TODO</em> list and remove a verification 4464 <em>FIXME</em> (slanted text positioning is correct as 4465 is).</li> 4466 4467 <li>Emulate the approximately 1.4x enlargement for text 4468 which isn't rotated at right angles.</li> 4469 4470 <li>Only update the color planes specified in the plane 4471 mask (the <code>W</code> command's <code>F</code> 4472 option).</li> 4473 </ul> 4474 </li> 4475 4476 <li>fix a bug introduced by the changes to font information in 4477 <a href="#xterm_328">patch #328</a>. When processing the 4478 "checkfont" option of the <code>locale</code> resource, the 4479 program referred to the <em>request</em> data, to an array 4480 which was only allocated in the <em>new/result</em> widget 4481 (report by H Merijn Brand).</li> 4482 4483 <li>fix a missing assignment initialization to make the 4484 <code>utf8</code> resource control whether escape sequences to 4485 enable/disable UTF-8 mode are allowed.</li> 4486 </ul> 4487 4488 <h1><a name="xterm_328" id="xterm_328">Patch #328 - 4489 2017/06/01</a></h1> 4490 4491 <ul> 4492 <li>revise parser for <code>charClass</code> resource, making 4493 these improvements: 4494 <ul> 4495 <li>accept octal and hexadecimal values</li> 4496 4497 <li>allow embedded whitespace</li> 4498 4499 <li>allow the class after colon to be optional, e.g., to 4500 clear class settings for a range of characters.</li> 4501 </ul> 4502 </li> 4503 4504 <li>add command-line option 4505 <code>-report-charclass</code>.</li> 4506 4507 <li>fix most lintian warnings about test-package</li> 4508 4509 <li>add <code>eraseSavedLines</code> resource.</li> 4510 4511 <li>document <code>DECSED 3</code> in 4512 <code>ctlseqs.ms</code> (report by Ben Longmans).</li> 4513 4514 <li>improve integration between configure-events and updates 4515 for reported screensize, in particular when switching between 4516 vt100 and tek4014 modes.</li> 4517 4518 <li>modify selection-highlighting of reverse-video text to keep 4519 that distinct, e.g., by reversing the selection foreground and 4520 background colors as one would expect. This fixes a "useless" 4521 case in the description of 4522 <code>highlightColorMode</code>.</li> 4523 4524 <li>improve fix for Debian #759734, addressing a case where 4525 non-colored cursor would be invisible against reverse-video 4526 (see <a href="#xterm_311">patch #311</a>).</li> 4527 4528 <li>updates for ReGIS (Ross Combs): 4529 <ul> 4530 <li>the "H" option of the "T" command should multiply by 4531 10, not 20.</li> 4532 4533 <li>display unknown glyphs as a solid block.</li> 4534 4535 <li>given a succession of text-direction options, use the 4536 last.</li> 4537 4538 <li>fix the direction of ReGIS slanted text so that 4539 negative values produce oblique output .</li> 4540 4541 <li>fix the ReGIS text direction option to only rotate 4542 characters when no following size option is used.</li> 4543 </ul> 4544 </li> 4545 4546 <li>update terminfo to better match corresponding entries in 4547 ncurses, e.g., <code>u8</code> pattern to match the VT220, 4548 VT420, etc., primary responses, as well as adding 4549 <code>smxx</code> and <code>rmxx</code>.</li> 4550 4551 <li>fixes from Jörg Sommer: 4552 <ul> 4553 <li>corrected a trace-message regarding maximum 4554 graphics-size; it used the similar ReGIS maximum size which 4555 might not be configured.</li> 4556 4557 <li>in <code>do_select_regex</code>, clear selection if 4558 there is no match. If the regex does not match anything 4559 around the cursor, the selection returned must be empty, 4560 otherwise the whole line is treated as a match. This way 4561 the command defined by <code>exec-selectable</code> will 4562 not be executed if there is no match.</li> 4563 4564 <li>modify limit in <code>do_select_regex</code> to include 4565 the character at the cursor in the match, making it easier 4566 to type something and then hit the key to trigger 4567 <code>exec-selectable</code>.</li> 4568 4569 <li>If <code>exec-selectable</code> or 4570 <code>insert-selection</code> is triggered by a mouse 4571 button click, the position of the mouse pointer should be 4572 used. This makes it easier to address any position on the 4573 window and it makes it possible to use the mouse, e.g., for 4574 applications such as mutt where you cannot move the 4575 cursor.</li> 4576 </ul> 4577 </li> 4578 4579 <li>modify <code>DECRC</code> to save/restore xterm's 4580 last-column flag used to control wrapping behavior rather than 4581 manipulating <code>DECAWM</code> (report/analysis by Mattias 4582 Engdegård).</li> 4583 4584 <li>add configure option <code>--enable-terminfo-env</code> to 4585 use the value set by <code>--with-own-terminfo</code> for the 4586 <code>$TERMINFO</code> environment variable. That variable was 4587 set automatically for HPUX, but would be useful in other 4588 systems, e.g., for Solaris (request by Jeff Wieland).</li> 4589 4590 <li>fix a race condition when setting up a signal handler to 4591 timeout if opening <code>/dev/tty</code> hangs (patch by Tobias 4592 Stoeckmann).</li> 4593 4594 <li>review/cleanup resources which were not in the manual page 4595 (report by Maxwell Anselm): 4596 <ul> 4597 <li>add manual page description as needed.</li> 4598 4599 <li>drop resource name for <code>menuBar</code>, as 4600 unnecessary.</li> 4601 4602 <li>modify fallback numeric value for 4603 <code>regisScreenSize</code> resource to match that for 4604 <code>maxGraphicSize</code>.</li> 4605 </ul> 4606 </li> 4607 4608 <li>updated configure macros <code>CF_ADD_CFLAGS</code>, 4609 <code>CF_CC_ENV_FLAGS</code>, <code>CF_GNU_SOURCE</code>, 4610 <code>CF_MATH_LIB</code>, and <code>CF_XOPEN_SOURCE</code> from 4611 other program-changes.</li> 4612 4613 <li>update config.guess, config.sub</li> 4614 4615 <li>change “maximum screensize” assumed by 4616 <code>resize</code> to 9999x9999, to accommodate people using 4617 the <em><code>Unreadable</code></em> font.</li> 4618 4619 <li>drop <code>Utility</code> from default value of 4620 <code>--with-desktop-category</code> (Debian #780176).</li> 4621 4622 <li>widen the configure script pattern used for finding related 4623 ".desktop" files, including “Terminal”</li> 4624 4625 <li>several minor improvements to font utility functions: 4626 <ul> 4627 <li>provide for later modification to implement font-sets 4628 by parsing the font resources as comma-separated 4629 lists.</li> 4630 4631 <li>parse <code>-fn</code> and <code>-fa</code> similarly, 4632 using “x:” and “xft:” prefixes for 4633 font name/family strings to distinguish between XLFD and 4634 Xft font specifications.</li> 4635 4636 <li>use loops to iterate over font classes</li> 4637 4638 <li>use getters/setters for font data to allow for 4639 on-demand lookups.</li> 4640 4641 <li>make the debugging trace for missing glyph less verbose 4642 since that interferes with the <code>-report-fonts</code> 4643 option.</li> 4644 4645 <li>refactor <code>xtermLoadFont</code> to make it clearer 4646 how some fonts are derived from others, e.g., bold, 4647 wide.</li> 4648 4649 <li>make the triggering and suppressing of font-warnings 4650 more consistent by storing the last state in the 4651 widget.</li> 4652 4653 <li>reduce font-warnings by checking for repeated 4654 warnings.</li> 4655 </ul> 4656 </li> 4657 4658 <li>add <code>vttests/query-status.pl</code></li> 4659 4660 <li>add <code>vttests/closest-rgb</code></li> 4661 4662 <li>add special case for displaying soft-hyphen if it happens 4663 to fall at the right margin, and omitting similar case such as 4664 the BIDI markers, where a zero-width character is neither a 4665 control character nor a combining character (Debian 4666 #844325).</li> 4667 4668 <li>modify logic for <code>OSC 52</code>, <em>manipulate 4669 selection data</em>, to update the selection-time to include 4670 the latest X events. This fixes some cases where the selection 4671 was invalid, e.g., after an event due to focus-follows-mouse 4672 (report/testcase by Stephane Chauveau).</li> 4673 4674 <li>revise macro <code>CastMallocN</code> as new macro 4675 <code>TextAlloc</code> to make explicit use of 4676 <code>sizeof(char)</code> (prompted by patch by Cade 4677 Foster).</li> 4678 4679 <li>add <em>“Mouse Ops”</em> menu entry and related 4680 resources to allow runtime disabling/enabling of the mouse 4681 protocol escape sequences (discussion with Bob Proulx).</li> 4682 4683 <li>improve discussion of mouse actions versus protocol in the 4684 manual (discussion with Bob Proulx).</li> 4685 4686 <li>improve discussion of environment variables in the manual, 4687 pointing out where some features (such as termcap and the 4688 System5 <code>COLUMNS</code> and <code>LINES</code> variables) 4689 are used rarely, mainly to support legacy applications.</li> 4690 4691 <li>add examples of <code>translations</code> resource for 4692 select/paste, and for font-size changes to the manual.</li> 4693 4694 <li>minor reordering of some entries in <code>ctlseqs.ms</code> 4695 for consistency (report by Arran Ubels).</li> 4696 4697 <li>add <code>-s</code> option to <code>256colors2.pl</code> 4698 and <code>88colors2.pl</code>, to demonstrate modifying the 4699 “system” colors 0–15.</li> 4700 4701 <li>omit <code>XFT_SPACING</code> property from call to <code> 4702 XftPatternBuild</code>, to work around a bug in 4703 <em>fontconfig</em> for handling Google Go fonts, whose names 4704 sort in an order not expected by <em>fontconfig</em>, causing 4705 the request for a monospaced font to return <em>italics</em>, 4706 e.g., 4707 <blockquote> 4708 <pre> 4709$ fc-match 'Go Mono:spacing=monospace' 4710Go-Mono-Italic.ttf: "Go Mono" "Italic" 4711(report by Giacomo Boffi on <a href= 4712"http://unix.stackexchange.com/questions/324941/xterm-displays-an-italic-face-instead-of-regular">Stackoverflow</a>). 4713 4714</pre> 4715 </blockquote> 4716 </li> 4717 4718 <li>modify <code>minstall.in</code> to improve a workaround 4719 added to the manual page in <a href="#xterm_182">patch #182</a> 4720 to avoid having the C preprocessor used in the imake 4721 configuration strip out the comments in the character classes 4722 section (reports by Ted Unangst, Anthony J Bentley).</li> 4723 </ul> 4724 4725 <h1><a name="xterm_327" id="xterm_327">Patch #327 - 4726 2016/10/07</a></h1> 4727 4728 <ul> 4729 <li>add a check in the function which handles end-of-line 4730 wrapping to ensure that C1 controls are allocated one column 4731 when <code>allowC1Printable</code> is set (Debian 4732 #738794).</li> 4733 4734 <li>use consistent error-checking after <code>strtol</code> 4735 calls, fixes a case where a query with OSC 6 did not ensure 4736 there was a valid color number (report by Alex Smith).</li> 4737 4738 <li>add <code>-baudrate</code> option, for testing 4739 ncurses.</li> 4740 4741 <li>always generate the <code>CASE_<em>xxx</em></code> symbols 4742 in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part 4743 of a change to improve debug-logging. This makes the build 4744 always depend upon <code>awk</code>.</li> 4745 4746 <li>modify <code>allowC1Printable</code> to disallow codes 4747 160-254 as being equivalent to codes 32-126 when parsing escape 4748 sequences (Debian #839220).</li> 4749 4750 <li>amend fix from <a href="#xterm_326">patch #326</a> for 4751 TrueType fonts to exclude the hidden character used for 4752 double-width cells (report by Grady Martin).</li> 4753 4754 <li>fix a typo in <code>ctlseqs.ms</code></li> 4755 </ul> 4756 4757 <h1><a name="xterm_326" id="xterm_326">Patch #326 - 4758 2016/09/25</a></h1> 4759 4760 <ul> 4761 <li>updated appdata file (report by Richard Hughes).</li> 4762 4763 <li>improve discussion of the different terminal emulations 4764 provided by xterm in the manual page.</li> 4765 4766 <li>add examples of setting the icon title with/without the 4767 window title in the manual (Debian #833984).</li> 4768 4769 <li>correct a limit-check when using a numeric value for 4770 extended Booleans e.g., <code>*fullscreen:3</code> rather than 4771 a name such as <code>*fullscreen:never</code>.</li> 4772 4773 <li>add action <code>allow-bold-fonts</code></li> 4774 4775 <li>improved formatting fixes for manual page, using script to 4776 find mismatches in spelling of resources, actions and menu 4777 entries.</li> 4778 4779 <li>improve documentation of logging resources.</li> 4780 4781 <li>fix a special case of flickering cursor by adding 4782 <code>GraphicsExpose</code> to the list of event types that 4783 should not trigger making the mouse cursor visible (patch by 4784 Joe Peterson).</li> 4785 4786 <li>correct initialization of line-drawing in VT52-mode, 4787 overlooked in changes for <a href="#xterm_297">patch #297</a> 4788 (report/patch by Ben Wiley Sittler).</li> 4789 4790 <li>minor clarification of form-feed versus line-feed in 4791 <code>ctlseqs.ms</code> (suggested by David Kemper).</li> 4792 4793 <li>amend fix for Debian #738794 to restore a check for missing 4794 characters which are <em>not</em> combining characters. Also 4795 fill in a corresponding special case for TrueType fonts (Debian 4796 #827905).</li> 4797 </ul> 4798 4799 <h1><a name="xterm_325" id="xterm_325">Patch #325 - 4800 2016/06/05</a></h1> 4801 4802 <ul> 4803 <li>improve manual page discussion of function keys (discussion 4804 with Ross Combs).</li> 4805 4806 <li>further improve fix for Debian #545220 in <a href= 4807 "#xterm_248">patch #248</a>, to avoid conflict with combining 4808 characters (Debian #738794).</li> 4809 4810 <li>improve <code>-hold</code> option to avoid 100% CPU usage 4811 with NetBSD after closing the shell, which makes subsequent 4812 checks for X input events fail (prompted by patch by Pierre 4813 Pronchery).</li> 4814 4815 <li>review <code>#ifdef</code> statements, listed those which 4816 do not have a configure option in 4817 <code>xtermcfg.hin</code>.</li> 4818 4819 <li>fixed one case where the menu sensistivity for 4820 <em>Print-All Immediately</em> and <em>Print-All on Error</em> 4821 was not properly ifdef'd.</li> 4822 4823 <li>modify terminfo entries for 16-, 88- and 256-color to reset 4824 palette with <code>rs1</code> capability.</li> 4825 4826 <li>accept <code>legacy</code> value of <code>-kt</code> as 4827 synonym for the <code>oldXtermFKeys</code> resource, and extend 4828 the full-reset logic to use the keyboard type set via 4829 <code>-kt</code>.</li> 4830 4831 <li>modify <code>ioctl</code> calls for <code>I_PUSH</code> to 4832 first check if the module has been added, using 4833 <code>I_FIND</code>. This is needed for newer Solaris libraries 4834 with c11 support (adapted from patch by Alan Coopersmith).</li> 4835 4836 <li>add check in <code>getXtermCombining</code> to ensure that 4837 combining characters were allocated (report by Tor 4838 Andersson).</li> 4839 4840 <li>add configure option <code>--without-xinerama</code> to 4841 allow suppressing the extension (Gentoo #580936).</li> 4842 4843 <li>update keysym2ucs.c based on Unicode 9.0</li> 4844 4845 <li>fixed most <code>cppcheck --enable=all</code> warnings, 4846 including for style (prompted by report by David Binderman). 4847 There was one bug-fix: 4848 <ul> 4849 <li>RGB least-squares computation in 4850 <code>allocateClosestRGB</code> used only one ordinate</li> 4851 </ul> 4852 </li> 4853 4854 <li>add <code>cppcheck</code> to lint-like programs in 4855 configure script and makefile.</li> 4856 4857 <li>fix some const correctness issues and point out an array 4858 lifetime issue (Ross Combs).</li> 4859 4860 <li>updates for SIXEL and ReGIS (Ross Combs): 4861 <ul> 4862 <li>Sixel drawing should still happen after an error if 4863 some commands have been processed</li> 4864 4865 <li>Tiny steps toward reporting ReGIS input</li> 4866 </ul> 4867 </li> 4868 </ul> 4869 4870 <h1><a name="xterm_324" id="xterm_324">Patch #324 - 4871 2016/03/10</a></h1> 4872 4873 <ul> 4874 <li>updated configure macro <code>CF_LD_RPATH_OPT</code> from 4875 ncurses changes.</li> 4876 4877 <li>provide alternate fix for Juha Nurmela's report by turning 4878 on POSIX signals if <code>_POSIX_C_SOURCE</code> is at least 4879 one. This is done to improve the behavior if a direct child 4880 process receives a <code>STOP</code> signal.</li> 4881 4882 <li>revert change to <code>CF_POSIX_C_SOURCE</code> from 4883 <a href="#xterm_323">patch #323</a> (reports by Ashish Shukla, 4884 Christian Weisgerber).</li> 4885 </ul> 4886 4887 <h1><a name="xterm_323" id="xterm_323">Patch #323 - 4888 2016/03/07</a></h1> 4889 4890 <ul> 4891 <li>updated appdata and desktop files to add keywords (report 4892 by Richard Hughes).</li> 4893 4894 <li>modify configure macro <code>CF_POSIX_C_SOURCE</code> to 4895 accommodate some systems, e.g., FreeBSD, which have separated 4896 their implementation specific preprocessor symbols from the 4897 POSIX ones, requiring both to be defined (report by Juha 4898 Nurmela).</li> 4899 4900 <li>change the directory to the current working dir of the 4901 child process in exec-formatted and exec-selectable actions 4902 (patch by Alexander Pohoyda).</li> 4903 4904 <li>correct typo in xterm.man (patch by Larry Hynes).</li> 4905 4906 <li>correct typo in ctlseqs.ms (report by Shriramana 4907 Sharma).</li> 4908 4909 <li>add feature to support XHTML and SVG screen dumps (patch by 4910 Jens Schweikhardt).</li> 4911 4912 <li>correct response to DECRQSS when terminal id is less than 4913 400 (patch by Iwamoto Kouichi).</li> 4914 </ul> 4915 4916 <h1><a name="xterm_322" id="xterm_322">Patch #322 - 4917 2016/01/02</a></h1> 4918 4919 <ul> 4920 <li>fix regression due to incorrect fix for compiler warning 4921 when allocating storage for <code>/etc/shells</code> (reports 4922 by Ashish Shukla, Debian #809646).</li> 4923 </ul> 4924 4925 <h1><a name="xterm_321" id="xterm_321">Patch #321 - 4926 2015/12/31</a></h1> 4927 4928 <ul> 4929 <li>add resource <code>keepClipboard</code>, escape sequence 4930 and action <code>keep-clipboard</code>.</li> 4931 4932 <li>add optional feature to capture text copied to clipboard at 4933 the time of copying rather than at the time the clipboard 4934 contents are requested for pasting (patch by Milan 4935 Mehner).</li> 4936 4937 <li>improve a special case where the <code>-e</code> option was 4938 used to pass a single-quoted command via <code>luit</code>, by 4939 wrapping it in a “sh -c” (report by Keith 4940 Hedger).</li> 4941 4942 <li>minor fix for type-cleanliness when allocating storage for 4943 <code>/etc/shells</code> (Tobias Stoeckmann).</li> 4944 4945 <li>fix a typo in manual page (Dan Church).</li> 4946 4947 <li>fix minor file-descriptor leak; after calling 4948 <code>openpty</code>, the slave's file descriptor is not needed 4949 (report by Juha Nurmela).</li> 4950 4951 <li>editorial change to ctlseqs.ms (report by David 4952 Gomboc).</li> 4953 4954 <li>minor updates for autoconf macros.</li> 4955 4956 <li>update config.guess, config.sub</li> 4957 </ul> 4958 4959 <h1><a name="xterm_320" id="xterm_320">Patch #320 - 4960 2015/08/28</a></h1> 4961 4962 <ul> 4963 <li>correct documentation for <code>%t</code> format (report by 4964 Martin Tournoij).</li> 4965 4966 <li>add <code>%R</code> for consistency to 4967 <code>exec-formatted()</code> and 4968 <code>insert-formatted()</code> actions.</li> 4969 4970 <li>add <code>%r</code> format to <code>exec-formatted()</code> 4971 and <code>insert-formatted()</code> actions (patch by Martin 4972 Tournoij).</li> 4973 4974 <li>Amend fix for Debian #794201 (report forwarded from 4975 Christian Jachmann by Emanuel Haupt, Debian #797008).</li> 4976 </ul> 4977 4978 <h1><a name="xterm_319" id="xterm_319">Patch #319 - 4979 2015/08/19</a></h1> 4980 4981 <ul> 4982 <li>add a section to <code>ctlseqs.ms</code> discussing control 4983 sequences and ECMA-48, to explain why C1 controls do not occur 4984 in the decoded characters from UTF-8 byte streams (prompted by 4985 discussion with Poul-Henning Kamp).</li> 4986 4987 <li>modify check for cursor-theme from <a href= 4988 "#xterm_301">patch #301</a> to also check if the resource 4989 <code>Xcursor.theme</code> is set to a nonempty value before 4990 fallback to xterm's own dummy theme (request by Robert 4991 Kloefkorn).</li> 4992 4993 <li>explain in <code>ctlseqs.ms</code> that some keys which 4994 normally send SS3-prefixes are changed to CSI-prefixes if 4995 key-modifiers are passed as parameters (report by George 4996 Nachman).</li> 4997 4998 <li>correct double-free of font information when multiple 4999 problems are found, particularly for the wide fonts loaded via 5000 the <code>-wc</code> option (report/testcase by Nelson 5001 Beebe).</li> 5002 5003 <li>make configure option <code>--enable-builtin-xpms</code> 5004 actually work (report by William Bulley).</li> 5005 5006 <li>correct combination of <code>-ls</code> and <code>-e</code> 5007 options for utempter configuration (Debian #794201).</li> 5008 5009 <li>NetBSD build-fix for OPT_RENDERFONT versus OPT_SHIFT_FONTS 5010 (patch by Matthew Green, forwarded by Thomas Klausner).</li> 5011 5012 <li>fix a few minor bugs found with Coverity.</li> 5013 5014 <li>update pixelvector handling (Ross Combs): 5015 <ul> 5016 <li>split pixel-based and coord-based functions with common 5017 parts factored out to a "raw" function</li> 5018 5019 <li>add a "step" variant which loads a single PV digit</li> 5020 </ul> 5021 </li> 5022 5023 <li>make the graphic dirty upon resize or clear, fixing some 5024 missing refreshes (patch by Ross Combs)</li> 5025 5026 <li>fixes scrolling to use user coordinates and move in the 5027 correct direction (patch by Ross Combs)</li> 5028 5029 <li>several fixes/improvements for ReGIS whitespace and 5030 page-handling (patch by Ross Combs).</li> 5031 </ul> 5032 5033 <h1><a name="xterm_318" id="xterm_318">Patch #318 - 5034 2015/04/12</a></h1> 5035 5036 <ul> 5037 <li>rename new(er) configure option 5038 <code>--enable-initial-erase</code> to 5039 <code>--enable-pty-erase</code>, since that conflicted with an 5040 existing option (report by Jens Schweikhardt).</li> 5041 5042 <li>fix cut/paste error in <code>--with-builtin-xpms</code> 5043 configure option (reports by Jens Schweikhardt, Ross 5044 Combs).</li> 5045 5046 <li>fix minor formatting issue in xterm manual (report by Jens 5047 Schweikhardt).</li> 5048 5049 <li>eliminate unnecessary "#(vi" markers in autoconf macros by 5050 using "(" to begin case-statement cases (suggested by Jens 5051 Schweikhardt).</li> 5052 5053 <li>minor fixes to improve <code>const</code> usage (Ross 5054 Combs).</li> 5055 </ul> 5056 5057 <h1><a name="xterm_317" id="xterm_317">Patch #317 - 5058 2015/03/27</a></h1> 5059 5060 <ul> 5061 <li>adapt example for <code>exec-formatted</code> from <a href= 5062 "http://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html"> 5063 Lukáš Zapletal's</a> webpage to manual (Debian 5064 #780008).</li> 5065 5066 <li>add a short usage section to the xterm manual, including 5067 notes on setting the window title (Debian #742477).</li> 5068 5069 <li>revise a change made to <code>ICH</code> in <a href= 5070 "#xterm_314">patch #314</a> to address limit-checks 5071 (reports/testcases by Zoltán Kéri and Joe 5072 Peterson, also reported by Christian Weisgerber).</li> 5073 </ul> 5074 5075 <h1><a name="xterm_316" id="xterm_316">Patch #316 - 5076 2015/03/07</a></h1> 5077 5078 <ul> 5079 <li>revert change to make <code>DCH</code> honor top/bottom 5080 scrolling margins. For the record, both the VT420 and VT520 5081 reference manuals incorrectly state that <em>"DCH has no effect 5082 outside the scrolling margins."</em></li> 5083 5084 <li>fix regression in <code>DCH</code> introduced in adjustment 5085 for limit-check in <a href="#xterm_314">patch #315</a> 5086 (report/testcase by Zoltán Kéri, also reported by 5087 Christian Weisgerber).</li> 5088 5089 <li>correct default value for configure option 5090 <code>--enable-initial-erase</code>; it should be "False", but 5091 in <a href="#xterm_315">patch #315</a> it was "Maybe", which 5092 differed from default set in <a href="#xterm_192">patch 5093 #192</a>.</li> 5094 </ul> 5095 5096 <h1><a name="xterm_315" id="xterm_315">Patch #315 - 5097 2015/03/02</a></h1> 5098 5099 <ul> 5100 <li>change default for <code>--enable-narrowproto</code> for 5101 Cygwin to "no" to better match contemporary configurations 5102 (report by Jens Schweikhardt, prompted by <a href= 5103 "http://stackoverflow.com/questions/28137618/what-is-a-narrow-prototype-and-why-would-i-need-one/28334574?noredirect=1#comment45022128_28334574"> 5104 discussion</a>).</li> 5105 5106 <li>provide <code>OSC 106</code> as an alternative to 5107 <code>OSC 6</code>, avoiding conflict with one of 5108 Terminal.app's undocumented escape sequences (report by Egmont 5109 Koblinger).</li> 5110 5111 <li>fix an off-by-one in comparison when autowrap and 5112 left/right margins are combined (report by George 5113 Nachman).</li> 5114 5115 <li>modify <code>DECBI</code> and <code>DECFI</code> to work 5116 outside the left/right margins, since the vague VT520 reference 5117 manual could support that interpretation (suggested by George 5118 Nachman).</li> 5119 5120 <li>correct response for <code>DECSCUSR</code> in 5121 <code>DECRQSS</code> (report/analysis by George Nachman).</li> 5122 5123 <li>add <code>DECSLRM</code> to list for <code>DECRQSS</code> 5124 in ctlseqs.ms (report by George Nachman).</li> 5125 5126 <li>improve limit-checks versus assert's in the debugging 5127 version (reports by George Nachman).</li> 5128 5129 <li>correct a problem with multiple writes to the right-margin 5130 when autowrap is turned off (report by George Nachman, also 5131 reported in Gnome #744819 by Ulf Magnusson).</li> 5132 5133 <li>modify <code>DCH</code> to honor top/bottom and left/right 5134 margins (report by George Nachman).</li> 5135 5136 <li>correct off-by-one in comparison so that <code>DL</code> 5137 honors left/right margins (report by George Nachman).</li> 5138 5139 <li>correct logic of <code>DECSCL</code>, which always set 5140 8-bit controls as a side-effect (report by George 5141 Nachman).</li> 5142 5143 <li>correct loop limit for <code>DECSED 1</code>, when 5144 <code>DECSCA</code> is enabled (report by George Nachman).</li> 5145 5146 <li>fix a entry in csi_table for “<code>$</code>”, 5147 needed for <code><em>CSI</em> [ $ z</code> 5148 (report by George Nachman).</li> 5149 5150 <li>remove restriction from <a href="#xterm_279">patch #279</a> 5151 changes on <code>DECIC</code> and <code>DECDC</code> to 5152 left-right mode (report by George Nachman).</li> 5153 5154 <li>correct PID value returned in response to DECRQCRA 5155 (report/analysis by George Nachman).</li> 5156 5157 <li>fix an ifdef'ing problem, where 5158 <code>--disable-dec-locator</code> would turn off logic needed 5159 for <code>DECIC</code> and <code>DECDC</code> (report by George 5160 Nachman).</li> 5161 5162 <li>correct order of parameters in report for 5163 <code><em>CSI</em> 1 9 t</code>, which gives the 5164 screensize in characters (report by George Nachman).</li> 5165 5166 <li>add null pointer checks for a case in DECCRA where part of 5167 the target rectangle lies outside the screen limits (report by 5168 George Nachman).</li> 5169 5170 <li>remove extra "6" for selective erase from DA1 response 5171 (report by George Nachman).</li> 5172 5173 <li>support Xinerama screen specification in geometry parsing 5174 (patch by Nicolas George).</li> 5175 5176 <li>add configure option <code>--enable-initial-erase</code> to 5177 set <code>ptyInitialErase</code> consistently with manpage, as 5178 well as adding a table in manpage to clarify the relationship 5179 between the resources related to the backarrow key (Debian 5180 #775952).</li> 5181 5182 <li>add configure <code>--enable-builtin-xpms</code> to 5183 simplify compiling-in the icons introduced in <a href= 5184 "#xterm_284">patch #284</a> (prompted by discussion with 5185 William Bulley).</li> 5186 5187 <li>fix/improve autoconf macros: 5188 <ul> 5189 <li>CF_WITH_APP_DEFAULTS, add paths for OSX</li> 5190 5191 <li>CF_WITH_MAN2HTML, configure option "--with-man2html" 5192 provides "man2html" as alternative to groff's man/html 5193 conversion</li> 5194 </ul> 5195 </li> 5196 5197 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 5198 </ul> 5199 5200 <h1><a name="xterm_314" id="xterm_314">Patch #314 - 5201 2014/12/28</a></h1> 5202 5203 <ul> 5204 <li>fix a minor bug in the termcap-specific version of 5205 <code>resize</code> when the lines or columns values are at the 5206 very end of an incomplete termcap string (prompted by coverity 5207 report).</li> 5208 5209 <li>improve paste64 feature (report by Olaf Rogalsky) 5210 <ul> 5211 <li>fix “<code>p</code>;” command in 5212 <code>paste64.pl</code> example.</li> 5213 5214 <li>modify <code>_OwnSelection</code> to allow the paste64 5215 control to cause primary/clipboard selections to be 5216 disowned and cleared.</li> 5217 5218 <li>omit an extra "=" used in padding, to make the base64 5219 response a multiple of four characters.</li> 5220 5221 <li>modify <code>_ConvertSelectionHelper</code> to not stop 5222 converting on embedded nulls in the primary or clipboard 5223 selection. That makes the behavior consistent with 5224 cut-buffers. Nulls are not passed on to the application 5225 because they are used for separators in the X library calls 5226 that convert <code>XTextProperty</code> values.</li> 5227 </ul> 5228 </li> 5229 5230 <li>add configure option <code>--with-man2html</code> to allow 5231 an alternative to groff's man/html conversion.</li> 5232 5233 <li>review and modify resource-settings which can be set via 5234 control sequences, etc: 5235 <ul> 5236 <li>add <code>OSC 6</code>, to enable/disable colors 5237 set via <code>OSC 5</code>, without changing the color 5238 assignments (prompted by patch by Ingo Brückl).</li> 5239 5240 <li>add command-line option <code>-itc</code> for 5241 italics.</li> 5242 5243 <li>add <code>colorIT</code> and <code>colorITMode</code> 5244 for italics, like <code>colorBD</code>, etc.</li> 5245 5246 <li>guard <code>allowPasteControls</code> against 5247 modification by <code>editres</code>.</li> 5248 </ul> 5249 </li> 5250 5251 <li>change <code>passedPty</code> from fixed-length to 5252 allocated to ensure that it is long enough to hold the 5253 <code>-S</code> option value (report by Ben Longbons).</li> 5254 5255 <li>improve ReGIS graphics initialization (Ross Combs): 5256 <ul> 5257 <li>add a new string resource to set the default ReGIS 5258 font.</li> 5259 5260 <li>fix a caching problem where the font name wasn't taken 5261 into consideration when looking up cached metrics.</li> 5262 5263 <li>enables use of fractional values in coordinates (which 5264 in turn allows setting the coordinates to something like 5265 [0,1][1,0])</li> 5266 5267 <li>doubles the minimum ReGIS graphic to 200x200</li> 5268 5269 <li>set the default ReGIS image size to "auto"</li> 5270 5271 <li>fix some swapped width/height parameters in TRACE 5272 messages</li> 5273 5274 <li>add support for scaling and mirrored coordinate systems 5275 to the screen address command</li> 5276 5277 <li>sets a minimum ReGIS graphics size of 100x100 -- 5278 smaller address ranges will be scaled up</li> 5279 5280 <li>reset the image if either the width or height is zero 5281 (which should happen together or not at all, but switching 5282 the logic gets rid of some parentheses)</li> 5283 5284 <li>adds support for alternate screen coordinates (just 5285 offsets, not inverted coordinates or scaling)</li> 5286 5287 <li>keeps the graphics state across ReGIS calls unless P1 5288 or P3 entry codes are used</li> 5289 5290 <li>changes loops to continue after parsing whitespace to 5291 allow trailing whitespace</li> 5292 5293 <li>fixes some incorrect character casts</li> 5294 </ul> 5295 </li> 5296 </ul> 5297 5298 <h1><a name="xterm_313" id="xterm_313">Patch #313 - 5299 2014/11/28</a></h1> 5300 5301 <ul> 5302 <li>add <code>regisScreenSize</code> resource setting to allow 5303 custom screensizes for ReGIS graphics (prompted by discussion 5304 with Scott Froebe).</li> 5305 5306 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 5307 5308 <li>improve ReGIS font-handling (Ross Combs): 5309 <ul> 5310 <li>remove "random junk" generation for unknown 5311 characters</li> 5312 5313 <li>add xterm extension to load user glyphs for alphabet 5314 0</li> 5315 5316 <li>add xterm extension to specify loading an alphabet from 5317 a font by name</li> 5318 5319 <li>fix bug with use of empty alphabet slots which caused 5320 slot 0 to be clobbered</li> 5321 5322 <li>update/clarify ReGIS-related comments</li> 5323 5324 <li>add DECprint extension for printing/clearing the screen 5325 (only clearing is performed)</li> 5326 </ul> 5327 </li> 5328 5329 <li>improve ReGIS colorspec conversion (Ross Combs): 5330 <ul> 5331 <li>avoid some floating point math for colorspace 5332 conversion</li> 5333 5334 <li>move two copies of colorspec parsing to a single 5335 function</li> 5336 5337 <li>change colorspec parsing to handle components being out 5338 of order or with spaces and commas between them</li> 5339 5340 <li>add support for an extension where RGB components can 5341 be given instead of HLS</li> 5342 </ul> 5343 </li> 5344 5345 <li>improve use of const, e.g., for the <code>LineData</code> 5346 pointers (patch by Ross Combs).</li> 5347 5348 <li>clip of graphics that overlap the scrollback buffer and alt 5349 screen (patch by Ross Combs).</li> 5350 5351 <li>amend change to focus-change events in <a href= 5352 "#xterm_287">patch #287</a> to limit it to suppressing the 5353 reset of the urgency-hint, because some useful 5354 <code>FocusOut</code> events were lost (report by Joe 5355 Peterson).</li> 5356 5357 <li>modify dpkg build-script to configure xterm-dev as an 5358 <code>x-terminal-emulator</code> alternative.</li> 5359 5360 <li>extend the <code>--with-xterm-symlink</code> feature to 5361 make symbolic links for the other programs and scripts.</li> 5362 5363 <li>minor fix to <code>vttests/resize.pl</code> to avoid 5364 undefined variable when receiving broken/missing response, 5365 e.g., from mrxvt.</li> 5366 5367 <li>change the way that ReGIS graphics are refreshed (patch by 5368 Ross Combs): 5369 <ul> 5370 <li>it pre-composes any overlapping graphics to avoid 5371 unnecessary and flickering draws</li> 5372 5373 <li>it adds a three-dimensional lookup table for RGB -> 5374 pixel values and uses this across all graphics</li> 5375 5376 <li>it draws in line segments when there is a run of the 5377 same color</li> 5378 5379 <li>in cases where there are no transparent parts, it uses 5380 an XImage to draw</li> 5381 5382 <li>it hooks into the double-buffering support if it is 5383 enabled (though this doesn't seem to get rid of all 5384 flicker).</li> 5385 </ul> 5386 This has the effect of reducing flicker and speeding up 5387 redraws. 5388 </li> 5389 </ul> 5390 5391 <h1><a name="xterm_312" id="xterm_312">Patch #312 - 5392 2014/09/28</a></h1> 5393 5394 <ul> 5395 <li>undo change to <code>do_select_regex()</code> in <a href= 5396 "#xterm_311">patch #311</a> (reports by H Merijn Brand, 5397 Sven-Haegar Koch, Debian #762978).</li> 5398 </ul> 5399 5400 <h1><a name="xterm_311" id="xterm_311">Patch #311 - 5401 2014/09/18</a></h1> 5402 5403 <ul> 5404 <li>mention <code>xclip</code> in manpage as an alternative 5405 workaround for copying clipboard data, noting that 5406 <code>selectToClipboard</code> (see <a href="#xterm_209">patch 5407 #209</a>) is the recommended approach (Debian #639094).</li> 5408 5409 <li>correct comparison in do_select_regex() of working position 5410 against starting column.</li> 5411 5412 <li>correct initialization for regular-expression feature of 5413 <code>exec-selectable</code> and <code>insert-selectable</code> 5414 actions (Debian #758633).</li> 5415 5416 <li>modify logic for <code>exec-formatted</code> and 5417 <code>insert-formatted</code> actions to ensure that the 5418 formatting occurs just after the selection is received (Debian 5419 #758633).</li> 5420 5421 <li>account for state of reverse-video in special case of 5422 cursor coloring (Debian #759734).</li> 5423 5424 <li>fix a sign-extension problem in ReGIS support, as well as 5425 correcting a case where ignored-characters were not really 5426 ignored (patch by Ross Combs).</li> 5427 5428 <li>Enable the "Escape Sequence" menu entry when an OSC 50 5429 is received. Also disable it if the escape sequence specifies 5430 no font (Debian #760208).</li> 5431 5432 <li>improve fix for the <code>fontsel</code> menu entry from 5433 <a href="#xterm_304">patch #304</a>: because the recovery used 5434 the "current font", it would fail if one first selected a valid 5435 font, then an invalid font (Debian #760207).</li> 5436 5437 <li>correct an off-by-one in limit-check for 5438 <code>ScrnLimitChar</code> function (report by Egmont 5439 Koblinger).</li> 5440 </ul> 5441 5442 <h1><a name="xterm_310" id="xterm_310">Patch #310 - 5443 2014/07/25</a></h1> 5444 5445 <ul> 5446 <li>update package/freebsd files based on xterm #309 port.</li> 5447 5448 <li>adapt changes from Minux3.2 which ported <a href= 5449 "#xterm_197">xterm #197</a>, to allow building on that platform 5450 both using <code>imake</code> as well as using the configure 5451 script.</li> 5452 5453 <li>update precompose.c based on Unicode 7.0</li> 5454 5455 <li>build-fix for <code>--with-Xaw3dxft</code> option (report 5456 by Emanuel Haupt).</li> 5457 </ul> 5458 5459 <h1><a name="xterm_309" id="xterm_309">Patch #309 - 5460 2014/07/13</a></h1> 5461 5462 <ul> 5463 <li>modify configure script to work around debris left by 5464 XQuartz upgrades.</li> 5465 5466 <li>modify test-package scripts to enable ReGIS graphics.</li> 5467 5468 <li>improvements/additions to ReGIS graphics, e.g., drawing 5469 text (Ross Combs).</li> 5470 5471 <li>add <code>--with-Xaw3dxft</code>, to link with Xaw 3d xft 5472 library (Stephen P Wall).</li> 5473 5474 <li>amend reset for cursor-shape to take into account 5475 <code>cursorUnderline</code> resource (report by Christian 5476 Weisgerber).</li> 5477 5478 <li>update config.guess, config.sub</li> 5479 </ul> 5480 5481 <h1><a name="xterm_308" id="xterm_308">Patch #308 - 5482 2014/06/19</a></h1> 5483 5484 <ul> 5485 <li>corrected font used for clipping double-width bitmap fonts 5486 from <a href="#xterm_307">patch #307</a> changes to work around 5487 mis-scaled fonts (Debian #752947).</li> 5488 5489 <li>improve wording of a warning message.</li> 5490 </ul> 5491 5492 <h1><a name="xterm_307" id="xterm_307">Patch #307 - 5493 2014/06/17</a></h1> 5494 5495 <ul> 5496 <li>fill background for top/bottom parts of 5497 double-width/double-height characters, to cover occasional gaps 5498 due to bitmap font-scaling (report by Egmont Koblinger).</li> 5499 5500 <li>amend resets for keyboard-type, pointer-mode and 5501 title-modes from <a href="#xterm_305">xterm #305</a> changes to 5502 account for resource settings (Debian #751351).</li> 5503 5504 <li>modify <em>printAttributes</em> feature to include new SGR 5505 codes.</li> 5506 5507 <li>modify cursor show/hide logic to work with italic 5508 fonts.</li> 5509 5510 <li>do clipping and filling for a case with bitmap-fonts and 5511 italics when the font server returns only a "close" match 5512 (report/testcase by Egmont Koblinger).</li> 5513 5514 <li>adjust loop comparison for underlining to display 5515 underlines on 5x8 font as in <a href="#xterm_304">patch 5516 #304</a> (Debian #750733).</li> 5517 5518 <li>amend fix for Freedesktop #15979 (Debian #750733).</li> 5519 5520 <li>amend xterm.appdata.xml, making it validate with current 5521 schema.</li> 5522 </ul> 5523 5524 <h1><a name="xterm_306" id="xterm_306">Patch #306 - 5525 2014/06/03</a></h1> 5526 5527 <ul> 5528 <li>fixes for display-errors in new SGR codes (report by Egmont 5529 Koblinger).</li> 5530 </ul> 5531 5532 <h1><a name="xterm_305" id="xterm_305">Patch #305 - 5533 2014/06/02</a></h1> 5534 5535 <ul> 5536 <li>add <code>xterm.appdata.xml</code> (request by Richard 5537 Hughes). By the way, none of the <em>released</em> validators 5538 yet handle <code><licence></code> tags (or 5539 <code><metadata_license></code>, etc).</li> 5540 5541 <li>fix memory leaks in bitmap font-name caching.</li> 5542 5543 <li>other changes to hard-reset behavior: 5544 <ul> 5545 <li>reset keyboard-type on hard-reset.</li> 5546 5547 <li>reset pointer-mode (<code>pointerMode</code>) on 5548 hard-reset</li> 5549 5550 <li>reset title-modes (<code>titleModes</code>) on 5551 hard-reset</li> 5552 5553 <li>reset cursor-shape on hard or soft-reset</li> 5554 5555 <li>reset LEDs on hard-reset.</li> 5556 5557 <li>reset DECSACE on hard-reset.</li> 5558 </ul> 5559 </li> 5560 5561 <li>reset bracketed-paste mode on hard-reset (suggested by 5562 Egmont Koblinger).</li> 5563 5564 <li>modify UTF-8 decoder to account for 5565 <code>allowC1Printable</code> resource.</li> 5566 5567 <li>revise <code>getXftColor</code> to ensure that its sequence 5568 number will not overflow in long-running sessions.</li> 5569 5570 <li>minor fix to selection to prevent hidden character from 5571 being returned in selection data (report by Egmont 5572 Koblinger).</li> 5573 5574 <li>add <code>-sh</code> to help-message.</li> 5575 5576 <li>amend check for incomplete fonts to always decide that a 5577 character is missing if the font lacks per-character metrics 5578 (prompted by Freedesktop #15979).</li> 5579 5580 <li>minor reorganization to implement “filler” SGR 5581 features. There are no established applications which rely upon 5582 these; some people find them amusing. 5583 <ul> 5584 <li>separate bits used to manage drawing state from 5585 attribute-bits.</li> 5586 5587 <li>implement SGR codes 2, 3, 9, 21 and their corresponding 5588 resets.</li> 5589 5590 <li>add configure option <code>--disable-wide-attrs</code> 5591 to disable the feature.</li> 5592 </ul> 5593 </li> 5594 5595 <li>additional changes for ReGIS support (Ross Combs): 5596 <ul> 5597 <li>fix some arc drawing bugs and add support for pattern 5598 shading.</li> 5599 </ul> 5600 </li> 5601 </ul> 5602 5603 <h1><a name="xterm_304" id="xterm_304">Patch #304 - 5604 2014/05/03</a></h1> 5605 5606 <ul> 5607 <li>add debugging check for parsing table entries, fixed a few 5608 inconsistencies.</li> 5609 5610 <li>handle utmp/utmpx strings consistently with new function 5611 that null-pads unused locations.</li> 5612 5613 <li>build-fix for imake configuration with FreeBSD 9 and later, 5614 to account for replacing <code>utmp</code> with 5615 <code>utmpx</code>.</li> 5616 5617 <li>improve handling of the <code>fontsel</code> 5618 (font-selection) menu item: 5619 <ul> 5620 <li>initialize the menu entry differently if the toolbar 5621 configuration is used, i.e., enabling it without attempting 5622 to use the current selection as a font name. Because of the 5623 way in which the toolbar is setup, this attempt usually 5624 failed, and would result in a warning.</li> 5625 5626 <li>if the menu action fails, e.g., no font can be loaded 5627 for the given selected name, then recover by resuming with 5628 the current font. Before, the recovery went to the default 5629 font. That was done to work around missing bitmap font in 5630 <a href="#xterm_276">patch #276</a>.</li> 5631 </ul> 5632 </li> 5633 5634 <li>document OSC 119 in the control sequences listing 5635 (report by Egmont Koblinger).</li> 5636 5637 <li>modify special handling of <code>XF86Paste</code> or 5638 <code>SunPaste</code> keysyms (see <a href="#xterm_227">patch 5639 #227</a>) to use the standard shift/lock modifiers in case 5640 those are, for example, used in level 3 in an XKB file (patch 5641 by Matthieu Herrb).</li> 5642 5643 <li>configure macro updates: 5644 <ul> 5645 <li>drop the <code>-no-gcc</code> option from 5646 CF_INTEL_COMPILER</li> 5647 5648 <li>modify CF_XOPEN_SOURCE to suppress the check for 5649 defining _XOPEN_SOURCE on Solaris</li> 5650 </ul> 5651 </li> 5652 5653 <li>reduce bss storage used for ReGIS/Sixel modules, as well as 5654 cleanup storage usage in other modules.</li> 5655 5656 <li>initial changes for ReGIS support (Ross Combs): 5657 <ul> 5658 <li>document control-sequences</li> 5659 5660 <li>separate ifdef's for sixel and color-register 5661 features</li> 5662 5663 <li>add configuration for VT382</li> 5664 </ul> 5665 </li> 5666 </ul> 5667 5668 <h1><a name="xterm_303" id="xterm_303">Patch #303 - 5669 2014/03/06</a></h1> 5670 5671 <ul> 5672 <li>improve check for <code>/etc/shells</code> to allow its 5673 entries to be symbolic links.</li> 5674 5675 <li>fix a regression in <a href="#xterm_302">patch #302</a> 5676 fixes relating to interaction of <code>SHELL</code> and 5677 <code>XTERM_SHELL</code> variables (Debian #740919).</li> 5678 5679 <li>improve manpage discussion of use of 5680 <code>/etc/shells</code> for validating the <code>SHELL</code> 5681 environment variable.</li> 5682 5683 <li>further improve the approximation for color map by ignoring 5684 bits which would not be applied by the rgb masks for the 5685 current visual (report by Joe Peterson).</li> 5686 5687 <li>add <code>-report-colors</code> to usage-message (report by 5688 Joe Peterson).</li> 5689 </ul> 5690 5691 <h1><a name="xterm_302" id="xterm_302">Patch #302 - 5692 2014/03/02</a></h1> 5693 5694 <ul> 5695 <li>amend approximation for color map introduced in <a href= 5696 "#xterm_277">patch #277</a> to make that apply only to 5697 <code>TrueColor</code> (adapted from patch by Joe 5698 Peterson).</li> 5699 5700 <li>add <code>-report-colors</code> option, to show colors as 5701 they are allocated.</li> 5702 5703 <li>fix some gcc <code>-Wcast-qual</code> warnings.</li> 5704 5705 <li>correct app-defaults location for CentOS-4 in 5706 xterm.spec</li> 5707 5708 <li>improve check in <code>minstall.sh</code> for X manpage's 5709 section number; add sample dependencies for the relevant 5710 documentation package to packaging test-scripts (prompted by 5711 Novell #779474).</li> 5712 5713 <li>modify sample build-scripts for dpkg and rpm to ensure that 5714 <code>vttests</code> scripts are uncompressed and 5715 executable.</li> 5716 5717 <li>modify Perl scripts in <code>vttests</code> to use 5718 <code>env</code> to find Perl rather than relying on 5719 <code>/usr/bin/perl</code> This makes the sample scripts usable 5720 with NetBSD and other systems using <em>pkgsrc</em>.</li> 5721 5722 <li>amend check from <a href="#xterm_301">patch #301</a> for 5723 valid shell to permit existing <code>SHELL</code> value to 5724 specify the shell; clarify the behavior in the manpage (report 5725 by Emmanuel Thomé).</li> 5726 5727 <li>amend change to wide-character processing from <a href= 5728 "#xterm_257">patch #257</a> to allow switching to/from UTF-8 5729 encoding if the <code>utf8</code> resource was not set to 5730 “always” (report by Honza Maly).</li> 5731 5732 <li>fix incorrect free from <a href="#xterm_301">patch #301</a> 5733 changes, if explicit program without <code>-e</code> option is 5734 a valid shell (patch by Romain Francoise).</li> 5735 </ul> 5736 5737 <h1><a name="xterm_301" id="xterm_301">Patch #301 - 5738 2014/01/19</a></h1> 5739 5740 <ul> 5741 <li>OSC 104 and 105 did not accept parameter to reset a 5742 specific color (patch by Egmont Koblinger).</li> 5743 5744 <li>add configure check for <code>initgroups</code>, and use 5745 that function to complement its use of <code>setgid</code> 5746 (prompted by patch by Miroslav Lichvar).</li> 5747 5748 <li>improve manpage description of scrollbar translations 5749 versus the vt100 translations (Debian #723573).</li> 5750 5751 <li>add a few paragraphs to manpage explaining the implications 5752 of xterm's reliance on X Toolkit for command-line parsing.</li> 5753 5754 <li>modify cursor-theme logic to check if the environment 5755 variable <code>XCURSOR_THEME</code> is set to a nonempty value 5756 before constructing a dummy them (prompted by similar check 5757 added in OpenBSD CVS).</li> 5758 5759 <li>add check for a case where TrueType bold font is missing a 5760 glyph where the non-bold font has it. Temporarily switch to the 5761 non-bold font to draw the glyph (report by David 5762 Demelier).</li> 5763 5764 <li>minor documentation fixes for ctlseqs.ms</li> 5765 5766 <li>only set <code>SHELL</code> environment variable to 5767 programs found in <code>/etc/shells</code> (prompted by 5768 patch/report by Al Poole).</li> 5769 5770 <li>build-fix, when <code>--disable-wide-chars</code> 5771 <code>--disable-boxchar</code> is used (prompted by patch by 5772 Andrey Panov).</li> 5773 </ul> 5774 5775 <h1><a name="xterm_300" id="xterm_300">Patch #300 - 5776 2013/12/03</a></h1> 5777 5778 <ul> 5779 <li>amend workaround for <code>Xcursor</code> library from 5780 <a href="#xterm_298">patch #298</a>; the suggested solution for 5781 Debian #466704 fell afoul of a bug in <code>Xcursor</code> 5782 which treated an empty value for <code>Inherits=</code> as a 5783 valid theme—and resulted in a stack overflow due to 5784 unbounded recursion. Certain environments such as XFCE4 exposed 5785 the bug. A related report in Debian #531679 was closed without 5786 following the recommendation to limit stack recursion in this 5787 library (reported by Sergey V Dyatko, Debian #731269).</li> 5788 </ul> 5789 5790 <h1><a name="xterm_299" id="xterm_299">Patch #299 - 5791 2013/12/01</a></h1> 5792 5793 <ul> 5794 <li>fix regression in line-drawing from <a href= 5795 "#xterm_297">patch #297</a> changes for NRCS exposed by change 5796 to <code>assumeAllChars</code> resource in <a href= 5797 "#xterm_298">patch #298</a> (report by Markus Waldeck).</li> 5798 </ul> 5799 5800 <h1><a name="xterm_298" id="xterm_298">Patch #298 - 5801 2013/11/27</a></h1> 5802 5803 <ul> 5804 <li>quiet a warning about ambiguity when <code>-h</code> 5805 command-line option is parsed, since <code>-help</code> is used 5806 rather than the options mentioned in the message. This warning 5807 was caused by fixes in <a href="#xterm_272">patch 5808 #272</a>.</li> 5809 5810 <li>remove an extra check for keypad-mode which interfered with 5811 the <a href="#xterm_280">patch #280</a> 5812 <code>modifyKeyboard</code> feature for the numeric keypad 5813 (report by David Conners).</li> 5814 5815 <li>change default for <code>assumeAllChars</code> resource 5816 (Debian #725682). There are unresolved issues with Terminus 5817 fonts, e.g., Debian #722017.</li> 5818 5819 <li>add <code>-report-fonts</code> command-line option and 5820 <code>reportFonts</code> resource to optionally report the 5821 fonts which are loaded, and their metrics such as the number of 5822 missing glyphs.</li> 5823 5824 <li>work around <code>Xcursor</code> library to make 5825 <code>pointerColor</code> resource work as documented (Debian 5826 #466704, analysis by Vincent Lefèvre).</li> 5827 5828 <li>amend change from <a href="#xterm_297">patch #297</a> for 5829 ASCII-equivalents to ensure that missing characters which 5830 happen to be double-width are padded to the expected number of 5831 columns. Also, correct the choice between normal/wide Xft fonts 5832 used when checking for missing characters (reported by WU Yue, 5833 Debian #728949, Gentoo #491334).</li> 5834 5835 <li>modify sixel-graphics drawing to account for scrollbar 5836 width (report by Mario Edelmann).</li> 5837 5838 <li>fix remaining issue with <code>DECNRCM</code>; the British 5839 character set was confused with ISO Latin-1 (report by Hayaki 5840 Saito).</li> 5841 5842 <li>build-fix for <code>--disable-boxchars</code> configure 5843 option.</li> 5844 5845 <li>updated configure macros, from ongoing work on lynx and 5846 ncurses.</li> 5847 5848 <li>update config.guess, config.sub</li> 5849 </ul> 5850 5851 <h1><a name="xterm_297" id="xterm_297">Patch #297 - 5852 2013/09/10</a></h1> 5853 5854 <ul> 5855 <li>modify check for missing cells in bitmap font to work 5856 around terminus 10646 encoding, which is mostly missing, add 5857 <code>assumeAllChars</code> resource to provide the older 5858 behavior.</li> 5859 5860 <li>modify macros used to check for missing cells in bitmap 5861 fonts to pick up a long-overlooked improvement made to xfd in 5862 XFree86.</li> 5863 5864 <li>improve workaround for groff versus ASCII-equivalents; 5865 <a href="#xterm_185">patch #185</a> had overlooked Xft 5866 configuration (reported by anonymous user on Arch Linux 5867 forum).</li> 5868 5869 <li>review/extend <code>DECNRCM</code> support (prompted by 5870 report by Hayaki Saito asking about the two "A" codes). 5871 <ul> 5872 <li>make pasting of DECNRCM data work by translating the 5873 pasted data into the selected encoding.</li> 5874 5875 <li>limit mode changes to VT220 and up.</li> 5876 5877 <li>ignore SCS for National Replacement Characters if 5878 <code>DECNRCM</code> is not set.</li> 5879 5880 <li>add tables and logic to decode SCS controls ending with 5881 "%" and one additional character. This expects the parsing 5882 of SCS to VT320.</li> 5883 5884 <li>also added parsing for SCS of DEC Supplemental and DEC 5885 Technical, which are for VT2xx and VT3xx respectively.</li> 5886 5887 <li>implement VT220 Multinational character set "GR" aka 5888 "DEC Supplemental Graphic".</li> 5889 5890 <li>DEC Technical character set based on <a href= 5891 "http://www.vt100.net/charsets/technical.html">vt100.net 5892 description</a>.</li> 5893 5894 <li>implement Portuguese NRC.</li> 5895 5896 <li>provide for temporarily switching to/from NRC mode from 5897 UTF-8 mode when <code>DECNRCM</code> is set or reset.</li> 5898 </ul> 5899 </li> 5900 5901 <li>minor fix to assert's found while testing examples from 5902 <a href="https://gist.github.com/ttdoda">ttdoda's 5903 slrm-test1.txt</a>.</li> 5904 5905 <li>modify <code>DECLRMM</code> to not update the cursor 5906 position (report by Iwamoto Kouichi forwarded by Hayaki 5907 Saito).</li> 5908 5909 <li>modify cursor-position report to take origin-mode into 5910 account (report by Hayaki Saito, see also <a href= 5911 "https://github.com/gnachman/iTerm2/pull/129">iTerm2 pull 5912 request 129</a>).</li> 5913 5914 <li>correct off-by-one comparison in when handling 5915 carriage-return at left margin (patch by Iwamoto Kouichi, 5916 forwarded by Hayaki Saito).</li> 5917 5918 <li>improve handling of <code>faceName</code> resource when a 5919 "size=" property is embedded in it, by using that size to 5920 replace the default <code>faceSize</code> resource. This lets 5921 xterm honor the other faceSize resources (report by Jens 5922 Schweikhardt).</li> 5923 5924 <li>improve OSC 52 selection-data by setting its timestamp 5925 to correspond to the most-recent event received by xterm, to 5926 ensure that calls to <code>XtOwnSelect</code> succeed even if 5927 the selection is manipulated solely through the keyboard 5928 (prompted by patch by Richard Tollerton).</li> 5929 5930 <li>change configure-script defaults for "luit" and 5931 "wide-chars" options to match the values used in the imake 5932 configuration, to lessen user surprise if they are accustomed 5933 to building xterm using imake(report by Andries E 5934 Brouwer).</li> 5935 5936 <li>improve the imake-related configuration's check if xterm is 5937 started in a locale that uses UTF-8 encoding. Before, this 5938 checked the locale settings only for "UTF-8", now it checks 5939 ignoring case for "UTF-8" and "UTF-8" (report by Andries E 5940 Brouwer).</li> 5941 </ul> 5942 5943 <h1><a name="xterm_296" id="xterm_296">Patch #296 - 5944 2013/07/10</a></h1> 5945 5946 <ul> 5947 <li>improve experimental sixel feature (Ross Combs).</li> 5948 5949 <li>modify delimiter in configure macro used to add a library 5950 after a given library to avoid confusion with <code>-Wl</code> 5951 pass-through options to linker (NetBSD #48031).</li> 5952 5953 <li>fix quoting in expression used to trim extra libraries from 5954 <a href="#xterm_295">patch #295</a> changes (report by Thomas 5955 Klausner).</li> 5956 </ul> 5957 5958 <h1><a name="xterm_295" id="xterm_295">Patch #295 - 5959 2013/07/06</a></h1> 5960 5961 <ul> 5962 <li>adjust order of libraries to work around incomplete symbol 5963 resolution when using <code>--as-needed</code> option 5964 (ArchLinux #36047).</li> 5965 5966 <li>minor fix for <code>plink.sh</code>, for IRIX64.</li> 5967 </ul> 5968 5969 <h1><a name="xterm_294" id="xterm_294">Patch #294 - 5970 2013/07/05</a></h1> 5971 5972 <ul> 5973 <li>add note in ctlseqs.ms for CPR response pointing out a 5974 potential point of confusion with the string sent by a modified 5975 F1 key (suggested by Bram Moolenaar).</li> 5976 5977 <li>improve <code>plink.sh</code> by checking if the linker 5978 supports the <code>--as-needed</code> option (suggested by 5979 David Philippi).</li> 5980 5981 <li>improve clearing for private mode 1049 when switching to 5982 the alternate screen (Debian #711758).</li> 5983 5984 <li>amend fix from <a href="#xterm_292">patch #292</a> by 5985 removing now-unneeded chunk which introduced problem in 5986 selection (Debian #714527).</li> 5987 5988 <li>add definition to optionally override compiled-in class for 5989 xterm from makefile, needed for test-packages.</li> 5990 5991 <li>add configure option 5992 <code>--enable-sixel-graphics</code></li> 5993 5994 <li>add experimental support for sixel graphics (Ross 5995 Combs).</li> 5996 </ul> 5997 5998 <h1><a name="xterm_293" id="xterm_293">Patch #293 - 5999 2013/05/27</a></h1> 6000 6001 <ul> 6002 <li>modify sample xterm.spec to use newer icon</li> 6003 6004 <li>add configure option <code>--with-icon-symlink</code> to 6005 work around systems which map icon requests for to a single 6006 "xterm" icon, but neglect to install the icon needed for window 6007 decorations (report by H Merijn Brand).</li> 6008 6009 <li>improve parameterizing of sample xterm.spec</li> 6010 6011 <li>amend fix for printer from <a href="#xterm_280">patch 6012 #280</a>, removing a reset of the signal handler for 6013 <code>SIGCHLD</code> (report by Joe Julian).</li> 6014 6015 <li>set environment variable <code>XTERM_FILTER</code> if a 6016 locale-filter is used.</li> 6017 6018 <li>enable <code>DEBUG</code> logic when 6019 <code>--enable-trace</code> configure option is given.</li> 6020 6021 <li>improve description of <code>initialFont</code>, 6022 <code>set-vt-font</code> and <code>set-tex-text</code> in 6023 manpage (Debian #707899).</li> 6024 6025 <li>fix regression from <a href="#xterm_292">patch #292</a>; 6026 selecting a word that ended at the right margin without 6027 wrapping would not select the last cell (report by Christian 6028 Weisgerber).</li> 6029 </ul> 6030 6031 <h1><a name="xterm_292" id="xterm_292">Patch #292 - 6032 2013/04/25</a></h1> 6033 6034 <ul> 6035 <li>add limit-check when double-click selects a word; if the 6036 saved-lines were scrolled back and the word selected wrapped at 6037 the screen's lower right corner, an assertion was triggered 6038 (patch by Taketo Kabe).</li> 6039 6040 <li>correct limit-check in <code>unsaveEditBufLines</code>, 6041 fixing a case where enlarging the terminal size could show a 6042 blank line where there actually is available text (patch by 6043 Bertram Felgenhauer).</li> 6044 6045 <li>add <code>PasteControls</code> feature to 6046 <code>allowWindowOps</code> which by default disallows pasting 6047 control characters other than formatting such as carriage 6048 return (discussion with Hayaki Saito).</li> 6049 6050 <li>fix typo in ctlseqs.ms for DECRQM response (patch by 6051 Emanuele Giaquinta).</li> 6052 6053 <li>update default shown in configure <code>--help</code> 6054 message for <code>--with-terminal-id</code> option (patch by 6055 Andres Perera).</li> 6056 6057 <li>rename script/preprocessor variables used for substituting 6058 the <code>backarrowKey</code> default value for consistency 6059 (patch by Andres Perera).</li> 6060 6061 <li>set umask to 077 before creating debugging-trace 6062 files.</li> 6063 6064 <li>add configure option <code>--disable-openpty</code> to 6065 control whether openpty() may be used in preference to 6066 posix_openpt().</li> 6067 6068 <li>improve workaround from <a href="#xterm_279">patch #279</a> 6069 for BSD systems which do not complete initialization until both 6070 sides of the pseudoterminal are opened, by preferring openpty() 6071 function over posix_openpt() when available (report by 6072 Christian Weisgerber).</li> 6073 </ul> 6074 6075 <h1><a name="xterm_291" id="xterm_291">Patch #291 - 6076 2013/02/26</a></h1> 6077 6078 <ul> 6079 <li>add validity check for xterm widget parameter to 6080 <code>AlternateScroll</code> function, needed to handle wheel 6081 mouse events in the scrollbar area since <a href= 6082 "#xterm_282">patch #282</a> changes which introduced 6083 <code>alternateScroll</code> feature (Redhat #874327).</li> 6084 </ul> 6085 6086 <h1><a name="xterm_290" id="xterm_290">Patch #290 - 6087 2013/02/12</a></h1> 6088 6089 <ul> 6090 <li>revert of <a href="#xterm_282">patch #282</a> change was 6091 incomplete (report by Jim Reisert).</li> 6092 6093 <li>fix typo in manpage (report by Vincent 6094 Lefèvre).</li> 6095 </ul> 6096 6097 <h1><a name="xterm_289" id="xterm_289">Patch #289 - 6098 2013/02/08</a></h1> 6099 6100 <ul> 6101 <li>revert the <a href="#xterm_282">patch #282</a> change which 6102 restored "lost" text after shrinking/growing the screen size. 6103 If the screen was updated between the two resizing operations, 6104 unexpected text might be shown at the end (report/testcase by 6105 Joe Peterson).</li> 6106 6107 <li>reverse the arrow-keys sent for 6108 <code>alternateScroll</code> to match the usage in browsers 6109 (suggested by Dieter Roelants).</li> 6110 6111 <li>modify mouse reports to consistently indicate motion events 6112 whether or not a button is pressed. Old behavior (since 6113 <a href="#xterm_127">patch #127</a> modified encoding for wheel 6114 mouse) showed only that the button was released if no button 6115 had been pressed (report by Andy Koppe).</li> 6116 6117 <li>correct and improve behavior for SGR 1006 mouse protocol on 6118 button release in any-event mode. Initial implementation in 6119 <a href="#xterm_277">patch #277</a> left internal state showing 6120 the last button pressed when reporting motion events. It now 6121 keeps track of all buttons which have been pressed and 6122 released, showing the lowest remaining button by number in the 6123 response (reports by Hayaki Saito, Andy Koppe).</li> 6124 6125 <li>fix inconsistency between <code>TermColors</code> and 6126 <code>OscTextColors</code> enums which interchanged values for 6127 tektronix cursor color and highlight foreground in control 6128 sequences in <a href="#xterm_225">patch #225</a> (report/patch 6129 by Peder Stray).</li> 6130 6131 <li>fix inconsistent use of noreturn-attribute in 6132 <code>Exit</code> function which interfered with clang 6133 --analyze.</li> 6134 6135 <li>remove incorrect <code>free</code> used in computation of 6136 <code>XTERM_SHELL</code> variable, from Coverity fixes in 6137 <a href="#xterm_288">patch #288</a> (FreeBSD #175782).</li> 6138 6139 <li>add <code>--with-valgrind</code> option to configure script 6140 for consistency with my other programs.</li> 6141 6142 <li>update table of ambiguous width characters in wcwidth.c 6143 based on Unicode 6.2.0</li> 6144 6145 <li>update table of combining characters in wcwidth.c based on 6146 Unicode 6.2.0</li> 6147 6148 <li>update precompose.c based on Unicode 6.2.0</li> 6149 </ul> 6150 6151 <h1><a name="xterm_288" id="xterm_288">Patch #288 - 6152 2013/01/09</a></h1> 6153 6154 <ul> 6155 <li>fix a special case in <code>ShowCursor</code> where the 6156 foreground and background colors of the current position are 6157 the same. In that case, choose the further of the window's 6158 foreground and background colors for the cursor color.</li> 6159 6160 <li>modify <code>alternateScroll</code> feature added in 6161 <a href="#xterm_282">patch #282</a> to use either 6162 <code>CSI</code> or <code>SS3</code> according to the cursor 6163 keys application mode setting, to simplify using it in vi, etc. 6164 (suggested by Dietar Roelants).</li> 6165 6166 <li>revise manpage for <code>resize</code> to clarify the 6167 changes which <code>resize</code> may make to the terminal 6168 settings as well as to the terminal itself.</li> 6169 6170 <li>remove code such as <code>struct ttysize</code>, used for 6171 SunOS 3 and 4.</li> 6172 6173 <li>modify configure script and makefile to check for 6174 <code>groff</code> and suppress groff-specific rules if groff 6175 is not found.</li> 6176 6177 <li>modify ctlseqs.ms and makefile to work around bugs in 6178 <code>grohtml</code> which cause ".png" files to be truncated 6179 when producing html documentation.</li> 6180 6181 <li>modify suffix rules for "make docs" to make the names of 6182 the generated ".png" files predictable, helping to work around 6183 longstanding problems with this feature of groff—none of 6184 its releases work for <em>all</em> of xterm's tables..</li> 6185 6186 <li>correct typo in ctlseqs.ms for DECIC and DECDC; the 6187 character preceding the final "<code>~</code>" is an ASCII 6188 single-quote "<code>'</code>" rather than a space (report by 6189 Paul LeoNerd Evans).</li> 6190 6191 <li>update CF_GCC_VERSION macro, handling both Debian and 6192 Darwin.</li> 6193 6194 <li>improve configure script checks for the 6195 <code>--with-desktop-category</code> option. After <a href= 6196 "#xterm_280">patch #280</a> changes, if no value was given for 6197 this option, and no existing desktop files found for 6198 comparison, the incorrect "auto" value was passed into the 6199 generated desktop file (report by Julien Cristau).</li> 6200 6201 <li>modify sample build-scripts to disable check for 6202 <code>imake</code> due to code-rot in Xorg.</li> 6203 6204 <li>add <code>-v</code> command-line option to 6205 <code>resize</code>, reporting the same version string as 6206 <code>xterm</code> and the two shell-wrappers.</li> 6207 6208 <li>make name-transformation apply to other occurrences of 6209 <code>resize</code>, other manpages.</li> 6210 6211 <li>special-case the name-transformation in xterm's manpage in 6212 the NAME section so that the result works with 6213 <code>makewhatis</code> (report by Julien Cristau).</li> 6214 6215 <li>modify install-rules for manpages to put each program's 6216 respective transformed name into the header rather than 6217 xterm's.</li> 6218 6219 <li>remove deprecated files: proto.h, os2main.c</li> 6220 6221 <li>minor fixes based on Coverity scan, including: 6222 <ul> 6223 <li>correct caching of Atom value for the font menu's 6224 "Selection" entry.</li> 6225 6226 <li>ensure that utmp/utmpx calls do not depend upon 6227 trailing nulls in the <code>ut_id</code> and 6228 <code>ut_line</code> values.</li> 6229 </ul> 6230 </li> 6231 </ul> 6232 6233 <h1><a name="xterm_287" id="xterm_287">Patch #287 - 6234 2012/11/25</a></h1> 6235 6236 <ul> 6237 <li>fix a case where in_put() loop could continue when it has 6238 found an X event rather than the pty, causing the pty-read to 6239 be delayed (patch by Balazs Kezes).</li> 6240 6241 <li>add option to <code>pointerMode</code> resource and 6242 corresponding control sequences to allow text-cursor to remain 6243 hidden if the pointer leaves/enters the window via accelerator 6244 keys. Ordinary motion within the window restores the pointer 6245 (prompted by patch by Balazs Kezes).</li> 6246 6247 <li>remove special case of modifiers for the 6248 <code>Mode_switch</code> and <code>XK_ISO_Level3_Shift</code> 6249 from <a href="#xterm_223">patch #223</a>. Verified that the 6250 conflict which this was intended to resolve does not happen for 6251 normal compose- or modeswitch-handling (prompted by patch by 6252 Balazs Kezes, Debian #638694).</li> 6253 6254 <li>modify the handling of focus-change events to ignore those 6255 whose detail is <code>NotifyPointer</code>, since those are 6256 sent in addition to focus-change events directed to the old/new 6257 windows having focus. In particular, this prevents the 6258 urgency-hint from being reset inadvertently (prompted by patch 6259 by Balazs Kezes).</li> 6260 6261 <li>modify description of <code>iconName</code> in manpage to 6262 make it clearer that this resource does not specify the 6263 filename of an icon (discussion with Ian Collier).</li> 6264 6265 <li>modify <code>iconHint</code> resource to allow suppressing 6266 the built-in icon by setting this to "none" (discussion with 6267 Ian Collier).</li> 6268 6269 <li>make <code>-iconic</code> option work with the toolbar 6270 configuration.</li> 6271 6272 <li>correct initialization of window manager hints used to set 6273 the icon-pixmap. That detail from <a href="#xterm_282">patch 6274 #282</a> overwrote state used to control the 6275 <code>-iconic</code> command-line option (report by Ian 6276 Collier).</li> 6277 6278 <li>fix paste64 feature for the case where the selection comes 6279 from the current terminal. The selection callback can happen 6280 after the reply is partly built, making it necessary to flush 6281 the reply-buffer to keep things in the proper order (report by 6282 Ailin Nemui).</li> 6283 6284 <li>reject command-line options which are longer than the 6285 options in xterm's table, to avoid mismatches (Redhat 6286 #875305).</li> 6287 6288 <li>correct attribution for <a href="#xterm_282">patch #282</a> 6289 changes.</li> 6290 </ul> 6291 6292 <h1><a name="xterm_286" id="xterm_286">Patch #286 - 6293 2012/10/29</a></h1> 6294 6295 <ul> 6296 <li>fix <code>minstall.in</code> to work with "make docs" rule, 6297 so that patch number appears in the corresponding generated 6298 documentation.</li> 6299 6300 <li>modify <code>minstall.in</code> to keep the name shown in 6301 the heading consistent with any renaming, e.g., for 6302 test-builds.</li> 6303 6304 <li>check for misconfigured <code>printerCommand</code> 6305 resource on the first use, warn and disable it if it does not 6306 specify an executable command (Debian #691642).</li> 6307 6308 <li>improve check for window-manager name needed to establish 6309 usable default for activeIcon resource. This works around a 6310 scenario where <code>gdm</code> does incomplete cleanup, 6311 leaving window properties that refer to windows which no longer 6312 exist (Redhat #869959).</li> 6313 </ul> 6314 6315 <h1><a name="xterm_285" id="xterm_285">Patch #285 - 6316 2012/10/23</a></h1> 6317 6318 <ul> 6319 <li>add/adapt FreeBSD ports files for test-building.</li> 6320 6321 <li>modify <code>minstall.sh</code> to use the patch-number and 6322 date in the manpage footer.</li> 6323 6324 <li>add check for failure to allocate the fg/bg colors at 6325 startup, e.g., misconfiguration. Work around by setting both to 6326 the default colors (suggested by Scott Bertilson).</li> 6327 6328 <li>amend change for <a href="#xterm_280">patch #280</a> which 6329 added <code>modifyKeyboard</code>, to make 6330 <code>modifyOtherKeys</code> work (report by Ailin Nemui).</li> 6331 6332 <li>add <code>query-colors.pl</code> example for 6333 OSC 4.</li> 6334 6335 <li>correct mis-applied fix for minstall.sh (report by Miroslav 6336 Lichvar).</li> 6337 </ul> 6338 6339 <h1><a name="xterm_284" id="xterm_284">Patch #284 - 6340 2012/10/14</a></h1> 6341 6342 <ul> 6343 <li>amend configurability changes for icons from <a href= 6344 "#xterm_283">patch #283</a>, moving the new functionality to 6345 the <code>iconHint</code> resource to avoid conflict with 6346 existing uses of the <code>iconName</code> resource in the 6347 <code>Shell</code> widget (report by Emanuel Haupt).</li> 6348 6349 <li>fix documentation errata reported by Miroslav Lichvar: 6350 <ul> 6351 <li>correct manpage default for <code>allowTcapOps</code> 6352 (see <a href="#xterm_243">patch #243</a></li> 6353 6354 <li>modify documentation for configure 6355 <code>--enable-backarrow-key</code> to match the script 6356 (see <a href="#xterm_280">patch #280</a>).</li> 6357 6358 <li>fix typo in <code>minstall.sh</code> in <a href= 6359 "#xterm_283">patch #283</a>, which made the leading-cap 6360 "Xterm" become "xterm" (patch by Miroslav).</li> 6361 </ul> 6362 </li> 6363 6364 <li>fix two typos in configure.in from <a href= 6365 "#xterm_283">patch #283</a> changes; one broke the 6366 <code>--regex</code> configure option (report by H Merijn 6367 Brand).</li> 6368 </ul> 6369 6370 <h1><a name="xterm_283" id="xterm_283">Patch #283 - 6371 2012/10/09</a></h1> 6372 6373 <ul> 6374 <li>modify makefile and script to generate appropriate renaming 6375 s/xterm/xterm-dev/ for test-package's manpage.</li> 6376 6377 <li>improve makefile rules for installing/uninstalling pixmap 6378 files, to include the newer mini- and filled- variants.</li> 6379 6380 <li>clarify change in manpage regarding <a href= 6381 "#xterm_282">patch #282</a> change to always set a 6382 window-decoration icon, even if <code>iconName</code> is not 6383 set.</li> 6384 6385 <li>add a fourth flavor of window-decoration icons, 6386 "filled-xterm" for a monochrome xterm with filled 6387 interior.</li> 6388 6389 <li>use shape-mask to improve contrast of the window-decoration 6390 icons.</li> 6391 6392 <li>minor changes to icon colors to improve contrast on 6393 bright-mud backgrounds.</li> 6394 6395 <li>drop configure checks for memmove versus bcopy, and 6396 strerror function; all currently tested platforms support 6397 these.</li> 6398 6399 <li>cleanup configure macros, as done in byacc 20121003.</li> 6400 6401 <li>improve configurability of the built-in icon selectable via 6402 the <code>iconName</code> resource.</li> 6403 6404 <li>update config.guess, config.sub</li> 6405 </ul> 6406 6407 <h1><a name="xterm_282" id="xterm_282">Patch #282 - 6408 2012/09/28</a></h1> 6409 6410 <ul> 6411 <li>improve configure check for 6412 <code>XkbKeycodeToKeysym</code>, fixing a regression on some 6413 older systems in the <a href="#xterm_280">patch #280</a> 6414 changes.</li> 6415 6416 <li>add clarification in manpage for 6417 <code>alwaysBoldMode</code> and <code>veryBoldColors</code> 6418 resources (prompted by Derek Martin question about using the 6419 former with TrueType fonts).</li> 6420 6421 <li>add <code>alternateScroll</code> resource and corresponding 6422 control sequences which modify the <code>scroll-forw</code> and 6423 <code>scroll-back</code> actions: when the alternate screen is 6424 displayed, wheel mouse up/down will send cursor keys (Debian 6425 #683942).</li> 6426 6427 <li>improve rendering for the case when a Unicode character is 6428 absent in the bold font but present in the normal font by 6429 temporarily falling back to the normal font (Debian #359006, 6430 Debian #408666).</li> 6431 6432 <li>provide configure option 6433 <code>--enable-double-buffer</code> and ifdef's to allow 6434 comparisons with/without double-buffering. The default uses 6435 normal buffering.</li> 6436 6437 <li>add feature to optionally scroll current page before 6438 clearing, controlled by resource setting 6439 <code>cdXtraScroll</code> (prompted by patch by Balazs 6440 Kezes):</li> 6441 6442 <li>integrated patches from Arch Linux forum posting (patches 6443 by Balazs Kezes): 6444 <ul> 6445 <li>modify reallocation limit of line-data when resizing 6446 screen so that "lost" text will be restored if the screen 6447 is first shrunk and then grown.</li> 6448 6449 <li>modify output to use double-buffering to reduce 6450 flicker.</li> 6451 </ul> 6452 </li> 6453 6454 <li>modify <code>scroll-lock</code> action to handle 6455 on/off/toggle keywords like other actions. Previously the 6456 optional parameter was interpreted as an integer.</li> 6457 6458 <li>extend <code>DECSCUSR</code> to provide a way to set the 6459 cursor to a vertical bar (patch by Paul Bolle).</li> 6460 6461 <li>add <code>-8</code>, <code>-c</code>, <code>-d</code> and 6462 <code>-u</code> options to <code>88colors2.pl</code> and 6463 <code>256colors2.pl</code> scripts. No current terminal 6464 emulator recognizes C1 controls while handling UTF-8 6465 encoding—see notes in <a href="#xterm_119">patch #119</a> 6466 and <a href="#xterm_109">patch #109</a> regarding 6467 <code>utf8controls</code>—but the <code>-u</code> and 6468 <code>-8</code> options are useful for demonstrating this 6469 point.</li> 6470 6471 <li>improve speed when changing color palettes using OSC 6472 controls by deferring repaint while followup controls might be 6473 additional color palette changes.</li> 6474 6475 <li>modify <code>SGR 38</code> and 6476 <code>SGR 48</code> to accept RGB index, matching the 6477 closest entry in xterm's palette.</li> 6478 6479 <li>extend <code>SGR 38</code> and 6480 <code>SGR 48</code> to accept colon as parameter separator 6481 (request by Paul LeoNerd Evans).</li> 6482 6483 <li>modify <code>fullscreen</code> action to allow it to toggle 6484 the full-screen mode rather than only set or unset it (prompted 6485 by Eeri Kask's suggestion to support 6486 <code>_NET_WM_TOGGLE</code>). This implementation does not yet 6487 use <code>_NET_WM_TOGGLE</code>.</li> 6488 6489 <li>add support for <code>_NET_WM_STATE_MAXIMIZED_VERT</code> 6490 and <code>_NET_WM_STATE_MAXIMIZED_HORZ</code> EWMH properties 6491 (suggested by Eeri Kask).</li> 6492 6493 <li>make fullscreen mode work with the tek4014 window. This 6494 change makes only the currently active window to be changed to 6495 fullscreen rather than changing both windows.</li> 6496 6497 <li>modify <code>TekClear</code> function to discard pending 6498 output before clearing the tek4014 display (patch by Kevin 6499 Ryde).</li> 6500 6501 <li>fix <code>deleteIsDEL</code> feature, broken in <a href= 6502 "#xterm_280">patch #280</a> changes (report by Mike Thornburg, 6503 forwarded by Jeremy Huddleston).</li> 6504 6505 <li>fix a special case of wrapping double-width characters 6506 (report/test-case by Ken Winstein).</li> 6507 6508 <li>add <code>E3</code> extended capability to 6509 <code>xterm-basic</code> to match ncurses <a href= 6510 "https://invisible-island.net/ncurses/NEWS.html#t20120728">20120728</a> 6511 patch.</li> 6512 6513 <li>fix incorrect transformation of row-parameter for 6514 <code>ClearCurBackground</code> in <a href="#xterm_279">patch 6515 #279</a> which caused incorrect painting in some scrolling 6516 scenarios (report by Chuck Silvers).</li> 6517 6518 <li>fix typo in manpage description of <code>+maximized</code> 6519 option (Paul Maier).</li> 6520 6521 <li>change default for configure option 6522 <code>--with-xpm</code>, turning it on unless requested 6523 otherwise.</li> 6524 6525 <li>add configure option <code>--with-icon-name</code> which 6526 can be used to override the default icon used in 6527 icon-themes.</li> 6528 6529 <li>extend <code>activeIcon</code> resource to provide 6530 <code>default</code> value which tells xterm to determine the 6531 window manager's name and automatically enable the feature for 6532 fvwm and window maker. The explicit true/false values can be 6533 used to override this behavior.</li> 6534 6535 <li>add "mini" xterm icon, which scales better than the 6536 standard xterm icon, e.g., for the gnome/kde "panel" 6537 feature.</li> 6538 6539 <li>extend <code>iconName</code> resource to search for icon 6540 named according to resource value and use that if found. If not 6541 found, use compiled-in pixmap. Both set the WM_ICON_NAME 6542 property which is used by various window managers, usually for 6543 window decoration.</li> 6544 6545 <li>updated autoconf patch, adding support for --datarootdir, 6546 which changes the default location of manpages.</li> 6547 6548 <li>further improved autoconf macros for configuring icons, 6549 from vile 9.8h</li> 6550 </ul> 6551 6552 <h1><a name="xterm_281" id="xterm_281">Patch #281 - 6553 2012/06/26</a></h1> 6554 6555 <ul> 6556 <li>remove "$(srcdir)/" from install-icon rule to fix builds 6557 when --srcdir configuration option is used.</li> 6558 6559 <li>fix for configure script's search for icon file when it is 6560 not found in the current directory, e.g., when building out of 6561 tree (patch by Thierry Reding).</li> 6562 6563 <li>undo the XK_Home / XK_End change from <a href= 6564 "#xterm_280">patch #280</a> which broke the non-VT220 keyboard 6565 for those keys (report by H Merijn Brand).</li> 6566 </ul> 6567 6568 <h1><a name="xterm_280" id="xterm_280">Patch #280 - 6569 2012/06/24</a></h1> 6570 6571 <ul> 6572 <li>add configure check to work around warning from 6573 desktop-file-install for "Encoding", noting that it emits 6574 deprecation warnings without providing its version 6575 information.</li> 6576 6577 <li>add configure option <code>--with-icon-theme</code> to tell 6578 xterm whether to install into an icon theme, defaulting to 6579 "hicolor" (Redhat #755206, Redhat #799614 and Redhat 6580 #804279).</li> 6581 6582 <li>change <code>--with-icondir</code> to look for "icons" 6583 directory rather than "pixmaps" by default. Add new option 6584 <code>--with-pixmapdir</code> to allow these two uses to be 6585 installed concurrently.</li> 6586 6587 <li>modify configure options <code>--with-app-defaults</code> 6588 and <code>--with-icondir</code> to accept "auto" as value to 6589 look for existing directory from well-known locations.</li> 6590 6591 <li>add missing codes for secondary DA response which tell the 6592 type of terminal as in the primary DA response.</li> 6593 6594 <li>update primary DA response for VT420 to include user 6595 windows and horizontal scrolling.</li> 6596 6597 <li>add <code>modifyKeyboard</code> resource to support 6598 keypad-modifier changes per request by Thomas Wolff.</li> 6599 6600 <li>add XK_Home / XK_End to editing-keypad checks</li> 6601 6602 <li>add back-tab key <code>kB</code> to termcap entries to 6603 match the terminfo.</li> 6604 6605 <li>update terminfo to match corresponding entries in ncurses, 6606 e.g., add <code>XT</code> and adjust <code>sgr</code> string 6607 for xterm-bold entry.</li> 6608 6609 <li>add configure options to predefine the most commonly 6610 customized resources for terminal-settings, use those to 6611 substitute into the manpage the corresponding compiled-in 6612 values: <code>altSendsEscape</code>, <code>backarrowKey</code>, 6613 <code>backarrowKeyIsErase</code>, <code>deleteIsDEL</code>, 6614 <code>metaSendsEscape</code> (Redhat #819588).</li> 6615 6616 <li>change default emulation level to VT420 (discussion with 6617 Ailin Nemui).</li> 6618 6619 <li>improve logic for DECSCL; <a href="#xterm_279">patch 6620 279</a> partly enforced limitation of this to higher-level 6621 emulations. This patch finishes that change.</li> 6622 6623 <li>improve check for base of combining characters, preventing 6624 combination when cursor movement has intervened. Mosh's webpage 6625 gives two different examples of this, with other causes 6626 ascribed to the behavior.</li> 6627 6628 <li>modify IL/DL to set cursor to first column on row for 6629 better VT102/VT220 compatibility (prompted by code review of 6630 mosh).</li> 6631 6632 <li>separate state-table entries for DECSC/DECRC from the 6633 ANSI.SYS save/restore cursor, since the latter conflicts with 6634 DECSLRM when DECLRMM is enabled since <a href= 6635 "#xterm_279">patch #279</a> (report/analysis by Ailin 6636 Nemui).</li> 6637 6638 <li>fixes to avoid using <code>SIGCHLD</code> handler of main 6639 program in printer's subprocess (report by Joe Julian).</li> 6640 6641 <li>correct restore-parameter for mouse-modes from <a href= 6642 "#xterm_279">patch #279</a> changes.</li> 6643 6644 <li>add null-pointer checks to input-method caching added in 6645 <a href="#xterm_277">patch #277</a> to fix a problem in the 6646 exposure code, when deselecting a window (report by Kriston 6647 Rehberg).</li> 6648 6649 <li>unset <code>DESKTOP_STARTUP_ID</code> environment variable 6650 to lessen confusion on the part of GTK applications which use 6651 the variable without checking it (report by John Little).</li> 6652 </ul> 6653 6654 <h1><a name="xterm_279" id="xterm_279">Patch #279 - 6655 2012/05/10</a></h1> 6656 6657 <ul> 6658 <li>fill in missing cases in the save/restore modes feature 6659 (report by Thomas Wolff).</li> 6660 6661 <li>add check to ensure that combining characters are 6662 precomposed in the order given (report/analysis by Andries E 6663 Brouwer).</li> 6664 6665 <li>improve workability check for posix_openpt(), to take into 6666 account BSD systems which do not complete initialization until 6667 both sides of the pseudoterminal are opened (report by 6668 Christian Weisgerber).</li> 6669 6670 <li>amend fix for Debian #650291 in <a href="#xterm_277">patch 6671 #277</a> changes to account for different data returned by 6672 vnc4server (Debian #670638).</li> 6673 6674 <li>add check in DECCRA operation to make copies of blinking 6675 text also blink by updating a line-level flag.</li> 6676 6677 <li>modify rectangle operations to work with DECOM.</li> 6678 6679 <li>modify DECSERA to use the current protected state rather 6680 than preserving it.</li> 6681 6682 <li>add <code>precompose</code> resource to allow storing 6683 character data in Normalized Form D as described in <a href= 6684 "http://unicode.org/reports/tr15/">http://unicode.org/reports/tr15/</a> 6685 (report/discussion with Andries E Brouwer).</li> 6686 6687 <li>modify CBT, other ISO-6429 controls which are used by VT520 6688 to work with DECOM.</li> 6689 6690 <li>add HPR and VPR controls, ISO 6429 cursor movement used in 6691 VT520.</li> 6692 6693 <li>remove "linux" restriction for IUTF8 ifdef in main.c 6694 (prompted by Matthew Dempsky posting on 6695 mailing.openbsd.tech).</li> 6696 6697 <li>implement the remaining VT420-level device status 6698 reports.</li> 6699 6700 <li>change DECXCPR to return page 1, rather than 0.</li> 6701 6702 <li>improve VT-level checks on reporting functions, such as 6703 DECXCPR.</li> 6704 6705 <li>change limit on <code>decTerminalID</code> to 525.</li> 6706 6707 <li>fixes to improve vttest vt52 screen when running as a 6708 VT420: 6709 <ul> 6710 <li>add checks for some VT2xx and up controls for 6711 consistency: DECSCL, S1C8T, S1C7T.</li> 6712 6713 <li>modify DECRQSS return for DECSCL to only return that 6714 when running as VT2xx and up.</li> 6715 6716 <li>when exiting from VT52-mode, resume in VT100 level 6717 rather than the level before starting VT52-mode.</li> 6718 </ul> 6719 </li> 6720 6721 <li>implement DECLRMM, DECSLRMM and DECNCSM (prompted by 6722 discussions with Ailin Nemui and Paul LeoNerd Evans). This 6723 modifies several controls to obey top/bottom and left/right 6724 margins.</li> 6725 6726 <li>correct macro definition used for testing modes used in 6727 ANSI/DEC request-mode controls introduced in <a href= 6728 "#xterm_262">patch #262</a>.</li> 6729 6730 <li>modify <code>x_getlogin</code> to check $LOGNAME and $USER 6731 before fallback to <code>getlogin</code>, so that user's choice 6732 for these variables can be carried forward to the xterm process 6733 (Debian #611487).</li> 6734 6735 <li>document DECSCUSR response for DECRQSS in ctlseqs.ms</li> 6736 6737 <li>add <code>zIconTitleFormat</code> resource to allow 6738 customizing the "*** " prefixed to the icon title when the 6739 <code>zIconBeep</code> feature is activated (request by Thomas 6740 Adam).</li> 6741 6742 <li>modify DECSCUSR to update the same internal variable as 6743 RM/SM 12, and document in manpage the two variables used for 6744 controlling blinking cursor (report by Paul LeoNerd 6745 Evans).</li> 6746 6747 <li>correct response data for DECSCUSR in reply for DECRQSS 6748 response, which had inverted the blink-value (reports by Ailin 6749 Nemui, Paul LeoNerd Evans).</li> 6750 6751 <li>add a null-pointer check in <code>OkPasswd</code> macro to 6752 fix a problem in <code>resize</code> with Fedora 17 and a 6753 serial console (report/patch by Daniel Drake).</li> 6754 6755 <li>add workaround for Mac OS X, which loses the window size of 6756 a pseudo-terminal when the tty device is opened 6757 (report/analysis by Egmont Koblinger).</li> 6758 6759 <li>updated configure check for workable 6760 <code>posix_openpt</code> versus <code>grantpt</code>, from 6761 <code>luit</code> fixes.</li> 6762 6763 <li>modify DECIC/DECDC/DECBI/DECFI implemented in <a href= 6764 "#xterm_277">patch #277</a> to enable them only in VT4xx mode 6765 and up (report by Ailin Nemui).</li> 6766 6767 <li>update config.guess, config.sub</li> 6768 </ul> 6769 6770 <h1><a name="xterm_278" id="xterm_278">Patch #278 - 6771 2012/01/18</a></h1> 6772 6773 <ul> 6774 <li>correct initialization for <code>eightBitMeta</code> 6775 resource (FreeBSD #164101).</li> 6776 6777 <li>make special check for Darwin 9 (and lower) to <em>not</em> 6778 use <code>posix_openpt</code> (report by Christian Ebert).</li> 6779 6780 <li>minor fixes (adding ".ne" directives) to reduce the cases 6781 where groff's utility for generating images for tables dumps 6782 core. Most versions of groff (I've found 1.19.2 to be the most 6783 stable) dump core when attempting to report that there are too 6784 few lines on a page for a table to be shown.</li> 6785 </ul> 6786 6787 <h1><a name="xterm_277" id="xterm_277">Patch #277 - 6788 2012/01/07</a></h1> 6789 6790 <ul> 6791 <li>remove special case for ISC pseudo-terminals which attempts 6792 to open the pty in two different ways.</li> 6793 6794 <li>move call to <code>grantpt</code> before asking utempter to 6795 add a record, to work with kFreeBSD which does not update the 6796 terminal's ownership until this point (Debian #652907).</li> 6797 6798 <li>document limitation of XIM interface in manpage (Debian 6799 #230787).</li> 6800 6801 <li>cleanup error reporting with new xtermWarning 6802 function.</li> 6803 6804 <li>add configure option <code>--disable-selection-ops</code> 6805 to make the new actions optional.</li> 6806 6807 <li>add four new actions for making the selection or data 6808 directly copied from the screen (prompted by discussion in 6809 Debian #637001, as well as report by Arjen van Tol): 6810 <ul> 6811 <li>exec-formatted</li> 6812 6813 <li>exec-selectable</li> 6814 6815 <li>insert-formatted</li> 6816 6817 <li>insert-selectable</li> 6818 </ul> 6819 </li> 6820 6821 <li>add <code>visualBellLine</code> resource to allow 6822 <code>visualBell</code> to flash only the current line 6823 (prompted by patch by Gertjan Halkes).</li> 6824 6825 <li>add <code>eightBitMeta</code> resource to control the 6826 features which modify or interpret the eighth bit of a key when 6827 the meta modifier key is pressed (prompted by Debian 6828 #326200).</li> 6829 6830 <li>improve discussion of <code>eightBitInput</code> in the 6831 manpage (prompted by Debian #326200).</li> 6832 6833 <li>correct logic for <code>alt-sends-escape</code> action, 6834 overlooked when implementing <code>altSendsEscape</code> 6835 resource, which still used <code>eightBitInput</code> resource 6836 value.</li> 6837 6838 <li>add a workaround for <code>XAllocColor()</code>, which does 6839 not actually allocate "a read-only colormap entry corresponding 6840 to the closest RGB value supported by the hardware", but rather 6841 a rough approximation (Debian #650291).</li> 6842 6843 <li>undo parameter checks for <code>RequestResize()</code> 6844 added in <a href="#xterm_251">patch #251</a> and amended in 6845 <a href="#xterm_270">patch #270</a>, because zeros also are 6846 special cases (report by John S Urban).</li> 6847 6848 <li>modify some test-scripts to use <code>/bin/echo</code> 6849 rather than the shell's possibly-builtin <code>echo</code>, to 6850 work around broken configuration on Mac OS X, i.e., neither 6851 honoring the option nor flagging an error.</li> 6852 6853 <li>add SGR 1006, as a better technical solution than SGR 1015: 6854 <ul> 6855 <li>the responses will not be confused with line-deletion 6856 and scrolling controls.</li> 6857 6858 <li>the button encoding is a little simpler, since it does 6859 not add an unnecessary 32 because the integer parameter 6860 does not have to be represented as a printable 6861 character.</li> 6862 6863 <li>the control responses for pressing and releasing a 6864 mouse button differ, allowing an application to tell which 6865 button was released.</li> 6866 </ul> 6867 6868 <p>Besides these improvements, in discussion, it was noted 6869 that urxvt's implementation of 1005 is incorrect, relying 6870 upon a locale that provides UTF-8 encoding. In contrast, 6871 vttest demonstrates a correct decoding, independent of 6872 locale.</p> 6873 </li> 6874 6875 <li>add support for urxvt SGR 1015 to address shortcoming of 6876 SGR 1005 with luit (patch by Egmont Koblinger).</li> 6877 6878 <li>add ISO and DEC controls useful for left/right 6879 scrolling.</li> 6880 6881 <li>add some changes for OpenBSD and MirBSD (adapted from patch 6882 by Thorsten Glaser): 6883 <ul> 6884 <li>disable search for non-Unix96 ptys.</li> 6885 6886 <li>fix a gcc warning in 6887 <code>timestamp_filename</code></li> 6888 6889 <li>modify <code>Imakefile</code> to install xterm setgid 6890 to utmp.</li> 6891 </ul> 6892 </li> 6893 6894 <li>add/use/prefer <code>posix_openpt()</code> for opening 6895 pseudo-terminal.</li> 6896 6897 <li>modify special errno handling case in ptydata.c from 6898 <a href="#xterm_158">patch #158</a> to allow for the 6899 possibility that any platform may have special cases where 6900 "/dev/tty" is absent. For example, this can happen in a FreeBSD 6901 jail (patch by David Wolfskill).</li> 6902 6903 <li>add keyboard logic to map shift-tab into XK_ISO_Left_Tab, 6904 which is usually, not always, done by the X keyboard 6905 configuration.</li> 6906 6907 <li>portability fixes for some configure macros: 6908 <code>CF_XOPEN_SOURCE</code></li> 6909 </ul> 6910 6911 <h1><a name="xterm_276" id="xterm_276">Patch #276 - 6912 2011/10/10</a></h1> 6913 6914 <ul> 6915 <li>modify clipping limits for TrueType fonts to account for 6916 the <code>scaleHeight</code> resource setting, to work around 6917 another problem due to recent FreeType changes. In this case, 6918 the <code>DejaVu Sans Mono</code> set to pixelsize=13.5 is 6919 truncated because the font descent is reduced by FreeType to 6920 match an incorrect height metric (report by Adam Lee).</li> 6921 6922 <li>improve recovery when bitmap fonts are not installed, e.g., 6923 so that switching font-sizes works for TrueType fonts.</li> 6924 6925 <li>modify lookup for <code>XTERM_SHELL</code> feature to allow 6926 relative pathnames.</li> 6927 6928 <li>modify abbreviation disambiguation check for command-line 6929 parameters to account for <code>-geometry</code>, whose 6930 parameter may begin with "+" or "-" (report by Scott 6931 Bertilson).</li> 6932 </ul> 6933 6934 <h1><a name="xterm_275" id="xterm_275">Patch #275 - 6935 2011/09/11</a></h1> 6936 6937 <ul> 6938 <li>add <code>ash</code>, <code>zsh</code> to known shells for 6939 <code>resize</code>.</li> 6940 6941 <li>modify <code>resize</code> to reuse the logic from 6942 <code>xterm</code> which determines the actual logon-user's 6943 shell if <code>$SHELL</code> is not set.</li> 6944 6945 <li>revert the <code>unsetenv("SHELL")</code> added in <a href= 6946 "#xterm_272">patch #272</a>.</li> 6947 6948 <li>an <code>unsetenv("SHELL")</code> added in <a href= 6949 "#xterm_272">patch #272</a> to help ensure that 6950 <code>luit</code> would get the user's shell consistently did 6951 not work as expected for cases where multiple names are in the 6952 password-file for a given uid. That was because changes in 6953 <a href="#xterm_157">patch #157</a> to handle this situation 6954 did not take into account that repeated calls to 6955 <code>getpwnam</code> and <code>getpwuid</code> return a 6956 pointer to the same static buffer. Fixed the older logic to 6957 work as intended, by ensuring that the passwd-data from each 6958 call is stored separately (report by Paul Keusemann).</li> 6959 6960 <li>adjust ifdef's for <code>putenv</code> and 6961 <code>unsetenv</code> in case only one of those is provided on 6962 a given platform.</li> 6963 6964 <li>correct comparison used in <code>ExposeContains</code> 6965 macro from <a href="#xterm_274">patch #274</a> changes, to 6966 handle window-dragging (patch by Todd Eigenschink).</li> 6967 </ul> 6968 6969 <h1><a name="xterm_274" id="xterm_274">Patch #274 - 6970 2011/09/05</a></h1> 6971 6972 <ul> 6973 <li>portability fixes for cygwin: do not define 6974 <code>SVR4</code>, and work around nonstandard header 6975 location.</li> 6976 6977 <li>ifdef'd use of <code>unsetenv</code> from <a href= 6978 "#xterm_273">patch #273</a> changes to work with Solaris 9 6979 (report by Waldemar Rachwal).</li> 6980 6981 <li>modify logic for <code>XtAppPending</code> to merge 6982 adjacent <code>Expose</code> and <code>ConfigureNotify</code> 6983 events which are redundant (report by Edward McGuire).</li> 6984 6985 <li>fix an unneeded warning message when <code>-r</code> option 6986 is given.</li> 6987 6988 <li>remove a few redundant entries from table used for helping 6989 abbreviation-checking of command-line options, makes 6990 <code>-geom</code> work again after <a href="#xterm_272">patch 6991 #272</a> changes as an abbreviation of 6992 <code>-geometry</code>.</li> 6993 6994 <li>add <code>scaleHeight</code> resource and command-line 6995 option <code>-sh</code> as workaround for some 6996 font-configurations broken by changes in FreeType 2.4.6 (report 6997 by Miroslav Hodak).</li> 6998 6999 <li>portability fixes for some configure macros: 7000 <code>CF_FUNC_TGETENT</code>, <code>CF_XOPEN_SOURCE</code>, 7001 <code>CF_X_ATHENA_LIBS</code>.</li> 7002 7003 <li>add configure option <code>--with-freetype-config</code> to 7004 improve selection over the plethora of configuration options 7005 which freetype has so far provided.</li> 7006 7007 <li>build-fix for configure <code>--enable-load-vt-fonts</code> 7008 when <code>--enable-widec</code> is not specified.</li> 7009 7010 <li>build-fixes for suppressing various features, needed after 7011 changes in patches 270, 271 and 272 (report by Brian 7012 Lindholm)</li> 7013 </ul> 7014 7015 <h1><a name="xterm_273" id="xterm_273">Patch #273 - 7016 2011/08/25</a></h1> 7017 7018 <ul> 7019 <li>build-fix for out-of-tree "make docs" rule.</li> 7020 7021 <li>correct a typo in <code>x_strdup</code>, from <a href= 7022 "#xterm_198">patch #198</a> changes.</li> 7023 7024 <li>correct initialization for <code>-e</code> option, broken 7025 in <a href="#xterm_272">patch #272</a> changes (report by 7026 Gabriele Balducci).</li> 7027 7028 <li>build-fix for out-of-tree builds to address 7029 <code>minstall</code> script changes in <a href= 7030 "#xterm_272">patch #272</a> (patch by Thierry Reding).</li> 7031 </ul> 7032 7033 <h1><a name="xterm_272" id="xterm_272">Patch #272 - 7034 2011/08/24</a></h1> 7035 7036 <ul> 7037 <li>document limitation of <code>Gtk</code> in connection with 7038 xterm's <code>-into</code> option, in the manpage (Ubuntu 7039 #806969).</li> 7040 7041 <li>improve <code>-into</code> by checking for and using the 7042 size of the window within which xterm is embedded, overriding 7043 other clues.</li> 7044 7045 <li>modify logic for <code>localeFilter</code> resource to 7046 allow that to include command-line options of luit.</li> 7047 7048 <li>improve <code>-into</code> by checking for invalid 7049 window-id, and allowing hexadecimal/decimal/octal values.</li> 7050 7051 <li>improve <code>keepSelection</code>, adding the case where 7052 the highlighting is cleared, overlooked in <a href= 7053 "#xterm_230">patch #230</a> (patch by Marco Peereboom).</li> 7054 7055 <li>improve command-line parsing to make abbreviate options 7056 work consistently across xterm-specific versus standard X 7057 toolkit options, and report cases where an abbreviated option 7058 happens to be ambiguous. In particular, <code>-d</code> now 7059 works as an abbreviation for <code>-display</code>.</li> 7060 7061 <li>fix regression in command-line parsing introduced in 7062 <a href="#xterm_271">patch #271</a> changes for Debian #629358, 7063 (Debian #637910).</li> 7064 7065 <li>split-out new termcap/terminfo building block 7066 <code>xterm+kbs</code> for configurability.</li> 7067 7068 <li>modify <code>terminfo</code> file to reflect changes in 7069 ncurses for <code>xterm-16color</code> and 7070 <code>xterm-256color</code>.</li> 7071 7072 <li>modify <code>minstall.sh</code>, etc., to reflect the 7073 default default class, <code>$TERM</code> and 7074 <code>decTerminalID</code> values.</li> 7075 7076 <li>reword <code>resize</code> manpage to reflect the fact that 7077 <code>$TERMCAP</code> is not set on all systems (patch by Alan 7078 Coopersmith).</li> 7079 7080 <li>work around combined Xaw6/Xaw7 package in DragonFlyBSD 7081 which omits the usual symbolic link to the preferred library 7082 name.</li> 7083 7084 <li>further improve build-fix for termcap systems by checking 7085 for some which are only partial implementations, e.g., termcap 7086 2.08 in CentOS 5.2</li> 7087 </ul> 7088 7089 <h1><a name="xterm_271" id="xterm_271">Patch #271 - 7090 2011/07/14</a></h1> 7091 7092 <ul> 7093 <li>omit permissions adjustments to pty on exit except for 7094 pre-Unix98 ptys, since modern implementations handle this 7095 (report by Sean C Farley).</li> 7096 7097 <li>modify logic for switching fonts between UTF-8 and 7098 non-UTF-8 encoding to not merge the derivable bold-, wide- and 7099 widebold values from the VT100 fonts. Also suppress warning 7100 when not using UTF-8 fonts if wide- and widebold-fonts cannot 7101 be derived or otherwise loaded (report by Werner 7102 Scheinast).</li> 7103 7104 <li>modify menu-creation to suppress entries which will never 7105 be used in the current configuration, rather than simply 7106 disabling them.</li> 7107 7108 <li>add resource <code>printModeImmediate</code> and menu item 7109 to allow print of screen plus saved lines to a file.</li> 7110 7111 <li>add menu item to allow runtime enable/disable of the 7112 <code>printFileOnXError</code> feature.</li> 7113 7114 <li>append a timestamp to filename used in 7115 <code>printFileOnXError</code> feature, and restrict its 7116 permissions (request by Vincent Lefèvre).</li> 7117 7118 <li>add a check when cancelling cursor-blinking, in case the 7119 cursor is blinked off. Fix so that the cursor is repainted 7120 without waiting for other events, e.g., keypress (report by 7121 Ailin Nemui).</li> 7122 7123 <li>add configure <code>--with-app-class</code> option, to 7124 simplify building "xterm-dev" packages with filenames that do 7125 not conflict with conventional "xterm" packages.</li> 7126 7127 <li>corrected logic flow for DECSCL, which prevented the 7128 updated operating level from being reported via DECRQSS (report 7129 by Ailin Nemui).</li> 7130 7131 <li>corrected default for <code>brokenStringTerm</code> 7132 resource to match manpage.</li> 7133 7134 <li>add vttests/dynamic.pl</li> 7135 7136 <li>add runtime check for locale not supported by X libraries, 7137 and fallback to XA_STRING in this case (request by Bryan 7138 Henderson).</li> 7139 7140 <li>fix a special case in configure script after no FreeType 7141 libraries are found. The script was proceeding to check for a 7142 usable configuration.</li> 7143 7144 <li>add <code>xterm+tmux</code> building block to terminfo 7145 (adapted from changes proposed by Ailin Nemui and Nicholas 7146 Marriott).</li> 7147 7148 <li>improve discussion of <code>faceName</code> resource in 7149 manpage (adapted from suggestions by Jens Schweikhardt).</li> 7150 7151 <li>correct mapping of shifted up/down cursor-keys in termcap 7152 function-keys mode, i.e., resource 7153 <code>tcapFunctionKeys</code> (patch by Gertjan Halkes).</li> 7154 7155 <li>update AIX case in <code>CF_XOPEN_SOURCE</code> configure 7156 macro to add release 7.x.</li> 7157 7158 <li>modify ifdef's in <code>xterm_io.h</code> for 7159 <code>__hpux</code> to force that to use the hacked SYSV 7160 support in that file. This fixes a problem with a non-blocking 7161 socket call (patch by Paul Lampert).</li> 7162 7163 <li>improve filtering of desktop category scanning, to exclude 7164 XFCE.</li> 7165 7166 <li>modify configure script to work with systems that have both 7167 ncurses (or other terminfo) as well as a real termcap library, 7168 e.g., Slackware (report by Andrew Watts).</li> 7169 7170 <li>modify configure script to work around special case where 7171 user's environment adds compiler flags to the <code>CC</code> 7172 variable (prompted by report by Paul Lampert).</li> 7173 7174 <li>amend change for Debian #110226 so that "-h" or "-v" 7175 options cause an exit, rather than simply printing to stdout 7176 while the window is displayed (Debian #629358).</li> 7177 7178 <li>add response for <code>DECRQSS</code> which gives the 7179 setting for <code>DECSCUSR</code>.</li> 7180 7181 <li>modify AllocateTermColor() to handle 7182 <code>XtDefaultForeground</code> and 7183 <code>XtDefaultBackground</code>, which are not recognized by 7184 <code>XParseColor</code>. For example, this fixes the use of 7185 OSC 112 when no explicit cursor color was set (report by 7186 Ailin Nemui).</li> 7187 7188 <li>handle special-case of <code>KeyPress</code> translated to 7189 <code>popup-menu</code> action (Ubuntu #756273).</li> 7190 </ul> 7191 7192 <h1><a name="xterm_270" id="xterm_270">Patch #270 - 7193 2011/04/26</a></h1> 7194 7195 <ul> 7196 <li>build-fix, e.g., for using <code>imake</code> on platforms 7197 which use the termcap library.</li> 7198 7199 <li>modify <code>utf8</code> resource to accept a name.</li> 7200 7201 <li>mention default for <code>fontWarnings</code> in manpage 7202 (report by Werner Scheinast).</li> 7203 7204 <li>split "UTF-8" menu entry into "UTF-8 Encoding" and "UTF-8 7205 Fonts" (prompted by discussion with Werner Scheinast).</li> 7206 7207 <li>gray-out font-menu entries when a font fails to load, e.g., 7208 a bitmap font is not installed.</li> 7209 7210 <li>improve behavior when there is no app-defaults file: 7211 <ul> 7212 <li>set the <code>toolBar</code> resource to false</li> 7213 7214 <li>gray-out the font menu entries where no resource is 7215 found.</li> 7216 </ul> 7217 </li> 7218 7219 <li>add configure option <code>--with-desktop-category</code> 7220 to allow customization of the ".desktop" files.</li> 7221 7222 <li>build-fix for the <code>install-desktop</code> 7223 makefile-rule, when the source/build directories differ (patch 7224 by Loïc Minier).</li> 7225 7226 <li>add menu entry and corresponding resource which can be used 7227 to suppress all bold-fonts (discussion with Jan 7228 Engelhardt).</li> 7229 7230 <li>make internal line-size value consistent with allocated 7231 sizes of character and related arrays to ensure that bulk 7232 copying of line data, e.g., in scrolling, accounts for the 7233 padding used for pointer alignment (adapted from patch by 7234 Rajesh Mandalemula, also reported by Ali Bahar).</li> 7235 7236 <li>widen ifdef for screen-resizing logic from <a href= 7237 "#xterm_176">patch #176</a> changes to send 7238 <code>SIGWINCH</code> to process group to include any system 7239 supporting <code>ioctl(*,TIOCGPGRP,*)</code> (prompted by 7240 linux-specific patch in OpenSUSE rpm package).</li> 7241 7242 <li>add <code>printModeOnXError</code> and 7243 <code>printFileOnXError</code> resources, which allow the user 7244 to specify that xterm will write the contents of its screen to 7245 a file if it is exiting due to an X error (Debian 7246 #280457).</li> 7247 7248 <li>restore logic that made reverse-video apply to the 7249 scrollbar's foreground/background, broken in <a href= 7250 "#xterm_158">patch #158</a> (report by Bryan Ischo).</li> 7251 7252 <li>amend some of the window operations parameter-checks added 7253 in <a href="#xterm_251">patch #251</a> for the push/pop title 7254 feature, to allow the parameters used for window resizing to be 7255 -1's, which makes the corresponding values ignored rather than 7256 using the window's maximum width/height (report by Noah 7257 Friedman).</li> 7258 7259 <li>correct order of initialization for 7260 <code>translations</code> vs <code>fullscreen</code> resources 7261 to enable a special case which omits the Alt-Enter translation 7262 when <code>fullscreen</code> is disabled (Debian #612978).</li> 7263 7264 <li>update config.guess, config.sub</li> 7265 </ul> 7266 7267 <h1><a name="xterm_269" id="xterm_269">Patch #269 - 7268 2011/02/19</a></h1> 7269 7270 <ul> 7271 <li>build-fixes for <code>imake</code> (report by Heiko 7272 Berges).</li> 7273 7274 <li>modify autoconf macro CF_PKG_CONFIG to work with 7275 cross-compile environments (patch by Thierry Reding).</li> 7276 7277 <li>modify <code>MapToColorMode()</code> to favor bold over 7278 underline, matching the precedence used before <a href= 7279 "#xterm_252">patch #252</a> (report/analysis by Nicolas 7280 George).</li> 7281 7282 <li>add <code>omitTranslation</code> resource, which can be 7283 used to suppress the default translations for these features: 7284 <ul> 7285 <li>fullscreen</li> 7286 7287 <li>scroll-lock</li> 7288 7289 <li>shift-fonts</li> 7290 7291 <li>wheel-mouse</li> 7292 </ul> 7293 </li> 7294 7295 <li>make the fullscreen feature configurable (Debian #612978) 7296 <ul> 7297 <li>add it to the configurable list 7298 <code>disallowedWindowOps</code>.</li> 7299 7300 <li>add command-line option <code>-fullscreen</code> to 7301 allow the feature to be enabled at startup.</li> 7302 7303 <li>add resource <code>fullscreen</code> to control whether 7304 the feature is active or may be enabled.</li> 7305 </ul> 7306 </li> 7307 7308 <li>modify <code>probe_netwm_fullscreen_capability</code> for 7309 64-bit machines. Contrary to <code>XGetWindowProperty</code> 7310 manpage, that function returns 32-bit data packed as 7311 <code>long</code>'s.</li> 7312 7313 <li>eliminate copy of <code>name</code> resource, which was 7314 otherwise used only to give the terminal-description name for 7315 the tcap-query feature. Use the actual <code>$TERM</code> value 7316 instead, as derived from <code>termName</code> resource, 7317 etc.</li> 7318 7319 <li>eliminate an old inconsistency with error messages, some 7320 used the <code>-name</code> option, while others used 7321 <code>argv[0]</code>. The latter is now used consistently.</li> 7322 7323 <li>improve configure check for rpath-hack, to improve builds 7324 on systems where gcc will not search /usr/local/lib, etc.</li> 7325 7326 <li>build-fix for Xaw3d configuration (report by H Merijn 7327 Brand).</li> 7328 7329 <li>update config.guess, config.sub</li> 7330 </ul> 7331 7332 <h1><a name="xterm_268" id="xterm_268">Patch #268 - 7333 2011/02/10</a></h1> 7334 7335 <ul> 7336 <li>fix an inconsistency of the "Enable Reverse Video" checkbox 7337 in the VT Options menu. This also removes a special case added 7338 in <a href="#xterm_217">patch #217</a> which limited the effect 7339 of the <code>reverseVideo</code> resource (Debian 7340 #603808).</li> 7341 7342 <li>amend decoding of misformed UTF-8 sequences to avoid 7343 absorbing valid characters as documented in Unicode 6.0 section 7344 3.9 (report by Keith Winstein).</li> 7345 7346 <li>do not set urgency hint when window already has focus 7347 (patch by Dimitrios Christidis).</li> 7348 7349 <li>amend extended mouse-coordinate mode from <a href= 7350 "#xterm_262">patch #262</a> changes to include the <em>Cb</em> 7351 button-code, which also may be greater than 127 (report by 7352 Ailin Nemui).</li> 7353 7354 <li>ensure that underline-cursor is visible when an application 7355 happens to set the background color (report by Christian 7356 Weisgerber).</li> 7357 7358 <li>add feature for <a href= 7359 "http://www.davidsimmons.com/soft/xtermhacks/xterm-fullscreen.patch"> 7360 full-screen toggling</a> using either Alt-Enter or a menu 7361 selection (integrated patch by Dave Simmons).</li> 7362 7363 <li>add missing logic to handle reallocation of FIFO index for 7364 the "UTF-8" menu entry (report by David Holland, NetBSD 7365 #44344).</li> 7366 7367 <li>add makefile rules <code>docs-ctlseqs</code>, 7368 <code>docs-xterm</code>, etc.</li> 7369 7370 <li>correct typo in description of DECRPM in control sequences 7371 document (report by Ailin Nemui).</li> 7372 </ul> 7373 7374 <h1><a name="xterm_267" id="xterm_267">Patch #267 - 7375 2010/11/20</a></h1> 7376 7377 <ul> 7378 <li>minor formatting changes to ctlseqs.ms to simplify a script 7379 which extracts the feature information. See the results in 7380 <a href= 7381 "https://invisible-island.net/xterm/xterm.faq.html#compare_versions"> 7382 Comparing versions, by counting controls</a> in the xterm 7383 FAQ.</li> 7384 7385 <li>add <code>docs-clean</code> makefile rule.</li> 7386 7387 <li>add <code>copy-selection</code> action (request by Timo 7388 Juhani Lindfors, Debian #588785).</li> 7389 7390 <li>trim leading/trailing blanks from string used for 7391 "Selection" font-menu data.</li> 7392 7393 <li>trim leading/trailing blanks from color resource 7394 values.</li> 7395 7396 <li>configure script improvements: 7397 <ul> 7398 <li>add workaround for removal of X11 dependency from Xt's 7399 package file (report by Robert Hooker).</li> 7400 7401 <li>add workaround for removal of fontconfig dependency 7402 from Xft's package file (report by Jeremy Huddleston).</li> 7403 7404 <li>add workaround for removal of Xmu dependency from Xaw's 7405 package file (report by Jeremy Huddleston).</li> 7406 7407 <li>improve workaround in <code>CF_X_TOOLKIT</code> macro, 7408 checking for other possible packages where Xt's 7409 dependencies may be given.</li> 7410 7411 <li>prefer <code>${name:=value}</code> to 7412 <code>${name-value}</code>, since recent bash changes break 7413 legacy support for that feature.</li> 7414 </ul> 7415 </li> 7416 </ul> 7417 7418 <h1><a name="xterm_266" id="xterm_266">Patch #266 - 7419 2010/10/24</a></h1> 7420 7421 <ul> 7422 <li>add rpm and dpkg scripts, for testing.</li> 7423 7424 <li>more fixes for Debian #600707 (report by Cyril 7425 Brulebois).</li> 7426 </ul> 7427 7428 <h1><a name="xterm_265" id="xterm_265">Patch #265 - 7429 2010/10/22</a></h1> 7430 7431 <ul> 7432 <li>fix a regression in fontname logic from <a href= 7433 "#xterm_263">patch #263</a> changes (Debian #600707, reported 7434 by Vincent Lefèvre).</li> 7435 7436 <li>revert modification of any-event/any-button protocol from 7437 <a href="#xterm_263">patch #263</a> changes. It interferes with 7438 selection using a shifted mouse button (reports by Neil Bird, 7439 Bram Moolenaar).</li> 7440 </ul> 7441 7442 <h1><a name="xterm_264" id="xterm_264">Patch #264 - 7443 2010/10/14</a></h1> 7444 7445 <ul> 7446 <li>replace a null-pointer check with check for empty string in 7447 <code>xtermOpenFont</code>, to eliminate a warning message from 7448 <a href="#xterm_263">patch #263</a> changes.</li> 7449 7450 <li>build-fix for <a href="#xterm_263">patch #263</a> when 7451 toolbar is not configured (patch by Chris Clayton) (reports by 7452 Robby Workman, David Wood).</li> 7453 </ul> 7454 7455 <h1><a name="xterm_263" id="xterm_263">Patch #263 - 7456 2010/10/13</a></h1> 7457 7458 <ul> 7459 <li>corrected initialization of "misc" resource values, to 7460 ensure that xterm has allocated a copy of strings which may not 7461 have been malloc'd by the X library (Debian #600129).</li> 7462 7463 <li>modify handling of any-event/any-button mouse protocol; it 7464 now is active with any combination of key-modifiers.</li> 7465 7466 <li>add debugging feature <code>showWrapMarks</code>, which 7467 marks lines which xterm knows are wrapped, showing where a 7468 double-click will select past the end of a line.</li> 7469 7470 <li>build-fix to address change in include-guards for 7471 <code>Xlib.h</code> in ongoing Xorg edits (patch by Jeremy 7472 Huddleston).</li> 7473 7474 <li>improve <code>pointerMode</code> by continuing to watch for 7475 motion events after mouse tracking is disabled if the pointer 7476 is hidden (Debian #594856).</li> 7477 7478 <li>further extend initialization for active-icon font to check 7479 if the font was not loaded successfully, to retry with 7480 <code>font1</code>, or as even (if TrueType fonts are used) to 7481 use a TrueType font. The retries are to help with cases as in 7482 <a href="#xterm_241">patch #241</a> where the bitmap fonts are 7483 not available.</li> 7484 7485 <li>fix special case of active-icon used when TrueType font is 7486 specified for the xterm window, from <a href="#xterm_261">patch 7487 #261</a> change. In that case, the default font's size was used 7488 for layout of the active icon's window (Debian #591265).</li> 7489 </ul> 7490 7491 <h1><a name="xterm_262" id="xterm_262">Patch #262 - 2010/8/30</a></h1> 7492 7493 <ul> 7494 <li>fix a case where changing the cursor color via escape 7495 sequences did not immediately update the screen (report by 7496 Andreas Wagner).</li> 7497 7498 <li>implement ANSI and DEC request-mode control sequences. The 7499 latter includes the xterm-specific private modes such as the 7500 mouse mode. The feature is ifdef'd with the rectangle 7501 operations since its decoding overlaps that feature.</li> 7502 7503 <li>correct typo in ctlseqs.ms for response of OSC 21 (patch by 7504 Kevin Schoedel).</li> 7505 7506 <li>improve discussion of mouse tracking in ctlseqs.ms</li> 7507 7508 <li>increase an array limit used in reporting mouse events 7509 (report by Ryan Johnson).</li> 7510 7511 <li>add extended mouse-coordinates mode, allowing up to 7512 2015x2015 windows, using UTF-8 encoding (patch by Ryan 7513 Johnson).</li> 7514 7515 <li>modify manpage hyphens to conform with <a href= 7516 "http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html"> 7517 Debian</a>.</li> 7518 </ul> 7519 7520 <h1><a name="xterm_261" id="xterm_261">Patch #261 - 2010/6/28</a></h1> 7521 7522 <ul> 7523 <li>fix regression in <code>renderFont</code> logic, from 7524 <a href="#xterm_260">patch #260</a> changes (report by Joseph 7525 Quinsey).</li> 7526 </ul> 7527 7528 <h1><a name="xterm_260" id="xterm_260">Patch #260 - 2010/6/20</a></h1> 7529 7530 <ul> 7531 <li>modify <code>plink.sh</code> to work around problem linking 7532 to recent PCRE libraries.</li> 7533 7534 <li>extend <code>renderFont</code> resource to allow deferred 7535 switch to TrueType fonts without affecting existing resource 7536 settings (Debian #585620).</li> 7537 7538 <li>modify configure macro CF_X_TOOLKIT to work around omission 7539 of ICE library from ".pc" file (report by Miroslav 7540 Lichvar).</li> 7541 7542 <li>change configure script default for 7543 <code>--enable-broken-st</code> i.e., the 7544 <code>brokenStringTerm</code> feature) to normally enable it. 7545 If the corresponding resource is enabled, this feature 7546 eliminates an apparent freeze of xterm when sending mis-encoded 7547 data to the screen (Debian #584801).</li> 7548 7549 <li>document in manpage some actions which were overlooked: 7550 <ul> 7551 <li>readline-button</li> 7552 7553 <li>scroll-lock</li> 7554 7555 <li>set-8-bit-control</li> 7556 </ul> 7557 </li> 7558 7559 <li>undo a change to limit-check in <code>ScrnRefresh</code> in 7560 <a href="#xterm_257">patch #257</a>, which broke 7561 <code>fastScroll</code> feature (Debian #584841).</li> 7562 7563 <li>modify handling of <code>brokenLinuxOSC</code> and 7564 <code>brokenStringTerm</code> to also sound the bell.</li> 7565 7566 <li>add control/D and control/Q to controls which will cause 7567 early exit from control string per 7568 <code>brokenStringTerm</code> resource.</li> 7569 7570 <li>improve documentation of <code>brokenStringTerm</code> 7571 resource in manpage.</li> 7572 </ul> 7573 7574 <h1><a name="xterm_259" id="xterm_259">Patch #259 - 2010/6/5</a></h1> 7575 7576 <ul> 7577 <li>modify configure check for <a href= 7578 "https://invisible-island.net/luit/">luit</a> to include new 7579 aliases for the program (<code>xterm-filter</code> and 7580 <code>bluit</code>).</li> 7581 7582 <li>add workaround in <code>xtermClearLEDs()</code> to account 7583 for Xkb's override, making vttest's LED demo reset the scroll 7584 lock.</li> 7585 7586 <li>filter out client-message events when deciding whether to 7587 hide cursor, e.g., when using SCIM (patch/report by anonymous 7588 user).</li> 7589 7590 <li>improve description of <code>-bd</code> option in manpage 7591 (report by Guy Daniel Clotilde).</li> 7592 7593 <li>modify configure checks for PCRE and other libraries to use 7594 <code>pkg-config</code>, if available.</li> 7595 7596 <li>amend change from <a href="#xterm_252">patch #252</a>, to 7597 take <code>veryColorColors</code> resource into account when 7598 checking <code>colorBDMode</code> resource for TrueType fonts 7599 (report by anonymous user).</li> 7600 7601 <li>add <code>vttests/query-fonts.pl</code> script for 7602 demonstrating the <code>OSC 50</code> font query.</li> 7603 7604 <li>improve manpage discussion of Scroll Lock feature.</li> 7605 7606 <li>improve configure macros CF_GCC_VERSION and 7607 CF_GCC_WARNINGS.</li> 7608 7609 <li>fix warnings for "clang --analyze".</li> 7610 7611 <li>change default for <code>allowScrollLock</code> resource to 7612 <code>false</code>, noting that the supposedly unused key has 7613 been useful for various rebindings (Debian #580946).</li> 7614 </ul> 7615 7616 <h1><a name="xterm_258" id="xterm_258">Patch #258 - 2010/5/1</a></h1> 7617 7618 <ul> 7619 <li>add pointer-checks in <code>ScrnRefresh</code> to fix a 7620 case in rapid scrolling where an empty record is fetched from 7621 the scrollback FIFO.</li> 7622 </ul> 7623 7624 <h1><a name="xterm_257" id="xterm_257">Patch #257 - 2010/4/22</a></h1> 7625 7626 <ul> 7627 <li>correct ctlseqs.ms description of OSC 17 and OSC 19 (patch 7628 by Emanuele Giaquinta).</li> 7629 7630 <li>corrected logic for <code>menuLocale</code> resource; the 7631 <code>setlocale</code> function returns the original locale 7632 only when querying.</li> 7633 7634 <li>improve filtering of translations resource, narrowing the 7635 scope of the <code>alwaysUseMods</code> to address only the 7636 translations that would cause a key to be sent to the host 7637 (report by Andrew Gaylard).</li> 7638 7639 <li>change default value of <code>menuLocale</code> resource to 7640 "C", to work around longstanding <a href= 7641 "https://invisible-island.net/xterm/xterm.faq.html#slow_menus">Xorg 7642 bug</a>.</li> 7643 7644 <li>modify handling of <code>scrollKey</code> feature to ignore 7645 XON/XOFF keys.</li> 7646 7647 <li>implement scroll-lock feature.</li> 7648 7649 <li>revise memory allocation in UTF8toLatin1() to fix an 7650 out-of-bounds index (Mandriva #54531).</li> 7651 7652 <li>compute value for first wide-character rather than assuming 7653 it is 256, fixes problem with <code>-cjk_width</code> 7654 introduced in patches <a href="#xterm_242">242</a> and <a href= 7655 "#xterm_249">249</a> (report by Thomas Wolff).</li> 7656 7657 <li>improve configure script: 7658 <ul> 7659 <li>corrected check for <code>_XOPEN_SOURCE</code> for 7660 OpenSolaris.</li> 7661 7662 <li>when possible, add rpath option for libraries in 7663 unusual places</li> 7664 7665 <li>add configure option <code>--disable-rpath-hack</code> 7666 to control whether the rpath option can be added.</li> 7667 </ul> 7668 </li> 7669 7670 <li>modify <code>AllocateTermColor()</code> to separate 7671 initialization from control sequences, fixing problem from 7672 <a href="#xterm_254">patch #254</a> changes where enabling 7673 <code>allowSendEvents</code> resource prevents setting cursor 7674 color on command-line (Debian #572928).</li> 7675 7676 <li>amend logic from <a href="#xterm_185">patch #185</a> to not 7677 reallocate cell-array if processing 7678 <code>ESC % G</code> to switch from UTF-8 if already 7679 in ISO-8859-1 character set (report by Michael Koehne).</li> 7680 7681 <li>fix to avoid calling <code>XmuInternStrings()</code> with 7682 zero count (report by Johan Bockgård).</li> 7683 7684 <li>fix build when --disable-ansi-color configure option is 7685 used.</li> 7686 7687 <li>fix build when neither OPT_TCAP_QUERY or OPT_TCAP_FKEYS is 7688 defined (patch by Matthieu Herrb)</li> 7689 </ul> 7690 7691 <h1><a name="xterm_256" id="xterm_256">Patch #256 - 2010/3/6</a></h1> 7692 7693 <ul> 7694 <li>add TerminalEmulator to desktop category files.</li> 7695 7696 <li>modify <code>sinstall.sh</code> to ignore the "." appended 7697 to permissions by selinux.</li> 7698 7699 <li>change app-defaults organization, installing UXTerm-color 7700 and KOI8XTerm-color for consistent behavior regarding 7701 <code>customization: color</code> (prompted by discussion 7702 in Ubuntu #421261).</li> 7703 7704 <li>fix typo in <code>minstall.sh</code> from <a href= 7705 "#xterm_255">patch #255</a> changes, and add case for 7706 <code>/var/run</code> needed for full path of utmp (report by 7707 Julien Cristau).</li> 7708 7709 <li>minor fix to xterm manpage, remove a comment stating that 7710 margin bell can be changed via the VT Options menu. That was 7711 replaced in <a href="#xterm_225">patch #225</a></li> 7712 7713 <li>add a "docs" rule to makefile.</li> 7714 7715 <li>fix initialization of Atom used for <code>XkbBell</code> 7716 feature from <a href="#xterm_243">patch 243</a> changes. Unlike 7717 the other calls to <code>XInternAtom()</code>, in this case the 7718 flag telling X to create the Atom was unset (patch by Chris 7719 Adams).</li> 7720 </ul> 7721 7722 <h1><a name="xterm_255" id="xterm_255">Patch #255 - 2010/1/21</a></h1> 7723 7724 <ul> 7725 <li>rename <code>install.sh</code> to <code>install-sh</code> 7726 in case suffix-rules might interfere.</li> 7727 7728 <li>extend range for <code>convertToUTF8</code> function to 7729 full 31-bits, to use with printing, etc.</li> 7730 7731 <li>improve manpage by checking for actual locations of 7732 utmp/wtmp files (Debian #562640).</li> 7733 7734 <li>modify configure macro CF_XOPEN_SOURCE to remove -D's 7735 before adding the same name rather than relying on -U's, to 7736 reduce redefinition warnings for some platforms that have 7737 conflicting definitions in headers.</li> 7738 7739 <li>correct logic used to switch to alternate screen using 7740 FIFO-lines configuration (Debian #565772).</li> 7741 7742 <li>update config.guess, config.sub</li> 7743 </ul> 7744 7745 <h1><a name="xterm_254" id="xterm_254">Patch #254 - 2010/1/6</a></h1> 7746 7747 <ul> 7748 <li>add a configure-check to eliminate <code>install-ti</code> 7749 rule from Makefile when the system has no tic (terminfo 7750 compiler) program. This lets one use the 7751 <code>install-full</code> rule more consistently.</li> 7752 7753 <li>amend change to WriteText() function in <a href= 7754 "#xterm_252">patch #252</a> to take into account the 7755 <code>colorAttrMode</code> resource (report by Krzysztof 7756 Kotlenga).</li> 7757 7758 <li>document <code>titleModes</code> resource in manpage, added 7759 in <a href="#xterm_252">patch #252</a>.</li> 7760 7761 <li>modify tcap-query table entries for shifted up/down cursor 7762 keys to match ncurses convention.</li> 7763 7764 <li>improve lookup of termcap-query data, allowing for 7765 duplicate keycodes versus missing entries.</li> 7766 7767 <li>add control sequence which can be used to modify the 7768 terminal data used for the termcap-keyboard.</li> 7769 7770 <li>improve portability of tcap-query feature, using terminfo 7771 functions in preference to termcap on systems having 7772 terminfo.</li> 7773 7774 <li>improve font-setting/querying control 7775 (<code>OSC 50</code>): 7776 <ul> 7777 <li>when TrueType font is selected, the TrueType 7778 <code>faceName</code> will be set, rather than the bitmap 7779 font.</li> 7780 7781 <li>when TrueType font is selected, querying returns the 7782 name of the TrueType font.</li> 7783 7784 <li>querying a font recognizes the relative-font convention 7785 that setting a font could use.</li> 7786 </ul> 7787 </li> 7788 7789 <li>add menu-entry for allowColorOps.</li> 7790 7791 <li>add new resources for fine-tuning menu entries: 7792 <code>allowColorOps</code>, <code>disallowedColorOps</code>, 7793 <code>disallowedFontOps</code> and 7794 <code>disallowedTcapOps</code>.</li> 7795 7796 <li>correct logic for disabling the "TrueType Fonts" menu item; 7797 it was not ensuring that the <code>faceName</code> resource 7798 value was non-empty.</li> 7799 7800 <li>implement VT520-style controls <code>DECSMBV</code> and 7801 <code>DECSWBV</code> for setting the margin- and warning-bell 7802 volume.</li> 7803 7804 <li>fix a minor error from <a href="#xterm_243">patch #243</a> 7805 which made the zIconBeep feature use a minor-error tone rather 7806 than an informational tone.</li> 7807 7808 <li>add a null-pointer check for the case where 7809 <code>renderFont</code> resource is true, but 7810 <code>faceName</code> resource is unset, used in logic to strip 7811 "xft:" prefix from <a href="#xterm_251">patch #251</a> changes 7812 (patch by Michael Riepe).</li> 7813 7814 <li>add special case to configure CF_XOPEN_SOURCE macro to use 7815 extensions on Darwin (patch by Dennis Preiser).</li> 7816 7817 <li>improve configure checks for regular expressions header and 7818 library</li> 7819 7820 <li>update config.guess, config.sub</li> 7821 </ul> 7822 7823 <h1><a name="xterm_253" id="xterm_253">Patch #253 - 7824 2009/12/10</a></h1> 7825 7826 <ul> 7827 <li>add a null-pointer check in <code>getPrinterFlags()</code> 7828 per changes in <a href="#xterm_252">patch #252</a>.</li> 7829 7830 <li>add a null-pointer check, needed in UTF-8 mode for Xft 7831 fonts after changes in <a href="#xterm_252">patch #252</a> 7832 (patch by Alan Coopersmith).</li> 7833 7834 <li>correct size when clearing struct for tek4014 (patch by 7835 Jochen Voss).</li> 7836 7837 <li>parenthesize expression in <code>MoreRows</code> macro, 7838 fixing a limit check added in <a href="#xterm_251">patch 7839 #251</a> (Debian #560039).</li> 7840 </ul> 7841 7842 <h1><a name="xterm_252" id="xterm_252">Patch #252 - 2009/12/7</a></h1> 7843 7844 <ul> 7845 <li>modify title-querying logic to support retrieval of titles 7846 encoded using UTF-8.</li> 7847 7848 <li>add new "title-modes" control sequence for controlling 7849 whether window/icon titles can be set or queried using UTF-8, 7850 optionally encoded in a hexadecimal string.</li> 7851 7852 <li>use <code>mkdir -p</code> rather than 7853 <code>mkdirs.sh</code> (prompted by discussion of mawk by 7854 Aleksey Cheusov).</li> 7855 7856 <li>add appropriate copyright/license notices to the bulk of 7857 files lacking same, and modify to use identical terms in others 7858 which used different wording. The main exceptions are the files 7859 contributed by Markus Kuhn, who appears to prefer public domain 7860 distribution, noting that I have modified/improved several of 7861 these without changing the terms of distribution (request by 7862 Jari Aalto).</li> 7863 7864 <li>add control sequences for resetting the "dynamic" colors to 7865 their default values.</li> 7866 7867 <li>add control sequences for resetting the "special" colors to 7868 their default values.</li> 7869 7870 <li>add control sequences for setting the "special" colors such 7871 as <code>colorBD</code> (bold).</li> 7872 7873 <li>add overlooked case for setting highlight foreground color 7874 with the dynamic-colors control.</li> 7875 7876 <li>add <code>OSC 104</code>, for resetting ANSI/16/88/256 7877 colors to default.</li> 7878 7879 <li>reset ANSI/16/88/256 colors to default in soft/hard reset 7880 functions.</li> 7881 7882 <li>strip "xft:" prefix from <code>faceName</code> and 7883 <code>faceNameDoublesize</code> resource values,</li> 7884 7885 <li>add <code>DECSCUSR</code> (discussion with Andy 7886 Koppe).</li> 7887 7888 <li>add check/warning on failure to load font, to see if the 7889 name looks like an Xft pattern rather than XLFD. This can 7890 happen if someone happens to modify their X resource settings 7891 for programs that read data from xterm's namespace.</li> 7892 7893 <li>modify handling of <code>print</code> and 7894 <code>print-everything</code> actions to allow the various 7895 printer flags to be overridden by supplying parameters.</li> 7896 7897 <li>add resource <code>printerNewLine</code> (request by Ovidiu 7898 Gheorghioiu).</li> 7899 7900 <li>minor cleanup, finish using <code>TScreenOf()</code> and 7901 <code>TekScreenOf()</code> macros introduced in <a href= 7902 "#xterm_224">patch #224</a>.</li> 7903 7904 <li>improve checks in ShowCursor/HideCursor to get the 7905 background color, particularly when 7906 <code>highlightReverse</code> resource is used (reports by Jan 7907 Engelhardt, Christian Weisgerber).</li> 7908 7909 <li>correct <code>checkVeryBoldAttr</code> to omit comparison 7910 of foreground color to special color values used for 7911 <code>color<XX></code> resources (report by Jan 7912 Engelhardt).</li> 7913 7914 <li>make <code>colorBDMode</code> and <code>colorULMode</code> 7915 resources work with TrueType configuration (report by Jan 7916 Engelhardt).</li> 7917 </ul> 7918 7919 <h1><a name="xterm_251" id="xterm_251">Patch #251 - 7920 2009/11/11</a></h1> 7921 7922 <ul> 7923 <li>add window-ops controls to push/pop icon and/or window 7924 labels on a stack.</li> 7925 7926 <li>minor fixes to align termcap file with terminfo.</li> 7927 7928 <li>add resource <code>disallowedWindowOps</code>, to allow 7929 fine-tuning of features to suppress with the 7930 <code>allowWindowOps</code> resource (prompted by discussion 7931 with Bram Moolenaar).</li> 7932 7933 <li>add makefile rules for resize-manpage to pdf, etc.</li> 7934 7935 <li>further improve limit-checks in select/paste (Mandriva 7936 #54531).</li> 7937 </ul> 7938 7939 <h1><a name="xterm_250" id="xterm_250">Patch #250 - 7940 2009/10/13</a></h1> 7941 7942 <ul> 7943 <li>add check and error-message for fonts that have no 7944 printable values in the ISO-8859-1 range (Debian #542434).</li> 7945 7946 <li>some compiler-warning cleanup, in particular workaround for 7947 defective implementation of gcc's attribute warn_unused_result 7948 (report by Bram Moolenaar).</li> 7949 7950 <li>improve estimate of single-column width for packed TrueType 7951 fonts by ignoring extents for codes 127 and 159.</li> 7952 7953 <li>improve line-drawing for TrueType fonts which happen to 7954 have defined glyphs which are <em>not</em> line-drawing in 7955 0..31 by assuming they're not, and just checking the existence 7956 of the Unicode codepoints. This makes it more likely that the 7957 user can override a misconfigured font using the "Line-Drawing 7958 Characters" menu entry.</li> 7959 7960 <li>limit minimum cell-width for packed font to maximum-advance 7961 reported by Xft. Some fonts are wider than that, even in the 7962 Latin-1 range (Debian #550497).</li> 7963 7964 <li>add list of direct-contributors in "THANKS" file.</li> 7965 7966 <li>stylistic changes to this file to help scripted extraction 7967 of list of contributors.</li> 7968 7969 <li>correct off-by-one in <code>okPosition</code> fix from 7970 <a href="#xterm_249">patch #249</a> limit-checks which 7971 prevented double-click selection on the bottom line of the 7972 screen (reports by Rajeev V. Pillai, Debian #550368).</li> 7973 7974 <li>add <code>-q</code> option to 7975 <code>vttests/256colors2.pl</code> and 7976 <code>vttests/88colors2.pl</code> to demonstrate bulk 7977 initialization of color palette.</li> 7978 7979 <li>improve the workaround from patch #188 by enabling 7980 resources for the 88-color model.</li> 7981 7982 <li>document in xterm manpage the limited availability of 7983 resources <code>color16</code> to <code>color255</code> as 7984 noted in <a href="#xterm_188">patch #188</a> (Ubuntu 7985 #438850).</li> 7986 </ul> 7987 7988 <h1><a name="xterm_249" id="xterm_249">Patch #249 - 2009/10/1</a></h1> 7989 7990 <ul> 7991 <li>change default for <code>allowWindowOps</code> resource to 7992 false. 7993 <!-- on the other hand, gnome-terminal, pterm and rxvt-unicode 7994 leave most of the related functionality enabled ;-) --></li> 7995 7996 <li>add limit-checks for result of visual_width() function, 7997 needed from <a href="#xterm_242">patch #242</a> and exposed by 7998 #244 changes (Debian #548321).</li> 7999 8000 <li>improve limit-checks in select/paste.</li> 8001 8002 <li>fix a remaining bug from <a href="#xterm_230">patch 8003 #230</a> changes for displaying multi-column characters in a 8004 proportional font (report by Chris Jones).</li> 8005 8006 <li>add new resource forcePackedFont and menu entry "Packed 8007 Font" to control whether to use the font's minimum (default) or 8008 maximum width when those differ. The workaround which xterm 8009 uses to accommodate proportional fonts is not necessary with 8010 certain fonts such as unifont which happen to store a mixture 8011 of multicolumn glyphs (report by Chris Jones).</li> 8012 8013 <li>fix an (old) bug which did not restart the timer for 8014 blinking text if the only blinking text was temporarily 8015 scrolled out of view, e.g., using the scrollbar.</li> 8016 8017 <li>fix an (old) flaw in the delete-line operation where the 8018 text which is scrolled into view while the display is scrolled 8019 up was not repainted.</li> 8020 8021 <li>improve delete-line and insert-line operations, retaining 8022 selection when the selection does not intersect the 8023 deleted/inserted lines.</li> 8024 8025 <li>fix an (old) off-by-one error when an application cleared 8026 above the cursor position while the display was scrolled up, 8027 that would leave an extra line of text uncleared.</li> 8028 8029 <li>fix a similar problem where the double-size attribute would 8030 not be reset when clearing the screen while the display was 8031 scrolled up.</li> 8032 8033 <li>fix an indexing error which would occur if an application 8034 cleared a line while the display was scrolled up and was also 8035 in UTF-8 mode (Redhat #524503). The error was from <a href= 8036 "#xterm_228">patch #228</a> but more visible after changes from 8037 <a href="#xterm_244">patch #244</a>.</li> 8038 </ul> 8039 8040 <h1><a name="xterm_248" id="xterm_248">Patch #248 - 2009/9/11</a></h1> 8041 8042 <ul> 8043 <li>fix an overlooked adjustment for selecting double-width 8044 characters in the narrow-character configuration.</li> 8045 8046 <li>eliminate uses of <code>XTERM_CELL</code> and 8047 <code>XTERM_CELLC</code> where an appropriate 8048 <code>LineData</code> pointer is available.</li> 8049 8050 <li>correct expression in <code>okScrnRow</code> macro, making 8051 selections give the length of lines below the visible screen 8052 (report by Stuart Henderson).</li> 8053 8054 <li>correct logic used to improve performance of missing-glyph 8055 check, which did not handle line-drawing characters (Debian 8056 #545220).</li> 8057 </ul> 8058 8059 <h1><a name="xterm_247" id="xterm_247">Patch #247 - 2009/8/30</a></h1> 8060 8061 <ul> 8062 <li>add ifdef's and check for openpty() on DragonFly (patch by 8063 Alex Hornung).</li> 8064 8065 <li>correct calculation for size of line's data block, which 8066 was sometimes off-by-one when configured using 8067 <code>--enable-16bit-chars</code> (report by H Merijn 8068 Brand).</li> 8069 8070 <li>fix indexing error in print-everything feature from 8071 <a href="#xterm_246">patch #246</a> (patch by Ovidiu 8072 Gheorghioiu).</li> 8073 </ul> 8074 8075 <h1><a name="xterm_246" id="xterm_246">Patch #246 - 2009/8/16</a></h1> 8076 8077 <ul> 8078 <li>remove obsolete logic for saving/restoring wrapping flags, 8079 which did not work on 64-bit platform. Wrapping flags (stored 8080 in the line-index) are now copied with line-data (Debian 8081 #541160).</li> 8082 8083 <li>modify comments in app-defaults files to avoid problem with 8084 C preprocessor used by <code>xrdb</code> (Debian #541603).</li> 8085 8086 <li>restore special case in <code>makeColorPair</code>, needed 8087 for <code>colorBDMode</code> resource (Debian #541089).</li> 8088 8089 <li>correct <code>SetLineFlags()</code> macro, broken in 8090 <a href="#xterm_244">patch #244</a> when recoding to avoid 8091 gcc-specific bitfields (Debian #541236).</li> 8092 8093 <li>modify initialization of screen buffers to ensure that 8094 pointers align to int-boundaries. This fixes a problem 8095 introduced in <a href="#xterm_244">patch #244</a> where the 8096 color- and character-arrays (stored after the video-attributes 8097 in each row) might be misaligned (report by Rajeev V 8098 Pillai).</li> 8099 8100 <li>add limit-check in <code>ScrnRefresh</code> for handling 8101 saved-lines from the circular buffer which are repainted on a 8102 screen whose width has increased. To improve performance, 8103 circular buffer entries are not resized (report by Rajeev V 8104 Pillai).</li> 8105 8106 <li>correct type for <code>CellColor</code> (a late change in 8107 <a href="#xterm_244">patch #244</a> to avoid gcc-specifc enums 8108 made that unsigned rather than unsigned short, for the 8109 256-color option).</li> 8110 8111 <li>fix typo in configure option --enable-16bit-chars (report 8112 by Rajeev V. Pillai).</li> 8113 </ul> 8114 8115 <h1><a name="xterm_245" id="xterm_245">Patch #245 - 2009/8/12</a></h1> 8116 8117 <ul> 8118 <li>correct a special case in saving FIFO-lines from <a href= 8119 "#xterm_244">patch #244</a>. If the screen was shrunk, xterm 8120 used the wrong amount for copying to FIFO-lines, and then used 8121 this amount to adjust the current row on the screen. That was 8122 both a visible defect (Debian #541109) as well as a potential 8123 addressing error (Debian #541132, Debian #541160, and Debian 8124 #541236).</li> 8125 8126 <li>add clarification in xterm manual about the various 8127 <code>allow<em>XXX</em>Ops</code> resources, which are disabled 8128 when the <code>allowSendEvents</code> resource is active (patch 8129 by Julien Cristau, Debian #531597).</li> 8130 </ul> 8131 8132 <h1><a name="xterm_244" id="xterm_244">Patch #244 - 2009/8/9</a></h1> 8133 8134 <ul> 8135 <li>refactored storage of saved-lines, providing a configure 8136 option to manage them as a FIFO (actually a circular buffer), 8137 improving performance. Added configure option 8138 <code>--enable-fifo-lines</code> to enable/disable the new 8139 feature (it is enabled by default).</li> 8140 8141 <li>added <code>fastScroll</code> resource, to amuse people who 8142 measure terminal emulator performance by <code>cat</code>'ing 8143 large files to the screen.</li> 8144 8145 <li>modify check in <code>readPtyData</code> from return values 8146 to provide exit on zero-bytes read from pty for FreeBSD, or 8147 eliminate high-CPU in "xterm-hold" processing (discussion with 8148 Ulrich Spoerlein, FreeBSD ports/136686). The check was 8149 originally modified to combine negative/zero values in 8150 XFree86-3.1.2E, 1996/05/06.</li> 8151 8152 <li>add configure option <code>--enable-16bit-chars</code> to 8153 provide wide-characters with 16-bits (rather than the default 8154 32-bits).</li> 8155 8156 <li>add <code>retryInputMethod</code> resource to allow 8157 configuring out the retries xterm uses to connect to 8158 non-responsive XIM server, to work around defective X 8159 configurations as noted in <a href= 8160 "http://mail-index.netbsd.org/tech-x11/2009/06/07/msg000511.html"> 8161 NetBSD mailing list</a>.</li> 8162 8163 <li>make regular-expression selection work for VT100 8164 double-sized characters.</li> 8165 8166 <li>improve layout when drawing missing characters in a 8167 proportional font, e.g., as boxes, to take into account whether 8168 they are double-width (report by Guilbert Stabilo on 8169 comp.unix.shell).</li> 8170 8171 <li>add capability for keypad-center (kb2/KA2) to termcap entry 8172 for xterm-new, as well as xterm-8bit, xterm-sun and xterm-vt220 8173 (FreeBSD conf/136336).</li> 8174 8175 <li>change default for <code>keepSelection</code> resource to 8176 true (prompted by discussion with David Muir Sharnoff).</li> 8177 8178 <li>remove a limit-check in ptydata.c, allowing Unicode values 8179 past 64k to be displayed using TrueType fonts (Debian 8180 #458432).</li> 8181 8182 <li>remove a vt52-specific ifdef to allow mapping F1-F4 to 8183 PF1-PF4 when vt52 support is not compiled (report by Olaf 8184 'Rhialto' Seibert).</li> 8185 8186 <li>save/restore line-wrapping flags when converting from 8187 ISO-8859-1 encoding to UTF-8 encoding, as well as when resizing 8188 screen.</li> 8189 8190 <li>remove extra adjustment of position in fix for Debian 8191 #418324.</li> 8192 8193 <li>modify default check for <code>mkWidth</code> resource to 8194 check for line-drawing characters, which are categorized as 8195 double-width in Solaris 10 (report by Sebastian Kayser).</li> 8196 8197 <li>add "print-everything" action (patch by Ovidiu 8198 Gheorghioiu).</li> 8199 8200 <li>start refactoring scrollback data using new getLineData() 8201 function.</li> 8202 8203 <li>demote recent change to Debian #252873 fix to experimental, 8204 ifdef'd out as <code>EXP_BOGUS_FG</code> (Debian #522141).</li> 8205 8206 <li>work around groff mapping of ASCII quotes using macros 8207 (requested by Reuben Thomas based on Colin Watson advice, fixes 8208 Debian #378700).</li> 8209 8210 <li>correct symbol used for default of 8211 <code>allowWindowOps</code> which was 8212 <code>DEF_ALLOW_FONT</code> rather than 8213 <code>DEF_ALLOW_WINDOW</code> (report by Matthieu Herrb).</li> 8214 8215 <li>amend fix for tek4014 from <a href="#xterm_243">patch 8216 #243</a> to make it only apply to the Tek Options menu.</li> 8217 </ul> 8218 8219 <h1><a name="xterm_243" id="xterm_243">Patch #243 - 2009/3/28</a></h1> 8220 8221 <ul> 8222 <li>revert change to default for <code>allowTcapOps</code> 8223 (request by Bram Moolenaar).</li> 8224 8225 <li>reallocate result returned by <code>xtermEnvLocale()</code> 8226 to avoid reference to freed memory after handling 8227 <code>menuLocale</code> resource.</li> 8228 8229 <li>fix an old (X11R5) bug in tek4014 for switching 8230 fontsizes.</li> 8231 8232 <li>add resource <code>defaultString</code> to make 8233 configurable the use of "#" when pastes of UTF-8 text fail due 8234 to limitations in the current locale settings.</li> 8235 8236 <li>make the set of selection target Atom's configurable by two 8237 new resources <code>eightBitSelectTypes</code> and 8238 <code>utf8SelectTypes</code>, e.g., to use the 8239 <code>TEXT</code> Atom in preference to 8240 <code>UTF8_STRING</code> (discussion with Stanislav Sedov 8241 regarding koi8rxterm and the FreeBSD port).</li> 8242 8243 <li>modify handling of <code>TARGETS</code> Atom by making it 8244 return exactly the set of targets as those which xterm is 8245 currently providing.</li> 8246 8247 <li>set <code>MANPAGER</code> and <code>PAGER</code> explicitly 8248 to /bin/cat in <code>minstall.sh</code> to work around 8249 /etc/man.conf's with those variables already set (report by 8250 Марьясин 8251 Семён).</li> 8252 8253 <li>improve error-checking of tcap-query parser.</li> 8254 8255 <li>add check for keyboard <code>tcap</code>), which ensures 8256 that terminal descriptions containing the same string for 8257 shifted/unshifted keys will be seen by tcap-query as only the 8258 unshifted key. (This would only happen with an incorrect 8259 terminal description).</li> 8260 8261 <li>fix conversion for input event-state to modifier-parameter 8262 which made tcap-query feature not work with 8263 <code>tcapFunctionKeys</code> (keyboard type 8264 <code>tcap</code>).</li> 8265 8266 <li>add "DEF_ALLOW_<em>XXX</em>" definitions to main.h to allow 8267 overriding the default compiled-in values for 8268 "allow<em>xxx</em>" resources.</li> 8269 8270 <li>remove check on bell-percentage added in <a href= 8271 "#xterm_242">patch #242</a>, which disallowed zero/negative 8272 values (Redhat Bugzilla #487829).</li> 8273 </ul> 8274 8275 <h1><a name="xterm_242" id="xterm_242">Patch #242 - 2009/2/15</a></h1> 8276 8277 <ul> 8278 <li>fix configure check for <code>XkbBell</code> and provide 8279 appropriate parameter for it.</li> 8280 8281 <li>fix a caching problem with double-size fonts versus reverse 8282 video that could cause core dump.</li> 8283 8284 <li>repair double-size fonts from workaround used in <a href= 8285 "#xterm_240">patch #240</a>.</li> 8286 8287 <li>add new section to the VT Fonts menu which allows enabling 8288 or disabling the font, termcap (tcap-query), title and window 8289 operations.</li> 8290 8291 <li>add <code>fontWarnings</code> resource, to control whether 8292 to show warnings on failure to load a font.</li> 8293 8294 <li>improve warnings for unloadable fonts introduced in 8295 <a href="#xterm_240">patch #240</a> by limiting those to the 8296 cases where a font would be specified directly by a resource 8297 setting rather than a derived fontname.</li> 8298 8299 <li>further amend fix for Debian #252873 from <a href= 8300 "#xterm_197">patch #197</a> to treat a blank cell which does 8301 not have both foreground and background colored as a 8302 non-colored cell. This improves a special case where the cursor 8303 is on a blank cell which had foreground color scrolled in 8304 (report by Miroslav Lichvar). 8305 <p>Also add the same logic when hiding cursor, so the outline 8306 matches the in-focus cursor.</p> 8307 </li> 8308 8309 <li>modify internals to reduce places PAIRED_CHARS() is used, 8310 making WriteText() and ScrnWriteText() accept IChar array, as 8311 well as providing a wrapper for drawXtermText().</li> 8312 8313 <li>change default XIM font from "*" to "fixed" to improve 8314 startup time in zh_CN.UTF-8 locale (Mike Fabian, SuSE Bugzilla 8315 #464930).</li> 8316 8317 <li>typo in #240 log (Slava Semushin)</li> 8318 </ul> 8319 8320 <h1><a name="xterm_241" id="xterm_241">Patch #241 - 2009/1/26</a></h1> 8321 8322 <ul> 8323 <li>improve checks for missing bitmap fonts, fallback to 8324 "fixed" as needed to work around broken font-packages (report 8325 by Jacek Luczak).</li> 8326 8327 <li>fix breakage from <a href="#xterm_240">patch #240</a> 8328 changes for <code>xtermAddInput()</code> (patches by Jeff Chua, 8329 Julien Cristau).</li> 8330 </ul> 8331 8332 <h1><a name="xterm_240" id="xterm_240">Patch #240 - 2009/1/25</a></h1> 8333 8334 <ul> 8335 <li>use <code>plink.sh</code> for linking xterm (suggested by 8336 Larry Doolittle).</li> 8337 8338 <li>add resource descriptions for input method to xterm 8339 manpage.</li> 8340 8341 <li>update configure script; consistently append to $CFLAGS 8342 rather than prepend.</li> 8343 8344 <li>add <code>install-scripts</code> rule to makefile, to allow 8345 koi8rxterm and uxterm scripts to be altered independently of 8346 <code>install-bin</code></li> 8347 8348 <li>add <code>-maximized</code> command-line option and 8349 corresponding resource (prompted by alt.os.linux newsgroup 8350 comment).</li> 8351 8352 <li>modify translations of scrollbar widget using 8353 <code>xtermAddInput()</code> (see <a href="#xterm_181">patch 8354 #181</a>) to accept the actions that the vt100 widget accepts, 8355 such as shift-insert to perform a paste operation (request by 8356 Martin Zwickel).</li> 8357 8358 <li>change default for <code>allowTcapsOps</code> resource to 8359 false, since it causes unexpected behavior for vim users with 8360 <code>AltGr</code>.</li> 8361 8362 <li>update config.guess, config.sub</li> 8363 </ul> 8364 8365 <h1><a name="xterm_239" id="xterm_239">Patch #239 - 2009/1/8</a></h1> 8366 8367 <ul> 8368 <li>correct a cast in input.c, which broke translation of 8369 numeric keypad codes to pageup, pagedown, etc., on 64-bit 8370 platform (Debian #511138, report by Larry Doolittle).</li> 8371 </ul> 8372 8373 <h1><a name="xterm_238" id="xterm_238">Patch #238 - 8374 2008/12/30</a></h1> 8375 8376 <ul> 8377 <li>update configure macro CF_XOPEN_SOURCE for AIX 6.x and Mint 8378 platforms.</li> 8379 8380 <li>reset the screen wrapping-flag at the end of 8381 <code>ClearRight</code> to fix an occasional case where the 8382 last character of a scrolled and wrapped line would be cleared 8383 (patch by Joe Peterson).</li> 8384 8385 <li>modify to use POSIX coding for comparing resource settings 8386 such as <code>locale</code>, to work with locales such as 8387 Turkish (report by M Vefa Bicakci).</li> 8388 8389 <li>turn on configure <code>paste64</code> feature by default 8390 (request by Jean-Philippe Bernardy). It is runtime 8391 enabled/disabled with <code>allowWindowOps</code>.</li> 8392 8393 <li>turn on configure <code>tcap-query</code> feature by 8394 default, add resource <code>allowTcapOps</code> to make this 8395 runtime enabled/disabled.</li> 8396 8397 <li>make <code>OSC 3</code> (change X property, from <a href= 8398 "#xterm_110">patch #110</a>) subject to 8399 <code>allowWindowOps</code> resource.</li> 8400 8401 <li>make VT220 <code>DSR</code> responses inactive in 8402 VT100-mode.</li> 8403 8404 <li>make <code>DECUDK</code> feature inactive in 8405 VT100-mode.</li> 8406 8407 <li>respond to incorrectly formatted <code>DECRQSS</code> with 8408 a cancel.</li> 8409 8410 <li>add <code>allowFontOps</code> resource to allow the 8411 fontsize-switching and font query/set control sequences to be 8412 enabled/disabled (prompted by Debian #510030).</li> 8413 8414 <li>some code cleanup based on gcc 4.x 8415 <code>-Wconversion</code> warnings in button.c and 8416 charproc.c</li> 8417 8418 <li>modify <code>tcap-query</code> feature to not return data 8419 for shifted cursor-keys when the keyboard type is set to vt220, 8420 since returning the same string for shifted/unshifted keys may 8421 confuse some applications (Gentoo #212546).</li> 8422 </ul> 8423 8424 <h1><a name="xterm_237" id="xterm_237">Patch #237 - 8425 2008/09/14</a></h1> 8426 8427 <ul> 8428 <li>improve usability of TrueType fonts by making the font-size 8429 switching for shifted keypad plus/minus use the 8430 <code>faceSize</code> resources to determine the order of fonts 8431 (when TrueType fonts are used) rather than the bitmap fonts, 8432 since their sizes may not be in the same order (report by H 8433 Merijn Brand)</li> 8434 8435 <li>remove an optimization of <code>ConfigureNotify</code> 8436 events from <a href="#xterm_236">patch #236</a> which seems to 8437 interfere with passing <code>SIGWINCH</code> to applications 8438 (Gentoo #233836).</li> 8439 8440 <li>modify handling of <code>altSendsEscape</code> to reset the 8441 <code>eightBitInput</code> mode, like 8442 <code>metaSendsEscape</code> (patch by Ted Phelps).</li> 8443 8444 <li>add feature to show the text-cursor as an underline rather 8445 than a box, plus command-line options <code>-uc</code> and 8446 <code>+uc</code> and resource <code>cursorUnderLine</code> to 8447 control the feature (patch by Paul Lampert).</li> 8448 8449 <li>update config.guess, config.sub</li> 8450 </ul> 8451 8452 <h1><a name="xterm_236" id="xterm_236">Patch #236 - 8453 2008/07/27</a></h1> 8454 8455 <ul> 8456 <li>correct memory reallocation when handling a paste of UTF-8 8457 text from <a href="#xterm_225">patch #225</a> changes 8458 (report/patch by Max Mikhanosha).</li> 8459 8460 <li>correct allocation of temporary buffer in 8461 <code>xtermFindShell</code> in case the user's 8462 <code>$PATH</code> contains no ":" (report/analysis by Victor 8463 Stinner, Freedesktop.Org Bugzilla #16790).</li> 8464 8465 <li>modify CF_XOPEN_SOURCE to add case for DragonFly BSD, to 8466 fix new compile problem exposed by fix for fd_mask (patch by 8467 Hasso Tepper).</li> 8468 8469 <li>add configure-check for ncurses 8470 <code>use_extended_names</code>, (report by Martin 8471 Mokrejs).</li> 8472 8473 <li>correct computation for toolbar height; layout manager 8474 already takes into account <code>borderWidth</code> 8475 resource.</li> 8476 8477 <li>implement VT320-style SCS (select character set) for ISO 8478 Latin-1 supplemental.</li> 8479 8480 <li>fixes for vt100-style character sets in UTF-8 mode (Ubuntu 8481 #230919).</li> 8482 8483 <li>fix to make <code>luit</code> work with xterm's 8484 <code>-ls</code> option (report/patch by Marius Tolzmann).</li> 8485 8486 <li>update config.guess, config.sub</li> 8487 </ul> 8488 8489 <h1><a name="xterm_235" id="xterm_235">Patch #235 - 8490 2008/04/20</a></h1> 8491 8492 <ul> 8493 <li>add control sequences for some of the recent resource/menu 8494 settings: 8495 <ul> 8496 <li><code>altSendsEscape</code> (private mode 1039)</li> 8497 8498 <li><code>keepSelection</code> (private mode 1040)</li> 8499 8500 <li><code>selectToClipboard</code> (private mode 1041)</li> 8501 8502 <li><code>bellIsUrgent</code> (private mode 1042)</li> 8503 8504 <li><code>popOnBell</code> (private mode 1043)</li> 8505 </ul> 8506 </li> 8507 8508 <li>add resource <code>formatOtherKeys</code> to provide an 8509 alternate escape sequence format for the 8510 <code>modifyOtherKeys</code> resource (request by Paul LeoNerd 8511 Evans).</li> 8512 8513 <li>adjust saved-cursor position if the window is resized while 8514 displaying the alternate screen (Novell #196880, Debian 8515 #383384).</li> 8516 8517 <li>improve pointer-checks to fix a bug exposed by resizing 8518 during initialization under StumpWM window manager (Fedora 8519 Bugzilla #437928).</li> 8520 8521 <li>modify <code>unselectwindow()</code> to ensure that the 8522 mouse pointer is not hidden after xterm loses focus (report by 8523 Jeremy Huddleston).</li> 8524 8525 <li>add special check for fd_mask on Mac OS X (report by Jeremy 8526 Huddleston).</li> 8527 8528 <li>add <code>dylib</code> to autoconf's suffix list used for 8529 checking the result from <code>xmkmf</code>, to work with Mac 8530 OS X (report by Jeremy Huddleston).</li> 8531 8532 <li>correct initialization of bold- and wide-, wide-bold fonts 8533 which may be set via the <code>utf8Fonts</code> subresource 8534 (Debian #347790).</li> 8535 </ul> 8536 8537 <h1><a name="xterm_234" id="xterm_234">Patch #234 - 8538 2008/03/02</a></h1> 8539 8540 <ul> 8541 <li>modify <code>sinstall.sh</code> to use POSIX locale to 8542 bypass GNU ls changes to date-format.</li> 8543 8544 <li>improved/refined changes for closing bitmap font (patch by 8545 Andrea Odetti).</li> 8546 8547 <li>improve resize computation for situations where the 8548 negotiation fails, by invoking the xterm widget's core-class 8549 resize method (Debian #365602, patch by Jim Paris).</li> 8550 8551 <li>restore initialization of terminal's <code>VMIN</code> and 8552 <code>VTIME</code> settings, from <a href="#xterm_232">patch 8553 #232</a> changes (patch by Matthieu Herrb).</li> 8554 </ul> 8555 8556 <h1><a name="xterm_233" id="xterm_233">Patch #233 - 8557 2008/02/24</a></h1> 8558 8559 <ul> 8560 <li>add configure check for <code>ttydefaults.h</code>, include 8561 if needed, e.g., for systems where defining 8562 <code>_POSIX_C_SOURCE</code>, etc., prevents it from being 8563 included via <code>termios.h</code> (prompted by comments by 8564 Robert Delius Royar and Jeremy Huddleston).</li> 8565 8566 <li>bug-fixes for bugs.opensolaris.org (patches from Alan 8567 Coopersmith) 8568 <dl> 8569 <dt>4029911</dt> 8570 8571 <dd>fix a typo in manpage</dd> 8572 8573 <dt>4045962</dt> 8574 8575 <dd>xterm doesn't properly set ut_syslen</dd> 8576 8577 <dt>4192572</dt> 8578 8579 <dd>left-left-right misinterpreted as triple click</dd> 8580 </dl> 8581 </li> 8582 8583 <li>minor optimization to tab-initialization (patch by 8584 Németh Márton).</li> 8585 8586 <li>fix a case where an incorrect font was freed during 8587 initialization from <a href="#xterm_232">patch #232</a> changes 8588 (patch by Andrea Odetti).</li> 8589 8590 <li>improve comparison used in <code>SameFont</code> function 8591 for GC-caching (Julien Cristau).</li> 8592 8593 <li>correct macro name used for default <code>CKILL</code> 8594 definition to work with Mac OS X (report by Jeremy 8595 Huddleston).</li> 8596 </ul> 8597 8598 <h1><a name="xterm_232" id="xterm_232">Patch #232 - 8599 2008/01/30</a></h1> 8600 8601 <ul> 8602 <li>corrected logic in a font-cache used for reverse-video 8603 (Debian #404079).</li> 8604 8605 <li>add control sequence to alter <code>pointerMode</code> at 8606 runtime.</li> 8607 8608 <li>add limit-checks for rectangle operation parameters (report 8609 by Martin Pirker).</li> 8610 8611 <li>modify <code>minstall.sh</code> to suppress 8612 <code>$MANPAGER</code> and <code>$PAGER</code> environment 8613 variables, which may interfere with redirecting output of 8614 <code>man</code> to a shell variable (report/patch by Zdenek 8615 Sekera).</li> 8616 8617 <li>do not try to hide mouse pointer in the tek4014 window, 8618 fixes broken "-t" option at startup from <a href= 8619 "#xterm_230">patch #230</a> changes (report by Robert K. 8620 Nelson).</li> 8621 8622 <li>correct datatype used when drawing tek4014 data using xterm 8623 compiled for wide-characters, on big-endian machines (reports 8624 by Jeremy Huddleston, Harald Hanche-Olsen, Martin Costabel, 8625 Merle Reinhart).</li> 8626 8627 <li>modify to cache the font-names along with the bitmap font 8628 data, to improve comparison of fonts.</li> 8629 8630 <li>modify to allow building with configure options 8631 <code>--disable-ansi-color</code> and 8632 <code>--disable-leaks</code> (Debian #459817, report/patch by 8633 Németh Márton).</li> 8634 8635 <li>modify to allow building with configure options 8636 <code>--enable-wide-chars</code> and 8637 <code>--disable-c1-print</code> (Debian #459816, report/patch 8638 by Németh Márton).</li> 8639 8640 <li>add <code>pointerMode</code> resource to control whether 8641 and when the pointer cursor is hidden as the user types.</li> 8642 8643 <li>simplify initialization of ttyMode- and related characters 8644 using a table.</li> 8645 8646 <li>modify initialization-logic for stty values that correspond 8647 to ltchars structure and the BSD TIOCSLTC ioctl (susp, dsusp, 8648 rprnt flush, werase, lnext). These were reset to constants for 8649 both termios and legacy interfaces immediately after asking the 8650 system for the existing values since X11R6.1, rather than using 8651 them to provide inherited values. While the legacy interface 8652 has some constraints, e.g., on HPUX, the POSIX or termios 8653 interface should not. Your shell may reset these anyway 8654 (prompted by patch by Ed Schouten).</li> 8655 8656 <li>improve logic for hiding/displaying pointer-cursor (report 8657 by Mark Brukhartz).</li> 8658 8659 <li>add limit-checks to tabs.c, increase maximum column for 8660 setting tab-stops from 320 to 1024 (report by Németh 8661 Márton).</li> 8662 8663 <li>correct length, i.e., number of types of selection targets, 8664 computed by <code>ConvertSelection()</code> when not handling 8665 wide characters for the <code>XA_TARGETS()</code> case. This 8666 leaves an extra Atom on the end of the list which is not 8667 handled by <a href= 8668 "http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6322854">Java 8669 applications</a>. The problem was introduced in <a href= 8670 "#xterm_151">patch #151</a> (report by David Wood).</li> 8671 </ul> 8672 8673 <h1><a name="xterm_231" id="xterm_231">Patch #231 - 8674 2008/01/05</a></h1> 8675 8676 <ul> 8677 <li>undo change to <code>getXtermCell()</code> from patch #230 8678 using <code>PACK_PAIR</code> macro (Debian #459014, analysis by 8679 Caetano Jimenez Carezzato).</li> 8680 8681 <li>minor documentation fixes (patch by Slava Semushin)</li> 8682 8683 <li>add makefile actions to install KOI8RXTerm app-defaults 8684 file (patch by Julien Cristau).</li> 8685 </ul> 8686 8687 <h1><a name="xterm_230" id="xterm_230">Patch #230 - 8688 2007/12/31</a></h1> 8689 8690 <ul> 8691 <li>add <code>quietGrab</code> resource, which when true, 8692 suppresses cursor repainting when <code>NotifyGrab</code> and 8693 <code>NotifyUngrab</code> event types are received during 8694 change of focus (request by Nicolas George).</li> 8695 8696 <li>do not treat Unicode BIDI control characters as combining 8697 characters (Debian #457634).</li> 8698 8699 <li>add <code>koi8rxterm</code>, from Debian.</li> 8700 8701 <li>add manpage for <code>uxterm</code>, from Debian (Ubuntu 8702 #128136, Debian #438645)</li> 8703 8704 <li>remove ".xpm" suffixes from Icon filenames in desktop files 8705 since it confuses some lookups following the <a href= 8706 "http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html"> 8707 Icon Theme Specification</a> (report by Slava Semushin)</li> 8708 8709 <li>correct width-calculation used for adjusting proportional 8710 fonts, to work with wide-characters (Debian #441354).</li> 8711 8712 <li>fixes/improvements for double-size characters: 8713 <ul> 8714 <li>correct old clipping calculation which used total 8715 height of glyphs where ascent was needed.</li> 8716 8717 <li>if bold font is unavailable, fall back to normal 8718 font</li> 8719 8720 <li>adjust to "work" with Xft (which does not support 8721 double-width single-height characters).</li> 8722 8723 <li>restore reset of doublesize for a line when it is 8724 cleared, broken in <a href="#xterm_228">patch 8725 #228</a>.</li> 8726 </ul> 8727 </li> 8728 8729 <li>modify logic for <code>forceBoxChars</code> resource when 8730 using TrueType fonts to be consistent with bitmap fonts</li> 8731 8732 <li>modify logic for <code>forceBoxChars</code> resource to 8733 make the "Line-Drawing Characters" menu entry use xterm's 8734 line-drawing characters even asked to draw wide line-drawing 8735 characters which are available in the font.</li> 8736 8737 <li>modify rectangle-support functions to preserve colors when 8738 filling/erasing to match WRQ Reflection behavior (request by 8739 Enzo Toscano).</li> 8740 8741 <li>add getopt-parsing to tcapquery.pl, including feature to 8742 test the extended cursor/editing keys.</li> 8743 8744 <li>make missing double-width glyphs display as double-width 8745 (Debian #456236).</li> 8746 8747 <li>change <code>tcap-fkeys</code> and <code>rectangles</code> 8748 configure options to enable them by default.</li> 8749 8750 <li>hide the mouse pointer while user is typing (request by 8751 Rodolfo Borges).</li> 8752 8753 <li>extend configure options <code>--enable-tcap-query</code> 8754 and <code>--enable-tcap-fkeys</code> to send cursor- and 8755 editing-keypad keys modified according to the keyboard (or 8756 termcap) selection for shift, alt, control, meta.</li> 8757 8758 <li>modify <code>kdch1</code> in termcap, e.g., 8759 <code>xterm-r6</code> to match the terminfo file.</li> 8760 8761 <li>add <code>-hm</code> option to turn 8762 <code>highlightColorMode</code> on or off.</li> 8763 8764 <li>add <code>highlightColorMode</code> resource to separate 8765 the new (since <a href="#xterm_225">patch #225</a>) 8766 highlighting with both text- and background-colors (prompted by 8767 report/example by Thomas Wolff).</li> 8768 8769 <li>add <em>Keep Selection</em> menu entry to turn the 8770 <code>keepSelection</code> resource on/off at runtime.</li> 8771 8772 <li>add <code>keepSelection</code> resource, which when 8773 enabled, tells xterm to retain the X selection even after it 8774 stops highlighting it (patch by Sergey Vlasov).</li> 8775 8776 <li>extend the <code>CSI > n</code> sequence to 8777 allow disabling all types of modified-keys that the 8778 <code>CSI > m</code> sequence affects.</li> 8779 8780 <li>move include for <code><xtermcap.h></code> in 8781 <code>resize.c</code> to avoid redefinition of 8782 <code>termios</code> structure on OpenSolaris (report by Rahul 8783 Gopinathan Nair).</li> 8784 8785 <li>extend terminfo building blocks for modified editing keys 8786 to include all six keys.</li> 8787 8788 <li>synchronize terminfo with ncurses (report by Stephane 8789 Chazelas) 8790 <ul> 8791 <li>equate <code>xterm-xfree86</code> and 8792 <code>xterm-xf86-v44</code>.</li> 8793 8794 <li>add ncurses extensions OTbs, AX, for termcap 8795 conversions.</li> 8796 8797 <li>make old/legacy entries such as <code>xterm-24</code>, 8798 <code>xterm-65</code> and aliases <code>xterms</code>, 8799 <code>vs100</code> inherit from 8800 <code>xterm-old</code>.</li> 8801 8802 <li>make <code>xterm-r5</code> and <code>xterm-r6</code> 8803 the same, ignoring historical errors in X Consortium's 8804 version.</li> 8805 </ul> 8806 </li> 8807 8808 <li>fix an ifdef in logic for selecting regular expressions 8809 while in a narrow-character locale (Debian #449227).</li> 8810 </ul> 8811 8812 <h1><a name="xterm_229" id="xterm_229">Patch #229 - 2007/8/12</a></h1> 8813 8814 <ul> 8815 <li>override locale in minstall.sh; change in <a href= 8816 "#xterm_226">patch #226</a> does not work in UTF-8 locale 8817 (report by Zdenek Sekera).</li> 8818 8819 <li>undo an incorrect fix for a memory leak in <a href= 8820 "#xterm_209">patch #209</a> (Debian #435858).</li> 8821 </ul> 8822 8823 <h1><a name="xterm_228" id="xterm_228">Patch #228 - 2007/7/22</a></h1> 8824 8825 <ul> 8826 <li>modify configure script to permit combining 8827 <code>--with-utempter</code> and <code>--enable-setuid</code>, 8828 e.g., for using xterm with the utempter library on FreeBSD 8829 (report by Andriy Gapon).</li> 8830 8831 <li>modify "Quit" menu entry to override the <code>-hold</code> 8832 command-line option.</li> 8833 8834 <li>add a check in the startup error-reporting to avoid writing 8835 to pipe when it has not been opened. In that case, report 8836 errors directly to the standard error.</li> 8837 8838 <li>add OPT_READLINE definition to xtermcfg.hin, overlooked in 8839 <a href="#xterm_205">patch #205</a> (report by Kalle Olavi 8840 Niemitalo).</li> 8841 8842 <li>modify <code>88colors2.pl</code> and 8843 <code>256colors2.pl</code>, adding <code>-r</code> option to 8844 reverse the palettes for the extended colors.</li> 8845 8846 <li>check for partial overwrite or deletion of multi-column 8847 characters in several cases, e.g., insert-character, 8848 delete-character, etc., and fill the remainder of the cells 8849 used by the multi-column characters affected with blanks.</li> 8850 8851 <li>correct character-class codes in wide-character mode for 8852 characters 215, 247 (see also <a href="#xterm_165">patch 8853 #165</a>).</li> 8854 8855 <li>fix missing assignment for UTF-8 parsing in widget 8856 initialization (Debian #403360).</li> 8857 8858 <li>correct index expression used to set line-wrapping flag, 8859 making selection from scrollback work consistently (Debian 8860 #430121, report by Vincent Lefèvre).</li> 8861 8862 <li>amend changes to handshake in <a href="#xterm_226">patch 8863 #226</a> to accommodate Solaris, which relies on the extra 8864 setting of the terminal size after I/O initialization. Do this 8865 by adding new resource <code>ptySttySize</code>, which is false 8866 for Linux and MacOS X, i.e., true for for Solaris and other 8867 SVR4 platforms, as well as FreeBSD (reports by David Wood, 8868 Renato Botelho).</li> 8869 8870 <li>check for X events after cursor-left, and carriage return, 8871 consistent with indexing operations (comments by Vegard Nossum 8872 and Ingo Molnar on a mailing-list).</li> 8873 8874 <li>initialize the <code>.keyboard</code> structure, needed for 8875 some platforms (such as Solaris) after <a href= 8876 "#xterm_227">patch #227</a> fixes for keysyms (patch by David 8877 Wood).</li> 8878 8879 <li>update config.guess, config.sub</li> 8880 </ul> 8881 8882 <h1><a name="xterm_227" id="xterm_227">Patch #227 - 2007/6/27</a></h1> 8883 8884 <ul> 8885 <li>exclude the Intel compiler from the extra gcc warning 8886 options added in <a href="#xterm_226">patch #226</a>.</li> 8887 8888 <li>modify change for Debian #422521 from <a href= 8889 "#xterm_226">patch #226</a> to work with configurations where 8890 the X server does not recognize the <code>XF86Paste</code> or 8891 <code>SunPaste</code> keysyms (report by Paolo Pumilia).</li> 8892 8893 <li>fix incorrect free in fix for "Selection" menu entry in 8894 <a href="#xterm_226">patch #226</a>.</li> 8895 </ul> 8896 8897 <h1><a name="xterm_226" id="xterm_226">Patch #226 - 2007/6/17</a></h1> 8898 8899 <ul> 8900 <li>add configure check to use 8901 <code>-Wno-unknown-pragmas</code> for Solaris, and a few other 8902 new gcc warning options to address regressions in its warning 8903 options.</li> 8904 8905 <li>add sample desktop and icon files, along with configure 8906 options for manipulating them.</li> 8907 8908 <li>fix an infinite loop when showing a 2-column character in a 8909 1-column screen (Debian #426863).</li> 8910 8911 <li>add <code>XF86Paste</code> and <code>SunPaste</code> to the 8912 default translations (Debian #422521, patch by Bernhard R 8913 Link).</li> 8914 8915 <li>update wcwidth.c (partly based on/prompted by mailing list 8916 comment).</li> 8917 8918 <li>update/improve keysym2ucs.c based on Unicode 5.0.1d3 and 8919 Xorg 7.1 keysymdef.h file.</li> 8920 8921 <li>improve <code>gen-pc-fkeys.pl</code>, making it show all of 8922 the building-block terminfo entries used by xterm.</li> 8923 8924 <li>correct strings used for modifiers applied to F1-F4 in 8925 xterm+pcf1 terminfo entry.</li> 8926 8927 <li>improve session management by adding the ICE connection 8928 number to the <code>select</code> call rather than waking up 8929 once per second (patch by Miroslav Lichvar).</li> 8930 8931 <li>add environment variable <code>$XTERM_LOCALE</code> to help 8932 with shell initialization, e.g., to set a specific locale for 8933 xterm on systems where a global locale is set in the shell 8934 startup scripts.</li> 8935 8936 <li>add resource settings <code>mkSampleSize</code> and 8937 <code>mkSamplePass</code> to modify the <code>mkWidth</code> 8938 added in <a href="#xterm_201">patch #201</a>. In <a href= 8939 "#xterm_202">patch #202</a>, xterm would also check if the 8940 system's <code>wcwidth</code> matched its built-in tables "well 8941 enough" to be used when <code>mkWidth</code> was false, and if 8942 not would use the built-in tables anyway. These resources allow 8943 the user to customize the decision (prompted by comments by 8944 Emanuele Giaquinta)</li> 8945 8946 <li>modify logic which resets/updates the screensize on the 8947 child process side of the pseudo-terminal to do this only if a 8948 successful handshake was received, e.g., as determined by the 8949 <code>waitForMap</code> resource (prompted by reports by 8950 Emanuele Giaquinta and Bernhard R Link, but see also <a href= 8951 "#xterm_177">patch #177</a> and <a href="#xterm_159">patch 8952 #159</a>.</li> 8953 8954 <li>improve permissions logic when closing pseudo-terminal 8955 (Debian #12261, patch by Nathanael Nerode, analysis by Richard 8956 Braakman).</li> 8957 8958 <li>add resource <code>highlightReverse</code> which controls 8959 whether xterm will allow selection highlighting to hide 8960 reverse-video or use the older behavior which inverts the 8961 foreground and background colors when selected text with 8962 reverse-video attribute (report by Adam M Costello, comments by 8963 Victor Vaile).</li> 8964 8965 <li>restore a special case for cursor-color in 8966 <code>ReverseVideo()</code> lost in rewrite for <a href= 8967 "#xterm_224">patch #224</a> (report by Adam Sulmicki).</li> 8968 8969 <li>correct initialization for menu entry for 8970 <code>bellIsUrgent</code> (patch by Emanuele Giaquinta).</li> 8971 8972 <li>correct length of underlining for double-width Xft fonts 8973 (report by Shidai Liu "Leo").</li> 8974 8975 <li>correct clipping for double-width Xft fonts (report by 8976 Shidai Liu "Leo").</li> 8977 8978 <li>modify initialization for <code>italicULMode</code> to 8979 avoid <code>XftPatternBuild</code> reusing bold attributes 8980 (report by Shidai Liu "Leo").</li> 8981 8982 <li>add a check in case someone tries to call the 8983 <code>popup-menu()</code> action on a menu which is not 8984 initialized (Debian #426364).</li> 8985 8986 <li>improve CF_IMAKE_CFLAGS to work with Solaris sed (report by 8987 Peter Bray).</li> 8988 8989 <li>improve guess for X's manpage section in 8990 <code>minstall.sh</code>, (prompted by comment by Miroslav 8991 Lichvar).</li> 8992 8993 <li>modify <code>minstall.sh</code> to handle manpage patch 8994 with more than one dot (patch by Miroslav Lichvar).</li> 8995 8996 <li>fix configure message for --disable-setgid option (patch by 8997 Miroslav Lichvar).</li> 8998 8999 <li>add <code>allowTitleOps</code> resource to allow users to 9000 prevent the title- and icon-names from changing (request by 9001 John Bashinski).</li> 9002 9003 <li>fix "spawn-new-terminal" action, for the case where no 9004 parameter is passed to the action (patch by Daniel 9005 Colascione).</li> 9006 9007 <li>fix error-checking on internal font switching for 9008 "Selection" menu entry (Debian #421523).</li> 9009 9010 <li>amend select/paste change from <a href="#xterm_225">patch 9011 #225</a> by limiting it to non-UTF-8/non-KOI8-R encoding 9012 (Debian #420974).</li> 9013 9014 <li>add workaround for groff ".URL" codes which are not present 9015 in some commonly-used bitmap fonts (Debian #418324).</li> 9016 </ul> 9017 9018 <h1><a name="xterm_225" id="xterm_225">Patch #225 - 2007/3/24</a></h1> 9019 9020 <ul> 9021 <li>add <code>useClipping</code> resource to allow clipping to 9022 be disabled.</li> 9023 9024 <li>use <code>XftDrawSetClipRectangles</code> to work around 9025 Xft pixel-trash (report by Reuben Thomas).</li> 9026 9027 <li>add configure option <code>--enable-tcap-fkeys</code>, and 9028 resource <code>tcapFunctionKeys</code>, which can be used to 9029 tell xterm to use function-key definitions from the termcap (or 9030 terminfo) which it uses to set $TERM on startup.</li> 9031 9032 <li>add resources <code>altIsNotMeta</code> and 9033 <code>altSendsEscape</code> to allow one to use Alt-keys like 9034 the meta-key even if they are bound to different keycodes 9035 (prompted by discussion with Daniel Jacobowitz).</li> 9036 9037 <li>revert a change from <a href="#xterm_216">patch #216</a> 9038 that unnecessarily made the meta modifier override the 9039 <code>eightBitInput</code> resource if the alt- and 9040 meta-modifiers happened to overlap (report/patch by Daniel 9041 Jacobowitz).</li> 9042 9043 <li>correct associated font for active icon for colored text 9044 (broken in <a href="#xterm_224">patch #224</a>).</li> 9045 9046 <li>correct ifdef's for Darwin (patch by Emanuele 9047 Giaquinta).</li> 9048 9049 <li>add <code>highlightTextColor</code> resource, and options 9050 <code>-selfg</code>, <code>-selbg</code> like <code>xwsh</code> 9051 (adapted from patch by Victor Vaile).</li> 9052 9053 <li>revise <code>find_closest_color()</code> function to 9054 address concern about borrowing from <code>Tcl/Tk</code> 9055 (request by Dan McNichol).</li> 9056 9057 <li>add "spawn-new-terminal" action, which can be assigned to 9058 key translation, allowing one to spawn a new copy of xterm 9059 using the current process's working directory (adapted from 9060 patch by Daniel Colascione).</li> 9061 9062 <li>improve select/paste between UTF-8 and Latin1 xterms by 9063 adapting the translations from <a href="#xterm_185">patch 9064 #185</a>. Extend that to include Unicode fullwidth forms 9065 FF00-FF5E. Also modify select/paste of DEC line-drawing 9066 characters in Latin1 mode to use ASCII characters.</li> 9067 9068 <li>add "Enable Bell Urgency" to VT Options menu, removed 9069 "Enable Margin Bell".</li> 9070 9071 <li>add <code>bellIsUrgent</code> resource to control whether 9072 the Urgency hint is set/reset.</li> 9073 9074 <li>modify to set Urgency window manager hint on bell, reset it 9075 on Focus-In event (patch by Emanuele Giaquinta).</li> 9076 9077 <li>add <code>--disable-setgid</code> configure option (request 9078 by Miroslav Lichvar).</li> 9079 9080 <li>fix a possible infinite loop in last change to 9081 <code>dabbrev-expand()</code> (patch by Emanuele 9082 Giaquinta).</li> 9083 9084 <li>modify initialization to set the pty erase value if the 9085 <code>erase</code> is set in the <code>ttyModes</code> 9086 resource. This overrides the <code>ptyInitialErase</code> 9087 setting (request by Lluís Batlle i Rossell).</li> 9088 9089 <li>add <code>initialFont</code> resource to xterm widget, like 9090 tek-widget (Debian #299669).</li> 9091 9092 <li>amend change to <code>boldMode</code> from <a href= 9093 "#xterm_223">patch #223</a> for Debian #347790. As noted in 9094 Debian #412599, that made xterm no longer match the documented 9095 behavior. Add new resource <code>alwaysBoldMode</code> to allow 9096 overriding the comparison between normal/bold fonts when 9097 deciding whether to use overstriking to simulate bold 9098 fonts.</li> 9099 9100 <li>restore background color in ClearCurBackground(), omitted 9101 in changes for <a href="#xterm_223">patch #223</a> (report by 9102 Miroslav Lichvar).</li> 9103 9104 <li>correct logic for repainting double-width TrueType 9105 characters (prompted by test-case for Novell #246573).</li> 9106 9107 <li>add a check to avoid trying to repeat a multibyte character 9108 (report by Sami Farin).</li> 9109 9110 <li>modify parameter to <code>XftNameParse()</code> to select 9111 wide face-name as needed, to make <code>-fd</code> option work 9112 (patch by Mike Fabian, Novell #246573).</li> 9113 9114 <li>correct logic for mouse highlight tracking's abort 9115 sequence, broken in a restructuring modification from <a href= 9116 "#xterm_224">patch #224</a> (report by Thomas Wolff).</li> 9117 9118 <li>revert the simplification of blinking cursor, since that 9119 broke the xor'ing introduced in <a href="#xterm_193">patch 9120 #193</a> (report by Thomas Wolff).</li> 9121 </ul> 9122 9123 <h1><a name="xterm_224" id="xterm_224">Patch #224 - 2007/2/11</a></h1> 9124 9125 <ul> 9126 <li>simplify code for set/reset mode for blinking cursor (patch 9127 by Emanuele Giaquinta).</li> 9128 9129 <li>modify <code>dabbrev-expand()</code> to restart after the 9130 last match (patch by Emanuele Giaquinta).</li> 9131 9132 <li>add control sequences for enabling/disabling focus in/out 9133 event reporting (request by Bram Moolenaar).</li> 9134 9135 <li>improve startup performance of menus by adding resource 9136 setting <code>menuLocale</code> which can be set to override 9137 X's lengthy initialization of fontsets - which are seldom used 9138 for the <code>Xaw</code> popup menus (adapted from patch by 9139 Dave Coffin).</li> 9140 9141 <li>modify <code>do_precomposition()</code> function and 9142 <code>make-precompose.sh</code> to handle 21-bit codes vs the 9143 16-bit codes those were written for, and fix a few mis-sorted 9144 codes (patch by Thomas Wolff).</li> 9145 9146 <li>handle special case in <code>-cjk_width</code> which 9147 unexpectedly caused a character's width to change when a 9148 combining character (patch by Thomas Wolff)</li> 9149 9150 <li>fix build for GNU/KFreeBSD (Debian #40111).</li> 9151 9152 <li>consolidate GC creation/updating into a single module to 9153 reduce GC manipulation (prompted by Debian #389476, though a 9154 complete fix would involve optimizing the scrolling 9155 behavior).</li> 9156 9157 <li>fix ifdef of xtermCellWidth(), which broke for a case 9158 without TrueType and without wide-character support (report by 9159 Martin Pirker).</li> 9160 9161 <li>undo a comparison in 9162 <code>handle_translated_exposure</code> which did not work due 9163 to X server optimization. That caused the inner border to be 9164 repainted with unexpected colors when handling a repaint, e.g., 9165 after switching to/from another workspace (Debian #401726, 9166 Redhat Bugzilla #223027).</li> 9167 9168 <li>allow <code>-cr</code> option to override cursor color when 9169 <code>-ah</code> option is used (Debian #406502).</li> 9170 9171 <li>add a note in xterm's manpage explaining that the 9172 <code>-bw</code> (or <code>-w</code>) option is only used by 9173 the window manager, if at all (Debian #405043).</li> 9174 9175 <li>make <code>Selection</code> of <code>VT Fonts</code> 9176 work with <code>selectToClipboard</code> resource.</li> 9177 9178 <li>correct length calculation for <code>Selection</code> entry 9179 of <code>VT Fonts</code> menu, broken since it ignored the 9180 actual selection length since X11R4.</li> 9181 9182 <li>fixes for fontsize changes with <code>-fa</code> option 9183 (Redhat Bugzilla #222340).</li> 9184 </ul> 9185 9186 <h1><a name="xterm_223" id="xterm_223">Patch #223 - 9187 2006/11/30</a></h1> 9188 9189 <ul> 9190 <li>add <code>--enable-rectangles</code> configure option 9191 (request by Martin Pirker).</li> 9192 9193 <li>correct default value for <code>--with-symlink</code> 9194 configure option.</li> 9195 9196 <li>fixes configure script macros that use 9197 <code>$X_EXTRA_LIBS</code>.</li> 9198 9199 <li>modify configure script to provide support for pre-package 9200 config versions of Xft aka "FreeType".</li> 9201 9202 <li>add the Xaw scrollbar translations resource to the xterm 9203 manpage, add an example showing how to change the mouse button 9204 assignments (Debian #382225).</li> 9205 9206 <li>amend a change from <a href="#xterm_216">patch #216</a>, 9207 which omitted modifiers for control, meta, etc., if they were 9208 mixed with any other modifiers. The intent of the change was to 9209 avoid confusion with <code>XK_Mode_switch</code> and 9210 <code>XK_ISO_Level3_Shift</code>; the check is now done 9211 explicitly (report by Daniel Jacobowitz).</li> 9212 9213 <li>interpret a negative value for 9214 <code>modifyCursorKeys</code> or 9215 <code>modifyFunctionKeys</code> resources to disable the 9216 respective features (prompted by Novell #220728).</li> 9217 9218 <li>amend cell-width computation for FreeType from <a href= 9219 "#xterm_217">patch #217</a>, which did not work for VT100 9220 line-drawing characters (Debian #399638, Gentoo #147111).</li> 9221 9222 <li>amend a change from <a href="#xterm_216">patch #216</a>, 9223 which made alt-modifier on a cursor-key send a modifier 9224 parameter (Novell #220728).</li> 9225 9226 <li>correct an off-by-one that made DECCRA not work 9227 (report/patch by Martin Pirker).</li> 9228 9229 <li>revert an optimization in SGR_Foreground() and 9230 SGR_Background from <a href="#xterm_209">patch #209</a> (Debian 9231 #347722, analysis by Pierre Lombard).</li> 9232 9233 <li>fix for <code>boldMode</code> (Debian #347790, patch by Tim 9234 Pope).</li> 9235 9236 <li>amend fix for <code>-iconic</code> in <a href= 9237 "#xterm_208">patch #208</a>, which broke the positioning part 9238 of <code>-geom</code> with toolbar configuration.</li> 9239 9240 <li>fix to prevent indexing error in regular expressions (patch 9241 by Dennis Schneider).</li> 9242 9243 <li>fixes to make the <code>internalBorder</code> area not 9244 change color due to reverseVideo and/or related exposure 9245 events. The latter was a very old bug exposed in <a href= 9246 "#xterm_196">patch #196</a> (report by Neil Hoggarth, also 9247 Debian #397624).</li> 9248 </ul> 9249 9250 <h1><a name="xterm_222" id="xterm_222">Patch #222 - 9251 2006/10/17</a></h1> 9252 9253 <ul> 9254 <li>minor optimization for recoloring cursor via dynamic 9255 colors.</li> 9256 9257 <li>fix a bug caused by restructuring of tek4014 widget (report 9258 by Paul Schenkeveld)</li> 9259 </ul> 9260 9261 <h1><a name="xterm_221" id="xterm_221">Patch #221 - 2006/10/1</a></h1> 9262 9263 <ul> 9264 <li>fix for regular expressions: the code which converted the 9265 column offset within a line did not check properly for the end 9266 of a line, and if allowed to match the whole line, would select 9267 the beginning of the following line. If the following line were 9268 empty, in turn it would select from the next, etc. (report by 9269 Sean Reifschneider).</li> 9270 9271 <li>minor optimization of color allocation to avoid repainting 9272 the screen if the corresponding color had not been 9273 allocated.</li> 9274 9275 <li>fixes for vttests/256colors.pl (report by Egmont 9276 Koblinger).</li> 9277 9278 <li>add terminfo building block entries for modifiers of the 9279 6-key editing keypad.</li> 9280 9281 <li>fix for initialization of tek4014 which broke on QNX 9282 6.1</li> 9283 </ul> 9284 9285 <h1><a name="xterm_220" id="xterm_220">Patch #220 - 2006/9/10</a></h1> 9286 9287 <ul> 9288 <li>make "xterm -t -iconic" work as expected, i.e., start in 9289 tek4014 mode, but iconified.</li> 9290 </ul> 9291 9292 <h1><a name="xterm_219" id="xterm_219">Patch #219 - 2006/9/4</a></h1> 9293 9294 <ul> 9295 <li>some internal restructuring to separate data for vt100 and 9296 tek4014 widgets.</li> 9297 9298 <li>fix a few cases where form-events would be seen by the 9299 vt100 widget when built with the toolbar configuration.</li> 9300 </ul> 9301 9302 <h1><a name="xterm_218" id="xterm_218">Patch #218 - 2006/8/27</a></h1> 9303 9304 <ul> 9305 <li>change behavior when encountering an illegal character in a 9306 title string. Rather than reject the string, translate illegal 9307 characters into "?" and use the string (requested by Thomas 9308 Wolff).</li> 9309 9310 <li>improve checks for nonprinting characters in title strings 9311 (report by Samuel Thibault).</li> 9312 9313 <li>correct typo in menu labels, changing 9314 <code>print-redirect</code> to <code>print-redir</code>, making 9315 it follow the manpage and match the usage for the actions table 9316 (report by Samuel Thibault).</li> 9317 9318 <li>correct a typo that prevents building with some older 9319 systems such as Solaris 2.6 (report by Julian Bridle).</li> 9320 </ul> 9321 9322 <h1><a name="xterm_217" id="xterm_217">Patch #217 - 2006/8/20</a></h1> 9323 9324 <ul> 9325 <li>minor improvements to FreeType font layout and 9326 drawing.</li> 9327 9328 <li>add a check in the ptyInitialErase logic to ensure that the 9329 termcap was read (Redhat Bugzilla #201246).</li> 9330 9331 <li>limit changes for reverse-video from <a href= 9332 "#xterm_216">patch #216</a> to cases where the reverse-video 9333 command-line option is used (report by Zdenek Sekera).</li> 9334 9335 <li>correct bitmap-derived pointsizes for TrueType fonts; they 9336 should be proportional to the square root of the area of the 9337 bitmap fonts.</li> 9338 9339 <li>add resources to specify pointsize of TrueType fonts 9340 (request by Reuben Thomas).</li> 9341 9342 <li>improve install of terminfo by filtering out harmless 9343 messages related to extended capabilities. At the same time, 9344 use ncurses tic to compile the extended capabilities if 9345 possible (report by Zdenek Sekera).</li> 9346 9347 <li>update "xterm+pcfkeys" terminfo entry to correspond to 9348 <a href="#xterm_216">patch #216</a>.</li> 9349 </ul> 9350 9351 <h1><a name="xterm_216" id="xterm_216">Patch #216 - 2006/8/3</a></h1> 9352 9353 <ul> 9354 <li>improve handling of <code>ConfigureNotify</code> events by 9355 checking if there are further events in the queue which 9356 obsolete the current one (adapted from rxvt 2.7.5). Only the 9357 normal normal (non-toolbar) configuration is addressed in this 9358 patch.</li> 9359 9360 <li>several changes to terminfo: 9361 <ul> 9362 <li>incorporate some minor changes from ncurses to help 9363 keep these synchronized: 9364 <dl> 9365 <dt>2005-02-26</dt> 9366 9367 <dd>modify sgr/sgr0 in xterm-new to improve tgetent's 9368 derived "me".</dd> 9369 9370 <dt>2006-02-18</dt> 9371 9372 <dd>remove ncv flag from xterm-16color</dd> 9373 9374 <dt>2006-06-24</dt> 9375 9376 <dd>improve xterm-256color by combining the 16-color 9377 setaf/setab strings with SGR 48, and cancelling the 9378 setf/setb strings.</dd> 9379 </dl> 9380 </li> 9381 9382 <li>use extended function-key definitions for xterm-sun, 9383 xterm-sco entries.</li> 9384 9385 <li>add terminfo building-blocks corresponding to the 9386 <code>modifyFunctionKeys</code> and 9387 <code>modifyCursorKeys</code> resources.</li> 9388 </ul> 9389 </li> 9390 9391 <li>ifdef'd Sun function-key feature to make it optional, like 9392 HP and SCO.</li> 9393 9394 <li>extend table for termcap-query feature through F63, and 9395 updated tcapquery.pl to match.</li> 9396 9397 <li>modify logic for function-key input processing to allow 9398 function key numbers which are constructed by control- and 9399 shift-modifiers to extend beyond X's hardcoded limit of 9400 35.</li> 9401 9402 <li>add control sequence to set or reset the 9403 <code>eightBitInput</code> resource.</li> 9404 9405 <li>change default resource <code>modifyFunctionKeys</code> to 9406 2 to avoid sending SS3 with parameters (report by Kalle Olavi 9407 Niemitalo).</li> 9408 9409 <li>add control sequences for setting and resetting the values 9410 of the <code>modifyCursorKeys</code>, 9411 <code>modifyFunctionKeys</code> and 9412 <code>modifyOtherKeys</code> resources.</li> 9413 9414 <li>add <code>modifyFunctionKeys</code> resource like 9415 <code>modifyCursorKeys</code>. Setting this to zero allows one 9416 to use the control- and shift-modifiers to construct function 9417 key strings, for terminals using many function keys, e.g., for 9418 <code>xterm-sun</code> or <code>xterm-sco</code>.</li> 9419 9420 <li>modify screen responses and function-key logic to reduce 9421 the number of writes made, to make it less likely that an 9422 application would read only part of a function-key in a read 9423 operation (suggested by John E Urbanczyk).</li> 9424 9425 <li>add <code>combiningChars</code> resource, which allows the 9426 user to specify the maximum number of combining characters that 9427 xterm will store for each cell in wide-character mode (prompted 9428 by request by Markus Kuhn to increase the limit from 2).</li> 9429 9430 <li>improve logic in <code>metaSendsEscape</code> in case the 9431 Alt- and Meta-keys are mapped to different modifiers. That 9432 allows one to use the Alt-key for shifting in the 9433 <code>eightBitInput</code> and use a Meta-key modifier to 9434 prefix the result with an <code><ESC></code>.</li> 9435 9436 <li>improve <code>modifyCursorKeys</code> logic to prevent it 9437 from modifying codes where <code>eightBitInput</code> or 9438 <code>metaSendsEscape</code> are set (request by Dan 9439 Nicolaescu).</li> 9440 9441 <li>improve <code>modifyCursorKeys</code> logic to prevent it 9442 from changing the user input when other modifiers such as AltGr 9443 are used (report by Thomas Wolff).</li> 9444 9445 <li>extend <code>modifyCursorKeys</code> to include the numeric 9446 keypad when in application mode.</li> 9447 9448 <li>improve <code>-reverse</code> (<code>-rv</code>) option 9449 (patch by Jason Vas Dias, Redhat #189161).</li> 9450 9451 <li>workaround for color resources on Fedora-5 which made the 9452 toolbar colors inconsistent.</li> 9453 9454 <li>corrected calls used for <code>--disable-setuid</code> 9455 option, add debugging traces to help diagnose this area.</li> 9456 9457 <li>modify configure script to ensure that 9458 <code>USE_UTMP_SETGID</code> is defined only if the check for 9459 POSIX saved-ids succeeds, or corresponds to one of the BSD 9460 systems known to have a workable <code>setegid</code> 9461 function.</li> 9462 9463 <li>extend configure check for POSIX saved-ids to include BSD 9464 systems</li> 9465 9466 <li>modify CF_SYSV configure macro to work with gcc on HPUX 9467 10.20, whose broken <code><term.h></code> relies on 9468 including <code><termios.h></code>.</li> 9469 9470 <li>change order of setuid/setgid ifdef checks in Imakefile to 9471 make it simpler to produce a setgid install, allowing the 9472 latter to override the former (prompted by an XFree86 9473 commit).</li> 9474 9475 <li>adapt a fix for setgid support from subsequent XFree86 9476 changes (patch by Emanuele Giaquinta).</li> 9477 9478 <li>further improve setgid support (patches by Emanuele 9479 Giaquinta).</li> 9480 </ul> 9481 9482 <h1><a name="xterm_215" id="xterm_215">Patch #215 - 2006/6/19 - 9483 XFree86 4.6.99.2</a></h1> 9484 9485 <ul> 9486 <li>improve setgid support by exploiting the saved-ids feature 9487 on which it relies (patch by Emanuele Giaquinta).</li> 9488 9489 <li>make the <code>modifyOtherKeys</code> resource disabled by 9490 default since the intermediate setting altered some common 9491 bindings (report by Emanuele Giaquinta).</li> 9492 </ul> 9493 9494 <h1><a name="xterm_214" id="xterm_214">Patch #214 - 2006/6/18 - 9495 XFree86 4.6.99.2</a></h1> 9496 9497 <ul> 9498 <li>modify makefile rule for ctlseqs.txt to strip 9499 backspace/overstrikes, and add a copy of ctlseqs.txt to the 9500 source tarballs (requests by Bram Moolenaar, Emanuele 9501 Giaquinta).</li> 9502 9503 <li>add <code>modifyOtherKeys</code> resource, analogous to the 9504 <code>modifyCursorKeys</code> resource. This applies to keys 9505 that normally would transmit nothing when a given modifier is 9506 applied (request by Dan Nicolaescu).</li> 9507 9508 <li>add <code>default</code> to the acceptable values for the 9509 <code>keyboardType</code> resource, allowing the 9510 <code>-kt</code> command-line option to override app-defaults 9511 resource settings of <code>sunKeyboard</code>, etc.</li> 9512 9513 <li>correct ifdef's for <code>XkbBell()</code> which used the 9514 header file but not the corresponding function in <a href= 9515 "#xterm_175">patch #175</a> (report by Zach Beane).</li> 9516 9517 <li>add xterm manpage to the <code>--with-symlink</code> 9518 logic.</li> 9519 9520 <li>regenerated configure script to omit some debugging 9521 artifacts of the SIGWINCH test.</li> 9522 9523 <li>fix <code>install-man</code> rule in 9524 <code>Makefile.in</code> to avoid including the 9525 <code>$(DESTDIR)</code> value in substitutions made on the 9526 manpages (patch by Emanuele Giaquinta).</li> 9527 9528 <li>improved fix for cursor deallocation (Redhat #186935, patch 9529 by Jason Vas Dias).</li> 9530 9531 <li>improve checks for setuid/setgid operation to accommodate 9532 limited resource management in some kernels (Gentoo 9533 #193238).</li> 9534 9535 <li>update config.guess, config.sub</li> 9536 </ul> 9537 9538 <h1><a name="xterm_213" id="xterm_213">Patch #213 - 2006/4/30 - 9539 XFree86 4.5.99.905</a></h1> 9540 9541 <ul> 9542 <li>minor optimization to cell layout; will use that to 9543 simplify some logic and allow for more than two combining 9544 characters in another patch.</li> 9545 9546 <li>add <code>utf8Latin1</code> resource to make optional the 9547 feature from <a href="#xterm_209">patch #209</a> which allowed 9548 ISO-8859-1 fonts to be used in cases where a wide font was 9549 given. This would only work for the special case where the user 9550 normally used Latin-1 and wanted some wide characters (report 9551 by Rostislav Krasny).</li> 9552 9553 <li>add <code>utf8Title</code> resource to manpage (Novell 9554 #52655).</li> 9555 9556 <li>fix typo in table entry for <code>utf8Title</code> resource 9557 which made it treated as an integer rather than boolean (patch 9558 by Mike Fabian, Novell #52655).</li> 9559 </ul> 9560 9561 <h1><a name="xterm_212" id="xterm_212">Patch #212 - 2006/4/9 - 9562 XFree86 4.5.99.904</a></h1> 9563 9564 <ul> 9565 <li>improve description of <code>forceBoxChars</code> in 9566 manpage (discussion with Joe Wells).</li> 9567 9568 <li>set checkmark for "Select To Clipboard" menu entry on 9569 startup, from resource setting.</li> 9570 9571 <li>update manpage to note that 9572 <code>*customization:color</code> is not needed, though it is 9573 useful (Redhat #188034).</li> 9574 9575 <li>add underscore to sample pattern for URL in 9576 <code>XTerm.ad</code> (Redhat #188037).</li> 9577 9578 <li>modify install rule for manpage to use the configured 9579 app-defaults directory (Redhat #188031).</li> 9580 9581 <li>add checks in <code>releaseCursorGCs()</code> to ensure 9582 GC's are distinct, needed since memory leak changes for 9583 <a href="#xterm_208">patch #208</a> (Redhat #186935, patch by 9584 Jason Vas Dias).</li> 9585 9586 <li>modify <code>Imakefile</code> definitions to allow 9587 <code>imake</code> to set <code>InstallXtermSetGID</code>. Add 9588 symbol <code>InstGidFlags</code>.</li> 9589 9590 <li>add configure script check to ensure that SIGWINCH if 9591 defined even when headers undefine this as a side-effect of 9592 <code>_POSIX_C_SOURCE</code>, etc.</li> 9593 9594 <li>resync with XFree86 CVS 9595 <ul> 9596 <li>ifdef-out chmod of terminal device for OS/2 (XFree86 9597 #1663, Frank Giessler).</li> 9598 9599 <li>move new <code>Imakefile</code> chunk which defines 9600 <code>$(CSGIDFLAGS)</code> before DEFINES, e.g., for IRIX64 9601 (Marc La France).</li> 9602 </ul> 9603 </li> 9604 </ul> 9605 9606 <h1><a name="xterm_211" id="xterm_211">Patch #211 - 2006/3/19 - 9607 XFree86 4.5.99.902</a></h1> 9608 9609 <ul> 9610 <li>modify prefix/suffix transformation in makefile to make 9611 <code>uxterm</code> install properly on Cygwin.</li> 9612 9613 <li>restore the sizeof-comparison for <code>struct 9614 lastlog</code> added in <a href="#xterm_208">patch #208</a>, 9615 rendered (mostly) obsolete in <a href="#xterm_210">patch 9616 #210</a>, since an imake configuration can still turn that code 9617 on (prompted by comment by David Dawes).</li> 9618 9619 <li>remove feature for <code>FreeBSDArchitecture</code> from 9620 <code>Imakefile</code> which would install xterm using the 9621 <code>utmp</code> group since a standard FreeBSD system has no 9622 such group, though it would support this configuration. FreeBSD 9623 packager uses the <code>configure</code> script, which can make 9624 the appropriate check (prompted by comment by David 9625 Dawes).</li> 9626 9627 <li>fixes for gcc redefinition warnings when built using imake 9628 (reports by David Dawes, Marc La France).</li> 9629 </ul> 9630 9631 <h1><a name="xterm_210" id="xterm_210">Patch #210 - 2006/3/12 - 9632 XFree86 4.5.99.902</a></h1> 9633 9634 <ul> 9635 <li>add configure check for workaround in <a href= 9636 "#xterm_208">patch #208</a> for Solaris' inconsistent support 9637 for struct lastlog to quiet compiler warnings (prompted by 9638 David Dawes commit message for XFree86).</li> 9639 9640 <li>fixes for BASE64 selection manipulation, e.g., ensure that 9641 the string terminator is written after cut-buffer data (report 9642 by Joe Allen).</li> 9643 9644 <li>add vttests/paste64.pl script to test experimental option 9645 for setting/getting selection data.</li> 9646 9647 <li>add some error-checking in fontutils.c (prompted by David 9648 Dawes commit message for XFree86).</li> 9649 9650 <li>change xterm manpage to show the actual color resource 9651 names <code>XtDefaultForeground</code> and 9652 <code>XtDefaultBackground</code> rather than black and white 9653 (prompted by discussion with Emanuele Giaquinta).</li> 9654 9655 <li>add <code>utf8Title</code> resource and menu entry, 9656 allowing the user to control whether title strings are 9657 interpreted as ISO-8859-1 or UTF-8 encoding (Novell #52655, 9658 Novell #113206).</li> 9659 9660 <li>change order of ifdef's for utempter versus platforms in 9661 <code>Imakefile</code> to ensure a proper value for 9662 <code>InstallXtermSetGID</code> (prompted by Marc La France 9663 commit message for XFree86).</li> 9664 9665 <li>update the cursor GCs when menu entry for reverse video is 9666 toggled. (Redhat #183993).</li> 9667 9668 <li>a memory-leak fix for <code>set_cursor_gcs()</code> in 9669 <a href="#xterm_208">patch #208</a> broke the <code>-cm</code> 9670 option (Redhat #182382).</li> 9671 </ul> 9672 9673 <h1><a name="xterm_209" id="xterm_209">Patch #209 - 2006/2/12 - 9674 XFree86 4.5.99.22</a></h1> 9675 9676 <ul> 9677 <li>remove <code>setf</code> and <code>setb</code> from 9678 <code>xterm-256color</code> terminfo entry to avoid issues with 9679 applications that ignore the ANSI strings (report by Emanuele 9680 Giaquinta).</li> 9681 9682 <li>remove obsolete references to "Xorg" to avoid confusion 9683 with "X.org" (prompted by David Dawes commit message for 9684 XFree86).</li> 9685 9686 <li>improve initial layout performance for the toolbar 9687 configuration by precalculating the height of the toolbar.</li> 9688 9689 <li>remove menu entry for "Enable Curses Emulation" (to make 9690 room for "Select To Clipboard").</li> 9691 9692 <li>add resource <code>selectToClipboard</code>, action 9693 <code>set-select</code> and a menu entry to allow users to 9694 switch between PRIMARY and CLIPBOARD for select/paste.</li> 9695 9696 <li>allow cursor to have the same color as foreground (text), 9697 since it is rendered as reverse (Debian #350664).</li> 9698 9699 <li>amend change for loading <code>utf8Fonts</code> resource 9700 from <a href="#xterm_204">patch #204</a> to allow an ISO-8859-1 9701 "normal" font to be combined with an ISO-10646 font if the 9702 latter is given via the <code>-fw</code> option or its 9703 corresponding resource value (prompted by comment in Novell 9704 #49305).</li> 9705 9706 <li>add <code>TIOCSCTTY</code> <code>ioctl()</code> ifdef'd for 9707 <code>__GNU__</code> to set the controlling terminal (Debian 9708 #348457).</li> 9709 9710 <li>add configure option <code>--disable-leaks</code>.</li> 9711 9712 <li>add a check in <code>Bell</code> to ensure that the VT100 9713 widget is realized, since it may be called by 9714 <code>xtermLoadFont</code> given an incorrect font resource 9715 (Redhat #180450).</li> 9716 9717 <li>improve initialization of wide-bold font by not using the 9718 derived value when it happens to have few glyphs (report by 9719 Mboso Sampson).</li> 9720 9721 <li>improve dynamic colors by not repainting the screen if only 9722 the cursor color changes (request by Bram Moolenaar).</li> 9723 9724 <li>fix menu initialization for tek4014 window broken in 9725 <a href="#xterm_206">patch #206</a>.</li> 9726 9727 <li>typo in manpage (Debian #351425).</li> 9728 9729 <li>correct loop logic in <code>dotext</code> to prevent an 9730 infinite loop if a wide character was just at the right margin 9731 when wrapping was disabled (report by Serge van den Boom).</li> 9732 9733 <li>initialize the saved-cursor data so a restore-cursor 9734 operation without a preceding save-cursor operation will not 9735 modify the foreground color.</li> 9736 9737 <li>add a new selection feature: regular expressions, and new 9738 resources which specify what happens on multiple mouse clicks: 9739 <code>on2Clicks</code>, <code>on3Clicks</code>, 9740 <code>on4Clicks</code> and <code>on5Clicks</code>.</li> 9741 9742 <li>revert the <code>XTerm.ad</code> change from <a href= 9743 "#xterm_208">patch #208</a> (Debian #348384).</li> 9744 9745 <li>fixes for the print-window to make it handle combining 9746 characters in UTF-8 mode.</li> 9747 9748 <li>add check to ensure that double-clicking to extend 9749 selection will not extend it into the scrollback area. This 9750 still allows users to scroll back and select text (Debian 9751 #347415).</li> 9752 9753 <li>add configure option <code>--with-tty-group</code> to help 9754 work around deficiencies in packager's build environment 9755 (Debian #349142).</li> 9756 9757 <li>fix typo in configure script option 9758 <code>--disable-narrowproto</code> (report by David 9759 Martínez Moreno).</li> 9760 9761 <li>amend CF_X_FREETYPE changes for <code>pkg-config</code> 9762 check to ensure that <code>Xft</code> is known to that tool 9763 (report and patch by Emanuele Giaquinta).</li> 9764 9765 <li>add an ifdef to allow <code>./configure 9766 --disable-active-icon</code> to work, broken by new code for 9767 testing memory leaks in <a href="#xterm_208">patch #208</a> 9768 (report by Brian Lindholm).</li> 9769 </ul> 9770 9771 <h1><a name="xterm_208" id="xterm_208">Patch #208 - 2006/1/3 - 9772 XFree86 4.5.99.19</a></h1> 9773 9774 <ul> 9775 <li>add <code>charClass</code> resource to 9776 <code>XTerm.ad</code> and <code>UXTerm.ad</code> which 9777 simplifies selecting URLs (prompted by Kirill Ponomarew).</li> 9778 9779 <li>modify install rule for <code>uxterm</code> to account for 9780 the <code>--program-prefix</code>, etc., options by invoking 9781 the transformed name of xterm rather than simply "xterm".</li> 9782 9783 <li>modify configure <code>--with-app-defaults</code> option to 9784 allow <code>--without-app-defaults</code>.</li> 9785 9786 <li>add configure <code>--with-symlink</code> option to make it 9787 simpler to install successive versions of <code>xterm</code> 9788 renamed using the <code>--program-prefix</code>, etc., options 9789 with a symbolic link pointing to the most recent.</li> 9790 9791 <li>make <code>-iconic</code> option work with toolbar 9792 configuration (Gentoo #113604).</li> 9793 9794 <li>suppress <code>lastlog</code> feature for 64-bit Solaris 9795 configuration since that platform provides only a 32-bit 9796 interface (report by Peter Bray).</li> 9797 9798 <li>fix memory reallocation for the "UTF-8" menu entry when 9799 xterm is started using the <code>+u8</code> option (reported by 9800 Jan Willem Stumpel).</li> 9801 9802 <li>add a configure check for the actual path of 9803 <code>luit</code>, to work around broken <code>imake</code> 9804 configurations.</li> 9805 9806 <li>add a configure check for <code>pkg-config</code> (Redhat 9807 Bugzilla #173541).</li> 9808 9809 <li>modify install-rule for <code>uxterm</code> to omit 9810 executable suffix, e.g., for Cygwin.</li> 9811 9812 <li>modify <code>sinstall.sh</code> to work around quirks in 9813 Cygwin configuration.</li> 9814 </ul> 9815 9816 <h1><a name="xterm_207" id="xterm_207">Patch #207 - 2005/11/13 - 9817 XFree86 4.5.99.16</a></h1> 9818 9819 <ul> 9820 <li>enable <code>lastlogx</code> support for NetBSD (was added, 9821 but not enabled in <a href="#xterm_186">patch #186</a>).</li> 9822 9823 <li>work around broken <code>lastlog.h</code> in glibc 2.3.5, 9824 which includes <code>utmp.h</code>.</li> 9825 9826 <li>revert part of recent XFree86 Imakefile change, restoring 9827 the <code>-I.</code> needed for <code>xmkmf</code> builds of 9828 xterm (XFree86 Bugzilla #1633, reports by Alexander Pohoyda, 9829 Matthieu Herrb).</li> 9830 9831 <li>change compiled-in default for <code>printerCommand</code> 9832 resource to an empty string. People who want to use the printer 9833 should be able to read the manual (Debian #311490).</li> 9834 9835 <li>modify <code>Imakefile</code> to work around old problems 9836 in <code>imake</code> configuration to allow test-builds using 9837 <code>xmkmf</code> on Linux. (This was not noticed since 9838 several releases had broken definitions relating to Xft which 9839 were harder to work around).</li> 9840 9841 <li>link <code>resize</code> for SCO platforms (Kean 9842 Johnston).</li> 9843 </ul> 9844 9845 <h1><a name="xterm_206" id="xterm_206">Patch #206 - 2005/11/3 - 9846 XFree86 4.5.99.15</a></h1> 9847 9848 <ul> 9849 <li>add configure <code>--with-app-defaults</code> option to 9850 allow app-defaults directory for install-rules to be 9851 customized.</li> 9852 9853 <li>remove default translations for 9854 <code>dabbrev-expand()</code> due to conflicts with existing 9855 keyboard arrangements.</li> 9856 9857 <li>remove redundant check for <code>_NET_WM_PID</code> (report 9858 by Emanuele Giaquinta).</li> 9859 9860 <li>set icon border width explicitly to work around fvwm 9861 problem with active icon resizing (report by Steve Morris, 9862 analysis by Dominik Vogt).</li> 9863 9864 <li>modify resource files to make the font-resources a little 9865 more specific, e.g., changing "*VT100*" to "*VT100.", to make 9866 the distinction between VT100.font and VT100.utf8Fonts.font 9867 sharper, in case a packager modifies one of those.</li> 9868 9869 <li>expanded comments in <code>UXTerm.ad</code> regarding the 9870 font resources (Debian #319179).</li> 9871 9872 <li>add <code>--enable-narrowproto</code> configure option to 9873 accommodate X.org "modular" build (report by Stephan Hermann, 9874 Gentoo #17220).</li> 9875 9876 <li>fix typo in xterm.man description of <code>+wf</code> 9877 (patch by Tobias Stoeckmann).</li> 9878 9879 <li>add <code>scrollBarBorder</code> resource (request by Floyd 9880 L Davidson).</li> 9881 9882 <li>modify <code>xterm-new</code> terminfo entry to use 9883 capabilities for shifted scroll forward/reverse as shifted 9884 cursor up/down.</li> 9885 9886 <li>correct updating of checkmark for toolbar entry in popup 9887 menu (report by Emanuele Giaquinta).</li> 9888 9889 <li>fix ifdef's to allow compiling with toolbar and without 9890 tek4014 (patch by Emanuele Giaquinta).</li> 9891 9892 <li>use <code>openpty()</code> for Darwin port (patch by 9893 Emanuele Giaquinta).</li> 9894 9895 <li>fix Gentoo #90697 a different way, postponing the logic in 9896 <code>SetupToolbar</code> until the toolbar is actually needed, 9897 i.e., the <code>+tb</code> option is handled as expected.</li> 9898 9899 <li>revert fix made in <a href="#xterm_203">patch #203</a> for 9900 Gentoo #90697. That introduced a problem with the control mouse 9901 click-popups, while most of the performance problems can be 9902 resolved by restricting the menu fonts (report by Emanuele 9903 Giaquinta).</li> 9904 9905 <li>fix a file-descriptor leak when calling 9906 <code>openpty()</code> (OpenBSD system/4561).</li> 9907 9908 <li>make a special case of resizing work like vt100: a hard 9909 reset also resets the 132/80 mode. The code to support this was 9910 present since X11R5, but not used because the corresponding 9911 initial state of the <code>-132</code> option was not 9912 saved.</li> 9913 9914 <li>restore window manager hints after 9915 <code>XtMakeResizeRequest()</code> calls. One instance from 9916 <a href="#xterm_205">patch #205</a> resulted in the window 9917 manager displaying pixels rather than than characters after 9918 selecting a different font size (FreeBSD ports/87424).</li> 9919 9920 <li>remove special case for Darwin in CF_XOPEN_SOURCE (Emanuele 9921 Giaquinta).</li> 9922 9923 <li>modify parsing of control sequence <code>CSI T</code> 9924 to allow scroll-down to be sent while mouse tracking is enabled 9925 (request by D Hugh Redelmeier).</li> 9926 9927 <li>correct termcap "me" (mode-end) string so it does not 9928 modify the alternate character set (report by Andrey 9929 Chernov).</li> 9930 9931 <li>correct size-comparison in HandleInterpret() broken in 9932 changes from <a href="#xterm_201">patch #201</a> to allocate 9933 input buffer (Debian #334317).</li> 9934 9935 <li>amend adjustments for scrollbar layout from <a href= 9936 "#xterm_204">patch #204</a> to make this apply only to the 9937 toolbar configuration. In the non-toolbar configuration, the 9938 resulting scrollbar was shifted by its borderwidth (report by 9939 Matthieu Herrb).</li> 9940 9941 <li>add select-cursor-extend() action.</li> 9942 9943 <li>fix some broken href's in xterm.log.html, and typo in the 9944 INSTALL file (report/patch by David Martínez 9945 Moreno).</li> 9946 9947 <li>modify <code>Imakefile</code> to use setgid mode for 9948 installing with Linux, OpenBSD and FreeBSD.</li> 9949 9950 <li>add configure --with-setuid and --with-reference options to 9951 allow packagers more flexibility in customizing install 9952 permissions.</li> 9953 9954 <li>generalize and make optional (configure --with-utmp-setgid) 9955 the change made for XFree86 Bugzilla #878 in <a href= 9956 "#xterm_205">patch #205</a> (FreeBSD bug report 9957 #ports/86663).</li> 9958 </ul> 9959 9960 <h1><a name="xterm_205" id="xterm_205">Patch #205 - 2005/9/18 - 9961 XFree86 4.5.99.12</a></h1> 9962 9963 <ul> 9964 <li>correct a typo in CF_FUNC_TGETENT introduced in <a href= 9965 "#xterm_198">patch #198</a> fix for Gentoo #69926.</li> 9966 9967 <li>implement logic in termcap query to process multiple 9968 parameters as documented in ctlseqs.ms</li> 9969 9970 <li>fix buffer size used for termcap query, which was not long 9971 enough for the terminfo "colors" name (patch by Bradd W. 9972 Szonye).</li> 9973 9974 <li>add configure option --enable-readline-mouse, which turns 9975 on the experimental OPT_READLINE code (patch by Ilya 9976 Zakharevich).</li> 9977 9978 <li>for FreeBSD, drop setuid privileges after startup (XFree86 9979 Bugzilla #878, report/patch by Alexander Pohoyda)</li> 9980 9981 <li>add menu entry (alt-esc) and corresponding action 9982 (alt-sends-esc) to toggle the <code>eightBitInput</code> 9983 resource setting.</li> 9984 9985 <li>generate configure script with autoconf 2.52 (patched) to 9986 use the feature therein which forces the script's locale to 9987 POSIX (Gentoo Bugzilla #105369).</li> 9988 9989 <li>modify computation of rows/columns on resize to avoid 9990 extending beyond the given limits, e.g., if resizing in 9991 response to a "maximize" in Gnome or KDE which do not use the 9992 window manager hints for this case (Debian #289123, Novell 9993 #61153).</li> 9994 9995 <li>modifications to work with z/OS 1.4 (Paul Giordano).</li> 9996 9997 <li>improve error-reporting when chown/chmod of the 9998 pseudo-terminal fails, e.g., if a copy of xterm which was 9999 designed to work with old-style pseudo-terminals is not 10000 installed setuid or setgid (report by Jeremy C. Reed).</li> 10001 10002 <li>patches from Emanuele Giaquinta: 10003 <ul> 10004 <li>ctlseqs.ms says that primary and secondary DA accept a 10005 nonzero parameter, which is incorrect. Also modify code to 10006 agree with this.</li> 10007 10008 <li>correct a comment in 88colres.pl</li> 10009 10010 <li>ctlseqs.ms says that the DEC Set/Reset control 10011 sequences for the backarrow key make it send DEL/BS, 10012 respectively, while it's the opposite.</li> 10013 10014 <li>update the menu entries for the metaSendsEscape, 10015 deleteIsDEL and numLock resources when changing them with 10016 the corresponding DEC Set/Reset control sequences.</li> 10017 </ul> 10018 </li> 10019 10020 <li>fixes for configure script: 10021 <ul> 10022 <li>add special case for QNX, defining _QNX_SOURCE.</li> 10023 10024 <li>check for preprocessors which do not perform -U and -D 10025 options in the given order.</li> 10026 10027 <li>improve macro to determine gcc version</li> 10028 10029 <li>improve check for Intel compiler and related warning 10030 options</li> 10031 </ul> 10032 </li> 10033 10034 <li>update config.guess, config.sub</li> 10035 10036 <li>improve fix from <a href="#xterm_198">patch #198</a> for 10037 <code>Cleanup()</code> by ensuring it is not called from the 10038 SIGCHLD handler (patch by Todd Miller (OpenBSD CVS)).</li> 10039 10040 <li>eliminate a retry for a better-matching bold font, to work 10041 around recent font server changes.</li> 10042 10043 <li>fixes for Novell #113277: 10044 <ul> 10045 <li>specify weight for wide font which may be derived from 10046 normal fontname.</li> 10047 10048 <li>cache the derived wide- and widebolt-fontnames.</li> 10049 </ul> 10050 </li> 10051 10052 <li>workaround for Gentoo Bugzilla #100728.</li> 10053 10054 <li>add menubar's border width to layout computation. Normally 10055 this is zero, but patterns such as 10056 <code>XTerm*borderWidth:1</code> would give poor layout for the 10057 toolbar configuration.</li> 10058 </ul> 10059 10060 <h1><a name="xterm_204" id="xterm_204">Patch #204 - 2005/8/4 - 10061 XFree86 4.5.99.9</a></h1> 10062 10063 <ul> 10064 <li>work around quirk in shell which allowed user to "run" 10065 uxterm script when there was no UTF-8 locale installed by 10066 entering "sh -x uxterm". Also popup an xmessage to show the 10067 problem for users who run this via a GUI (Debian #318513).</li> 10068 10069 <li>disallow changes to fonts, toolbar and scrollbar when the 10070 vt100 window is iconified, to simplify management of the active 10071 icon.</li> 10072 10073 <li>fixes to make <code>-geom</code> option work properly with 10074 the toolbar configuration (Gentoo #90717, Gentoo #91967).</li> 10075 10076 <li>minor improvements to scrollbar layout: ensure that the 10077 scrollbar border is zero if the vt100 border is zero.</li> 10078 10079 <li>improve initialization due to <code>utf8</code> resource by 10080 loading the <code>utf8Fonts</code> resource in the case where 10081 <code>locale</code> resource is false. Also in this case, do 10082 not disable switching UTF-8 mode on/off.</li> 10083 10084 <li>minor optimization of TrueType font-loading, loads italic 10085 font only when needed.</li> 10086 10087 <li>correct variable used to store temporary result from lookup 10088 of bold font, when initializing the wide-bold-font data and no 10089 immediate match is found by asking for a bold variant of the 10090 wide-font. The result was to use overstriking rather than the 10091 actual bold font (Debian #318162, patch by Eugene Konev).</li> 10092 10093 <li>add checks to ensure vt100 widget is realized when it might 10094 be updated via actions handled from a tek4014-only 10095 configuration.</li> 10096 </ul> 10097 10098 <h1><a name="xterm_203" id="xterm_203">Patch #203 - 2005/7/6 - 10099 XFree86 4.5.99.7</a></h1> 10100 10101 <ul> 10102 <li>modify initialization of <code>allowSendEvents</code> and 10103 <code>allowWindowOps</code> to prevent modification with the 10104 editres protocol.</li> 10105 10106 <li>fix compiler warning for NetBSD by including util.h in 10107 main.c (XFree86 Bugzilla #1596).</li> 10108 10109 <li>fix to build on Darwin 8.x, which no longer provides 10110 <code>setpgrp()</code> (patch by Min Sik Kim).</li> 10111 10112 <li>adapted fixes for Legend (SCO) from diffs attached to 10113 Freedesktop.Org Bugzilla #3180.</li> 10114 10115 <li>fix typo in xterm manpage description of <code>-ls</code> 10116 option (Freedesktop.Org Bugzilla #3543).</li> 10117 10118 <li>add support for interpreting the underline attribute as an 10119 italic font in Xft mode (patch by Chuck Blake).</li> 10120 10121 <li>improve initialization of toolbar so that individual 10122 pulldown menus are initialized on demand, as they are in the 10123 scenario where they are invoked as popup menus (Gentoo Bugzilla 10124 #90697).</li> 10125 10126 <li>fix logic in <code>find_utmp</code>, which did not reset 10127 result in <code>getutid()</code>, causing an infinite loop in 10128 some conditions (report by Emil Mikulic).</li> 10129 10130 <li>set the <code>_NET_WM_PID</code> property (Gentoo Bugzilla 10131 #91008).</li> 10132 10133 <li>modify ifdef's in ptyx.h and xterm_io.h to build with 10134 DragonFly (patch by Jeroen Ruigrok).</li> 10135 10136 <li>change default values for <code>minBufSize</code> and 10137 <code>maxBufSize</code> to 4096 and 32768 respectively so that 10138 the initial read request will match the value from before 10139 changes to use <code>sched_yield()</code>.</li> 10140 10141 <li>make paste of UTF-8 faster for Western character sets by 10142 checking range of incoming data (patch by Joe Allen).</li> 10143 10144 <li>add experimental option to allow applications to get or set 10145 the selection data as a BASE64 string (adapted from patch by 10146 Joe Allen).</li> 10147 10148 <li>fix an off-by-one error parsing <code>-S/nn</code> option 10149 (Debian #311438, report/fix by Peter Chubb).</li> 10150 10151 <li>fix an initialization bug from <a href="#xterm_201">patch 10152 #201</a> that broke logging (report by Rodney Thayer).</li> 10153 10154 <li>amend change to command-line processing in <a href= 10155 "#xterm_201">patch #201</a> to avoid conflict with 10156 <code>-e</code> option (report by Servatius Brandt).</li> 10157 10158 <li>suppress configure check for <code>_XOPEN_SOURCE</code> on 10159 darwin.</li> 10160 10161 <li>update config.guess, config.sub</li> 10162 </ul> 10163 10164 <h1><a name="xterm_202" id="xterm_202">Patch #202 - 2005/5/2 - 10165 XFree86 4.5.99.3</a></h1> 10166 10167 <ul> 10168 <li>add extended shift- and control-modifier cursor keys to 10169 "xterm+pcfkeys" terminfo entry to correspond to ncurses 10170 20050430 patch.</li> 10171 10172 <li>fix a rare case where text would be written with the wrong 10173 colors because output of scrolled text would reset the colors 10174 and the new text would be written with the same colors 10175 (report/testcase by Thomas Glanzmann).</li> 10176 10177 <li>rename <code>$CMD</code> variable in <code>plink.sh</code> 10178 because it is a reserved symbol in bash 3.00.16 (report by Ted 10179 Taylor).</li> 10180 10181 <li>add environment variables <code>$XTERM_SHELL</code> and 10182 <code>$XTERM_VERSION</code> (request by Zdenek Sekera).</li> 10183 10184 <li>corrected workaround for background color of menubar, which 10185 gave a too-broad expression, coloring the background of the 10186 VT100 widget unless overridden by another resource 10187 setting.</li> 10188 10189 <li>correct an error in the logic which decides when 10190 <code>sched_yield()</code> is run; it would occasionally hang 10191 when contending with other pseudo-terminal applications such as 10192 screen (report by Kirill Ponomarew).</li> 10193 10194 <li>modify initialization to decide whether to default to 10195 built-in <code>wcwidth()</code> versus system's version based 10196 on the starting locale and whether the system's version is poor 10197 quality (suggested by Bram Moolenaar).</li> 10198 10199 <li>update table for <code>mk_width()</code> from UnicodeData 10200 4.1.0 using Markus Kuhn's <code>uniset</code> script.</li> 10201 </ul> 10202 10203 <h1><a name="xterm_201" id="xterm_201">Patch #201 - 2005/4/21 - 10204 XFree86 4.5.99.2</a></h1> 10205 10206 <ul> 10207 <li>improve resource files to show how the menubar and popup 10208 menus can be colored (prompted by report by Joe Wells).</li> 10209 10210 <li>modify parsing of OSC (and SOS, etc), strings so their 10211 contents are not interpreted as UTF-8. This allows non-ASCII 10212 title strings to be set, provided that the window manager 10213 complies (report by Thomas Wolff).</li> 10214 10215 <li>improved some of the built-in line-drawing glyphs.</li> 10216 10217 <li>correct color of "box" character drawn for line-drawing 10218 glyph 1 (report by Nicolas George).</li> 10219 10220 <li>improve behavior when switching to UTF-8 mode after startup 10221 so xterm will check if the current fonts are already wide 10222 (ISO10646-1). If they are not, xterm will use the 10223 <code>utf8Fonts</code> subresource to load appropriate fonts 10224 (request by Bram Moolenaar).</li> 10225 10226 <li>modify logic for setting title-string so it applies to the 10227 current widget rather than the vt100 widget.</li> 10228 10229 <li>modify initialization for wide-bold fontname, to search for 10230 one if none is given (report by Michael Schroeder).</li> 10231 10232 <li>add resource <code>mkWidth</code> and command-line option 10233 <code>-mk_width</code> to control whether xterm uses the 10234 built-in version of wcwidth().</li> 10235 10236 <li>add resource settings for minimum/maximum input buffer 10237 size, and call to <code>sched_yield</code> to improve 10238 performance with newer Linux kernels (adapted from patch by 10239 Nicolas George).</li> 10240 10241 <li>correct computation of width for wide characters with the 10242 invisible attribute (report by Thomas Wolff).</li> 10243 10244 <li>modify interaction between <code>+u8</code> and 10245 <code>locale</code> resource to allow the command-line option 10246 to override the resource (requested by Thomas Wolff).</li> 10247 10248 <li>add a limit check for scrolling margins in a one-line 10249 screen, overlooked in fixes for <a href="#xterm_198">patch 10250 #198</a> (Debian #297430).</li> 10251 10252 <li>correct treatment of <code>iconBorderWidth</code> for 10253 resizing an active-icon, and its description in manpage (Debian 10254 #296592).</li> 10255 10256 <li>modify configure script <code>--disable-imake</code> to use 10257 the script's definitions anyway if it cannot detect imake 10258 (prompted by FreeBSD bug 77408).</li> 10259 10260 <li>ignore error in the I/O initialization that tries to set 10261 the tty to 7-bit input for the case where 10262 <code>eightBitInput</code> resource is false (Debian 10263 #298551).</li> 10264 10265 <li>modify command-processing to accept an optional parameter 10266 that tells xterm which shell program to use (request by Zdenek 10267 Sekera).</li> 10268 10269 <li>add simpler resource <code>keyboardType</code> which, when 10270 set, overrides the individual keyboard-type resources and 10271 eliminates the possibility of conflict between them.</li> 10272 10273 <li>add initialization for <code>scoFunctionKeys</code> 10274 resource (report by Rick K).</li> 10275 10276 <li>correct logic of <code>ReallocateBufOffsets()</code> which 10277 did not copy the content of the old screen buffer to the proper 10278 location, making a repaint clear after switching to 10279 wide-character mode (report by Bram Moolenaar):</li> 10280 10281 <li>implement the remaining pieces to make xterm allocate cells 10282 for wide-characters when the "UTF-8" menu entry is selected. 10283 Also, load the UTF-8 font when that menu entry is selected, or 10284 the escape sequence for UTF-8 mode is received (report by Bram 10285 Moolenaar):</li> 10286 10287 <li>add command-line options (<code>-tb</code>, 10288 <code>+tb</code>) and resource <code>toolBar</code> to allow 10289 menu/toolbar to disabled or enabled at startup (prompted by 10290 reports by Joe Wells).</li> 10291 10292 <li>correct typo in configure script's --enable-dec-locator 10293 option (report by Bram Moolenaar).</li> 10294 </ul> 10295 10296 <h1><a name="xterm_200" id="xterm_200">Patch #200 - 2005/2/6 - 10297 XFree86 4.4.99.23</a></h1> 10298 10299 <ul> 10300 <li>increase color pairs value for xterm-256color and 10301 xterm-88color to match ncurses, which has an experimental 10302 option to support this.</li> 10303 10304 <li>modify ifdef's to make AIX use termios rather than termio; 10305 the struct sizes for the two were not the same.</li> 10306 10307 <li>improve CF_WITH_IMAKE_CFLAGS configure macro script for 10308 OSMAJORVERSION and OSMINORVERSION values, e.g., for Tru64 and 10309 AIX.</li> 10310 10311 <li>modify ifdef to define USE_POSIX_TERMIOS for Darwin (patch 10312 by Min Sik Kim).</li> 10313 10314 <li>modify find_utmp() to initialize the whole utmpx struct 10315 (except ut_id), since that is needed for OSF1 4.0D to prevent 10316 an infinite loop on exit.</li> 10317 10318 <li>add configure check before adding -D_POSIX_SOURCE since 10319 some platforms predefine it, e.g., cygwin.</li> 10320 10321 <li>add simplified sed expressions in CF_IMAKE_CFLAGS configure 10322 script macro to ensure value for PROJECTROOT is quoted on 10323 Solaris, i.e., when nested <code>\(</code> and <code>\)</code> 10324 are not interpreted correctly.</li> 10325 10326 <li>correct DEC rectangle operations to reset state after 10327 completing the operations.</li> 10328 10329 <li>modify CASE_ST handling in charproc.c to ensure that the 10330 parse state is reset even if xterm is not currently processing 10331 an OSC or other string (patch by Johnny Billquist forwarded by 10332 Matthias Scheler, NetBSD xsrc/29003).</li> 10333 10334 <li>fix OS/2 build for innotek_libc (patch by David Yeo).</li> 10335 10336 <li>fix a regression from <a href="#xterm_197">patch #197</a> 10337 fix for Debian #277832 which disowned the selection if it was 10338 scrolled, e.g., by the user pressing return at the bottom of 10339 the screen (Debian #291787).</li> 10340 10341 <li>move the warning/exit for missing $DISPLAY into the error 10342 handler in case <code>-display</code> is given, and the connect 10343 fails for some other reason.</li> 10344 </ul> 10345 10346 <h1><a name="xterm_199" id="xterm_199">Patch #199 - 2005/1/17 - 10347 XFree86 4.4.99.22</a></h1> 10348 10349 <ul> 10350 <li>instead of setting <code>$DISPLAY</code>, check for the 10351 unset variable and warn/exit on this condition (comments by H 10352 Merijn Brand and Bernhard R Link).</li> 10353 10354 <li>fix a typo in Imakefile from <a href="#xterm_198">patch 10355 #198</a> (reports/patches by Stefan Dirsch, Mike Castle).</li> 10356 </ul> 10357 10358 <h1><a name="xterm_198" id="xterm_198">Patch #198 - 2005/1/13 - 10359 XFree86 4.4.99.21</a></h1> 10360 10361 <ul> 10362 <li>set <code>$DISPLAY</code> to ":0" if it is not set.</li> 10363 10364 <li>add <code>utmpDisplayId</code> resource to allow users to 10365 control whether the display identifier (display number and 10366 screen number) are retained in the connection information 10367 recorded in utmp (discussion with Edoardo Tirtarahardja).</li> 10368 10369 <li>add <code>bellOnReset</code> resource to allow users to 10370 disable bell which sounds on hard reset since <a href= 10371 "#xterm_183">patch #183</a> changes to DECSCL (discussion with 10372 Danek Duvall).</li> 10373 10374 <li>improve <code>$WINDOWID</code> for configuration with 10375 toolbar by making it refer to the top-level shell rather than 10376 the parent of the current window. For that case, the parent is 10377 a form widget, which does not have a name, which made the 10378 <code>$WINDOWID</code> not very useful as a parameter for 10379 <code>xwininfo</code> (suggested by Dave Bodenstab).</li> 10380 10381 <li>fix a typo in WhichVFont() macro from <a href= 10382 "#xterm_197">patch #197</a> changes which broke the 10383 --disable-active-icon configuration (report by Ralf S. 10384 Engelschall).</li> 10385 10386 <li>improve some limit checks (Gentoo Bugzilla #75604).</li> 10387 10388 <li>add --disable-setuid option to configure script (Gentoo 10389 Bugzilla #76543).</li> 10390 10391 <li>add --disable-full-tgetent option to configure script, 10392 allowing one to ignore a termcap library in favor of 10393 ncurses/curses (Gentoo Bugzilla #69926).</li> 10394 10395 <li>modify configure script to choose useful warning options 10396 for Intel version 8.0 compiler.</li> 10397 10398 <li>update config.guess, config.sub</li> 10399 10400 <li>make active-icon work properly when TrueType fonts are used 10401 (Debian #286068).</li> 10402 10403 <li>correct change from <a href="#xterm_157">patch #157</a> 10404 which uses getlogin() to check for an alias; the storage used 10405 for the related getpwuid() call was overwritten by the data 10406 used for comparison (patch by Per Hedeland).</li> 10407 10408 <li>correct case of SCS for character set 0 (line-drawing) to 10409 allow it to be selected into GR.</li> 10410 10411 <li>fix a file-descriptor leak (Redhat Bugzilla #139597).</li> 10412 10413 <li>modify <code>creat_as()</code> to only fork if xterm is 10414 actually running as setuid and/or setgid. This works around a 10415 Cygwin bug which hangs when logging is enabled and makes xterm 10416 a little faster for systems using interfaces such as utempter 10417 (report by Al Goodman).</li> 10418 10419 <li>modify <code>Cleanup()</code> to avoid operations such as X 10420 calls that might use unsafe functions when it is called by a 10421 signal handler (report by Michiel Boland).</li> 10422 10423 <li>fix bugs in <a href="#xterm_191">patch #191</a> and in SRM 10424 changes from <a href="#xterm_197">patch #197</a> that broke 10425 DECSET 38: switch to Tek4014 emulation (report by Dave 10426 Bodenstab).</li> 10427 10428 <li>fix for manpage escapes (Marc La France).</li> 10429 10430 <li>improve on IRIX-specific change for Imakefile in XFree86 10431 CVS versus resize linking against termcap library to reflect 10432 definitions for USE_TERMCAP in resize.c</li> 10433 </ul> 10434 10435 <h1><a name="xterm_197" id="xterm_197">Patch #197 - 2004/11/30 - 10436 XFree86 4.4.99.19</a></h1> 10437 10438 <ul> 10439 <li>modify configure script to remove empty "-DPROJECTROOT=" 10440 definition which resulted unusable values for luit's default 10441 path.</li> 10442 10443 <li>update precompose.c based on Unicode 4.0.1</li> 10444 10445 <li>several minor fixes based on Intel compiler warnings.</li> 10446 10447 <li>change default translations so a <code>BtnDown</code> which 10448 is not recognized is simply ignored rather than emitting a 10449 bell. That makes it less obtrusive when the user tries to use a 10450 mouse which provides more capabilities than the X mouse driver 10451 supports, e.g., one with a horizontal scroll wheel (Debian 10452 #265133).</li> 10453 10454 <li>note in xterm's manpage that <code>translations</code> is 10455 not specific to xterm (Debian #278897).</li> 10456 10457 <li>modify uxterm script to use locale program to verify if the 10458 derived locale is installed (Debian #246398).</li> 10459 10460 <li>correct font handling for active icon when in UTF-8 mode 10461 (report by Paolo Liberatore).</li> 10462 10463 <li>make active-icon and toolbar configurations work 10464 together.</li> 10465 10466 <li>modify the criteria for disowning primary selection. 10467 Previously, this happened anytime the cursor was moved before 10468 the end of the selection. That would ensure that any 10469 insert/delete of char or line, as well as scrolling, would 10470 disown the selection. The new criteria change this to checking 10471 if the operations would modify the data which is highlighted 10472 (Debian #277832).</li> 10473 10474 <li>reimplement <code>DECALN</code> with functions for vt420 10475 rectangles, fixes selection for this case.</li> 10476 10477 <li>implement vt420 rectangle operations.</li> 10478 10479 <li>add parsing, for debug/test of vt220 soft-fonts.</li> 10480 10481 <li>add menu entry, actions and escape sequence to allow 10482 enabling/disabling toolbars at runtime.</li> 10483 10484 <li>improve rendering for Xft, allow it to draw non-linedrawing 10485 characters such as "pi", which were drawn from internal tables 10486 with <a href="#xterm_180">patch #180</a> (Freedesktop.org 10487 Bugzilla #1260).</li> 10488 10489 <li>add configure option <code>--enable-mini-luit</code>, 10490 ifdef'd the mini-luit feature with 10491 <code>OPT_MINI_LUIT</code>.</li> 10492 10493 <li>add mini-luit feature, which supports Latin9 directly 10494 rather than via luit, provided that Unicode fonts are used 10495 (Freedesktop.org Bugzilla #1571, request by Stefan Dirsch, 10496 patch by Michael Schroeder).</li> 10497 10498 <li>for Linux, if IUTF8 is defined, e.g., on recent 2.6.x 10499 kernels, set the corresponding flag for the slave pty, to 10500 enable UTF-8 interpretation of backspace in cooked mode 10501 (Freedesktop.org Bugzilla #1578, request by Stefan 10502 Dirsch).</li> 10503 10504 <li>modify <code>faceSize</code> resource to use a 10505 floating-point internal value (adapted from patch by Sam 10506 Stephenson).</li> 10507 10508 <li>correct handling selection of tabs over cleared space in 10509 UTF-8 mode. In this special case, xterm represents the 10510 whitespace with a null rather than a space character (Debian 10511 #276447).</li> 10512 10513 <li>amend fix for infinite loop from <a href="#xterm_192">patch 10514 #192</a> to check if there is wrapped text to output in a 10515 following iteration (Debian #273202).</li> 10516 10517 <li>fixes ifdef'd with <code>__INTERIX</code> to allow building 10518 with Interix (Windows Services for UNIX) 3.5 using the xlibs 10519 libraries from freedesktop.org (patch by Min Sik Kim).</li> 10520 10521 <li>amend solution for Debian #252873, Debian #260471 from 10522 <a href="#xterm_194">patch #194</a> by making the cursor not 10523 explicitly colored if only the foreground color is set, and the 10524 cursor is on a blank space (Debian #275473).</li> 10525 10526 <li>correct logic for send/receive mode (SRM) with regard to 10527 control characters.</li> 10528 10529 <li>fix masking of invisible text in wide-character mode, which 10530 did not work for line-drawing characters.</li> 10531 10532 <li>incorporate CF_XOPEN_SOURCE into configure script, 10533 replacing CF_GNU_SOURCE.</li> 10534 </ul> 10535 10536 <h1><a name="xterm_196" id="xterm_196">Patch #196 - 2004/8/15 - 10537 XFree86 4.4.99.12</a></h1> 10538 10539 <ul> 10540 <li>add a special case to configure script to ignore NetBSD's 10541 <code>grantpt()</code> which was recently added (but not part 10542 of a release), until someone is able to ensure that xterm can 10543 use it (report by Min Sik Kim).</li> 10544 10545 <li>clear the buffer returned by getutid(). This fixes an 10546 infinite loop on some platforms introduced in <a href= 10547 "#xterm_193">patch #193</a> by Debian #256468 fix (report by 10548 David Ellement).</li> 10549 </ul> 10550 10551 <h1><a name="xterm_195" id="xterm_195">Patch #195 - 2004/8/8 - 10552 XFree86 4.4.99.11</a></h1> 10553 10554 <ul> 10555 <li>correct length used for blinking text, make the last column 10556 blink (patch by Alexander V Lukyanov).</li> 10557 10558 <li>start changes to make doublesize characters work with 10559 TrueType fonts (see <a href="#xterm_44">patch #44</a>).</li> 10560 10561 <li>trim leading/trailing blanks from color resources as done 10562 for other strings in <a href="#xterm_167">patch #167</a>.</li> 10563 10564 <li>fixes for <code>showBlinkAsBold</code> resource (report by 10565 Christoph Berg).</li> 10566 </ul> 10567 10568 <h1><a name="xterm_194" id="xterm_194">Patch #194 - 2004/7/27 - 10569 XFree86 4.4.99.11</a></h1> 10570 10571 <ul> 10572 <li>change clearing operations so foreground color attribute is 10573 not set. Usually this is benign, but in some cases when the 10574 cursor color is not set explicitly, the cursor would show this 10575 color (Debian #252873, Debian #260471).</li> 10576 10577 <li>add extra state (cursor-moved) to guard against deciding 10578 that the cursor did not require repainting after an indexing 10579 operation that leaves the cursor in the same location on the 10580 screen.</li> 10581 10582 <li>fix a case where a full-screen indexing operation would not 10583 restore the cursor-busy state.</li> 10584 10585 <li>fix a repainting bug introduced in <a href= 10586 "#xterm_180">patch #180</a>: when using a font lacking 10587 line-drawing characters, a repaint of the screen could skip 10588 horizontally an extra amount after filling in the missing 10589 character (reports by Nicolas George, Hans de Goede, Redhat 10590 Bugzilla #128341).</li> 10591 10592 <li>rename terminfo fragment "xterm-pc-fkeys" to 10593 "xterm+pcfkeys" for consistency with ncurses.</li> 10594 </ul> 10595 10596 <h1><a name="xterm_193" id="xterm_193">Patch #193 - 2004/7/19 - 10597 XFree86 4.4.99.10</a></h1> 10598 10599 <ul> 10600 <li>fix for wide-character selection from OpenBSD CVS 10601 (report/patch by Matthieu Herrb).</li> 10602 10603 <li>modify initialization and cleanup of utmp data to also 10604 compare the <code>ut_line</code> member (Debian #256468).</li> 10605 10606 <li>modify check on focus-change to ignore 10607 <code>FocusOut</code> events generated by 10608 <code>XGrabKeyboard</code>. This fixes a case where the text 10609 cursor would act as if focus were lost when selecting the 10610 "Secure Keyboard" menu option.</li> 10611 10612 <li>add <code>gen-pc-fkeys.pl</code> script, use that to 10613 generate terminfo fragment corresponding to the pc-style 10614 function keys.</li> 10615 10616 <li>fix a case where the checkmark by the "VT220 Keyboard" menu 10617 entry was not set on startup.</li> 10618 10619 <li>separated two methods for making the cursor blink (menu and 10620 escape sequence) by using the menu as the primary method and 10621 XOR'ing the state of the escape sequence against that.</li> 10622 10623 <li>modify logic for enabling blinking cursor via escape 10624 sequence as well as the related save/restore operations so this 10625 is only available if the <code>cursorBlink</code> resource was 10626 set on startup.</li> 10627 </ul> 10628 10629 <h1><a name="xterm_192" id="xterm_192">Patch #192 - 2004/7/12 - 10630 XFree86 4.4.99.9</a></h1> 10631 10632 <ul> 10633 <li>change resource settings for color4 and color12, add some 10634 discussion in <code>XTerm-col.ad</code> (Debian #241717).</li> 10635 10636 <li>add a note in xterm manpage discussing the difference 10637 between alt- and meta-keys, and the way the latter is used in 10638 the <code>eightBitInput</code> resource.</li> 10639 10640 <li>add a note in xterm manpage regarding possible conflict 10641 between resource settings for <code>xterm.vt100.font</code> and 10642 <code>xterm.vt100.utf8Fonts.font</code> (Debian #254650).</li> 10643 10644 <li>add compile-time customization of 10645 <code>backarrowKeyIsErase</code> and 10646 <code>ptyInitialErase</code> default resource values (adapted 10647 from OpenBSD CVS).</li> 10648 10649 <li>change parameter of <code>FIONREAD</code> 10650 <code>ioctl()</code> call from long to int (discussion on 10651 tech-x11@netbsd.org regarding LP64 by John Heasley and Matthias 10652 Scheler).</li> 10653 10654 <li>modify configure script options for Athena widgets to work 10655 as expected for "--without-Xaw3d", etc., (Gentoo Bugzilla 10656 #53455).</li> 10657 10658 <li>add case to uxterm to accommodate locales ending with 10659 "@euro", e.g., fr_FR.UTF-8@euro (Debian #255197, 10660 report/analysis by Matthieu Lagouge).</li> 10661 10662 <li>add special case for VT100 graphic's "box" character 10663 (discussion with Ben Armstrong).</li> 10664 10665 <li>add missing initialization for bitmap-font sizes needed to 10666 make fonts menu work with TrueType fonts (report by Ben 10667 Armstrong).</li> 10668 10669 <li>save the fontnames for bold fonts that are derived from 10670 normal fonts, or from the <code>boldFont</code> resource, so 10671 the same value is restored when switching with the VT Fonts 10672 menu (Debian #256086).</li> 10673 10674 <li>fix manpage preprocessing (Marc La France).</li> 10675 10676 <li>fix typo in manpage's description of character classes 10677 (Debian #257073).</li> 10678 10679 <li>modify terminfo to accommodate luit, which relies on G1 10680 being used via an ISO-2022 escape sequence (Debian #254316, 10681 analysis by Juliusz Chroboczek).</li> 10682 10683 <li>modify Makefile.in rule for ctlseqs.txt to work around 10684 groff SGR misfeature.</li> 10685 10686 <li>modify <code>XTerm.ad</code> to set <code>saveLines</code> 10687 default to 1024 (Redhat Bugzilla #127132).</li> 10688 10689 <li>add a limit-check in <code>dotext()</code> to prevent 10690 infinite loop in a corner case of UTF-8 configuration.</li> 10691 10692 <li>update config.guess, config.sub</li> 10693 </ul> 10694 10695 <h1><a name="xterm_191" id="xterm_191">Patch #191 - 2004/6/6 - 10696 XFree86 4.4.99.7</a></h1> 10697 10698 <ul> 10699 <li>correct options parsing for <code>-into</code> option so it 10700 can be combined with <code>-e</code> (Redhat Bugzilla #124518, 10701 report/patch by James Armstrong).</li> 10702 10703 <li>fix ifdef's for <code>OPT_COLOR_RES2</code> so that the 10704 fake resource table introduced in <a href="#xterm_188">patch 10705 #188</a> is not compiled if it is empty. This happened to work 10706 with gcc (report by Joel Konkle-Parker).</li> 10707 10708 <li>reorganize ptydata.c to use one input buffer shared between 10709 the VTxxx and tek4014 emulators. In the new scheme, UTF-8 10710 decoding is performed on characters as they are needed by the 10711 state machine rather than on buffers as they are read.</li> 10712 10713 <li>work around change in quoting of PROJECTROOT symbol when 10714 using configure script, from changes made in <a href= 10715 "#xterm_187">patch #187</a> for CF_IMAKE_CFLAGS (Gentoo 10716 Bugzilla #50982).</li> 10717 </ul> 10718 10719 <h1><a name="xterm_190" id="xterm_190">Patch #190 - 2004/5/25 - 10720 XFree86 4.4.99.6</a></h1> 10721 10722 <ul> 10723 <li>correct state for values in the range 128-159 after 10724 translating from UTF-8: this should be ignored unless the user 10725 overrides it with the <code>allowC1Printable</code> resource 10726 (reported by Simon Strandgaard).</li> 10727 10728 <li>add configure-script check for nl_langinfo(CODESET), use 10729 this to replace check of environment variables for UTF-8.</li> 10730 10731 <li>change Makefile.in rules for 256colres.h and 88colres.h so 10732 they are only made if they do not exist. The maintainer-clean 10733 rule will remove these files; they require perl to be 10734 made.</li> 10735 10736 <li>remove check in configure script --enable-toolbar that 10737 suppressed this option when building with Xaw7.</li> 10738 10739 <li>apply fixes to Tektronix widget used for VT100 widget to 10740 make toolbar work with Xaw7 (XFree86 4.x).</li> 10741 </ul> 10742 10743 <h1><a name="xterm_189" id="xterm_189">Patch #189 - 2004/5/16 - 10744 XFree86 4.4.99.6</a></h1> 10745 10746 <ul> 10747 <li>do not call xim_real_init() if <code>openIm</code> resource 10748 is false (Debian #249025).</li> 10749 10750 <li>minor improvements to built-in line-drawing.</li> 10751 10752 <li>fix a few portability issues with dynamic abbreviation 10753 support, i.e., did not compile on Tru64.</li> 10754 10755 <li>modify constraints in form used to layout toolbar, to work 10756 with newer Xaw in XFree86 4.x.</li> 10757 </ul> 10758 10759 <h1><a name="xterm_188" id="xterm_188">Patch #188 - 2004/5/12 - 10760 XFree86 4.4.99.6</a></h1> 10761 10762 <ul> 10763 <li>correct table entry for DEL in the ground state, which 10764 marked it as a printable character from <a href= 10765 "#xterm_171">patch #171</a> (report by D Hugh Redelmeier).</li> 10766 10767 <li>improve fix in <a href="#xterm_186">patch #186</a> for 10768 failure in xim_real_init() by adding a sleep.</li> 10769 10770 <li>fix a typo in os2main.c (XFree86 Bugzilla #1358, 10771 report/patch by Frank Giessler).</li> 10772 10773 <li>make escape sequence reporting dynamic colors consistent 10774 with the logic that sets it; choosing the opposite color when 10775 reverse video is set (XFree86 Bugzilla #1361, reported by Bradd 10776 W Szonye).</li> 10777 10778 <li>modify initialization of 256- and 88-colors so that colors 10779 beyond 16 are normally not X resources. This works around a 10780 hard-coded limit in Xt which breaks xterm when 256-colors and 10781 luit are both configured (report by Noah Friedman).</li> 10782 10783 <li>remove <code>ncv</code> from <code>xterm-256color</code> 10784 terminfo entry since it is no longer needed (report by Eli 10785 Zaretskii).</li> 10786 10787 <li>add "erase2" and "eol2" keywords to <code>ttyModes</code> 10788 resource, for recent/current FreeBSD.</li> 10789 10790 <li>improve ifdef's for utempter library to omit direct calls 10791 to <code>setutent()</code> or <code>getutent()</code> (adapted 10792 from patch by Christian Biere).</li> 10793 10794 <li>add dynamic abbreviation support like Emacs (patch by 10795 Tomasz Cholewo). This is ifdef'd with <code>OPT_DABBREV</code>, 10796 and enabled via the configure script 10797 <code>--enable-dabbrev</code> option.</li> 10798 10799 <li>fix problem responding to session management events, e.g., 10800 which would make logging out very slow (patch by Eddy De Greef, 10801 Debian #233883).</li> 10802 10803 <li>work around a newer bug in toolbar with XFree86 by forcing 10804 menus to be fully initialized at startup. In older versions of 10805 XFree86 and X11R6, it was possible to delay initialization of 10806 the menu contents until it was popped up. (The longstanding bug 10807 with XFree86 4.x layout for toolbar still exists, though).</li> 10808 10809 <li>modify <code>xtermAddInput</code> to work around core dump 10810 on IRIX64 when initializing scrollbar translations if toolbar 10811 is compiled-in.</li> 10812 10813 <li>fix some minor conflicts in the 2-character entry names in 10814 the termcap file.</li> 10815 </ul> 10816 10817 <h1><a name="xterm_187" id="xterm_187">Patch #187 - 2004/4/27 - 10818 XFree86 4.4.99.4</a></h1> 10819 10820 <ul> 10821 <li>change xterm version string to use 10822 <code>__vendorversion__</code> where that is available, and 10823 "XTerm" otherwise.</li> 10824 10825 <li>improve description of <code>utf8</code> resource in 10826 manpage (Debian #179407).</li> 10827 10828 <li>modify configure macros CF_IMAKE_CFLAGS and CF_ADD_CFLAGS 10829 to handle <code>-D</code> options that define string values, 10830 e.g., for <code>XVENDORNAME</code>.</li> 10831 10832 <li>modify configure macro CF_IMAKE_CFLAGS to allow (if 10833 <code>$PATH</code> is set accordingly) to use the 10834 <code>xmkmf</code> script within an X build tree.</li> 10835 10836 <li>add missing <code>#undef OPT_SESSION_MGT</code> to 10837 xtermcfg.hin to make the configure script's 10838 --disable-session-mgt option work.</li> 10839 10840 <li>update config.guess, config.sub</li> 10841 </ul> 10842 10843 <h1><a name="xterm_186" id="xterm_186">Patch #186 - 2004/4/18 - 10844 XFree86 4.4.99.4</a></h1> 10845 10846 <ul> 10847 <li>change reset on <code>DECSCL</code> to a soft-reset 10848 (appears some DEC manuals have errors).</li> 10849 10850 <li>add a section to ctlseqs.ms elaborating on normal/alternate 10851 screens.</li> 10852 10853 <li>modify initialization of Acolors[] so that any 10854 XtDefaultForeground or XtDefaultBackground values are 10855 translated as in the Tcolors[], to use the window's 10856 foreground/background colors. This affects the 10857 <code>colorBD</code> and similar resources which normally have 10858 no explicit color assigned.</li> 10859 10860 <li>modify initialization of Tektronix window so that control 10861 sequences setting its color before the window is popped up will 10862 apply to its initial colors.</li> 10863 10864 <li>add control sequence to set Tektronix window's 10865 text-cursor.</li> 10866 10867 <li>modify initialization of terminal colors, e.g., mouse 10868 pointer and text cursor, to treat 10869 <code>XtDefaultForeground</code> and 10870 <code>XtDefaultBackground</code> values as the actual 10871 foreground and background colors of the terminal rather than 10872 white and black (Debian #241717).</li> 10873 10874 <li>remove an incorrect comparison against 10875 <code>PTYCHARLEN</code> in parsing the <code>-S</code> option 10876 (report by Michael B Taylor).</li> 10877 10878 <li>minor restructuring of terminfo/termcap files, having noted 10879 some packager's customizations which caused the structure to be 10880 confused.</li> 10881 10882 <li>eliminate an isolated use of MIN/MAX in charproc.c</li> 10883 10884 <li>replace <code>XtExtdefaultfont</code> and 10885 <code>XtExtdefaultbackground</code> by their more familiar 10886 equivalents <code>XtDefaultFont</code> and 10887 <code>XtDefaultBackground</code>.</li> 10888 10889 <li>replace ifdef's using <code>SCO</code>, <code>sco</code> 10890 and <code>SCO325</code> with <code>__SCO__</code> (XFree86 10891 Bugzilla #1301, Kean Johnston). But ensure that it still builds 10892 on platforms where this symbol is not defined.</li> 10893 10894 <li>add <code>scoFunctionKeys</code> resource, to match 10895 manpage.</li> 10896 10897 <li>update manpage discussion of menus and related 10898 resources.</li> 10899 10900 <li>enable utmpx support for NetBSD 1.6C and newer (patch by 10901 Matthias Scheler).</li> 10902 10903 <li>add a note in the manpage discussing xterm's treatment of 10904 open file-descriptors (request by Dan Shearer).</li> 10905 10906 <li>modify <code>Help()</code> to make "xterm -h" write to 10907 standard output rather than standard error (patch by Bram 10908 Moolenaar).</li> 10909 10910 <li>check for type of failure in xim_real_init() to avoid 10911 looping when the problem is an unsupported input method rather 10912 than a failure to connect to the XIM server. Problem was 10913 introduced in <a href="#xterm_175">patch #175</a> (XFree86 10914 Bugzilla #1306).</li> 10915 10916 <li>modify <code>Imakefile</code> to remove dependency of 10917 "install" target on the <code>xterm</code> executable to make 10918 installs from tree without attempting to rebuild anything 10919 (commit by David Dawes, report/patch from Lee Olsen).</li> 10920 10921 <li>remove call to <code>ShowCursor</code> from 10922 <code>SetCursorBlink()</code> since that is redundant, and can 10923 cause display glitches if the cursor is already blinking 10924 (XFree86 Bugzilla #1158, patch/report by Andreas Schwab).</li> 10925 </ul> 10926 10927 <h1><a name="xterm_185" id="xterm_185">Patch #185 - 2004/3/3 - 10928 XFree86 4.4</a></h1> 10929 10930 <ul> 10931 <li>fix tcap-query logic for the backspace key (XFree86 10932 Bugzilla #1233, report/patch by Anton Kovalenko).</li> 10933 10934 <li>add test-scripts resize.pl and tcapquery.pl</li> 10935 10936 <li>add translation to ASCII of commonly-used characters that 10937 groff translates to Unicode, when the font in use does not 10938 provide the corresponding glyphs (Debian #219551).</li> 10939 10940 <li>modify RequestMaximize(), which performs maximize/restore 10941 via control sequences, to account for window-frame (patch by 10942 Jess Thrysoee).</li> 10943 10944 <li>improve pattern used in <code>uxterm</code> to check for 10945 UTF-8 locale, e.g., for HPUX (patch by H Merijn Brand).</li> 10946 10947 <li>add <code>-fd</code> option and resource 10948 <code>faceNameDoublesize</code> to specify double-wide fonts 10949 with Xft (adapted from patch by Zarick Lau).</li> 10950 10951 <li>change a couple of resource classes from "Boolean" to 10952 specific values: <code>freeBoldBox</code>, 10953 <code>forceBoxChars</code>.</li> 10954 10955 <li>add resource <code>showMissingGlyphs</code> to outline 10956 places on the screen where a font lacks the corresponding 10957 glyph.</li> 10958 10959 <li>add resource <code>showBlinkAsBold</code> to control 10960 whether blinking text should be shown as bold or actual 10961 blinking text.</li> 10962 10963 <li>improve logic in ShowCursor() to avoid repainting the 10964 cursor when it is already visible, e.g., in response to the 10965 DECTCEM escape sequence. This also addresses XFree86 Bugzilla 10966 #1158.</li> 10967 10968 <li>implement blinking text, using the timer for blinking 10969 cursor.</li> 10970 10971 <li>modify FreeType support to allow resizing the font, in the 10972 same ways the window can be resized if fixed fonts are used. 10973 The relative font sizes are derived from the fixed font 10974 sizes.</li> 10975 10976 <li>add menu items and corresponding actions for switching 10977 on/off the UTF-8 mode and Xft (TrueType) support.</li> 10978 10979 <li>add logic to handle switching UTF-8 mode on/off. It worked 10980 if the escape sequences were flushed, but if data was mixed in 10981 with the same write, some were not handled properly (report by 10982 Nicolas George).</li> 10983 10984 <li>modify to allow turning UTF-8 mode on/off via escape 10985 sequence even if <code>-wc</code> option was not given at 10986 startup (patch by Peter Berg Larsen).</li> 10987 10988 <li>amend fix for XFree86 Bugzilla #981, adjusting for 10989 savedlines value (report by Tim Adye).</li> 10990 10991 <li>fix a typo in computing relative font size (Jess 10992 Thrysoee).</li> 10993 </ul> 10994 10995 <h1><a name="xterm_184" id="xterm_184">Patch #184 - 2003/12/31 - 10996 XFree86 4.3.99.903</a></h1> 10997 10998 <ul> 10999 <li>improve configure-script checks for FreeType and related 11000 libraries, using <code>xft-config</code> or 11001 <code>freetype-config</code> scripts when available.</li> 11002 11003 <li>fix configure-script check for <code>SYSV</code> definition 11004 by ensuring whether <code>sys_errlist[]</code> is declared, and 11005 by modifying the test program to include 11006 <code>X11/Intrinsic.h</code> to check that <code>wchar_t</code> 11007 is declared consistently (report by H Merijn Brand).</li> 11008 </ul> 11009 11010 <h1><a name="xterm_183" id="xterm_183">Patch #183 - 2003/12/26 - 11011 XFree86 4.3.99.903</a></h1> 11012 11013 <ul> 11014 <li>correct logic for configurations that may attempt to open 11015 both old/new-style pseudoterminals. In this case, the old-style 11016 are preferred. Logic was broken in <a href="#xterm_145">patch 11017 #145</a> (XFree86 Bugzilla #997, report/patch by Kean 11018 Johnston).</li> 11019 11020 <li>modify handling of <code>eightBitInput</code> resource in 11021 UTF-8 mode to translate the value into UTF-8. Otherwise an 11022 illegal UTF-8 code is sent to the application (report by Bram 11023 Moolenaar).</li> 11024 11025 <li>modify <code>uxterm</code> script to interpret help and 11026 version options so xterm does not always create a window when 11027 the user requests this information (Debian #223926).</li> 11028 11029 <li>add a limit check to ScrnTstWrapped() (XFree86 Bugzilla 11030 #981).</li> 11031 11032 <li>modify DECSCL to perform a hard reset (RIS) as per DEC 11033 manuals. Extended DECSCL to accept parameters for vt4XX and 11034 vt5xx terminals.</li> 11035 11036 <li>correct logic for ANSI conformance level escape sequences, 11037 which were confused with DEC conformance level escape 11038 sequences.</li> 11039 11040 <li>correct state for vt52 shift-in/shift-out, which was not 11041 reset properly after <a href="#xterm_171">patch #171</a>.</li> 11042 11043 <li>correct handling of graphics characters for vt52 mode, 11044 which did not display line-drawing characters after G1 fix from 11045 <a href="#xterm_182">patch #182</a>.</li> 11046 11047 <li>fixes for configure script to work with current Cygwin 11048 headers and libraries.</li> 11049 11050 <li>modify <code>Imakefile</code> to put the current directory 11051 at the beginning of the include searchpath (patch by David 11052 Dawes).</li> 11053 </ul> 11054 11055 <h1><a name="xterm_182" id="xterm_182">Patch #182 - 2003/12/2 - 11056 XFree86 4.3.99.901</a></h1> 11057 11058 <ul> 11059 <li>correct logic for <code>metaSendsEscape</code> resource to 11060 allow for the meta-right key to be tested. Improve check for 11061 meta/alt modifiers by dropping the assumption that a keysym is 11062 associated with only one modifier, and by ignoring NoSymbol 11063 entries in the xmodmap data (XFree86 Bugzilla #924, patch by 11064 David Dawes).</li> 11065 11066 <li>correct wrapping logic for line-drawing characters written 11067 in non-UTF-8 mode of xterm build for wide-characters (XFree86 11068 Bugzilla #918, report/patch by Jürgen Keil).</li> 11069 11070 <li>improve manpage description of resources, in particular the 11071 <code>utf8Fonts</code> class (XFree86 Bugzilla #905).</li> 11072 11073 <li>add definitions to compile with glibc-based GNU/Hurd, 11074 GNU/KFreeBSD and GNU/KNetBSD (XFree86 Bugzilla #893).</li> 11075 11076 <li>compiler-warning fixes (patch by Christian Biere).</li> 11077 11078 <li>add README.i18n (Tomohiro Kubota).</li> 11079 11080 <li>correct initialization of G1 character set mapping, which 11081 used line-drawing set as a result of confusion between "DEC 11082 Supplemental Graphic" and "DEC Special Graphic" character sets 11083 (see <a href="#xterm_34">patch #34</a> regarding DECSTR).</li> 11084 11085 <li>correct ifdef in main.c for variable utret (patch by 11086 Bernhard Rosenkraenzer).</li> 11087 11088 <li>document in xterm's manpage how to use XFree86 ":unscaled" 11089 keyword to suppress scaling of bold fonts.</li> 11090 11091 <li>when deriving bold fontname from normal fontname, use the 11092 normal font's average width to avoid for example selecting 11093 7x13bold from an 8x13 normal font (Debian #107769).</li> 11094 </ul> 11095 11096 <h1><a name="xterm_181" id="xterm_181">Patch #181 - 2003/10/26 - 11097 XFree86 4.3.99.15</a></h1> 11098 11099 <ul> 11100 <li>implement <code>boldMode</code> for wide-character logic in 11101 <code>drawXtermText()</code> (report by Michael 11102 Schroeder).</li> 11103 11104 <li>modify <code>UXTerm.ad</code> resource file to include 11105 "XTerm-color" rather than "XTerm", in case the latter file 11106 contains no color resource definitions, e.g., after <a href= 11107 "#xterm_180">patch #180</a>.</li> 11108 11109 <li>add action <code>load-vt-fonts()</code> and configure 11110 option <code>--enable-load-vt-fonts</code> which allows users 11111 to define additional sets of VT-fonts which can be loaded at 11112 runtime.</li> 11113 11114 <li>add logic to wide-character support which attempts to load 11115 fonts specified by <code>utf8Fonts</code> subresources at 11116 startup. The subresources have the same names as the fonts 11117 which they replace, e.g., <code>font</code>, 11118 <code>font1</code>, etc., so that the ISO-10646-1 fonts can be 11119 specified in the <code>XTerm</code> app-defaults file (adapted 11120 from patch by Tomohiro Kubota).</li> 11121 11122 <li>improve Set Font escape string handling by making the 11123 relative settings apply to the size of the font, as in shift 11124 keypad plus/minus rather than the menu index.</li> 11125 11126 <li>simplify parameter passing for the <code>set-vt-font</code> 11127 action and related code.</li> 11128 11129 <li>cleanup some include-ordering, moving some recently-added 11130 hardcoded stuff into xterm.h where it will not interfere with 11131 the configure script.</li> 11132 11133 <li>modify <code>xtermAddInput()</code> (see note on 11134 augmentation in <a href="#xterm_158">patch #158</a>) to use the 11135 complete set of default keyboard translations so that one can 11136 use shifted pageup, wheel mouse, etc., while the mouse pointer 11137 is over the scrollbar. (Debian #178812).</li> 11138 11139 <li>make save/restore mode controls apply to show/blink cursor 11140 states.</li> 11141 11142 <li>add escape sequence to start/stop blinking cursor, which 11143 allows implementing <code>cvvis</code> terminfo capability 11144 (request by Nate Bargmann).</li> 11145 11146 <li>add <code>indp</code> and <code>rin</code> to terminfo 11147 entry.</li> 11148 11149 <li>fix an out-of-bounds array reference in ScrnRefresh() for 11150 wide characters (report by Dan Harnett, patch by Todd Miller). 11151 This bug dates from <a href="#xterm_141">patch #141</a>.</li> 11152 </ul> 11153 11154 <h1><a name="xterm_180" id="xterm_180">Patch #180 - 2003/10/12 - 11155 XFree86 4.3.99.15</a></h1> 11156 11157 <ul> 11158 <li>several fixes for rendering using Xft via option 11159 <code>-fa</code>: 11160 <ul> 11161 <li>translate Unicode values, i.e,. from UTF-8 output to 11162 xterm, for line-drawing to xterm's internal code, etc., 11163 since TrueType fonts generally do not have either set of 11164 line-drawing glyphs. xterm can draw these directly (report 11165 by Abigail Brady).</li> 11166 11167 <li>pass 16-bit values rather than 8-bit values to 11168 xtermXftDrawString() to allow for wide-characters.</li> 11169 11170 <li>remove spurious check for <code>colorBDMode</code> 11171 resource in logic that does bold fonts.</li> 11172 11173 <li>implement underlining.</li> 11174 </ul> 11175 </li> 11176 11177 <li>patches by Ilya Zakharevich: 11178 <ul> 11179 <li>improve drawXtermText() by making the recursive calls 11180 communicate through arguments, and not through 11181 saving/restoring global variables.</li> 11182 11183 <li>make double-width characters work with <code>-u8</code> 11184 option.</li> 11185 11186 <li>modify lookup of double-sized fonts by checking for a 11187 match ignoring x/y resolution if the first check 11188 fails.</li> 11189 </ul> 11190 </li> 11191 11192 <li>make height of TrueType fonts match ascent+descent (patch 11193 by Keith Packard).</li> 11194 11195 <li>correct configure-script check for imake $CFLAGS, which did 11196 not check properly if imake was not available.</li> 11197 11198 <li>correct install rule in Makefile.in for 11199 <code>uxterm</code>, which was attempting to strip the script 11200 (newsgroup posting by Fernan Aguero).</li> 11201 11202 <li>correct AF/AB strings in termcap for xterm-256color and 11203 xterm-88color entries (report by Josh Howard).</li> 11204 11205 <li>update wcwidth.c to incorporate changes from Markus Kuhn's 11206 2003-05-20 (Unicode 4.0) version of that file.</li> 11207 11208 <li>modify <code>scroll-back</code> and 11209 <code>scroll-forw</code> actions to accept an adjustment value, 11210 e.g., 11211 11212 <pre> 11213 <code>scroll-back(1, page-2)</code> 11214</pre>to scroll back by 2 lines less than a page (patch by Greg 11215Klanderman). 11216 </li> 11217 11218 <li>use color resource setting from Debian package for xterm 11219 VT100 widget, since the choice of blues provides better 11220 contrast.</li> 11221 11222 <li>remove color resources from <code>XTerm.ad</code>, leaving 11223 them only in <code>XTerm-col.ad</code> (prompted by Debian 11224 package for xterm).</li> 11225 11226 <li>correct configure script option --enable-pty-handshake 11227 (report by Paul Gilmartin).</li> 11228 11229 <li>add <code>visualBellDelay</code> resource to modify the 11230 length of time used for visual bell, for very slow displays or 11231 very fast computers (reports by Ingo van Lil and Doug 11232 Toppin).</li> 11233 11234 <li>correct logic for initializing dynamic highlight color 11235 (patch by Jess Thrysoee).</li> 11236 11237 <li>add a check for non-zero size in call to 11238 <code>XCopyArea()</code> to accommodate a Solaris bug.</li> 11239 11240 <li>correct typo in example for character classes in xterm 11241 manpage (Debian #198910).</li> 11242 11243 <li>link xterm with bind_on_load option on Darwin to work 11244 around a deadlock in the dynamic loader when a signal is 11245 received while the dynamic loader is looking up symbols 11246 (patches by Rob Braun, Torrey Lyons).</li> 11247 11248 <li>modify configure script to avoid using "head -1".</li> 11249 11250 <li>update config.guess, config.sub</li> 11251 11252 <li>modify ifdef's to work around inclusion of types FcChar32 11253 and XftCharSpec with FreeType 2.0 (see <a href= 11254 "#xterm_175">patch #175</a>).</li> 11255 11256 <li>modify the predictable version of the generated logfile 11257 name (see <a href="#xterm_171">patch #171</a>) to append the 11258 process-id rather than a random value.</li> 11259 11260 <li>resync with XFree86 CVS 11261 <ul> 11262 <li>Enable SCO function keys in xterm</li> 11263 11264 <li>Make Delete key send DEL by default on SCO in 11265 xterm</li> 11266 </ul> 11267 </li> 11268 </ul> 11269 11270 <h1><a name="xterm_179" id="xterm_179">Patch #179 - 2003/5/21 - 11271 XFree86 4.3.99.5</a></h1> 11272 11273 <ul> 11274 <li>modify ifdef's for WTMPX_FILE to allow building on cygwin 11275 again.</li> 11276 11277 <li>change the default of pty-handshaking configure option (and 11278 related default for imake) to assume this feature is 11279 needed.</li> 11280 11281 <li>add ifdef's so configure option for XawPlus library works 11282 (patch by Pavel Roskin).</li> 11283 11284 <li>add <code>$(MAIN_DEFINES)</code> to the variables checked 11285 by the configure script that may contain information set by 11286 imake. This allows xterm to build/run properly using the 11287 configure script on IRIX64.</li> 11288 11289 <li>add configure check for ".exe" suffix on cygwin.</li> 11290 </ul> 11291 11292 <h1><a name="xterm_178" id="xterm_178">Patch #178 - 2003/5/18 - 11293 XFree86 4.3.99.5</a></h1> 11294 11295 <ul> 11296 <li>modify default for configure 11297 <code>--enable-pty-handshake</code> option to enable it for 11298 Solaris (report by Nelson Beebe).</li> 11299 11300 <li>modify <code>in_put()</code> function to call 11301 <code>PreeditPosition()</code> only when the cursor's position 11302 has changed. This addresses report by Stefan Baums of high CPU 11303 usage while xterm with chinput are running in the background 11304 (patch by Yong Li).</li> 11305 11306 <li>improved explanation of <code>-ls</code> conflict with 11307 <code>-e</code> option in xterm manpage (adapted from comments 11308 by Henning Makholm).</li> 11309 11310 <li>correct comment in terminfo file regarding modifier used 11311 for <code>kDC</code> (Debian #189764, report by Henning 11312 Makholm).</li> 11313 11314 <li>correct/extend some of the keypad description in ctlseqs.ms 11315 (report by Henning Makholm).</li> 11316 11317 <li>correct keypad-mapping table in input.c so 11318 <code>XK_KP_Equal</code> works (report by Henning 11319 Makholm).</li> 11320 11321 <li>modified to work with CJK double-width (bi-width/monospace) 11322 fonts. They're similar to Roman Czbora and David Starner's 11323 gnuunifonts in that Latin letters and numbers have all the same 11324 width which is exactly the half of the width of East Asian 11325 characters. (patch by Jungshik Shin 11326 <jshin@mailaps.org>).</li> 11327 11328 <li>add configure option <code>--enable-broken-osc</code> and 11329 resource <code>brokenLinuxOSC</code> to accommodate scripts 11330 which do not distinguish between running in the Linux console 11331 and running in X. Linux console recognizes malformed control 11332 strings which start with an <code>OSC</code>, but are 11333 fixed-length, with no terminator.</li> 11334 11335 <li>add configure option <code>--enable-broken-st</code> and 11336 resource <code>brokenStringTerm</code> to allow user to revert 11337 one part of the parsing table corrections from <a href= 11338 "#xterm_171">patch #171</a>. (reports by Matthias Scheler and 11339 Kirill Ponomarew indicate that someone's network firmware sends 11340 an <code><escape>X</code>).</li> 11341 11342 <li>modify configure <code>--disable-imake</code> to provide 11343 values for <code>OSMAJORVERSION</code>, 11344 <code>OSMINORVERSION</code>, <code>FUNCPROTO</code> and 11345 <code>NARROWPROTO</code> (report by Heiko Schlichting).</li> 11346 11347 <li>correct <code>vttests/16colors.sh</code>, which omitted the 11348 <code>$SUF</code> variable in output strings (patch by Paul 11349 Gilmartin).</li> 11350 11351 <li>modify shell scripts in <code>vttests</code> directory to 11352 attempt to use named signals in the <code>trap</code> 11353 statement, making this portable to OS/390 (report by Paul 11354 Gilmartin). Tested on SunOS 4.1.4, which implements only 11355 numbers.</li> 11356 </ul> 11357 11358 <h1><a name="xterm_177" id="xterm_177">Patch #177 - 2003/3/23 - 11359 XFree86 4.3.0</a></h1> 11360 11361 <ul> 11362 <li>fix definition of <code>USE_HANDSHAKE</code>, must be 11363 numeric (reported by Jens Schleusener).</li> 11364 </ul> 11365 11366 <h1><a name="xterm_176" id="xterm_176">Patch #176 - 2003/3/22 - 11367 XFree86 4.3.0</a></h1> 11368 11369 <ul> 11370 <li>add configure option <code>--enable-pty-handshake</code> to 11371 allow one to compile-in support for the pty handshaking logic, 11372 and resource <code>ptyHandshake</code> to enable or disable it 11373 (suggested by Ian Collier).</li> 11374 11375 <li>restore <code>USE_HANDSHAKE</code> ifdef removed in 11376 <a href="#xterm_159">patch #159</a> to address Debian 11377 #39964.</li> 11378 11379 <li>move ifdef's for ttysize/winsize into xterm_io.h</li> 11380 11381 <li>simplify loop on <code>tgetent</code>, check if the 11382 successive entries in the lookup table are the same. That makes 11383 xterm do one less lookup if there is no "xterm" entry in the 11384 termcap file (report by Derek Martin).</li> 11385 11386 <li>correct manpage discussion of <code>$TERM</code> and 11387 <code>$TERMCAP</code> variables, which omitted the Tektronix 11388 emulation and a note of the final "dumb" fallback.</li> 11389 11390 <li>broaden ifdef for 11391 <code>XRegisterIMInstantiateCallback()</code> from <a href= 11392 "#xterm_175">patch #175</a> (XIM fix) to exclude non-XFree86 11393 (report by Nelson Beebe indicates this breaks for Solaris, IRIX 11394 and OSF/1).</li> 11395 11396 <li>correct resource-size for <code>iconFont</code> (this was 11397 added by X11R6.3).</li> 11398 11399 <li>improve configure check for XKB bell extension, to work 11400 around inconsistent implementation of this feature (reports by 11401 Nelson Beebe, Kriston Rehberg and David Ellement).</li> 11402 11403 <li>modify configure-check for <code>tty</code> group to be 11404 less strict in batch mode (report by Nelson Beebe).</li> 11405 11406 <li>modify to allow building with g++, to use its compiler 11407 warnings (suggested by Nelson Beebe).</li> 11408 11409 <li>modify <code>dec2ucs[]</code> table to reflect newer codes 11410 available for scanlines 1, 3, 7, 9 (report by Michael 11411 Schroeder).</li> 11412 11413 <li>add configure option for XawPlus library.</li> 11414 </ul> 11415 11416 <h1><a name="xterm_175" id="xterm_175">Patch #175 - 2003/3/9 - 11417 XFree86 4.3.0</a></h1> 11418 11419 <ul> 11420 <li>fix a SIGSEGV which could occur if xterm is connecting to 11421 XIM server, and the XIM server is destroyed (patch by Nam 11422 SungHyun).</li> 11423 11424 <li>modify to use built-in line-drawing characters for Xft 11425 fonts (patch by Andrew Tipton).</li> 11426 11427 <li>make menu reflect the state of the <code>tekInhibit</code> 11428 resource.</li> 11429 11430 <li>make <code>signalInhibit</code> resource work, i.e., 11431 disable the menu entries that would send signals to, or exit 11432 xterm. This was probably broken in X11R5 when logging was 11433 disabled (report by Sven Mascheck).</li> 11434 11435 <li>changed classes of <code>colorBDMode</code> and similar 11436 resources that override colors when a video attribute is set to 11437 <code>ColorAttrMode</code>, to make them distinct from 11438 <code>ColorMode</code>. This avoids an unexpected rendering of 11439 reverse video, for example (report by Paul Fox).</li> 11440 11441 <li>changed class of <code>veryBoldColors</code> to 11442 <code>VeryBoldColors</code>, since <code>ColorMode</code> is 11443 associated with boolean resources.</li> 11444 11445 <li>add option <code>-k8</code> and resource 11446 <code>allowC1Printable</code> to allow users of non-VTxxx 11447 character sets such as KOI-8 to treat the C1 control area 11448 (character codes 128-159) as printable rather than control 11449 characters.</li> 11450 11451 <li>add a null-pointer check for return-value of 11452 <code>ptsname()</code> in HPUX-specific code (report by David 11453 Ellement).</li> 11454 11455 <li>revise the ifdef's used for <code>XKB</code> bell support. 11456 The code was using a nonstandard call 11457 <code>XkbStdBell()</code>. Changed to use 11458 <code>XkbBell()</code> (based on patch by 11459 <derek@signalmarketing.com>).</li> 11460 11461 <li>add a null-pointer check in <code>xtermLoadFont()</code> in 11462 case there is no wide-bold font (Nam SungHyun).</li> 11463 11464 <li>change <code>Makefile.in</code> to use autoconf's 11465 <code>bindir</code>, <code>libdir</code> and 11466 <code>mandir</code> variables (report by Nam SungHyun).</li> 11467 11468 <li>add <code>le</code> to termcap <code>xterm-basic</code> 11469 entry. Though missing from older termcaps for xterm, some 11470 applications check for it (report by Matthias Buelow).</li> 11471 11472 <li>modify <code>uxterm</code> script to strip modifiers such 11473 as "@euro" from the locale setting before adding ".UTF-8" 11474 (Debian #179929).</li> 11475 11476 <li>modify the remaining places where tek4014 emulation uses 11477 <code>XDefineCursor()</code>, to make it work as originally 11478 implemented, e.g., when switching back to alpha mode. Added 11479 test-screen in vttest to test this feature properly.</li> 11480 </ul> 11481 11482 <h1><a name="xterm_174" id="xterm_174">Patch #174 - 2003/2/25 - 11483 XFree86 4.2.99.903</a></h1> 11484 11485 <ul> 11486 <li>work-around for XFree86 bug which made 11487 <code>XDefineCursor()</code> on a shell-window no longer work. 11488 The tek4014 emulation used this. Use the next lower window 11489 (report by Karl Rudolf Bauchspiess).</li> 11490 11491 <li>add a resource setting <code>allowWindowOps</code> to 11492 control whether the extended window operations should be 11493 allowed, e.g., resize, iconify, report window attributes. This 11494 is to accommodate people who are not capable of using a pager 11495 to view log-files.</li> 11496 </ul> 11497 11498 <h1><a name="xterm_173" id="xterm_173">Patch #173 - 2003/2/6 - 11499 XFree86 4.2.99.902</a></h1> 11500 11501 <ul> 11502 <li>reset mouse mode to normal on a full reset. This does not 11503 apply to mouse hilite tracking mode, of course (see 11504 ctlseqs.ms).</li> 11505 11506 <li>add a time-delay at the point where mouse hilite tracking 11507 mode choses to not handle X events, to avoid runaway CPU usage 11508 (report by D Hugh Redelmeier).</li> 11509 11510 <li>check for illegal character in DECUDK string, quit if 11511 detected.</li> 11512 </ul> 11513 11514 <h1><a name="xterm_172" id="xterm_172">Patch #172 - 2002/12/27 - 11515 XFree86 4.2.99.3</a></h1> 11516 11517 <ul> 11518 <li>fixes to make repainting of 256-color example work properly 11519 (reports by Abigail Brady and Scott A Crosby). 11520 <ul> 11521 <li>set flag in <code>AllocateAnsiColor()</code> to ensure 11522 the color is allocated once only.</li> 11523 11524 <li>fix check in <code>ScrnRefresh</code>, which was 11525 comparing background colors only if the ANSI foreground 11526 colors also were set.</li> 11527 </ul> 11528 </li> 11529 11530 <li>merge <code>Error()</code> calls and some 11531 <code>exit()</code> calls into <code>SysError()</code>, and 11532 change that to add the brief explanation for each error code 11533 which is provided in the manpage. Change a few 11534 <code>SysError()</code>, calls to avoid using code 1, to avoid 11535 confusion with exit status from places that do not use 11536 <code>SysError()</code>.</li> 11537 11538 <li>simplify logic used to open a debug logfile as the standard 11539 error.</li> 11540 11541 <li>modify the <code>-e</code> option so that if it fails, 11542 xterm will check if only one argument follows, e.g., it was 11543 quoted, and then retry using <code>sh -c</code>.</li> 11544 11545 <li>modify parsing of DECUDK string parameter to allow a comma 11546 between pairs of hexadecimal digits (Ray Neuman 11547 <raymond@one.com.au> reports that "real" terminals accept 11548 this; perhaps they simply ignore unexpected characters).</li> 11549 11550 <li>fix a few problems with the <code>$TERMCAP</code> string 11551 generated by <code>resize</code>: 11552 <ul> 11553 <li>for Bourne shell, add an <code>export</code> command. 11554 This was missing as far back as X11R5.</li> 11555 11556 <li>escape exclamation marks, used in xterm's reset 11557 string.</li> 11558 11559 <li>translate literal <code>\177\</code> to "^?".</li> 11560 </ul> 11561 </li> 11562 11563 <li>improve configure check for <code>tgetent()</code> to work 11564 when <code>$TERMCAP</code> has been set to a specific 11565 entry.</li> 11566 11567 <li>modify <code>minstall.sh</code> to use "%" rather than "@", 11568 to avoid problems with AFS (report by Zdenek Sekera).</li> 11569 11570 <li>list fatal error codes from <code>error.h</code> in the 11571 manpage, remove unused codes in <code>error.h</code>.</li> 11572 11573 <li>use more explicit wording for manpage list of color 11574 resources, since at least one user confused the generic names 11575 such as "black" with the names in rgb.txt (the latter are now 11576 used).</li> 11577 11578 <li>minor fix to description of 1003 mouse mode in ctlseqs.ms 11579 (Larry Riedel).</li> 11580 </ul> 11581 11582 <h1><a name="xterm_171" id="xterm_171">Patch #171 - 2002/12/12 - 11583 XFree86 4.2.99.3</a></h1> 11584 11585 <ul> 11586 <li>modify parser tables to improve detection of malformed 11587 control sequences, making xterm behave more like a real DEC 11588 terminal (patch by Paul Williams).</li> 11589 11590 <li>update comment in <code>input.c</code> to document 11591 <code>Meta</code> as a modifier for escape sequences (patch by 11592 D Roland Walker).</li> 11593 11594 <li>add ifdef'd code for logging option which adds the hostname 11595 and a timestamp to the generated logfile name. The ifdef's are 11596 setup with the configure script (patch by Nelson Beebe).</li> 11597 11598 <li>remove <code>xevents()</code> call from the end of 11599 <code>BlinkCursor()</code>, to fix an occasional problem which 11600 caused xterm to pause until a key was pressed. The reason for 11601 this was that there was no check to ensure that there really 11602 were events for <code>xevents()</code> to process. (patch by 11603 Semen A Ustimenko <semenu@FreeBSD.org>).</li> 11604 11605 <li>remove unused mode-params from <code>open()</code> calls 11606 that do not create a file.</li> 11607 11608 <li>modify configure script to put new items first on 11609 <code>$CPPFLAGS</code> and <code>$CFLAGS</code> to avoid 11610 conflict with environment's <em>-I</em> and <em>-D</em> 11611 options.</li> 11612 11613 <li>update config.guess, config.sub</li> 11614 11615 <li>resync with XFree86 CVS 11616 <ul> 11617 <li>fix va_args glitches for xterm/libfontconfig: 0 == 11618 (void*)0 isn't true for all platforms (Egbert Eich).</li> 11619 11620 <li>initialise ProgramName in xterm's main before 11621 referencing it (XFree86 #5473, Peter Valchev).</li> 11622 11623 <li>some cleanup of Imakefile ifdef's (Marc La 11624 France).</li> 11625 </ul> 11626 </li> 11627 </ul> 11628 11629 <h1><a name="xterm_170" id="xterm_170">Patch #170 - 2002/10/13 - 11630 XFree86 4.2.1</a></h1> 11631 11632 <ul> 11633 <li>correct an off-by-one allocating data for sorted help 11634 message.</li> 11635 11636 <li>modify configure script to check for Xpm library, on which 11637 XFree86 Xaw library depends.</li> 11638 11639 <li>update config.guess, config.sub</li> 11640 </ul> 11641 11642 <h1><a name="xterm_169" id="xterm_169">Patch #169 - 2002/10/5 - 11643 XFree86 4.2.1</a></h1> 11644 11645 <ul> 11646 <li>modify wording of some options in help message to make them 11647 use <code>-/+</code> consistently with respect to "on/off" or 11648 "off/on".</li> 11649 11650 <li>sort options list which is displayed in help- and 11651 syntax-messages at runtime to simplify maintenance.</li> 11652 11653 <li>remove support for Amoeba and Minix (Juliusz Chroboczek 11654 noted it was removed from XFree86 server; there have been no 11655 users since 1996).</li> 11656 11657 <li>add configure script option 11658 <code>--disable-session-mgt</code> to control whether the 11659 session management code should be compiled-in (request by H 11660 Merijn Brand).</li> 11661 11662 <li>ifdef'd the session-management changes with 11663 <code>OPT_SESSION_MGT</code>, to accommodate X11R5 which 11664 predates the related definitions.</li> 11665 11666 <li>fix <code>decode_keyvalue()</code>, which did not properly 11667 parse multiple settings as needed for the <code>ttyModes</code> 11668 resource, since it did not skip over the parsed data.</li> 11669 11670 <li>fix an option-parsing conflict between <code>-class</code> 11671 and <code>-cjk_width</code> (Nam SungHyun)</li> 11672 11673 <li>add a missing null in <code>XtVaSetValues()</code> call 11674 used in <code>Cleanup()</code> (Nam SungHyun)</li> 11675 </ul> 11676 11677 <h1><a name="xterm_168" id="xterm_168">Patch #168 - 2002/9/29 - 11678 XFree86 4.2.1</a></h1> 11679 11680 <ul> 11681 <li>improve data reported for control sequence that requests 11682 window position by taking into account the window decorations, 11683 e.g., border and title (patch by Jess Thrysoee 11684 <jess@thrysoee.dk>).</li> 11685 11686 <li>add <code>-cjk_width</code> and corresponding resource 11687 <code>cjkWidth</code> (patch by Jungshik Shin 11688 <jshin@mailaps.org>).</li> 11689 11690 <li>add <code>-into</code> option, for embedding xterm in a 11691 Tcl/Tk application (patch by George Peter Staplin 11692 <georgeps@xmission.com>).</li> 11693 11694 <li>add simple session management (XSM) client capabilities to 11695 xterm. So a session manager such as, e.g., xsm, should be able 11696 to respawn or kill xterms without the help of an SM proxy (like 11697 smproxy), which is a hack and almost always buggy (patch by 11698 David Madore).</li> 11699 11700 <li>fix conflict between ifdef's for 11701 <code>OPT_DEC_LOCATOR</code> and <code>OPT_READLINE</code> in 11702 button.c (reported by Ilya Zakharevich).</li> 11703 11704 <li>fix for inconsistent use of <code>struct utmp</code> versus 11705 <code>struct utmpx</code> introduced in <a href= 11706 "#xterm_167">patch #167</a> (patches by Paul Gilmartin, Marc La 11707 France).</li> 11708 11709 <li>modify logic for <code>metaSendsEscape</code> to allow it 11710 to work in a setup where the Meta-key is not recognized as a 11711 modifier by the key-translations logic (discussion of 11712 eightBitInput with H.J.Lu). Note however that Vincent 11713 Lefèvre reported this in January).</li> 11714 11715 <li>use null pointer values consistently, rather than literal 11716 "0", for ending variable-length argument lists, e.g., for 11717 <code>execlp()</code> (based on patch by Matthieu Herrb).</li> 11718 11719 <li>correct logic of <code>ChangeAnsiColorRequest()</code>, 11720 which would do a screen repaint after replying to a request for 11721 information.</li> 11722 11723 <li>improve scripts in vttests to work with systems whose 11724 shells support <code>echo -n</code> and have, as does Debian, 11725 an unrelated <code>print</code> utility.</li> 11726 11727 <li>add vttests/acolors.sh to demonstrate OSC 4, which queries 11728 or sets ANSI colors.</li> 11729 11730 <li>fixes for ctlseqs.ms (Pavel Roskin, Ilya Zakharevich).</li> 11731 11732 <li>typos in xterm manpage (Jens Schweikhardt)</li> 11733 11734 <li>remove a redundant GCC_UNUSED from InitPopup() (Nam 11735 SungHyun)</li> 11736 </ul> 11737 11738 <h1><a name="xterm_167" id="xterm_167">Patch #167 - 2002/8/24 - 11739 XFree86 4.2.0</a></h1> 11740 11741 <ul> 11742 <li>correct ifdef's for <code>USE_TERMCAP</code> to match 11743 cygwin configuration.</li> 11744 11745 <li>fix several places in ctlseqs.ms which had no boxes around 11746 the literal text (report by Ilya Zakharevich).</li> 11747 11748 <li>extend mouse support for readline, ifdef'd with 11749 OPT_READLINE (integrated patch from Ilya Zakharevich).</li> 11750 11751 <li>modify terminfo description to match default for 11752 <code>modifyCursorKeys</code> resource.</li> 11753 11754 <li>add <code>modifyCursorKeys</code> resource to control how 11755 the shift- and similar modifiers are used to make a cursor 11756 escape sequence. The default makes a modified escape sequence 11757 always start with CSI and puts the modifier as the second 11758 parameter, to avoid confusing applications that would interpret 11759 the first parameter as a repeat count. The original behavior 11760 can be obtained by setting the resource to 0 (newsgroup 11761 discussion with Stephen J Turnbull, Jeffrey Altman).</li> 11762 11763 <li>correct missing initializations for 11764 <code>appdefaultCursor</code> and <code>appdefaultKeypad</code> 11765 resources.</li> 11766 11767 <li>add configure option <code>--enable-luit</code> and ifdef'd 11768 the luit-related code with OPT_LUIT_PROG.</li> 11769 11770 <li>modify xterm to invoke luit (integrated patch by Tomohiro 11771 Kubota)</li> 11772 11773 <li>update wcwidth.c to match Markus Kuhn's 2002-05-18 11774 version.</li> 11775 11776 <li>correct limit-checking in <code>ComputeSelect()</code> to 11777 handle selections that extend off the visible area; rather than 11778 modify the parameters to <code>TrackText()</code>, use 11779 <code>ScrollSelection()</code> to update the highlighting 11780 limits. (reported by Yegappan Lakshmanan and Nelson Beebe, 11781 patch by Alexander V Lukyanov).</li> 11782 11783 <li>correct manpage description of <code>tiXtraScroll</code> 11784 resource (reported by Tony Finch).</li> 11785 11786 <li>changes from OpenBSD: 11787 <ul> 11788 <li>Make xterm setgid utmp to be able to update utmp even 11789 with root privileges revoked.</li> 11790 11791 <li>If not updating utmp, revoke group privileges totally 11792 too.</li> 11793 </ul> 11794 </li> 11795 11796 <li>changes from NetBSD: 11797 <ul> 11798 <li>Check that the return value from ttyslot() is greater 11799 than 0 before writing the utmp file. Fixes w's "w: Stale 11800 utmp entry: <user> <tty> <pty>" 11801 errors.</li> 11802 11803 <li>Use openpty() to deal with new pty naming scheme.</li> 11804 </ul> 11805 </li> 11806 11807 <li>add <code>print-redir</code> action and menu entry to allow 11808 user to switch terminal in/out of printer controller mode. It 11809 appears from the manual that a real vt220 would not switch back 11810 to normal mode, so another mechanism is used (addresses Debian 11811 #37517).</li> 11812 11813 <li>check if <code>printerCommand</code> resource string is 11814 empty, use this to allow user to disable printer function.</li> 11815 11816 <li>trim trailing blanks from resource strings.</li> 11817 11818 <li>check return value from <code>ptsname()</code>, which may 11819 return null for example if someone has changed the permissions 11820 of /dev/pts to zero (Debian #121899).</li> 11821 11822 <li>modify OS/2 version to use <code>__UNIXOS2__</code> 11823 definition rather than <code>__EMX__</code>, related cleanup 11824 (patch by Holger Veit).</li> 11825 11826 <li>used modified indent 2.0 (patch <a href= 11827 "ftp://ftp.invisible-island.net/gnu-patches/">20020428</a>) to 11828 reformat most of the C source files, to simplify 11829 maintenance.</li> 11830 11831 <li>fix a couple of places where there were leading tabs on 11832 symbol-definition lines in Imakefile (Marc La France from 11833 report by Tony Finch)</li> 11834 11835 <li>add imake variable (TraceXTerm) to allow building debug 11836 version (Egbert Eich).</li> 11837 </ul> 11838 11839 <h1><a name="xterm_166" id="xterm_166">Patch #166 - 2002/3/25 - 11840 XFree86 4.2.0</a></h1> 11841 11842 <ul> 11843 <li>correct a bug in selection: double clicking on a word which 11844 was partly scrolled off the screen may select that text (report 11845 by Vincent Lefèvre <vincent@vinc17.org>).</li> 11846 11847 <li>implement <code>veryBoldColors</code> resource to control 11848 whether the corresponding video attribute such as 11849 <code>bold</code> is displayed when using 11850 <code>colorBDMode</code>, etc. (request by Josh Howard 11851 <jrh@vicor-nb.com>).</li> 11852 11853 <li>define escape sequences for function keys F21-F35 (patch by 11854 Stephen P Wall).</li> 11855 11856 <li>change the colors for the 256-color model, making them less 11857 skewed toward black (patch by Stephen P Wall).</li> 11858 11859 <li>add <code>vt100Graphics</code> resource (see <a href= 11860 "#xterm_115">patch #115</a>, based on discussion with Glenn 11861 Maynard).</li> 11862 11863 <li>ifdef'd Xaw/Xaw3d/neXtaw includes separately to avoid 11864 potential incompatibilities between these flavors of Athena 11865 widgets.</li> 11866 11867 <li>add configure check for XFree86 4.x Xaw library, whose 11868 geometry management is broken, to avoid trying to use it for 11869 toolbar configuration.</li> 11870 11871 <li>updates to configure script from vile and lynx to allow 11872 configure.in to be compiled with autoconf 2.5x</li> 11873 11874 <li>add a check for null pointer return by 11875 <code>ptsname()</code> (newsgroup posting from Mike Silva 11876 <mikesilva@lucent.com>).</li> 11877 11878 <li>fill in a few details needed to allow UTF-8 mode to switch 11879 on/off after startup. This requires that <code>wideChars</code> 11880 resource be set. (based on comments in 4 Aug 2001 by Alexey 11881 Marinichev <lyosha@lyosha.2y.net>).</li> 11882 11883 <li>remove duplicate install rules that make directories, e.g., 11884 so installing manpage will not create app-defaults 11885 directory.</li> 11886 11887 <li>add comment in in <code>do_osc()</code>, reserving cases 30 11888 and 31 for for Konsole (request by Stephan Binner 11889 <Stephan.Binner@gmx.de>).</li> 11890 11891 <li>fixes for ctlseqs.ms and xterm.man (patch by Werner Lemberg 11892 <wl@gnu.org>).</li> 11893 11894 <li>add check for monochrome display, disabling colorMode in 11895 that case (fixes Debian #134130).</li> 11896 11897 <li>resync with XFree86 CVS 11898 <ul> 11899 <li>Fix some xterm build warnings on *BSD (patch by David 11900 Dawes).</li> 11901 11902 <li>Only use SA_RESTART in xterm when it's available (patch 11903 by Frank Liu).</li> 11904 11905 <li>Fix incorrect code in signal handlers in most of the 11906 clients, xterm and xdm not done yet (patch by Matthieu 11907 Herrb).</li> 11908 </ul> 11909 </li> 11910 </ul> 11911 11912 <h1><a name="xterm_165" id="xterm_165">Patch #165 - 2002/1/5 - 11913 XFree86 4.1.0</a></h1> 11914 11915 <ul> 11916 <li>modify <code>uxterm</code> script to strip encoding part 11917 from environment variable before adding ".UTF-8" (based on 11918 Debian #125947, but using a more portable solution).</li> 11919 11920 <li>add an assignment statement in VTInitialize() to make 11921 <code>awaitInput</code> resource work.</li> 11922 11923 <li>use new macros init_Bres(), etc., in VTInitialize() to add 11924 trace of the initialization of resources.</li> 11925 11926 <li>modify checks for $LC_ALL, related environment variables to 11927 ensure the resulting strings are nonempty (report by Markus 11928 Kuhn).</li> 11929 11930 <li>add an ifdef in charproc.c for num_ptrs variable in case 11931 all configure options are disabled.</li> 11932 11933 <li>modify definition of getXtermBackground() to avoid negative 11934 array index warning on Tru64 (report by Jeremie Petit).</li> 11935 11936 <li>improve fix from patch #165 (still Debian #117184, report 11937 by Matt Zimmerman <mdz@debian.org>)</li> 11938 11939 <li>correct install rule for uxterm in Makefile.in, to handle 11940 the case where building in a different directory than xterm's 11941 source (patch by Paul Gilmartin).</li> 11942 11943 <li>documented ANSI.SYS-style cursor save/restore escape 11944 sequences in ctlseqs.ms, which are in xterm since X11R5.</li> 11945 11946 <li>correct two entries in the default charClass table, which 11947 did not follow the manpage comment about the character number 11948 corresponding to the class (patch by Marc Bevand 11949 <bevand_m@epita.fr>).</li> 11950 11951 <li>fix a couple of typos in comments in the app-defaults files 11952 (David Krause <xfree86@davidkrause.com>).</li> 11953 11954 <li>resync with XFree86 CVS 11955 <ul> 11956 <li>update language of copyrights in some files to reflect 11957 the fact that they were reassigned from X Consortium to The 11958 Open Group in 1998. Note that this xterm source is derived 11959 from the 1996 version from X Consortium, does not 11960 incorporate changes made by X Consortium or The Open Group 11961 after that date, hence we do not add The Open Group's 1998 11962 copyright date to related files.</li> 11963 11964 <li>save/restore <code>errno</code> in signal catcher 11965 (patch by Matthieu Herrb).</li> 11966 11967 <li>modify UXTerm.ad's font5 resource so that xterm can 11968 display double width characters using a font distributed 11969 with XFree86 (Tomohiro Kubota).</li> 11970 </ul> 11971 </li> 11972 </ul> 11973 11974 <h1><a name="xterm_164" id="xterm_164">Patch #164 - 2001/11/13 - 11975 XFree86 4.1.0</a></h1> 11976 11977 <ul> 11978 <li>correct a case where <code>ptyInitialErase</code> and 11979 <code>backarrowKeyIsErase</code> resources combine to set 11980 <code>DECBKM</code> mode, but a <code>reset</code> command 11981 would not reset xterm to that state, making the erase character 11982 revert to ^H (Debian #117184)</li> 11983 </ul> 11984 11985 <h1><a name="xterm_163" id="xterm_163">Patch #163 - 2001/11/04 - 11986 XFree86 4.1.0</a></h1> 11987 11988 <ul> 11989 <li>correct ifdef's for <code>__QNX__</code> and 11990 <code>USE_SYSV_PGRP</code> in main.c call to 11991 <code>tcsetpgrp</code>, which broke bash behavior around 11992 <a href="#xterm_140">patch #140</a> (report/patch by Frank Liu 11993 <fliu@mail.vipstage.com>).</li> 11994 11995 <li>modify trace.c to fix missing definition of GCC_UNUSED for 11996 compilers other than gcc when configured for trace code 11997 (report/patch by Paul Gilmartin).</li> 11998 11999 <li>change format in TraceOptions() to use long rather than 12000 int, since the latter could lose precision on 64-bit machines 12001 (report/patch by Nelson Beebe).</li> 12002 12003 <li>modify xterm manual page and minstall.sh to allow imake 12004 rules to define location of app-defaults directory (Debian 12005 #87611).</li> 12006 12007 <li>review/update list of conflicting preprocessor symbols to 12008 remove from $CPPFLAGS at the end of the configure script. In 12009 particular, this allows one to configure xterm without the 12010 utempter library on Redhat 7.1 (report/patch by Adam 12011 Sulmicki).</li> 12012 </ul> 12013 12014 <h1><a name="xterm_162" id="xterm_162">Patch #162 - 2001/10/23 - 12015 XFree86 4.1.0</a></h1> 12016 12017 <ul> 12018 <li>correct logic that processes <code>-class</code> option, so 12019 that a following <code>-e</code> option is handled (Debian 12020 #116297).</li> 12021 12022 <li>improve options-decoding to allow <code>-version</code> and 12023 <code>-help</code> options to be combined (Debian 12024 #110226).</li> 12025 12026 <li>add a 10 millisecond delay in event loop when processing 12027 <code>-hold</code> option, to avoid using too much CPU time 12028 (Debian #116213).</li> 12029 12030 <li>prefix final program execution in <code>uxterm</code> with 12031 "exec" to avoid a useless shell hanging around (Christian 12032 Weisgerber).</li> 12033 </ul> 12034 12035 <h1><a name="xterm_161" id="xterm_161">Patch #161 - 2001/10/10 - 12036 XFree86 4.1.0</a></h1> 12037 12038 <ul> 12039 <li>modify logic that resets keypad application mode to avoid 12040 doing this if there is no modifier associated with the Num_Lock 12041 keysym (report by John E Davis <davis@space.mit.edu> and 12042 Alan W Irwin <irwin@beluga.phys.uvic.ca>).</li> 12043 12044 <li>add built-in translation for Control/KP_Separator to 12045 KP_Subtract, to accommodate users who wish to use xmodmap to 12046 reassign the top row of the numeric keypad.</li> 12047 12048 <li>correct Imakefile install-rule for <code>uxname</code> 12049 script (reported by Nam SungHyun <namsh@lge.com>).</li> 12050 12051 <li>resync with XFree86 CVS – correct typo in 12052 <code><ncurses/term.h></code> ifdef.</li> 12053 </ul> 12054 12055 <h1><a name="xterm_160" id="xterm_160">Patch #160 - 2001/10/7 - 12056 XFree86 4.1.0</a></h1> 12057 12058 <ul> 12059 <li>modify logic in main.c (see <a href="#xterm_145">patch 12060 #145</a>) to avoid generating the same identifier, for example, 12061 for /dev/tty1 and /dev/pts/1, which is used to denote an entry 12062 in the utmp file (Debian bug report #84676), A similar fix was 12063 also sent by Jerome Borsboom <borsboom@westbrabant.net> 12064 in May, but I overlooked it when reviewing bug reports.</li> 12065 12066 <li>add configure check for <code><ncurses/term.h></code> 12067 to get rid of hardcoded <code>__CYGWIN__</code> ifdef in 12068 resize.c 12069 <p>NOTE: The CYGWIN port should not be linking 12070 <code>resize</code> with ncurses. It appears that the only 12071 reason it is, is because both the ncurses and termcap ports 12072 on that platform are badly misconfigured (essential pieces 12073 have been removed, etc). Checking for 12074 <code><ncurses/term.h></code> does not hurt anything, 12075 since there are some correct installations that are set up 12076 that way.</p> 12077 </li> 12078 12079 <li>add a sample <code>uxterm</code> script, which uses the 12080 <code>UXTerm</code> application defaults for UTF-8 12081 environments.</li> 12082 12083 <li>undo change to xterm application defaults, since this 12084 introduced an unnecessary incompatibility. The intended 12085 functionality was already addressed by the <a href= 12086 "#xterm_141">UXTerm</a> app-defaults file.</li> 12087 12088 <li>resync with XFree86 CVS 12089 <ul> 12090 <li>Modified xterm app default to use LFD fontnames instead 12091 of old type (Michael Schroeder).</li> 12092 12093 <li>Fix xterm when XIM is disabled - caused a segfault 12094 (Tomohiro Kubota).</li> 12095 </ul> 12096 </li> 12097 </ul> 12098 12099 <h1><a name="xterm_159" id="xterm_159">Patch #159 - 2001/9/19 - 12100 XFree86 4.1.0</a></h1> 12101 12102 <ul> 12103 <li>remove an ifdef for <code>USE_HANDSHAKE</code> added in 12104 patch #158 from the second <code>TIOCSSIZE</code> ioctl call in 12105 the initialization code. Paul Gilmartin reports that for 12106 Solaris 2.6 (sparc), stty does not show that xterm sets rows 12107 and columns unless the second ioctl is executed.</li> 12108 12109 <li>correct treatment of empty parameter list for some OSC 12110 strings (report by Sami Farin <sfarin@ratol.fi>).</li> 12111 </ul> 12112 12113 <h1><a name="xterm_158" id="xterm_158">Patch #158 - 2001/9/8 - 12114 XFree86 4.1.0</a></h1> 12115 12116 <ul> 12117 <li>augment key translations for scrollbar widget to ensure 12118 that keystrokes intended for the text area are not lost if the 12119 mouse pointer happens to fall on the scrollbar. This can 12120 happen, for instance, if the user's <code>app-defaults</code> 12121 or <code>.Xdefaults</code> file contains a translations 12122 resource, though it may also happen through unrelated resource 12123 settings: probably a bug in libXt (reported by Paul Fox 12124 <pgf@foxharp.boston.ma.us> and Dmitry Yu. Bolkhovityanov 12125 <D.Yu.Bolkhovityanov@inp.nsk.su>).</li> 12126 12127 <li>widen ifdef's in xterm.h to define 12128 <code>__EXTENSIONS__</code> on Solaris, for compilers other 12129 than gcc. This was added along <code>_POSIX_C_SOURCE</code> 12130 with in <a href="#xterm_151">patch #151</a>, but is not 12131 sufficient since Sun's compiler does not define 12132 <code>__STDC__</code> by default (report by Matthias Scheler 12133 <tron@zhadum.de>).</li> 12134 12135 <li>modify xterm to obtain the closest matching color if an 12136 exact color is not available, e.g., on 8-bit displays (patch by 12137 Stephen P Wall)</li> 12138 12139 <li>implement "OverTheSpot" preedit type of XIM input (patch by 12140 Tomohiro Kubota): 12141 <ul> 12142 <li>This preedit type is a reasonable compromise between 12143 simpleness of implementation and usefulness. "Root" preedit 12144 type is easy to implement but not useful; "OnTheSpot" 12145 preedit type is the best in the point of view of user 12146 interface but very complex. And more, "OverTheSpot" is the 12147 preedit type which the most XIM servers support. Thus, to 12148 achieve reasonable usability, support of "OverTheSpot" 12149 preedit type is needed.</li> 12150 12151 <li>In "OverTheSpot" preedit type, the preedit 12152 (preconversion) string is displayed at the position of the 12153 cursor. On the other hand, it is XIM server's 12154 responsibility to display the preedit string. Thus, it is 12155 needed for XIM client (here XTerm) to inform the XIM server 12156 of the cursor position. And more, to achieve good visual 12157 proportion, preedit string must be written using proper 12158 font. Thus, it is XIM client's responsibility to inform the 12159 XIM server of the proper font. The font must be supplied by 12160 "fontset". Fontset is a set of fonts with charsets which 12161 are specified by the current locale. Since XTerm uses 12162 ISO10646 fonts regardless of the current locale, the fonts 12163 for XIM must be prepared separately. It is difficult to 12164 prepare fonts which are similar to XTerm font. Thus, my 12165 patch uses a simple way - the default font is "*" which 12166 matches every fonts and X library will automatically choose 12167 fonts with proper charsets. I added "-fx" command option 12168 and "ximFont" resource to override this default font 12169 setting.</li> 12170 12171 <li>changed the definition of "OverTheSpot" preedit type 12172 from XIMPreeditPosition|XIMStatusArea to 12173 XIMPreeditPosition|XIMStatusNothing. This matches the 12174 behavior of other programs such as Rxvt, Kterm, Gedit.</li> 12175 12176 <li>A tiny XIM bugfix is also included. By calling 12177 XSetLocaleModifiers() with parameter of "", it can consider 12178 XMODIFIERS environmental variable which is a standard way 12179 for users to specify XIM server to be used.</li> 12180 </ul> 12181 </li> 12182 12183 <li>adjust configure script to accommodate repackaging of 12184 keysym2ucs.c as include-file for xutf8.c (patch by Tomohiro 12185 Kubota).</li> 12186 12187 <li>add the <code>UXTerm</code> app-defaults file to makefile 12188 install rules (request by Juliusz Chroboczek).</li> 12189 12190 <li>correct logic in <code>get_termcap()</code>, which returned 12191 false if the <code>tgetent()</code> call indicated that xterm 12192 was linked with terminfo. Although the <code>$TERMCAP</code> 12193 variable cannot be adjusted in this case, xterm still needs 12194 information from this call to extract data to initialize the 12195 erase-mode when the <code>ptyInitialErase</code> resource is 12196 false.</li> 12197 12198 <li>modify <code>ScrollbarReverseVideo()</code> function to 12199 cache the original border color, so it can restore that when an 12200 application flashes the screen (Bugzilla #38872).</li> 12201 12202 <li>resync with XFree86 CVS 12203 <ul> 12204 <li>remove ifdef's for X_NOT_STDC_ENV (patch by David 12205 Dawes).</li> 12206 12207 <li>add Cygwin to special errno handling case in ptydata.c 12208 (Alan Hourihane)</li> 12209 12210 <li>set screen size earlier in initialization, to address a 12211 race with window manager resizing its clients (Keith 12212 Packard).</li> 12213 </ul> 12214 </li> 12215 </ul> 12216 12217 <h1><a name="xterm_157" id="xterm_157">Patch #157 - 2001/6/18 - 12218 XFree86 4.1.0</a></h1> 12219 12220 <ul> 12221 <li>clean up button.c and input.c (patch by Juliusz 12222 Chroboczek). The basic idea is to use a single set of APIs in 12223 the XTerm core, and put a set of workarounds in a separate 12224 file. As you will notice, this drastically simplifies parts of 12225 the code; in particular, the only remaining ifdefs related to 12226 the differences between Xutf8 and legacy systems are related to 12227 the selection provider logic. This defines two new files, 12228 xutf8.h and xutf8.c, provide some half-hearted but fully 12229 portable emulation for the three Xutf8* functions that XTerm 12230 uses. Putting these in a separate file will allow people to 12231 experiment with more complex versions without making the core 12232 of XTerm more difficult to maintain. The functionality of the 12233 emulation is as follows. 12234 <ul> 12235 <li>Xutf8TextListToTextProperty fully handles XStringstyle 12236 and XUTF8StringStyle. It will only generate STRING for 12237 XStdICCTextStyle, and will only generate Latin-1 in 12238 XCompoundTextStyle (but label it as COMPOUND_TEXT, as the 12239 spec requires). (I have hesitated to make this function 12240 fail for XStdICCTextStyle and XCompoundTextStyle; this 12241 might be a smart thing to do, in the hope that the 12242 selection requestor will try UTF8_STRING afterwards; 12243 opinions?)</li> 12244 12245 <li>Xutf8TextPropertyToTextList fully handles STRING and 12246 UTF8_STRING. It systematically fails for 12247 COMPOUND_TEXT.</li> 12248 12249 <li>Xutf8LookupString will properly handle single-keystroke 12250 input for the keysyms covered by Markus' keysym2ucs 12251 function. It will not handle either compose key input or 12252 external input methods.</li> 12253 </ul> 12254 </li> 12255 12256 <li>add an ifdef for <code>SunXK_F36</code>, used in 12257 <code>xtermcapKeycode()</code> (patch by Mark Waggoner 12258 <waggoner@ichips.intel.com>).</li> 12259 12260 <li>modify check for login name to try <code>getlogin()</code> 12261 and $LOGNAME, $USER environment variables to detect if the user 12262 has logged in under an alias, i.e., an account with the same 12263 user id but a different name (Debian bug report #70084).</li> 12264 12265 <li>add resource <code>tiXtraScroll</code>, which can be used 12266 to preserve the screen contents in the scrollback rather than 12267 erasing it when starting a fullscreen application such as 12268 <code>vi</code> (patch by Ken Martin 12269 <fletcher@catsreach.org>).</li> 12270 12271 <li>two patches by Denis Zaitsev <zzz@cd-club.ru>: 12272 <ul> 12273 <li>added <code>forceBoxChars</code> resource to control 12274 the "line-drawing characters" option.</li> 12275 12276 <li>added <code>freeBoldBox</code> resource, which, when 12277 set true, suppresses check in 12278 <code>same_font_size()</code>, so xterm does not attempt to 12279 ensure that the bold font is the same size as the normal 12280 font.</li> 12281 </ul> 12282 </li> 12283 12284 <li>change the color class for ANSI colors and similar ones 12285 such as bold-color, etc., to follow the convention that the 12286 classname is the instance name with a leading capital (e.g., 12287 <code>color0</code> and <code>Color0</code> rather than 12288 <code>color0</code> and <code>Foreground</code>). There was 12289 little use for Foreground as a class other than to create 12290 occasional confusion and bug reports, most recently by Nelson 12291 Beebe who reports that it disables colors in xterm but not on 12292 Linux, which is probably due to a difference in resource 12293 evaluation order. A configure script option 12294 (--disable-color-class) is provided for anyone who did use the 12295 older behavior.</li> 12296 12297 <li>fix a signal-handling bug. When running xterm with 12298 <code>ksh</code> or similar shell such as bash 2.05, xterm will 12299 hang and not respond to keystrokes after the user types 12300 <code>suspend</code>. Additionally the popup menus do not 12301 respond, so it is not possible to send SIGCONT to the shell. 12302 What is happening is that the shell is sending itself SIGSTOP, 12303 and it is being stopped. Per specification it also means that 12304 the operating system is sending SIGCHLD to parent to the bash 12305 (XTERM). Now the issue is that xterm assumes it cannot happen 12306 and it expects to receive SIGCHLD only upon 12307 <em>termination</em> of its children. This causes a deadlock 12308 with xterm waiting for the child to die, and the child waiting 12309 for SIGCONT. (report/patch by Adam Sulmicki), analysis/testing 12310 by Sven Mascheck 12311 <sven.mascheck@student.uni-ulm.de>).</li> 12312 12313 <li>correct some inconsistent checks for 12314 <code>XtReleaseGC()</code> calls in 12315 <code>xtermLoadFont()</code> (patch by Nam SungHyun 12316 <namsh@lge.com>).</li> 12317 12318 <li>updated wcwidth.c and keysym2ucs.c to versions dated 12319 2001/1/12 and 2001/4/18, respectively from 12320 http://www.cl.cam.ac.uk/~mgk25/ucs/</li> 12321 12322 <li>correction to change from <a href="#xterm_90">patch 12323 #90</a>, which was intended to reset the saved cursor position 12324 for normal/alternate screens on a soft reset, but actually 12325 wiped out all of the saved cursor information. Just reset the 12326 saved position for the current screen (report by Michael 12327 Schroeder).</li> 12328 12329 <li>modify ShowCursor() and HideCursor() so that if the cursor 12330 points to the second part of a wide character, make the 12331 show/hide operate on the first position of the wide character 12332 (patch by Sven Verdoolaege).</li> 12333 12334 <li>scrolling in the alternate screen just before switching 12335 back to the main screen can cause extra blank lines to be 12336 inserted into the scrollback buffer (patch by Paul Vojta 12337 <vojta@math.berkeley.edu>).</li> 12338 12339 <li>resync with XFree86 4.1.0: 12340 <ul> 12341 <li>Use TermcapLibrary as -lncurses instead of -ltermcap, 12342 fixes problem building xterm/resize on Cygwin/XFree86 12343 (Harold Hunt).</li> 12344 12345 <li>Install xterm.termcap and xterm.terminfo when 12346 installing xterm (Torrey T. Lyons).</li> 12347 12348 <li>Fix some build issues on Cygwin/XFree86 (Suhaib 12349 Siddiqi).</li> 12350 12351 <li>Define CBAUD, when it's missing in xterm, on LynxOS 12352 (Stuart Lissaman).</li> 12353 </ul> 12354 </li> 12355 </ul> 12356 12357 <h1><a name="xterm_156" id="xterm_156">Patch #156 - 2001/4/28 - 12358 XFree86 4.0.3</a></h1> 12359 12360 <ul> 12361 <li>change order of selection-target types to make 8-bit xterm 12362 prefer UTF8_STRING to COMPOUND_TEXT (patch by Juliusz 12363 Chroboczek).</li> 12364 12365 <li>document <code>-fa</code>, <code>-fs</code> command-line 12366 options and <code>faceName</code>, <code>faceSize</code> 12367 resources which are used by the freetype library support.</li> 12368 12369 <li>if configure script finds freetype libraries, but imake 12370 definitions do not have the XRENDERFONT definition, define it 12371 anyway.</li> 12372 12373 <li>modify configure script check for freetype libraries to 12374 include <code><Xlib.h></code>, since an older version of 12375 the related headers relies on this (patch by Adam 12376 Sulmicki).</li> 12377 </ul> 12378 12379 <h1><a name="xterm_155" id="xterm_155">Patch #155 - 2001/4/20 - 12380 XFree86 4.0.3</a></h1> 12381 12382 <ul> 12383 <li>correct return type of in_put() from <a href= 12384 "#xterm_155">patch #153</a> changes, which left it not wide 12385 enough for UTF-8 (patch by Bruno Haible).</li> 12386 </ul> 12387 12388 <h1><a name="xterm_154" id="xterm_154">Patch #154 - 2001/4/11 - 12389 XFree86 4.0.3</a></h1> 12390 12391 <ul> 12392 <li>undo check for return value from <code>pututline</code> 12393 (used for debugging) since that function does not return a 12394 value on Slackware 3.6.</li> 12395 12396 <li>correct length in ScreenWrite, when rendering invisible 12397 text (patch by Sven Verdoolaege <skimo@kotnet.org>).</li> 12398 12399 <li>fixes/improvements for the <code>i18nSelection</code> 12400 resource from patch #153, by Bruno Haible: 12401 <ul> 12402 <li>add missing initialization for 12403 <code>i18nSelection</code> resource.</li> 12404 12405 <li>split-out the non-ICCM aspect of the 12406 <code>i18nSelection</code> resource as a new resource, 12407 <code>brokenSelections</code>.</li> 12408 </ul> 12409 </li> 12410 12411 <li>add configure check for <code><time.h></code> and 12412 <code><sys/time.h></code>, to allow for Unixware 7, 12413 which requires both. If the configure script is not used, only 12414 <code><time.h></code> will be included as before (report 12415 by Thanh Ma).</li> 12416 12417 <li>fix redefinition of <code>dup2</code>, 12418 <code>getutent</code>, <code>getutid</code>, 12419 <code>getutline</code> and <code>sleep</code> functions on 12420 Unixware 7 (report by Thanh Ma 12421 <Thanh.Ma@casi-rusco.com>)</li> 12422 12423 <li>add a fall-back definition for <code>__hpux</code>, which 12424 is apparently not defined in some compilers on HPUX 11.0 12425 (reported by Clint Olsen).</li> 12426 12427 <li>change VAL_INITIAL_ERASE, which is used as a fallback for 12428 the <code>"kb"</code> termcap string to 8, since that matches 12429 the xterm terminal description (request by Alexander V 12430 Lukyanov).</li> 12431 12432 <li>correct an off-by-one in <code>ClearInLine</code>, which 12433 caused the erase-characters (ECH) control to display 12434 incorrectly (patch by Alexander V Lukyanov).</li> 12435 12436 <li>correct escape sequences shown in terminfo for shifted 12437 editing keys. The modifier code was for the control key rather 12438 than the shift key.</li> 12439 </ul> 12440 12441 <h1><a name="xterm_153" id="xterm_153">Patch #153 - 2001/3/29 - 12442 XFree86 4.0.3</a></h1> 12443 12444 <ul> 12445 <li>increase PTYCHARLEN to 8 for os390, add some debugging 12446 traces for UTMP functions (patch by Paul Gilmartin).</li> 12447 12448 <li>correct an misplaced brace in 12449 <code>SelectionReceived()</code> (patch by Bruno Haible).</li> 12450 12451 <li>correct an assignment dropped in 12452 <code>SelectionReceived()</code> which made it not compile for 12453 wide-characters combined with debug traces.</li> 12454 12455 <li>correct typo, clarify description of 88- and 256-color 12456 controls (report by Bram Moolenaar).</li> 12457 12458 <li>correct a typo in ctlseqs.ms which caused DEC Locator 12459 control sequences using single quote "'" display grave "`" 12460 instead (reported by Paul Williams, apparently in patch 12461 #114).</li> 12462 </ul> 12463 12464 <h1><a name="xterm_152" id="xterm_152">Patch #152 - 2001/3/13 - 12465 XFree86 4.0.2</a></h1> 12466 12467 <ul> 12468 <li>correct index in inner loop in <code>VTInitI18N()</code> 12469 from patch #151 changes, which resulted in infinite loop under 12470 some conditions (report/analysis by Paul Gilmartin).</li> 12471 12472 <li>remove spurious "%|" from terminfo sgr capabilities 12473 (report/analysis by Adam M Costello, Debian #89222).</li> 12474 12475 <li>add shell script to adjust list of dynamic libraries linked 12476 by <code>resize</code> when building with the standalone 12477 configure script. Otherwise it uses the same list as for xterm, 12478 which is excessive.</li> 12479 12480 <li>fix a few compiler warnings reported by the 20010305 gcc 12481 snapshot.</li> 12482 </ul> 12483 12484 <h1><a name="xterm_151" id="xterm_151">Patch #151 - 2001/3/10 - 12485 XFree86 4.0.2</a></h1> 12486 12487 <ul> 12488 <li>alter the behaviour of selections in XTerm (patch by 12489 Juliusz Chroboczek). It is believed to follow the ICCCM + 12490 UTF8_STRING to the letter, both in UTF-8 and in eight-bit mode. 12491 From his description: 12492 <ul> 12493 <li>When compiled against XFree86 4.0.2, the patched XTerm 12494 will make the selection available as COMPOUND_TEXT, STRING 12495 or UTF8_STRING in both modes. It will request selections in 12496 the following order: 12497 <p>UTF-8 mode: UTF8_STRING, TEXT, COMPOUND_TEXT, 12498 STRING.<br> 12499 eight-bit mode: TEXT, COMPOUND_TEXT, UTF8_STRING, 12500 STRING.</p> 12501 </li> 12502 12503 <li>When compiled against an earlier version of XFree86 (or 12504 compiled with OPT_UTF8_API=0), it will still obey the 12505 ICCCM, but will neither request nor provide UTF8_STRING in 12506 eight-bit mode, and neither TEXT nor COMPOUND_TEXT in UTF-8 12507 mode.</li> 12508 12509 <li>For compatibility with previous versions of XTerm, a 12510 resource <code>i18nSelections</code> is provided, please 12511 see the manpage for details. However, due to an unexpected 12512 combination of ICCCM extensions by various bits and pieces 12513 of the libraries, interacting with previous versions of 12514 XTerm will work in many locales even without this flag. 12515 (Please do not set this resource to true by default, as 12516 this would violate the ICCCM.)</li> 12517 </ul> 12518 </li> 12519 12520 <li>improved error checking/reporting in VTInitI18N(), ensuring 12521 that lack of input method styles is treated distinctly from a 12522 mismatch.</li> 12523 12524 <li>remove an incorrect ifdef from patch #141 which suppressed 12525 overstriking to simulate bold font when xterm was compiled to 12526 support wide characters (report/analysis by Adam M Costello 12527 <amc@cs.berkeley.edu>, Debian #76404, Debian 12528 #77575).</li> 12529 12530 <li>modify <code>RequestResize()</code> function to 12531 save/restore window manager hints. Its call to 12532 <code>XtMakeResizeRequest()</code> had the undesirable 12533 side-effect of clearing window manager hints, e.g., when 12534 switching to 132-columns via DECCOLM escape sequence. Window 12535 manager hints make it simple to resize xterm in terms of 12536 character cells rather than pixels (reports by Christian 12537 Weisgerber, Debian #79939). 12538 <p>This applies to the normal configuration. When built with 12539 toolbar support, the hints are applied to a different widget 12540 level (more work will be needed to make hints work with the 12541 toolbar).</p> 12542 </li> 12543 12544 <li>fix a redefinition warning for resize.c on OpenBSD (patch 12545 by Christian Weisgerber).</li> 12546 12547 <li>change resource corresponding to <code>-T</code> option to 12548 match Xt library's <code>-title</code>, i.e., 12549 <code>.title</code> rather than <code>*title</code> so the 12550 command-line options are interchangeable as documented (Debian 12551 bug report #68843).</li> 12552 12553 <li>add script used from autoconf'd makefile for installing 12554 manpages, since recent XFree86 changing the way section numbers 12555 are represented makes the install dependent on extra 12556 scripts.</li> 12557 12558 <li>add configure check for freetype libraries and configure 12559 option --disable-freetype to override this feature.</li> 12560 12561 <li>modify some configure script macros to avoid using 12562 changequote(), which has been rendered useless in the latest 12563 autoconf alpha 2.49c</li> 12564 12565 <li>update config.guess, config.sub to 2001-2-13</li> 12566 12567 <li>remove redundant/contradictory __CYGWIN__ definitions from 12568 resize.c</li> 12569 12570 <li>correct manpage typo introduced by X11R6.5 resync.</li> 12571 </ul> 12572 12573 <p>Changes from XFree86 4.0.2:</p> 12574 12575 <ul> 12576 <li>add definition of <code>_POSIX_C_SOURCE</code> for Solaris 12577 to make this compile with <code>gcc -ansi -pedantic</code> 12578 (report by <mark@zang.com>.</li> 12579 </ul> 12580 12581 <h1><a name="xterm_150" id="xterm_150">Patch #150 - 2000/12/29 - 12582 XFree86 4.0.2</a></h1> 12583 12584 <ul> 12585 <li>move the binding for shifted keypad plus/minus, which 12586 invokes the <code>larger-vt-font()</code> and 12587 <code>smaller-vt-font()</code> actions, respectively, into the 12588 translations resource (suggested by Marius Gedminas 12589 <mgedmin@puni.osf.lt>).</li> 12590 12591 <li>modify configure script to support the 12592 <code>--program-prefix</code>, <code>--program-suffix</code> 12593 and <code>--program-transform-name</code> options (request by 12594 Alison Winters <alison@mirrabooka.com>).</li> 12595 12596 <li>fixes for wide/combining characters (Robert Brady): 12597 <ul> 12598 <li>fix a scrolling / combining characters display 12599 anomaly</li> 12600 12601 <li>fix a problem with double-width characters where if the 12602 primary font had no box-drawing characters, the right hand 12603 half of double-width characters was erased (reported by Yao 12604 Zhang <yzhang@sharemedia.com>).</li> 12605 12606 <li>fix special case of null byte for key handling in UTF-8 12607 locales.</li> 12608 </ul> 12609 </li> 12610 12611 <li>modify logic that compares sizes of normal and bold fonts 12612 to be more forgiving of the font server's choice of bold font 12613 which must match the normal font's size. Now 12614 <code>same_font_size()</code> compares the height of the fonts 12615 rather than individually ascent and descent, and allows the 12616 bold font to be one pixel smaller than the normal font 12617 (addresses a report by Alan Citterman <alan@mticket.com>, 12618 who says that something in patches <a href= 12619 "#xterm_146">#146</a> to <a href="#xterm_148">#148</a> made 12620 xterm more likely to overstrike bold fonts, and indirectly 12621 Debian bug report #76404, which reports the opposite).</li> 12622 12623 <li>make configure script use $CFLAGS and $CPPFLAGS 12624 consistently, including removing a chunk from configure.in 12625 which attempted to save/restore $CPPFLAGS while processing 12626 value set by the --x-includes option, but lost values set in an 12627 intervening AC_CHECK_HEADERS. This change modifies macros 12628 CF_ADD_CFLAGS, CF_ANSI_CC_CHECK and CF_X_TOOLKIT, as well as 12629 removing variables IMAKE_CFLAGS and X_CFLAGS from the generated 12630 makefile (the AC_CHECK_HEADERS problem was reported by Albert 12631 Chin-A-Young <china@thewrittenword.com<).</li> 12632 12633 <li>correct a comparison in SELECTWORD case of ComputeSelect(), 12634 which resulted in a word-selection wrapping past the first 12635 column without checking the first column's character class 12636 (reported by Christian Lacunza 12637 <celacunza@netscape.net></li> 12638 12639 <li>correct a logic in UTF-8 mode for selecting double-width 12640 characters; a combining character was omitted (patch by Markus 12641 Kuhn).</li> 12642 12643 <li>add feature to pop (raise) window when a bell is received 12644 (patch by Gael Roualland 12645 <gael.roualland@dial.oleane.com>).</li> 12646 12647 <li>add __NetBSD__ and __OpenBSD__ to special-case in 12648 xterm_io.h for USE_POSIX_TERMIOS definition (patch by Christian 12649 Weisgerber).</li> 12650 12651 <li>move special-case HPUX include for <sys/bsdtty.h> to 12652 xterm_io.h to define TIOCSLTC, making HAS_LTCHARS defined for 12653 HPUX 10.20 (report by Bruno Betro).</li> 12654 </ul> 12655 12656 <h1><a name="xterm_149" id="xterm_149">Patch #149 - 2000/12/6 - 12657 XFree86 4.0.1h</a></h1> 12658 12659 <ul> 12660 <li>restructured includes for <code>termios.h</code>, 12661 <code>termio.h</code> and related definitions for main.c, 12662 os2main.c, screen.c and resize.c so they will share equivalent 12663 definitions in a new header <code>xterm_io.h</code>. This is 12664 intended to solve some problems mainly for HPUX which appear to 12665 arise from inconsistent definitions for SIGWINCH- and 12666 HAS_LTCHARS-related symbols (reports by Bruno Betro, Jeremie 12667 Petit and Clint Olsen).</li> 12668 12669 <li>improve usability of double-width fonts by allowing normal 12670 fonts to be given as double-width (from a patch by Fabrice 12671 Bellard <bellard@email.enst.fr>).</li> 12672 12673 <li>correct a few compiler warnings in TRACE() macros for 12674 signed/unsigned variable differences (reported by Clint 12675 Olsen).</li> 12676 12677 <li>make configure script use $CFLAGS and $CPPFLAGS more 12678 consistently, i.e., by using CF_ADD_CFLAGS in CF_ANSI_CC 12679 macro.</li> 12680 12681 <li>expanded description of environment variables in 12682 manual-page.</li> 12683 12684 <li>modify OPT_TCAP_QUERY feature to always return the termcap 12685 or terminfo capability string in the response, and to 12686 read/write the names in hexadecimal form to allow for the 12687 special case of termcap's <code>k;</code> name (patch by Bram 12688 Moolenaar).</li> 12689 12690 <li>add OPT_SAME_NAME and OPT_TCAP_QUERY to xtermcfg.hin, so 12691 the corresponding configure options work (patch by Bram 12692 Moolenaar).</li> 12693 12694 <li>resync with XFree86 4.0.1g: 12695 <ul> 12696 <li>Rewrite Xft library for Render extension/core text and 12697 font management Change xterm to use new interface (Keith 12698 Packard).</li> 12699 </ul> 12700 </li> 12701 </ul> 12702 12703 <h1><a name="xterm_148" id="xterm_148">Patch #148 - 2000/10/31 - 12704 XFree86 4.0.1d</a></h1> 12705 12706 <ul> 12707 <li>document logfile options in man-page.</li> 12708 12709 <li>correct spelling of <code>-samename</code> option in help 12710 message.</li> 12711 12712 <li>add configure script option 12713 <code>--enable-tcap-query</code> (request by Bram 12714 Moolenaar).</li> 12715 12716 <li>add a "Co" or "colors" entry to the OPT_TCAP_QUERY feature 12717 (patch by Bram Moolenaar).</li> 12718 12719 <li>patch by Kiyokazu Suto <suto@ks-and-ks.ne.jp>: 12720 <ul> 12721 <li>add support for bold font for double width characters. 12722 The font name may be specified with the command line option 12723 <code>-fwb</code> or with resource 12724 <code>wideBoldFont</code> (class 12725 <code>WideBoldFont</code>).</li> 12726 12727 <li>correct underlining of double width character string, 12728 which was drawn only half width.</li> 12729 12730 <li>correct binary search of precomposed character table, 12731 which may return wrong result when <code>int</code> is just 12732 32 bits.</li> 12733 </ul> 12734 </li> 12735 12736 <li>some changes to align terminfo with ncurses 5.2: 12737 <ul> 12738 <li>remove xtermm description, retaining xterm-mono since 12739 the former conflicts with ncurses.</li> 12740 12741 <li>modify initialization and reset strings to avoid 12742 putting the save/restore cursor operations bracketing 12743 changes to video attributes, since the changes could be 12744 lost when the cursor is restored. This affects xterm-r6 and 12745 xterm-8bit (the xterm-xfree86 entry uses the soft-reset 12746 feature which resets scrolling margins and origin mode 12747 without requiring us to save/restore the cursor 12748 position).</li> 12749 12750 <li>make a few entries explicitly inherit from 12751 xterm-xfree86 rather than xterm: xterm-rep, xterm-xmc, 12752 xterm-nrc</li> 12753 </ul> 12754 </li> 12755 12756 <li>ensure that sign-extension does not affect 12757 <code>ctype</code> macros by using <code>CharOf()</code> macro 12758 to coerce the parameter to an unsigned char.</li> 12759 12760 <li>resync with XFree86 4.0.1d: 12761 <ul> 12762 <li>Add primitive support in xterm for Xft based fonts 12763 (Keith Packard). The changes are ifdef'd with 12764 <code>-DXRENDERFONT</code>.</li> 12765 </ul> 12766 </li> 12767 </ul> 12768 12769 <h1><a name="xterm_147" id="xterm_147">Patch #147 - 2000/10/26 - 12770 XFree86 4.0.1c</a></h1> 12771 12772 <ul> 12773 <li>correct implementation of <code>ptyInitialErase</code>: the 12774 value assigned to <code>initial_erase</code> was for the 12775 control terminal, which is correct as far as it goes. But there 12776 was no following test for the pseudo-terminal's erase value, 12777 which would overwrite the default obtained from the control 12778 terminal (reported by Christian Weisgerber 12779 <naddy@mips.inka.de>).</li> 12780 12781 <li>modify check for printable-characters in OSC string to use 12782 xterm's ansi_table rather than isprint() macro, to isolate this 12783 check from locale settings. This fixes a problem using 8-bit 12784 characters to set the title (reported by Ricardas Cepas 12785 <rch@richard.eu.org>).</li> 12786 12787 <li>modify sample scripts to check for printf before print, 12788 since the latter is not as well standardized (e.g., on 12789 Linux).</li> 12790 12791 <li>updated config.sub, config.guess to reflect changes on 12792 subversions.gnu.org</li> 12793 </ul> 12794 12795 <h1><a name="xterm_146" id="xterm_146">Patch #146 - 2000/9/12 - 12796 XFree86 4.0.1c</a></h1> 12797 12798 <ul> 12799 <li>correct two instances overlooked from patch #141 which 12800 assumed UTF-8 mode without checking, causing a core dump in 12801 non-UTF-8 mode (one instance was reported by Tommi Virtanen 12802 <tv@debian.org>).</li> 12803 12804 <li>correct a problem selecting from the scrollback buffer in 12805 UTF-8 mode by changing remaining getXtermCell() calls to 12806 XTERM_CELL() as in the non-UTF-8 cases (report by Markus Kuhn, 12807 patch by Robert Brady).</li> 12808 </ul> 12809 12810 <h1><a name="xterm_145" id="xterm_145">Patch #145 - 2000/9/11 - 12811 XFree86 4.0.1c</a></h1> 12812 12813 <ul> 12814 <li>changes for UTF-8 configuration (Robert Brady): 12815 <ul> 12816 <li>doublewide characters don't lose their accents when the 12817 cursor moves onto or from them (a visual bug)</li> 12818 12819 <li>fix logic in addXtermCombining, which mean that if the 12820 low byte of a cell's first combining char was 0, a 12821 following combining char would go into combining slot 1, 12822 not 2.</li> 12823 12824 <li>modify logic for cut-buffers so UTF-8 data is first 12825 converted to Latin1.</li> 12826 12827 <li>collapse surrogates, 0xfffe, 0xffff to UCS_REPL.</li> 12828 12829 <li>modify to allow xterm to to show combining characters 12830 attached to doublewidth characters.</li> 12831 12832 <li>correct bug in linewrap with -u8 option (reported by 12833 Andreas Koenig <andreas.koenig@anima.de>).</li> 12834 </ul> 12835 </li> 12836 12837 <li>several changes to PTY logic (based on request by Tim Ryan 12838 <timryan@nortelnetworks.com>). 12839 <ul> 12840 <li>modify treatment of <code>-S</code> option to to make 12841 it work with Unix98 PTY's.</li> 12842 12843 <li>restore sense of IsPts flag in <code>get_pty()</code>, 12844 which was lost in Unix98 changes.</li> 12845 12846 <li>use new functions <code>my_pty_id()</code> and 12847 <code>my_pty_name()</code> to simplify/fix strings used for 12848 utmp, wtmp identifiers.</li> 12849 12850 <li>simplify <code>get_pty()</code> function, making it 12851 have a single return point so its inputs/outputs can be 12852 identified.</li> 12853 </ul> 12854 </li> 12855 12856 <li>update config.guess and config.sub and scripts to my 12857 20000819 patch, adding cases for OS/2 EMX.</li> 12858 12859 <li>add special case for os390 compiler options to configure 12860 script (patch by Paul Gilmartin)</li> 12861 12862 <li>fix some unused-variable compiler warnings (reported by 12863 Zdenek Sekera).</li> 12864 12865 <li>split-out some string functions into xstrings.c, to use 12866 them more consistently among main.c, os2main.c and 12867 resize.c</li> 12868 12869 <li>align termcap/terminfo files, adding entries to make them 12870 match. The termcap entries are necessarily less complete than 12871 the terminfo, to fit within 1023 character per entry.</li> 12872 12873 <li>add terminfo entry for xterm-sco (SCO function keys).</li> 12874 12875 <li>modify <code>same_font_name()</code> to properly handle 12876 wildcard introduced in <code>bold_font_name()</code>, making 12877 comparison for different fonts succeed when only the normal 12878 font is specified. This is needed to decide if 1-pixel offset 12879 should be used. (reported in a newsgroup by Bart Oldeman 12880 <enbeo@enbeo.resnet.bris.ac.uk>)</li> 12881 12882 <li>correct preprocessor line for OPT_WIDE_CHARS in 12883 drawXtermText() from patch #141 which resulted in overstriking 12884 for bold fonts not working.</li> 12885 12886 <li>correct Imakefile from 4.0.1c resync so UTF-8 modules are 12887 in UTF8SRC, UTF8OBJ lists, allowing build without UTF-8 12888 support.</li> 12889 </ul> 12890 12891 <h1><a name="xterm_144" id="xterm_144">Patch #144 - 2000/8/23 - 12892 XFree86 4.0.1b</a></h1> 12893 12894 <ul> 12895 <li>remove a spurious assignment in ScreenWrite() from Robert 12896 Brady's patch which set a null at the "end" of the buffer to be 12897 written. That made the autowrap feature write a blank in the 12898 first column for the non-UTF-8 configuration, rather than the 12899 actual character (reported by Alan Citterman 12900 <alan@mticket.com>).</li> 12901 </ul> 12902 12903 <h1><a name="xterm_143" id="xterm_143">Patch #143 - 2000/8/19 - 12904 XFree86 4.0.1b</a></h1> 12905 12906 <ul> 12907 <li>add a check to ensure that <code>-class</code> command-line 12908 option is not confused with <code>-c</code> (reported by Paul 12909 Townsend <aab@aab.cc.purdue.edu>).</li> 12910 </ul> 12911 12912 <h1><a name="xterm_142" id="xterm_142">Patch #142 - 2000/8/18 - 12913 XFree86 4.0.1b</a></h1> 12914 12915 <ul> 12916 <li>correction to precompose scripts, so 0061 + 0300 will now 12917 be really be displayed as 00C0 (patch by Robert Brady 12918 <robert@susu.org.uk>).</li> 12919 12920 <li>correct macro ClassSelects() in button.c, used to hide 12921 ifdef's for OPT_WIDE_CHARS in patch #141 (reported by Andreas 12922 Paul <paula@informatik.tu-muenchen.de>).</li> 12923 12924 <li>change wcwidth.h to include stddef.h rather than wchar.h, 12925 which is not present on OpenBSD and FreeBSD (reported by 12926 Christian Weisgerber and Bram Moolenaar).</li> 12927 12928 <li>newer config.sub and config.guess, from lynx 12929 2.8.4dev.7</li> 12930 </ul> 12931 12932 <h1><a name="xterm_141" id="xterm_141">Patch #141 - 2000/8/14 - 12933 XFree86 4.0.1b</a></h1> 12934 12935 <ul> 12936 <li>changes for doublewidth and combining characters, from 12937 http://www.ecs.soton.ac.uk/~rwb197/xterm/ (integrated patch by 12938 Robert Brady). In this context, doublewidth refers to 16-bit 12939 character sets which may have glyphs occupying two cells.</li> 12940 12941 <li>add command-line option <code>-class</code>, which allows 12942 one to override xterm's resource class. Also add resource file 12943 <code>UXTerm.ad</code>, which simplifies using xterm for both 12944 8-bit character sets and UTF-8.</li> 12945 12946 <li>fixes/improvements to OPT_TCAP_QUERY logic (patches by Bram 12947 Moolenaar, Stephen P Wall).</li> 12948 </ul> 12949 12950 <h1><a name="xterm_140" id="xterm_140">Patch #140 - 2000/7/23 - 12951 XFree86 4.0.1</a></h1> 12952 12953 <ul> 12954 <li>modify Makefile.in to circumvent GNU make's built-in suffix 12955 rule for ".sh" which confuses install.sh with the "make 12956 install" target (report/patch by Paul Gilmartin).</li> 12957 12958 <li>implement an experimental control sequence which an 12959 application may use to query the terminal to determine what 12960 sequence of characters it would send for a given function key. 12961 This is ifdef'd with OPT_TCAP_QUERY (request by Bram 12962 Moolenaar).</li> 12963 12964 <li>add /usr/local to search path in CF_X_ATHENA configure 12965 macro to build with Xaw3d on OpenBSD (patch by Christian 12966 Weisgerber).</li> 12967 12968 <li>add missing <code>#undef HAVE_TERMIO_C_ISPEED</code> to 12969 xtermcfg.hin, omitted in patch #133 fix for IRIX 6.5 baudrate 12970 (report by Alain Filbois <Alain.Filbois@loria.fr>).</li> 12971 12972 <li>correct a few errors in xterm.man: font in filename example 12973 for Tektronix emulation, and description of -nul/+nul 12974 command-line options (report by Eric Fischer 12975 <enf@pobox.com>).</li> 12976 12977 <li>update config.guess and config.sub, from tin and lynx.</li> 12978 </ul> 12979 12980 <h1><a name="xterm_139" id="xterm_139">Patch #139 - 2000/6/17 - 12981 XFree86 4.0d</a></h1> 12982 12983 <ul> 12984 <li>back out change to <code>-name</code> command-line option, 12985 restoring its original behavior (as noted by David Madore, the 12986 correct interpretation of this option is the application 12987 instance rather than the application class).</li> 12988 </ul> 12989 12990 <h1><a name="xterm_138" id="xterm_138">Patch #138 - 2000/6/15 - 12991 XFree86 4.0c</a></h1> 12992 12993 <ul> 12994 <li>workaround for fixed fonts which are generated from Unicode 12995 fonts: they omit glyphs for some xterm's less-used line-drawing 12996 characters, which caused xterm to set a flag telling it to use 12997 only its internal line-drawing characters. Do not set the flag 12998 (it can be set from the popup menu), and xterm will generate 12999 only the line-drawing glyphs which actually are missing.<br> 13000 Otherwise, when used for large fonts, xterm may generate a 13001 2-pixel wide line, which can leave dots on the screen.</li> 13002 13003 <li>restore first line of 256colres.pl, omitted in 4.0c 13004 diffs.</li> 13005 </ul> 13006 13007 <h1><a name="xterm_137" id="xterm_137">Patch #137 - 2000/6/10 - 13008 XFree86 4.0b</a></h1> 13009 13010 <ul> 13011 <li>make command-line <code>-name</code> option work as 13012 documented. Apparently this was lost in X11R5 when coding to 13013 use <code>XtAppInitialize</code>.</li> 13014 13015 <li>limit numeric parameters of control sequences to 65535 to 13016 simplify checks for numeric overflow.</li> 13017 13018 <li>change index into UDK list to unsigned to guard against 13019 numeric overflow making the index negative (Taneli Huuskonen 13020 <huuskone@cc.helsinki.fi>).</li> 13021 13022 <li>change <code>sun function-keys</code> resource name to 13023 <code>sunFunctionKeys</code> to work around redefinition of the 13024 token <code>sun</code> by xrdb on Solaris. Similarly, renamed 13025 resource <code>sun keyboard</code> to 13026 <code>sunKeyboard</code> (Stephen P Wall).</li> 13027 13028 <li>change similar resource names for HP and SCO to avoid 13029 potential conflict with xrdb symbols on other systems, as well 13030 as for consistency.</li> 13031 13032 <li>reorganized the install targets in the autoconf'd Makefile, 13033 adding install-app, install-bin, install-dirs and install-man. 13034 The app-defaults class can be overridden by setting the make 13035 variable 'CLASS', simplifying customization of xterm as a 13036 Unicode terminal, e.g., CLASS=UXTerm.</li> 13037 13038 <li>add limit checks to <code>ClearInLine()</code>, 13039 <code>ScrnInsertChar()</code>, <code>ScrnDeleteChar()</code> to 13040 correct potential out-of-bounds indexing (prompted by Debian 13041 bug report #64713, which reported a problem with ICH escape 13042 sequences).</li> 13043 13044 <li>updates to config.sub and config.guess Kevin Buettner 13045 <kev@primenet.com> for elf64_ia64 Bernd Kuemmerlen 13046 <bkuemmer@mevis.de> and MacOS X.</li> 13047 13048 <li>for os390, add check for errno set to ENODEV on failure to 13049 open /dev/tty when there is no controlling terminal (patch by 13050 Paul Gilmartin).</li> 13051 13052 <li>fixes for building on Digital Unix 4.0 and AIX 4.2 (patch 13053 from H Merijn Brand <h.m.brand@hccnet.nl>).</li> 13054 13055 <li>modify DECRQSS reply for DECSCL to additionally report if 13056 the terminal is set for 8-bit controls.</li> 13057 </ul> 13058 13059 <h1><a name="xterm_136" id="xterm_136">Patch #136 - 2000/6/3 - 13060 XFree86 4.0b</a></h1> 13061 13062 <ul> 13063 <li>add a resource (<code>limitResize</code>) limiting resizing 13064 via the CSI 4 t and CSI 8 t sequences.</li> 13065 13066 <li>ignore out-of-bounds resize requests, i.e., where 13067 sign-extension or truncation of the parameters would 13068 occur.</li> 13069 </ul> 13070 13071 <h1><a name="xterm_135" id="xterm_135">Patch #135 - 2000/5/29 - 13072 XFree86 4.0b</a></h1> 13073 13074 <ul> 13075 <li>remove code introduced in #134 which made some backgrounds 13076 bold.</li> 13077 13078 <li>minor correction to format of updated $TERMCAP when adding 13079 <code>kb</code> capability for <code>ptyInitialErase</code> 13080 logic.</li> 13081 13082 <li>improved test for SVR4 definition.</li> 13083 </ul> 13084 13085 <h1><a name="xterm_134" id="xterm_134">Patch #134 - 2000/5/28 - 13086 XFree86 4.0b</a></h1> 13087 13088 <ul> 13089 <li>update URL's and mailing addresses, moved to 13090 http://dickey.his.com and dickey@herndon4.his.com</li> 13091 13092 <li>correct missing quotes in CF_TTY_GROUP configure script 13093 macro in case the script is run in batch mode.</li> 13094 13095 <li>modify ownership-check of log file to ignore the group 13096 ownership. Otherwise xterm cannot create logfiles in 13097 directories with set-gid permissions.</li> 13098 13099 <li>simplify the logic that reads termcap data.</li> 13100 13101 <li>add fallback definition for B9600 in case line speed 13102 definition for 38400 is missing (report by Jack J Woehr 13103 <jwoehr@ibm.net>, for OpenBSD 2.6).</li> 13104 13105 <li>fix: Set highlightColor, and select a region containing the 13106 text cursor. If the window loses focus, the cursor becomes 13107 hollow, with the region inside the cursor being 13108 background/foreground, unlike the rest of the selection, which 13109 is foreground/highlight (patch by Ross Paterson 13110 <ross@soi.city.ac.uk>).</li> 13111 13112 <li>add configure script tests to define SVR4, SYSV and 13113 USE_POSIX_WAIT, which enables xterm to compile on Solaris 7 and 13114 SCO Openserver without imake, though there are still a few 13115 features for the latter which require <code>sco</code> to be 13116 predefined.</li> 13117 13118 <li>patches from Stephen P Wall: 13119 <ul> 13120 <li>add support for two Sun-specific function keys. These 13121 keys are labeled F11 and F12 on Sun Type 5 keyboards, but 13122 return SunXK_F36 and SunXK_F37. Support will only be 13123 compiled in if the header file <X11/Sunkeysym.h> 13124 exists and contains the appropriate symbol definitions. The 13125 keycodes for the DEC keycodes were arbitrary unused codes, 13126 but the ones for the Sun keycodes are what cmdtool and 13127 shelltool actually send.</li> 13128 13129 <li>add <code>colorRV</code> and <code>colorRVMode</code> 13130 resources to allow specifying a color to use for reverse 13131 video, similar to the existing UL, BD, and BL modes.</li> 13132 13133 <li>add <code>alwaysUseMods</code> resource, to override 13134 check if <code>alt</code> or <code>meta</code> modifiers 13135 are used in <code>translations</code> resource. Revamped 13136 the code to calculate the modifier value, and included Meta 13137 if alwaysUseMods is TRUE, using values 9-16.</li> 13138 </ul> 13139 </li> 13140 13141 <li>fixes for os390 (Paul Gilmartin): 13142 <ul> 13143 <li>regularize the definition of CONTROL() and remove an 13144 acknowledged "trial and error" table.</li> 13145 13146 <li>translate "^?" into A2E(0177) which is the EBCDIC "DEL" 13147 rather than plain 0177 which is the EBCDIC quotation 13148 mark.</li> 13149 13150 <li>modify <code>xtermMissingChar()</code> so that EBCDIC 13151 codes 128-159 are not rendered as blanks by X server 13152 running on Solaris, which sees those as control 13153 characters.</li> 13154 13155 <li>make debugging traces (configure --enable-trace) work 13156 properly with EBCDIC.</li> 13157 </ul> 13158 </li> 13159 </ul> 13160 13161 <h1><a name="xterm_133" id="xterm_133">Patch #133 - 2000/5/2 - 13162 XFree86 4.0a</a></h1> 13163 13164 <ul> 13165 <li>add substitutions in autoconf'd Makefile for CPPFLAGS, 13166 LDFLAGS and AWK (reported by Neil Bird).</li> 13167 13168 <li>correct uninitialized <code>childstat</code> variable from 13169 patch #131 in <code>creat_as()</code> function, which caused 13170 logging to not work on Solaris, whose <code>waitpid()</code> 13171 function does not initialize its parameter. Add check for EINTR 13172 on return from <code>waitpid()</code> as well (reported by Neil 13173 Bird <neil.bird@rdel.co.uk>).</li> 13174 13175 <li>remove a redundant check for working <code>setuid()</code> 13176 function introduced in patch #132. Greg Smith reports that this 13177 does not work as intended on os390.</li> 13178 13179 <li>change line speed from 9600bd to 38400bd, to accommodate 13180 people who mistakenly use $TERM set to <em>vt100</em>, to 13181 reduce the effect of padding associated with this terminal 13182 type.</li> 13183 13184 <li>add configure script check for IRIX 6.5's redefinition of 13185 baud rates associated with <code>struct termio</code>, to 13186 correct a situation where the baud rate was initialized to zero 13187 (reported by Andrew Isaacson <adi@lcse.umn.edu>).</li> 13188 13189 <li>remove unused configure script check for VDISABLE.</li> 13190 </ul> 13191 13192 <h1><a name="xterm_132" id="xterm_132">Patch #132 - 2000/4/11 - 13193 XFree86 4.0a</a></h1> 13194 13195 <ul> 13196 <li>undo an incorrect change from patch #113 caused the right 13197 scrollbar to be positioned incorrectly when re-enabling it 13198 (analysis by D Roland Walker).</li> 13199 13200 <li>add ctrlFKeys resource, replacing constant for adjusting 13201 control-F1 to control-F12 to VT220-style F10-F20. The resource 13202 changes the constant 12 to a default value of 10 (request by 13203 Jim Knoble <jmknoble@pobox.com>).</li> 13204 13205 <li>correct ifdef'ing for conflict between definitions in AIX's 13206 <sys/select.h> and <X11/Xpoll.h> (reported by Clint 13207 Olsen).</li> 13208 13209 <li>add checks for return-values of getutid(), initgroups() and 13210 setuid() in main.c, as well as modifying ifdef's for __osf__ to 13211 include tty-group and WTMP logic (adapted from patch by Paul 13212 Szabo <psz@maths.usyd.edu.au>)</li> 13213 13214 <li>modify resize.c to build and work on os390 (uses EBCDIC) 13215 (adapted from patch by Phil Sidler 13216 <Phil.Sidler@airborne.com>)</li> 13217 13218 <li>use Ires(), Bres() and Sres() macros to simplify resource 13219 list in charproc.c</li> 13220 13221 <li>resync with XFree86 4.0a: 13222 <ul> 13223 <li>correct a typo in os2main.c (Holger Veit, from 13224 4.0a).</li> 13225 </ul> 13226 </li> 13227 </ul> 13228 13229 <h1><a name="xterm_131" id="xterm_131">Patch #131 - 2000/3/3 - 13230 XFree86 3.9.18b</a></h1> 13231 13232 <ul> 13233 <li>improve logfile security (integrated patch by Branden 13234 Robinson) 13235 <ul> 13236 <li>make the <code>creat_as()</code> function more strict 13237 by using O_EXCL rather than O_APPEND.</li> 13238 13239 <li>fixes to make DEBUG ifdef's compile/run, including 13240 making the debug logfile more unique by appending a 13241 timestamp to its name.</li> 13242 13243 <li>include <term.h> in resize.c, to fix a 13244 missing-prototype warning.</li> 13245 </ul> 13246 </li> 13247 13248 <li>modified <code>creat_as()</code> a little more, retaining 13249 the ability to append to a logfile If the user specifies the 13250 name. Also, check if the opened file (which <a href= 13251 "#xterm_130">patch #130</a> ensures is owned by the effective 13252 user) is not writable by other users.</li> 13253 13254 <li>use <code>creat_as()</code> logic to make tek4014 13255 screen-copy more secure (noted by Branden Robinson).</li> 13256 13257 <li>ifdef'd some of Branden's changes to build/work on older 13258 machines.</li> 13259 13260 <li>correct missing initialization of the <code>.mode</code> 13261 flag in <code>ColorRes</code> struct, from patch #129. This 13262 worked on Linux because <code>malloc()</code> zeroes memory on 13263 that platform (reported by Christian Weisgerber).</li> 13264 13265 <li>modify logic for <code>deleteIsDEL</code> resource so it 13266 has internally 3 states: unspecified, true and false. If 13267 unspecified, the keyboard type determines whether the Delete 13268 key transmits <code><ESC>[3~</code> or <code>\177</code>, 13269 and the popup menu entry reflects the internal state. 13270 Otherwise, the popup menu entry overrides the keyboard type 13271 (suggested by Dr Werner Fink, to make it simpler to set 13272 resources that imitate the legacy X11R6 xterm).</li> 13273 </ul> 13274 13275 <h1><a name="xterm_130" id="xterm_130">Patch #130 - 2000/3/1 - 13276 XFree86 3.9.18a</a></h1> 13277 13278 <ul> 13279 <li>modify <code>scroll-forw()</code> and 13280 <code>scroll-back()</code> actions, adding a third parameter 13281 which will direct xterm to ignore the action when mouse 13282 reporting is enabled. This is needed for the wheel mouse to be 13283 used to report to the application rather than scroll the 13284 window.</li> 13285 13286 <li>add menu entry and action to allow disabling xterm's 13287 assumption that the current font contains line-drawing 13288 characters if the font cells 1-31 are nonempty. Some fonts may 13289 have other characters (reported by Bruno Betro 13290 <bruno@iami.mi.cnr.it>).</li> 13291 13292 <li>add a check in <code>creat_as()</code> to ensure that the 13293 user really owns the logfile that has been opened.</li> 13294 13295 <li>add logic to implement SCO function-keys. (This is really 13296 incomplete, since I intend to revisit this and make xterm able 13297 to emulate scoansi better than just the function-keys).</li> 13298 13299 <li>add configure script option --enable-sco-fkeys, minor 13300 related fixes (patch by Dr Werner Fink).</li> 13301 13302 <li>fix typos in ctlseqs.ms (reported by Bram Moolenaar)</li> 13303 13304 <li>fix typo in sinstall.sh default for $TST_PROG (reported by 13305 Paul Gilmartin <pg@sweng.stortek.com>)</li> 13306 </ul> 13307 13308 <h1><a name="xterm_129" id="xterm_129">Patch #129 - 2000/2/26 - 13309 XFree86 3.9.18a</a></h1> 13310 13311 <ul> 13312 <li>improve initialization of ANSI colors by delaying 13313 allocation until each color is first used.</li> 13314 13315 <li>remove ifdef that prevented colorBD/colorUL/colorBL 13316 resources from working when 256-color configuration was built 13317 (reported by Todd Larason).</li> 13318 13319 <li>fix some minor inconsistencies in terminfo (Debian 13320 #58530).</li> 13321 </ul> 13322 13323 <h1><a name="xterm_128" id="xterm_128">Patch #128 - 2000/2/17 - 13324 XFree86 3.9.18</a></h1> 13325 13326 <ul> 13327 <li>correct logic for <code>oldXtermFKeys</code> resource, 13328 fixes a core dump when attempting to set it from the 13329 command-line (reported by Dr Werner Fink).</li> 13330 13331 <li>correct ifdef for meta-sends-escap so configure 13332 --disable-num-lock builds.</li> 13333 </ul> 13334 13335 <h1><a name="xterm_127" id="xterm_127">Patch #127 - 2000/2/12 - 13336 XFree86 3.9.17e</a></h1> 13337 13338 <ul> 13339 <li>add resource, popup menu entry and control sequence to 13340 allow changing the Delete key to send either DEL or the 13341 VT220-style Remove escape sequence.</li> 13342 13343 <li>remove logic for metaSendsEscape that would allow xterm to 13344 send <code><ESC>[3~</code> before a function key that 13345 would begin with <code><ESC>[3~</code> (request by 13346 Christian Weisgerber).</li> 13347 13348 <li>add missing action and documentation for 13349 meta-sends-escape.</li> 13350 13351 <li>correct a few typos in ctlseqs.ms (incorrect code for Cyan 13352 color)</li> 13353 </ul> 13354 13355 <h1><a name="xterm_126" id="xterm_126">Patch #126 - 2000/2/8 - 13356 XFree86 3.9.17c</a></h1> 13357 13358 <ul> 13359 <li>ensure that xterm will automatically activate the UTF-8 13360 mode whenever the name of the locale environment variable 13361 suggests that a UTF-8 locale is in use (patch by Markus Kuhn). 13362 This will help that by simply setting LC_CTYPE an entire system 13363 can be switched over to UTF-8, without users having to remember 13364 the UTF-8 command line options ("-u8", etc.) of the various 13365 applications. Command line options and X resource entries can 13366 still be used to override this default choice.</li> 13367 13368 <li>add old function-keys control sequences and popup menu 13369 entry, for compatibility with legacy X11R6 xterm.</li> 13370 13371 <li>revert translation of editing keypad "Delete" key to legacy 13372 \177.</li> 13373 13374 <li>simplify the color-resource data expressions with macro 13375 COLOR_RES, for later use in restructuring color 13376 initialization.</li> 13377 13378 <li>change encoding of wheel mouse (buttons 4 and 5) to avoid 13379 conflict with legacy mouse modifiers (suggested by Bram 13380 Moolenaar).</li> 13381 </ul> 13382 13383 <h1><a name="xterm_125" id="xterm_125">Patch #125 - 2000/1/31 - 13384 XFree86 3.9.17c</a></h1> 13385 13386 <ul> 13387 <li>make this work on OpenVMS (integrated patch by David 13388 Mathog).</li> 13389 13390 <li>rename some functions, e.g., <code>Index</code> to 13391 <code>xtermIndex</code> so that ports such as VMS which link 13392 externals ignoring case will not have library conflicts 13393 (reported by David Mathog).</li> 13394 13395 <li>correct logic of <code>do_reversevideo()</code>, which did 13396 not update the corresponding popup menu check mark (reported by 13397 David Mathog, this was a detail overlooked in patch #94).</li> 13398 13399 <li>change TRACE macro so semicolon is not within definition, 13400 making <em>indent</em> and similar programs work better.</li> 13401 13402 <li>add <code>depend</code> rule to Makefile.in</li> 13403 13404 <li>modify logic of boldColors resource to suppress it if an 13405 extended color control has been used, e.g., for 88-color or 13406 256-color mode (patch by Todd Larason).</li> 13407 13408 <li>revise logic that handles menus and input translation for 13409 keyboard type so only one can be selected at a time.</li> 13410 13411 <li>restore kdch1=\177 for the Sun function-key type, and make 13412 the the Delete key send DEL (\177) if the oldXtermFKeys 13413 resource is set.</li> 13414 13415 <li>rephrase logic and ifdef's for POSIX VDISABLE to avoid 13416 preprocessor expression that will not compile on NetBSD/x86 13417 1.4.1 (reported by Takaaki Nomura 13418 <amadeus@yk.rim.or.jp>).</li> 13419 </ul> 13420 13421 <h1><a name="xterm_124" id="xterm_124">Patch #124 - 2000/1/27 - 13422 XFree86 3.9.17b</a></h1> 13423 13424 <ul> 13425 <li>change coding of editing keypad's "Delete" key to 13426 <escape>[3~, in the default (Sun/PC) keyboard mode. This 13427 makes the terminfo kdch1 capability independent of the coding 13428 of the backarrow key, which sends either backspace (8) or DEL 13429 (127). The reason for doing this (compatibility with the 13430 <em>screen</em> program) outweighs the choice of DEL (127) 13431 which was used in X11R5/X11R6 xterms. The <em>screen</em> 13432 program translates whatever matches kdch1 into 13433 <escape>[3~, even if it happens to be the stty erase 13434 character.</li> 13435 13436 <li>add encoding for control/?, to work around xmodmap or key 13437 translations which may confuse backspace and delete. A 13438 control/? will send DEL (127), and a control/H will of course 13439 send backspace (8).</li> 13440 13441 <li>add encoding for kcbt to <escape>[Z (fixes Debian 13442 #54840).</li> 13443 13444 <li>minor correction to logic that encodes Sun and DEC function 13445 keys to avoid sending an escape sequence if the key symbol is 13446 not found in xterm's lookup table.</li> 13447 13448 <li>simplify ifdef's in main.c for POSIX VDISABLE so the "^-" 13449 pattern is more likely to be implemented when <em>imake</em> 13450 configures xterm (fixes Debian #55105).</li> 13451 13452 <li>change manpage to make it clearer what codes are sent by 13453 the backarrow key.</li> 13454 </ul> 13455 13456 <h1><a name="xterm_123" id="xterm_123">Patch #123 - 2000/1/22 - 13457 XFree86 3.9.17a</a></h1> 13458 13459 <ul> 13460 <li>add a note reserving OSC 51 for use in Emacs shell (request 13461 by Rob Mayoff <mayoff@dqd.com>).</li> 13462 13463 <li>correct a missing backslash in xterm-vt220 termcap.</li> 13464 13465 <li>cleanup remaining quoted includes, preferring bracketed 13466 form.</li> 13467 13468 <li>minor configure-script macro updates from tin and 13469 vile.</li> 13470 13471 <li>add configure-script option for using utempter library, 13472 adapted from Redhat 6.1 patch for XFree86 3.3.5</li> 13473 13474 <li>resync with XFree86 3.9.17a: 13475 <ul> 13476 <li>correction to QNX support (Frank Guangxin Liu)</li> 13477 13478 <li>some cosmetic changes that did not correct any reported 13479 problems.</li> 13480 </ul> 13481 </li> 13482 </ul> 13483 13484 <h1><a name="xterm_122" id="xterm_122">Patch #122 - 1999/12/28 - 13485 XFree86 3.9.16f</a></h1> 13486 13487 <ul> 13488 <li>move the suggested wheel-mouse button translations into 13489 charproc.c to simplify customization. Correct some minor logic 13490 errors in the support for buttons 4 and 5, used for wheel mice 13491 (reported by Bram Moolenaar).</li> 13492 13493 <li>implement <em>metaSendsEscape</em> resource, with 13494 corresponding control sequence and menu entry. Like 13495 <em>eightBitInput</em>, this causes xterm to send ESC prefixing 13496 the given key, but applies to all keys and is independent of 13497 the 8-bit/7-bit terminal setting. (requests by Alexander V 13498 Lukyanov and Marc Feeley).</li> 13499 13500 <li>correct potential indexing with negative subscript in 13501 udk_lookup(), (reported by Ian Collier 13502 <Ian.Collier@comlab.ox.ac.uk>).</li> 13503 13504 <li>modify configure script that sets TERMINFO_DIR to use 13505 ${prefix} rather than /usr if the --prefix option was specified 13506 (request by Zdenek Sekera <zs@sgi.com>).</li> 13507 13508 <li>modify checks for repeat-character control sequence to test 13509 the character class against xterm's state table, rather than 13510 the isprint() macro (patch by Alexander V Lukyanov).</li> 13511 13512 <li>change several functions to macros to improve speed</li> 13513 13514 <li>two corrections to simulation of bold font via 13515 overstriking: 13516 <ul> 13517 <li>use clipping to avoid leaving trash at end of the text, 13518 and</li> 13519 13520 <li>add brackets so wide-character logic does not 13521 fall-through into the overstriking logic (reported by Marc 13522 Feeley <feeley@IRO.UMontreal.CA>)</li> 13523 </ul> 13524 </li> 13525 13526 <li>add several entries to termcap file to make it have the 13527 same set of aliases as the terminfo file.</li> 13528 13529 <li>scale the color values used for xterm-256color terminfo 13530 entry to 0..1000, as expected by ncurses.</li> 13531 13532 <li>change xterm-r6 terminfo definitions for F1-F4 to match 13533 program.</li> 13534 13535 <li>Add QNX/Neutrino support (Frank Guangxin Liu 13536 <frank@ctcqnx4.ctc.cummins.com>)</li> 13537 </ul> 13538 13539 <h1><a name="xterm_121" id="xterm_121">Patch #121 - 1999/11/14 - 13540 XFree86 3.9.16c</a></h1> 13541 13542 <ul> 13543 <li>change label on "Sun/PC Keyboard" popup menu entry to 13544 "VT220 Keyboard", since the checked state corresponds to VT220 13545 rather than Sun/PC.</li> 13546 13547 <li>add configure test CF_UTMP_UT_XSTATUS to handle the 13548 variants of utmp exit status (reports by Dave Ellement, Jeremie 13549 Petit, Tomas Vanhala).</li> 13550 13551 <li>amend treatment of ALT key (see <a href="#xterm_94">patch 13552 #94</a>) so that if ALT is used as a modifier in key 13553 translations, then no parameter will be sent in escape 13554 sequences for Sun/PC function keys (request by Dr Werner 13555 Fink).</li> 13556 13557 <li>modify default for OPT_I18N_SUPPORT to assume that 13558 <code>XtSetLanguageProc()</code> is available in X11R5. 13559 <p>Caveat: <code>XtSetLanguageProc()</code> was added fairly 13560 late in the X11R5 patches, and some vendors shipped buggy 13561 versions of this function (request by Tomas Vanhala).</p> 13562 </li> 13563 13564 <li>correct configure macro CF_SYSV_UTMP to test-link with 13565 functions consistent with the header, e.g., getutent() for 13566 utmp.h and getutxent() for utmpx.h (reported by Greg 13567 Smith).</li> 13568 13569 <li>modify terminfo entry for <code>xterm-xfree86</code> to 13570 reflect modifiers for shift and control (from a patch by 13571 Alexander V Lukyanov).</li> 13572 13573 <li>modify terminfo entry for <code>xterm-sun</code> to match 13574 the function-key definitions in ncurses. The pageup/pagedown 13575 and related function keys correspond to the Sun keyboard, which 13576 does not necessarily correspond with X's notion of those 13577 keys.</li> 13578 13579 <li>modify treatment of XK_Delete keysym so it transmits 13580 parameterized VT220-style <code><ESC>[3~</code> if 13581 modifiers (shift, control alt) are given (request by Alexander 13582 V Lukyanov).</li> 13583 13584 <li>corrected misspelled resource name in command-line option 13585 for HP function keys.</li> 13586 </ul> 13587 13588 <h1><a name="xterm_120" id="xterm_120">Patch #120 - 1999/10/28 - 13589 XFree86 3.9.16c</a></h1> 13590 13591 <ul> 13592 <li>refine the change to <code>SGR_Background()</code> in patch 13593 #119, by not flushing the pending scrolling operation if the 13594 background color is not actually changing. This combination 13595 occurs when using color-ls to display a long listing, since 13596 each line ends with an SGR0 which affects only the foreground 13597 color. The unnecessary flushing made it noticeably slower 13598 (reported by D Roland Walker <walker@pobox.com>).</li> 13599 13600 <li>remove obsolete documentation about modifiers which can be 13601 returned in mouse tracking mode, and modify logic to ignore 13602 modifiers other than the existing ones, e.g., NumLock (prompted 13603 by discussions with Christian Weisgerber and Brad Pepers 13604 <brad@linuxcanada.com>).</li> 13605 13606 <li>use free bit from obsolete shift-modifier coding of mouse 13607 tracking button events to encode buttons 4 and 5, e.g., for a 13608 wheel mouse (requests by Brad Pepers and Bram Moolenaar).</li> 13609 13610 <li>correct a place where the ptyInitialErase logic did not set 13611 the backarrowKey state, and modify it further to use tgetstr() 13612 rather than parse the termcap data returned from tgetent() so 13613 the ptyInitialErase logic will work when xterm is linked with a 13614 terminfo library (based on a patch by Dr Werner Fink 13615 <werner@suse.de>).</li> 13616 13617 <li>fix definition of HAVE_UTMP_UT_HOST for ISC configuration 13618 (patch by Michael Rohleder).</li> 13619 13620 <li>improve configure script's utmp tests (based on reports by 13621 Greg Smith for os390, and David Ellement for HPUX).</li> 13622 13623 <li>modify sinstall.sh to use uid=0 rather than 'root' to 13624 determine if the installer is privileged. This is needed on 13625 some systems since more than one account may be privileged 13626 (report by Greg Smith).</li> 13627 13628 <li>add an application resource, <code>messages</code> (and a 13629 corresponding -/+mesg option) which controls the initial 13630 permission on the terminal: if messages is set to true (the 13631 default), behavior is as without the patch; if it is set to 13632 false (as per -mesg), the terminal is opened in mode 0600, thus 13633 producing the effect of the <code>mesg n</code> command. This 13634 is useful for users who want to redirect all their messages to 13635 one particular xterm: it is more pleasant to do this with xterm 13636 resources than with explicit calls to the <code>mesg</code> 13637 program (patch, description by David Madore 13638 <david.madore@ens.fr>).</li> 13639 </ul> 13640 13641 <h1><a name="xterm_119" id="xterm_119">Patch #119 - 1999/10/16 - 13642 XFree86 3.9.16c</a></h1> 13643 13644 <ul> 13645 <li>add responses (DA and DSR) for DEC locator mode</li> 13646 13647 <li>add coding for ANSI color to DA response</li> 13648 13649 <li>implement UTF-8 translation for Media Copy (print) 13650 operations.</li> 13651 13652 <li>implement vt320 control sequences for Print Composed Main 13653 Display and for Print All Pages. The latter directs xterm to 13654 print the current screen as well as the scrollback buffer.</li> 13655 13656 <li>correct error in _GNU_SOURCE configure test, which left it 13657 always defined.</li> 13658 13659 <li>add more information, i.e., with strerror for some system 13660 calls in the main program which may fail due to insufficient 13661 permissions (prompted by a problem report for <code>-C</code> 13662 by Jeremie Petit <Jeremie.Petit@digital.com>).</li> 13663 13664 <li>add workaround for conflict between <X11/Xpoll.h> and 13665 <sys/select.h> on AIX 4.3 (Richard Griswold 13666 <griswold@acm.org>).</li> 13667 13668 <li>add configure script test to resolve conflict between 13669 between <X11/Xpoll.h> and <sys/select.h></li> 13670 13671 <li>modify translation of UTF-8 sequences to reject "overly 13672 long" variations (patch by Markus Kuhn).</li> 13673 13674 <li>remove <code>utf8controls</code> resource, since Markus' 13675 change removes the corresponding logic.</li> 13676 13677 <li>correct a case where colors were not rendered properly. 13678 This happened when an application inserted several lines, then 13679 changed colors. If this was done all in one write, then there 13680 would be no intervening refresh, and the new color was applied 13681 to the pending scrolling operation which was awaiting the next 13682 refresh (reported by Stephane Chazelas 13683 <Stephane_Chazelas@Raytheon.com>).</li> 13684 </ul> 13685 13686 <h1><a name="xterm_118" id="xterm_118">Patch #118 - 1999/10/5 - 13687 XFree86 3.9.16b</a></h1> 13688 13689 <ul> 13690 <li>refine configure test for utmp versus utmpx, to build on 13691 HP-UX 10.x (reported by David Ellement).</li> 13692 13693 <li>move the configure check for <code>const</code> after the 13694 check for ANSI C compiler options, since those may be required 13695 to make it work properly on HP-UX.</li> 13696 13697 <li>add configure test for defining 13698 <code>_GNU_SOURCE</code></li> 13699 13700 <li>correction to <em>-hold</em> option, ensure that if data is 13701 already in the output buffer that it will be displayed before 13702 closing the PTY.</li> 13703 13704 <li>move the configure checks for setuid install of xterm into 13705 a script to avoid installing it setuid'd to a non-root user 13706 (reported by Adam Sulmicki <adam@cfar.umd.edu>).</li> 13707 13708 <li>correct configure script's check for termcap.h to avoid 13709 using ncurses' version of it on systems that have a working 13710 <code>tgetent()</code> function. This is needed to make 13711 <code>resize</code> work properly.</li> 13712 13713 <li>fix some typography in ctlseqs.ms description of DEC 13714 locator events (reported by Stephen P Wall).</li> 13715 </ul> 13716 13717 <h1><a name="xterm_117" id="xterm_117">Patch #117 - 1999/9/29 - 13718 XFree86 3.9.16b</a></h1> 13719 13720 <ul> 13721 <li>change order of tests in configure script for utmp and 13722 utmpx to test utmpx first, to compile on Solaris (reported by 13723 Leena Heino <liinu@uta.fi> and Patrik Hagglund 13724 <patha@ida.liu.se>).</li> 13725 13726 <li>add a configure test for utmp.ut_xtime, needed for SCO 13727 Openserver, and for lastlog, needed for Redhat 6.0, to refine 13728 the utmp/utmpx auto-configure.</li> 13729 13730 <li>remove a spurious comma in an #undef (reported by David 13731 Green <greendjf@cvhp152.marconicomms.com> and David 13732 Ellement <ellement@sdd.hp.com> both on HP-UX, whose 13733 compiler does care about syntax).</li> 13734 13735 <li>change ifdef's using __CYGWIN32__ to __CYGWIN__ (reported 13736 by Suhaib M. Siddiqi <Ssiddiqi@InspirePharm.Com>, who is 13737 told that the next Cygnus release will drop that symbol in 13738 their next release).</li> 13739 13740 <li>minor cleanup of ifdef's for makeColorPair (patch by 13741 Stephen P Wall).</li> 13742 13743 <li>work around problem observed in XFree86 3.3.5 (patch by 13744 Alexander V Lukyanov, Redhat #5419). From the problem report: 13745 <blockquote> 13746 <p>xterm consumes cpu when selecting text with mouse 13747 (holding down left mouse button) and when a program working 13748 under the xterm outputs something to stdout.</p> 13749 13750 <p>Easy way to reproduce:<br> 13751 <code>while :; do echo aaa; sleep 1; done</code><br> 13752 (while this runs, select text and hold down left mouse 13753 button) watch cpu load.<br> 13754 release left mouse button - spinning stops.</p> 13755 </blockquote> 13756 </li> 13757 </ul> 13758 13759 <h1><a name="xterm_116" id="xterm_116">Patch #116 - 1999/9/25 - 13760 XFree86 3.9.16a</a></h1> 13761 13762 <ul> 13763 <li>modify warning if change-ownership of PTY fails; some 13764 configurations may not happen to have old-style pty's (reported 13765 by Bob Maynard).</li> 13766 13767 <li>improve check in configure script for group ownership of 13768 installed xterm; some platforms use the -g option of ls to 13769 toggle group off rather than on (reported by Greg Smith).</li> 13770 13771 <li>minor improvement to toolbar geometry, to make it not 13772 resizable. This still is not satisfactory (but is usable) since 13773 the toolbar overlaps the xterm widget if the window is resized 13774 to make it smaller. It appears that some work is needed for the 13775 xterm widget's geometry management to make it function 13776 properly.</li> 13777 13778 <li>implement configure script tests for utmp, tty group.</li> 13779 13780 <li>implement <em>-hold</em> option, allowing users to retain 13781 the window after a shell has exited (this is recently an FAQ, 13782 but prompted by a comment by Joachim Plaettner-Hochwarth 13783 <plaettner@aem.umn.edu> in comp.unix.programmer, that the 13784 IRIX winterm provides this option).</li> 13785 13786 <li>add support for DEC Locator control sequences for xterm 13787 (integrated patch by Stephen P Wall): 13788 13789 <pre> 13790 DECEFR, "Enable Filter Rectangle" 13791 DECELR, "Enable Locator Reports" 13792 DECSLE, "Select Locator Events" 13793 DECRQLP, "Request Locator Position" 13794</pre> 13795 <p>This allows the xterm mouse to be used with applications 13796 that use the DEC Locator sequences, such as VAX Tpu, or SMG$ 13797 based applications.</p> 13798 </li> 13799 13800 <li>improve print action (patch by Matthias Baake). From his 13801 notes, 13802 <ul> 13803 <li>Bug 1<br> 13804 Underlined text is preceded by ESC [0;2m . This should 13805 be ESC [0;4m , ESC [2m doesn't seem to have 13806 any effect. (print.c/send_SGR)</li> 13807 13808 <li>Bug 2<br> 13809 The check for the last non-empty column (while (last > 13810 0) ... in print.c/printLine) omits the rightmost column of 13811 the screen, the loop must start with last = 13812 screen->max_col+1 instead of last = 13813 screen->max_col.</li> 13814 13815 <li>Bug 3<br> 13816 Any attributes of the first character (and of all 13817 immediately following characters with the same attributes) 13818 are ignored. The variable attr (print.c/printLine) should 13819 be initialized with 0, not with *a & SGR_MASK.</li> 13820 </ul> 13821 </li> 13822 </ul> 13823 13824 <h1><a name="xterm_115" id="xterm_115">Patch #115 - 1999/9/18 - 13825 XFree86 3.9.16a</a></h1> 13826 13827 <ul> 13828 <li>integrated changes by Stephen P Wall to implement an 13829 88-color model for systems where 256-colors cannot be 13830 allocated.</li> 13831 13832 <li>when 256-color configuration is compiled, colored bold and 13833 underlining is not available; ifdef'd to avoid possible odd 13834 effects in this case (reported by Stephen P Wall).</li> 13835 13836 <li>add resource <em>cacheDoublesize</em>, to limit the caching 13837 of font information for double-sized characters. This addresses 13838 a problem reported by Aryeh Koenigsberg for X terminals with 13839 limited font memory.</li> 13840 13841 <li>modify treatment of line-drawing characters in UTF-8 mode 13842 so that the Unicode values are used rather than the C0 codes 13843 for storing the translated characters (request by Markus 13844 Kuhn).</li> 13845 </ul> 13846 13847 <h1><a name="xterm_114" id="xterm_114">Patch #114 - 1999/9/15 - 13848 XFree86 3.9.16</a></h1> 13849 13850 <ul> 13851 <li>add configure script checks for Athena headers and 13852 libraries under /usr/contrib to work on HPUX (reported by 13853 several people: David Nixon <djn@csc.liv.ac.uk> Aryeh 13854 Koenigsberg <aryeh.koenigsberg@telrad.co.il> Johannes 13855 Mähner <johanm@camline.com> Andrew Gaylard 13856 <andrew.gaylard@bsw.co.za>).</li> 13857 13858 <li>add check to configure script if xterm is installed setgid 13859 rather than setuid, since wtmp and utmp may be installed with 13860 group-writable permissions other than root (based on Debian bug 13861 report #7112 by Bo Branten <bosse@ing.umu.se>).</li> 13862 13863 <li>rewrote logic that removes data from termcap entry, e.g., 13864 for titeInhibit, to make it less likely to remove the wrong 13865 data.</li> 13866 13867 <li>correct logic which checks for missing characters used for 13868 line drawing. The 0 character was tested unnecessarily, leading 13869 to some inefficiency when rendering.</li> 13870 13871 <li>change termcap capability which is used as input or output 13872 of ptyInitialErase logic from <em>kD</em> to <em>kb</em>. 13873 Christian Weisgerber <naddy@mips.rhein-neckar.de> pointed 13874 out in effect that <em>kD</em> (in terminfo <em>kdch1</em>) 13875 should correspond to the control sequence for <em>dch1</em>, 13876 which deletes from the current position toward the right.</li> 13877 13878 <li>check for failure to change ownership of the PTY device and 13879 warn when xterm is running setuid'd to root. This was reported 13880 to happen on the FreeBSD/NetBSD/OpenBSD systems as a result of 13881 the chflags() call.</li> 13882 13883 <li>add xterm-noapp terminfo entry to illustate a nominally 13884 bash-compatible terminal description.</li> 13885 </ul> 13886 13887 <h1><a name="xterm_113" id="xterm_113">Patch #113 - 1999/8/15 - 13888 XFree86 3.9.15b</a></h1> 13889 13890 <p>Several fixes. The main one is a first draft of pulldown 13891 menus. It's not complete (I have some minor/annoying geometry 13892 problems to correct), but is usable. Once it's complete I plan to 13893 add a menu to support additional selections that won't fit on the 13894 current popup menus. Also, this fits into my longterm plan to 13895 allow configuring with Motif libraries.</p> 13896 13897 <ul> 13898 <li>correct error in input conversion for NRC mode (reported by 13899 Stefan Traby <stefan@sime.com>).</li> 13900 13901 <li>fix initialization of num_lock data in Misc struct (since 13902 those fields of the reference widget aren't initialized), and 13903 add logic to deal with XVision whose NumLock key does not 13904 transmit but does alter keypad state.</li> 13905 13906 <li>correct a missing return-value in get_pty(), for SCO</li> 13907 13908 <li>add E2A fix for backspace (patch by Greg Smith), i.e.,<br> 13909 #define VAL_INITIAL_ERASE A2E(127)</li> 13910 13911 <li>correct foreground color within cursor outline when the 13912 window is unfocused (reported by Stephane Chazelas).</li> 13913 13914 <li>corrected position of scrollbar set in ResizeScrollBar(), 13915 which left it positioned incorrectly if the right scrollbar 13916 were enabled from the popup menu but was not initially enabled. 13917 <p>I have noticed some additional problems with 13918 right-scrollbar on X11R5 which I will correct later.</p> 13919 </li> 13920 13921 <li>integrate changes by Jean-Claude Michot for QNX from 13922 XFree86 3.3.4c</li> 13923 13924 <li>add resources menuBar/MenuBar, menuHeight/MenuHeight for 13925 later use in toolbar geometry.</li> 13926 13927 <li>add configure option --enable-toolbar</li> 13928 13929 <li>add missing definition to make ziconbeep logic not 13930 compile-in when configure script disables it.</li> 13931 13932 <li>add configure-check for input-method support in X 13933 libraries</li> 13934 </ul> 13935 13936 <h1><a name="xterm_112" id="xterm_112">Patch #112 - 1999/7/17 - 13937 XFree86 3.9Pw</a></h1> 13938 13939 <ul> 13940 <li>add null-pointer check to FlushLog(), fixes a core dump 13941 when both -l and -lf options are used when xterm is configured 13942 with wide-character support.</li> 13943 13944 <li>remove "ISO" case for SD, which was due to a typographical 13945 error in ECMA-48 (reported by Paul Williams 13946 <paul@celigne.co.uk> for vttest).</li> 13947 13948 <li>add "FILES" section to manpage.</li> 13949 13950 <li>generate header file to initialize default resources for 13951 colors 16-255.</li> 13952 13953 <li>fixes for os390 (Greg Smith): 13954 <ul> 13955 <li>add README.os390</li> 13956 13957 <li>use the pty_search() function to find an available 13958 pty/tty pair.</li> 13959 13960 <li>move E2A() call out of getXtermCell() to SaveText() 13961 function so it will be available in all 13962 configurations.</li> 13963 </ul> 13964 </li> 13965 13966 <li>patches by Todd Larason: 13967 <ul> 13968 <li>enable SGR 48 5 in ISO color mode, not just 256 color 13969 mode</li> 13970 13971 <li>change configure's --disable-256-color option to 13972 --enable-256-color, to match its effect</li> 13973 13974 <li>fix OSC 4 xx ? (report ansi color) to report a string 13975 which can actually be used to set the color back</li> 13976 13977 <li>fix OSC 4 xx yy (change ansi color) to not allow 13978 setting colors > 15 in 16 color mode</li> 13979 13980 <li>simplify the COLOR_ settings a bit in ptyx.h, along 13981 with setting NUM_ANSI_COLORS needed for #1 and #4 13982 above</li> 13983 13984 <li>correct string-terminator code passed for reference to 13985 OSC responses; when in 7-bit mode, only the final byte of 13986 ST was seen.</li> 13987 13988 <li>Allow multiple color #;name pairs in OSC 4, and 13989 document changes to match.</li> 13990 </ul> 13991 </li> 13992 </ul> 13993 13994 <h1><a name="xterm_111" id="xterm_111">Patch #111 - 1999/7/10 - 13995 XFree86 3.9Pw</a></h1> 13996 13997 <ul> 13998 <li>add control sequences for specifying the RGB value of the 13999 ANSI colors, and for configuring with 256 colors (patch by Todd 14000 Larason <jtl@molehill.org>). I made the default 14001 configuration to 16-colors, because xterm uses the default 14002 color map (which has only 256 colors).</li> 14003 14004 <li>correct an error in DCS $ q m reporting for colors 8-15 14005 (Todd Larason).</li> 14006 14007 <li>add test/demo script for double size characters. Used this 14008 to test/correct display of double size characters that should 14009 wrap, underlined double size characters.</li> 14010 14011 <li>increased cache size for double size fonts to 8, to allow 14012 for both normal and bold fonts (discussion with Aryeh 14013 Koenigsberg <aryeh.koenigsberg@telrad.co.il>).</li> 14014 14015 <li>add fixes for port to OS390 aka MVS (integrated patch from 14016 Greg Smith <rys@epaibm.rtpnc.epa.gov>). OS390 uses EBCDIC 14017 rather than ASCII.</li> 14018 14019 <li>correct an off-by-one in binary search limits in 14020 keysym2ucs.c (Markus Kuhn).</li> 14021 14022 <li>implement logging for UTF-8 mode. The output is written in 14023 UTF-8 form.</li> 14024 </ul> 14025 14026 <h1><a name="xterm_110" id="xterm_110">Patch #110 - 1999/6/29 - 14027 XFree86 3.9Pu</a></h1> 14028 14029 <ul> 14030 <li>If colorMode is enabled by default, compile-in default 14031 resources to match the colors listed in XTerm-col.ad (this 14032 should fix a longstanding FAQ).</li> 14033 14034 <li>added new OSC 3 ; PROPNAME=VALUE ST 14035 escape sequence to set an arbitrary X property on the top level 14036 xterm X11 window. Omit "=VALUE" to delete the X property (patch 14037 by Greg Badros <gjb@cs.washington.edu>).</li> 14038 14039 <li>change internal flag used for <em>utf8controls</em> 14040 resource so we allow 31-bit range of characters (suggested by 14041 Thomas Wolff).</li> 14042 14043 <li>add check for 16-bit characters in OSC strings, change them 14044 to '?' (reported by Thomas Wolff).</li> 14045 14046 <li>modify logic of same_font_name() to avoid trying to 14047 interpret both parameters as wildcard patterns. That does not 14048 (cannot) work, and in some instances the font server will 14049 return unresolved wildcards for the normal or bold fontnames, 14050 making them match inadvertently, triggering the fallback 14051 overstrike logic (reported by Tim Adye).</li> 14052 </ul> 14053 14054 <h1><a name="xterm_109" id="xterm_109">Patch #109 - 1999/6/23 - 14055 XFree86 3.9Pt</a></h1> 14056 14057 <ul> 14058 <li>correct range-check from patch #108, which resulted in not 14059 being able to select from the scrollback buffer (reported by 14060 Tim Adye <T.J.Adye@rl.ac.uk>)</li> 14061 14062 <li>correct "no available ptys" problem with Cygwin B20.1 14063 (patch by Tim Adye).</li> 14064 14065 <li>modified install-ti rule in Makefile.in to allow override 14066 of the terminfo directory when doing a "make install", i.e., by 14067 assigning to TERMINFO_DIR (request by Zdenek Sekera 14068 <zs@sgi.com>).</li> 14069 14070 <li>added install-full rule to Makefile.in</li> 14071 14072 <li>resync mkdirs.sh and install.sh scripts against current 14073 autoconf</li> 14074 14075 <li>implement $(DESTDIR) in Makefile.in, making it simple to 14076 install xterm and associated files into a directory just for 14077 packaging a binary release (suggested by CaT 14078 <cat@zip.com.au>).</li> 14079 14080 <li>change IChar type to unsigned, rather than unsigned short, 14081 making room for a flag to keep with 16-bit characters to 14082 prevent them from being interpreted as C0 or C1 controls 14083 (reported by Thomas Wolff).</li> 14084 14085 <li>correct a typo from patch #107, incorrect array name, in 14086 the filterUTF8 function (patch by Bruno Haible 14087 <haible@ilog.fr>)</li> 14088 14089 <li>add <em>utf8controls</em> resource to specify whether xterm 14090 should interpret 16-bit characters unpacked from UTF-8 form as 14091 control characters if they happen to fall into that range. This 14092 behavior is left unspecified by the Unicode standard (request 14093 by Thomas Wolff).</li> 14094 14095 <li>modify handling of OSC to recover if application sends 14096 16-bit characters with codes above 255. We cannot display them 14097 as is, but translate out-of-range characters to a '?' (reported 14098 by Thomas Wolff).</li> 14099 </ul> 14100 14101 <h1><a name="xterm_108" id="xterm_108">Patch #108 - 1999/6/19 - 14102 XFree86 3.9Ps</a></h1> 14103 14104 <ul> 14105 <li>add a range-check to LastTextCol(), to guard against 14106 indexing before the beginning of the scrollback buffer. This 14107 appears to happen with certain fonts under X11R5 (reported by 14108 Stephane Chazelas <Stephane_Chazelas@Raytheon.com>).</li> 14109 14110 <li>implement resource <em>boldMode</em>, to allow disabling 14111 the simulation of bold fonts when the bold and normal fonts are 14112 not different (requested by Will Day 14113 <willday@rom.oit.gatech.edu>).</li> 14114 14115 <li>change the atom "UTF-8" to "UTF8_STRING", and fixes a few 14116 bugs in the UTF-8 selection (patch by Juliusz Chroboczek).</li> 14117 14118 <li>correct logic of binary-search in keysym2ucs.c (patch by 14119 Markus Kuhn).</li> 14120 14121 <li>add special interpretation of keysym codes above 0x1000000 14122 as the corresponding UCS value plus 0x1000000 (patch by Markus 14123 Kuhn).</li> 14124 </ul> 14125 14126 <h1><a name="xterm_107" id="xterm_107">Patch #107 - 1999/6/12 - 14127 XFree86 3.9Pq</a></h1> 14128 14129 <ul> 14130 <li>Two changes from Stephen P Wall. From his description: 14131 <blockquote> 14132 <p>The first change is simple - I added ESC[3J to erase the 14133 stored lines above the screen. That's what the changes to 14134 util.c and ctlseqs.ms are.</p> 14135 14136 <p>The second change is to get the blinking cursor working. 14137 I took out the cursorBlinkTime resource, and put in 14138 cursorBlink (Boolean), cursorOnTime (time cursor is on in 14139 msecs) and cursorOffTime, and added a cursorblink item to 14140 the vtMenu to enable/disable it.</p> 14141 </blockquote> 14142 </li> 14143 14144 <li>improve selection (integrated patch by Juliusz Chroboczek). 14145 From his description: 14146 <blockquote> 14147 <p>With this patch, selection conversion works 14148 properly:</p> 14149 14150 <pre> 14151 ISO 8859-1 xterm -> ISO 8859-1 xterm (transferred as STRING); 14152 ISO 8859-1 xterm -> UTF-8 xterm (transferred as STRING); 14153 UTF-8 xterm -> ISO 8859-1 xterm (transferred as STRING); 14154 UTF-8 xterm -> UTF-8 xterm (transferred as UTF-8). 14155</pre> 14156 <p>It will not work properly if one xterm is in, say, ISO 14157 8859-2. Actually, for this case xterm breaks the ICCCM 14158 routinely (sending ISO 8859-2 data as STRING), so I 14159 wouldn't worry too much about it. I have not changed the 14160 behaviour in eight-bit mode in any way.</p> 14161 </blockquote> 14162 </li> 14163 </ul> 14164 14165 <h1><a name="xterm_106" id="xterm_106">Patch #106 - 1999/6/9 - 14166 XFree86 3.9Pq</a></h1> 14167 14168 <ul> 14169 <li>remove duplicate fix for OpenBSD in resize.c</li> 14170 14171 <li>correct logic in ScreenWrite, which did not reset the high 14172 bytes of 16-bit characters when overwriting them with a 8-bit 14173 character string (reported by Thomas Wolff).</li> 14174 14175 <li>provide limited support for input of UTF-8 16-bit data by a 14176 lookup table (integrated patch by Markus Kuhn).</li> 14177 14178 <li>correct check in non_blank_line to ensure we're in 14179 wide-character mode before looking at the high bytes, for 14180 InsertChar.</li> 14181 </ul> 14182 14183 <h1><a name="xterm_105" id="xterm_105">Patch #105 - 1999/6/5 - 14184 XFree86 3.9Pp</a></h1> 14185 14186 <ul> 14187 <li>implement new resource <em>trimSelection</em>, which allows 14188 xterm to trim trailing blanks from selected lines. This does 14189 not affect the highlighting. (reported by several people using 14190 <em>mutt</em>, including Hans Morten Kind <edphk@uib.no>, 14191 Jeremy <jeremy@exit109.com> and (Michael Fuller 14192 <msf@mds.rmit.edu.au>).</li> 14193 14194 <li>include term.h in resize for OpenBSD (patch by Matthieu 14195 Herrb).</li> 14196 14197 <li>correct logic for UTF-8 in functions that hide and show the 14198 cursor; it was displaying a space whenever the low byte of the 14199 character at the cursor position was zero (reported by Thomas 14200 Wolff <Thomas.Wolff@icn.siemens.de>).</li> 14201 </ul> 14202 14203 <h1><a name="xterm_104" id="xterm_104">Patch #104 - 1999/5/30 - 14204 XFree86 3.9Pn</a></h1> 14205 14206 <p>This is a resync patch against XFree86 3.9Pn, reflecting 14207 changes which were submitted by Branden Robinson, who worked with 14208 Wichert Akkerman <wichert@cs.leidenuniv.nl> to set up 14209 ifdef's to handle GNU libc 2.1, and use getpt() which lets xterm 14210 avoid having to know the actual PTY name.</p> 14211 14212 <p>I have also added a few fixes for signed/unsigned mismatches, 14213 and corrected a problem in the configure script (the UTF-8 code 14214 was always configured since the Imakefile defines this).</p> 14215 14216 <h1><a name="xterm_103" id="xterm_103">Patch #103 - 1999/5/14 - 14217 XFree86 3.9Pm</a></h1> 14218 14219 <ul> 14220 <li>correct selection logic: I omitted an offset that accounts 14221 for the distance into the scrollback buffer when rewriting this 14222 for <a href="#xterm_101">patch #101</a>. Also fixed a similar 14223 problem for selecting double size characters from the 14224 scrollback buffer (first was reported by D Roland Walker 14225 <walker@pobox.com>).</li> 14226 14227 <li>improved support for Unix98 PTY's, using patch in Debian 14228 bug report #35650, by J.H.M. Dassen 14229 <jdassen@wi.leidenuniv.nl>. From the patch description: 14230 <blockquote> 14231 <ul> 14232 <li>No longer links xterm against libutil on a glibc2.1 14233 system. libutil is a compatibility library and should 14234 only be used when necessary. Rather than having get_pty() 14235 use openpty() from this compatibility library, use the 14236 real UNIX98 pty support in get_pty() (open()ing the 14237 master pty, through getpt() if available (glibc 14238 extension)). Use openpty() only under glibc2.0.</li> 14239 14240 <li>GNU libc2 is not Linux-specific; already it runs on 14241 the Hurd. It provides the UNIX98 pty functions (plus the 14242 getpt() extension), regardless of the underlying OS. 14243 Changed two constructs to look for GNU libc2 only, not 14244 GNU libc2 on Linux.</li> 14245 </ul> 14246 </blockquote> 14247 </li> 14248 14249 <li>improve font configuration, by checking if the user's 14250 resource settings for normal and bold fonts give the same font 14251 sizes (fixes problem reported by Peter Waltenberg 14252 <peterw@dascom.com>).</li> 14253 </ul> 14254 14255 <h1><a name="xterm_102" id="xterm_102">Patch #102 - 1999/5/12 - 14256 XFree86 3.9Pm</a></h1> 14257 14258 <ul> 14259 <li>revert change to openpty call in <a href="#xterm_101">patch 14260 #101</a>; this causes xterm to fail on DEC-Alpha OSF/1 4.0B 14261 (reported by H Merijn Brand).</li> 14262 14263 <li>modify print.c to move include of stdio.h after the 14264 autoconf'd xtermcfg.h since HP's ANSI C compiler otherwise sees 14265 inconsistent prototype for getopt, probably due to problem with 14266 const (reported by H Merijn Brand).</li> 14267 </ul> 14268 14269 <h1><a name="xterm_101" id="xterm_101">Patch #101 - 1999/5/10 - 14270 XFree86 3.9Pm</a></h1> 14271 14272 <ul> 14273 <li>moved includes and definitions for 'select' from data.h to 14274 xterm.h to fix problem introduced by prototype for getPtyData, 14275 part of UTF-8 changes (reported by Jens Schleusener 14276 <Jens.Schleusener@dlr.de>)</li> 14277 14278 <li>added "Meta <Btn2Down>:clear-saved-lines()" default 14279 translation (patch by H Merijn Brand)</li> 14280 14281 <li>fixes to configure script and ifdef's in main.c to build on 14282 a HP9000/D390 (hppa-2.0w) running HP-UX 11.00 (64 bit) with 14283 egcs 1.1.2 and HP's ANSI C compiler (patch by H Merijn Brand 14284 <PROCURA_BV@CompuServe.com>)</li> 14285 14286 <li>add more parentheses in ifdef's (patch by Bob 14287 Maynard).</li> 14288 14289 <li>eliminate conflicting definitions for USE_TERMINFO in 14290 resize.c (reported by Jeremy Buhler).</li> 14291 14292 <li>change openpty call to pass NULL rather than ttydev 14293 parameter, since that was used only to estimate the length of 14294 the corresponding data, and may not really be long enough 14295 (reported by Andreas Jaeger)</li> 14296 14297 <li>update description in xterm manpage for character class 14298 table, which said it handles only 7-bit codes.</li> 14299 14300 <li>correct a typo in ScrnDeleteChar() which made it not clear 14301 the high byte of wide-character data.</li> 14302 14303 <li>add logic to convert selection to UTF-8 form when 14304 appropriate. This makes select/paste "work", but further work 14305 is needed to make UTF-8 recognized as a locale in Xlib.</li> 14306 14307 <li>correct right-limit check when selecting double-width 14308 characters.</li> 14309 14310 <li>change default answerback response to an empty string.</li> 14311 </ul> 14312 14313 <h1><a name="xterm_100" id="xterm_100">Patch #100 - 1999/5/3 - 14314 XFree86 3.9Pl</a></h1> 14315 14316 <ul> 14317 <li>Correct a typo in the default resource value for 14318 backarrowKeyIsErase: it was always true (reported by Bram 14319 Moolenaar).</li> 14320 14321 <li>improve configure script's test if the installed xterm is 14322 setuid, in case that is a symbolic link.</li> 14323 14324 <li>correct "install-ti" rule in Makefile.in, by not setting a 14325 blank $TERMINFO value. That is interpreted as "." by ncurses' 14326 tic.</li> 14327 </ul> 14328 14329 <h1><a name="xterm_99" id="xterm_99">Patch #99 - 1999/5/2 - 14330 XFree86 3.9Pk</a></h1> 14331 14332 <ul> 14333 <li>correct logic that computes num_ptrs count of the number of 14334 indices into the screen buffer. This is the maximum of the 14335 colors and character-set indices; was incorrect in patch 14336 #97.</li> 14337 14338 <li>correct argument type for sigsetjmp, incidental change in 14339 patch #96's Unix88 PTY patch (reported by Bram Moolenaar).</li> 14340 14341 <li>correct description of secondary DA in ctlseqs.ms (reported 14342 by Bram Moolenaar).</li> 14343 14344 <li>decouple the backarrowKey and ptyInitialErase resources by 14345 adding a new resource backarrowKeyIsErase, to accommodate 14346 people using applications which have hardcoded tests for 14347 characters 8 and 127 rather than relying on the stty 14348 settings.</li> 14349 14350 <li>modify the UTF-8 decoder so that all possible illegal UTF-8 14351 sequences are properly represented by U+FFFD. This should be 14352 very helpful for developers of code that output UTF-8 strings 14353 for debugging. See the file utf-8-test.txt in 14354 http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz for a 14355 demonstration text that contains numerous illegal UTF-8 values. 14356 (patch by Markus Kuhn).</li> 14357 14358 <li>correct a place in ScrnRefresh where I was filling the high 14359 byte of a wide character with a space rather than a null 14360 (reported by Markus Kuhn).</li> 14361 </ul> 14362 14363 <h1><a name="xterm_98" id="xterm_98">Patch #98 - 1999/4/26 - 14364 XFree86 3.9Pk</a></h1> 14365 14366 <ul> 14367 <li>correct data manipulation in unparseputc(), broken for 14368 little-endian machines by patch #97's UTF-8 changes. This meant 14369 that keyboard input on SunOS did not work, though Linux i386 14370 was fine.</li> 14371 14372 <li>modify initialization for backarrowKey and logic for 14373 initial-erase to prevent the initial-erase from overriding an 14374 explicitly set backarrowKey resource (reported by Vikas 14375 Agnihotri).</li> 14376 14377 <li>add a missing null-pointer check in ScrnRefresh, for the 14378 wide-characters configuration.</li> 14379 </ul> 14380 14381 <h1><a name="xterm_97" id="xterm_97">Patch #97 - 1999/4/25 - 14382 XFree86 3.9Pk</a></h1> 14383 14384 <ul> 14385 <li>add configure script test for -lutil, needed for openpty 14386 call when configuring xterm for Glibc-2.1 and Unix98 PTY's 14387 (first reported by Martin Lorentz" 14388 <m.lorentz@w12.link-goe.de>).</li> 14389 14390 <li>completely parenthesize ifdef expressions for Glibc 14391 (suggested by Bob Maynard).</li> 14392 14393 <li>add initial-erase options (-ie, +ie) to help message 14394 (reported by Vikas Agnihotri).</li> 14395 14396 <li>remove duplicate definition of USE_USG_PTYS (reported by 14397 Jeremy Buhler).</li> 14398 14399 <li>change termcap <em>kD</em> and terminfo <em>kdch1</em> to a 14400 DEL (\177). I overlooked this when separating the styles of 14401 keyboard with the <em>sunKeyboard</em> resources in patch #94, 14402 so that it normally matches the value of the stty erase 14403 character: 14404 <ul> 14405 <li>Reported by Jae Gangemi 14406 <jgangemi@ccf.rutgers.edu>, this caused emacs to not 14407 process the DEL properly, combining it with succeeding 14408 characters.</li> 14409 14410 <li>This does not appear to be related to a problem which I 14411 have found with <em>screen</em>, which translates the stty 14412 erase into the termcap <em>kD</em> or terminfo 14413 <em>kdch1</em> value (depending on how it is linked) if the 14414 $TERMCAP variable is set when <em>screen</em> is 14415 invoked.</li> 14416 </ul> 14417 </li> 14418 14419 <li>add command-line options for enabling UTF-8 mode: -u8 and 14420 +u8. The more obvious -utf8 and +utf8 would conflict with 14421 xterm's -ut and +ut (utmp) options. The UTF-8 changes were 14422 requested by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. This 14423 patch does not complete UTF-8 implementation, but makes it 14424 usable, i.e., display and refresh work, and I am able to 14425 display the test cases which Markus provides. More work is 14426 needed to complete this feature: 14427 <ul> 14428 <li>the control sequences for switching in/out of UTF-8 14429 mode are partly implemented (don't use them). Similarly, 14430 the switching between vt100 and tek4014 emulations when 14431 UTF-8 mode is enabled will not work properly. 14432 <p>You must use the -u8 command line option to use this 14433 feature, as well as compile with the OPT_WIDE_CHARS 14434 definition.</p> 14435 </li> 14436 14437 <li>cut/paste only copies 8-bit characters.</li> 14438 14439 <li>logging is disabled in the wide-character 14440 configuration</li> 14441 14442 <li>printing only writes 8-bit characters.</li> 14443 14444 <li>input only does 8-bit characters. This is the area that 14445 I know least about.</li> 14446 </ul> 14447 </li> 14448 </ul> 14449 14450 <h1><a name="xterm_96" id="xterm_96">Patch #96 - 1999/4/19 - 14451 XFree86 3.9Pj</a></h1> 14452 14453 <ul> 14454 <li>modify Makefile.in to work with configure script's --srcdir 14455 option. (patch by Jeremy Buhler 14456 <jbuhler@cs.washington.edu>)</li> 14457 14458 <li>add checks for 'echo -n' equivalent for 8colors.sh and 14459 16colors.sh scripts (reported by Vikas Agnihotri).</li> 14460 14461 <li>improve logic that looks for bold fonts to allow for 14462 wildcards in the specification for normal fonts, and to ensure 14463 that if a bold font is specified as normal, that xterm will 14464 simulate a bold version of that using a one-pixel offset 14465 overstrike (reported by Henrik Harmsen 14466 <harmsen@erv.ericsson.se>).</li> 14467 14468 <li>correct horizontal spacing of double width line-drawing 14469 characters that xterm simulates.</li> 14470 14471 <li>improve support for Unix98 PTY's, using patch in Debian bug 14472 report #35650, by Topi Miettinen 14473 <Topi.Miettinen@medialab.sonera.fi>. Andreas Jaeger says 14474 this also corrects a permissions problem reported by 14475 cat@zip.net.au</li> 14476 14477 <li>modify initial-erase logic to ensure that 14478 <code>ttyModes</code> resource overrides it.</li> 14479 </ul> 14480 14481 <h1><a name="xterm_95" id="xterm_95">Patch #95 - 1999/4/5 - 14482 XFree86 3.9Ph</a></h1> 14483 14484 <ul> 14485 <li>modify primary DA response to allow a '1' parameter.</li> 14486 14487 <li>add printer and national replacement character sets to 14488 VT220 primary DA response.</li> 14489 14490 <li>document primary and secondary DA responses in 14491 ctlseqs.ms</li> 14492 14493 <li>use the patch number (e.g., 95) in the secondary DA 14494 response, providing user applications a means of determining 14495 the version of xterm for feature comparison (request by Bram 14496 Moolenaar).</li> 14497 14498 <li>make xterm respond to secondary DA when the decTerminalID 14499 is set for VT100.</li> 14500 14501 <li>limit user-defined keys (DECUDK) to VT220-style keyboard 14502 when sunKeyBoard resource is true.</li> 14503 14504 <li>modify ifdef's for Linux-2.2.x with Glibc-2.1 to work with 14505 Glibc-2.1 and no Unix98 PTY support (patch from Andreas Jaeger 14506 <aj@arthur.rhein-neckar.de>)</li> 14507 14508 <li>add optional feature (resource and command-line options) to 14509 make xterm use the PTY's sense of erase character on startup, 14510 rather than requiring it to be \177, or set the PTY's erase 14511 character to match xterm's configuration. Note that while 14512 $TERMCAP is modified to reflect the actual configuration, the 14513 terminfo kdch1 string is not (request by Dirk H Hohndel 14514 <hohndel@suse.de>)</li> 14515 14516 <li>improve scripts in vttests to work with newer shells that 14517 do not use 'echo -n'.</li> 14518 14519 <li>add fonts.sh example script</li> 14520 14521 <li>correct inequality in handling of "#1" font 14522 specification.</li> 14523 14524 <li>correct call to XGetWMNormalHints() used for computing 14525 maximum screen size; the size hints may not have been set.</li> 14526 14527 <li>begin implementation of support for wide-characters 14528 (configure option --enable-wide-chars defines OPT_WIDE_CHARS, 14529 invoke xterm with -wc option to activate this feature). This 14530 patch optionally widens internal data structures, invokes the 14531 16-bit text output rather than the 8-bit version and adds some 14532 tables.</li> 14533 </ul> 14534 14535 <h1><a name="xterm_94" id="xterm_94">Patch #94 - 1999/3/27 - 14536 XFree86 3.9Pf</a></h1> 14537 14538 <ul> 14539 <li>further fixes for terminfo: ka1, ka3, etc., differ between 14540 the default xterm-xfree86 and xterm-vt220 entries.</li> 14541 14542 <li>change default (with sunKeyboard resource false) behavior 14543 of the editing keypad "Delete" to send a 127, like xterm-r6. 14544 The VT220-style <code><ESC>[3~</code> is sent when 14545 sunKeyboard is true (reported by Tomas Vanhala).</li> 14546 14547 <li>add parameters to function keys to indicate if shift, 14548 control or alt are set. The codes are based on a description of 14549 a DEC VT510 with a PC keyboard, from Jeffrey Altman 14550 <jaltman@watsun.cc.columbia.edu>.</li> 14551 14552 <li>add control sequence 1035, set-num-lock action and num-lock 14553 menu entry to control the use of the NumLock and Alt keys for 14554 the Sun/PC and VT220 keyboard extensions.</li> 14555 14556 <li>implement DECSET/DECRST numeric keypad (DECNKM) mode.</li> 14557 14558 <li>modify terminfo and termcap to use recommended "X Window" 14559 or "X11" names rather than "X Windows" (reported by Tomas 14560 Vanhala).</li> 14561 14562 <li>suppress translation of shifted keypad "+" when sunKeyboard 14563 is true.</li> 14564 14565 <li>workaround unexpected behavior (perhaps bug) in 14566 XmbLookupString, which returns trash in the string buffer for 14567 numlock and control-key combined with keypad-keys.</li> 14568 14569 <li>modify ScrollBarReverseVideo() to keep scrollbar border 14570 visible when reverse video is toggled.</li> 14571 14572 <li>correct missing case for parameter 17 (set highlight color) 14573 in dynamic colors control sequences.</li> 14574 14575 <li>extend dynamic colors control sequences to allow users to 14576 determine the colors and font which are currently active.</li> 14577 14578 <li>minor tweak to OSC responses, to use BEL if the application 14579 used that to end the request, rather than ST. This works better 14580 with shell scripts, which may not handle an 14581 <code><ESC>backslash</code> very well.</li> 14582 14583 <li>separate menu settings for reverse video from that done 14584 under program control.</li> 14585 14586 <li>corrected ifdef's for menus, which did not allow tek4014 to 14587 be suppressed properly (reported by Clint Olsen).</li> 14588 14589 <li>changes for Linux-2.2.x with GLibc-2.1 and /dev/ptmx 14590 support (integrated patch from Pavel Roskin): 14591 <ul> 14592 <li>main.c and resize.c were using different rules to 14593 determine whether ATT should be defined (actually 14594 USE_USG_PTYS is more apt).</li> 14595 14596 <li>copy definitions from main.c to resize.c to prevent 14597 sys/stream.h and sys/ptem.h from inclusion when SYSV is not 14598 defined</li> 14599 14600 <li>define CNUL if not already defined like other 14601 variables.</li> 14602 14603 <li>/dev/tty does exist in Linux, but it doesn't mean, it 14604 should be used. Therefore EACCES is now an acceptable 14605 result.</li> 14606 14607 <li>ifdef'd several calls such as <code>ioctl (ptyfd, 14608 I_PUSH, "ptem")</code> to build on Linux (I_PUSH is not 14609 defined when sys/stropts.h is not included).</li> 14610 </ul> 14611 </li> 14612 14613 <li>initialize second "ltc" variable in main.c (reported by 14614 David Dawes).</li> 14615 14616 <li>provide definition for USE_USG_PTYS in screen.c</li> 14617 14618 <li>add resource-files to install rule in standalone 14619 Makefile.in</li> 14620 14621 <li>add sample scripts to illustrate titlebar controls, 14622 resizing and colors.</li> 14623 </ul> 14624 14625 <h1><a name="xterm_93" id="xterm_93">Patch #93 - 1999/3/14 - 14626 XFree86 3.9Pd</a></h1> 14627 14628 <p>Here are several fixes and minor enhancements. The chief ones 14629 are the fixes for NumLock mode and reverse video, since we had 14630 become used to working around the problems.</p> 14631 14632 <ul> 14633 <li>remove kfnd/kll/kslt strings from terminfo, because curses 14634 applications do not necessarily return khome/kend pairs 14635 (reported by Vikas Agnihotri).</li> 14636 14637 <li>implement NumLock resource which overrides the keyboard 14638 tables for the special case of keypad keys. This is a problem 14639 introduced in xterm by X11R6 changes, i.e., an ambiguity which 14640 in effect discarded vt100 keypad support.</li> 14641 14642 <li>modify Sun/PC keyboard mode to extend this (emulation of 14643 DEC vt100 keypad) to the remainder of the numeric keypad. Now, 14644 the default operating mode of xterm uses the keyboard tables 14645 as-is (except if the NumLock mode overrides), but provides good 14646 vt100 keypad compatibility if the Sun/PC keyboard menu item is 14647 checked.</li> 14648 14649 <li>separate command-line settings for reverse video from that 14650 done under program control. This is a problem which was 14651 introduced by X11R6. Though <em>correct</em>, most users are 14652 confused by allowing the reset command to undo the effect of 14653 the command-line <kbd>-rv</kbd> option.</li> 14654 14655 <li>add description of function keys, keypad and cursor keys to 14656 ctlseqs.ms</li> 14657 14658 <li>add terminfo entries for xterm-vt52, xterm-sun and 14659 xterm-hp</li> 14660 14661 <li>correct typo (missing case value) for DECSET 35, 14662 enable/disable shifted keypad action and a few compiler 14663 warnings (reported by Zdenek Sekera <zs@sgi.com>).</li> 14664 14665 <li>correct reporting of color values 8-15 in DECRQSS (reported 14666 by Vikas Agnihotri).</li> 14667 14668 <li>modify parsing of ttyModes resource to recognize "^-" as 14669 "undef" (requested by Tomas Vanhala).</li> 14670 14671 <li>integrate/extend changes to add iconify/maximize actions 14672 (from Edward S. Arthur <eda@ultranet.com>).</li> 14673 14674 <li>add control sequences for maximizing/restoring window, and 14675 for reporting maximum screen size.</li> 14676 14677 <li>add 'interpret' action, to support local function-key 14678 interpretation. Used properly, this makes most of the 14679 specialized actions of xterm redundant.</li> 14680 14681 <li>add control sequence private modes 1051, 1052 and 1052, for 14682 setting the Sun and HP function key modes, and for setting the 14683 Sun/PC keyboard mode.</li> 14684 14685 <li>add configure option --disable-maximize</li> 14686 14687 <li>add configure option --disable-num-lcok</li> 14688 14689 <li>extend descriptions of configure script options in 14690 INSTALL.</li> 14691 </ul> 14692 14693 <h1><a name="xterm_92" id="xterm_92">Patch #92 - 1999/2/5 - 14694 XFree86 3.9Nz</a></h1> 14695 14696 <ul> 14697 <li>increase buffer size for tgetent (i.e., termcap) to 1500. 14698 This fixes a problem where <em>screen</em> is built using 14699 ncurses or GNU termcap and <em>xterm</em> is built using the 14700 standard termcap interface. The former does not limit the 14701 termcap size, while the latter is assumed to be no longer than 14702 1023 characters. The <em>screen</em> program's termcap entry is 14703 about 1200 characters long.</li> 14704 14705 <li>change update_menu_item() to a function, to simplify 14706 debugging. This also reduces the executable by 4Kb.</li> 14707 14708 <li>add control sequences for DECSET 30, 1010, 1011 like rxvt 14709 (enable or disable some features that were only settable via 14710 resources or command line arguments).</li> 14711 14712 <li>add control sequence for DECSET 35, which enables/disables 14713 the shifted keypad functions.</li> 14714 14715 <li>add support for switching font sizes, by stepping through 14716 the font menu using shifted keypad plus and minus.</li> 14717 14718 <li>correct missing initialization of tekInhibit and tekSmall 14719 resources.</li> 14720 14721 <li>correct ifdef's in charproc.c for XtNgeometry and 14722 XtCGeometry (reported by Bram Moolenaar).</li> 14723 </ul> 14724 14725 <h1><a name="xterm_91" id="xterm_91">Patch #91 - 1999/1/21 - 14726 XFree86 3.9Nw</a></h1> 14727 14728 <ul> 14729 <li>Implement logic to translate input characters which are 14730 mapped when in vt220 National Replacement Character mode 14731 (requested by Tomas Vanhala).</li> 14732 14733 <li>Resync configure scripts with my patches to autoconf 14734 2.13</li> 14735 14736 <li>Change order of -lXmu and -lXext to accommodate cygwin32 14737 (reported by Vikas Agnihotri).</li> 14738 14739 <li>Add "-ti" option to set terminal emulation level from 14740 command line rather than via resource.</li> 14741 14742 <li>Simplify some of the preprocessor logic using #elif.</li> 14743 </ul> 14744 14745 <h1><a name="xterm_90" id="xterm_90">Patch #90 - 1998/12/13 - 14746 XFree86 3.9Nq</a></h1> 14747 14748 <p>This implements several small fixes and enhancements. The 14749 chief one implements fallback support for line drawing characters 14750 with fonts that do not include those characters. But I 14751 implemented that last.</p> 14752 14753 <ul> 14754 <li>If any of the glyphs in positions 0-31 (used by xterm to 14755 implement the VT100 alternate character set) are zero-sized 14756 (i.e., missing), xterm will reserve a normal space for the 14757 glyph when drawing. I implemented a simple stroke-drawing 14758 function to draw the line-drawing characters and a couple of 14759 the other (simpler) characters such as diamond. (This was 14760 suggested by Vikas Agnihotri).</li> 14761 14762 <li>Modify the computation of doublesize characters to work 14763 around font servers which shift the scaled characters up/down 14764 or do not give the correct width.</li> 14765 14766 <li>Add popup menu item and corresponding resource settings to 14767 disable the font-scaling logic for doublesize characters to 14768 work around (older) font servers which simply do not draw the 14769 fonts scaled to the size that they said they would. I see this 14770 problem on a SunOS system running X11R5; the X11R6 servers seem 14771 well behaved.</li> 14772 14773 <li>Implement new escape sequence, private mode 1049, which 14774 combines the switch to/from alternate screen mode with screen 14775 clearing and cursor save/restore. Unlike the existing escape 14776 sequence, this clears the alternate screen when switching to it 14777 rather than when switching to the normal screen, thus retaining 14778 the alternate screen contents for select/paste operations. 14779 <p>When I implemented the popup menu entry to toggle between 14780 the normal and alternate screens, I considered only pasting 14781 from the normal screen to the alternate; this improvement 14782 allows either direction.</p> 14783 </li> 14784 14785 <li>Changed the termcap and terminfo for xterm-xfree86 and 14786 xterm-8bit to use the new 1049 private mode.</li> 14787 14788 <li>Modify the logic which switches between normal and 14789 alternate screens so that the save/restore cursor operations 14790 apply only to the current screen. That means that applications 14791 which use the terminfo smcur/rmcur or termcap ti/te 14792 capabilities will restore the cursor to the original position 14793 on the normal screen rather than to the most recent place where 14794 a save-cursor operation was performed. 14795 <p>I note that a real VT100 terminal would not behave in this 14796 way, but it is a moot point since the VT100 does not 14797 implement alternate screen, and therefore the save/restore 14798 cursor sequence would not be used in this context. I reviewed 14799 the logic which switches between normal and alternate screens 14800 based on some recent newsgroup postings as well as a proposed 14801 patch in the Debian group which attempts to do this (the 14802 patch has a bug, however, so I did not use it).</p> 14803 </li> 14804 14805 <li>Add popup menu entry for toggling the titeInhibit 14806 resource.</li> 14807 14808 <li>Add new resource answerbackString, which overrides the 14809 default "xterm" returned by xterm when responding to an ENQ 14810 (control/E) character (request by Rajesh Vaidheeswarran 14811 <rv@fore.com>).</li> 14812 14813 <li>Add new resource keyboardDialect for setting the NRC 14814 display character set (request by Tomas Vanhala, who notes that 14815 I should add logic to translate the keyboard as well).</li> 14816 14817 <li>Add new command-line option and corresponding resources for 14818 making xterm generate escape sequences compatible with HP 14819 terminals. Like the existing Sun escape sequences, this is 14820 available as a popup menu item. It is enabled by the configure 14821 script with the option --enable-hp-fkeys (requested by Toni 14822 Mueller <sales@oeko.net>).</li> 14823 14824 <li>Add configure script option --disable-boxchars to disable 14825 the fallback support for line drawing characters.</li> 14826 14827 <li>Fix ifdef's for configure script --disable-ansi-color, and 14828 reviewed all configure options to ensure that all can be 14829 enabled/disabled appropriately.</li> 14830 14831 <li>Update config.guess and config.sub, from Lynx.</li> 14832 </ul> 14833 14834 <h1><a name="xterm_89" id="xterm_89">Patch #89 - 1998/11/20 - 14835 XFree86 3.9Nm</a></h1> 14836 14837 <p>This patch completes the implementation of double-sized 14838 character support for the VT100 emulation, and fixes a few minor 14839 bugs:</p> 14840 14841 <ul> 14842 <li>corrected the cursor position in HideCursor, which did not 14843 multiply the column by two when in doublesize mode. This bug, 14844 which did not appear in normal use, dates back to my original 14845 <a href="#xterm_44">changes</a> to partly implement 14846 double-sized characters. I noticed it when cat'ing a typescript 14847 from vttest's double-sized character test.</li> 14848 14849 <li>ensure that the current line is repainted when switching 14850 between single and double width characters.</li> 14851 14852 <li>reduce the number of bits used for double-sized character 14853 coding from 3 to 2, to make more room for soft-font codes.</li> 14854 14855 <li>copy newer ifdef's from the XFree86 3.3.3 release's main.c, 14856 which address details of glibc and powerpc.</li> 14857 14858 <li>moved definition of DECL_ERRNO in xterm.h to match XFree86 14859 3.3.3</li> 14860 14861 <li>modify <em>resize</em> to remove the ifdef on SVr4 that 14862 suppressed printing the script for $LINES and $COLUMNS. 14863 Solaris' resize utility does this; suppressing the behavior is 14864 unnecessary.</li> 14865 </ul> 14866 14867 <p>I tested the double-sized characters using vttest and the 14868 xfsft patch. These fonts worked reasonably well:</p> 14869 14870 <pre> 14871 -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1 14872 9x15 14873</pre> 14874 <p>The iso8859 font does not include box characters, of course, 14875 but looks good.</p> 14876 14877 <h1><a name="xterm_88" id="xterm_88">Patch #88 - 1998/10/31 - 14878 XFree86 3.9Nk and 3.3.2h</a></h1> 14879 14880 <p>This refines my <a href="#xterm_85">patch #85</a> by checking 14881 for a case where the font server returns a bold font that does 14882 not quite correspond to the normal font. When I asked for a bold 14883 version of the 6x12 font, the font server returned a near 14884 equivalent where the ascent and descent values did not match, 14885 causing xterm to leave lines across the display. This patch makes 14886 xterm reject that type of mismatch, falling back to the old font 14887 behavior.</p> 14888 14889 <h1><a name="xterm_87" id="xterm_87">Patch #87 - 1998/10/21 - 14890 XFree86 3.9Nj and 3.3.2f</a></h1> 14891 14892 <p>This corrects a problem reported by Stefan Dalibor. My table 14893 entries for the <em>printerExtent</em> and 14894 <em>printerFormFeed</em> resources used the wrong types for 14895 sizeof, causing the printer to not work properly on some 14896 platforms because the <em>printAttributes</em> resource was 14897 overwritten (e.g., Digital Unix with DEC Alpha).</p> 14898 14899 <p>I reviewed all of the resource table entries and fixed a 14900 potential problem with <em>resizeGravity</em>, which was typed as 14901 <em>int</em> rather than <em>XtGravity</em>.</p> 14902 14903 <h1><a name="xterm_86" id="xterm_86">Patch #86 - 1998/10/14 - 14904 XFree86 3.9Nj and 3.3.2e</a></h1> 14905 14906 <p>A small fix: when switching to/from the continuous mouse 14907 reporting mode, the event mask was incorrect if xterm was built 14908 under X11R5 because the original data was saved under an ifdef 14909 for active-icon.</p> 14910 14911 <h1><a name="xterm_85" id="xterm_85">Patch #85 - 1998/10/12 - 14912 XFree86 3.9Nj and 3.3.2e</a></h1> 14913 14914 <p>Some cleanup (I noticed the pixel droppings a few months ago 14915 after getting a new 17" monitor):</p> 14916 14917 <ul> 14918 <li>split-out the functions that load/reload fonts for xterm as 14919 new file fontutils.c to extend them to support automatic 14920 loading of bold font corresponding to the normal font. Adapted 14921 logic from EMU 1.3 for this purpose. This fixes most 14922 occurrences of pixel droppings from bold characters.</li> 14923 14924 <li>modified by renaming variables and adding casts to permit 14925 compile with g++.</li> 14926 14927 <li>modify headers so they can all be compiled without order 14928 dependencies, and use bracketed rather than quoting includes to 14929 allow compile from separate directory.</li> 14930 14931 <li>renamed xtermm terminfo entry to xterm-mono, to avoid 14932 conflict with Solaris entry now in ncurses.</li> 14933 </ul> 14934 14935 <h1><a name="xterm_84" id="xterm_84">Patch #84 - 1998/10/9 - 14936 XFree86 3.9Ni and 3.3.2e</a></h1> 14937 14938 <p>Several small fixes and enhancements, including a patch from 14939 Bjorn Helgaas:</p> 14940 14941 <ul> 14942 <li>correct initialization of TERMCAP environment variable, 14943 which was frequently set to garbage on non-Linux systems 14944 because "termcap" and "newtc" contained random data from the 14945 stack.</li> 14946 14947 <li>remove the LINEWRAPPED attribute from lines as they are 14948 cleared. Previously, the attribute was set but never 14949 cleared.</li> 14950 14951 <li>make word and line selections work even when lines are 14952 wrapped by xterm. Previously, selections were limited to one 14953 screen line.</li> 14954 </ul> 14955 14956 <p>as well as</p> 14957 14958 <ul> 14959 <li>modify logic for line-wrapping to reset the associated flag 14960 if the application deletes a character. This fixes a problem 14961 reported by Bjorn Helgaas where word/line selection would still 14962 wrap even after deleting characters from the first line.</li> 14963 14964 <li>add kll/kH capabilities to xterm-xfree86 entries in termcap 14965 and terminfo (request by Michael Schroeder).</li> 14966 14967 <li>shorten descriptions in termcap to make resolved entries 14968 all shorter than 1023 character limit.</li> 14969 14970 <li>use DECSTR control sequence to shorten initialization and 14971 reset strings in xterm-xfree86 termcap and terminfo.</li> 14972 14973 <li>use rmul/smul and rmir/smir in xterm-r5 terminfo to match 14974 termcap.</li> 14975 14976 <li>correct typos in initialization and reset strings in 14977 xterm-r5 termcap and terminfo.</li> 14978 14979 <li>disable special translations of key symbols (the backarrow 14980 key, the editing keypad and the keypad "+") when a modifier 14981 other than shift, control or numlock is used. This makes xterm 14982 handle the meta key as expected by people using emacs (reported 14983 by Pete Harlan <harlan@pointofchoice.com> in 14984 linux.debian.user newsgroup).</li> 14985 </ul> 14986 14987 <h1><a name="sync_83" id="sync_83">Resync #83 - 1998/10/7 - 14988 XFree86 3.3.2e</a></h1> 14989 14990 <p>Merge changes through <a href="#xterm_83">patch #83</a> with 14991 the 3.3.2e version.</p> 14992 14993 <p>This follows a change from XFree86 CVS which adds checks for 14994 non-null return from malloc (patch by Matthieu Herrb).</p> 14995 14996 <h1><a name="xterm_83" id="xterm_83">Patch #83 - 1998/8/25 - 14997 XFree86 3.9Nb</a></h1> 14998 14999 <p>Several small fixes and enhancements:</p> 15000 15001 <ul> 15002 <li>add configure test to infer if xterm should be installed 15003 setuid based on previously installed xterm (reported by Stephen 15004 Marley and Stefan Dalibor).</li> 15005 15006 <li>implement quasi-continuous mouse reporting (integrated 15007 patch by Jason Bacon).</li> 15008 15009 <li>correct control sequences transmitted by function keys F1 15010 to F4 when sunFunctionKeys resource is true (it was still using 15011 the VT100 control sequences).</li> 15012 15013 <li>modify handling of backarrow key so that the control 15014 modifier toggles the backspace/delete interpretation set by the 15015 backarrowKey resource.</li> 15016 15017 <li>limit the row and column values used to report mouse 15018 position.</li> 15019 </ul> 15020 15021 <p>From resync with XFree86 3.9Nb:</p> 15022 15023 <ul> 15024 <li>add support for the VSTATUS control character (patch by 15025 Robert Earl <rearl@teleport.com>).</li> 15026 </ul> 15027 15028 <h1><a name="xterm_82" id="xterm_82">Patch #82 - 1998/7/15 - 15029 XFree86 3.9Aj</a></h1> 15030 15031 <p>Bug fix for <a href="#xterm_81">patch #81</a>:</p> 15032 15033 <ul> 15034 <li>remove an #undef for NBBY, which caused compile problem on 15035 FreeBSD (reported by David Dawes).</li> 15036 </ul> 15037 15038 <h1><a name="xterm_81" id="xterm_81">Patch #81 - 1998/7/14 - 15039 XFree86 3.9Aj</a></h1> 15040 15041 <p>More bug fixes:</p> 15042 15043 <ul> 15044 <li>fix conflicting ifdef's for TIOCSLTC when building with 15045 Linux on AXP aka DEC Alpha (reported by Robin Cutshaw).</li> 15046 15047 <li>correction to patch #79, move assignment for 15048 *utptr->ut_user = 0; back into non-SVR4 ifdef in main.c, 15049 since this clobbers username on Solaris 2.5.1 (analysis by Will 15050 Day <willday@rom.oit.gatech.edu>).</li> 15051 15052 <li>corrected khome/kend in xterm-8bit terminfo 15053 description.</li> 15054 15055 <li>improve cursor color by making it always the reverse of 15056 fg/bg unless the cursorColor resource is set, i.e., to 15057 something other than the default foreground (reported by Vikas 15058 Agnihotri and Bram Moolenaar).</li> 15059 15060 <li>minor fixes for compiler warnings, including a syntax error 15061 in the AMOEBA ifdef's.</li> 15062 </ul> 15063 15064 <p>From resync with XFree86 3.9Aj:</p> 15065 15066 <ul> 15067 <li>correction to patch #73, supply missing #else for fallback 15068 definitions of size_t, time_t (Robin Cutshaw 15069 <robin@intercore.com>).</li> 15070 </ul> 15071 15072 <h1><a name="xterm_80" id="xterm_80">Patch #80 - 1998/6/29 - 15073 XFree86 3.9Ai</a></h1> 15074 15075 <p>This fixes a couple of items leftover or introduced by patch 15076 79:</p> 15077 15078 <ul> 15079 <li>take out the logic that suppresses editing-keypad in vt100 15080 mode (those keys are too valuable to give up for a fine point 15081 of emulation).</li> 15082 15083 <li>corrected a couple of places in terminfo where I missed 15084 using the vt220-style editing-keypad codes for Find/Select 15085 (mapped to Home/End).</li> 15086 15087 <li>checked termcap file against terminfo, fix several places 15088 where it was inconsistent.</li> 15089 </ul> 15090 15091 <h1><a name="xterm_79" id="xterm_79">Patch #79 - 1998/6/28 - 15092 XFree86 3.9Ai</a></h1> 15093 15094 <p>This patch fixes several small bugs:</p> 15095 15096 <ul> 15097 <li>use X_EXTRA_LIBS in standalone Makefile.in (patch by Tomas 15098 Vanhala).</li> 15099 15100 <li>add new resource 'oldXtermFKeys' which provides backward 15101 compatibility for F1-F4 control sequences with TOG's 15102 xterm.</li> 15103 15104 <li>determine the server's default foreground/background Pixel 15105 values, needed if the -flipPixels X server option is used 15106 (reported by David Dawes).</li> 15107 15108 <li>correct logic for F1-F4 function keys so that they generate 15109 VT100 compatible escape sequences in VT220 mode, since that is 15110 what the numeric keypad is supposed to do (reported by Ron 15111 Johnson, Jr. <ronjohn@communique.net>).</li> 15112 15113 <li>modify logic for editing keypad to work more like VT220: 15114 don't pass those codes in VT100-mode unless oldXtermFKeys mode 15115 is set.</li> 15116 15117 <li>correct an interaction with the editing-keypad logic that 15118 prevented backarrow key from sending a 127 for the delete key 15119 (the 'remove' escape sequence was being sent instead).</li> 15120 15121 <li>use return-value from getuid() rather than the parameter, 15122 to work on systems which do not update the latter (patch by 15123 Kevin Buhr <buhr@mozart.stat.wisc.edu>)</li> 15124 15125 <li>correct scrollbar border color when toggling to/from secure 15126 keyboard mode (patch by Jeff Uphoff 15127 <juphoff@tarsier.cv.nrao.edu>)</li> 15128 15129 <li>modifications to terminfo file: 15130 <ul> 15131 <li>rename description to xterm-xfree86, adding an entry 15132 'xterm' which is derived from xterm-xfree86 to simplify 15133 customization.</li> 15134 15135 <li>change string for kdch1 from \177 to \E[3~, to address 15136 complaints from Debian developers. (This applies to the key 15137 labeled "Delete", and does not affect the backarrow 15138 key).</li> 15139 15140 <li>add user-strings u6, u7, u8, u9 to entries to make them 15141 work with Daniel Weaver's "tack" program.</li> 15142 15143 <li>modify xterm-24, xterm-bold, xterm-boldso entries to 15144 disentangle them from explicit dependency upon 15145 xterm-xfree86.</li> 15146 15147 <li>add generic 'xterm-color' entry.</li> 15148 15149 <li>minor corrections to xterm-xfree86, xterm-8bit, 15150 xterm-r5 and xterm-r6 entries.</li> 15151 </ul> 15152 </li> 15153 </ul> 15154 15155 <h1><a name="xterm_78" id="xterm_78">Patch #78 - 1998/6/3 - 15156 XFree86 3.9Ah and 3.3.2</a></h1> 15157 15158 <p>Again, most of the bulk of this patch is for ANSI conversion. 15159 I used the IRIX compiler's -wlint option to find the remaining 15160 functions that use K&R syntax (since gcc does not do this 15161 properly). Also, I changed the logic in the print code slightly 15162 to close unwanted files before opening a pipe to the printer. 15163 This may help in some configurations where the line printer hangs 15164 until xterm closes the pipe.</p> 15165 15166 <h1><a name="xterm_77" id="xterm_77">Patch #77 - 1998/5/26 - 15167 XFree86 3.9Ah and 3.3.2</a></h1> 15168 15169 <p>Most of the bulk of this patch is to convert the extended C 15170 (K&R functions with prototypes) to ANSI. I verified that on 15171 Linux by comparing object files, to ensure that I did not, for 15172 example, interchange parameters in the function declarations.</p> 15173 15174 <p>The rest of the patch fixes several minor bugs, and adds a few 15175 features:</p> 15176 15177 <ul> 15178 <li>back-out my use of ncurses "captoinfo -f" option 15179 (if/then/else/endif) formatting, since ncurses did not 15180 correctly filter embedded newlines in terminfo capability 15181 strings until _after_ ncurses 4.1, thus corrupting 15182 setf/setb/sgr strings (reported by Darren Hiebert and 15183 others).</li> 15184 15185 <li>document SGR 8, 28 (invisible/visible), add corresponding 15186 capabilities to terminfo description. 15187 <p>I would also add the 'prot protected capability, but the 15188 control sequences for that would not be recognized or 15189 properly ignored by the older xterm programs.</p> 15190 </li> 15191 15192 <li>modify ChangeGroup to not suppress a null-resource, but 15193 treat it as an empty string (recommended by Stefan 15194 Dalibor).</li> 15195 15196 <li>add printerAutoClose resource to control whether printer is 15197 closed when going offline. More than one person reports 15198 problems (on Solaris 2.6 and Digital Unix 4.0) getting the 15199 printer to proceed unless xterm exits; I think that it is a 15200 problem flushing the pipe. Closing it ought to flush it.</li> 15201 15202 <li>adapt TOG fix-3 to in HandleKeymapChange and VTInitI18N 15203 (but adapt XtStackAlloc/XtStackFree for clarity, as well as 15204 fixing memory leak).</li> 15205 15206 <li>change calls on FillCurBackground to ClearCurBackground, in 15207 effect using XClearArea rather than XFillRectangle when 15208 clearing as a side-effect of scrolling and insertion (patch by 15209 Alexander V Lukyanov)</li> 15210 15211 <li>correct some places where insert/delete did not _move_ the 15212 color attributes, using memmove (patch by Alexander V Lukyanov 15213 <lav@long.yar.ru>)</li> 15214 15215 <li>add ifdef's for __CYGWIN32__, for port to cygnus version 15216 B19.1 (patch by Andrew Sumner 15217 <andrew_sumner@hotmail.com>).</li> 15218 15219 <li>remove #define for hpux that turned on USE_SYSV_ENVVARS, 15220 since this causes some applications (such as 'less') to get 15221 incorrect $LINES and $COLUMNS values (reported by Clint 15222 Olsen).</li> 15223 15224 <li>modify behavior for HP-UX, to set the "reserved" process 15225 group controls to _POSIX_VDISABLE so the TIOCSLTC ioctl does 15226 not produce an error (patch by Ben Yoshino 15227 <ben@wiliki.eng.hawaii.edu>).</li> 15228 15229 <li>correct length of underlining, reducing it by one pixel to 15230 avoid leaving a dot when the application does not clear the 15231 whole screen I noticed this only recently myself (and other 15232 people as well); it depends on the font chosen. A 6x10 font 15233 shows it, but the other fonts from XTerm.ad do not. I also see 15234 a similar problem with the emulation of bold fonts. (patch by 15235 Sergei Laskavy <Laskavy@cs.msu.su>).</li> 15236 15237 <li>add include for Xos.h to xterm.h, to ensure proper 15238 definitions (reported by Holger Veit).</li> 15239 15240 <li>update config.guess to recognize Unixware 2.1 and 7 (patch 15241 by Mike Hopkirk <hops@sco.com>).</li> 15242 </ul> 15243 15244 <h1><a name="xterm_76" id="xterm_76">Patch #76 - 1998/5/8 - 15245 XFree86 3.9Ah and 3.3.2</a></h1> 15246 15247 <p>A fix for the print-window function, and some minor 15248 cleanup:</p> 15249 15250 <ul> 15251 <li>modify logic that closes pipe in the print-window function 15252 to not use pclose, which does not work on all systems, since I 15253 did not open the pipe with popen (reported by Stefan 15254 Dalibor).</li> 15255 15256 <li>correct name of $(EXTRA_LOAD_FLAGS) imake variable 15257 (reported by Stefan Dalibor).</li> 15258 15259 <li>guard logic in ChangeGroup() function against null pointer 15260 (reported by Stefan Dalibor).</li> 15261 15262 <li>ensure that menu entry for toggling sunKeyboard resource is 15263 initialized (reported by Branden Robinson 15264 <branden@purdue.edu>).</li> 15265 15266 <li>gcc unused-variable warnings (reported by Bernd Ernesti 15267 <bernd@arresum.inka.de>)</li> 15268 15269 <li>rename global variable 'buffer' to 'VTbuffer'</li> 15270 </ul> 15271 15272 <h1><a name="xterm_75" id="xterm_75">Patch #75 - 1998/5/7 - 15273 XFree86 3.9Ah and 3.3.2</a></h1> 15274 15275 <p>This incorporates fixes from several people, as well as some 15276 improvements that I made based on feedback from users:</p> 15277 15278 <ul> 15279 <li>add option to standalone configure script, 15280 "--with-own-terminfo-dir", which causes xterm to pass a 15281 predefined value of $TERMINFO to the application. Also use this 15282 value in install rule "make install-ti", for the standalone 15283 configure script. (patch & feedback from Tor Lillqvist 15284 <tml@hemuli.tte.vtt.fi>)</li> 15285 15286 <li>change ifdef's for "hpux" to "__hpux" (patch by Tor 15287 Lillqvist). The imake configuration uses the former, but the 15288 latter is predefined by HP's compilers.</li> 15289 15290 <li>define USE_SYSV_ENVVARS for HP-UX, curses does not use 15291 $TERMCAP (patch by Tor Lillqvist).</li> 15292 15293 <li>on HP-UX, use the /dev/ptym/clone device to allocate PTY's. 15294 Works both on HP-UX 9 and 10. (patch by Tor Lillqvist).</li> 15295 15296 <li>modify configure script to obtain the $(EXTRA_LOADFLAGS) 15297 value from imake, needed for compiling under DEC OSF/1 15298 (reported by Stefan Dalibor)</li> 15299 15300 <li>modify print-window action so that the printer is closed 15301 after printing a window, unless the printer was already opened 15302 (i.e., by an application running in the window). This makes the 15303 printing complete without having to exit xterm, since not all 15304 systems treat fflush through a pipe very well (reported by 15305 Stefan Dalibor)</li> 15306 15307 <li>modify printing code so that the ^M's are not printed if 15308 the printAttribute resource is set to zero (request by Stefan 15309 Dalibor).</li> 15310 15311 <li>correct typo in xterm.man, for the default value of 15312 printAttribute (reported by Stefan Dalibor).</li> 15313 15314 <li>correct printing code so that the alternate character set 15315 is printed, like other attributes, with escape sequences.</li> 15316 15317 <li>correct termcap description, removing spurious 'm' 15318 character from the 'op' capability (reported by Greg Woods 15319 <woods@weird.com>).</li> 15320 15321 <li>correct trace code so that the initial timestamp is 15322 set.</li> 15323 15324 <li>correct/modify utmp data for the Linux glibc 2 15325 configuration, so that the ut_line member is set before using 15326 it to update wtmp (patch by Bill Nottingham 15327 <wen1@cec.wustl.edu>).</li> 15328 </ul> 15329 15330 <h1><a name="xterm_74" id="xterm_74">Patch #74 - 1998/4/27 - 15331 XFree86 3.9Ag and 3.3.2</a></h1> 15332 15333 <p>This corrects a couple of recent bugs and adds a new 15334 resource:</p> 15335 15336 <ul> 15337 <li>modify definition of TRACE_CHILD so that it does not 15338 conflict with ifdef's for USE_USG_PTYS in main.c (reported by 15339 Vikas Agnihotri <VikasA@att.com> and Stefan 15340 Dalibor).</li> 15341 15342 <li>correct ownership of file (actually pipe) written by the 15343 print controls. When undoing the setuid changes in patch #69, I 15344 overlooked this. Now xterm forks a process which resets setuid 15345 and routes the printer data as the real user.</li> 15346 15347 <li>add a new resource, "printAttributes", which controls 15348 whether color attributes (or any attributes) are sent to the 15349 printer.</li> 15350 </ul> 15351 15352 <h1><a name="xterm_73" id="xterm_73">Patch #73 - 1998/4/25 - 15353 XFree86 3.9Ag and 3.3.2</a></h1> 15354 15355 <p>This patch does the following:</p> 15356 15357 <ul> 15358 <li>implements a print-window facility for xterm. Though useful 15359 in itself, I added it as part of some debugging which I am 15360 doing. (Occasionally during an exposure event xterm fails to 15361 restore the proper colors for highlighted text, and printing 15362 the screen will show the internal states nicely). 15363 <p>The print facility now also displays the color 15364 information. (I will probably make this a resource).</p> 15365 </li> 15366 15367 <li>modified the xterm-16color terminfo description to use the 15368 setaf and setab strings, which is a little more efficient 15369 (requested by Stephen Marley).</li> 15370 15371 <li>reduced some clutter of the ifdef/includes (e.g., stdlib.h, 15372 unistd.h, errno) making the configure script test for these. 15373 <p>I removed the symbols Size_t and Time_t, since they no 15374 longer serve a useful purpose.</p> 15375 </li> 15376 15377 <li>added some debugging traces to show the initial screen 15378 size, and the success/failure of the ioctl calls pass handle 15379 window resizing events to the application (for Clint Olsen). 15380 <p>I also modified the trace code to produce two files since 15381 some of the information is produced by the child process. So 15382 now they are Trace-parent.out and Trace-child.out</p> 15383 </li> 15384 15385 <li>updated configure test for ANSI compiler options to handle 15386 a special case for HP-UX 10.x (reported by Clint Olsen).</li> 15387 </ul> 15388 15389 <h1><a name="xterm_72" id="xterm_72">Patch #72 - 1998/4/17 - 15390 XFree86 3.9Ag and 3.3.2</a></h1> 15391 15392 <p>This is a patch from Chris Siebenmann 15393 <cks@hawkwind.utcs.toronto.edu>, which I have cleaned up a 15394 little, and integrated into the configure script.</p> 15395 15396 <p>From his description:</p> 15397 15398 <blockquote> 15399 <p>This set of patches is the latest incarnation of patches 15400 originally written by Ian! D Allen, then of the University of 15401 Waterloo and now of who knows where; I have been carrying them 15402 forward from xterm to xterm ever since about X11R4. What they 15403 do is add an option so that when an iconified xterm receives 15404 output it prepends '*** ' to its icon title and (optionally) 15405 beeps the bell; deiconifying the xterm removes the '*** '. Over 15406 the years I've found this to be incredibly convenient for 15407 monitoring all sorts of low-activity things.</p> 15408 </blockquote> 15409 15410 <h1><a name="xterm_71" id="xterm_71">Patch #71 - 1998/4/12 - 15411 XFree86 3.9Ag and 3.3.2</a></h1> 15412 15413 <p>This patch is a slightly modified version of one by Richard 15414 Braakman, which prevents buffer overflow in the input-method and 15415 preedit-type parsing in xterm. I changed a couple of details to 15416 make the code more maintainable, and looked for similar things - 15417 copying into a fixed-size buffer (found none, though I did spot 15418 an unused variable).</p> 15419 15420 <h1><a name="xterm_70" id="xterm_70">Patch #70 - 1998/3/29 - 15421 XFree86 3.9Af and 3.3.2</a></h1> 15422 15423 <p>This patch corrects some minor bugs in xterm, and fills in 15424 some more details in the VT220 emulation:</p> 15425 15426 <ul> 15427 <li>modify Imakefile to use SpecialCObjectRule for menu and 15428 data modules, making xterm build properly if logging is enabled 15429 (patch by Scott Sewall <scott@iprg.nokia.com>).</li> 15430 15431 <li>restore "ich" capability to terminfo entries, since Michael 15432 Schroeder points out that "ich1" is the one which is the 15433 problem in Solaris vi.</li> 15434 15435 <li>correct color of cursor, which would disappear on 15436 inverse-video since the initialization did not compare the 15437 cursor color against both foreground and background (reported 15438 by Olivier Calle).</li> 15439 15440 <li>correct abbreviation-test for -version and -help options, 15441 making command-line option -vb work (reported by Stefan 15442 Dalibor).</li> 15443 15444 <li>correct a dependency between ifdef's for OPT_I18N_SUPPORT 15445 and OPT_INPUT_METHOD (reported by Stefan Dalibor).</li> 15446 15447 <li>split-out character-set translations as new module 15448 charsets.c, to implement VT220 national replacement character 15449 sets (a mode where some of the characters are displayed as 15450 specific European glyphs). This relies on xterm using an ISO 15451 8859-1 font (approach suggested by Kenneth R. Robinette 15452 <zkrr01@mailbox.neosoft.com>).</li> 15453 15454 <li>correct a missing increment, which made SS2 and SS3 15455 controls repeat the shifted character.</li> 15456 15457 <li>add xterm-nrc to terminfo to illustrate the VT220 national 15458 replacement character sets.</li> 15459 15460 <li>reformat terminfo using new ncurses tic option "-f", which 15461 makes if/then/else/endif expressions easier to read.</li> 15462 </ul> 15463 15464 <h1><a name="xterm_69" id="xterm_69">Patch #69 - 1998/3/16 - 15465 XFree86 3.9Ad and 3.3.2</a></h1> 15466 15467 <p>This corrects the problem in xterm with utmp, reported by 15468 Olivier Calle <olivier@tc.fluke.com> as well as some other 15469 people after the XFree86 3.3.2 release.</p> 15470 15471 <p>The error was introduced by my <a href="#xterm_53">patch 15472 #53</a> in XFree86 3.9r (October 1997).</p> 15473 15474 <p>The correction removes the reset of setuid/setgid before the 15475 main event loop, and solves the problem which I had worked around 15476 in a different manner: for some reason, the particular waitpid() 15477 call in creat_as() hangs, does not return when the child process 15478 exits. I changed the ifdef's to force the Linux configuration to 15479 use wait() instead. This call appears to work properly on other 15480 platforms such as SunOS and Solaris.</p> 15481 15482 <p>I also added tests in the standalone configure script to check 15483 for the existence of waitpid().</p> 15484 15485 <h1><a name="xterm_68" id="xterm_68">Patch #68 - 1998/3/4 - 15486 XFree86 3.9Ad and 3.3.1z</a></h1> 15487 15488 <p>This corrects another problem with the logic for 15489 highlightColor resource. As reported by David Dawes:</p> 15490 15491 <blockquote> 15492 <p>I've just noticed a problem with with the "inverse" control 15493 sequence (ESC[7m) with the 3.3.2 xterm. What it does is sets 15494 the background black, and the text the usual foreground colour 15495 rather than simply swapping the foreground/background.</p> 15496 </blockquote> 15497 15498 <p>This appears to be because when I added logic to check that 15499 the highlightColor was distinct from foreground and background 15500 colors, I did not add a further check to see that it was not 15501 black (I would make an explicit check for the resource not being 15502 set, but see nothing definite in the headers that would let me 15503 reference an explicitly-undefined Pixel value, though there are 15504 some implications in xpm.h). But this should work.</p> 15505 15506 <h1><a name="xterm_67" id="xterm_67">Patch #67 - 1998/2/23 - 15507 XFree86 3.9Ad and 3.3.1e</a></h1> 15508 15509 <p>This patch does the following:</p> 15510 15511 <ul> 15512 <li>improve test for highlightColor so that xterm does not 15513 attempt to use that unless it is different from the foreground 15514 and background colors (reported by Stefan Dalibor 15515 <Stefan.Dalibor@informatik.uni-erlangen.de>. 15516 <p>I could not reproduce this until I noticed that the -rev 15517 option exposed it nicely.</p> 15518 </li> 15519 15520 <li>remove ich and ich1 from xterm and xterm-8bit terminfo 15521 descriptions. SVr4 terminfo documents that you must not combine 15522 these with smir/rmir, but ncurses allows it, opening a hole. 15523 Solaris 2.6 vi does not work properly if it is using a terminfo 15524 description when these are combined, since it was written to 15525 accommodate old terminals that required it (reported by Stephen 15526 Marley).</li> 15527 15528 <li>restore 1-pixel overlap of scrollbar border with left edge 15529 of window (reported by Jim Burmeister 15530 <jimb@metrolink.com>).</li> 15531 15532 <li>add a configure option, --enable-logfile-exec, which allows 15533 the user to specify a pipe for logfile. This defines 15534 ALLOWLOGFILEEXEC.</li> 15535 15536 <li>makes the ALLOWLOGFILEEXEC code compile & run, if 15537 configured.</li> 15538 15539 <li>minor documentation nits.</li> 15540 </ul> 15541 15542 <h1><a name="xterm_66" id="xterm_66">Patch #66 - 1998/2/16 - 15543 XFree86 3.9Ad and 3.3.1d</a></h1> 15544 15545 <p>This fixes the problem reported with failure to build the 15546 <em>resize</em> program (BSDI, OSF/1) due to not having 15547 <termcap.h>, by changing the ifdef to one that would be set 15548 only if the file exists (not currently specified, except by the 15549 standalone configure script). We do not really need to include 15550 <termcap.h> to build, but only for a clean compile, since 15551 it may declare the tgetent() prototype. I also updated the 15552 man-page for <em>resize</em>, since I had recently noticed that 15553 it can be used to resize <em>xterm</em> using the "Sun" control 15554 sequences option.</p> 15555 15556 <h1><a name="xterm_65" id="xterm_65">Patch #65 - 1998/2/14 - 15557 XFree86 3.9Ad and 3.3.1c</a></h1> 15558 15559 <p>This is a small patch to xterm's 8-bit terminal description. I 15560 noticed while testing ncurses that I had specified the wrong 15561 (VT100-style) codes for the F1-F4. Xterm only uses VT220-style 15562 function keys in 8-bit mode.</p> 15563 15564 <h1><a name="xterm_64" id="xterm_64">Patch #64 - 1998/2/8 - 15565 XFree86 3.9Ad</a></h1> 15566 15567 <p>This fixes the following problems with xterm:</p> 15568 15569 <ul> 15570 <li>save/restore the ANSI foreground and background colors with 15571 the other visible attributes in the save-cursor and 15572 restore-cursor operations. This works around a problem with 15573 vim, which apparently assumed that switching between the normal 15574 and alternate screens resets the colors (reported by Jim Battle 15575 <jb@chromatic.com>). 15576 <p>It would be nice to implement save/restore cursor as a 15577 stack (and solve this type of problem completely), but that 15578 would lead to incompatibility with applications which assume 15579 they are running with a VT100 or VT220.</p> 15580 </li> 15581 15582 <li>corrects behavior of a restore-cursor operation which does 15583 not follow a save-cursor (it is supposed to set the character 15584 sets to a known initial state).</li> 15585 15586 <li>extends the sunKeyboard resource (and menu toggle) to 15587 modify the home, end and delete keys on a Sun or PC editing 15588 keypad, making them generate codes compatible with DEC VT220's 15589 Find, Select and Remove keys.</li> 15590 15591 <li>corrects a length in checking command-line options, which 15592 caused the "-help" message to not work when X was not 15593 running.</li> 15594 15595 <li>add some detail to the man-page (requested by Jason Bacon 15596 <acadix@execpc.com>)</li> 15597 15598 <li>modify the standalone configure script to ignore the broken 15599 nsl and socket libraries on IRIX 6.2 (the ones on 5.2 also are 15600 broken, so this change just widens the check for the system 15601 version number).</li> 15602 </ul> 15603 15604 <h1><a name="xterm_63" id="xterm_63">Patch #63 - 1998/2/5 - 15605 XFree86 3.9Ad</a></h1> 15606 15607 <p>This is another patch from Bjorn Helgaas 15608 <helgaas@rsn.hp.com>, which I've reviewed (and learned 15609 some). Following are his notes:</p> 15610 15611 <p>I poked around some more and finally got xterm-62 to build and 15612 run cleanly on HP-UX 10.20. Here are the patches. They look sort 15613 of ugly, so here's a little explanation:</p> 15614 15615 <ul> 15616 <li>aclocal.m4: Removed side effects from the AC_CACHE_VAL 15617 commands in CF_FUNC_TGETENT. Previously, LIBS was set inside 15618 AC_CACHE_VAL, which worked fine the first time configure was 15619 run, but failed if there were cached values.</li> 15620 15621 <li>aclocal.m4: Added temporary setting of LIBS before 15622 AC_TRY_LINK in CF_FUNC_TGETENT. Previously, the last value set 15623 by the AC_TRY_RUN loop was used, so only -lcurses was 15624 checked.</li> 15625 15626 <li>configure.in: Added temporary setting of CPPFLAGS before 15627 AC_CHECK_HEADERS for X11 files. Previously 15628 <X11/DECkeysym.h> and <X11/Xpoll.h> were found only 15629 if they were in the compiler's default include directories, 15630 even if `--x-includes=DIR' had been used or AC_PATH_XTRA had 15631 found them elsewhere.</li> 15632 </ul> 15633 15634 <p>The problem on HP-UX was that we were linking with -lcurses 15635 rather than -ltermcap due to the second bullet above, and 15636 apparently something in HP-UX curses is broken. This seems very 15637 strange, because the only thing used is tgetent, which should 15638 affect any tty/pty configuration, but I lost interest in tracking 15639 down the exact problem.</p> 15640 15641 <h1><a name="xterm_62" id="xterm_62">Patch #62 - 1998/1/23 - 15642 XFree86 3.9Ac</a></h1> 15643 15644 <p>This is a patch mostly by Bjorn Helgaas 15645 <helgaas@dhc.net> (I added the os2main.c change, and a 15646 little of the documentation). From Bjorn's description:</p> 15647 15648 <ul> 15649 <li>If you use the "-hc <color>" option or set the 15650 "highlightColor" resource, text is highlighted by changing only 15651 the background color, rather than using reverse video. I find 15652 this easier to read, especially when selecting multi-colored 15653 text, and it is similar to the way Netscape shows 15654 selections.</li> 15655 15656 <li>Most of the code changes are under "#if 15657 OPT_HIGHLIGHT_COLOR". The principal exception is in screen.c, 15658 where I added a couple calls to resetXtermGC(). This seems like 15659 it could be a bug even without the color highlighting changes 15660 (though I don't pretend to understand all the logic).</li> 15661 </ul> 15662 15663 <h1><a name="xterm_61" id="xterm_61">Patch #61 - 1998/1/17 - 15664 XFree86 3.9Ac</a></h1> 15665 15666 <p>This patch modifies the reset behavior of xterm slightly:</p> 15667 15668 <ul> 15669 <li>change the terminfo entry so that rs1 (one of the strings 15670 used by the 'reset' program) does a hard reset rather than 15671 switching character sets. This is more in accord with other 15672 terminal descriptions.</li> 15673 15674 <li>modifies the treatment of hard reset by the xterm program 15675 to reset the saved lines.</li> 15676 15677 <li>corrects hard reset by also resetting user-defined keys, 15678 i.e., DECUDK.</li> 15679 </ul> 15680 15681 <h1><a name="xterm_60" id="xterm_60">Patch #60 - 1998/1/10 - 15682 XFree86 3.9Ab</a></h1> 15683 15684 <p>This fixes some minor bugs and adds new functionality:</p> 15685 15686 <ul> 15687 <li>add support for blinking text. 15688 <ul> 15689 <li>This does not actually cause the text to flash, but 15690 text with the blink attribute can be displayed in color, 15691 using new resources colorBL and colorBLMode.</li> 15692 15693 <li>If colors are not used, the blinking text will be 15694 displayed as before (just like bold). The main purpose of 15695 this is to make applications work properly when they assume 15696 the emulator supports blinking text.</li> 15697 15698 <li>I did this by moving the per-cell LINEWRAPPED flag to a 15699 per-line flag, to make room for the new BLINK flag. There 15700 were no per-line flags, so this changes a lot of 15701 logic.</li> 15702 </ul> 15703 </li> 15704 15705 <li>corrected missing save-cursor logic in the handling of SGR 15706 1048 (the new control sequence I added in patch #54, 15707 1997/10/17). Reported by Darren Hiebert.</li> 15708 15709 <li>flush the output of the transparent printing after each 15710 line Reported by Tomas Vanhala 15711 <vanhala@ling.helsinki.fi>.</li> 15712 15713 <li>correct the modes that are affected by save/restore cursor 15714 by adding WRAPAROUND and PROTECTED.</li> 15715 15716 <li>corrected placement of one of the XSync calls that I added 15717 in patch #51, 1997/9/15, which had the side-effect of writing 15718 on the window border when the xterm was resizing from 132 to 80 15719 columns.</li> 15720 15721 <li>work around an incompatibility of the XKB definition used 15722 in xterm versus that symbol from IRIX 6.2's imake definitions 15723 (by adjusting the standalone configure script).</li> 15724 </ul> 15725 15726 <h1><a name="xterm_59" id="xterm_59">Patch #59 - 1998/1/5 - 15727 XFree86 3.9Ab</a></h1> 15728 15729 <p>My last patch has an off-by-one error in the comparison for 15730 argc. Douglas Kosovic <douglask@dstc.edu.au> showed me 15731 where (he got a core dump). Also, I think this explains Clint 15732 Olsen's problem, but the symptoms were more subtle (EINVAL for a 15733 system call if the -display option is omitted).</p> 15734 15735 <h1><a name="xterm_58" id="xterm_58">Patch #58 - 1998/1/3 - 15736 XFree86 3.9Ab</a></h1> 15737 15738 <p>This patch does the following:</p> 15739 15740 <ul> 15741 <li>implement logic to permit xterm to work with proportional 15742 fonts. 15743 <ul> 15744 <li>Thomas Wolff <Thomas.Wolff@sietec.de> requested 15745 this (but it isn't exactly what he's asking for - that's a 15746 more involved task).</li> 15747 15748 <li>I chose to do this by rendering the characters on a 15749 fixed pitch, because it would not be useful for existing 15750 applications to display varying numbers of characters on 15751 each line.</li> 15752 15753 <li>Except that this forces the display to be wider, it 15754 works reasonably well. A couple of special cases (reverse + 15755 colorBD, for example) do not display with proper colors, 15756 since the inter-character gaps are painted with the 15757 background.</li> 15758 </ul> 15759 </li> 15760 15761 <li>added a version number to the program (several people have 15762 requested this).</li> 15763 15764 <li>make the -version and -help options interpreted before the 15765 program attempts to open the display.</li> 15766 15767 <li>minor reorganization of the man-page (ordered the options, 15768 resources and translations alphabetically - and eliminated some 15769 duplication).</li> 15770 15771 <li>corrected a misspelled filename in Makefile.in, and added a 15772 lint rule.</li> 15773 15774 <li>updated the configure script to correct behavior when it 15775 cannot find imake, as well as to fix the IRIX+gcc build 15776 (conflict with /usr/include).</li> 15777 15778 <li>regenerated the configure script with a newer patch to 15779 autoconf that fixes a problem with environment space vs the 15780 configure --help message.</li> 15781 </ul> 15782 15783 <h1><a name="xterm_57" id="xterm_57">Patch #57 - 1997/12/26 - 15784 XFree86 3.9Aa</a></h1> 15785 15786 <p>This patch is mostly concerned with the standalone configure 15787 script; a few minor corrections are added:</p> 15788 15789 <ul> 15790 <li>add configure option --disable-tek4014, to allow xterm to 15791 be built without the tek4014 emulation.</li> 15792 15793 <li>add configure option --with-terminal-type, to allow xterm 15794 to be compiled with default $TERM value other than "xterm" 15795 (e.g., "xterm-16color") -- requested by Stephen Marley 15796 <stephen@memex.com>.</li> 15797 15798 <li>fix a typo in the configure --help message -- reported by 15799 Darren Hiebert <darren@hmi.com>.</li> 15800 15801 <li>review diffs between main.c and os2main.c, to make them 15802 more alike. (applies some minor bug-fixes to OS/2's 15803 version).</li> 15804 15805 <li>add missing quotes in memmove/bcopy configure test</li> 15806 </ul> 15807 15808 <h1><a name="xterm_56" id="xterm_56">Patch #56 - 1997/11/28 - 15809 XFree86 3.9x</a></h1> 15810 15811 <p>This patch is based on analysis by Arfst Ludwig 15812 <arfst@luxor.IN-Berlin.DE>, who reported:</p> 15813 15814 <blockquote> 15815 <p>Setting the following resources xterm (all current versions) 15816 receives a segmentation fault on <Btn2Up> after 15817 scrolling:</p> 15818 15819 <pre> 15820 *XTerm*VT100*translations: #override \ 15821 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\ 15822 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1)\n\ 15823 ~Shift<BtnUp>: select-end(PRIMARY, CUT_BUFFER0)\n\ 15824 Shift<BtnUp>: select-end(CLIPBOARD, CUT_BUFFER1) 15825</pre> 15826 <p>(The above resources intention is to be able to paste the 15827 latest selection even if the xterm was cleared.)</p> 15828 15829 <p>And here is how it works (and a fix!): The widget given to 15830 the action handler as first argument is not guaranteed to be a 15831 XtermWidget (it can be the ScrollbarWidget). Instead of 15832 accessing the widget's member directly XtDisplay gives the 15833 required pointer in a safe way.</p> 15834 </blockquote> 15835 15836 <p>I noticed that this was not the only instance (by reading the 15837 code, and testing with his example), and extended the solution to 15838 check the widget-class to ensure that it is indeed xterm's widget 15839 class before attempting to use it in the context of 15840 translations.</p> 15841 15842 <h1><a name="xterm_55" id="xterm_55">Patch #55 - 1997/11/25 - 15843 XFree86 3.9x</a></h1> 15844 15845 <p>This fixes the segmentation violation noted by Rogier Wolff 15846 about a month ago. He'd set xterm to 400 (rows) by 150 columns, 15847 which broke because there were limited buffers (200 rows) used 15848 for juggling data when adding or deleting lines and for switching 15849 between alternate and normal screens. I replaced this by an 15850 allocated buffer.</p> 15851 15852 <p>The bug is simple to test if you set titeInhibit false.</p> 15853 15854 <h1><a name="xterm_54" id="xterm_54">Patch #54 - 1997/10/17 - 15855 XFree86 3.9s</a></h1> 15856 15857 <p>This patch does the following:</p> 15858 15859 <ul> 15860 <li>correct a minor placement problem with the right 15861 scrollbar.</li> 15862 15863 <li>implement a new set of control sequences for switching 15864 between the normal and alternate VT100 screens. These work 15865 around the older sequences limitation that required 15866 modification of the runtime $TERMCAP to cooperate with the 15867 titeInhibit resource (that can't work with terminfo). I do this 15868 by moving all of the functionality of the rmcur terminfo 15869 capability into the control sequences.</li> 15870 15871 <li>implement the alternate-screen menu entry</li> 15872 </ul> 15873 15874 <h1><a name="xterm_53" id="xterm_53">Patch #53 - 1997/10/12 - 15875 XFree86 3.9r</a></h1> 15876 15877 <p>This patch adds a fix and implements a new feature (as well as 15878 some minor typos):</p> 15879 15880 <ul> 15881 <li>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a 15882 problem with the wait call with the logging option. It hung 15883 when the logfile was opened as a command-line option. I fixed 15884 this by moving the StartLogging() call down past the place 15885 where I'd reset the setuid mode. So the logfile is opened as 15886 the real user, without having to fork.</li> 15887 15888 <li>improve Rohleder's changes by renaming the command-line 15889 options and reducing the number of ifdef's.</li> 15890 15891 <li>implement right-scrollbars for xterm (patch by Michael 15892 Rohleder <michael.rohleder@stadt-frankfurt.de>).</li> 15893 </ul> 15894 15895 <h1><a name="xterm_52" id="xterm_52">Patch #52 - 1997/9/29 - 15896 XFree86 3.9q</a></h1> 15897 15898 <p>This patch addresses bugs and requests reported by</p> 15899 15900 <ul> 15901 <li>Bob Maynard <rmaynard@montana.com>,</li> 15902 15903 <li>Clint Olsen <olsenc@ichips.intel.com>,</li> 15904 15905 <li>JCHANDRA@Inf.COM (JCHANDRA),</li> 15906 15907 <li>Michael Schroeder 15908 <Michael.Schroeder@informatik.uni-erlangen.de>,</li> 15909 15910 <li>Pablo Ariel Kohan <pablo@memco.co.il></li> 15911 </ul> 15912 15913 <p>Some of the changes are interrelated (it was an unusually busy 15914 week).</p> 15915 15916 <ul> 15917 <li>change the default resource value for colorMode to true, 15918 matching the Xterm.ad file.</li> 15919 15920 <li>correct behavior of 'ech' control, making the default and 0 15921 parameters erase one character rather than to the end of line 15922 (reported by Michael Schroeder).</li> 15923 15924 <li>add resource boldColors, command-line options +pc and -pc 15925 and configure-script option to specify behavior of xterm's 15926 mapping bold colors 0 through 7 to colors 8 through 15. 15927 (request by Pablo Ariel Kohan).</li> 15928 15929 <li>add resource colorAttrMode to specify whether colorULMode 15930 and colorBDMode can override the ANSI colors (report by Clint 15931 Olsen).</li> 15932 15933 <li>correct a conflict between colorULMode/colorBDMode versus 15934 ANSI colors, where exposure events would occasionally pick up 15935 the former (e.g., colorBD) rather than ANSI colors. Testing the 15936 colorAttrMode made this apparent, though it has been in the 15937 code since 3.2A (<a href="#xterm_35">patch #35</a> in Jan 15938 1997).</li> 15939 15940 <li>correct two problems with the optional logging support. On 15941 Linux at least, the waitpid call in creat_as hangs when the 15942 logging is toggled from the popup menu. Also, the mktemp 15943 template has the wrong number of X's (since X11R5!). Fixed the 15944 waitpid problem by exploiting the fact that the setuid behavior 15945 is reset before the popup menus are available. (reported by 15946 Jayachandran C.).</li> 15947 15948 <li>add configure script options for building with the Xaw3d 15949 and neXtaw libraries.</li> 15950 15951 <li>correct CF_IMAKE_CFLAGS standalone configure script macro, 15952 so that it will pick up $(ALLDEFINES) rather than 15953 $(STD_DEFINES). This is needed to make scrollbars work on 15954 Linux, since that uses narrow prototypes. (reported by Bob 15955 Maynard).</li> 15956 15957 <li>various minor updates to configure-script macros.</li> 15958 </ul> 15959 15960 <h1><a name="xterm_51" id="xterm_51">Patch #51 - 1997/9/15 - 15961 XFree86 3.9p</a></h1> 15962 15963 <p>Most of this patch is related to the standalone configure 15964 script, though there are fixes/enhancements as well:</p> 15965 15966 <ul> 15967 <li>add a new resource sunKeyboard, with associated 15968 command-line option and menu-toggle that allows using a normal 15969 Sun or PC keyboard to generated the complete DEC-style function 15970 keys and keypad.</li> 15971 15972 <li>correct a reversed foreground/background test in the 15973 control sequence that replies with the current SGR 15974 settings.</li> 15975 15976 <li>correct, by invoking XSync, a display problem that caused 15977 the program to not properly update newly exposed areas when a 15978 font change or 80/132 resize request was not completely 15979 accepted.</li> 15980 15981 <li>restructured autoconf macros (I made a library of all of 15982 the macros across the complicated configure scripts I'm working 15983 on).</li> 15984 15985 <li>use the autoconf config.guess and config.sub scripts to 15986 better identify the host-os.</li> 15987 15988 <li>improve the configure script that uses 'imake' as a 15989 fallback for definitions.</li> 15990 15991 <li>correct several instances of unsigned/signed mixed 15992 expressions.</li> 15993 </ul> 15994 15995 <p>I've tested the configure script on Linux, SunOS 4.1.3, 15996 Solaris 2.5.1, IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but 15997 the last run properly as well).</p> 15998 15999 <h1><a name="xterm_50" id="xterm_50">Patch #50 - 1997/8/22 - 16000 XFree86 3.9m</a></h1> 16001 16002 <p>This is a collection of small fixes, and a couple of minor 16003 enhancements:</p> 16004 16005 <ul> 16006 <li>plug a security hole in the implementation of Media Copy 16007 (print) by invoking setuid just before the main loop.</li> 16008 16009 <li>add an ifdef'd include for <sys/termio.h> for HP-UX, 16010 which allows the program to process SIGWINCH events (this is a 16011 bug in X11R6.3)</li> 16012 16013 <li>add state-table entries for VT52 emulation to enter/exit 16014 keypad application mode.</li> 16015 16016 <li>disable the popup-menu entry for 8-bit controls when the 16017 terminal-id is less than 200 (e.g., VT52 or VT100).</li> 16018 16019 <li>ensure that the popup-menu entry for 8-bit controls is 16020 updated when the application enables/disables this mode, 16021 including the response to a full-reset.</li> 16022 16023 <li>implement VT300 DECBKM feature: set interpretation of the 16024 backarrow key to either backspace or delete. The initial 16025 setting is via resource; it can also be modified in the main 16026 popup menu.</li> 16027 16028 <li>implement VTxxx KAM (ISO AM), which allows a keyboard to be 16029 locked (i.e., the terminal discards input).</li> 16030 16031 <li>implement VTxxx SRM, which is used to control local echoing 16032 of input on the terminal.</li> 16033 16034 <li>add terminfo and termcap entries for xterm-8bit, a 16035 variation of the xterm description that uses 8-bit control 16036 characters.</li> 16037 16038 <li>add fallback definitions for Imakefile to allow it to work 16039 on some X11R5 systems that have no SpecialCObjectRule or 16040 ProgramTargetName macros.</li> 16041 16042 <li>add .c.o and .c.i rules to standalone Makefile.in</li> 16043 16044 <li>correct order of -lXmu and -lXext in standalone configure 16045 script.</li> 16046 16047 <li>add configure script options to allow selective disabling 16048 of active-icon, input-method and i18n code (mainly for users 16049 with X11R5 or an incomplete X11R6 configuration).</li> 16050 16051 <li>change menu-indices from #define's to enum values, thereby 16052 making it work better with the ifdef's for logging and 16053 active-icon (the X11R6.3 active-icon code is incorrectly 16054 ifdef'd; this corrects an error introduced by incorporating 16055 that code).</li> 16056 16057 <li>correct minor compile errors in the configuration where 16058 active-icon is not used.</li> 16059 16060 <li>add configure option to suppress echoing of long compiler 16061 commands</li> 16062 16063 <li>correct spelling of decTerminalID in configure script help 16064 message</li> 16065 16066 <li>use gcc __attribute__((unused)) to quiet warnings about 16067 unused parameters when compiling with -W (to make it simpler to 16068 find the real problems).</li> 16069 </ul> 16070 16071 <h1><a name="xterm_49" id="xterm_49">Patch #49 - 1997/8/10 - 16072 XFree86 3.9k</a></h1> 16073 16074 <p>This patch implements the VT100/VT220 Media Copy (i.e., 16075 print-screen) control sequences.</p> 16076 16077 <h1><a name="xterm_48" id="xterm_48">Patch #48 - 1997/7/26 - 16078 XFree86 3.9j</a></h1> 16079 16080 <p>This patch does the following (all but the first affect only 16081 the standalone configure script):</p> 16082 16083 <ul> 16084 <li>minor correction to positioning of underlines for small 16085 (e.g., 5x8) font size. 16086 <p>The existing behavior allowed underlines to be drawn 16087 outside the character-cell, so they weren't cleared properly 16088 under some circumstances.</p> 16089 </li> 16090 16091 <li>adds more special-case tokens to the standalone configure 16092 script's imake-option filter (e.g., "&&", since a "make 16093 -n main.o" on my IRIX system uses that shell construct).</li> 16094 16095 <li>adds a '--enable-logging' option for the standalone 16096 configure script.</li> 16097 16098 <li>adds check and ifdef's for the standalone configure script 16099 to allow for building on platforms with X11R6, which lacks 16100 Xpoll.h (introduced in X11R6.1).</li> 16101 </ul> 16102 16103 <h1><a name="xterm_47" id="xterm_47">Patch #47 - 1997/7/13 - 16104 XFree86 3.9i</a></h1> 16105 16106 <p>This patch does the following</p> 16107 16108 <ul> 16109 <li>corrects an indexing error in the doublesize character 16110 logic (button.c) that caused core dump (this was reported by J. 16111 Wunsch).</li> 16112 16113 <li>corrects the logic of ShowCursor when it is painting in a 16114 doublesize cell (charproc.c).</li> 16115 16116 <li>corrects, according to vttest, the behavior when switching 16117 to doublesize characters and back again (doublechr.c).</li> 16118 16119 <li>adds cbt (back_tab) to the terminfo description (this was 16120 something that I'd overlooked as applicable to curses 16121 optimization last summer).</li> 16122 16123 <li>corrects, for the standalone xmc test, the logic for 16124 disabling xmc.</li> 16125 </ul> 16126 16127 <h1><a name="xterm_46" id="xterm_46">Patch #46 - 1997/7/4 - 16128 XFree86 3.9h</a></h1> 16129 16130 <p>This is a patch to provide test-support for some work I'm 16131 doing on ncurses. It does not modify the normal configuration of 16132 xterm; the code is compiled if the standalone configure option 16133 "--enable-xmc-glitch" is specified.</p> 16134 16135 <h1><a name="xterm_45" id="xterm_45">Patch #45 - 1997/7/2 - 16136 XFree86 3.9h</a></h1> 16137 16138 <p>This fixes the problem reported with xterm's cursor color 16139 versus the background (the second chunk in this patch) and also 16140 removes some duplicate initialization of the cursor GC's. If the 16141 cursor color at startup is the same as the background, then xterm 16142 will use the reverse GC, ignoring the setting of the colorMode 16143 resource.</p> 16144 16145 <h1><a name="xterm_44" id="xterm_44">Patch #44 - 1997/6/22 - 16146 XFree86 3.9g</a></h1> 16147 16148 <p>This implements the first part of the VT100 doublesize 16149 characters for xterm, as well as fixing a handful of bugs:</p> 16150 16151 <ul> 16152 <li>the doublesize character support uses the normal font 16153 (using scaled fonts will be another patch) with blanks to 16154 simulate doublesize characters. This patch does most of the 16155 global changes that'll be required. I've hidden most of the 16156 details in macros and ifdef's so it's easy to configure out 16157 (part of the patch is a configure option for that 16158 purpose).</li> 16159 16160 <li>corrected limits in DeleteChar() function -- it's always 16161 ignored the size of the left border and scrollbar. I noticed 16162 this when working on the doublesize characters since the glitch 16163 was doubled in size (i.e., it wrapped some garbage around the 16164 right margin).</li> 16165 16166 <li>corrected 'memmove()' logic, for standalone builds (it 16167 referenced a malloc wrapper from my development library).</li> 16168 16169 <li>add a check for HideCursor() to prevent repeated screen 16170 updates (which can cause a spurious cursor glitch to appear, 16171 e.g., during scrolling). I noticed this with the 3.2A version 16172 (but only a few weeks ago, when I started working on this 16173 patch).</li> 16174 </ul> 16175 16176 <h1><a name="xterm_43" id="xterm_43">Patch #43 - 1997/6/10 - 16177 XFree86 3.9d</a></h1> 16178 16179 <p>Here's a fix for two problems:</p> 16180 16181 <ul> 16182 <li>modify handling of tgetent results in xterm and resize 16183 programs to make them tolerant of missing termcap file, or 16184 unknown terminal name. In this scheme, an explicit "-tn" option 16185 will succeed, overriding the fallback list.</li> 16186 16187 <li>a nit in the configure script (log extra information to 16188 help diagnose which case of the test-compile of tgetent was 16189 used).</li> 16190 </ul> 16191 16192 <h1><a name="xterm_42" id="xterm_42">Patch #42 - 1997/6/8 - 16193 XFree86 3.2Xl</a></h1> 16194 16195 <p>Bram Moolenaar reported that the cursor color changed 16196 unexpectedly while scrolling. The cause was that it used the same 16197 GC's as the logic that draws the ANSI colors. The bug only 16198 appears if the cursorColor resource isn't set, and has been 16199 present since the initial implementation early last year. (The 16200 same bug also appears in rxvt ;-). Here's a fix.</p> 16201 16202 <h1><a name="xterm_41" id="xterm_41">Patch #41 - 1997/5/28 - 16203 XFree86 3.2Xl</a></h1> 16204 16205 <p>Some nits found by Darren Hiebert (missing part of 16206 install-rule, incorrect assignment for --enable-color-mode 16207 option).</p> 16208 16209 <h1><a name="xterm_40" id="xterm_40">Patch #40 - 1997/5/26 - 16210 XFree86 3.2Xl</a></h1> 16211 16212 <p>Patch for the configure script's logic for obtaining imake 16213 predefined symbols.</p> 16214 16215 <h1><a name="xterm_39" id="xterm_39">Patch #39 - 1997/5/24 - 16216 XFree86 3.2Xl</a></h1> 16217 16218 <p>This patch does the following:</p> 16219 16220 <ul> 16221 <li>integrate the 16-color change for 'xterm'</li> 16222 16223 <li>minor fixes/clarification of tgetent in terminfo vs termcap 16224 to 'resize'</li> 16225 </ul> 16226 16227 <p>(both changes also modify the configure script)</p> 16228 16229 <h1><a name="xterm_38" id="xterm_38">Patch #38 - 1997/5/22 - 16230 XFree86 3.2Xh</a></h1> 16231 16232 <p>This implements a simple configuration script with autoconf 16233 (to which I'll add more options later). It does the 16234 following:</p> 16235 16236 <ul> 16237 <li>configures xterm to build with X11R5 (at least on SunOS 16238 4.1, Solaris 2.4, possibly IRIX - sorry network was down today, 16239 but I did test an earlier version yesterday).</li> 16240 16241 <li>enables/disables the configuration ifdef's for ANSI color 16242 and VT52 emulation.</li> 16243 </ul> 16244 16245 <p>It does not make tests for the things that imake does (that's 16246 another project), instead it uses a hybrid of the autoconf tests 16247 for libraries and adds imake's compiler options (which are 16248 necessary in some cases to get main.c to compile).</p> 16249 16250 <h1><a name="xterm_37" id="xterm_37">Patch #37 - 1997/5/7 - 16251 XFree86 3.9a</a></h1> 16252 16253 <p>This corrects a minor, but annoying error in the vt220 16254 emulation: the DECUDK is only supposed to be interpreted for 16255 _shifted_ function keys.</p> 16256 16257 <h1><a name="xterm_36" id="xterm_36">Patch #36 - 1997/1/16 - 16258 XFree86 3.2r</a></h1> 16259 16260 <p>This corrects something that I overlooked in patch #27 16261 (21-aug-1996), which is that when trimming the region to be 16262 repainted for the highlightSelection resource of xterm, I still 16263 have to paint the background past the highlighted region. This 16264 only happens when I first do a selection in a window that's 16265 partly off-screen, then move the window on-screen.</p> 16266 16267 <h1><a name="xterm_35" id="xterm_35">Patch #35 - 1997/1/7 - 16268 XFree86 3.2o</a></h1> 16269 16270 <p>This patch does the following:</p> 16271 16272 <ul> 16273 <li>combines the coding for foreground and background colors 16274 into a single byte, reducing the memory required to store 16275 saved-lines in color. (I'll take back that byte in a following 16276 patch to use to ensure the character-set, so there's no 16277 long-term decrease in memory use).</li> 16278 16279 <li>modifies the PF1-PF4 coding in termcap/terminfo. Because 16280 xterm is still by default emulating vt100, the function key 16281 codes are vt100-compatible (I overlooked this in patch #31). I 16282 also reformatted the whole terminfo file into a single-column, 16283 for consistency.</li> 16284 16285 <li>adds an interim xterm-vt220 description to accommodate the 16286 old and new styles of function-keys (though probably it'd be 16287 better to drop the old-style altogether).</li> 16288 </ul> 16289 16290 <h1><a name="xterm_34" id="xterm_34">Patch #34 - 1997/1/5 - 16291 XFree86 3.2o</a></h1> 16292 16293 <p>This patch does the following:</p> 16294 16295 <ul> 16296 <li>implement DECSTR (soft terminal reset). The biggest diff is 16297 due to adding another state table (note that there's only one 16298 useful state here, but it's only 256 bytes rather than 1k as it 16299 would have been before I reduced the size of state 16300 entries).</li> 16301 16302 <li>some minor tidying up (e.g., signed/unsigned use bitcpy, 16303 MODE_DECCKM, resetColor, resetCharsets). More is done in 16304 <a href="#xterm_35">patch #35</a>.</li> 16305 </ul> 16306 16307 <p>I got the description of DECSTR from a vt420 user's manual. 16308 I'll do some testing with vttest to ensure that there's nothing 16309 else to do than what was documented.</p> 16310 16311 <h1><a name="xterm_33" id="xterm_33">Patch #33 - 1996/11/24 - 16312 XFree86 3.2</a></h1> 16313 16314 <p>This adds to the reset-fix by Matthieu Herrb 16315 <Mathieu.Herrb@mipnet.fr> a small change to make xterm able 16316 to output 8-bit characters in VT100 mode. Applications that run 16317 on real VT100's don't do that anyway, and this feature should be 16318 removed sometime after finishing off the VT220 emulation (VT220's 16319 can do 8-bit characters). That would be a good time to change the 16320 default terminal-id to 220.</p> 16321 16322 <h1><a name="xterm_32" id="xterm_32">Patch #32 - 1996/11/21 - 16323 XFree86 3.2</a></h1> 16324 16325 <p>This implements the REP (repeat) control for xterm. That isn't 16326 part of the DEC VTxxx series, but is defined in ISO 6429. (Note 16327 that the base xterm terminal description is <em>not</em> changed 16328 -- I added a variant, "xterm-rep").</p> 16329 16330 <h1><a name="xterm_31" id="xterm_31">Patch #31 - 1996/11/16 - 16331 XFree86 3.2</a></h1> 16332 16333 <p>This implements vt52 emulation in xterm (ifdef'd so it can be 16334 removed). I've been using it for testing for the past month or 16335 so.</p> 16336 16337 <h1><a name="xterm_30" id="xterm_30">Patch #30 - 1996/11/16 - 16338 XFree86 3.2</a></h1> 16339 16340 <p>From bug-report by <auroux@clipper.ens.fr> (Denis 16341 Auroux), missing reset to ground state. I checked through the 16342 rest of <em>that</em> table and found another, in the 16343 unimplemented MC (screen print).</p> 16344 16345 <h1><a name="xterm_29" id="xterm_29">Patch #29 - 1996/9/15 - 16346 XFree86 3.1.2Gb</a></h1> 16347 16348 <p>This patch does the following:</p> 16349 16350 <ul> 16351 <li>corrects the restoration of color for bold/underline color 16352 mode</li> 16353 16354 <li>adds a resource 'decTerminalID' to control the reporting 16355 level of xterm (e.g., VT100, VT220).</li> 16356 16357 <li>uses the new resource to implement/correct the DA1, DA2 and 16358 DECRPTUI reports.</li> 16359 16360 <li>change valid-response code in DECRQSS from 0 to 1 (the 16361 manual says 0, but the VT420 terminal I've been testing on says 16362 1).</li> 16363 </ul> 16364 16365 <p>All of these changes are based on vttest 2.6</p> 16366 16367 <p>(Most of the volume in the patch is to add 2 more state tables 16368 for parsing the 2nd/3rd device-attribute controls).</p> 16369 16370 <h1><a name="xterm_28" id="xterm_28">Patch #28 - 1996/8/31 - 16371 XFree86 3.1.2F</a></h1> 16372 16373 <p>This patch corrects the following reported by Roland Rosenfeld 16374 <roland@spinnaker.rhein.de>:</p> 16375 16376 <ul> 16377 <li>handle SGR 22, 24 and 25 in combination with colorUL and 16378 colorBD resources. Also noted & fixed reset of colored 16379 underline/bold with SGR 0.</li> 16380 16381 <li>a typo in the termcap (missing '['), from 3.1.2Dj (my 16382 error)</li> 16383 </ul> 16384 16385 <p>Roland also complained that he couldn't use box characters 16386 with</p> 16387 16388 <pre> 16389 -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1 16390</pre> 16391 <p>but that's a known xterm limitation (the box characters must 16392 be part of the font, in the first 32 locations).</p> 16393 16394 <h1><a name="xterm_27" id="xterm_27">Patch #27 - 1996/8/21 - 16395 XFree86 3.1.2Ek</a></h1> 16396 16397 <p>This patch fixes one of my long-term gripes: xterm's selection 16398 doesn't clearly show what's being selected (as per David's 16399 request, it's controlled by a resource, which defaults to the 16400 older behavior).</p> 16401 16402 <h1><a name="xterm_26" id="xterm_26">Patch #26 - 1996/8/20 - 16403 XFree86 3.1.2Ei</a></h1> 16404 16405 <p>Here's a patch to fix a problem with xterm's cut/paste and 16406 another to modify the appearance of the highlighting while 16407 selecting. (The changes are independent, so you can see if the 16408 change to screen.c is desirable).</p> 16409 16410 <h1><a name="xterm_25" id="xterm_25">Patch #25 - 1996/8/18 - 16411 XFree86 3.1.2Ei</a></h1> 16412 16413 <p>Here's a correction for two minor bugs that I picked up in 16414 testing, plus some lint (from Solaris 2.5) where NULL was used 16415 incorrectly:</p> 16416 16417 <ul> 16418 <li>make the second alternate font the same as the first 16419 (that's what vt420 and dtterm do)</li> 16420 16421 <li>corrected DECSCL report when DECSCL hasn't been set (i.e., 16422 don't return a '60').</li> 16423 </ul> 16424 16425 <h1><a name="xterm_24" id="xterm_24">Patch #24 - 1996/8/11 - 16426 XFree86 3.1.2Ee</a></h1> 16427 16428 <p>This patch does several things. In effect, xterm can (I think) 16429 do a reasonably good job of emulating vt220 and vt320 terminals 16430 (as well as it was doing vt100, at any rate ;-).</p> 16431 16432 <p>It does NOT do:</p> 16433 16434 <ul> 16435 <li>soft fonts</li> 16436 16437 <li>rigel or sixel graphics</li> 16438 </ul> 16439 16440 <p>Anyway, I:</p> 16441 16442 <ul> 16443 <li>added ECH, CPL, CNL, SU, SD, CBT, CHT controls</li> 16444 16445 <li>added popup-menu for switching between DEC and Sun function 16446 keys. (corrected alignment err wrt logging entry at that 16447 point).</li> 16448 16449 <li>make xterm recognize both 8-bit and 7-bit controls 16450 (including popup menu for switching modes).</li> 16451 16452 <li>add user-definable function keys (aka DECUDK)</li> 16453 16454 <li>support concealed text</li> 16455 16456 <li>support protected text (both ISO compatible and DEC 16457 compatible - that's not the same thing, btw), with SPA, EPA, 16458 DECSCA, DECSED, DECSEL controls.</li> 16459 16460 <li>implement DECSCL.</li> 16461 </ul> 16462 16463 <p>I'll be continuing to test this patch for a while, but don't 16464 expect to add any new functionality (it passes all of the current 16465 tests I've built in vttest, but I need to make more tests)..</p> 16466 16467 <h1><a name="xterm_23" id="xterm_23">Patch #23 - 1996/7/31 - 16468 XFree86 3.1.2Ec</a></h1> 16469 16470 <p>This removes the blinking cursor I added last week (for 16471 performance reasons). Time-permitting, I'll revisit this after 16472 3.2 is released (there <em>will</em> be more work after XFree86 16473 3.2, I assume).</p> 16474 16475 <h1><a name="xterm_22" id="xterm_22">Patch #22 - 1996/7/26 - 16476 XFree86 3.1.2Ec</a></h1> 16477 16478 <p>I looked more closely at my "double-negative" and realized 16479 that I had been confused by the default color scheme (black on 16480 white) in combination with reverse video. However, I did see that 16481 the original_fg and original_bg data weren't really used - so I 16482 removed that logic.</p> 16483 16484 <p>Also:</p> 16485 16486 <ul> 16487 <li>during initialization, check if ANSI colors are set with 16488 non fg/bg values, disable color mode if not. This makes xterm 16489 tolerant of applications that allocate the whole color 16490 map.</li> 16491 16492 <li>implemented blinking cursor (default is <em>off</em>)</li> 16493 </ul> 16494 16495 <h1><a name="xterm_21" id="xterm_21">Patch #21 - 1996/7/24 - 16496 XFree86 3.1.2Ec</a></h1> 16497 16498 <p>This patch does the following:</p> 16499 16500 <ul> 16501 <li>fixes some minor typography in the control-sequences 16502 documentation (it didn't occur to me til I'd sent the last 16503 patch that I could use ghostview for previewing the troff 16504 output ;-)</li> 16505 16506 <li>adjusts the shell's background color in ReverseVideo so 16507 that flicker in resizing is reduced</li> 16508 16509 <li>adds an ifdef OPT_ISO_COLORS to allow configuring xterm 16510 without the ISO color support (saves a lot of memory)</li> 16511 16512 <li>used that ifdef to isolate/modify logic so that if the user 16513 doesn't have the colorMode enabled, then ISO color support is 16514 disabled (saving memory). 16515 <p>(If anyone needs numbers, I had savedLines set to 2000, 16516 and found a reduction from ~700k to ~400k of allocated 16517 memory, according to Purify).</p> 16518 </li> 16519 </ul> 16520 16521 <h1><a name="xterm_20" id="xterm_20">Patch #20 - 1996/7/24 - 16522 XFree86 3.1.2Ec</a></h1> 16523 16524 <p>This documents the changes in control sequences for window 16525 operations that I added in my previous patch. I'm testing another 16526 patch that allows the user to use less memory if colors aren't 16527 needed.</p> 16528 16529 <h1><a name="xterm_19" id="xterm_19">Patch #19 - 1996/7/21 - 16530 XFree86 3.1.2Ec</a></h1> 16531 16532 <p>This patch does the following:</p> 16533 16534 <ul> 16535 <li>fixes the core dump that I reported on IRIX 5.2 (in main.c) 16536 <p>(it's worth noting that this bug exists in X11R6.1, so I'd 16537 like to assume that someone's already submitted a fix to X 16538 Consortium...)</p> 16539 </li> 16540 16541 <li>change the interpretation of zero rows or columns in a 16542 resize-window request to use the root window's size (looking 16543 more carefully at dtterm, that seems to be what it does).</li> 16544 16545 <li>change some memmove calls to memcpy for slightly better 16546 performance. also, a couple of memset calls to bzero, since 16547 Quantify says bzero runs 20% faster, I assume because there's 16548 one less argument.</li> 16549 16550 <li>interpret character sets 1 and 2 (so that vttest gives a 16551 reasonable result) Both rxvt and dtterm do something 16552 equivalent.</li> 16553 16554 <li>fix a minor memory leak in the logic that retrieves the 16555 window or icon names (Purify found this for me while I ran 16556 vttest).</li> 16557 </ul> 16558 16559 <h1><a name="xterm_18" id="xterm_18">Patch #18 - 1996/7/18 - 16560 XFree86 3.1.2Ec</a></h1> 16561 16562 <p>This implements the following:</p> 16563 16564 <ul> 16565 <li>escape sequences that act like the CDE dtterm's window 16566 operations (though I have implemented the default width and 16567 height -- I've seen a rather buggy dtterm running that seems to 16568 treat width=0 or height=0 literally -- maybe that's a feature, 16569 not a bug?)</li> 16570 16571 <li>minor tweak to the screen-repainting when resizing (I still 16572 cannot entirely get rid of flicker).</li> 16573 16574 <li>still more fixes to terminfo & termcap (I corrected my 16575 error for the hpa code and added some other stuff by comparing 16576 to ncurses' description and rxvt's).</li> 16577 16578 <li>a tweak to the changes by Michael Rohleder for the color 16579 translation</li> 16580 16581 <li>re-order attribute codes to allow later implementation of 16582 protected fields (dtterm supposedly does this; it's probably 16583 more useful than blinking or invisible text -- that uses up all 16584 of the available bits without changing the attribute scheme 16585 radically).</li> 16586 </ul> 16587 16588 <h1><a name="xterm_17" id="xterm_17">Patch #17 - 1996/7/2 - 16589 XFree86 3.1.2Eb</a></h1> 16590 16591 <p>This patch implements for xterm several minor features from 16592 ISO 6429 which are useful for terminfo applications. The HPA and 16593 VPA control sequences allow cursor movement along a row or 16594 column, cutting down a little on the characters transmitted. The 16595 other codes allow resetting specific graphic rendition attributes 16596 without modifying the other attributes. (now if someone just had 16597 time to implement blinking cursors...)</p> 16598 16599 <h1><a name="xterm_16" id="xterm_16">Patch #16 - 1996/6/25 - 16600 XFree86 3.1.2Ea</a></h1> 16601 16602 <p>Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks 16603 ago that I'd missed some of the background coloring in xterm. I 16604 investigated, and found that while I'd picked up on the 16605 clear-to-bottom and clear-to-end-of-line operations, I'd 16606 overlooked the insert/delete lines. Just so I wouldn't overlook 16607 any more of these, I updated a copy of vttest to test ISO colors 16608 and bce (background color erase). This patch introduces a new 16609 function, ClearCurBackground, whose calls replace the direct 16610 XClearArea calls that I'd overlooked. (There's also a few 16611 compiler warnings fixed, etc ;-)</p> 16612 16613 <h1><a name="xterm_15" id="xterm_15">Patch #15 - 1996/5/29 - 16614 XFree86 3.1.2E</a></h1> 16615 16616 <p>This fixes the problem reported by David Dawes, by making the 16617 50msec select timeout for the Xaw3d arrow scrollbar a resource. 16618 (I made it a boolean for a variety of reasons -- to make it a 16619 number, you'd need an additional resource, to avoid breaking the 16620 logic).</p> 16621 16622 <h1><a name="xterm_14" id="xterm_14">Patch #14 - 1996/5/12 - 16623 XFree86 3.1.2Dj</a></h1> 16624 16625 <p>This patch brings the termcap and terminfo descriptions for 16626 xterm up to date. I made the following changes:</p> 16627 16628 <ul> 16629 <li>reformatted the terminfo description in a single-column 16630 (this is ok for terminfo, and will simplify future patches -- 16631 can't do that for termcap, since it would impact buffer 16632 requirements on some systems).</li> 16633 16634 <li>omitted obsolete features in termcap to save a little space 16635 (bs, pt)</li> 16636 16637 <li>added color capabilities to termcap (ut, Co, NC, op, AB, 16638 AF)</li> 16639 16640 <li>corrected some capabilities (vi, ve)</li> 16641 16642 <li>added 'st' (set tab)</li> 16643 16644 <li>reduced function keys in termcap for 'xterm' to 12 because 16645 color capabilities makes that description larger than 1023 16646 characters.</li> 16647 16648 <li>created new termcap name 'xtermm' (monochrome) to match the 16649 terminfo list, and make that description have 20 function 16650 keys.</li> 16651 16652 <li>added corresponding color capabilities to terminfo (bce, 16653 colors, pairs, op, ncv, setab, setaf)</li> 16654 16655 <li>corrected corresponding capabilities in terminfo (civis, 16656 cnorm, rmcup, smcup)</li> 16657 16658 <li>added capabilities (el1, hts)</li> 16659 16660 <li>in both, corrected home/end keys to match the code 16661 correction made by Thomas Mueller in 3.1.2Bk 16662 <p>=> (I'm still considering modifying the code & 16663 description to match the rxvt program).</p> 16664 </li> 16665 </ul> 16666 16667 <h1><a name="xterm_13" id="xterm_13">Patch #13 - 1996/4/23 - 16668 XFree86 3.1.2Df</a></h1> 16669 16670 <p>This corrects my earlier changes for colors - the inner border 16671 of the xterm was getting painted with the wrong color, since I'd 16672 moved the call to set the background into the logic that tracks 16673 SGR information.</p> 16674 16675 <h1><a name="xterm_12" id="xterm_12">Patch #12 - 1996/3/16 - 16676 XFree86 3.1.2Dc</a></h1> 16677 16678 <p>This corrects a memory leak in xterm that happens whenever one 16679 switches fonts.</p> 16680 16681 <h1><a name="xterm_11" id="xterm_11">Patch #11 - 1996/3/5 - 16682 XFree86 3.1.2Db</a></h1> 16683 16684 <p>This patch corrects the behavior of the ANSI colors in xterm 16685 when reverse video is used, as well as some other lesser 16686 sins:</p> 16687 16688 <ul> 16689 <li>button.c 16690 <ul> 16691 <li>(compiler warnings: shadowing of 'time', redundant 16692 cast)</li> 16693 </ul> 16694 </li> 16695 16696 <li>charproc.c 16697 <ul> 16698 <li>renamed screen.colors[] array to screen.Acolors[] to 16699 more easily distinguish the non-ANSI colors from the ANSI 16700 colors.</li> 16701 16702 <li>moved logic of SGR_Save() into VTInitialize, getting 16703 rid of local private variables original_fg and 16704 original_bg.</li> 16705 16706 <li>moved some logic into getXtermForeground and 16707 getXtermBackground from SGR_Foreground, SGR_Background, 16708 etc.</li> 16709 16710 <li>corrected misleading 'row' to 'col' in case for CUF, 16711 CUB sequences.</li> 16712 </ul> 16713 </li> 16714 16715 <li>ctlseqs.ms</li> 16716 16717 <li>xterm.man 16718 <ul> 16719 <li>(correct a misconception which I'd added that the 16720 color0 through color6 resource values apply to non-ANSI 16721 colors)</li> 16722 </ul> 16723 </li> 16724 16725 <li>ptyx.h 16726 <ul> 16727 <li>added original_fg, original_bg to TScreen 16728 structure.</li> 16729 </ul> 16730 </li> 16731 16732 <li>scrollbar.c 16733 <ul> 16734 <li>(compiler warnings: redundant cast)</li> 16735 </ul> 16736 </li> 16737 16738 <li>util.c 16739 <ul> 16740 <li>new functions getXtermForeground and getXtermBackground 16741 replace the macros GET_FG and GET_BG, with the added 16742 functionality of checking for the reverse-video status of 16743 xterm.</li> 16744 16745 <li>in ReverseVideo, swap the SGR foreground and background 16746 colors also.</li> 16747 </ul> 16748 </li> 16749 </ul> 16750 16751 <h1><a name="xterm_10" id="xterm_10">Patch #10 - 1996/2/14 - 16752 XFree86 3.1.2Cd</a></h1> 16753 16754 <p>I observed an occasional glitch in the xterm's color behavior; 16755 a clear to end of line would get a color that had been used in a 16756 program that supposedly reset colors. I traced this down to the 16757 way xterm was modifying colors of GC's on the fly; it didn't 16758 restore the original color of the GC, even though it would later 16759 be used in functions (such as ClearRight) that assumed (my error) 16760 that the GC would have the current foreground or background 16761 color.</p> 16762 16763 <p>I fixed this by resetting the GC's colors with a new function 16764 'resetXtermGC()', and direct calls on 16765 SGR_Foreground/SGR_Background, as appropriate and using a new 16766 function 'updatedXtermGC()' to encapsulate the logic that 16767 modifies the GC's color. (I also removed some commented-out code 16768 that was trying to do this -- the problem was a little more 16769 obscure).</p> 16770 16771 <h1><a name="xterm_09" id="xterm_09">Patch #9 - 1996/2/10 - 16772 XFree86 3.1.2Cb</a></h1> 16773 16774 <p>This patch fixes the remaining problems that I had making 16775 xterm run with x11r5, as well as a couple of other bugs. It 16776 follows my patch from yesterday, that added ifdef's for some of 16777 the input-method resources.</p> 16778 16779 <ul> 16780 <li>corrected ifdef's that suppress the input-method code 16781 (doesn't exist in my x11r5, and xterm works adequately without 16782 it).</li> 16783 16784 <li>corrected fallback definition for 'Select()' macro (oops: 16785 I'd copied the wrong text...)</li> 16786 16787 <li>moved the declarations for the fd_set variables to 16788 data.[ch]</li> 16789 16790 <li>corrected an ifdef in resize.c (sunos 4.x doesn't have 16791 termcap.h)</li> 16792 16793 <li>corrected (in main.c) some unused/orphaned variables.</li> 16794 </ul> 16795 16796 <h1><a name="xterm_08" id="xterm_08">Patch #8 - 1996/2/9 - 16797 XFree86 3.1.2Cb</a></h1> 16798 16799 <p>This is mostly a documentation patch for xterm. It describes 16800 the color control sequences in more detail, and documents some 16801 other features of xterm that aren't described elsewhere.</p> 16802 16803 <p>I've also added a couple of ifdef's to fix (part of) the 16804 problem that I'm working on (making the program work properly on 16805 x11r5, where I'm doing memory testing -- I have a "good" version 16806 from mid-January, but my resync version doesn't work properly on 16807 x11r5). I'm not done with <em>that</em> yet.</p> 16808 16809 <h1><a name="xterm_07" id="xterm_07">Patch #7 - 1996/1/28 - 16810 XFree86 3.1.2n</a></h1> 16811 16812 <p>I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF). I've 16813 got an S3 card.</p> 16814 16815 <p>This fixes the following in the 3.1.2n xterm:</p> 16816 16817 <ul> 16818 <li>initialize cur_foreground, cur_background in charproc.c 16819 (Purify told me they weren't initialized).</li> 16820 16821 <li>add interpretation of codes 39, 49, to reset background and 16822 foreground to default value (I'm told that ISO 6429 does this; 16823 but I don't have a written reference -- yet -- can anyone help 16824 here?). Anyway, rxvt does it, and it'll solve my remaining 16825 color management problems.</li> 16826 16827 <li>shadowing of 'time' in menu.c</li> 16828 16829 <li>'Cardinal' vs 'int' in scrollbar.c</li> 16830 16831 <li>several changes to permit compile with X11R5 (the system 16832 that I've got Purify on won't be upgraded to X11R6 for a long 16833 time).</li> 16834 </ul> 16835 16836 <p>I built this version (with a minor nit that I'll patch soon) 16837 on SunOS 4.1.3 so that I can test it some more with Purify.</p> 16838 16839 <p><em>btw</em>: the changes made in Xpoll.h won't work on some 16840 older systems, because fd_set isn't a defined type (I've got one 16841 machine at least that this applies to).</p> 16842 16843 <h1><a name="xterm_06" id="xterm_06">Patch #6 - 1996/1/8</a></h1> 16844 16845 <p>This patch does all of the SGR foreground/background fixes 16846 (i.e., clearing the screen after an SGR color is set causes that 16847 color to be used in the foreground and/or background). If the 16848 FG_COLOR and/or BG_COLOR flags aren't set, then the xterm 16849 foreground and background default to the window's values. This 16850 usage is consistent with various types of hardware (especially 16851 the IBM PC), and is also used in rxvt.</p> 16852 16853 <ul> 16854 <li>charproc.c: 16855 <ul> 16856 <li>add/use new macros GET_FG, GET_BG - n/c.</li> 16857 16858 <li>add/use new functions SGR_Foreground() and 16859 SGR_Background() to set corresponding colors in GC's, and 16860 to retain sense of "original" colors. 16861 <p>=> This makes redundant some of the corresponding 16862 logic in HideCursor to set the foreground and background, 16863 but I left it in since it <em>may</em> be fixing an 16864 unrelated requirement.</p> 16865 </li> 16866 16867 <li>set GC's in LoadNewFont() according to whether the SGR 16868 fg/bg colors are active. 16869 <p>=> This fixes some glitches in the accompanying 16870 resize, that leaves parts of the window in the original 16871 background color.</p> 16872 </li> 16873 </ul> 16874 </li> 16875 16876 <li>screen.c: 16877 <ul> 16878 <li>modified ClearBufRows() to use the SGR fg/bg colors if 16879 they're set.</li> 16880 16881 <li>added function ScrnClearLines(), used this to replace 16882 portions of ScrnInsertLine() and ScrnDeleteLine(). The new 16883 function uses the SGR fg/bg colors if they're set. 16884 <p>=> Otherwise, selection after an index or reverse 16885 index will paint the wrong colors.</p> 16886 </li> 16887 16888 <li>modified ScrnDeleteChar() and ScrnInsertChar() to use 16889 SGR fg/bg colors.</li> 16890 </ul> 16891 </li> 16892 16893 <li>util.c: 16894 <ul> 16895 <li>modified ClearRight() so that if either of the SGR 16896 fg/bg colors is set, we don't bzero the attributes and 16897 color arrays, but instead fill them with the appropriate 16898 codes.</li> 16899 16900 <li>modified ClearLeft to use SGR fg/bg colors.</li> 16901 </ul> 16902 </li> 16903 </ul> 16904 16905 <h1><a name="xterm_05" id="xterm_05">Patch #5 - 1996/1/7</a></h1> 16906 16907 <p>This patch modifies the object code, by replacing indexing 16908 expressions with temporary variables with the full indexing 16909 expression. At first glance, this seems inefficient (it did to me 16910 ;-), until remembering comments made in the compilers newsgroups 16911 that trying to "help" the compiler doesn't really work that well. 16912 A good optimizing compiler can do a better job than the 16913 programmer can. (There's a moral in the use of 'register' 16914 variables also, but I won't fix those...).</p> 16915 16916 <p>Anyway, the revised code generates a smaller object...</p> 16917 16918 <ul> 16919 <li>charproc.c: 16920 <ul> 16921 <li>recode index expressions in ShowCursor() and 16922 HideCursor() using SCRN_BUF_xxxxS macros - changes 16923 object.</li> 16924 16925 <li>replace constant '4' by MAX_PTRS - n/c.</li> 16926 </ul> 16927 </li> 16928 16929 <li>ptyx.h: 16930 <ul> 16931 <li>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS 16932 macros, to pick up references to ScrnBuf data directly, and 16933 added MAX_PTRS symbol to pick up those '4' constants strewn 16934 about the code - n/c.</li> 16935 </ul> 16936 </li> 16937 16938 <li>screen.c: 16939 <ul> 16940 <li>recode index expressions in ScreenWrite() using 16941 SCRN_BUF_xxxxS macros - changes object.</li> 16942 16943 <li>replace constant '4' by MAX_PTRS - n/c.</li> 16944 16945 <li>use macros BUF_CHARS, BUF_ATTRS - n/c.</li> 16946 16947 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 16948 - n/c</li> 16949 </ul> 16950 </li> 16951 16952 <li>scrollbar.c: 16953 <ul> 16954 <li>replace constant '4' by MAX_PTRS - n/c.</li> 16955 16956 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 16957 - n/c</li> 16958 </ul> 16959 </li> 16960 </ul> 16961 16962 <h1><a name="xterm_04" id="xterm_04">Patch #4 - 1996/1/7</a></h1> 16963 16964 <p>When setting up for this phase, I saw that you'd corrected the 16965 bug that I found in ClearLeft. I decided to make this series of 16966 patches anyway, since readability never hurt (and there's the 16967 potential for finding another bug while reviewing this set).</p> 16968 16969 <ul> 16970 <li>button.c: 16971 <ul> 16972 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16973 </ul> 16974 </li> 16975 16976 <li>charproc.c: 16977 <ul> 16978 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16979 </ul> 16980 </li> 16981 16982 <li>ptyx.h: 16983 <ul> 16984 <li>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS, 16985 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four arrays 16986 that are derived from screen->buf.</li> 16987 </ul> 16988 </li> 16989 16990 <li>screen.c: 16991 <ul> 16992 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16993 </ul> 16994 </li> 16995 16996 <li>util.c: 16997 <ul> 16998 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16999 </ul> 17000 </li> 17001 </ul> 17002 17003 <h1><a name="xterm_03" id="xterm_03">Patch #3 - 1996/1/7</a></h1> 17004 17005 <p>This is my third (and final cleanup) patch for xterm. It gets 17006 rid of the unused stuff, and converts several functions to static 17007 (thereby reducing their scope).</p> 17008 17009 <p>At this point, the only compile warnings I've got (on Linux) 17010 are those about the select arguments (int vs fd_set type), and a 17011 missing declaration for waitpid. Those both are hard to get right 17012 without autoconfigure.</p> 17013 17014 <p>The next patches will address the functional changes...</p> 17015 17016 <ul> 17017 <li>Tekproc.c: 17018 <ul> 17019 <li>changed several functions to 'static' that aren't used 17020 outside this module -- changes object</li> 17021 </ul> 17022 </li> 17023 17024 <li>charproc.c: 17025 <ul> 17026 <li>changed several functions to 'static' that aren't used 17027 outside this module -- changes object</li> 17028 17029 <li>deleted unused function unparsefputs -- changes 17030 object.</li> 17031 </ul> 17032 </li> 17033 17034 <li>main.c: 17035 <ul> 17036 <li>changed several functions to 'static' that aren't used 17037 outside this module -- changes object</li> 17038 17039 <li>ifdef'd out unused function 'consolepr()' -- changes 17040 object</li> 17041 17042 <li>removed unused variable 'dummy_tio' -- changes 17043 object</li> 17044 17045 <li>moved variable 'discipline' to quiet unused-warning -- 17046 changes object</li> 17047 </ul> 17048 </li> 17049 17050 <li>main.h: 17051 <ul> 17052 <li>deleted unused definition of DEFBORDERWIDTH - n/c</li> 17053 </ul> 17054 </li> 17055 17056 <li>misc.c: 17057 <ul> 17058 <li>changed several functions to 'static' that aren't used 17059 outside this module -- changes object</li> 17060 17061 <li>provide dummy return statements for xerror and xioerror 17062 to quiet compiler warnings -- changes object</li> 17063 </ul> 17064 </li> 17065 17066 <li>ptyx.h: 17067 <ul> 17068 <li>change sbuf_address and abuf_address to 'Char *' - 17069 n/c</li> 17070 </ul> 17071 </li> 17072 17073 <li>resize.c: 17074 <ul> 17075 <li>changed several functions to 'static' that aren't used 17076 outside this module -- changes object</li> 17077 </ul> 17078 </li> 17079 17080 <li>screen.c: 17081 <ul> 17082 <li>remove unnecessary 'Char **' casts - n/c</li> 17083 </ul> 17084 </li> 17085 17086 <li>util.c: 17087 <ul> 17088 <li>changed several functions to 'static' that aren't used 17089 outside this module -- changes object</li> 17090 </ul> 17091 </li> 17092 </ul> 17093 17094 <h1><a name="xterm_02" id="xterm_02">Patch #2 - 1996/1/7</a></h1> 17095 17096 <p>This is my second patch to xterm. It corrects most of the gcc 17097 warnings (except for some that are due to X header files ;-). I 17098 compared objects to keep track of the changes that don't affect 17099 the object code (n/c) versus those that do.</p> 17100 17101 <p>At this point, I'm compiling (fairly) clean with gcc 17102 options</p> 17103 17104 <pre> 17105 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs 17106</pre> 17107 <p>(I also compiled with -Wshadow, but while that found some 17108 things that I wanted to find, there's far too many warnings from 17109 the X headers to be usable in this context).</p> 17110 17111 <p>The changes:</p> 17112 17113 <ul> 17114 <li>Tekproc.c: 17115 <ul> 17116 <li>parenthesized expression to avoid gcc warning -- 17117 n/c.</li> 17118 17119 <li>corrected nested-extern declaration for Bool 17120 waiting_for_initial_map; ourTopLevelShellArgs, and 17121 number_ourTopLevelShellArgs - n/c</li> 17122 </ul> 17123 </li> 17124 17125 <li>charproc.c: 17126 <ul> 17127 <li>corrected potentially-unintialized variables 'scstype', 17128 'xim', and 'input_style' -- changes object.</li> 17129 17130 <li>adjusted logic of VTparse so that gcc won't warn about 17131 setjmp clobbering parsestate -- changes object.</li> 17132 17133 <li>corrected initialization of 'scstype', which could have 17134 been clobbered by setjmp/longjmp - changes object.</li> 17135 17136 <li>corrected nested-extern declaration of 'term', 17137 'ProgramName' - n/c</li> 17138 </ul> 17139 </li> 17140 17141 <li>cursor.c: 17142 <ul> 17143 <li>corrected nested-extern declaration of 'term' -- 17144 n/c</li> 17145 17146 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 17147 - n/c</li> 17148 </ul> 17149 </li> 17150 17151 <li>input.c: 17152 <ul> 17153 <li>change interface of StringInput to assume size_t (i.e., 17154 unsigned) nbytes -- changes object.</li> 17155 17156 <li>change interface of funcvalue, and sunfuncvalue to use 17157 'KeySym' type instead of 'int' - changes object.</li> 17158 </ul> 17159 </li> 17160 17161 <li>main.c: 17162 <ul> 17163 <li>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h 17164 - n/c</li> 17165 17166 <li>corrected missing params of 'do_hangup()' -- changes 17167 object (note: the missing params were not used).</li> 17168 17169 <li>corrected missing param of 'Error()' -- changes 17170 object</li> 17171 17172 <li>corrected nested-extern 'environ' - n/c</li> 17173 17174 <li>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' 17175 so that gcc can see they won't be clobbered by the longjmp 17176 - changes object.</li> 17177 17178 <li>use Size_t type - n/c.</li> 17179 </ul> 17180 </li> 17181 17182 <li>menu.c: 17183 <ul> 17184 <li>removed redundant prototype for 'do_hangup()' -- 17185 n/c.</li> 17186 17187 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 17188 - n/c</li> 17189 </ul> 17190 </li> 17191 17192 <li>menu.h: 17193 <ul> 17194 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 17195 - n/c</li> 17196 </ul> 17197 </li> 17198 17199 <li>misc.c: 17200 <ul> 17201 <li>corrected definition of 'HandleFocusChange()' -- 17202 changes object</li> 17203 17204 <li>cast parameters in call to 'TekExpose()' -- n/c</li> 17205 17206 <li>corrected nested-extern declarations of 'term', 17207 'toplevel', ProgramName, and 'environ' -- n/c.</li> 17208 17209 <li>use Size_t type - n/c.</li> 17210 </ul> 17211 </li> 17212 17213 <li>proto.h: 17214 <ul> 17215 <li>moved definition of SIGNAL_T (and SIGNAL_RETURN) here 17216 from main.c, resize.c to allow use of this symbol in 17217 prototypes (mostly in xterm.h).</li> 17218 17219 <li>added definition 'Size_t' to use as corrected type for 17220 strncpy, malloc sizes - n/c.</li> 17221 </ul> 17222 </li> 17223 17224 <li>resize.c: 17225 <ul> 17226 <li>moved SIGNAL_T definition to proto.h -- n/c.</li> 17227 17228 <li>use Size_t type - n/c.</li> 17229 </ul> 17230 </li> 17231 17232 <li>screen.c: 17233 <ul> 17234 <li>use Size_t type - n/c.</li> 17235 </ul> 17236 </li> 17237 17238 <li>tabs.c: 17239 <ul> 17240 <li>corrected nested-extern declaration of 'term' -- 17241 n/c</li> 17242 </ul> 17243 </li> 17244 17245 <li>util.c: 17246 <ul> 17247 <li>corrected/supplied parameters to 'TekExpose()' -- 17248 changes object (note: 'TekExpose()' doesn't use its 17249 parameters).</li> 17250 17251 <li>corrected nested-extern declaration of 17252 'waiting_for_initial_map' -- n/c.</li> 17253 17254 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 17255 - n/c</li> 17256 </ul> 17257 </li> 17258 17259 <li>xterm.h: 17260 <ul> 17261 <li>prototype 'do_hangup()', 'HandleFocusChange()', 17262 'TekExpose()', 'Error()', 'Exit()' - forces changes in 17263 various places.</li> 17264 17265 <li>adjusted prototypes that pass 'Boolean' arguments to 17266 use 'int' (this is the "correct" ANSI approach to extended 17267 compiles; it's worth mentioning that gcc doesn't meet the 17268 ANSI spec here). I used gcc -Wconversion to find these, but 17269 there's a lot of unrelated warnings that are due to setting 17270 NARROWPROTO in the config - n/c.</li> 17271 17272 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 17273 - n/c</li> 17274 </ul> 17275 </li> 17276 </ul> 17277 17278 <h1><a name="xterm_01" id="xterm_01">Patch #1 - 1996/1/6</a></h1> 17279 17280 <p>This is my first cleanup patch for xterm. It addresses all of 17281 the gcc warnings for -Wall, -Wmissing-prototypes and 17282 -Wstrict-prototypes that I can change without modifying the 17283 object code. (I'm compiling this with gcc 2.7.0 for an aout 17284 target, which makes it simple to compare objects. When I do 17285 ELF-only, I've got a tool that compares that sort of thing as 17286 well).</p> 17287 17288 <p>Briefly, this patch adds (and uses) two header files in the 17289 xterm directory:</p> 17290 17291 <pre> 17292 proto.h 17293 xterm.h 17294</pre> 17295 <p>I expect this to be the biggest patch by far. However (barring 17296 a misplaced prototype), it shouldn't break anything, since the 17297 intent of the patch is to provide missing declarations.</p> 17298</body> 17299</html> 17300