xterm.log.html revision 04b94745
1<!-- 2 ***************************************************************************** 3 * this file is part of xterm * 4 * * 5 * Copyright 1997-2023,2024 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.2618 2024/05/22 22:50:14 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-2023,2024 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_392">Patch #392 - 2024/05/22</a></li> 74 75 <li><a href="#xterm_391">Patch #391 - 2024/05/12</a></li> 76 77 <li><a href="#xterm_390">Patch #390 - 2024/02/19</a></li> 78 79 <li><a href="#xterm_389">Patch #389 - 2024/01/01</a></li> 80 81 <li><a href="#xterm_388">Patch #388 - 2023/10/22</a></li> 82 83 <li><a href="#xterm_387">Patch #387 - 2023/10/15</a></li> 84 85 <li><a href="#xterm_386">Patch #386 - 2023/10/09</a></li> 86 87 <li><a href="#xterm_385">Patch #385 - 2023/10/01</a></li> 88 89 <li><a href="#xterm_384">Patch #384 - 2023/07/10</a></li> 90 91 <li><a href="#xterm_383">Patch #383 - 2023/06/27</a></li> 92 93 <li><a href="#xterm_382">Patch #382 - 2023/05/30</a></li> 94 95 <li><a href="#xterm_381">Patch #381 - 2023/05/28</a></li> 96 97 <li><a href="#xterm_380">Patch #380 - 2023/05/09</a></li> 98 99 <li><a href="#xterm_379">Patch #379 - 2023/02/15</a></li> 100 101 <li><a href="#xterm_378">Patch #378 - 2023/01/09</a></li> 102 103 <li><a href="#xterm_377">Patch #377 - 2022/11/25</a></li> 104 105 <li><a href="#xterm_376">Patch #376 - 2022/11/16</a></li> 106 107 <li><a href="#xterm_375">Patch #375 - 2022/10/23</a></li> 108 109 <li><a href="#xterm_374">Patch #374 - 2022/10/10</a></li> 110 111 <li><a href="#xterm_373">Patch #373 - 2022/09/25</a></li> 112 113 <li><a href="#xterm_372">Patch #372 - 2022/03/09</a></li> 114 115 <li><a href="#xterm_371">Patch #371 - 2022/02/24</a></li> 116 117 <li><a href="#xterm_370">Patch #370 - 2021/11/13</a></li> 118 119 <li><a href="#xterm_369">Patch #369 - 2021/09/21</a></li> 120 121 <li><a href="#xterm_368">Patch #368 - 2021/06/07</a></li> 122 123 <li><a href="#xterm_367">Patch #367 - 2021/03/26</a></li> 124 125 <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li> 126 127 <li><a href="#xterm_365">Patch #365 - 2021/02/03</a></li> 128 129 <li><a href="#xterm_364">Patch #364 - 2021/02/02</a></li> 130 131 <li><a href="#xterm_363">Patch #363 - 2020/12/26</a></li> 132 133 <li><a href="#xterm_362">Patch #362 - 2020/11/11</a></li> 134 135 <li><a href="#xterm_361">Patch #361 - 2020/10/14</a></li> 136 137 <li><a href="#xterm_360">Patch #360 - 2020/09/20</a></li> 138 139 <li><a href="#xterm_359">Patch #359 - 2020/08/17</a></li> 140 141 <li><a href="#xterm_358">Patch #358 - 2020/07/12</a></li> 142 143 <li><a href="#xterm_357">Patch #357 - 2020/07/05</a></li> 144 145 <li><a href="#xterm_356">Patch #356 - 2020/05/02</a></li> 146 147 <li><a href="#xterm_355">Patch #355 - 2020/05/01</a></li> 148 149 <li><a href="#xterm_354">Patch #354 - 2020/04/26</a></li> 150 151 <li><a href="#xterm_353">Patch #353 - 2020/02/01</a></li> 152 153 <li><a href="#xterm_352">Patch #352 - 2020/01/16</a></li> 154 155 <li><a href="#xterm_351">Patch #351 - 2019/11/17</a></li> 156 157 <li><a href="#xterm_350">Patch #350 - 2019/11/02</a></li> 158 159 <li><a href="#xterm_349">Patch #349 - 2019/09/22</a></li> 160 161 <li><a href="#xterm_348">Patch #348 - 2019/07/22</a></li> 162 163 <li><a href="#xterm_347">Patch #347 - 2019/06/30</a></li> 164 165 <li><a href="#xterm_346">Patch #346 - 2019/05/27</a></li> 166 167 <li><a href="#xterm_345">Patch #345 - 2019/05/14</a></li> 168 169 <li><a href="#xterm_344">Patch #344 - 2019/02/12</a></li> 170 171 <li><a href="#xterm_343">Patch #343 - 2019/01/13</a></li> 172 173 <li><a href="#xterm_342">Patch #342 - 2019/01/03</a></li> 174 175 <li><a href="#xterm_341">Patch #341 - 2018/12/24</a></li> 176 177 <li><a href="#xterm_340">Patch #340 - 2018/12/16</a></li> 178 179 <li><a href="#xterm_339">Patch #339 - 2018/12/12</a></li> 180 181 <li><a href="#xterm_338">Patch #338 - 2018/12/09</a></li> 182 183 <li><a href="#xterm_337">Patch #337 - 2018/09/21</a></li> 184 185 <li><a href="#xterm_336">Patch #336 - 2018/09/19</a></li> 186 187 <li><a href="#xterm_335">Patch #335 - 2018/08/14</a></li> 188 189 <li><a href="#xterm_334">Patch #334 - 2018/08/12</a></li> 190 191 <li><a href="#xterm_333">Patch #333 - 2018/05/03</a></li> 192 193 <li><a href="#xterm_332">Patch #332 - 2018/04/15</a></li> 194 195 <li><a href="#xterm_331">Patch #331 - 2017/12/30</a></li> 196 197 <li><a href="#xterm_330">Patch #330 - 2017/06/20</a></li> 198 199 <li><a href="#xterm_329">Patch #329 - 2017/06/12</a></li> 200 201 <li><a href="#xterm_328">Patch #328 - 2017/06/01</a></li> 202 203 <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> 204 205 <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> 206 207 <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> 208 209 <li><a href="#xterm_324">Patch #324 - 2016/03/10</a></li> 210 211 <li><a href="#xterm_323">Patch #323 - 2016/03/07</a></li> 212 213 <li><a href="#xterm_322">Patch #322 - 2016/01/02</a></li> 214 215 <li><a href="#xterm_321">Patch #321 - 2015/12/31</a></li> 216 217 <li><a href="#xterm_320">Patch #320 - 2015/08/28</a></li> 218 219 <li><a href="#xterm_319">Patch #319 - 2015/08/19</a></li> 220 221 <li><a href="#xterm_318">Patch #318 - 2015/04/12</a></li> 222 223 <li><a href="#xterm_317">Patch #317 - 2015/03/27</a></li> 224 225 <li><a href="#xterm_316">Patch #316 - 2015/03/07</a></li> 226 227 <li><a href="#xterm_315">Patch #315 - 2015/03/02</a></li> 228 229 <li><a href="#xterm_314">Patch #314 - 2014/12/28</a></li> 230 231 <li><a href="#xterm_313">Patch #313 - 2014/11/28</a></li> 232 233 <li><a href="#xterm_312">Patch #312 - 2014/09/28</a></li> 234 235 <li><a href="#xterm_311">Patch #311 - 2014/09/18</a></li> 236 237 <li><a href="#xterm_310">Patch #310 - 2014/07/25</a></li> 238 239 <li><a href="#xterm_309">Patch #309 - 2014/07/13</a></li> 240 241 <li><a href="#xterm_308">Patch #308 - 2014/06/19</a></li> 242 243 <li><a href="#xterm_307">Patch #307 - 2014/06/17</a></li> 244 245 <li><a href="#xterm_306">Patch #306 - 2014/06/03</a></li> 246 247 <li><a href="#xterm_305">Patch #305 - 2014/06/02</a></li> 248 249 <li><a href="#xterm_304">Patch #304 - 2014/05/03</a></li> 250 251 <li><a href="#xterm_303">Patch #303 - 2014/03/06</a></li> 252 253 <li><a href="#xterm_302">Patch #302 - 2014/03/02</a></li> 254 255 <li><a href="#xterm_301">Patch #301 - 2014/01/19</a></li> 256 257 <li><a href="#xterm_300">Patch #300 - 2013/12/03</a></li> 258 259 <li><a href="#xterm_299">Patch #299 - 2013/12/01</a></li> 260 261 <li><a href="#xterm_298">Patch #298 - 2013/11/27</a></li> 262 263 <li><a href="#xterm_297">Patch #297 - 2013/09/10</a></li> 264 265 <li><a href="#xterm_296">Patch #296 - 2013/07/10</a></li> 266 267 <li><a href="#xterm_295">Patch #295 - 2013/07/06</a></li> 268 269 <li><a href="#xterm_294">Patch #294 - 2013/07/05</a></li> 270 271 <li><a href="#xterm_293">Patch #293 - 2013/05/27</a></li> 272 273 <li><a href="#xterm_292">Patch #292 - 2013/04/25</a></li> 274 275 <li><a href="#xterm_291">Patch #291 - 2013/02/26</a></li> 276 277 <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li> 278 279 <li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li> 280 281 <li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li> 282 283 <li><a href="#xterm_287">Patch #287 - 2012/11/25</a></li> 284 285 <li><a href="#xterm_286">Patch #286 - 2012/10/29</a></li> 286 287 <li><a href="#xterm_285">Patch #285 - 2012/10/23</a></li> 288 289 <li><a href="#xterm_284">Patch #284 - 2012/10/14</a></li> 290 291 <li><a href="#xterm_283">Patch #283 - 2012/10/09</a></li> 292 293 <li><a href="#xterm_282">Patch #282 - 2012/09/28</a></li> 294 295 <li><a href="#xterm_281">Patch #281 - 2012/06/26</a></li> 296 297 <li><a href="#xterm_280">Patch #280 - 2012/06/24</a></li> 298 299 <li><a href="#xterm_279">Patch #279 - 2012/05/10</a></li> 300 301 <li><a href="#xterm_278">Patch #278 - 2012/01/18</a></li> 302 303 <li><a href="#xterm_277">Patch #277 - 2012/01/07</a></li> 304 305 <li><a href="#xterm_276">Patch #276 - 2011/10/10</a></li> 306 307 <li><a href="#xterm_275">Patch #275 - 2011/09/11</a></li> 308 309 <li><a href="#xterm_274">Patch #274 - 2011/09/05</a></li> 310 311 <li><a href="#xterm_273">Patch #273 - 2011/08/25</a></li> 312 313 <li><a href="#xterm_272">Patch #272 - 2011/08/24</a></li> 314 315 <li><a href="#xterm_271">Patch #271 - 2011/07/14</a></li> 316 317 <li><a href="#xterm_270">Patch #270 - 2011/04/26</a></li> 318 319 <li><a href="#xterm_269">Patch #269 - 2011/02/19</a></li> 320 321 <li><a href="#xterm_268">Patch #268 - 2011/02/10</a></li> 322 323 <li><a href="#xterm_267">Patch #267 - 2010/11/20</a></li> 324 325 <li><a href="#xterm_266">Patch #266 - 2010/10/24</a></li> 326 327 <li><a href="#xterm_265">Patch #265 - 2010/10/22</a></li> 328 329 <li><a href="#xterm_264">Patch #264 - 2010/10/14</a></li> 330 331 <li><a href="#xterm_263">Patch #263 - 2010/10/13</a></li> 332 333 <li><a href="#xterm_262">Patch #262 - 2010/8/30</a></li> 334 335 <li><a href="#xterm_261">Patch #261 - 2010/6/28</a></li> 336 337 <li><a href="#xterm_260">Patch #260 - 2010/6/20</a></li> 338 339 <li><a href="#xterm_259">Patch #259 - 2010/6/5</a></li> 340 341 <li><a href="#xterm_258">Patch #258 - 2010/5/1</a></li> 342 343 <li><a href="#xterm_257">Patch #257 - 2010/4/22</a></li> 344 345 <li><a href="#xterm_256">Patch #256 - 2010/3/6</a></li> 346 347 <li><a href="#xterm_255">Patch #255 - 2010/1/21</a></li> 348 349 <li><a href="#xterm_254">Patch #254 - 2010/1/6</a></li> 350 351 <li><a href="#xterm_253">Patch #253 - 2009/12/10</a></li> 352 353 <li><a href="#xterm_252">Patch #252 - 2009/12/7</a></li> 354 355 <li><a href="#xterm_251">Patch #251 - 2009/11/11</a></li> 356 357 <li><a href="#xterm_250">Patch #250 - 2009/10/13</a></li> 358 359 <li><a href="#xterm_249">Patch #249 - 2009/10/1</a></li> 360 361 <li><a href="#xterm_248">Patch #248 - 2009/9/11</a></li> 362 363 <li><a href="#xterm_247">Patch #247 - 2009/8/30</a></li> 364 365 <li><a href="#xterm_246">Patch #246 - 2009/8/16</a></li> 366 367 <li><a href="#xterm_245">Patch #245 - 2009/8/12</a></li> 368 369 <li><a href="#xterm_244">Patch #244 - 2009/8/9</a></li> 370 371 <li><a href="#xterm_243">Patch #243 - 2009/3/28</a></li> 372 373 <li><a href="#xterm_242">Patch #242 - 2009/2/15</a></li> 374 375 <li><a href="#xterm_241">Patch #241 - 2009/1/26</a></li> 376 377 <li><a href="#xterm_240">Patch #240 - 2009/1/25</a></li> 378 379 <li><a href="#xterm_239">Patch #239 - 2009/1/8</a></li> 380 381 <li><a href="#xterm_238">Patch #238 - 2008/12/30</a></li> 382 383 <li><a href="#xterm_237">Patch #237 - 2008/09/14</a></li> 384 385 <li><a href="#xterm_236">Patch #236 - 2008/07/27</a></li> 386 387 <li><a href="#xterm_235">Patch #235 - 2008/04/20</a></li> 388 389 <li><a href="#xterm_234">Patch #234 - 2008/03/02</a></li> 390 391 <li><a href="#xterm_233">Patch #233 - 2008/02/24</a></li> 392 393 <li><a href="#xterm_232">Patch #232 - 2008/01/30</a></li> 394 395 <li><a href="#xterm_231">Patch #231 - 2008/01/05</a></li> 396 397 <li><a href="#xterm_230">Patch #230 - 2007/12/31</a></li> 398 399 <li><a href="#xterm_229">Patch #229 - 2007/8/12</a></li> 400 401 <li><a href="#xterm_228">Patch #228 - 2007/7/22</a></li> 402 403 <li><a href="#xterm_227">Patch #227 - 2007/6/27</a></li> 404 405 <li><a href="#xterm_226">Patch #226 - 2007/6/17</a></li> 406 407 <li><a href="#xterm_225">Patch #225 - 2007/3/24</a></li> 408 409 <li><a href="#xterm_224">Patch #224 - 2007/2/11</a></li> 410 411 <li><a href="#xterm_223">Patch #223 - 2006/11/30</a></li> 412 413 <li><a href="#xterm_222">Patch #222 - 2006/10/17</a></li> 414 415 <li><a href="#xterm_221">Patch #221 - 2006/10/1</a></li> 416 417 <li><a href="#xterm_220">Patch #220 - 2006/9/10</a></li> 418 419 <li><a href="#xterm_219">Patch #219 - 2006/9/4</a></li> 420 421 <li><a href="#xterm_218">Patch #218 - 2006/8/27</a></li> 422 423 <li><a href="#xterm_217">Patch #217 - 2006/8/20</a></li> 424 425 <li><a href="#xterm_216">Patch #216 - 2006/8/3</a></li> 426 427 <li><a href="#xterm_215">Patch #215 - 2006/6/19 - XFree86 428 4.6.99.2</a></li> 429 430 <li><a href="#xterm_214">Patch #214 - 2006/6/18 - XFree86 431 4.6.99.2</a></li> 432 433 <li><a href="#xterm_213">Patch #213 - 2006/4/30 - XFree86 434 4.5.99.905</a></li> 435 436 <li><a href="#xterm_212">Patch #212 - 2006/4/9 - XFree86 437 4.5.99.904</a></li> 438 439 <li><a href="#xterm_211">Patch #211 - 2006/3/19 - XFree86 440 4.5.99.902</a></li> 441 442 <li><a href="#xterm_210">Patch #210 - 2006/3/12 - XFree86 443 4.5.99.902</a></li> 444 445 <li><a href="#xterm_209">Patch #209 - 2006/2/12 - XFree86 446 4.5.99.22</a></li> 447 448 <li><a href="#xterm_208">Patch #208 - 2006/1/3 - XFree86 449 4.5.99.19</a></li> 450 451 <li><a href="#xterm_207">Patch #207 - 2005/11/13 - XFree86 452 4.5.99.16</a></li> 453 454 <li><a href="#xterm_206">Patch #206 - 2005/11/3 - XFree86 455 4.5.99.15</a></li> 456 457 <li><a href="#xterm_205">Patch #205 - 2005/9/18 - XFree86 458 4.5.99.12</a></li> 459 460 <li><a href="#xterm_204">Patch #204 - 2005/8/4 - XFree86 461 4.5.99.9</a></li> 462 463 <li><a href="#xterm_203">Patch #203 - 2005/7/6 - XFree86 464 4.5.99.7</a></li> 465 466 <li><a href="#xterm_202">Patch #202 - 2005/5/2 - XFree86 467 4.5.99.3</a></li> 468 469 <li><a href="#xterm_201">Patch #201 - 2005/4/21 - XFree86 470 4.5.99.2</a></li> 471 472 <li><a href="#xterm_200">Patch #200 - 2005/2/6 - XFree86 473 4.4.99.23</a></li> 474 475 <li><a href="#xterm_199">Patch #199 - 2005/1/17 - XFree86 476 4.4.99.22</a></li> 477 478 <li><a href="#xterm_198">Patch #198 - 2005/1/13 - XFree86 479 4.4.99.21</a></li> 480 481 <li><a href="#xterm_197">Patch #197 - 2004/11/30 - XFree86 482 4.4.99.19</a></li> 483 484 <li><a href="#xterm_196">Patch #196 - 2004/8/15 - XFree86 485 4.4.99.12</a></li> 486 487 <li><a href="#xterm_195">Patch #195 - 2004/8/8 - XFree86 488 4.4.99.11</a></li> 489 490 <li><a href="#xterm_194">Patch #194 - 2004/7/27 - XFree86 491 4.4.99.11</a></li> 492 493 <li><a href="#xterm_193">Patch #193 - 2004/7/19 - XFree86 494 4.4.99.10</a></li> 495 496 <li><a href="#xterm_192">Patch #192 - 2004/7/12 - XFree86 497 4.4.99.9</a></li> 498 499 <li><a href="#xterm_191">Patch #191 - 2004/6/6 - XFree86 500 4.4.99.7</a></li> 501 502 <li><a href="#xterm_190">Patch #190 - 2004/5/25 - XFree86 503 4.4.99.6</a></li> 504 505 <li><a href="#xterm_189">Patch #189 - 2004/5/16 - XFree86 506 4.4.99.6</a></li> 507 508 <li><a href="#xterm_188">Patch #188 - 2004/5/12 - XFree86 509 4.4.99.6</a></li> 510 511 <li><a href="#xterm_187">Patch #187 - 2004/4/27 - XFree86 512 4.4.99.4</a></li> 513 514 <li><a href="#xterm_186">Patch #186 - 2004/4/18 - XFree86 515 4.4.99.4</a></li> 516 517 <li><a href="#xterm_185">Patch #185 - 2004/3/3 - XFree86 518 4.4</a></li> 519 520 <li><a href="#xterm_184">Patch #184 - 2003/12/31 - XFree86 521 4.3.99.903</a></li> 522 523 <li><a href="#xterm_183">Patch #183 - 2003/12/26 - XFree86 524 4.3.99.903</a></li> 525 526 <li><a href="#xterm_182">Patch #182 - 2003/12/2 - XFree86 527 4.3.99.901</a></li> 528 529 <li><a href="#xterm_181">Patch #181 - 2003/10/26 - XFree86 530 4.3.99.15</a></li> 531 532 <li><a href="#xterm_180">Patch #180 - 2003/10/12 - XFree86 533 4.3.99.15</a></li> 534 535 <li><a href="#xterm_179">Patch #179 - 2003/5/21 - XFree86 536 4.3.99.5</a></li> 537 538 <li><a href="#xterm_178">Patch #178 - 2003/5/18 - XFree86 539 4.3.99.5</a></li> 540 541 <li><a href="#xterm_177">Patch #177 - 2003/3/23 - XFree86 542 4.3.0</a></li> 543 544 <li><a href="#xterm_176">Patch #176 - 2003/3/22 - XFree86 545 4.3.0</a></li> 546 547 <li><a href="#xterm_175">Patch #175 - 2003/3/9 - XFree86 548 4.3.0</a></li> 549 550 <li><a href="#xterm_174">Patch #174 - 2003/2/25 - XFree86 551 4.2.99.903</a></li> 552 553 <li><a href="#xterm_173">Patch #173 - 2003/2/6 - XFree86 554 4.2.99.902</a></li> 555 556 <li><a href="#xterm_172">Patch #172 - 2002/12/27 - XFree86 557 4.2.99.3</a></li> 558 559 <li><a href="#xterm_171">Patch #171 - 2002/12/12 - XFree86 560 4.2.99.3</a></li> 561 562 <li><a href="#xterm_170">Patch #170 - 2002/10/13 - XFree86 563 4.2.1</a></li> 564 565 <li><a href="#xterm_169">Patch #169 - 2002/10/5 - XFree86 566 4.2.1</a></li> 567 568 <li><a href="#xterm_168">Patch #168 - 2002/9/29 - XFree86 569 4.2.1</a></li> 570 571 <li><a href="#xterm_167">Patch #167 - 2002/8/24 - XFree86 572 4.2.0</a></li> 573 574 <li><a href="#xterm_166">Patch #166 - 2002/3/25 - XFree86 575 4.2.0</a></li> 576 577 <li><a href="#xterm_165">Patch #165 - 2002/1/5 - XFree86 578 4.1.0</a></li> 579 580 <li><a href="#xterm_164">Patch #164 - 2001/11/13 - XFree86 581 4.1.0</a></li> 582 583 <li><a href="#xterm_163">Patch #163 - 2001/11/04 - XFree86 584 4.1.0</a></li> 585 586 <li><a href="#xterm_162">Patch #162 - 2001/10/23 - XFree86 587 4.1.0</a></li> 588 589 <li><a href="#xterm_161">Patch #161 - 2001/10/10 - XFree86 590 4.1.0</a></li> 591 592 <li><a href="#xterm_160">Patch #160 - 2001/10/7 - XFree86 593 4.1.0</a></li> 594 595 <li><a href="#xterm_159">Patch #159 - 2001/9/19 - XFree86 596 4.1.0</a></li> 597 598 <li><a href="#xterm_158">Patch #158 - 2001/9/8 - XFree86 599 4.1.0</a></li> 600 601 <li><a href="#xterm_157">Patch #157 - 2001/6/18 - XFree86 602 4.1.0</a></li> 603 604 <li><a href="#xterm_156">Patch #156 - 2001/4/28 - XFree86 605 4.0.3</a></li> 606 607 <li><a href="#xterm_155">Patch #155 - 2001/4/20 - XFree86 608 4.0.3</a></li> 609 610 <li><a href="#xterm_154">Patch #154 - 2001/4/11 - XFree86 611 4.0.3</a></li> 612 613 <li><a href="#xterm_153">Patch #153 - 2001/3/29 - XFree86 614 4.0.3</a></li> 615 616 <li><a href="#xterm_152">Patch #152 - 2001/3/13 - XFree86 617 4.0.2</a></li> 618 619 <li><a href="#xterm_151">Patch #151 - 2001/3/10 - XFree86 620 4.0.2</a></li> 621 622 <li><a href="#xterm_150">Patch #150 - 2000/12/29 - XFree86 623 4.0.2</a></li> 624 625 <li><a href="#xterm_149">Patch #149 - 2000/12/6 - XFree86 626 4.0.1h</a></li> 627 628 <li><a href="#xterm_148">Patch #148 - 2000/10/31 - XFree86 629 4.0.1d</a></li> 630 631 <li><a href="#xterm_147">Patch #147 - 2000/10/26 - XFree86 632 4.0.1c</a></li> 633 634 <li><a href="#xterm_146">Patch #146 - 2000/9/12 - XFree86 635 4.0.1c</a></li> 636 637 <li><a href="#xterm_145">Patch #145 - 2000/9/11 - XFree86 638 4.0.1c</a></li> 639 640 <li><a href="#xterm_144">Patch #144 - 2000/8/23 - XFree86 641 4.0.1b</a></li> 642 643 <li><a href="#xterm_143">Patch #143 - 2000/8/19 - XFree86 644 4.0.1b</a></li> 645 646 <li><a href="#xterm_142">Patch #142 - 2000/8/18 - XFree86 647 4.0.1b</a></li> 648 649 <li><a href="#xterm_141">Patch #141 - 2000/8/14 - XFree86 650 4.0.1b</a></li> 651 652 <li><a href="#xterm_140">Patch #140 - 2000/7/23 - XFree86 653 4.0.1</a></li> 654 655 <li><a href="#xterm_139">Patch #139 - 2000/6/17 - XFree86 656 4.0d</a></li> 657 658 <li><a href="#xterm_138">Patch #138 - 2000/6/15 - XFree86 659 4.0c</a></li> 660 661 <li><a href="#xterm_137">Patch #137 - 2000/6/10 - XFree86 662 4.0b</a></li> 663 664 <li><a href="#xterm_136">Patch #136 - 2000/6/3 - XFree86 665 4.0b</a></li> 666 667 <li><a href="#xterm_135">Patch #135 - 2000/5/29 - XFree86 668 4.0b</a></li> 669 670 <li><a href="#xterm_134">Patch #134 - 2000/5/28 - XFree86 671 4.0b</a></li> 672 673 <li><a href="#xterm_133">Patch #133 - 2000/5/2 - XFree86 674 4.0a</a></li> 675 676 <li><a href="#xterm_132">Patch #132 - 2000/4/11 - XFree86 677 4.0a</a></li> 678 679 <li><a href="#xterm_131">Patch #131 - 2000/3/3 - XFree86 680 3.9.18b</a></li> 681 682 <li><a href="#xterm_130">Patch #130 - 2000/3/1 - XFree86 683 3.9.18a</a></li> 684 685 <li><a href="#xterm_129">Patch #129 - 2000/2/26 - XFree86 686 3.9.18a</a></li> 687 688 <li><a href="#xterm_128">Patch #128 - 2000/2/17 - XFree86 689 3.9.18</a></li> 690 691 <li><a href="#xterm_127">Patch #127 - 2000/2/12 - XFree86 692 3.9.17e</a></li> 693 694 <li><a href="#xterm_126">Patch #126 - 2000/2/8 - XFree86 695 3.9.17c</a></li> 696 697 <li><a href="#xterm_125">Patch #125 - 2000/1/31 - XFree86 698 3.9.17c</a></li> 699 700 <li><a href="#xterm_124">Patch #124 - 2000/1/27 - XFree86 701 3.9.17b</a></li> 702 703 <li><a href="#xterm_123">Patch #123 - 2000/1/22 - XFree86 704 3.9.17a</a></li> 705 706 <li><a href="#xterm_122">Patch #122 - 1999/12/28 - XFree86 707 3.9.16f</a></li> 708 709 <li><a href="#xterm_121">Patch #121 - 1999/11/14 - XFree86 710 3.9.16c</a></li> 711 712 <li><a href="#xterm_120">Patch #120 - 1999/10/28 - XFree86 713 3.9.16c</a></li> 714 715 <li><a href="#xterm_119">Patch #119 - 1999/10/16 - XFree86 716 3.9.16c</a></li> 717 718 <li><a href="#xterm_118">Patch #118 - 1999/10/5 - XFree86 719 3.9.16b</a></li> 720 721 <li><a href="#xterm_117">Patch #117 - 1999/9/29 - XFree86 722 3.9.16b</a></li> 723 724 <li><a href="#xterm_116">Patch #116 - 1999/9/25 - XFree86 725 3.9.16a</a></li> 726 727 <li><a href="#xterm_115">Patch #115 - 1999/9/18 - XFree86 728 3.9.16a</a></li> 729 730 <li><a href="#xterm_114">Patch #114 - 1999/9/15 - XFree86 731 3.9.16</a></li> 732 733 <li><a href="#xterm_113">Patch #113 - 1999/8/15 - XFree86 734 3.9.15b</a></li> 735 736 <li><a href="#xterm_112">Patch #112 - 1999/7/17 - XFree86 737 3.9Pw</a></li> 738 739 <li><a href="#xterm_111">Patch #111 - 1999/7/10 - XFree86 740 3.9Pw</a></li> 741 742 <li><a href="#xterm_110">Patch #110 - 1999/6/29 - XFree86 743 3.9Pu</a></li> 744 745 <li><a href="#xterm_109">Patch #109 - 1999/6/23 - XFree86 746 3.9Pt</a></li> 747 748 <li><a href="#xterm_108">Patch #108 - 1999/6/19 - XFree86 749 3.9Ps</a></li> 750 751 <li><a href="#xterm_107">Patch #107 - 1999/6/12 - XFree86 752 3.9Pq</a></li> 753 754 <li><a href="#xterm_106">Patch #106 - 1999/6/9 - XFree86 755 3.9Pq</a></li> 756 757 <li><a href="#xterm_105">Patch #105 - 1999/6/5 - XFree86 758 3.9Pp</a></li> 759 760 <li><a href="#xterm_104">Patch #104 - 1999/5/30 - XFree86 761 3.9Pn</a></li> 762 763 <li><a href="#xterm_103">Patch #103 - 1999/5/14 - XFree86 764 3.9Pm</a></li> 765 766 <li><a href="#xterm_102">Patch #102 - 1999/5/12 - XFree86 767 3.9Pm</a></li> 768 769 <li><a href="#xterm_101">Patch #101 - 1999/5/10 - XFree86 770 3.9Pm</a></li> 771 772 <li><a href="#xterm_100">Patch #100 - 1999/5/3 - XFree86 773 3.9Pl</a></li> 774 775 <li><a href="#xterm_99">Patch #99 - 1999/5/2 - XFree86 776 3.9Pk</a></li> 777 778 <li><a href="#xterm_98">Patch #98 - 1999/4/26 - XFree86 779 3.9Pk</a></li> 780 781 <li><a href="#xterm_97">Patch #97 - 1999/4/25 - XFree86 782 3.9Pk</a></li> 783 784 <li><a href="#xterm_96">Patch #96 - 1999/4/19 - XFree86 785 3.9Pj</a></li> 786 787 <li><a href="#xterm_95">Patch #95 - 1999/4/5 - XFree86 788 3.9Ph</a></li> 789 790 <li><a href="#xterm_94">Patch #94 - 1999/3/27 - XFree86 791 3.9Pf</a></li> 792 793 <li><a href="#xterm_93">Patch #93 - 1999/3/14 - XFree86 794 3.9Pd</a></li> 795 796 <li><a href="#xterm_92">Patch #92 - 1999/2/5 - XFree86 797 3.9Nz</a></li> 798 799 <li><a href="#xterm_91">Patch #91 - 1999/1/21 - XFree86 800 3.9Nw</a></li> 801 802 <li><a href="#xterm_90">Patch #90 - 1998/12/13 - XFree86 803 3.9Nq</a></li> 804 805 <li><a href="#xterm_89">Patch #89 - 1998/11/20 - XFree86 806 3.9Nm</a></li> 807 808 <li><a href="#xterm_88">Patch #88 - 1998/10/31 - XFree86 3.9Nk 809 and 3.3.2h</a></li> 810 811 <li><a href="#xterm_87">Patch #87 - 1998/10/21 - XFree86 3.9Nj 812 and 3.3.2f</a></li> 813 814 <li><a href="#xterm_86">Patch #86 - 1998/10/14 - XFree86 3.9Nj 815 and 3.3.2e</a></li> 816 817 <li><a href="#xterm_85">Patch #85 - 1998/10/12 - XFree86 3.9Nj 818 and 3.3.2e</a></li> 819 820 <li><a href="#xterm_84">Patch #84 - 1998/10/9 - XFree86 3.9Ni 821 and 3.3.2e</a></li> 822 823 <li><a href="#sync_83">Resync #83 - 1998/10/7 - XFree86 824 3.3.2e</a></li> 825 826 <li><a href="#xterm_83">Patch #83 - 1998/8/25 - XFree86 827 3.9Nb</a></li> 828 829 <li><a href="#xterm_82">Patch #82 - 1998/7/15 - XFree86 830 3.9Aj</a></li> 831 832 <li><a href="#xterm_81">Patch #81 - 1998/7/14 - XFree86 833 3.9Aj</a></li> 834 835 <li><a href="#xterm_80">Patch #80 - 1998/6/29 - XFree86 836 3.9Ai</a></li> 837 838 <li><a href="#xterm_79">Patch #79 - 1998/6/28 - XFree86 839 3.9Ai</a></li> 840 841 <li><a href="#xterm_78">Patch #78 - 1998/6/3 - XFree86 3.9Ah 842 and 3.3.2</a></li> 843 844 <li><a href="#xterm_77">Patch #77 - 1998/5/26 - XFree86 3.9Ah 845 and 3.3.2</a></li> 846 847 <li><a href="#xterm_76">Patch #76 - 1998/5/8 - XFree86 3.9Ah 848 and 3.3.2</a></li> 849 850 <li><a href="#xterm_75">Patch #75 - 1998/5/7 - XFree86 3.9Ah 851 and 3.3.2</a></li> 852 853 <li><a href="#xterm_74">Patch #74 - 1998/4/27 - XFree86 3.9Ag 854 and 3.3.2</a></li> 855 856 <li><a href="#xterm_73">Patch #73 - 1998/4/25 - XFree86 3.9Ag 857 and 3.3.2</a></li> 858 859 <li><a href="#xterm_72">Patch #72 - 1998/4/17 - XFree86 3.9Ag 860 and 3.3.2</a></li> 861 862 <li><a href="#xterm_71">Patch #71 - 1998/4/12 - XFree86 3.9Ag 863 and 3.3.2</a></li> 864 865 <li><a href="#xterm_70">Patch #70 - 1998/3/29 - XFree86 3.9Af 866 and 3.3.2</a></li> 867 868 <li><a href="#xterm_69">Patch #69 - 1998/3/16 - XFree86 3.9Ad 869 and 3.3.2</a></li> 870 871 <li><a href="#xterm_68">Patch #68 - 1998/3/4 - XFree86 3.9Ad 872 and 3.3.1z</a></li> 873 874 <li><a href="#xterm_67">Patch #67 - 1998/2/23 - XFree86 3.9Ad 875 and 3.3.1e</a></li> 876 877 <li><a href="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad 878 and 3.3.1d</a></li> 879 880 <li><a href="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad 881 and 3.3.1c</a></li> 882 883 <li><a href="#xterm_64">Patch #64 - 1998/2/8 - XFree86 884 3.9Ad</a></li> 885 886 <li><a href="#xterm_63">Patch #63 - 1998/2/5 - XFree86 887 3.9Ad</a></li> 888 889 <li><a href="#xterm_62">Patch #62 - 1998/1/23 - XFree86 890 3.9Ac</a></li> 891 892 <li><a href="#xterm_61">Patch #61 - 1998/1/17 - XFree86 893 3.9Ac</a></li> 894 895 <li><a href="#xterm_60">Patch #60 - 1998/1/10 - XFree86 896 3.9Ab</a></li> 897 898 <li><a href="#xterm_59">Patch #59 - 1998/1/5 - XFree86 899 3.9Ab</a></li> 900 901 <li><a href="#xterm_58">Patch #58 - 1998/1/3 - XFree86 902 3.9Ab</a></li> 903 904 <li><a href="#xterm_57">Patch #57 - 1997/12/26 - XFree86 905 3.9Aa</a></li> 906 907 <li><a href="#xterm_56">Patch #56 - 1997/11/28 - XFree86 908 3.9x</a></li> 909 910 <li><a href="#xterm_55">Patch #55 - 1997/11/25 - XFree86 911 3.9x</a></li> 912 913 <li><a href="#xterm_54">Patch #54 - 1997/10/17 - XFree86 914 3.9s</a></li> 915 916 <li><a href="#xterm_53">Patch #53 - 1997/10/12 - XFree86 917 3.9r</a></li> 918 919 <li><a href="#xterm_52">Patch #52 - 1997/9/29 - XFree86 920 3.9q</a></li> 921 922 <li><a href="#xterm_51">Patch #51 - 1997/9/15 - XFree86 923 3.9p</a></li> 924 925 <li><a href="#xterm_50">Patch #50 - 1997/8/22 - XFree86 926 3.9m</a></li> 927 928 <li><a href="#xterm_49">Patch #49 - 1997/8/10 - XFree86 929 3.9k</a></li> 930 931 <li><a href="#xterm_48">Patch #48 - 1997/7/26 - XFree86 932 3.9j</a></li> 933 934 <li><a href="#xterm_47">Patch #47 - 1997/7/13 - XFree86 935 3.9i</a></li> 936 937 <li><a href="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</a></li> 938 939 <li><a href="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</a></li> 940 941 <li><a href="#xterm_44">Patch #44 - 1997/6/22 - XFree86 942 3.9g</a></li> 943 944 <li><a href="#xterm_43">Patch #43 - 1997/6/10 - XFree86 945 3.9d</a></li> 946 947 <li><a href="#xterm_42">Patch #42 - 1997/6/8 - XFree86 948 3.2Xl</a></li> 949 950 <li><a href="#xterm_41">Patch #41 - 1997/5/28 - XFree86 951 3.2Xl</a></li> 952 953 <li><a href="#xterm_40">Patch #40 - 1997/5/26 - XFree86 954 3.2Xl</a></li> 955 956 <li><a href="#xterm_39">Patch #39 - 1997/5/24 - XFree86 957 3.2Xl</a></li> 958 959 <li><a href="#xterm_38">Patch #38 - 1997/5/22 - XFree86 960 3.2Xh</a></li> 961 962 <li><a href="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</a></li> 963 964 <li><a href="#xterm_36">Patch #36 - 1997/1/16 - XFree86 965 3.2r</a></li> 966 967 <li><a href="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</a></li> 968 969 <li><a href="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</a></li> 970 971 <li><a href="#xterm_33">Patch #33 - 1996/11/24 - XFree86 972 3.2</a></li> 973 974 <li><a href="#xterm_32">Patch #32 - 1996/11/21 - XFree86 975 3.2</a></li> 976 977 <li><a href="#xterm_31">Patch #31 - 1996/11/16 - XFree86 978 3.2</a></li> 979 980 <li><a href="#xterm_30">Patch #30 - 1996/11/16 - XFree86 981 3.2</a></li> 982 983 <li><a href="#xterm_29">Patch #29 - 1996/9/15 - XFree86 984 3.1.2Gb</a></li> 985 986 <li><a href="#xterm_28">Patch #28 - 1996/8/31 - XFree86 987 3.1.2F</a></li> 988 989 <li><a href="#xterm_27">Patch #27 - 1996/8/21 - XFree86 990 3.1.2Ek</a></li> 991 992 <li><a href="#xterm_26">Patch #26 - 1996/8/20 - XFree86 993 3.1.2Ei</a></li> 994 995 <li><a href="#xterm_25">Patch #25 - 1996/8/18 - XFree86 996 3.1.2Ei</a></li> 997 998 <li><a href="#xterm_24">Patch #24 - 1996/8/11 - XFree86 999 3.1.2Ee</a></li> 1000 1001 <li><a href="#xterm_23">Patch #23 - 1996/7/31 - XFree86 1002 3.1.2Ec</a></li> 1003 1004 <li><a href="#xterm_22">Patch #22 - 1996/7/26 - XFree86 1005 3.1.2Ec</a></li> 1006 1007 <li><a href="#xterm_21">Patch #21 - 1996/7/24 - XFree86 1008 3.1.2Ec</a></li> 1009 1010 <li><a href="#xterm_20">Patch #20 - 1996/7/24 - XFree86 1011 3.1.2Ec</a></li> 1012 1013 <li><a href="#xterm_19">Patch #19 - 1996/7/21 - XFree86 1014 3.1.2Ec</a></li> 1015 1016 <li><a href="#xterm_18">Patch #18 - 1996/7/18 - XFree86 1017 3.1.2Ec</a></li> 1018 1019 <li><a href="#xterm_17">Patch #17 - 1996/7/2 - XFree86 1020 3.1.2Eb</a></li> 1021 1022 <li><a href="#xterm_16">Patch #16 - 1996/6/25 - XFree86 1023 3.1.2Ea</a></li> 1024 1025 <li><a href="#xterm_15">Patch #15 - 1996/5/29 - XFree86 1026 3.1.2E</a></li> 1027 1028 <li><a href="#xterm_14">Patch #14 - 1996/5/12 - XFree86 1029 3.1.2Dj</a></li> 1030 1031 <li><a href="#xterm_13">Patch #13 - 1996/4/23 - XFree86 1032 3.1.2Df</a></li> 1033 1034 <li><a href="#xterm_12">Patch #12 - 1996/3/16 - XFree86 1035 3.1.2Dc</a></li> 1036 1037 <li><a href="#xterm_11">Patch #11 - 1996/3/5 - XFree86 1038 3.1.2Db</a></li> 1039 1040 <li><a href="#xterm_10">Patch #10 - 1996/2/14 - XFree86 1041 3.1.2Cd</a></li> 1042 1043 <li><a href="#xterm_09">Patch #9 - 1996/2/10 - XFree86 1044 3.1.2Cb</a></li> 1045 1046 <li><a href="#xterm_08">Patch #8 - 1996/2/9 - XFree86 1047 3.1.2Cb</a></li> 1048 1049 <li><a href="#xterm_07">Patch #7 - 1996/1/28 - XFree86 1050 3.1.2n</a></li> 1051 1052 <li><a href="#xterm_06">Patch #6 - 1996/1/8</a></li> 1053 1054 <li><a href="#xterm_05">Patch #5 - 1996/1/7</a></li> 1055 1056 <li><a href="#xterm_04">Patch #4 - 1996/1/7</a></li> 1057 1058 <li><a href="#xterm_03">Patch #3 - 1996/1/7</a></li> 1059 1060 <li><a href="#xterm_02">Patch #2 - 1996/1/7</a></li> 1061 1062 <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> 1063 </ul> 1064 1065 <h1><a name="xterm_392" id="xterm_392">Patch #392 - 1066 2024/05/22</a></h1> 1067 1068 <ul> 1069 <li>improve input decoding for non-Latin1 character sets by 1070 preserving the sense of GL/GR.</li> 1071 1072 <li>add resource <tt>preferLatin1</tt> to simplify UPSS 1073 configuration (Gentoo #932154).</li> 1074 1075 <li>build-fix for <tt>--disable-boxchars</tt>; <a href= 1076 "#xterm_390">patch #390</a> reuses that feature's code to draw 1077 the part of the DEC Technical character set which has no 1078 Unicode equivalent.</li> 1079 1080 <li>modify <tt>#include</tt> of <tt>pty.h</tt> to work with 1081 musl (report by Khem Raj).</li> 1082 1083 <li>improve definitions used in <tt>clock_gettime</tt> logic in 1084 <tt>graphics_sixel.c</tt>, as well as updating comments (patch 1085 by Ben Wong).</li> 1086 1087 <li>amend <code>allowC1Printable</code> changes from <a href= 1088 "#xterm_391">patch #391</a>, restoring a special case which 1089 caused C1 characters to be ignored (report/testcase by Dmytro 1090 Bagrii).</li> 1091 </ul> 1092 1093 <h1><a name="xterm_391" id="xterm_391">Patch #391 - 1094 2024/05/12</a></h1> 1095 1096 <ul> 1097 <li>improve integration between UTF-8 and 1098 <code>allowC1Printable</code>.</li> 1099 1100 <li>alter SIXEL HLS computation to make blue 0 degrees (patch 1101 by Ben Wong).</li> 1102 1103 <li>disable SIXEL aspect-ratio, pending a rewrite (patch by Ben 1104 Wong).</li> 1105 1106 <li>add resource <code>incrementalGraphics</code> (prompted by 1107 patch by Ben Wong).</li> 1108 1109 <li>reorganize <tt>graphics_sixel.c</tt> as a step toward 1110 eliminating graphics buffer-size (integrated patch by Ben 1111 Wong).</li> 1112 1113 <li>use <code>__linux__</code> consistently rather than the 1114 older <code>linux</code>.</li> 1115 1116 <li>build-fix for musl (report by Jonáš Vidra, 1117 adapted patch by Khem Raj): 1118 <ul> 1119 <li>modify <code><em>ifdef</em></code> for 1120 <code>USE_OPENPTY</code>, changing test for 1121 <code>__GLIBC__</code> to <code>__linux__</code></li> 1122 1123 <li>change <code><em>ifdef</em></code>'s for 1124 <code>_POSIX_SOURCE</code> to 1125 <code>_POSIX_VERSION</code></li> 1126 1127 <li>modify <code><em>ifdef</em></code> for 1128 <code>setsid</code> to use a configure-script check for 1129 that function's existence and move the old check to imake 1130 fallbacks.</li> 1131 </ul> 1132 </li> 1133 1134 <li>minor consistency fixes for manpage.</li> 1135 1136 <li>fix regression in <a href="#xterm_390">patch #390</a>: 1137 non-UTF8 text pasted as a XA_UTF8_STRING was not decoded 1138 (report by Petri Kaukasoina).</li> 1139 </ul> 1140 1141 <h1><a name="xterm_390" id="xterm_390">Patch #390 - 1142 2024/02/19</a></h1> 1143 1144 <ul> 1145 <li>improve typography of control-sequences page (patches by 1146 Branden Robinson).</li> 1147 1148 <li>amend UPSS change from <a href="#xterm_389">patch #389</a>, 1149 fixing a regression in VT100/VT220 character sets.</li> 1150 1151 <li>modify ANSI conformance per ECMA-43 and DEC 070: 1152 <ul> 1153 <li>set ANSI conformance level to 3 for DEC levels 2 and 1154 up.</li> 1155 1156 <li>disable locking shifts in level 1, e.g., VT100.</li> 1157 1158 <li>disable single-shifts from G2/G3 in level 1.</li> 1159 1160 <li>use UPSS for G2/G3 in levels 2 and up.</li> 1161 </ul> 1162 </li> 1163 1164 <li>modify invisible-character attribute to permit 1165 <tt>DECRQCRA</tt> to report a consistent checksum 1166 (report/testcase by Thomas Wolff).</li> 1167 1168 <li>align terminfo building blocks in terminfo to correspond to 1169 recent refactoring/trimming in ncurses.</li> 1170 1171 <li>set flag in regexec call for 1172 <code>on<em>N</em>Clicks</code> to handle 1173 “<tt>^</tt>” anchor (patch by Matthew Martin).</li> 1174 1175 <li>add line-drawing data for the characters in <a href= 1176 "https://www.vt100.net/charsets/technical.html"><em>DEC 1177 Technical</em></a> which have no Unicode equivalents.</li> 1178 1179 <li>remove a special case in <tt>encode_scs</tt> which made 1180 xterm report Latin-1 when encoding is set to UTF-8, where ASCII 1181 is the selected character set. This fixes a regression in 1182 vttest for the <tt>DECRSPS</tt> cursor test.</li> 1183 1184 <li>correct values for <em>Ps</em> of <tt>DECAUPSS</tt> in 1185 <tt>ctlseqs.ms</tt> (report by James Holderness).</li> 1186 1187 <li>simplify/correct expression for checking Unicode 1188 non-characters (report by Thomas Wolff).</li> 1189 1190 <li>correct loop for trimming environment variables 1191 (report/patch by Casper Dik).</li> 1192 1193 <li>fixes for manpage formatting (Debian #1041809).</li> 1194 1195 <li>update config.guess, config.sub</li> 1196 </ul> 1197 1198 <h1><a name="xterm_389" id="xterm_389">Patch #389 - 1199 2024/01/01</a></h1> 1200 1201 <ul> 1202 <li>interchange variables in subparameter parsing, fixing a bug 1203 where subparameters after the first parameter could be 1204 misidentified (patch by Adam Saponara).</li> 1205 1206 <li>correct popping of icon/window titles in a case where only 1207 one was pushed from <a href="#xterm_385">patch #385</a> 1208 changes.</li> 1209 1210 <li>add <tt>XTQMODKEYS</tt> response in <tt>DECRQSS</tt>, as 1211 alternative for vim.</li> 1212 1213 <li>correct <tt>DECCIR</tt> encoded information on character 1214 set size, handle a VT525 quirk, and add <tt>DECST8C</tt> 1215 (Windows Terminal #14984).</li> 1216 1217 <li>improve <tt>DECRQCRA</tt> (prompted by discussion with 1218 James Holderness, Windows Terminal #14974).</li> 1219 1220 <li>add part of VT525 color controls: 1221 <ul> 1222 <li><tt>DECAC</tt>, to update default 1223 foreground/background, respond to <tt>DECRQSS</tt></li> 1224 1225 <li><tt>DECATC</tt>, to respond with <tt>DECRQSS</tt></li> 1226 </ul> 1227 </li> 1228 1229 <li>prevent Unicode non-characters from being printed (prompted 1230 by patch by Grady Martin).</li> 1231 1232 <li>modify <tt>send_SGR()</tt> to avoid modifying colors 16 to 1233 255 in printed output (patch by Grady Martin).</li> 1234 1235 <li>minor cleanup of miscellaneous error-codes with 1236 <tt>ERROR_MISC</tt>.</li> 1237 1238 <li>remove legacy <tt><em>CSI</em> 53</tt> for locator status, 1239 corrected in <a href="#xterm_294">patch #294</a>.</li> 1240 1241 <li>modify <tt>DECRQUPSS</tt> and <tt>DECAUPSS</tt> feature to 1242 support VT5xx character sets (report by Thomas Wolff).</li> 1243 1244 <li>improve configure script: 1245 <ul> 1246 <li>reduce configure-check compiler warnings (prompted by 1247 Florian Weimer, Redhat #2251945)</li> 1248 1249 <li>improve usage messages in configure script to make it 1250 clearer when an option value is optional.</li> 1251 </ul> 1252 </li> 1253 1254 <li>improve EWMH handling (report/analysis by Edward Rosten) 1255 <ul> 1256 <li>reset <tt>_NET_WM_STATE_HIDDEN</tt> flag from 1257 <tt>_NET_WM_STATE</tt> before mapping the window to 1258 deiconify.</li> 1259 1260 <li>cache X properties to reduce latency (adapted from 1261 patch by Edward Rosten).</li> 1262 </ul> 1263 </li> 1264 </ul> 1265 1266 <h1><a name="xterm_388" id="xterm_388">Patch #388 - 1267 2023/10/22</a></h1> 1268 1269 <ul> 1270 <li>improve <tt>disallowPasteControls</tt> by adding a category 1271 for the special characters known to <tt>stty</tt> (prompted by 1272 discussion with David Leadbeater).</li> 1273 1274 <li>amend support of <tt>DECAUPSS</tt>, undoing change to 1275 initialization of G2/G3 so that pasting of GR characters works 1276 properly (report/analysis by Petri Kaukasoina).</li> 1277 1278 <li>update config.guess, config.sub</li> 1279 </ul> 1280 1281 <h1><a name="xterm_387" id="xterm_387">Patch #387 - 1282 2023/10/15</a></h1> 1283 1284 <ul> 1285 <li>add <tt>DECRQUPSS</tt> and <tt>DECAUPSS</tt>.</li> 1286 1287 <li>add <tt>DECRQDE</tt> (report by Jake Hamby).</li> 1288 1289 <li>correct indexing expression in title-stack, from <a href= 1290 "#xterm_385">patch #385</a> changes (report by Brian 1291 Lindholm).</li> 1292 </ul> 1293 1294 <h1><a name="xterm_386" id="xterm_386">Patch #386 - 1295 2023/10/09</a></h1> 1296 1297 <ul> 1298 <li>improve references in <tt>ctlseqs.ms</tt> (prompted by 1299 discussion with Kirill Chibisov).</li> 1300 1301 <li>make the maximum amount of memory used for buffering DCS 1302 and OSC strings configurable with <tt>maxStringParse</tt> 1303 resource (report by Daniel Franke).</li> 1304 1305 <li>improve performance of ReGIS when initializing the largest 1306 fontsize (report by Ben Wong).</li> 1307 1308 <li>fix regression in SIXEL colors, in <a href= 1309 "#xterm_385">patch #385</a> (report/patch by Jonny 1310 Langley).</li> 1311 1312 <li>fix typo in <code>--with-wtmp</code> (report/patch by Sven 1313 Joachim)</li> 1314 </ul> 1315 1316 <h1><a name="xterm_385" id="xterm_385">Patch #385 - 1317 2023/10/01</a></h1> 1318 1319 <ul> 1320 <li>fixes for ReGIS (report by Ben Wong). 1321 <ul> 1322 <li>correct conversion from HLS to RGB</li> 1323 1324 <li>improve font-caching performance.</li> 1325 </ul> 1326 </li> 1327 1328 <li>update tables in <code>wcwidth.c</code> based on Unicode 1329 15.1.0</li> 1330 1331 <li>improve <code>fastScroll</code> resource: 1332 <ul> 1333 <li>suppress screen-refreshes for carriage-returns</li> 1334 1335 <li>add <code>-jf</code> option to simplify use of this 1336 resource.</li> 1337 1338 <li>add a control sequence for enabling/disabling the 1339 resource.</li> 1340 1341 <li>enable this feature by default</li> 1342 </ul> 1343 </li> 1344 1345 <li>extend title-stack feature to allow an additional parameter 1346 to directly access the stack, like the 1347 <code>XTPUSHCOLORS</code> and <code>XTPOPCOLORS</code> 1348 feature.</li> 1349 1350 <li>correct size and position of box shown for double-cell 1351 character which happens to be missing from the bitmap font 1352 (report by Peter Fabinski).</li> 1353 1354 <li>improved configure script: 1355 <ul> 1356 <li>add pattern for uClibc-ng to <tt>CF_XOPEN_SOURCE</tt> 1357 (report/patch by Waldemar Brodkorb).</li> 1358 1359 <li>add configure options <tt>--with-utmp-path</tt> and 1360 <tt>--with-wtmp-path</tt> to override configure script's 1361 check for utmp/wtmp pathnames which are shown in the manual 1362 (Debian #1042767).</li> 1363 1364 <li><tt>CF_XOPEN_SOURCE</tt> provides for defining 1365 <tt>_DEFAULT_SOURCE</tt> for MinGW32 and MinGW64.</li> 1366 1367 <li>sed expression used to report gcc version now works 1368 with MinGW</li> 1369 </ul> 1370 </li> 1371 1372 <li>ensure that line-attributes are reset after drawing missing 1373 character (report by Christian Weisgerber).</li> 1374 1375 <li>update config.guess, config.sub</li> 1376 </ul> 1377 1378 <h1><a name="xterm_384" id="xterm_384">Patch #384 - 1379 2023/07/10</a></h1> 1380 1381 <ul> 1382 <li>exclude ASCII space from <code>showMissingGlyphs</code>, 1383 since a few bitmap fonts lack this (report by "SanRemo", 1384 Emanuel Haupt).</li> 1385 1386 <li>correct a step in rendering double-width characters with 1387 bitmap-fonts (report by Peter Fabinski, Debian #1039986).</li> 1388 1389 <li>fixes for ReGIS-related problems (report by Ben Wong): 1390 <ul> 1391 <li>mimic an undocumented hardware VT340 feature which 1392 handles color initialization with incomplete 1393 parameters.</li> 1394 1395 <li>handle whitespace between operator/operands for color 1396 values.</li> 1397 1398 <li>reset ReGIS-context when resetting graphics in 1399 <tt>RIS</tt>.</li> 1400 </ul> 1401 </li> 1402 </ul> 1403 1404 <h1><a name="xterm_383" id="xterm_383">Patch #383 - 1405 2023/06/27</a></h1> 1406 1407 <ul> 1408 <li>expand description of full- and soft-reset in the 1409 manual.</li> 1410 1411 <li>fixes for full- and soft-reset: 1412 <ul> 1413 <li>clear alternate screen on full reset.</li> 1414 1415 <li>disable menu-entry for active icon; it merely shows 1416 whether the feature is enabled.</li> 1417 1418 <li>use <tt>appcursorDefault</tt> and 1419 <tt>appkeypadDefault</tt> resources for reset of 1420 <tt>DECCKM</tt> and <tt>DECKPM</tt>.</li> 1421 1422 <li>save initial resource values for 1423 <tt>sixelScrolling</tt> and <tt>privateColorRegisters</tt>, 1424 using those in full reset.</li> 1425 1426 <li>update checkbox for <em>Enable Blinking Cursor</em> 1427 (report by Rajeev V. Pillai).</li> 1428 </ul> 1429 </li> 1430 1431 <li>add reply for <tt>DECSACE</tt> with <tt>DECRQSS</tt>.</li> 1432 1433 <li>modify status-line feature to exit without erasing for 1434 <tt>DECSTR</tt>.</li> 1435 1436 <li>add private mode <tt>1045</tt> which imitates the original 1437 xterm cursor-back reverse wrapping mode <tt>45</tt> (see 1438 <a href="#xterm_380">patch #380</a>).</li> 1439 1440 <li>improve checks for non-Unicode values, e.g., in 1441 <tt>DECRQCRA</tt>.</li> 1442 1443 <li>re-checkout from RCS archive to fix stale identifiers 1444 (report by Sven Joachim).</li> 1445 </ul> 1446 1447 <h1><a name="xterm_382" id="xterm_382">Patch #382 - 1448 2023/05/30</a></h1> 1449 1450 <ul> 1451 <li>amend change to <tt>CursorBack</tt> in <a href= 1452 "#xterm_380">patch #380</a>, allowing the result to be on the 1453 hidden right-half of double-cell characters (report by Rajeev 1454 V. Pillai).</li> 1455 1456 <li>amend <tt>xtermDrawString</tt>, fixing regression with 1457 <tt>--disable-wide-chars</tt> configuration from <a href= 1458 "#xterm_380">patch #380</a>.</li> 1459 1460 <li>corrected pathname for <tt>run-tic.sh</tt>, for full 1461 install in an out-of-tree build (report by Rajeev V. 1462 Pillai).</li> 1463 </ul> 1464 1465 <h1><a name="xterm_381" id="xterm_381">Patch #381 - 1466 2023/05/28</a></h1> 1467 1468 <ul> 1469 <li>fix a regression in wide bitmap fonts versus check for 1470 missing glyphs (report by Rajeev V. Pillai).</li> 1471 </ul> 1472 1473 <h1><a name="xterm_380" id="xterm_380">Patch #380 - 1474 2023/05/09</a></h1> 1475 1476 <ul> 1477 <li>simplify the change for <code>sixelScrolling</code> from 1478 <a href="#xterm_374">patch #374</a> (report by Per 1479 Bothner).</li> 1480 1481 <li>add <tt>xterm+focus</tt> and <tt>report+da2</tt>, update 1482 <tt>report+version</tt> building blocks in terminfo, from 1483 post-ncurses 6.4</li> 1484 1485 <li>drop the <tt>-title</tt> option from <tt>uxterm</tt> and 1486 <tt>koi8rxterm</tt>, because that interferes with deriving the 1487 default title from the <tt>-e</tt> option (Debian #1031837). 1488 Compensate for this by using the <tt>-class</tt> option to 1489 derive a default title.</li> 1490 1491 <li>improve description of readline 2003 mode in 1492 <tt>ctlseqs.ms</tt> (report by Thomas Wolff).</li> 1493 1494 <li>other improvements to status-line feature (report by Thomas 1495 Wolff): 1496 <ul> 1497 <li>clear status line on <tt>DECCOLM</tt></li> 1498 1499 <li>ignore <tt>DECSASD</tt> if no previous 1500 <tt>DECSSDT</tt></li> 1501 1502 <li>allow <tt>DECSSDT 1</tt> immediately after 1503 <tt>DECSSDT 2</tt>, i.e., without switching back to 1504 host mode.</li> 1505 </ul> 1506 </li> 1507 1508 <li>adjust <tt>RequestResize</tt> to avoid shrinking screen 1509 when using <tt>DECCOLM</tt> while the status-line is active 1510 (report/patch by Thomas Wolff).</li> 1511 1512 <li>disallow wrapping before the beginning of the screen, to 1513 the end of the screen, for cursor-back sequences (Redhat 1514 #2182357).</li> 1515 1516 <li>modify makefile to install the 16x16 xpm files (report by 1517 Harald Dunkel).</li> 1518 1519 <li>update test-package to reflect resolution of Debian 1520 #906901.</li> 1521 1522 <li>change default of <code>showMissingGlyphs</code> to 1523 <em>True</em>.</li> 1524 1525 <li>improve handling of double-sized characters when those 1526 happen to be missing from the bitmap font and/or are 1527 fullwidth.</li> 1528 1529 <li>pointer/overflow fixes (reported by David Leadbeater): 1530 <ul> 1531 <li>improve limit-checks for control-sequence numeric 1532 parameters in SIXEL graphics.</li> 1533 1534 <li>add null-pointer checks in <tt>WriteNow</tt> macro to 1535 handle a case where <tt>SS2</tt> or <tt>SS3</tt> might be 1536 in effect while processing a combining character.</li> 1537 1538 <li>disallow ReGIS reporting for character-set names 1539 containing characters other than alphanumerics or 1540 underscore.</li> 1541 1542 <li>implement TrueType fallback font for double-sized 1543 characters, including Unicode fullwidth. Also add 1544 <tt>limitFontHeight</tt> to provide for configuring the 1545 distinction between slightly-oversized glyphs and 1546 double-sized glyphs.</li> 1547 </ul> 1548 </li> 1549 1550 <li>configure script improvements: 1551 <ul> 1552 <li>check for <tt>nfsd_t</tt></li> 1553 </ul> 1554 </li> 1555 1556 <li>fix a typo in the underline cursor thickness derivation 1557 (patch by Jan Engelhardt).</li> 1558 </ul> 1559 1560 <h1><a name="xterm_379" id="xterm_379">Patch #379 - 1561 2023/02/15</a></h1> 1562 1563 <ul> 1564 <li>improve text-cursor (patch by Jan Engelhardt): 1565 <ul> 1566 <li>allow selecting <tt>CURSOR_BAR</tt> mode from 1567 command-line/Xresources.</li> 1568 1569 <li>draw cursor using filled rectangle instead of rectangle 1570 outline to permit thicker underlines/bars.</li> 1571 1572 <li>scale up cursor relative to font size.</li> 1573 </ul> 1574 </li> 1575 1576 <li>improve readline modes (Fedora #2166860): 1577 <ul> 1578 <li>document readline modes</li> 1579 1580 <li>change the feature to configure by default</li> 1581 1582 <li>replace hard-coded SS3 for cursor movement with current 1583 mode</li> 1584 1585 <li>replace hard-coded erase/lnext characters with current 1586 values</li> 1587 </ul> 1588 </li> 1589 1590 <li>improve status-line (report by Thomas Wolff): 1591 <ul> 1592 <li><tt>RIS</tt> turns off status-line</li> 1593 1594 <li>Right-margin (<tt>DECLRMM</tt> and <tt>DECSLRM</tt>) 1595 limits the length of text written/updated in the 1596 status-line.</li> 1597 1598 <li>Most controls which affect the whole screen are ignored 1599 while updating the status-line.</li> 1600 </ul> 1601 </li> 1602 1603 <li>modify configure check for <tt>tgetent</tt> to allow for 1604 some special cases of ncurses configuration (report by Satadru 1605 Pramani).</li> 1606 1607 <li>reduce timeout, improve warning message if resize is run on 1608 a terminal which is not VT100-compatible.</li> 1609 1610 <li>reduce compiler warnings in configure script.</li> 1611 </ul> 1612 1613 <h1><a name="xterm_378" id="xterm_378">Patch #378 - 1614 2023/01/09</a></h1> 1615 1616 <ul> 1617 <li>improve descriptions of <em>XTQMODKEYS</em> and 1618 <em>XTQALLOWED</em> features in <tt>ctlseqs.ms</tt> (reports by 1619 Bram Moolenaar, Thomas Wolff).</li> 1620 1621 <li>add <tt>bracketed+paste</tt> and <tt>report+version</tt> 1622 building blocks to terminfo, from ncurses 6.4</li> 1623 1624 <li>improve check for unsupported formatting characters, e.g., 1625 zero-width space, to properly ignore them (report by Thomas 1626 Wolff).</li> 1627 1628 <li>improve/document error-checking for some of the controls 1629 which return responses: DECRQSS, XTGETXRES, XTSETTCAP, 1630 XTGETTCAP (prompted by discussion with David Leadbeater).</li> 1631 1632 <li>improve limit-checks for fallback font cache (report by 1633 Dimitrije Erdeljan).</li> 1634 1635 <li>improve check for too-wide glyph in fallback font by 1636 allowing xterm to continue searching for a suitable font rather 1637 than just failing on the first. Also add 1638 <tt>limitFontWidth</tt> to allow changing the amount by which a 1639 glyph must extend outside the font's bounding box to disallow 1640 it.</li> 1641 </ul> 1642 1643 <h1><a name="xterm_377" id="xterm_377">Patch #377 - 1644 2022/11/25</a></h1> 1645 1646 <ul> 1647 <li>add control sequences for reporting the current state of 1648 the modified keys options (XTQMODKEYS) and allowed/disallowed 1649 operations (XTQALLOWED), (prompted by discussion with Bram 1650 Moolenaar).</li> 1651 1652 <li>amend <code>modifyOtherKeys</code> case 2 to distinguish 1653 the escape character with modifiers, e.g., shift-escape, from a 1654 plain escape character (suggested by Bram Moolenaar).</li> 1655 1656 <li>improve parsing and error-recovery in the case where a list 1657 of X11 bitmap fonts is given in the <code>-fn</code> and 1658 related options.</li> 1659 1660 <li>change default for <code>xftTrackMemUsage</code> to false, 1661 because libXft does not handle certain fonts.</li> 1662 </ul> 1663 1664 <h1><a name="xterm_376" id="xterm_376">Patch #376 - 1665 2022/11/16</a></h1> 1666 1667 <ul> 1668 <li>modify configure script to always check for gcc 1669 attributes,</li> 1670 1671 <li>update <code>install-sh</code>.</li> 1672 1673 <li>fix parsing of <code>result -u</code> in 1674 <code>vttests/halves.pl</code>.</li> 1675 1676 <li>add a note in <code>ctlseqs.ms</code> about compatibility 1677 of <code>TBC</code>.</li> 1678 1679 <li>fix a copy/paste error in manual (patch by Grady 1680 Martin).</li> 1681 1682 <li>add null-pointer checks in <code>x_strcasecmp</code> and 1683 <code>x_strncasecmp</code>, to help with error-recovery for a 1684 missing font (Debian #1022942).</li> 1685 </ul> 1686 1687 <h1><a name="xterm_375" id="xterm_375">Patch #375 - 1688 2022/10/23</a></h1> 1689 1690 <ul> 1691 <li>improve error-recovery when setting a bitmap font for the 1692 VT100 window, e.g., in case <em>OSC 50</em> failed, 1693 restoring the most recent valid font so that a subsequent 1694 <em>OSC 50</em> reports this correctly (report by David 1695 Leadbeater).</li> 1696 1697 <li>exclude <code>MC_XDG_OPEN</code> from environment variables 1698 trimmed on startup (report by Gabor Hauzer).</li> 1699 1700 <li>check for null pointer in <code>isSelect()</code> (report 1701 by Column Paget).</li> 1702 </ul> 1703 1704 <h1><a name="xterm_374" id="xterm_374">Patch #374 - 1705 2022/10/10</a></h1> 1706 1707 <ul> 1708 <li>eliminate use of grep aliases from vttests scripts.</li> 1709 1710 <li>amend discussion of <code>DECSDM</code> versus <em>Sixel 1711 Scrolling</em> in <code>ctlseqs.ms</code> (reports by Hayaki 1712 Saito, Ben Wong).</li> 1713 1714 <li>change default for <code>sixelScrolling</code> resource to 1715 better match VT330/VT340 <code>DECSDM</code> setting (patch by 1716 Ben Wong).</li> 1717 1718 <li>fix some gcc and coverity warnings.</li> 1719 1720 <li>improve memory usage for <tt>OSC 52</tt> (report by 1721 David Leadbeater).</li> 1722 1723 <li>fix regression in <a href="#xterm_373">xterm-373</a> change 1724 adding resources <tt>xftTrackMemUsage</tt> to 1725 <tt>xftMaxGlyphMemory</tt>, which did not first cache the 1726 server's resource-settings (report/testcase by Gabor Hauzer, as 1727 well as Debian #1021243).</li> 1728 1729 <li>fix regression in <a href="#xterm_373">xterm-373</a> change 1730 for status-line vs alternate screen (report by Rajeev V. 1731 Pillai).</li> 1732 1733 <li>configure script improvements: 1734 <ul> 1735 <li>modify <tt>CF_XOPEN_SOURCE</tt> to handle more special 1736 cases of Linux (reports by Adam Sampson, Sven 1737 Joachim).</li> 1738 1739 <li>modify checks for egrep/fgrep aliases to work around 1740 warning messages from GNU grep 3.8</li> 1741 </ul> 1742 </li> 1743 </ul> 1744 1745 <h1><a name="xterm_373" id="xterm_373">Patch #373 - 1746 2022/09/25</a></h1> 1747 1748 <ul> 1749 <li>improve rendering of TrueType fonts: 1750 <ul> 1751 <li>add resource <tt>xftTrackMemUsage</tt> to 1752 enable/disable a new feature of Xft which improves 1753 performance.</li> 1754 1755 <li>add resources <tt>xftMaxGlyphMemory</tt> and 1756 <tt>xftMaxUnrefFonts</tt> to customize memory-usage of Xft 1757 and fontconfig.</li> 1758 1759 <li>provide for display of colored fonts in libXft 1760 2.3.5</li> 1761 1762 <li>allow for an extra TrueType font to be specified using 1763 the <code>-fa</code> option, as an override to the 1764 <em>fontconfig</em> scheme of fallback fonts (request by 1765 Nickolas Raymond Kaczynski).</li> 1766 1767 <li>improve caching of TrueType missing-glyph tests.</li> 1768 1769 <li>allow no more than 255 fonts to be scanned for a 1770 fontset.</li> 1771 1772 <li>eliminate a table-lookup in <tt>findXftGlyph</tt></li> 1773 </ul> 1774 </li> 1775 1776 <li>improvements status-line feature: 1777 <ul> 1778 <li>save/restore wraparound flag when updating the 1779 status-line (report by Rajeev V. Pillai).</li> 1780 1781 <li>avoid clearing the status-line when switching between 1782 normal and alternate screens (report by Valtteri 1783 Vuorikoski).</li> 1784 1785 <li>remove adjustment from <tt>update_winsize</tt> leftover 1786 from initial work (report by Valtteri Vuorikoski).</li> 1787 </ul> 1788 </li> 1789 1790 <li>modify <tt>wcwidth</tt> tables to separate Unicode 1791 <em>Cf</em> category as <em>formatting</em> control-characters, 1792 to better match the guideline for <a href= 1793 "http://www.unicode.org/faq/unsup_char.html">unsupported 1794 characters</a> (report by Tim Chase).</li> 1795 1796 <li>add configure option 1797 <tt>--disable-exec-selection</tt>.</li> 1798 1799 <li>use <tt>mkstemp</tt> where <tt>mkdtemp</tt> is unavailable, 1800 when initializing colored cursor.</li> 1801 1802 <li>adapt fixes from OpenBSD xenocara: 1803 <ul> 1804 <li>improve ifdef's for a few optional features.</li> 1805 1806 <li>correct <tt>#ifdef</tt> to <tt>#if</tt> in a few uses 1807 of <tt>OPT_PRINT_ON_EXIT</tt>.</li> 1808 </ul> 1809 </li> 1810 1811 <li>set <tt>StartupWMClass</tt> in 1812 “<tt>.desktop</tt>” files, e.g., to help 1813 <tt>cinnamon-session</tt> notice that xterm sets 1814 <tt>WM_CLASS</tt> and use its icon (patch by Richard de 1815 Boer).</li> 1816 1817 <li>disable pixel computation when rgb width is greater than 8, 1818 to work with depth 30 (patch by Denis Kaganovich).</li> 1819 1820 <li>improve color-computation for SGR 2 faint/dim (patch by 1821 Boian Bonev). Add resource <tt>faintIsRelative</tt> to specify 1822 if the modified computation should be used (prompted by 1823 discussion with Matthieu Herrb).</li> 1824 1825 <li>correct comparison-length for environment variable cleanup 1826 (patch by Brendan O' Dea).</li> 1827 1828 <li>correct <tt>dsl</tt> capability for <tt>dec+sl</tt> block 1829 in terminfo (report by Rajeev V. Pillai).</li> 1830 1831 <li>improve output formatting by <tt>vttests/utf8.pl</tt></li> 1832 1833 <li>repair test/demo scripts still using "vxt-" prefix, some 1834 cleanup with shellcheck.</li> 1835 1836 <li>enable page-number for <tt>DECXCPR</tt> response in 1837 VT330.</li> 1838 1839 <li>amend change for combining characters in <a href= 1840 "#xterm_371">patch #371</a> to limit it to the 1841 currently-defined codes (report by Thomas Wolff).</li> 1842 1843 <li>add directory-template parameter to <tt>mktemp</tt> in 1844 shell-scripts to improve portability to older systems (patch by 1845 Ryan Schmidt).</li> 1846 1847 <li>mention webpage <a href= 1848 "https://invisible-island.net/xterm/xterm-paste64.html"><em>XTerm 1849 – bracketed-paste</em></a> in 1850 <code>ctlseqs.ms</code></li> 1851 1852 <li>update manual-page descriptions for 1853 <code>allowPasteControls</code> and 1854 <code>disallowedPasteControls</code> (<a href= 1855 "#xterm_363">patch #363</a>).</li> 1856 1857 <li>further extended list of environment variables to purge on 1858 startup (suggested by Thomas Wolff).</li> 1859 1860 <li>update config.guess, config.sub</li> 1861 </ul> 1862 1863 <h1><a name="xterm_372" id="xterm_372">Patch #372 - 1864 2022/03/09</a></h1> 1865 1866 <ul> 1867 <li>amend allocation/freeing of scrollback lines, eliminating 1868 an adjustment for status-line added in <a href= 1869 "#xterm_371">patch #371</a> (report/testcase by Rajeev V. 1870 Pillai).</li> 1871 </ul> 1872 1873 <h1><a name="xterm_371" id="xterm_371">Patch #371 - 1874 2022/02/24</a></h1> 1875 1876 <ul> 1877 <li>drop double-buffer default from test-packages, since that 1878 interferes with status-line.</li> 1879 1880 <li>add <code>faceSize7</code> to table in 1881 <code>charproc.c</code>, overlooked in <a href= 1882 "#xterm_360">patch #360</a> (patch by Vladimir A. Pavlov).</li> 1883 1884 <li>use <code>XDrawString</code> rather than 1885 <code>XDrawString16</code> for text when the latter is not 1886 needed.</li> 1887 1888 <li>improve performance for initializing/reusing graphic 1889 objects in the SIXEL feature.</li> 1890 1891 <li>improve error-checking for <code>resize</code>.</li> 1892 1893 <li>fix errata in manual page (Debian #988221).</li> 1894 1895 <li>extended list of environment variables to purge on startup, 1896 i.e., in case a user starts xterm from another terminal 1897 emulator.</li> 1898 1899 <li>add comment in <code>cursor.c</code> to explain why 1900 autowrap (<code>DECAWM</code>) does not apply to data 1901 saved/restored with save/restore cursor-operations (report by 1902 Thomas Wolff).</li> 1903 1904 <li>add special case in generating the combining-character 1905 table in <code>wcwidth.c</code>, for Hangul Jamo Extended-B 1906 (report by Luis Javier Merino).</li> 1907 1908 <li>simplify/improve portability of <code>trap</code> commands 1909 in shell-scripts.</li> 1910 1911 <li>update configure options<br> 1912 <code>--disable-rectangles</code>,<br> 1913 <code>--disable-tcap-fkeys</code> and<br> 1914 <code>--disable-tcap-query</code><br> 1915 to account for changed default settings.</li> 1916 1917 <li>rather than ignore empty parameter for setting title, use 1918 that to reset it to “xterm” for scripting.</li> 1919 1920 <li>check for out-of-bounds condition while drawing sixels, and 1921 quit that operation (report by Nick Black).</li> 1922 1923 <li>add fallback definition for <code>PROJECTROOT</code> so 1924 that a suitable default location for <code>luit</code> will be 1925 compiled-in on build-servers.</li> 1926 1927 <li>implement DEC status-line controls DECSASD/DECSSDT: 1928 <ul> 1929 <li>decode controls, set state</li> 1930 1931 <li>implement DECRQSS responses</li> 1932 1933 <li>implement indicator-style status-line</li> 1934 1935 <li>add configure option 1936 <code>--enable-status-line</code></li> 1937 1938 <li>add resource <code>indicatorFormat</code></li> 1939 1940 <li>implement host-writable status-line, able to handle 1941 video-attributes and simple left/right cursor movement. 1942 This disallows all of the DEC/xterm private modes such as 1943 switching to/from the alternate screen.</li> 1944 1945 <li>move the status-line if the window is resized.</li> 1946 1947 <li><em>Note:</em> the associated screen-resizing does not 1948 work for the special case of TrueType fonts with 1949 double-buffering (see note in <a href= 1950 "#xterm_349_xft_bug">patch #349</a>).</li> 1951 </ul> 1952 </li> 1953 1954 <li>modify configure-script fixup for <code>-Werror</code> 1955 options to exclude fixup for <code>-Werror=format</code>, e.g., 1956 <code>-Werror=format-security</code>.</li> 1957 1958 <li>amend change from <a href="#xterm_370">patch #370</a>; DEC 1959 070's pseudo-code for DECCOLM incorrectly suggests that it 1960 enables DECLRMM as a side-effect.</li> 1961 1962 <li>fix some memory leaks seen using esctest and asan2 (patch 1963 by Luis Javier Merino).</li> 1964 </ul> 1965 1966 <h1><a name="xterm_370" id="xterm_370">Patch #370 - 1967 2021/11/13</a></h1> 1968 1969 <ul> 1970 <li>add <code>-a</code>, <code>-c</code> and <code>-d</code> 1971 options to <code>query-status.pl</code> to improve test for 1972 <code>DECRQSS</code>.</li> 1973 1974 <li>expanded discussion of maximum graphics geometry in 1975 <code>ctlseqs.ms</code> (suggested by Bon Wong).</li> 1976 1977 <li>corrected parameter symbol for <code>DECCARA</code> and 1978 <code>DECRARA</code> in <code>ctlseqs.ms</code> to indicate 1979 that multiple parameters may be used (report by Thomas 1980 Wolff).</li> 1981 1982 <li>add several test/demo scripts.</li> 1983 1984 <li>improve <code>DECCOLM</code>, <code>DECLRMM</code> and 1985 <code>DECALN</code> referring to pseudo-code in DEC 070.</li> 1986 1987 <li>amend a change in patch #348 which caused left/right margin 1988 mode to be reset when resizing the terminal window (report by 1989 Valentine Barshak).</li> 1990 1991 <li>fix a misnamed macro-parameter (patch by Rajeev V. 1992 Pillai).</li> 1993 1994 <li>fix spacing of <code>wideFont</code> when its width is not 1995 exactly twice as wide as the normal font (report by Rajeev V. 1996 Pillai).</li> 1997 1998 <li>suppress loading of italic font in a few places when 1999 <code>colorITmode</code> is enabled (report/analysis by Rajeev 2000 V. Pillai).</li> 2001 2002 <li>modify <code>XTSMGRAPHICS</code> to return failure status 2003 if the terminal is not configured to support the corresponding 2004 ReGIS or SIXEL feature (report by Nick Black, notcurses #2252, 2005 notcurses #2257).</li> 2006 2007 <li>modify <code>DECERA</code> and <code>DECFRA</code> to erase 2008 corresponding area in SIXEL graphics (patch by Nick Black, 2009 notcurses #1740, vt340test #16). Also modify 2010 <code>DECSERA</code>.</li> 2011 2012 <li>equate visuals for TrueColor and DirectColor (patch by 2013 Denis Kaganovich).</li> 2014 2015 <li>correct computation for pixel value of rgb when using depth 2016 16 (report by Denis Kaganovich).</li> 2017 2018 <li>correct wrapping of VT100-style double-sized characters 2019 when configured for Unicode wide-characters (report by Luis 2020 Javier Merino).</li> 2021 2022 <li>updated default value for <code>sixelScrolling</code> 2023 resource to match expected behavior versus <code>DECSDM</code> 2024 change in <a href="#xterm_369">patch #369</a> (report by Grant 2025 Taylor).</li> 2026 </ul> 2027 2028 <h1><a name="xterm_369" id="xterm_369">Patch #369 - 2029 2021/09/21</a></h1> 2030 2031 <ul> 2032 <li>modify <code>run-tic.sh</code> to work around bug in 2033 development version of ncurses which was packaged in FreeBSD 2034 ports.</li> 2035 2036 <li>remove ifdef's for <code>OPT_COLOR_RES</code> and 2037 <code>OPT_COLOR_RES2</code>.</li> 2038 2039 <li>improve performance over slow connections (report by Harald 2040 Dunkel).</li> 2041 2042 <li>update cursor if restoring mode for DECTCEM.</li> 2043 2044 <li>modify <code>CharWidth</code> macro to ensure that the 2045 shortcut for Latin-1 is only applied when UTF-8 is not enabled, 2046 to fix a bug in handling soft-hyphen from <a href= 2047 "#xterm_334">patch #334</a> changes (patch by Martijn van 2048 Duren).</li> 2049 2050 <li>improve terminfo: 2051 <ul> 2052 <li>fill-in function-keys in terminfo which are not Sun/HP 2053 keyboards using <code>xterm+nopcfkeys</code> 2054 building-block.</li> 2055 2056 <li>add kbeg to xterm+keypad to accommodate termcap 2057 applications</li> 2058 2059 <li>add smglp and smgrp to vt420+lrmm, to provide useful 2060 data for the "tabs" <code><strong>+m</strong></code> 2061 option</li> 2062 </ul> 2063 </li> 2064 2065 <li>support shift-tab in Sun, HP and SCO keyboards.</li> 2066 2067 <li>document some legacy features in <code>ctlseqs.ms</code> 2068 (prompted by discussion with Jimmy Aguilar Mena "Ergus").</li> 2069 2070 <li>add “trim” option to <code>cdXtraScroll</code> 2071 and <code>tiXtraScroll</code>.</li> 2072 2073 <li>remove support for non-fifo save-lines configuration.</li> 2074 2075 <li>extend <code>cdXtraScroll</code> to check if the cursor is 2076 at the upper-left of the scrolling region when the erasure is 2077 for the remainder of the screen versus the whole screen 2078 (prompted by discussion with Jörg Breitbart).</li> 2079 2080 <li>add workaround for broken pcre2 package in Debian 10.</li> 2081 2082 <li>change screen-refresh call used for <code>DECCARA</code> 2083 and <code>DECRARA</code> to ensure that trailing blanks which 2084 are part of the rectangle are repainted (report/analysis by 2085 Dennis Filder).</li> 2086 2087 <li>when resetting the terminal, ensure that the cursor shape 2088 also is reset, e.g., if <code>DECSCUSR</code> has been used to 2089 modify the cursor shape for an xterm which was started with the 2090 underlined cursor option (report/analysis by Luis Javier 2091 Merino).</li> 2092 2093 <li>prevent <code>DECSCUSR</code> from blinking the cursor if 2094 the <code>cursorBlink</code> resource is “never” 2095 (report by Vladimir D Seleznev).</li> 2096 2097 <li>invert the sense of <code>DECSDM</code>, to correspond with 2098 VT382 manuals (lsix #41).</li> 2099 2100 <li>update tables in <code>wcwidth.c</code> based on Unicode 2101 14.0.0</li> 2102 </ul> 2103 2104 <h1><a name="xterm_368" id="xterm_368">Patch #368 - 2105 2021/06/07</a></h1> 2106 2107 <ul> 2108 <li>add <code>DefaultOff</code> option to 2109 <code>RenderFont</code> resource, as part of the 2110 session-management feature.</li> 2111 2112 <li>add auto-scroll-lock feature (patch by Stelios 2113 Bounanos).</li> 2114 2115 <li>update the window-size information returned via 2116 <code>TIOCGWINSZ</code> when rows/columns are unchanged but the 2117 font-size changes (report by Nick Black).</li> 2118 2119 <li>improve session-management feature by saving/restoring the 2120 font settings.</li> 2121 2122 <li>update config.guess, config.sub</li> 2123 </ul> 2124 2125 <h1><a name="xterm_367" id="xterm_367">Patch #367 - 2126 2021/03/26</a></h1> 2127 2128 <ul> 2129 <li>add <code>OSC 22</code> to allow programs to select 2130 different pointer cursor at runtime.</li> 2131 2132 <li>change configuration for <em>no-return</em> functions to 2133 use <code>_Noreturn</code> when it is available, because 2134 <code>clang --analyze</code> does not properly handle the gcc 2135 noreturn attribute.</li> 2136 2137 <li>add <code>cursorTheme</code> resource to provide a way to 2138 enable or disable the cursor theme feature.</li> 2139 2140 <li>modified <code>CopyWait</code> event retries to use shorter 2141 sleeps, to improve responsiveness (tmux #2556).</li> 2142 2143 <li>improve quoting/escaping in demo-scripts per 2144 shellcheck.</li> 2145 2146 <li>add <code>resizeByPixel</code> resource, to permit 2147 disabling window manager resizing-hints (patch by Tim 2148 Oehl).</li> 2149 2150 <li>corrected <code>printOptsImmediate</code> handling of 2151 alternate-screen (report by Abhijit Dasgupta).</li> 2152 2153 <li>update sample terminfo to more closely match ncurses.</li> 2154 2155 <li>add/improve limit-checks for Xlib calls (report by Roman 2156 Fiedler).</li> 2157 2158 <li>fix a typo in the help-message (report by Tomas 2159 Korbar).</li> 2160 </ul> 2161 2162 <h1><a name="xterm_366" id="xterm_366">Patch #366 - 2163 2021/02/10</a></h1> 2164 2165 <ul> 2166 <li>correct a compiler-warning fix in <a href= 2167 "#xterm_352">patch #352</a> which allowed sign-extension of 2168 coordinate values (report by "CismonX").</li> 2169 2170 <li>correct upper-limit for selection buffer, accounting for 2171 combining characters (report/testcase by Tavis Ormandy).</li> 2172 2173 <li>with <code>alwaysHighlight</code> true, xterm does not 2174 properly track focus. The <em>screen->select</em> 2175 <code>FOCUS</code> flag remains always on, which prevents 2176 <code>bellIsUrgent</code> from working, as the urgent 2177 <code>WM_HINT</code> flag is only set in 2178 <code>setXUrgency()</code> when the window is not focused. Fix 2179 this by updating <em>screen->select</em> in 2180 <code>unselectwindow()</code> regardless of the value of 2181 <code>always_highlight</code> (patch by Jiri Bohac).</li> 2182 2183 <li>improve fix for interaction between SRM and ENQ (report by 2184 Grant Taylor).</li> 2185 2186 <li>build-fix for <code>--with-Xaw3dxft</code>, needed when 2187 <code>--with-toolbar</code> is omitted (report by Jimmy Olgeni, 2188 Emanuel Haupt).</li> 2189 </ul> 2190 2191 <h1><a name="xterm_365" id="xterm_365">Patch #365 - 2192 2021/02/03</a></h1> 2193 2194 <ul> 2195 <li>amend fix for “word” selection in <a href= 2196 "#xterm_364">patch #364</a> to limit that to the 2197 <code>insert-selectable</code> <em>action</em>, which reads 2198 data from the screen. This restores the interactive behavior 2199 where double-clicking on a “word” would make 2200 subsequent selection extensions by words as well as suppressing 2201 some boundary-checks (report by David Wolfskill, FreeBSD 2202 #253225).</li> 2203 </ul> 2204 2205 <h1><a name="xterm_364" id="xterm_364">Patch #364 - 2206 2021/02/02</a></h1> 2207 2208 <ul> 2209 <li>add <code>-fc</code> option.</li> 2210 2211 <li>correct/improve limit-checks for SRM versus ENQ from 2212 <a href="#xterm_344">patch #344</a> (report by Tom 2213 Szilagyi).</li> 2214 2215 <li>enable <code>XftFont</code> resource in Xaw3dxft 2216 configuration (patch by Tavis Ormandy).</li> 2217 2218 <li>improve quoting/escaping in build-scripts per 2219 shellcheck.</li> 2220 2221 <li>add <code>libpcre2-posix</code> to the packages tested for 2222 <code>--with-pcre2</code> option, needed with Fedora (report by 2223 Tomas Korbar).</li> 2224 2225 <li>correct a typo in manual page, and note that 2226 <code>KeepClipboard</code> may not be compiled-in (report/patch 2227 by Sean C Farley).</li> 2228 2229 <li>corrected boundary-checks for “word” selection 2230 used in <code>on<em>N</em>Clicks</code> resources (report by 2231 Tavis Ormandy).</li> 2232 2233 <li>update to autoconf-2.52-20210101, to improve shellcheck 2234 warnings.</li> 2235 2236 <li>improve configure check for desktop categories.</li> 2237 </ul> 2238 2239 <h1><a name="xterm_363" id="xterm_363">Patch #363 - 2240 2020/12/26</a></h1> 2241 2242 <ul> 2243 <li>disable groff hyphenation in generated html when using 2244 man2html.</li> 2245 2246 <li>change SCS “<code>&4</code>” Cyrillic to 2247 non-NRCS, per VT520 manual.</li> 2248 2249 <li>amend fix for SCS in <a href="#xterm_198">patch #198</a> to 2250 remove <code>DEL</code> rather than converting it to a space 2251 (report by Thomas Wolff).</li> 2252 2253 <li>modify state transitions for selecting character sets to 2254 eliminate an ambiguity between the “A” used in 2255 VT220 versus VT320.</li> 2256 2257 <li>improve error recovery when selecting characters by 2258 resetting to US ASCII when no suitable encoding is found, e.g., 2259 attempting to use an NRCS sequence when NRCS is not 2260 enabled.</li> 2261 2262 <li>turn off hyphenation in “<code>.txt</code>” 2263 conversion, prompted by groff changes.</li> 2264 2265 <li>add VT5xx ISO Latin-2 (prompted by discussion with Thomas 2266 Wolff).</li> 2267 2268 <li>amend change from <a href="#xterm_361">patch #361</a> to 2269 event-handling in <code>CopyWait</code> to handle active-icon 2270 as a special case (Debian #975687).</li> 2271 2272 <li>add call to <code>loadColorTable</code> to get the visual 2273 information needed to decode BE RGBA32 color format (patch by 2274 Leandro Lupori).</li> 2275 2276 <li>modify the resource-parsing for 2277 <code>disallowedPasteControls</code> and similar lists of 2278 names/numbers to recognize “~;” (tilde) for 2279 cancelling a given name/number.</li> 2280 2281 <li>add ENQ, EOT and NUL to default for 2282 <code>disallowedPasteControls</code>.</li> 2283 2284 <li>change default for <code>disallowedPasteControls</code> to 2285 omit the tab character (suggested by Harald Dunkel).</li> 2286 2287 <li>fix swapped height/width in <code>regisScreenSize</code> 2288 and <code>maxGraphicSize</code> resources using "auto" value, 2289 from <a href="#xterm_314">patch #314</a> (report by Anton 2290 Lavrentiev)</li> 2291 2292 <li>revise <a href="#xterm_362">patch #362</a> change for 2293 shift-modifier versus mouse protocol and select/paste by adding 2294 resource <code>shiftEscape</code>, which can be enabled via a 2295 control sequence (prompted by discussion with Matthijs van 2296 Duin).</li> 2297 2298 <li>simplify/improve ifdef in trace code for using a separate 2299 set of files for each run of xterm.</li> 2300 2301 <li>add options <code>-r</code> and <code>-t</code> to 2302 <code>vttests/query-color.pl</code> to show the 6-digit RGB 2303 code and actual colors.</li> 2304 2305 <li>add <code>nel</code> to <code>xterm-basic</code> 2306 terminfo.</li> 2307 2308 <li>alter <code>vttests/modify-keys.pl</code> to omit HTML 2309 reference links to the modified-keys table where no keycode was 2310 available.</li> 2311 </ul> 2312 2313 <h1><a name="xterm_362" id="xterm_362">Patch #362 - 2314 2020/11/11</a></h1> 2315 2316 <ul> 2317 <li>cleanup of calls to <code>free</code>, removing checks for 2318 null (Walter Harms).</li> 2319 2320 <li>improved mouse-button reporting (prompted by discussion 2321 with Stephane Chazelas) 2322 <ul> 2323 <li>narrow the scope of the change for shift-key in 2324 <a href="#xterm_361">patch #361</a> to make it apply only 2325 when the <code>modifyOtherKeys</code> resource is set to 2 2326 (i.e., “program mode”). Also, when checking the 2327 shift-key, ignore modifiers other than shift, control and 2328 “meta”</li> 2329 2330 <li>use the alt/meta modifier information obtained in 2331 <code>VTInitModifiers</code> to replace a hard-coded 2332 <em>mod1</em> used to detect “Meta” for 2333 mouse-button responses.</li> 2334 </ul> 2335 </li> 2336 2337 <li>reduce <code>SIGWINCH</code>'s sent to the client by 2338 filtering out duplicates.</li> 2339 2340 <li>improve display when <code>scaleHeight</code> is greater 2341 than 1: 2342 <ul> 2343 <li>the text-cursor is vertically-centered on the current 2344 line, rather than only extending below the current line 2345 (report by Manu Chaturvedi).</li> 2346 2347 <li>the built-in line-drawing characters extend to the 2348 scaled cell-height.</li> 2349 </ul> 2350 </li> 2351 2352 <li>fill-in special case for motion-events to match the changes 2353 for shift-key in pointer-button events from <a href= 2354 "#xterm_361">patch #361</a>.</li> 2355 </ul> 2356 2357 <h1><a name="xterm_361" id="xterm_361">Patch #361 - 2358 2020/10/14</a></h1> 2359 2360 <ul> 2361 <li>treat the return value of <code>strerror</code> as readonly 2362 (patch by Philipp Klaus Krause).</li> 2363 2364 <li>modify event-handling in <code>CopyWait</code> to work 2365 around hanging while writing large amounts of text to an active 2366 icon and at the same time iconifying/deiconifying (report by 2367 Dave Kemper).</li> 2368 2369 <li>initialize double-buffer for active-icon window.</li> 2370 2371 <li>improve manual page description of scrollbar resources 2372 (report by Brian Lindholm).</li> 2373 2374 <li>correct ifdef for menu entry for active-icon, when 2375 initializing it with toolbar configuration.</li> 2376 2377 <li>add preprocessor option to makefile to set internal 2378 definition of pixmaps directory to match the 2379 install-configuration (FreeBSD #250036).</li> 2380 2381 <li>cleanup of calls to <code>free</code>, removing checks for 2382 null (Walter Harms).</li> 2383 2384 <li>add fallback actions <code>pointer-button</code> and 2385 <code>pointer-motion</code> which handle events for the mouse 2386 control-sequences protocol if the <em>select</em>-related 2387 translations are omitted with 2388 <code>*omitTranslation:select</code> (prompted by discussion 2389 with "Ergus")</li> 2390 2391 <li>amend rule for using shift-key to override mouse-protocol 2392 for select/paste to limit that feature to mouse-buttons which 2393 are actually bound to select/paste actions (prompted by 2394 discussion with "Ergus").</li> 2395 2396 <li>corrected mapping in special case for repainting wrap-marks 2397 when viewing the scrollback area.</li> 2398 2399 <li>use separate <em>GCs</em> for <code>showWrapMarks</code> 2400 feature, to work around cursor coloring change in <a href= 2401 "#xterm_345">patch #345</a> (report by Paulo Silva de 2402 Alíbano).</li> 2403 </ul> 2404 2405 <h1><a name="xterm_360" id="xterm_360">Patch #360 - 2406 2020/09/20</a></h1> 2407 2408 <ul> 2409 <li>mention <code>decGraphicsID</code> in 2410 <code>ctlseqs.ms</code> (suggested by Thomas Wolff).</li> 2411 2412 <li>modify pixel-coordinate mouse response to use as origin the 2413 VT100-window rather than the underlying widget, which includes 2414 the scrollbar (report by Thomas Wolff).</li> 2415 2416 <li>add configure option <code>--disable-print-graphics</code> 2417 (Ross Combs).</li> 2418 2419 <li>add <code>test_ptydata</code> to “make check” 2420 rule.</li> 2421 2422 <li>minor fixes for <code>ctlseqs.ms</code> (report by 2423 Jean-Marc Bourguet).</li> 2424 2425 <li>minor fixes for manpage style (report/patch by 2426 "a1346054").</li> 2427 2428 <li>correct cleanup from switch between italics/normal font in 2429 the show/hide cursor functions (report/testcase by Peter 2430 Fabinski).</li> 2431 2432 <li>integrated patch by Ross Combs: 2433 <ul> 2434 <li>internal renaming of GraphicsID symbols, for 2435 readability.</li> 2436 2437 <li>adjust logic for VT125, treating it as a ReGIS 2438 terminal.</li> 2439 </ul> 2440 </li> 2441 2442 <li>update configure macros, for compiler-warning fixes.</li> 2443 2444 <li>integrated patch by Ross Combs: 2445 <ul> 2446 <li>add control sequence modes for graphics printing.</li> 2447 2448 <li>improve conversion to bitmaps for TrueType fonts in 2449 ReGIS</li> 2450 2451 <li>add <code>font7</code> resource, for an 2452 “enormous” bitmap font.</li> 2453 2454 <li>do not reset graphics in a soft-reset.</li> 2455 2456 <li>add <code>pointerFont</code> resource, and 2457 <code>-pf</code> command-line option.</li> 2458 </ul> 2459 </li> 2460 2461 <li>improve typography of manual page (patch by Branden 2462 Robinson).</li> 2463 2464 <li>amend <a href="#xterm_359">patch #359</a> change to 2465 <code>df-install.in</code> to ignore a command-line assignment 2466 to <code>DESTDIR</code> if followed by an explicit 2467 <code>--dir</code> (report by Sven Joachim).</li> 2468 </ul> 2469 2470 <h1><a name="xterm_359" id="xterm_359">Patch #359 - 2471 2020/08/17</a></h1> 2472 2473 <ul> 2474 <li>add special case in <code>WriteText</code> to allow colors 2475 8-15 to override <code>colorBDMode</code> (patch by Ingo 2476 Brückl).</li> 2477 2478 <li>add <code>utf8Weblike</code> resource, to provide an 2479 alternate scheme for handling ill-formed UTF-8 sequences 2480 (adapted from patch by Dan Gohman).</li> 2481 2482 <li>improve computation for the number of lines needed to 2483 scroll-up a SIXEL graphic (report/patch by Ben Wong).</li> 2484 2485 <li>correct manpage description for default value of 2486 <code>disallowWindowOps</code> from changes in <a href= 2487 "#xterm_331">xterm #331</a> (patch by Ben Wong).</li> 2488 2489 <li>correct a loop starting-point in 2490 <code>refresh_graphics</code> from optimization in <a href= 2491 "#xterm_358">patch #358</a> changes (report by Ben Wong).</li> 2492 2493 <li>add a new mouse mode 1016, which uses the same format as 2494 mode 1006, but sends the mouse's position in pixels (suggested 2495 by Igor van den Hoven).</li> 2496 2497 <li>fix an issue from <a href="#xterm_338">patch #338</a> 2498 changes where only the first selection buffer specified in the 2499 request would be updated using OSC 52 (patch by Michael 2500 Gulick).</li> 2501 2502 <li>modify makefile/scripts to allow <code>DESTDIR</code> to 2503 prefix the target directory for desktop-file-install (report by 2504 Fred Heitkamp).</li> 2505 2506 <li>enable SIXEL feature by default.</li> 2507 2508 <li>update config.guess, config.sub</li> 2509 </ul> 2510 2511 <h1><a name="xterm_358" id="xterm_358">Patch #358 - 2512 2020/07/12</a></h1> 2513 2514 <ul> 2515 <li>correct logic for decodeTerminalID changes in <a href= 2516 "#xterm_357">patch #357</a> (report by "Chartreuse").</li> 2517 2518 <li>modify makefile to use <code>plink.sh</code> when linking 2519 test-programs, to fix build when using pcre (report by H Merijn 2520 Brand)</li> 2521 2522 <li>build-fix for test_ptydata program (patch by H Merijn 2523 Brand)</li> 2524 </ul> 2525 2526 <h1><a name="xterm_357" id="xterm_357">Patch #357 - 2527 2020/07/05</a></h1> 2528 2529 <ul> 2530 <li>several minor optimizations for the ReGIS and SIXEL 2531 features, improving performance by 10%.</li> 2532 2533 <li>add resource <code>decGraphicsID</code> to allow displaying 2534 graphics when the emulation level would ordinarily disallow 2535 this (prompted by discussion with Thomas Wolff).</li> 2536 2537 <li>add control sequences for fast switching of color palettes: 2538 <code>XTPUSHCOLORS</code>, <code>XTPOPCOLORS</code>, 2539 <code>XTREPORTCOLORS</code></li> 2540 2541 <li>amend change for soft-hyphen from <a href= 2542 "#xterm_328">patch #328</a> to avoid stripping 2543 replacement-characters which would be shown with malformed or 2544 overlong UTF-8 input.</li> 2545 2546 <li>corrected an error-handling case in 2547 <code>decodeUtf8</code>, matching a similar fix in <a href= 2548 "#xterm_268">patch #268</a> (report/patch by Dan Gohman).</li> 2549 2550 <li>add a test-driver for <code>ptydata.c</code></li> 2551 2552 <li>minor cleanup of macros (adapted from patch by Walter 2553 Harms).</li> 2554 2555 <li>fix some errata in <code>ctlseqs.ms</code> (report by 2556 Thomas Wolff).</li> 2557 2558 <li>allow immediate repaint-on-palette-changed if 2559 double-buffering is enabled.</li> 2560 2561 <li>deprecate codes 10/11 in sgr push controls, changing those 2562 to 30/31, to avoid confusion with sgr 10-19.</li> 2563 2564 <li>modify <code>SGR</code> parameter handling to stop if an 2565 unrecognized parameter is encountered, to guard against 2566 malformed or nonstandard sequences (report by Bram 2567 Moolenaar).</li> 2568 2569 <li>modify <code>DECERA</code> color for consistency with other 2570 erasures/clearing (report by Thomas Wolff).</li> 2571 2572 <li><code>ECH</code> should not be masked by 2573 <code>DECSCA</code> (report by Thomas Wolff).</li> 2574 2575 <li>extend <code>DECFRA</code> and <code>REP</code> to accept 2576 any “graphic” character rather than just Latin1, 2577 etc. (report by Thomas Wolff).</li> 2578 2579 <li>add <code>-C</code> option to 256colors2.pl and 2580 88colors2.pl, to demonstrate mixed semicolon/colon separators 2581 which are implied by ECMA-48.</li> 2582 2583 <li>update sample terminfo to reflect the documentation 2584 improvements.</li> 2585 2586 <li>update description of 88/256/direct color in 2587 <code>ctlseqs.ms</code> to point out that using semicolons is a 2588 deprecated legacy feature, and standard terminal applications 2589 should use colons (prompted by discussion with Bram 2590 Moolenaar).</li> 2591 2592 <li>modify configure-check for <code>tgetent</code> to 2593 conditionally include <code>termcap.h</code>, enabling 2594 configuration using <code>clang</code>'s pedantic-errors option 2595 (report by Dennis Clarke). See <a href= 2596 "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h3-Other-Compatibility"> 2597 <em>Other Compatibility</em></a> in ncurses' 2598 <em>curs_termcap(3X)</em>.</li> 2599 2600 <li>remove some unnecessary pointer checks (patch by Walter 2601 Harms).</li> 2602 2603 <li>accept terminal-id and add DA response for VT131, 2604 VT132.</li> 2605 </ul> 2606 2607 <h1><a name="xterm_356" id="xterm_356">Patch #356 - 2608 2020/05/02</a></h1> 2609 2610 <ul> 2611 <li>revise fix for Debian #954730, which interfered with wheel 2612 mouse events (report by Gabriele Balducci).</li> 2613 </ul> 2614 2615 <h1><a name="xterm_355" id="xterm_355">Patch #355 - 2616 2020/05/01</a></h1> 2617 2618 <ul> 2619 <li>revise fix for Debian #954730, which interfered with wheel 2620 mouse events (report by Henri Menke).</li> 2621 2622 <li>fix typos in documentation (reports by Stephen Hurd, Stefan 2623 Assmann).</li> 2624 2625 <li>add mapping for <code>decTerminalID</code> for 2626 “100” overlooked in <a href="#xterm_354">patch 2627 #354</a>.</li> 2628 2629 <li>update tables in wcwidth.c based on Unicode 13.0.0</li> 2630 2631 <li>build-fix for “make check” when building 2632 out-of-tree (report by Sven Joachim).</li> 2633 </ul> 2634 2635 <h1><a name="xterm_354" id="xterm_354">Patch #354 - 2636 2020/04/26</a></h1> 2637 2638 <ul> 2639 <li>work around performance problems of 2640 <code>XDrawImageString</code> and 2641 <code>XDrawImageString16</code> functions (Debian 2642 #954845).</li> 2643 2644 <li>add a control sequence which reports xterm's version (patch 2645 by Nicholas Marriott, mintty #881).</li> 2646 2647 <li>temporarily set numeric locale category to "C" when parsing 2648 resources, so that <code>scaleHeight</code> and 2649 <code>faceSize</code> settings do not depend on locale (Debian 2650 #820803).</li> 2651 2652 <li>improve DA/DA2 response by ensuring that the 2653 <code>decTerminalID</code> maps to one of the known 2654 identifiers, as well as providing DA2 response for VT241 and 2655 VT382.</li> 2656 2657 <li>terminfo improvements: 2658 <ul> 2659 <li>add (my) comments from ncurses which explain the keypad 2660 layouts.</li> 2661 2662 <li>add <code>vt52+keypad</code> from ncurses</li> 2663 2664 <li>use improved <code>xm</code> example for 2665 <code>xterm+x11mouse</code>, <code>xterm+sm+1006</code> 2666 from ncurses 6.2 terminfo.src</li> 2667 </ul> 2668 </li> 2669 2670 <li>two fixes for left/right wheel mouse event reporting 2671 (Debian #954730): 2672 <ul> 2673 <li>filter identical button-events</li> 2674 2675 <li>correct order of button-range versus protocol type (see 2676 <a href="#xterm_345">patch #345</a>)</li> 2677 </ul> 2678 </li> 2679 2680 <li>change “make check” makefile-rule to use 2681 test-drivers for charclass and wcwidth data.</li> 2682 2683 <li>quiet “did not find a usable <em>xxx</em> TrueType 2684 font” warnings by making <code>fontWarnings</code> apply 2685 to these messages (report by Jim Rees).</li> 2686 2687 <li>improve reinitialization of parameter list (report/testcase 2688 by James Holderness).</li> 2689 2690 <li>temporarily set numeric locale category to "C" when 2691 formatting SVG or XHTML screendumps, to make the radix 2692 separator used in RGB values consistent (adapted from patch by 2693 George Kouryachy).</li> 2694 2695 <li>add resource <code>forceXftHeight</code> to control whether 2696 workaround from Debian #880407 is used.</li> 2697 2698 <li>apply updated ascent/descent in workaround from Debian 2699 #880407 to fix a 1-pixel gap in built-in vertical lines 2700 (report/testcase by Stefan Assmann).</li> 2701 2702 <li>improve round-off of scaling for built-in line-drawing 2703 (prompted by discussion with Stefan Assmann).</li> 2704 2705 <li>adjust fonts in svg-icon files to accommodate reduced 2706 functionality of new pango (report/analysis by YOKOTA 2707 Hiroshi).</li> 2708 2709 <li>improve configure check for X Toolkit library.</li> 2710 2711 <li>correct Y-coordinate transformation in 2712 <code>ClearCurBackground</code>, overlooked in changes for 2713 <a href="#xterm_334">patch #334</a> (report/analysis by Chuck 2714 Silvers).</li> 2715 2716 <li>remove <code>--vendor</code> option from test-packages' 2717 install of desktop files; the feature is badly broken in 2718 <em>gnome-shell</em>.</li> 2719 2720 <li>modify <code>uxterm</code> to make it possible to select 2721 nonstandard locale <em>C.UTF-8</em>, e.g, if the user's locale 2722 is set to “C” (Debian #940626).</li> 2723 2724 <li>re-save/tweak “.svg” icon-files to work around 2725 breakage in toolset since the files were created in <a href= 2726 "#xterm_283">patch #283</a>.</li> 2727 </ul> 2728 2729 <h1><a name="xterm_353" id="xterm_353">Patch #353 - 2730 2020/02/01</a></h1> 2731 2732 <ul> 2733 <li>amend change in <a href="#xterm_352">patch #352</a> for 2734 button-events to fix a case where some followup events were not 2735 processed soon enough (report/patch by Jimmy Aguilar 2736 Mena).</li> 2737 2738 <li>handle <em>MappingNotify</em> X event, to improve recovery 2739 when switching keyboard configurations using 2740 <code>xkbcomp</code> (prompted by discussion with Frank Mosch, 2741 Debian #661295). There is more work needed here, possibly in 2742 the X libraries.</li> 2743 2744 <li>improve discussion of mouse-mode in <code>ctlseqs.ms</code> 2745 (suggested by Igor van den Hoven).</li> 2746 2747 <li>further improve checks for Xft <em>max-advance-width</em> 2748 to take into account fonts which use two cells for ambiguous 2749 width characters. Also improve the time used for these checks 2750 (reports by Yuri Pankov, Frank Mosch).</li> 2751 2752 <li>fix a few spelling errors reported by codespell (report by 2753 Jens Schleusener).</li> 2754 2755 <li>modify <code>run-tic.sh</code> to prefer development 2756 version of ncurses since changes to terminfo file in <a href= 2757 "#xterm_345">patch #345</a> rely upon bug-fixes in ncurses 2758 (prompted by discussion with Will Senn).</li> 2759 </ul> 2760 2761 <h1><a name="xterm_352" id="xterm_352">Patch #352 - 2762 2020/01/16</a></h1> 2763 2764 <ul> 2765 <li>adjust fontsize data to handle a minor inconsistency from 2766 recent Xft versions (Debian #880407, adapted from patch by 2767 Vincent Lefèvre).</li> 2768 2769 <li>add a table to the manual page description of 2770 <code>forceBoxChars</code> to alert the reader to the special 2771 characters aside from “line-drawing” which are 2772 drawn directly when this resource is set (Debian #931305).</li> 2773 2774 <li>improve <code>checkXft</code> logic which attempts to 2775 detect fonts whose <em>max-advance-width</em> is inconsistent 2776 with the actual glyph widths. For some fonts, it is necessary 2777 to check additional characters (report/analysis by Jan 2778 Engelhardt).</li> 2779 2780 <li>improve configure-checks for X headers and libraries on 2781 recent MacOS, which has moved those files under 2782 <code>/usr/X11</code>.</li> 2783 2784 <li>improve portability of iconify/deiconify feature by taking 2785 into account some window managers which manipulate the EWMH 2786 <code>_NET_WM_STATE</code> property, adding/removing 2787 <code>_NET_WM_STATE_HIDDEN</code> rather than actually 2788 <em>minimizing</em> the window (prompted by discussion with 2789 Jörg Breitbart).</li> 2790 2791 <li>improve workaround from <a href="#xterm_287">patch #287</a> 2792 for the <code>-iconic</code> option when configured with 2793 toolbar by postponing the extra request for minimizing the 2794 window to the end of menu-initialization.</li> 2795 2796 <li>modify <code>xevents</code> special-case for mouse-events 2797 to include button-events so that the meta key by itself can 2798 generate button-events (report/analysis by Mattias 2799 Engdegård).</li> 2800 2801 <li>amend SGR-stack change from <a href="#xterm_348">patch 2802 #348</a> to not associate bold attribute with background color 2803 (report by Nicholas Marriott).</li> 2804 2805 <li>fix copy/paste error in manual page (patch by Larry 2806 Hynes).</li> 2807 2808 <li>add definitions in <code>xterm_io.h</code> so that GNU/Hurd 2809 will use <code>posix_openpty</code> (patch by Samuel 2810 Thibault).</li> 2811 2812 <li>build-fix in debug-tracing, for <code>esctest</code>.</li> 2813 2814 <li>updated autoconf macros</li> 2815 2816 <li>update config.guess</li> 2817 </ul> 2818 2819 <h1><a name="xterm_351" id="xterm_351">Patch #351 - 2820 2019/11/17</a></h1> 2821 2822 <ul> 2823 <li>correct logic in <code>property_to_string</code> for 2824 deciding when to fallback from UTF-8 decoding to ISO-8859-1 2825 decoding, broken in <a href="#xterm_350">xterm #350</a> 2826 (FreeBSD #241961).</li> 2827 2828 <li>add <code>-report-icons</code> to help-message.</li> 2829 2830 <li>improved autoconf macros: 2831 <ul> 2832 <li><code>CF_ADD_LIBS</code>: the change to filter out 2833 duplicates caused this to append rather than prepend. 2834 revise to fix that.</li> 2835 2836 <li><code>CF_GCC_VERSION</code> and 2837 <code>CF_GCC_WARNINGS</code>: move checks to distinguish 2838 icc/clang from gcc from the macro which handles the 2839 --enable-warnings option, to make this work 2840 without-warnings for the inline-checks.</li> 2841 </ul> 2842 </li> 2843 2844 <li>update config.guess, config.sub</li> 2845 2846 <li>correct status in <code>XTGETXRES</code> replies when the 2847 resource was not found.</li> 2848 2849 <li>fix some gcc, cppcheck, clang and coverity warnings.</li> 2850 2851 <li>guard call to <code>RequestResize</code> from the 2852 struct-notify event handler to prevent recursion in the 2853 Xft+buffered workaround in some cases when doing manual 2854 resizing rather than resizing via escape sequences (reports by 2855 Stefan Assmann, Mike Thornburg).</li> 2856 2857 <li>amend the workaround for Xft+buffered blanking by moving 2858 the switch to bitmap-fonts to account for differences in font 2859 metrics between bitmap- and TrueType-fonts (report by Stefan 2860 Assmann).</li> 2861 2862 <li>improve the note on the <code>xterm-rep</code> terminfo 2863 entry (prompted by discussion with Sven Joachim).</li> 2864 </ul> 2865 2866 <h1><a name="xterm_350" id="xterm_350">Patch #350 - 2867 2019/11/02</a></h1> 2868 2869 <ul> 2870 <li>modify html/svg dump to not ignore zero'd/blank cells.</li> 2871 2872 <li>align terminfo file with ncurses, e.g., add 2873 <code>xterm+osc104</code> block.</li> 2874 2875 <li>improve discussion of <code>modifyOtherKeys</code> in 2876 manual page and in <code>ctlseqs.ms</code>.</li> 2877 2878 <li>add <code>vttests/modify-keys.pl</code> script to 2879 illustrate the <code>modifyOtherKeys</code> resource (prompted 2880 by discussion with Bram Moolenaar).</li> 2881 2882 <li>various improvements to <code>ctlseqs.ms</code>, as part of 2883 autogenerating links for the website.</li> 2884 2885 <li>update manual page default for <code>saveLines</code> 2886 resource default value (Branden Robinson, Debian #913815).</li> 2887 2888 <li>add command-line option <code>-report-xres</code> to show 2889 the values of the VT100 widget X resources when initialization 2890 is complete.</li> 2891 2892 <li>add a control sequence which, like tcap-query, allows an 2893 application to inspect most X resource settings of the VT100 2894 widget.</li> 2895 2896 <li>adjust some optional features to enable them in the imake 2897 configuration as they would be by default via the configure 2898 script.</li> 2899 2900 <li>add null-pointer checks to improve error recovery when 2901 bitmap fonts are missing or corrupt (report by Jonne 2902 Ransijn).</li> 2903 2904 <li>correct the condition for deleting the EWMH window-title 2905 property, i.e., if UTF-8 titles are disabled, rather than if an 2906 update to the EWHM property found no change (report by Sven 2907 Joachim).</li> 2908 2909 <li>build-fix for the case when configure 2910 <code>--enable-trace</code> is used without 2911 <code>--enable-warnings</code> (report by Sven Joachim).</li> 2912 2913 <li>fix a few minor bugs found with Coverity.</li> 2914 2915 <li>add a check in <code>property_to_string</code> to avoid 2916 translating <code>UTF8_STRING</code> or 2917 <code>COMPOUND_TEXT</code> into Latin-1 when UTF-8 encoding is 2918 active, e.g., when pushing onto the title-stack while switching 2919 to the alternate screen.</li> 2920 2921 <li>build-fix for the <code>--disable-doublechars</code> 2922 configure option (report by Brian Lindholm).</li> 2923 </ul> 2924 2925 <h1><a name="xterm_349" id="xterm_349">Patch #349 - 2926 2019/09/22</a></h1> 2927 2928 <ul> 2929 <li>add graphic context to support bold+italics (patch by Quinn 2930 Strahl).</li> 2931 2932 <li>document window properties in the manual page.</li> 2933 2934 <li>improve title-string feature: 2935 <ul> 2936 <li>if any of <code>allowC1Printable</code>, 2937 <code>utf8Title</code> or <code>titleModes</code> hint that 2938 an application might send a title-string encoded in UTF-8, 2939 check if that is the case, and if it is recodable into 2940 ISO-8859-1, use that for the ICCCM-style title.</li> 2941 2942 <li>check if the title given by a control sequence happens 2943 to be already encoded in UTF-8, to avoid double-encoding 2944 (FreeBSD #240393).</li> 2945 2946 <li>Make <code>sameName</code> resource work for the EWMH 2947 titles.</li> 2948 2949 <li>Modify menu-state of <code>utf8Title</code> to be 2950 consistent with the <code>utf8</code> source, i.e., setting 2951 the EWMH properties automatically when UTF-8 is 2952 active.</li> 2953 </ul> 2954 </li> 2955 2956 <li id="xterm_349_xft_bug">reorganize text-drawing to make it 2957 possible to investigate using Xft to implement VT100-style 2958 double-sized characters. While doing this, made a workaround 2959 for apparent Xft bug which loses its drawable state when 2960 switching from 132 to 80 columns.</li> 2961 2962 <li>improve font-warning messages by showing which are 2963 <em>derived</em> rather than directly from resource settings 2964 (suggested by Tomas Korbar). Also filter repeated font-warning 2965 messages, to accommodate broken X configurations.</li> 2966 2967 <li>fix an inconsistency between failure to load derived wide 2968 font versus failure to load derived wide-bold font (Redhat 2969 #1679790). That relies upon the “:unscaled” 2970 property which is broken in some distributions (however, recent 2971 Debian and the BSDs such as MacOS work).</li> 2972 2973 <li>updated autoconf-252 to check X11R7 include/lib directories 2974 found on some older configurations.</li> 2975 2976 <li>set a graphic-context for border when double-buffering is 2977 active; to prevent the border color from changing when 2978 switching to reverse-video.</li> 2979 2980 <li>build-fix for <code>--disable-ziconbeep</code>, which 2981 conflicted with the new double-buffer configuration (report by 2982 Brian Lindholm).</li> 2983 2984 <li>fix loop-limit for lookup of <code>fullscreen</code> 2985 resource broken in <a href="#xterm_347">xterm #347</a> (report 2986 by Scott Bertilson).</li> 2987 </ul> 2988 2989 <h1><a name="xterm_348" id="xterm_348">Patch #348 - 2990 2019/07/22</a></h1> 2991 2992 <ul> 2993 <li>update window-manager hints when exiting Tek4014 mode 2994 (Debian #932569, patch by Jonathan Irwin).</li> 2995 2996 <li>fix a misformatted printf in 2997 <code>report-sgr.pl</code>.</li> 2998 2999 <li>add configure check for termios types, to improve 3000 compiler-warnings.</li> 3001 3002 <li>ensure that when resetting margins, to also reset 3003 <code>DECLRMM</code>. This affects <code>DECCOLM</code>, 3004 <code>DECALN</code> (although DEC STD 070 mentions only 3005 top/bottom margins), and <code>DECSTR</code>.</li> 3006 3007 <li>corrected order of reset/move when setting 3008 <code>DECCOLM</code>, and make it more consistent by always 3009 resetting margins, rather than only when the mode is changed 3010 (report by James Holderness).</li> 3011 3012 <li>compile-in double-buffer support by default, changing the 3013 configure option to set the default resource value for 3014 <code>buffered</code> to true or false.</li> 3015 3016 <li>take in account the reverse-video state when computing the 3017 filler-color used when clearing the screen in double-buffering 3018 configuration.</li> 3019 3020 <li>correct logic for filtering scrollbar-updates when 3021 <code>buffered</code> resource is compiled-in but not enabled 3022 (report by Paul Lampert).</li> 3023 3024 <li>improve state saved/restored for cursor-save and SGR stack 3025 features.</li> 3026 3027 <li>improve description of 1006 and 1005 mouse modes, to avoid 3028 implying that they use character-parameters (report by Bryan 3029 Christ).</li> 3030 3031 <li>explain in <code>ctlseqs.ms</code> that some of the numeric 3032 keypad keys were xterm extensions rather than VT100/VT220 3033 terminal features (prompted by discussion with Thomas 3034 Wolff).</li> 3035 3036 <li>explain in <code>ctlseqs.ms</code> how the DEC windowing 3037 extension is supported by xterm.</li> 3038 3039 <li>add 28 rectangular editing to the primary response 3040 (suggested by Thomas Wolff).</li> 3041 3042 <li>fix a typo, improve wording in <code>ctlseqs.ms</code> 3043 (Thomas Wolff).</li> 3044 3045 <li>fix internal column-parameter when <code>SL</code> or 3046 <code>SR</code> is used with left/right margins (patch by 3047 Thomas Wolff).</li> 3048 3049 <li>fix off-by-one in VT52 graphics character mapping (patch by 3050 Thomas Wolff).</li> 3051 3052 <li>use <code>_X_UNUSED</code>, etc., when available as a 3053 fallback for <code>GCC_UNUSED</code>, etc., to reduce compiler 3054 warnings when building with <code><em>imake</em></code>.</li> 3055 3056 <li>update config.sub</li> 3057 </ul> 3058 3059 <h1><a name="xterm_347" id="xterm_347">Patch #347 - 3060 2019/06/30</a></h1> 3061 3062 <ul> 3063 <li>fix a few minor bugs found with Coverity.</li> 3064 3065 <li>improve double-buffering for scrollbars combined with 3066 scrolled text; add <code>bufferedFPS</code> resource to control 3067 the maximum rate of screen updates (report by Mike 3068 Thornburg).</li> 3069 3070 <li>improve fixes for <code>DECCRA</code> handling of 3071 double-width characters (patch by Martin Hostettler).</li> 3072 3073 <li>improve discussion of ECMA-48's typographical error for 3074 <code>SD</code> in <code>ctlseqs.ms</code> (prompted by report 3075 by Martin Hostettler).</li> 3076 3077 <li>correct off-by-one in parameter limit-check for 3078 <code>DECCRA</code> (report by Martin Hostettler).</li> 3079 3080 <li>modify <code>saveCellData</code> to handle case where 3081 double-width character is partially copied; that should be 3082 blanked (report/testcase by Thomas Wolff).</li> 3083 3084 <li>add resource <code>buffered</code> to allow 3085 enabling/disabling double-buffered mode.</li> 3086 3087 <li>two fixes for the double-buffer configuration, prompted by 3088 MacPorts' switch to double-buffering (patch by Mike Thornburg, 3089 MacPorts #58313): 3090 <ul> 3091 <li>ensure that the needSwap flag is set after drawing 3092 TrueType text</li> 3093 3094 <li>corrected the drawable-parameter used for the 3095 bar-cursor</li> 3096 </ul> 3097 </li> 3098 3099 <li>modify <code>ScrnRefresh</code> to ignore a case where the 3100 left/right halves of a double-width character have been set to 3101 different video attributes. The attribute to use is in the 3102 left-half (report/testcase by Thomas Wolff).</li> 3103 3104 <li>correct a limit-check for <code>DECCRA</code> in case the 3105 target lies off-screen (report/testcase by Thomas Wolff).</li> 3106 3107 <li>documentation errata (report by Thomas Wolff).</li> 3108 3109 <li>reset flags including wraparound and reverse-wrap when 3110 switching to VT52 mode, while noting that DEC's standard 3111 documentation leaves that behavior <em>undefined</em> (report 3112 by Thomas Wolff).</li> 3113 3114 <li>ensure that italic font is turned off on hard/soft resets 3115 (report by Martin Hostettler).</li> 3116 3117 <li>improve responsiveness to X events while processing HTML or 3118 SVG dumps (report by Martin Hostettler).</li> 3119 3120 <li>replace logic in <code>wcwidth.c</code> for detecting 3121 double-width characters with binary-search table generated 3122 using updated <code>uniset</code> (report by Robert Ross).</li> 3123 3124 <li>add test-driver for <code>wcwidth.c</code> to simplify 3125 comparison with system's <code>wcwidth</code>.</li> 3126 3127 <li>ensure that window-manager name comparisons work when 3128 active-icon is enabled, since <code><em>CSI</em>13t</code> uses 3129 the window-manager name (report by Glenn Golden, Arch 3130 #62818).</li> 3131 3132 <li>trim a stray “experimental” in one of the 3133 comments about the tcap-query feature, which has been a 3134 supported feature since 2008 (see <a href="#xterm_238">patch 3135 #238</a>).</li> 3136 </ul> 3137 3138 <h1><a name="xterm_346" id="xterm_346">Patch #346 - 3139 2019/05/27</a></h1> 3140 3141 <ul> 3142 <li>update description of the “default” setting for 3143 the <code>renderFont</code> resource to match the behavior in 3144 <a href="#xterm_261">patch #261</a> (Debian #862042).</li> 3145 3146 <li>account for <code>internalBorder</code> in 3147 <code>useBorderClipping</code> (report by Robert Ross).</li> 3148 3149 <li>update table of unknown-width characters in wcwidth.c based 3150 on Unicode 12.1.0 (prompted by discussion with Robert 3151 Ross).</li> 3152 3153 <li>improve description of DECSCL versus S7C1T and S8C1T in 3154 <code>ctlseqs.ms</code>.</li> 3155 3156 <li>improve consistency between <code><em>CSI</em>3t</code> and 3157 <code><em>CSI</em>13t</code>, accounting for differences 3158 between some window managers' handling of EMWH extents (report 3159 by Bram Moolenaar).</li> 3160 3161 <li>fix a sign-extension when reporting offscreen window 3162 position (report by Bram Moolenaar).</li> 3163 </ul> 3164 3165 <h1><a name="xterm_345" id="xterm_345">Patch #345 - 3166 2019/05/14</a></h1> 3167 3168 <ul> 3169 <li>updated FreeBSD test-package from recent /usr/ports 3170 scripts.</li> 3171 3172 <li>workaround in <code>run-tic.sh</code> for HPUX, whose 3173 <code>mktemp</code> prints the name of a temporary directory 3174 without creating it.</li> 3175 3176 <li>add left/right margin capabilities to terminfo, since the 3177 default terminal emulation is VT420 (suggested by Thomas 3178 Wolff).</li> 3179 3180 <li>modify treatment of <code>reverseVideo</code> for dynamic 3181 colors to make text foreground/background consistent with the 3182 cursor color (prompted by discussion with Ben Wong, lsix 3183 #20).</li> 3184 3185 <li>modify button-handling to make SGR button-release distinct 3186 from button-press for button-codes starting with 8 (patch by 3187 Mikulas Patocka).</li> 3188 3189 <li>add aliases for the sgr push/pop controls to work around 3190 language limitations of C# (request by Dan Thompson).</li> 3191 3192 <li>correct a typo in <code>setDirectFG</code>, which could 3193 cause setting of indexed-color after a direct-color to be 3194 ignored.</li> 3195 3196 <li>add resource <code>useBorderClipping</code> as an 3197 alternative to <code>useClipping</code> (request by Robert 3198 Ross).</li> 3199 3200 <li>improve logic for displaying xterm's built-in line-drawing 3201 characters vs missing glyphs, e.g., for U+2409 to U+240D (patch 3202 by Robert Ross).</li> 3203 3204 <li>add <code>vttests/sgrPushPop2.pl</code> to illustrate how 3205 selective pushes work, as well as to demonstrate push/pop of 3206 the various color types supported by xterm.</li> 3207 3208 <li>fix a special case in <code>XTPOPSGR</code> where 3209 direct-colors were not checked as a dependency of 3210 indexed-colors, contrary to documentation.</li> 3211 3212 <li>reduce buffer-flushes for <code>OSC 4</code> and 3213 <code>OSC 5</code> color-queries, as well as in the 3214 queries for dynamic colors.<br> 3215 <strong>Note:</strong> this change makes the reply for 3216 <code>OSC 5</code> use the “5” in the 3217 response; formerly it was mapped to ”4” after 3218 adding the maximum number of colors.</li> 3219 3220 <li>modify <code>vttests/query-color.pl</code> to demonstrate 3221 multiple queries in one request.</li> 3222 3223 <li>update tables of combining and unknown-width characters in 3224 wcwidth.c based on Unicode 12.0.0.</li> 3225 3226 <li>modify response for <code>OSC 5</code> to be 3227 consistent with documentation.</li> 3228 3229 <li>add <code>vttests/query-dynamic.pl</code></li> 3230 3231 <li>modify <code>vttests/query-color.pl</code> to accept bold, 3232 underline, etc., keywords to decide whether to use 3233 <code>OSC 5</code> rather than 3234 <code>OSC 4</code>.</li> 3235 3236 <li>modify cursor coloring to avoid a case where the cursor 3237 matched the foreground color while the text was displayed in 3238 reverse-video (report by Nuno Silva).</li> 3239 3240 <li>fix an inconsistency in X10 mouse responses from <a href= 3241 "#xterm_342">patch #342</a> changes; the legacy protocol 3242 supports only buttons 1-3.</li> 3243 3244 <li>reduce the number of buffer-flushes for tcap-query 3245 batches.</li> 3246 3247 <li>modify <code>tcapquery.pl</code> to demonstrate batch 3248 queries with <code>-q</code> option.</li> 3249 3250 <li>increase response-buffer size, and make it configurable as 3251 <code>limitResponse</code> (prompted by discussion with Stephen 3252 P Wall).</li> 3253 3254 <li>modified configure script: 3255 <ul> 3256 <li>check/workaround for non-POSIX manipulation of 3257 predefined symbols</li> 3258 3259 <li>check for updated X Toolkit, which uses 3260 <code>const</code>.</li> 3261 </ul> 3262 </li> 3263 3264 <li>update config.guess, config.sub</li> 3265 3266 <li>provide for secondary-selection, overlooked in <a href= 3267 "#xterm_338">patch #338</a> (report by Emile LeBlanc).</li> 3268 3269 <li>documentation errata (patch by Larry Hynes).</li> 3270 3271 <li>improve pointer-checks in <code>Tekproc.c</code></li> 3272 3273 <li>revise solution for Debian #919475, to allow for 3274 struct-notify events occurring as a side-effect of toggling 3275 to/from full-screen mode.</li> 3276 3277 <li>window's border-size was incorrectly added to position when 3278 maximizing window (report by Gary Langshaw).</li> 3279 </ul> 3280 3281 <h1><a name="xterm_344" id="xterm_344">Patch #344 - 3282 2019/02/12</a></h1> 3283 3284 <ul> 3285 <li>add ASCII escape to default for 3286 <code>disallowedPasteControls</code> (prompted by discussion 3287 with Martin Hostettler).</li> 3288 3289 <li>fix typo in <code>ctlseqs.ms</code> (Robert Ross).</li> 3290 3291 <li>implement DEC Cyrillic NRCS (based on screenshots of vttest 3292 provided by Markus Schmidt).</li> 3293 3294 <li>correct control returning sixel geometry maximum versus 3295 actual size (patch by Ben Wong).</li> 3296 3297 <li>improve manual page for <code>resize</code> to clarify that 3298 <code>resize</code> does not execute the shell commands which 3299 it generates for setting environment variables.</li> 3300 3301 <li>improve memory-management for parser, to handle response 3302 strings that might occur with <code>ENQ</code> or when 3303 <code>SRM</code> mode is active (patch by Martin 3304 Hostettler).</li> 3305 3306 <li>change <code>Comment</code> text in uxterm's desktop file 3307 to work around a limitation of GNOME's GIO application 3308 (<a href="https://gitlab.gnome.org/GNOME/gnome-shell/issues/940#note_427334">issue 3309 #940</a>). The <a href= 3310 "https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-search"> 3311 documentation</a> reads: 3312 <blockquote> 3313 <p>Searches desktop files for ones that match 3314 <em><code>search_string</code></em>.</p> 3315 3316 <p>The return value is an array of <em>strv</em>s. Each 3317 <em>strv</em> contains a list of applications that matched 3318 search_string with an equal score. The outer list is sorted 3319 by score so that the first <em>strv</em> contains the 3320 best-matching applications, and so on. The algorithm for 3321 determining matches is undefined and may change at any 3322 time.</p> 3323 </blockquote> 3324 </li> 3325 3326 <li>a check of <code>zIconBeep</code> resource was removed in 3327 double-buffer fix in <a href="#xterm_334">patch #334</a>. That 3328 is used to decide whether to handle struct-notify events. When 3329 xterm does handle the events, it may negotiate a new 3330 window-size with the window manager. In that case, the 3331 <code>limitResize</code> resource setting limited the new 3332 window-size to the screen-size. Amended that by eliminating the 3333 limit for this special case when double-buffer is configured, 3334 and restoring the check for <code>zIconBeep</code> when 3335 double-buffer is not configured (Debian #919475).</li> 3336 3337 <li>disallow recursion which could happen if a user configures 3338 the <code>answerbackString</code> resource with the 3339 <code>ENQ</code> code and experiments with that code when 3340 <code>SRM</code> is enabled (report by by Martin 3341 Hostettler).</li> 3342 3343 <li>add remaining credits in <code>COPYING</code> file.</li> 3344 3345 <li>modify <code>run-tic.sh</code> to check if it is using an 3346 older version of ncurses which does not support large terminal 3347 descriptions, and if so, remove a non-essential feature to keep 3348 within the 4096-byte legacy limit.</li> 3349 </ul> 3350 3351 <h1><a name="xterm_343" id="xterm_343">Patch #343 - 3352 2019/01/13</a></h1> 3353 3354 <ul> 3355 <li>modify <code>run-tic.sh</code> to prefer ncurses6 over 3356 ncurses5, when available.</li> 3357 3358 <li>add <code>COPYING</code> file, and dummy "check" makefile 3359 rule for testing Arch packages.</li> 3360 3361 <li>add/update package scripts for FreeBSD and NetBSD, for 3362 testing.</li> 3363 3364 <li>update tables of combining and ambiguous-width characters 3365 in wcwidth.c based on Unicode 11.0.0.</li> 3366 3367 <li>modify <code>xterm-new</code> sample terminfo entry to 3368 correspond to ncurses 6.1, using the SGR 1006 mouse 3369 protocol.</li> 3370 3371 <li>improve manual page discussion of selection ownership 3372 versus highlighting (prompted by discussion with Martin 3373 Hostettler).</li> 3374 3375 <li>restore/repair <code>keepClipboard</code> feature which was 3376 broken by changes in <a href="#xterm_338">patch #338</a> 3377 (report by Martin Hostettler).</li> 3378 3379 <li>improve documentation for <code>deleteIsDEL</code> 3380 resource.</li> 3381 3382 <li>modify DECRQM response for private mode 1037 to account for 3383 cases where the resource <code>deleteIsDEL</code> is initially 3384 neither true nor false, but dependent upon the keyboard type 3385 (report/analysis by Martin Hostettler).</li> 3386 3387 <li>clear pointers for pattern/fontset after destroying their 3388 data when switching facename with an escape sequence (report by 3389 Robert Ross).</li> 3390 3391 <li>modify logic for TrueType fallback fonts to match the 3392 sort-order used by <code>fc-match</code> (report by Robert 3393 Ross).</li> 3394 3395 <li>add resource setting <code>limitFontsets</code> which can 3396 be used to limit or disable the new TrueType fontset feature 3397 (request by Robert Ross).</li> 3398 </ul> 3399 3400 <h1><a name="xterm_342" id="xterm_342">Patch #342 - 3401 2019/01/03</a></h1> 3402 3403 <ul> 3404 <li>limit mouse-button events to 11 buttons in the original 3405 protocol, and 15 in the extended mouse-protocol (patch by 3406 Martin Hostettler).</li> 3407 3408 <li>correct calculation for buttons past 11 in 3409 <code>mouse-codes</code> sample script (patch by Martin 3410 Hostettler).</li> 3411 3412 <li>disable a supplementary check added in <a href= 3413 "#xterm_341">patch #341</a> which interferes with using 3414 fontconfig to select different-sized bitmap fonts (Arch 3415 #61237).</li> 3416 </ul> 3417 3418 <h1><a name="xterm_341" id="xterm_341">Patch #341 - 3419 2018/12/24</a></h1> 3420 3421 <ul> 3422 <li>add options to <code>mouse-codes</code> script to 3423 demonstrate that the encoding used for mouse events limits 3424 button numbers to 11.</li> 3425 3426 <li>allow mouse button numbers up to 11 using an offset of 128 3427 for button numbers 8-11 rather than the offset of 64 used for 3428 wheel-mouse, etc., buttons 4-7 in <a href="#xterm_338">patch 3429 #338</a> (adapted from patch by Martin Hostettler).</li> 3430 3431 <li>correct off-by-one right-margin checks for double-width 3432 character adjustments in DECERA/DECFRA (patch by Martin 3433 Hostettler).</li> 3434 3435 <li>allocated size of selection buffer was not reset when 3436 freeing the buffer in <a href="#xterm_338">patch #338</a> 3437 (report/analysis by Stefan Assmann).</li> 3438 3439 <li>modify the initial pattern passed to fontconfig to disallow 3440 color bitmap fonts.</li> 3441 3442 <li>improve error recovery for a case where fontconfig ignores 3443 the requested pattern due to override in the user's font 3444 configuration (report/testcase by Stefan Assmann).</li> 3445 </ul> 3446 3447 <h1><a name="xterm_340" id="xterm_340">Patch #340 - 3448 2018/12/16</a></h1> 3449 3450 <ul> 3451 <li>suppress a spurious warning about fontsets when 3452 initializing menus for the toolbar configuration.</li> 3453 3454 <li>fix some strict compiler warnings.</li> 3455 3456 <li>improve checks for TrueType font, to help with the case of 3457 color bitmap fonts, which fontconfig misrepresents (Arch Linux 3458 #58706).</li> 3459 </ul> 3460 3461 <h1><a name="xterm_339" id="xterm_339">Patch #339 - 3462 2018/12/12</a></h1> 3463 3464 <ul> 3465 <li>modify <code>CF_GNU_SOURCE</code> macro to treat 3466 <em>newlib</em> as similar to <em>glibc</em>, fixing a problem 3467 with the configure checks for pseudoterminals in Cygwin 3468 overlooked in <a href="#xterm_334">patch #334</a> updates for 3469 configure-macros.</li> 3470 </ul> 3471 3472 <h1><a name="xterm_338" id="xterm_338">Patch #338 - 3473 2018/12/09</a></h1> 3474 3475 <ul> 3476 <li>ignore <code>$TERMINFO</code> in the configure script if it 3477 is set to a non-directory value.</li> 3478 3479 <li>updated configure macros: 3480 <ul> 3481 <li><code>CF_WITH_PCRE2</code>, modified to work with 3482 Debian's (mis-numbered) pcre3 package.</li> 3483 3484 <li><code>CF_CC_ENV_FLAGS</code> , report preprocessor 3485 options in <code>CFLAGS</code></li> 3486 3487 <li><code>CF_LD_RPATH_OPT</code> , suppress check if 3488 <code>--disable-rpath</code> option was given.</li> 3489 3490 <li><code>CF_XOPEN_SOURCE</code>, add case for 3491 midnightbsd</li> 3492 </ul> 3493 </li> 3494 3495 <li>update config.guess, config.sub</li> 3496 3497 <li>add a check to ensure that the filename parameter passed to 3498 <code>XpmReadFileToPixmap</code> is actually a file, since that 3499 function does not check (report by Ben Nott).</li> 3500 3501 <li>amend solution for Debian #758633 to ensure that replies 3502 for bracketed paste are not sent while processing a selection 3503 for <code>exec-formatted</code> (Debian #913237).</li> 3504 3505 <li>improve adjustments/clearing for double-width characters in 3506 <code>DECERA</code>, <code>DECFRA</code>, 3507 <code>DECSERA</code>.</li> 3508 3509 <li>improve adjustments/clearing for double-width characters 3510 when doing vertical scrolling within left/right margins (patch 3511 by Martin Hostettler).</li> 3512 3513 <li>modify wcwidth to encode a few spacing combining marks as 3514 regular combining characters.</li> 3515 3516 <li>change compiled-in default for <code>saveLines</code> to 3517 match the resource-file changed in <a href="#xterm_192">patch 3518 #192</a> (Debian #913815).</li> 3519 3520 <li>change default <code>faceSize</code> to 8.0, to simplify 3521 switching back/forth between bitmap fonts and TrueType. This 3522 was originally (mis)set to 14.0 in <a href="#xterm_148">patch 3523 #148</a>.</li> 3524 3525 <li>add fallback support in Xft configuration for missing 3526 glyphs (prompted by discussion with Mike Burns).</li> 3527 3528 <li>fix a problem with using direct-colors for the background 3529 color when clearing/scrolling (report by Nicholas 3530 Marriott).</li> 3531 3532 <li>add a "sources" rule for the makefile's generated 3533 source.</li> 3534 3535 <li>add a short explanation in <code>ctlseqs.ms</code> 3536 discussing the differences in error-recovery for malformed 3537 sequences versus unimplemented features, and amend one case for 3538 consistency (prompted by discussion with Martin 3539 Hostettler).</li> 3540 3541 <li>adjusted ifdef's so that the paste64 configure option does 3542 not automatically enable the readline-mouse configure 3543 option.</li> 3544 3545 <li>revert the change which prevented concurrent ownership of 3546 different selection targets, and instead modify selection 3547 storage so that different concurrent requests for different 3548 selection targets will be stored/retrieved independently 3549 (Debian #901249).</li> 3550 3551 <li>remove a check which prevented returning button-codes past 3552 the documented 4/5 for wheel mouse, and add a script 3553 <code>mouse-codes</code> which makes a report showing the 3554 various mouse codes for different button/modifier combinations 3555 (discussion with Přemysl Janouch).</li> 3556 3557 <li>improve display and checksum for DEC Special Graphics by 3558 mapping 0x5f to 0.</li> 3559 3560 <li>add a null-pointer check for table-ending in the 3561 extended-boolean resource-handling (report by Felix von 3562 Leitner).</li> 3563 3564 <li>remove stray <code>]</code>'s from INSTALL-file (Larry 3565 Hynes).</li> 3566 </ul> 3567 3568 <h1><a name="xterm_337" id="xterm_337">Patch #337 - 3569 2018/09/21</a></h1> 3570 3571 <ul> 3572 <li>regenerated configure script (report by Sven Joachim).</li> 3573 3574 <li>revise/improve fix for scrolling in margins 3575 (report/analysis by Martin Hostettler):</li> 3576 3577 <li>amend change to default-translations "select" subset to 3578 ensure that specific key-press actions are listed before 3579 generic key-press actions (reports by H Merijn Brand, Sven 3580 Joachim).</li> 3581 </ul> 3582 3583 <h1><a name="xterm_336" id="xterm_336">Patch #336 - 3584 2018/09/19</a></h1> 3585 3586 <ul> 3587 <li>ensure that only one of PRIMARY and CLIPBOARD is owned by 3588 xterm at a given time (Debian #901249).</li> 3589 3590 <li>documentation fixes (report by Lars Krueger): 3591 <ul> 3592 <li>document <code>SL</code> and <code>SR</code>.</li> 3593 3594 <li>document <code>DECRPTUI</code>, change number of digits 3595 to match VT420.</li> 3596 </ul> 3597 </li> 3598 3599 <li>revise <code>omitTranslation</code> resource, e.g., 3600 splitting “default” into several more useful 3601 categories.</li> 3602 3603 <li>modify mask-logic to permit <em>control-</em> and 3604 <em>meta-</em> modifiers to be used in mouse protocol.</li> 3605 3606 <li>several fixes for parsing/state (report/testcases by Martin 3607 Hostettler): 3608 <ul> 3609 <li>remove an old/unimplemented entry for xterm-title from 3610 state table.</li> 3611 3612 <li>save/restore wrap-flag when scrolling, to fix an 3613 inconsistency between jump-scrolling and 3614 normal-scrolling.</li> 3615 3616 <li>improve a special case of wrapping where the cursor 3617 starts beyond the right-margin, and wraps at the terminal's 3618 last-column before the settable-margins can take 3619 effect.</li> 3620 3621 <li>if origin mode is set, adjust a restored cursor column 3622 relative to the left margin.</li> 3623 3624 <li>when scrolling a line within left/right margins, 3625 correct order of the fixups needed when a double-width 3626 character crosses the margin boundary.</li> 3627 </ul> 3628 </li> 3629 3630 <li>review/fix a few cases where the parsing state was not 3631 reset after completing a control sequence (prompted by report 3632 by Martin Hostettler).</li> 3633 3634 <li>disallow <code>XTCHECKSUM</code> if the corresponding 3635 window-ops "SetChecksum" is unset.</li> 3636 3637 <li>add <code>print-vt-chars.pl</code> script to illustrate the 3638 NRCS and codepages supported by xterm.</li> 3639 3640 <li>add <code>other-sgr.sh</code> script to demonstrate the 3641 non-VT100 video attributes implemented in <a href= 3642 "#xterm_305">patch #305</a>, and added a summary of their 3643 introduction in ECMA-48 to the control sequences document.</li> 3644 3645 <li>add <code>tabs</code> and <code>-tabs</code> keywords to 3646 <code>ttyModes</code> resource to simplify workaround for 3647 terminal drivers which are not aware of UTF-8 (FreeBSD 3648 #229682).</li> 3649 3650 <li>add VT5xx NRCS 7-bit Turkish and DEC Turkish.</li> 3651 3652 <li>add VT5xx NRCS 7-bit Hebrew and DEC Hebrew.</li> 3653 3654 <li>add VT5xx NRCS 7-bit Greek and DEC Greek.</li> 3655 3656 <li>correct a few post-VT220 codepages to make them display 3657 without setting the NRCS state.</li> 3658 3659 <li>extend <code>vt100Graphics</code> resource to include other 3660 character-sets such as the VT500 codepages in UTF-8 mode.</li> 3661 3662 <li>add some VT5xx codepages to help with the discussion of 3663 96-character sets: <em>ISO Greek Supplemental</em>, <em>ISO 3664 Hebrew Supplemental</em>, <em>ISO Latin–5 3665 Supplemental</em>, and <em>ISO Latin–Cyrillic</em>.</li> 3666 3667 <li>improve description of the VT300-controls for designating 3668 character sets, and fix a typo which indicated that some were 3669 used for 94-character sets (prompted by discussion with Lars 3670 Krueger).</li> 3671 3672 <li>add private control <code>XTCHECKSUM</code> for modifying 3673 <code>checksumExtension</code>.</li> 3674 3675 <li>factor out xterm's <code>DECRQCRA</code> checksum 3676 extensions as a resource setting 3677 <code>checksumExtension</code>.</li> 3678 3679 <li>revise calculation of checksum for <code>DECRQCRA</code> to 3680 match DEC's terminals (using screenshots of vttest provided by 3681 Markus Schmidt).</li> 3682 3683 <li>restore a fix for memory-checksum setup of 3684 <code>DECCKSR</code> from <a href="#xterm_315">patch #315</a> 3685 incorrectly reverted in <a href="#xterm_334">patch #334</a> as 3686 part of fix for <code>DECRQCRA</code>.</li> 3687 </ul> 3688 3689 <h1><a name="xterm_335" id="xterm_335">Patch #335 - 3690 2018/08/14</a></h1> 3691 3692 <ul> 3693 <li>add <code>colorInnerBorder</code> resource to make a change 3694 from <a href="#xterm_334">patch #334</a> configurable (reports 3695 by H Merijn Brand, Gabriele Balducci).</li> 3696 </ul> 3697 3698 <h1><a name="xterm_334" id="xterm_334">Patch #334 - 3699 2018/08/12</a></h1> 3700 3701 <ul> 3702 <li>modify <code>Imakefile</code> to reflect the fact that 3703 NetBSD no longer has a working termcap emulation.</li> 3704 3705 <li>add resource-setting <code>validShells</code> which can be 3706 used to augment the system's <code>/etc/shell</code> (prompted 3707 by discussion with Paul Lampert).</li> 3708 3709 <li>stifle some useless warnings from lintian in 3710 test-packages.</li> 3711 3712 <li>add the ncurses extension “RGB” to the 3713 responses for the termcap-query feature.</li> 3714 3715 <li>improved getopts-handling in sample scripts.</li> 3716 3717 <li>fix some warnings from gcc8 and clang --analyze.</li> 3718 3719 <li>update note about incorrect documentation for 3720 <code>DECRQSS</code> to include VT525 (report by Markus 3721 Schmidt).</li> 3722 3723 <li>correct check for default-values in rectangular parsing; a 3724 zero counts as a missing or default parameter (report/testcase 3725 by Markus Schmidt).</li> 3726 3727 <li>correct some ranges in the <code>ambiguous[]</code> table 3728 in wcwidth (adapted from patch by KUGA Tsutomu).</li> 3729 3730 <li>fix a special case with faint video attribute incorrectly 3731 combined with default color.</li> 3732 3733 <li>add private control <code>XTREPORTSGR</code> for reporting 3734 video-attributes and color on a rectangle, and script 3735 <code>report-sgr.pl</code> to demonstrate it.</li> 3736 3737 <li>modify some of the markup in <code>ctlseqs.ms</code> to 3738 work around groff's reassignment of ASCII punctuation 3739 characters as documented in <em>groff_char(7)</em>.</li> 3740 3741 <li>treat ECMA-48 SGR 6 the same as SGR 5.</li> 3742 3743 <li>add private controls <code>XTPUSHSGR</code> and 3744 <code>XTPOPSGR</code> for saving/restoring the current 3745 video-attributes on a stack (adapted from patch by Dan 3746 Thompson).</li> 3747 3748 <li>modify <code>DECRPM</code> response for logging enable to 3749 indicate its state even when enabling/disabling it is not 3750 allowed.</li> 3751 3752 <li>implement <code>DECSNLS</code></li> 3753 3754 <li>implement <code>DECRSPS</code></li> 3755 3756 <li>improve fill-color for double-buffer configuration, which 3757 was sharing a graphic context with the cursor.</li> 3758 3759 <li>fix a couple of cases where double-sized VT100 characters 3760 were not clipped, seen in Joe Smith's <a href= 3761 "http://www.inwap.com/pdp10/#Tymnet">VT100 torture 3762 test</a>.</li> 3763 3764 <li>color the inner border using the same 3765 <code>borderColor</code> as the outer border, rather than 3766 filling with the VT100's default background.</li> 3767 3768 <li>change encoding of “THANKS” to UTF-8.</li> 3769 3770 <li>modify handling of <code>DECELR</code> to recognize 3771 <code>MotionNotify</code> events again, amending a check for 3772 <code>allowMouseOps</code> which limited that to button-events 3773 in <a href="#xterm_328">patch #328</a> (Olaf Rogalsky).</li> 3774 3775 <li>fix some screen-painting problems with left/right margins 3776 when using insert-line or delete-line (report/testcase by 3777 Martin Hostettler). also fix similar case with 3778 index/reverse-index.</li> 3779 3780 <li>several minor performance improvements using macros, e.g., 3781 inline checks for character width.</li> 3782 3783 <li>add <code>DECSCPP</code> and <code>DECSLPP</code> to 3784 <code>DECRQSS</code>.</li> 3785 3786 <li>implement <code>DECSCPP</code>.</li> 3787 3788 <li>implement <code>DECCIR</code> and <code>DECTABSR</code> 3789 presentation reports.</li> 3790 3791 <li>modify checksum computation for <code>DECRQCRA</code> to 3792 treat uninitialized cells as blanks rather than nulls.</li> 3793 3794 <li>drop custom-entity from HTML-dump, use UTF-8 for &nbsp; 3795 (Debian #902381).</li> 3796 3797 <li>modify display of non-BMP characters when using bitmap 3798 fonts to show a null/empty box rather than the replacement 3799 character which was used in cleanup changes for <a href= 3800 "#xterm_233">patch #233</a> (report by Christian 3801 Weisgerber).</li> 3802 3803 <li>when setting up clipping rectangle for Xft, allow for the 3804 case where xterm is only displaying a combining character, 3805 where the base was already written (report by Joshua 3806 Crowgey).</li> 3807 3808 <li>allow reset Xft's state if switching font-sizes when 3809 double-buffering is used.</li> 3810 3811 <li>fix repainting, e.g., on resize, when double-buffering is 3812 used with Xft (patch by Daniel Colascione).</li> 3813 3814 <li>correct some interchanged pairs of symbols in 3815 <code>unicode/keysym.map</code> (Brad Town).</li> 3816 3817 <li>improve configure macros CF_GCC_WARNINGS, CF_GNU_SOURCE, 3818 CF_POSIX_C_SOURCE, CF_TRY_XOPEN_SOURCE, CF_XOPEN_SOURCE, 3819 CF_X_ATHENA_CPPFLAGS.</li> 3820 3821 <li>modify <code>logFile</code> resource to interpret 3822 “<code>-</code>” as the standard output (adapted 3823 patch by Colum Paget).</li> 3824 3825 <li>improve documentation of Tek4014 menu options; fix a case 3826 where the Tek4014 window was not displayed before switching 3827 modes.</li> 3828 3829 <li>re-correct parameter for <em>pid</em> used for DECCKSR, 3830 DECRQCSR (see <a href="#xterm_315">xterm #315</a>).</li> 3831 3832 <li>hard/soft reset now resets the cursor-blinking state that 3833 may have been set via escape sequences; the cursor-blinking 3834 menu-entry feature is unmodified (report by Matthieu 3835 Herrb).</li> 3836 3837 <li>update config.guess, config.sub</li> 3838 </ul> 3839 3840 <h1><a name="xterm_333" id="xterm_333">Patch #333 - 3841 2018/05/03</a></h1> 3842 3843 <ul> 3844 <li>ensure that i18n is enabled if input-method is 3845 enabled.</li> 3846 3847 <li>modify logic for pre-edit to update spot-location while the 3848 cursor is invisible (Kakoune #1940).</li> 3849 3850 <li>change default icon to newer one, "mini.xterm".</li> 3851 3852 <li>install a complete set of icons, to simplify post-install 3853 customization.</li> 3854 3855 <li>add resource <code>disallowedPasteControls</code> to extend 3856 filtering of control characters from pastes.</li> 3857 3858 <li>add <code>print-on-error</code> action-hook, and document 3859 action-hooks for dump-html, dump-svg.</li> 3860 3861 <li>provide action-hook for <code>print-immediate</code>, which 3862 was available only as a menu-item (report by Rastislav 3863 Barlik).</li> 3864 3865 <li>continue to improve notes in <code>ctlseqs.ms</code> which 3866 mention where various controls originated.</li> 3867 3868 <li>add case to accept ECMA-48's bogus <code>SD</code>, but 3869 document the issue in <code>ctlseqs.ms</code>.</li> 3870 3871 <li>add control sequence for loading XPM-icon file, using the 3872 analogous control sequence from shelltool/dtterm.</li> 3873 3874 <li>add <code>-report-icons</code> option, to report on 3875 XPM-icon and title-bar updates.</li> 3876 3877 <li>correct a discrepancy between locator-reports for VT220 vs 3878 VT330.</li> 3879 3880 <li>add window-ops control sequences to complement existing 3881 ones for reporting window-position and text-area size with 3882 reports for text-area position and window-size.</li> 3883 3884 <li>display vt52 graphics mode characters.</li> 3885 3886 <li>correct case-statement for window-ops 10, overlooked since 3887 some window managers equate vertical-maximize and 3888 horizontal-maximize window hints with full-screen 3889 maximize.</li> 3890 </ul> 3891 3892 <h1><a name="xterm_332" id="xterm_332">Patch #332 - 3893 2018/04/15</a></h1> 3894 3895 <ul> 3896 <li>add a <code>GetChecksum</code> item to 3897 <code>disallowedWindowOps</code></li> 3898 3899 <li>improve notes in <code>ctlseqs.ms</code> which mention 3900 where various controls originated.</li> 3901 3902 <li>add control sequences for querying the X display size and 3903 the character size, both in pixels to help eliminate some of 3904 the constants in <code>esctest</code>.</li> 3905 3906 <li>fixes prompted by review of George Nachman's 3907 <code>esctest</code> script: 3908 <ul> 3909 <li>add a null-pointer check and a limit-check in 3910 <code>xtermCheckRect</code>.</li> 3911 3912 <li>correct limit-check for right-margin when processing 3913 autowrapping if xterm is not built for 3914 wide-characters.</li> 3915 3916 <li>repair logic in <code>RIS</code> to reset 132-column 3917 mode when an escape sequence is used to enable 3918 80/132-column switching.</li> 3919 3920 <li>correct array-limit for EWMH working state.</li> 3921 3922 <li>further improve limit-checks versus assert's (see 3923 <a href="#xterm_315">patch #315</a>).</li> 3924 3925 <li>correct order of check-margins and move-to-left margin 3926 for <code>DL</code> and <code>IL</code>.</li> 3927 3928 <li>modify reverse-wrap to pay attention to top/bottom 3929 margins as it has done for left/right margins since 3930 <a href="#xterm_279">patch #279</a>.</li> 3931 3932 <li>modify behavior of <code>DECFI</code> and 3933 <code>DECBI</code> to not index the screen at the 3934 left/right edge of the display unless those happen to be 3935 the left/right margins.</li> 3936 3937 <li>add case for VT320 DSR response for keyboard 3938 status.</li> 3939 </ul> 3940 </li> 3941 3942 <li>improve check for valid shell path using 3943 <code>getusershell</code> and <code>endusershell</code> if 3944 available, in case <code>/etc/shells</code> does not exist 3945 (suggested by Rainer Orth).</li> 3946 3947 <li>modified configure checks for groff and man2html, to use 3948 the latter by default, but allowing mandoc as a partial 3949 replacement for former.</li> 3950 3951 <li>revisited the inconsistent copyright notices mentioned in 3952 <a href="#xterm_165">patch #165</a>, and eliminate the issue as 3953 mentioned in this <a href= 3954 "https://invisible-island.net/personal/copyrights.html">copyright 3955 discussion</a>.</li> 3956 3957 <li>fix typo in this change-log (report by Sven Joachim)</li> 3958 3959 <li>update config.guess, config.sub</li> 3960 </ul> 3961 3962 <h1><a name="xterm_331" id="xterm_331">Patch #331 - 3963 2017/12/30</a></h1> 3964 3965 <ul> 3966 <li>add workaround for improper grayscale adjustments made in 3967 FreeType library, exposed by changes to rounding in 2.8.1, 3968 which shows up as a gap in line-drawing characters (Debian 3969 #880407).</li> 3970 3971 <li>improve a special case where a non-Unicode font's 3972 line-drawing characters were not used, when specifying it via 3973 the <code>utf8Fonts</code> resource, e.g., 3974 <blockquote> 3975 <pre> 3976 -fs 15 \ 3977 -xrm '*VT100.font:12x24' \ 3978 -xrm '*VT100.boldFont:12x24' \ 3979 -xrm '*VT100.utf8Fonts.font: 12x24' \ 3980 -xrm '*VT100.utf8Fonts.boldFont: 12x24' \ 3981</pre> 3982 </blockquote> 3983 </li> 3984 3985 <li>replace constant 10msec delay for next X event with new 3986 resource <code>nextEventDelay</code>, and reduce that to 1msec 3987 to accommodate faster machines than used when 3988 <code>-hold</code> was implemented in <a href= 3989 "#xterm_116">1999</a> (Debian #877628).</li> 3990 3991 <li>add <code>scroll-to</code> action, which simplifies binding 3992 a key to scroll to the beginning or end of the saved-lines 3993 (Debian #880120).</li> 3994 3995 <li>add building blocks for alternate screen and/or title-stack 3996 features in the <code>terminfo</code> file.</li> 3997 3998 <li>improve calculations for cell-data size.</li> 3999 4000 <li>change configure script to enable XHTML/SVG screen dumps by 4001 default.</li> 4002 4003 <li>change configure script to enable 256-colors by 4004 default.</li> 4005 4006 <li>update config.guess, config.sub</li> 4007 4008 <li>change configure script option for 4009 <code>--with-man2html</code> to use improved script by 4010 default.</li> 4011 4012 <li>add case for private mode 1044 in DECRQM, to report the 4013 keepClipboard resource setting and corresponding menu 4014 entry.</li> 4015 4016 <li>fix an inconsistency between private mode 12 (the AT&T 4017 610 cursor blink) and <code>DECSCUSR</code>: the former relied 4018 on having the <code>cursorBlink</code> resource set initially 4019 to enable the escape sequence, while the latter does not.</li> 4020 4021 <li>add private modes 13 and 14, as well as resource 4022 <code>cursorBlinkXOR</code> to allow better control over the 4023 cursor-blinking state (discussion with Bram Moolenaar).</li> 4024 4025 <li>modify the html and svg screen dumps to support direct 4026 color</li> 4027 4028 <li>modify media copy (screen-printing) to support the same SGR 4029 codes as <code>DECRQSS</code>, including 88/256 indexed color 4030 as well as direct color.</li> 4031 4032 <li>improve options-parsing for query-status.pl script.</li> 4033 4034 <li>modify parsing of <code>SGR</code> direct-color control 4035 making <em>color space identitier</em> optional. The 4036 corresponding <code>DECRQSS</code> reply always returns an 4037 empty (default) field for the identifier.</li> 4038 4039 <li>add wide-attributes to <code>DECRQSS</code> reply for 4040 <code>SGR</code>.</li> 4041 4042 <li>add private mode 1046 to help with scripting 4043 applications.</li> 4044 4045 <li>correct expression used for readline-flags in DECRQM; to 4046 test the current flag rather than information <em>stacked</em> 4047 within the same variable.</li> 4048 4049 <li>correct typo in <code>ctlseqs.ms</code> reference to 4050 ISO-8613-6 (patch by Mike Frysinger).</li> 4051 4052 <li>fix lintian warning for test-package.</li> 4053 4054 <li>fix typo in <code>DECRQSS</code> for <code>SGR</code> 48, 4055 which printed the foreground value for colors past 15. Also use 4056 colon delimiter for codes 38/48 in response (report by Paul 4057 LeoNerd Evans).</li> 4058 4059 <li>improve workaround for Debian #542434 by using the font's 4060 maximum width when no ISO-8859-1 glyphs are provided (Debian 4061 #879936).</li> 4062 4063 <li>work around a special case of <em>Xft</em>'s mismanagement 4064 of its cached data by adding a check before the 4065 <code>-report-fonts</code> option to ensure that it does not 4066 use an <code>XftPattern</code> which may have been freed during 4067 a call to <code>XftFontOpenPattern</code>.</li> 4068 4069 <li>improve manual page description of <code>regex</code> 4070 option for <code>on<em>X</em>Clicks</code> resources (report by 4071 Lukas Mai).</li> 4072 4073 <li>add <code>directColor</code> resource.</li> 4074 4075 <li>additional manpage macro cleanup (Branden Robinson, Debian 4076 #880551).</li> 4077 4078 <li>add optional support for direct-colors (adapted from patch 4079 by anonymous “Nibby Nebbulous”).</li> 4080 4081 <li>improve legacy/NRC character set mapping (patch by Thomas 4082 Wolff), e.g., 4083 <ul> 4084 <li>enable alternate NRC set designators for French and 4085 French Canadian, ‘9’ and ‘f’ 4086 respectively, as documented in ctlseqs. (‘9’ is 4087 documented for VT510, ‘f’ is a Kermit 4088 feature).</li> 4089 4090 <li>correct the Unicode value in the <em>DEC Technical</em> 4091 table to show capital delta.</li> 4092 4093 <li>referring to 4094 <blockquote> 4095 <p><a href= 4096 "http://vt100.net/docs/vt220-rm/table2-3b.html">http://vt100.net/docs/vt220-rm/table2-3b.html</a><br> 4097 4098 <a href= 4099 "http://vt100.net/docs/vt320-uu/appendixe.html">http://vt100.net/docs/vt320-uu/appendixe.html</a></p> 4100 </blockquote> 4101 4102 <p>add entries for the <em>DEC Supplemental Graphics</em> 4103 table to display 0x28/0xa8 as ¤ and 0x5d/0xdd as 4104 Ÿ.</p> 4105 </li> 4106 4107 <li>referring to 4108 <blockquote> 4109 <p><a href= 4110 "http://www.vt100.net/charsets/technical.html">http://www.vt100.net/charsets/technical.html</a></p> 4111 </blockquote> 4112 4113 <p>alter the Unicode values used for 0x2b through 0x2c to 4114 use <em>curly braces</em> to work with the 4115 “middle” parts displayed with 0x2f and 4116 0x30.</p> 4117 </li> 4118 4119 <li>modify the VT220 “Supplemental” table, 4120 giving a hint that it was probably meant to be 4121 “Supplemental Graphics” and is the same as 4122 VT320's table.</li> 4123 </ul> 4124 </li> 4125 4126 <li>quiet a few font-warnings when a derived fontname cannot be 4127 opened, overlooked in refactoring of font resources in <a href= 4128 "#xterm_328">patch #328</a> (initially reported on <a href= 4129 "https://cygwin.com/ml/cygwin/2017-06/msg00255.html">Cygwin 4130 mailing list</a>, with <a href= 4131 "https://cygwin.com/ml/cygwin/2017-07/msg00216.html">followup</a>).</li> 4132 4133 <li>correct error response for <code>DECRQSS</code> broken in 4134 cleanup of Coverity reports in <a href="#xterm_288">patch 4135 #288</a> (reports by Bram Moolenaar and IWAMOTO Kouichi).</li> 4136 4137 <li>improve <code>DECRPM</code> responses by returning <em>mode 4138 not recognized</em> for modes which may not be settable due to 4139 the selected <code>decTerminalID</code> resource (report by 4140 IWAMOTO Kouichi).</li> 4141 4142 <li>correct logic for <code>print-immediate</code> action, and 4143 enable corresponding menu entry (patch by Lauri 4144 Tirkkonen).</li> 4145 4146 <li>add configure option <code>--with-pcre2</code> (patch by 4147 David Michael).</li> 4148 4149 <li>fix a misspelled subsection title in ctlseqs.ms and add a 4150 note regarding blink which was rendered as bold in X11R6. 4151 Blinking text was implemented in <a href="#xterm_60">Patch 4152 #60</a>.</li> 4153 4154 <li>fix typos in <code>xterm.man</code> (patches by Sven 4155 Joachim, Larry Hynes).</li> 4156 4157 <li>fix typography in <code>xterm.man</code> (patch by Bjarni 4158 Ingi Gislason, Debian #869248).</li> 4159 4160 <li>fix typo in <code>INSTALL</code> (Larry Hynes).</li> 4161 4162 <li>add <code>xterm-direct</code> terminal description based on 4163 changes introduced in <a href="#xterm_277">patch #277</a>, and 4164 relying upon ncurses <code><strong>RGB</strong></code> 4165 extension.</li> 4166 4167 <li>modify <code>xterm-new</code> terminal description to use 4168 ECMA-48 <code>REP</code>, reflecting its use in xterm since 4169 <a href="#xterm_32">patch #32</a> (1996).</li> 4170 4171 <li>clarify comment in ctlseqs.ms regarding blink: it has been 4172 part of xterm since <a href="#xterm_60">patch #60</a> 4173 (1998).</li> 4174 4175 <li>update ftp URLs in documentation.</li> 4176 </ul> 4177 4178 <h1><a name="xterm_330" id="xterm_330">Patch #330 - 4179 2017/06/20</a></h1> 4180 4181 <ul> 4182 <li>updates for ReGIS (Ross Combs): 4183 <ul> 4184 <li>remove redundant text command error check which broke 4185 <code>T(B)</code> and <code>T(E)</code>.</li> 4186 4187 <li>retain the loading alphabet number across multiple 4188 “L” commands.</li> 4189 4190 <li>add <code>S(T)</code> delay handler.</li> 4191 4192 <li>fix some color handling error messages.</li> 4193 4194 <li>add stubbed-out macrograph handling.</li> 4195 4196 <li>use <code>fragment_remaining()</code> and 4197 <code>fragment_consumed()</code> instead of manually 4198 checking position / length in various places.</li> 4199 4200 <li>rename some local variables in string / extent / option 4201 parsing</li> 4202 4203 <li>wrap some long lines.</li> 4204 4205 <li>move macrograph command handling out of the 4206 top-level.</li> 4207 </ul> 4208 </li> 4209 4210 <li>add a summary of the italic fonts loaded to 4211 <code>-report-fonts</code> option.</li> 4212 4213 <li>modify the font-lookup for italics to allow for 4214 “<code>-i-</code>” if no match is found with slant 4215 “<code>-o-</code>” (prompted by patch by Ben 4216 Wong).</li> 4217 4218 <li>change default values for <code>mkSamplePass</code> and 4219 <code>mkSampleSize</code> to reflect generally-improved locale 4220 support in various operating systems (FreeBSD #219800).</li> 4221 4222 <li>modify <code>wcwidth.c</code> to return -1 for non-Unicode 4223 values, and adjust a couple of blocks to better match 4224 assumptions about ambiguous-width characters in other 4225 implementations. Also modify <code>wcwidth.c</code> to support 4226 configurable soft-hyphen, so there is no drawback to using this 4227 version rather than a system <code>wcwidth</code>.</li> 4228 4229 <li>amend change made in <a href="#xterm_328">patch #328</a> 4230 for cursor-visibility to handle case where an application is 4231 updating the reverse-video state (FreeBSD #219800).</li> 4232 4233 <li>update tables of combining and ambiguous-width characters 4234 in wcwidth.c based on Unicode 10.0.0.</li> 4235 4236 <li>build-fix for <code>--enable-sixel-graphics</code> without 4237 <code>--enable-regis-graphics</code> (reports by Sven Joachim, 4238 FreeBSD #219945).</li> 4239 </ul> 4240 4241 <h1><a name="xterm_329" id="xterm_329">Patch #329 - 4242 2017/06/12</a></h1> 4243 4244 <ul> 4245 <li>add control sequences for reading the Sixel and ReGIS 4246 graphics sizes (suggested by Ben Wong).</li> 4247 4248 <li>add a workaround for <code>wcwidth</code> returning -1 for 4249 characters which should have been printable (FreeBSD 4250 #219800).</li> 4251 4252 <li>fix a bug in font initialization from <a href= 4253 "#xterm_328">patch #328</a> (FreeBSD #219800).</li> 4254 4255 <li>fix a special case in <code>HideCursor</code> which 4256 assigned a bold font to the slot used for normal font in 4257 changes for italics in <a href="#xterm_307">patch #307</a> 4258 (Debian #858304).</li> 4259 4260 <li>updates for ReGIS (Ross Combs): 4261 <ul> 4262 <li>Strings specified with no command are used as 4263 "comments". Print these in the log when tracing.</li> 4264 4265 <li>Catch attempts to use "alternate display" mode (AKA 4266 "blink") from the GIGI, but do not implement it.</li> 4267 4268 <li>The <code>T(M)</code> command should only multiply the 4269 height by 10, not 20.</li> 4270 4271 <li>Make the <code>S(E)</code> command reset more state 4272 than just the screen contents.</li> 4273 4274 <li>Remove two rotation variables which were only being 4275 printed.</li> 4276 4277 <li>Numerous minor fixes and comment updates in the 4278 <code>R</code> command.</li> 4279 4280 <li>Unknown <code>R</code> command option names trigger an 4281 empty response.</li> 4282 4283 <li>Fix the output position after printing rotated text (it 4284 was missing the the sign before).</li> 4285 4286 <li>Fix the position change with pixelvectors and rotated 4287 text (the rotation transform was not being applied).</li> 4288 4289 <li>Update the <em>TODO</em> list and remove a verification 4290 <em>FIXME</em> (slanted text positioning is correct as 4291 is).</li> 4292 4293 <li>Emulate the approximately 1.4x enlargement for text 4294 which isn't rotated at right angles.</li> 4295 4296 <li>Only update the color planes specified in the plane 4297 mask (the <code>W</code> command's <code>F</code> 4298 option).</li> 4299 </ul> 4300 </li> 4301 4302 <li>fix a bug introduced by the changes to font information in 4303 <a href="#xterm_328">patch #328</a>. When processing the 4304 "checkfont" option of the <code>locale</code> resource, the 4305 program referred to the <em>request</em> data, to an array 4306 which was only allocated in the <em>new/result</em> widget 4307 (report by H Merijn Brand).</li> 4308 4309 <li>fix a missing assignment initialization to make the 4310 <code>utf8</code> resource control whether escape sequences to 4311 enable/disable UTF-8 mode are allowed.</li> 4312 </ul> 4313 4314 <h1><a name="xterm_328" id="xterm_328">Patch #328 - 4315 2017/06/01</a></h1> 4316 4317 <ul> 4318 <li>revise parser for <code>charClass</code> resource, making 4319 these improvements: 4320 <ul> 4321 <li>accept octal and hexadecimal values</li> 4322 4323 <li>allow embedded whitespace</li> 4324 4325 <li>allow the class after colon to be optional, e.g., to 4326 clear class settings for a range of characters.</li> 4327 </ul> 4328 </li> 4329 4330 <li>add command-line option 4331 <code>-report-charclass</code>.</li> 4332 4333 <li>fix most lintian warnings about test-package</li> 4334 4335 <li>add <code>eraseSavedLines</code> resource.</li> 4336 4337 <li>document <code>DECSED 3</code> in 4338 <code>ctlseqs.ms</code> (report by Ben Longmans).</li> 4339 4340 <li>improve integration between configure-events and updates 4341 for reported screensize, in particular when switching between 4342 vt100 and tek4014 modes.</li> 4343 4344 <li>modify selection-highlighting of reverse-video text to keep 4345 that distinct, e.g., by reversing the selection foreground and 4346 background colors as one would expect. This fixes a "useless" 4347 case in the description of 4348 <code>highlightColorMode</code>.</li> 4349 4350 <li>improve fix for Debian #759734, addressing a case where 4351 non-colored cursor would be invisible against reverse-video 4352 (see <a href="#xterm_311">patch #311</a>).</li> 4353 4354 <li>updates for ReGIS (Ross Combs): 4355 <ul> 4356 <li>the "H" option of the "T" command should multiply by 4357 10, not 20.</li> 4358 4359 <li>display unknown glyphs as a solid block.</li> 4360 4361 <li>given a succession of text-direction options, use the 4362 last.</li> 4363 4364 <li>fix the direction of ReGIS slanted text so that 4365 negative values produce oblique output .</li> 4366 4367 <li>fix the ReGIS text direction option to only rotate 4368 characters when no following size option is used.</li> 4369 </ul> 4370 </li> 4371 4372 <li>update terminfo to better match corresponding entries in 4373 ncurses, e.g., <code>u8</code> pattern to match the VT220, 4374 VT420, etc., primary responses, as well as adding 4375 <code>smxx</code> and <code>rmxx</code>.</li> 4376 4377 <li>fixes from Jörg Sommer: 4378 <ul> 4379 <li>corrected a trace-message regarding maximum 4380 graphics-size; it used the similar ReGIS maximum size which 4381 might not be configured.</li> 4382 4383 <li>in <code>do_select_regex</code>, clear selection if 4384 there is no match. If the regex does not match anything 4385 around the cursor, the selection returned must be empty, 4386 otherwise the whole line is treated as a match. This way 4387 the command defined by <code>exec-selectable</code> will 4388 not be executed if there is no match.</li> 4389 4390 <li>modify limit in <code>do_select_regex</code> to include 4391 the character at the cursor in the match, making it easier 4392 to type something and then hit the key to trigger 4393 <code>exec-selectable</code>.</li> 4394 4395 <li>If <code>exec-selectable</code> or 4396 <code>insert-selection</code> is triggered by a mouse 4397 button click, the position of the mouse pointer should be 4398 used. This makes it easier to address any position on the 4399 window and it makes it possible to use the mouse, e.g., for 4400 applications such as mutt where you cannot move the 4401 cursor.</li> 4402 </ul> 4403 </li> 4404 4405 <li>modify <code>DECRC</code> to save/restore xterm's 4406 last-column flag used to control wrapping behavior rather than 4407 manipulating <code>DECAWM</code> (report/analysis by Mattias 4408 Engdegård).</li> 4409 4410 <li>add configure option <code>--enable-terminfo-env</code> to 4411 use the value set by <code>--with-own-terminfo</code> for the 4412 <code>$TERMINFO</code> environment variable. That variable was 4413 set automatically for HPUX, but would be useful in other 4414 systems, e.g., for Solaris (request by Jeff Wieland).</li> 4415 4416 <li>fix a race condition when setting up a signal handler to 4417 timeout if opening <code>/dev/tty</code> hangs (patch by Tobias 4418 Stoeckmann).</li> 4419 4420 <li>review/cleanup resources which were not in the manual page 4421 (report by Maxwell Anselm): 4422 <ul> 4423 <li>add manual page description as needed.</li> 4424 4425 <li>drop resource name for <code>menuBar</code>, as 4426 unnecessary.</li> 4427 4428 <li>modify fallback numeric value for 4429 <code>regisScreenSize</code> resource to match that for 4430 <code>maxGraphicSize</code>.</li> 4431 </ul> 4432 </li> 4433 4434 <li>updated configure macros <code>CF_ADD_CFLAGS</code>, 4435 <code>CF_CC_ENV_FLAGS</code>, <code>CF_GNU_SOURCE</code>, 4436 <code>CF_MATH_LIB</code>, and <code>CF_XOPEN_SOURCE</code> from 4437 other program-changes.</li> 4438 4439 <li>update config.guess, config.sub</li> 4440 4441 <li>change “maximum screensize” assumed by 4442 <code>resize</code> to 9999x9999, to accommodate people using 4443 the <em><code>Unreadable</code></em> font.</li> 4444 4445 <li>drop <code>Utility</code> from default value of 4446 <code>--with-desktop-category</code> (Debian #780176).</li> 4447 4448 <li>widen the configure script pattern used for finding related 4449 ".desktop" files, including “Terminal”</li> 4450 4451 <li>several minor improvements to font utility functions: 4452 <ul> 4453 <li>provide for later modification to implement font-sets 4454 by parsing the font resources as comma-separated 4455 lists.</li> 4456 4457 <li>parse <code>-fn</code> and <code>-fa</code> similarly, 4458 using “x:” and “xft:” prefixes for 4459 font name/family strings to distinguish between XLFD and 4460 Xft font specifications.</li> 4461 4462 <li>use loops to iterate over font classes</li> 4463 4464 <li>use getters/setters for font data to allow for 4465 on-demand lookups.</li> 4466 4467 <li>make the debugging trace for missing glyph less verbose 4468 since that interferes with the <code>-report-fonts</code> 4469 option.</li> 4470 4471 <li>refactor <code>xtermLoadFont</code> to make it clearer 4472 how some fonts are derived from others, e.g., bold, 4473 wide.</li> 4474 4475 <li>make the triggering and suppressing of font-warnings 4476 more consistent by storing the last state in the 4477 widget.</li> 4478 4479 <li>reduce font-warnings by checking for repeated 4480 warnings.</li> 4481 </ul> 4482 </li> 4483 4484 <li>add <code>vttests/query-status.pl</code></li> 4485 4486 <li>add <code>vttests/closest-rgb</code></li> 4487 4488 <li>add special case for displaying soft-hyphen if it happens 4489 to fall at the right margin, and omitting similar case such as 4490 the BIDI markers, where a zero-width character is neither a 4491 control character nor a combining character (Debian 4492 #844325).</li> 4493 4494 <li>modify logic for <code>OSC 52</code>, <em>manipulate 4495 selection data</em>, to update the selection-time to include 4496 the latest X events. This fixes some cases where the selection 4497 was invalid, e.g., after an event due to focus-follows-mouse 4498 (report/testcase by Stephane Chauveau).</li> 4499 4500 <li>revise macro <code>CastMallocN</code> as new macro 4501 <code>TextAlloc</code> to make explicit use of 4502 <code>sizeof(char)</code> (prompted by patch by Cade 4503 Foster).</li> 4504 4505 <li>add <em>“Mouse Ops”</em> menu entry and related 4506 resources to allow runtime disabling/enabling of the mouse 4507 protocol escape sequences (discussion with Bob Proulx).</li> 4508 4509 <li>improve discussion of mouse actions versus protocol in the 4510 manual (discussion with Bob Proulx).</li> 4511 4512 <li>improve discussion of environment variables in the manual, 4513 pointing out where some features (such as termcap and the 4514 System5 <code>COLUMNS</code> and <code>LINES</code> variables) 4515 are used rarely, mainly to support legacy applications.</li> 4516 4517 <li>add examples of <code>translations</code> resource for 4518 select/paste, and for font-size changes to the manual.</li> 4519 4520 <li>minor reordering of some entries in <code>ctlseqs.ms</code> 4521 for consistency (report by Arran Ubels).</li> 4522 4523 <li>add <code>-s</code> option to <code>256colors2.pl</code> 4524 and <code>88colors2.pl</code>, to demonstrate modifying the 4525 “system” colors 0–15.</li> 4526 4527 <li>omit <code>XFT_SPACING</code> property from call to <code> 4528 XftPatternBuild</code>, to work around a bug in 4529 <em>fontconfig</em> for handling Google Go fonts, whose names 4530 sort in an order not expected by <em>fontconfig</em>, causing 4531 the request for a monospaced font to return <em>italics</em>, 4532 e.g., 4533 <blockquote> 4534 <pre> 4535$ fc-match 'Go Mono:spacing=monospace' 4536Go-Mono-Italic.ttf: "Go Mono" "Italic" 4537(report by Giacomo Boffi on <a href= 4538"http://unix.stackexchange.com/questions/324941/xterm-displays-an-italic-face-instead-of-regular">Stackoverflow</a>). 4539 4540</pre> 4541 </blockquote> 4542 </li> 4543 4544 <li>modify <code>minstall.in</code> to improve a workaround 4545 added to the manual page in <a href="#xterm_182">patch #182</a> 4546 to avoid having the C preprocessor used in the imake 4547 configuration strip out the comments in the character classes 4548 section (reports by Ted Unangst, Anthony J Bentley).</li> 4549 </ul> 4550 4551 <h1><a name="xterm_327" id="xterm_327">Patch #327 - 4552 2016/10/07</a></h1> 4553 4554 <ul> 4555 <li>add a check in the function which handles end-of-line 4556 wrapping to ensure that C1 controls are allocated one column 4557 when <code>allowC1Printable</code> is set (Debian 4558 #738794).</li> 4559 4560 <li>use consistent error-checking after <code>strtol</code> 4561 calls, fixes a case where a query with OSC 6 did not ensure 4562 there was a valid color number (report by Alex Smith).</li> 4563 4564 <li>add <code>-baudrate</code> option, for testing 4565 ncurses.</li> 4566 4567 <li>always generate the <code>CASE_<em>xxx</em></code> symbols 4568 in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part 4569 of a change to improve debug-logging. This makes the build 4570 always depend upon <code>awk</code>.</li> 4571 4572 <li>modify <code>allowC1Printable</code> to disallow codes 4573 160-254 as being equivalent to codes 32-126 when parsing escape 4574 sequences (Debian #839220).</li> 4575 4576 <li>amend fix from <a href="#xterm_326">patch #326</a> for 4577 TrueType fonts to exclude the hidden character used for 4578 double-width cells (report by Grady Martin).</li> 4579 4580 <li>fix a typo in <code>ctlseqs.ms</code></li> 4581 </ul> 4582 4583 <h1><a name="xterm_326" id="xterm_326">Patch #326 - 4584 2016/09/25</a></h1> 4585 4586 <ul> 4587 <li>updated appdata file (report by Richard Hughes).</li> 4588 4589 <li>improve discussion of the different terminal emulations 4590 provided by xterm in the manual page.</li> 4591 4592 <li>add examples of setting the icon title with/without the 4593 window title in the manual (Debian #833984).</li> 4594 4595 <li>correct a limit-check when using a numeric value for 4596 extended Booleans e.g., <code>*fullscreen:3</code> rather than 4597 a name such as <code>*fullscreen:never</code>.</li> 4598 4599 <li>add action <code>allow-bold-fonts</code></li> 4600 4601 <li>improved formatting fixes for manual page, using script to 4602 find mismatches in spelling of resources, actions and menu 4603 entries.</li> 4604 4605 <li>improve documentation of logging resources.</li> 4606 4607 <li>fix a special case of flickering cursor by adding 4608 <code>GraphicsExpose</code> to the list of event types that 4609 should not trigger making the mouse cursor visible (patch by 4610 Joe Peterson).</li> 4611 4612 <li>correct initialization of line-drawing in VT52-mode, 4613 overlooked in changes for <a href="#xterm_297">patch #297</a> 4614 (report/patch by Ben Wiley Sittler).</li> 4615 4616 <li>minor clarification of form-feed versus line-feed in 4617 <code>ctlseqs.ms</code> (suggested by David Kemper).</li> 4618 4619 <li>amend fix for Debian #738794 to restore a check for missing 4620 characters which are <em>not</em> combining characters. Also 4621 fill in a corresponding special case for TrueType fonts (Debian 4622 #827905).</li> 4623 </ul> 4624 4625 <h1><a name="xterm_325" id="xterm_325">Patch #325 - 4626 2016/06/05</a></h1> 4627 4628 <ul> 4629 <li>improve manual page discussion of function keys (discussion 4630 with Ross Combs).</li> 4631 4632 <li>further improve fix for Debian #545220 in <a href= 4633 "#xterm_248">patch #248</a>, to avoid conflict with combining 4634 characters (Debian #738794).</li> 4635 4636 <li>improve <code>-hold</code> option to avoid 100% CPU usage 4637 with NetBSD after closing the shell, which makes subsequent 4638 checks for X input events fail (prompted by patch by Pierre 4639 Pronchery).</li> 4640 4641 <li>review <code>#ifdef</code> statements, listed those which 4642 do not have a configure option in 4643 <code>xtermcfg.hin</code>.</li> 4644 4645 <li>fixed one case where the menu sensistivity for 4646 <em>Print-All Immediately</em> and <em>Print-All on Error</em> 4647 was not properly ifdef'd.</li> 4648 4649 <li>modify terminfo entries for 16-, 88- and 256-color to reset 4650 palette with <code>rs1</code> capability.</li> 4651 4652 <li>accept <code>legacy</code> value of <code>-kt</code> as 4653 synonym for the <code>oldXtermFKeys</code> resource, and extend 4654 the full-reset logic to use the keyboard type set via 4655 <code>-kt</code>.</li> 4656 4657 <li>modify <code>ioctl</code> calls for <code>I_PUSH</code> to 4658 first check if the module has been added, using 4659 <code>I_FIND</code>. This is needed for newer Solaris libraries 4660 with c11 support (adapted from patch by Alan Coopersmith).</li> 4661 4662 <li>add check in <code>getXtermCombining</code> to ensure that 4663 combining characters were allocated (report by Tor 4664 Andersson).</li> 4665 4666 <li>add configure option <code>--without-xinerama</code> to 4667 allow suppressing the extension (Gentoo #580936).</li> 4668 4669 <li>update keysym2ucs.c based on Unicode 9.0</li> 4670 4671 <li>fixed most <code>cppcheck --enable=all</code> warnings, 4672 including for style (prompted by report by David Binderman). 4673 There was one bug-fix: 4674 <ul> 4675 <li>RGB least-squares computation in 4676 <code>allocateClosestRGB</code> used only one ordinate</li> 4677 </ul> 4678 </li> 4679 4680 <li>add <code>cppcheck</code> to lint-like programs in 4681 configure script and makefile.</li> 4682 4683 <li>fix some const correctness issues and point out an array 4684 lifetime issue (Ross Combs).</li> 4685 4686 <li>updates for SIXEL and ReGIS (Ross Combs): 4687 <ul> 4688 <li>Sixel drawing should still happen after an error if 4689 some commands have been processed</li> 4690 4691 <li>Tiny steps toward reporting ReGIS input</li> 4692 </ul> 4693 </li> 4694 </ul> 4695 4696 <h1><a name="xterm_324" id="xterm_324">Patch #324 - 4697 2016/03/10</a></h1> 4698 4699 <ul> 4700 <li>updated configure macro <code>CF_LD_RPATH_OPT</code> from 4701 ncurses changes.</li> 4702 4703 <li>provide alternate fix for Juha Nurmela's report by turning 4704 on POSIX signals if <code>_POSIX_C_SOURCE</code> is at least 4705 one. This is done to improve the behavior if a direct child 4706 process receives a <code>STOP</code> signal.</li> 4707 4708 <li>revert change to <code>CF_POSIX_C_SOURCE</code> from 4709 <a href="#xterm_323">patch #323</a> (reports by Ashish Shukla, 4710 Christian Weisgerber).</li> 4711 </ul> 4712 4713 <h1><a name="xterm_323" id="xterm_323">Patch #323 - 4714 2016/03/07</a></h1> 4715 4716 <ul> 4717 <li>updated appdata and desktop files to add keywords (report 4718 by Richard Hughes).</li> 4719 4720 <li>modify configure macro <code>CF_POSIX_C_SOURCE</code> to 4721 accommodate some systems, e.g., FreeBSD, which have separated 4722 their implementation specific preprocessor symbols from the 4723 POSIX ones, requiring both to be defined (report by Juha 4724 Nurmela).</li> 4725 4726 <li>change the directory to the current working dir of the 4727 child process in exec-formatted and exec-selectable actions 4728 (patch by Alexander Pohoyda).</li> 4729 4730 <li>correct typo in xterm.man (patch by Larry Hynes).</li> 4731 4732 <li>correct typo in ctlseqs.ms (report by Shriramana 4733 Sharma).</li> 4734 4735 <li>add feature to support XHTML and SVG screen dumps (patch by 4736 Jens Schweikhardt).</li> 4737 4738 <li>correct response to DECRQSS when terminal id is less than 4739 400 (patch by Iwamoto Kouichi).</li> 4740 </ul> 4741 4742 <h1><a name="xterm_322" id="xterm_322">Patch #322 - 4743 2016/01/02</a></h1> 4744 4745 <ul> 4746 <li>fix regression due to incorrect fix for compiler warning 4747 when allocating storage for <code>/etc/shells</code> (reports 4748 by Ashish Shukla, Debian #809646).</li> 4749 </ul> 4750 4751 <h1><a name="xterm_321" id="xterm_321">Patch #321 - 4752 2015/12/31</a></h1> 4753 4754 <ul> 4755 <li>add resource <code>keepClipboard</code>, escape sequence 4756 and action <code>keep-clipboard</code>.</li> 4757 4758 <li>add optional feature to capture text copied to clipboard at 4759 the time of copying rather than at the time the clipboard 4760 contents are requested for pasting (patch by Milan 4761 Mehner).</li> 4762 4763 <li>improve a special case where the <code>-e</code> option was 4764 used to pass a single-quoted command via <code>luit</code>, by 4765 wrapping it in a “sh -c” (report by Keith 4766 Hedger).</li> 4767 4768 <li>minor fix for type-cleanliness when allocating storage for 4769 <code>/etc/shells</code> (Tobias Stoeckmann).</li> 4770 4771 <li>fix a typo in manual page (Dan Church).</li> 4772 4773 <li>fix minor file-descriptor leak; after calling 4774 <code>openpty</code>, the slave's file descriptor is not needed 4775 (report by Juha Nurmela).</li> 4776 4777 <li>editorial change to ctlseqs.ms (report by David 4778 Gomboc).</li> 4779 4780 <li>minor updates for autoconf macros.</li> 4781 4782 <li>update config.guess, config.sub</li> 4783 </ul> 4784 4785 <h1><a name="xterm_320" id="xterm_320">Patch #320 - 4786 2015/08/28</a></h1> 4787 4788 <ul> 4789 <li>correct documentation for <code>%t</code> format (report by 4790 Martin Tournoij).</li> 4791 4792 <li>add <code>%R</code> for consistency to 4793 <code>exec-formatted()</code> and 4794 <code>insert-formatted()</code> actions.</li> 4795 4796 <li>add <code>%r</code> format to <code>exec-formatted()</code> 4797 and <code>insert-formatted()</code> actions (patch by Martin 4798 Tournoij).</li> 4799 4800 <li>Amend fix for Debian #794201 (report forwarded from 4801 Christian Jachmann by Emanuel Haupt, Debian #797008).</li> 4802 </ul> 4803 4804 <h1><a name="xterm_319" id="xterm_319">Patch #319 - 4805 2015/08/19</a></h1> 4806 4807 <ul> 4808 <li>add a section to <code>ctlseqs.ms</code> discussing control 4809 sequences and ECMA-48, to explain why C1 controls do not occur 4810 in the decoded characters from UTF-8 byte streams (prompted by 4811 discussion with Poul-Henning Kamp).</li> 4812 4813 <li>modify check for cursor-theme from <a href= 4814 "#xterm_301">patch #301</a> to also check if the resource 4815 <code>Xcursor.theme</code> is set to a nonempty value before 4816 fallback to xterm's own dummy theme (request by Robert 4817 Kloefkorn).</li> 4818 4819 <li>explain in <code>ctlseqs.ms</code> that some keys which 4820 normally send SS3-prefixes are changed to CSI-prefixes if 4821 key-modifiers are passed as parameters (report by George 4822 Nachman).</li> 4823 4824 <li>correct double-free of font information when multiple 4825 problems are found, particularly for the wide fonts loaded via 4826 the <code>-wc</code> option (report/testcase by Nelson 4827 Beebe).</li> 4828 4829 <li>make configure option <code>--enable-builtin-xpms</code> 4830 actually work (report by William Bulley).</li> 4831 4832 <li>correct combination of <code>-ls</code> and <code>-e</code> 4833 options for utempter configuration (Debian #794201).</li> 4834 4835 <li>NetBSD build-fix for OPT_RENDERFONT versus OPT_SHIFT_FONTS 4836 (patch by Matthew Green, forwarded by Thomas Klausner).</li> 4837 4838 <li>fix a few minor bugs found with Coverity.</li> 4839 4840 <li>update pixelvector handling (Ross Combs): 4841 <ul> 4842 <li>split pixel-based and coord-based functions with common 4843 parts factored out to a "raw" function</li> 4844 4845 <li>add a "step" variant which loads a single PV digit</li> 4846 </ul> 4847 </li> 4848 4849 <li>make the graphic dirty upon resize or clear, fixing some 4850 missing refreshes (patch by Ross Combs)</li> 4851 4852 <li>fixes scrolling to use user coordinates and move in the 4853 correct direction (patch by Ross Combs)</li> 4854 4855 <li>several fixes/improvements for ReGIS whitespace and 4856 page-handling (patch by Ross Combs).</li> 4857 </ul> 4858 4859 <h1><a name="xterm_318" id="xterm_318">Patch #318 - 4860 2015/04/12</a></h1> 4861 4862 <ul> 4863 <li>rename new(er) configure option 4864 <code>--enable-initial-erase</code> to 4865 <code>--enable-pty-erase</code>, since that conflicted with an 4866 existing option (report by Jens Schweikhardt).</li> 4867 4868 <li>fix cut/paste error in <code>--with-builtin-xpms</code> 4869 configure option (reports by Jens Schweikhardt, Ross 4870 Combs).</li> 4871 4872 <li>fix minor formatting issue in xterm manual (report by Jens 4873 Schweikhardt).</li> 4874 4875 <li>eliminate unnecessary "#(vi" markers in autoconf macros by 4876 using "(" to begin case-statement cases (suggested by Jens 4877 Schweikhardt).</li> 4878 4879 <li>minor fixes to improve <code>const</code> usage (Ross 4880 Combs).</li> 4881 </ul> 4882 4883 <h1><a name="xterm_317" id="xterm_317">Patch #317 - 4884 2015/03/27</a></h1> 4885 4886 <ul> 4887 <li>adapt example for <code>exec-formatted</code> from <a href= 4888 "http://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html"> 4889 Lukáš Zapletal's</a> webpage to manual (Debian 4890 #780008).</li> 4891 4892 <li>add a short usage section to the xterm manual, including 4893 notes on setting the window title (Debian #742477).</li> 4894 4895 <li>revise a change made to <code>ICH</code> in <a href= 4896 "#xterm_314">patch #314</a> to address limit-checks 4897 (reports/testcases by Zoltán Kéri and Joe 4898 Peterson, also reported by Christian Weisgerber).</li> 4899 </ul> 4900 4901 <h1><a name="xterm_316" id="xterm_316">Patch #316 - 4902 2015/03/07</a></h1> 4903 4904 <ul> 4905 <li>revert change to make <code>DCH</code> honor top/bottom 4906 scrolling margins. For the record, both the VT420 and VT520 4907 reference manuals incorrectly state that <em>"DCH has no effect 4908 outside the scrolling margins."</em></li> 4909 4910 <li>fix regression in <code>DCH</code> introduced in adjustment 4911 for limit-check in <a href="#xterm_314">patch #315</a> 4912 (report/testcase by Zoltán Kéri, also reported by 4913 Christian Weisgerber).</li> 4914 4915 <li>correct default value for configure option 4916 <code>--enable-initial-erase</code>; it should be "False", but 4917 in <a href="#xterm_315">patch #315</a> it was "Maybe", which 4918 differed from default set in <a href="#xterm_192">patch 4919 #192</a>.</li> 4920 </ul> 4921 4922 <h1><a name="xterm_315" id="xterm_315">Patch #315 - 4923 2015/03/02</a></h1> 4924 4925 <ul> 4926 <li>change default for <code>--enable-narrowproto</code> for 4927 Cygwin to "no" to better match contemporary configurations 4928 (report by Jens Schweikhardt, prompted by <a href= 4929 "http://stackoverflow.com/questions/28137618/what-is-a-narrow-prototype-and-why-would-i-need-one/28334574?noredirect=1#comment45022128_28334574"> 4930 discussion</a>).</li> 4931 4932 <li>provide <code>OSC 106</code> as an alternative to 4933 <code>OSC 6</code>, avoiding conflict with one of 4934 Terminal.app's undocumented escape sequences (report by Egmont 4935 Koblinger).</li> 4936 4937 <li>fix an off-by-one in comparison when autowrap and 4938 left/right margins are combined (report by George 4939 Nachman).</li> 4940 4941 <li>modify <code>DECBI</code> and <code>DECFI</code> to work 4942 outside the left/right margins, since the vague VT520 reference 4943 manual could support that interpretation (suggested by George 4944 Nachman).</li> 4945 4946 <li>correct response for <code>DECSCUSR</code> in 4947 <code>DECRQSS</code> (report/analysis by George Nachman).</li> 4948 4949 <li>add <code>DECSLRM</code> to list for <code>DECRQSS</code> 4950 in ctlseqs.ms (report by George Nachman).</li> 4951 4952 <li>improve limit-checks versus assert's in the debugging 4953 version (reports by George Nachman).</li> 4954 4955 <li>correct a problem with multiple writes to the right-margin 4956 when autowrap is turned off (report by George Nachman, also 4957 reported in Gnome #744819 by Ulf Magnusson).</li> 4958 4959 <li>modify <code>DCH</code> to honor top/bottom and left/right 4960 margins (report by George Nachman).</li> 4961 4962 <li>correct off-by-one in comparison so that <code>DL</code> 4963 honors left/right margins (report by George Nachman).</li> 4964 4965 <li>correct logic of <code>DECSCL</code>, which always set 4966 8-bit controls as a side-effect (report by George 4967 Nachman).</li> 4968 4969 <li>correct loop limit for <code>DECSED 1</code>, when 4970 <code>DECSCA</code> is enabled (report by George Nachman).</li> 4971 4972 <li>fix a entry in csi_table for “<code>$</code>”, 4973 needed for <code><em>CSI</em> [ $ z</code> 4974 (report by George Nachman).</li> 4975 4976 <li>remove restriction from <a href="#xterm_279">patch #279</a> 4977 changes on <code>DECIC</code> and <code>DECDC</code> to 4978 left-right mode (report by George Nachman).</li> 4979 4980 <li>correct PID value returned in response to DECRQCRA 4981 (report/analysis by George Nachman).</li> 4982 4983 <li>fix an ifdef'ing problem, where 4984 <code>--disable-dec-locator</code> would turn off logic needed 4985 for <code>DECIC</code> and <code>DECDC</code> (report by George 4986 Nachman).</li> 4987 4988 <li>correct order of parameters in report for 4989 <code><em>CSI</em> 1 9 t</code>, which gives the 4990 screensize in characters (report by George Nachman).</li> 4991 4992 <li>add null pointer checks for a case in DECCRA where part of 4993 the target rectangle lies outside the screen limits (report by 4994 George Nachman).</li> 4995 4996 <li>remove extra "6" for selective erase from DA1 response 4997 (report by George Nachman).</li> 4998 4999 <li>support Xinerama screen specification in geometry parsing 5000 (patch by Nicolas George).</li> 5001 5002 <li>add configure option <code>--enable-initial-erase</code> to 5003 set <code>ptyInitialErase</code> consistently with manpage, as 5004 well as adding a table in manpage to clarify the relationship 5005 between the resources related to the backarrow key (Debian 5006 #775952).</li> 5007 5008 <li>add configure <code>--enable-builtin-xpms</code> to 5009 simplify compiling-in the icons introduced in <a href= 5010 "#xterm_284">patch #284</a> (prompted by discussion with 5011 William Bulley).</li> 5012 5013 <li>fix/improve autoconf macros: 5014 <ul> 5015 <li>CF_WITH_APP_DEFAULTS, add paths for OSX</li> 5016 5017 <li>CF_WITH_MAN2HTML, configure option "--with-man2html" 5018 provides "man2html" as alternative to groff's man/html 5019 conversion</li> 5020 </ul> 5021 </li> 5022 5023 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 5024 </ul> 5025 5026 <h1><a name="xterm_314" id="xterm_314">Patch #314 - 5027 2014/12/28</a></h1> 5028 5029 <ul> 5030 <li>fix a minor bug in the termcap-specific version of 5031 <code>resize</code> when the lines or columns values are at the 5032 very end of an incomplete termcap string (prompted by coverity 5033 report).</li> 5034 5035 <li>improve paste64 feature (report by Olaf Rogalsky) 5036 <ul> 5037 <li>fix “<code>p</code>;” command in 5038 <code>paste64.pl</code> example.</li> 5039 5040 <li>modify <code>_OwnSelection</code> to allow the paste64 5041 control to cause primary/clipboard selections to be 5042 disowned and cleared.</li> 5043 5044 <li>omit an extra "=" used in padding, to make the base64 5045 response a multiple of four characters.</li> 5046 5047 <li>modify <code>_ConvertSelectionHelper</code> to not stop 5048 converting on embedded nulls in the primary or clipboard 5049 selection. That makes the behavior consistent with 5050 cut-buffers. Nulls are not passed on to the application 5051 because they are used for separators in the X library calls 5052 that convert <code>XTextProperty</code> values.</li> 5053 </ul> 5054 </li> 5055 5056 <li>add configure option <code>--with-man2html</code> to allow 5057 an alternative to groff's man/html conversion.</li> 5058 5059 <li>review and modify resource-settings which can be set via 5060 control sequences, etc: 5061 <ul> 5062 <li>add <code>OSC 6</code>, to enable/disable colors 5063 set via <code>OSC 5</code>, without changing the color 5064 assignments (prompted by patch by Ingo Brückl).</li> 5065 5066 <li>add command-line option <code>-itc</code> for 5067 italics.</li> 5068 5069 <li>add <code>colorIT</code> and <code>colorITMode</code> 5070 for italics, like <code>colorBD</code>, etc.</li> 5071 5072 <li>guard <code>allowPasteControls</code> against 5073 modification by <code>editres</code>.</li> 5074 </ul> 5075 </li> 5076 5077 <li>change <code>passedPty</code> from fixed-length to 5078 allocated to ensure that it is long enough to hold the 5079 <code>-S</code> option value (report by Ben Longbons).</li> 5080 5081 <li>improve ReGIS graphics initialization (Ross Combs): 5082 <ul> 5083 <li>add a new string resource to set the default ReGIS 5084 font.</li> 5085 5086 <li>fix a caching problem where the font name wasn't taken 5087 into consideration when looking up cached metrics.</li> 5088 5089 <li>enables use of fractional values in coordinates (which 5090 in turn allows setting the coordinates to something like 5091 [0,1][1,0])</li> 5092 5093 <li>doubles the minimum ReGIS graphic to 200x200</li> 5094 5095 <li>set the default ReGIS image size to "auto"</li> 5096 5097 <li>fix some swapped width/height parameters in TRACE 5098 messages</li> 5099 5100 <li>add support for scaling and mirrored coordinate systems 5101 to the screen address command</li> 5102 5103 <li>sets a minimum ReGIS graphics size of 100x100 -- 5104 smaller address ranges will be scaled up</li> 5105 5106 <li>reset the image if either the width or height is zero 5107 (which should happen together or not at all, but switching 5108 the logic gets rid of some parentheses)</li> 5109 5110 <li>adds support for alternate screen coordinates (just 5111 offsets, not inverted coordinates or scaling)</li> 5112 5113 <li>keeps the graphics state across ReGIS calls unless P1 5114 or P3 entry codes are used</li> 5115 5116 <li>changes loops to continue after parsing whitespace to 5117 allow trailing whitespace</li> 5118 5119 <li>fixes some incorrect character casts</li> 5120 </ul> 5121 </li> 5122 </ul> 5123 5124 <h1><a name="xterm_313" id="xterm_313">Patch #313 - 5125 2014/11/28</a></h1> 5126 5127 <ul> 5128 <li>add <code>regisScreenSize</code> resource setting to allow 5129 custom screensizes for ReGIS graphics (prompted by discussion 5130 with Scott Froebe).</li> 5131 5132 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 5133 5134 <li>improve ReGIS font-handling (Ross Combs): 5135 <ul> 5136 <li>remove "random junk" generation for unknown 5137 characters</li> 5138 5139 <li>add xterm extension to load user glyphs for alphabet 5140 0</li> 5141 5142 <li>add xterm extension to specify loading an alphabet from 5143 a font by name</li> 5144 5145 <li>fix bug with use of empty alphabet slots which caused 5146 slot 0 to be clobbered</li> 5147 5148 <li>update/clarify ReGIS-related comments</li> 5149 5150 <li>add DECprint extension for printing/clearing the screen 5151 (only clearing is performed)</li> 5152 </ul> 5153 </li> 5154 5155 <li>improve ReGIS colorspec conversion (Ross Combs): 5156 <ul> 5157 <li>avoid some floating point math for colorspace 5158 conversion</li> 5159 5160 <li>move two copies of colorspec parsing to a single 5161 function</li> 5162 5163 <li>change colorspec parsing to handle components being out 5164 of order or with spaces and commas between them</li> 5165 5166 <li>add support for an extension where RGB components can 5167 be given instead of HLS</li> 5168 </ul> 5169 </li> 5170 5171 <li>improve use of const, e.g., for the <code>LineData</code> 5172 pointers (patch by Ross Combs).</li> 5173 5174 <li>clip of graphics that overlap the scrollback buffer and alt 5175 screen (patch by Ross Combs).</li> 5176 5177 <li>amend change to focus-change events in <a href= 5178 "#xterm_287">patch #287</a> to limit it to suppressing the 5179 reset of the urgency-hint, because some useful 5180 <code>FocusOut</code> events were lost (report by Joe 5181 Peterson).</li> 5182 5183 <li>modify dpkg build-script to configure xterm-dev as an 5184 <code>x-terminal-emulator</code> alternative.</li> 5185 5186 <li>extend the <code>--with-xterm-symlink</code> feature to 5187 make symbolic links for the other programs and scripts.</li> 5188 5189 <li>minor fix to <code>vttests/resize.pl</code> to avoid 5190 undefined variable when receiving broken/missing response, 5191 e.g., from mrxvt.</li> 5192 5193 <li>change the way that ReGIS graphics are refreshed (patch by 5194 Ross Combs): 5195 <ul> 5196 <li>it pre-composes any overlapping graphics to avoid 5197 unnecessary and flickering draws</li> 5198 5199 <li>it adds a three-dimensional lookup table for RGB -> 5200 pixel values and uses this across all graphics</li> 5201 5202 <li>it draws in line segments when there is a run of the 5203 same color</li> 5204 5205 <li>in cases where there are no transparent parts, it uses 5206 an XImage to draw</li> 5207 5208 <li>it hooks into the double-buffering support if it is 5209 enabled (though this doesn't seem to get rid of all 5210 flicker).</li> 5211 </ul> 5212 This has the effect of reducing flicker and speeding up 5213 redraws. 5214 </li> 5215 </ul> 5216 5217 <h1><a name="xterm_312" id="xterm_312">Patch #312 - 5218 2014/09/28</a></h1> 5219 5220 <ul> 5221 <li>undo change to <code>do_select_regex()</code> in <a href= 5222 "#xterm_311">patch #311</a> (reports by H Merijn Brand, 5223 Sven-Haegar Koch, Debian #762978).</li> 5224 </ul> 5225 5226 <h1><a name="xterm_311" id="xterm_311">Patch #311 - 5227 2014/09/18</a></h1> 5228 5229 <ul> 5230 <li>mention <code>xclip</code> in manpage as an alternative 5231 workaround for copying clipboard data, noting that 5232 <code>selectToClipboard</code> (see <a href="#xterm_209">patch 5233 #209</a>) is the recommended approach (Debian #639094).</li> 5234 5235 <li>correct comparison in do_select_regex() of working position 5236 against starting column.</li> 5237 5238 <li>correct initialization for regular-expression feature of 5239 <code>exec-selectable</code> and <code>insert-selectable</code> 5240 actions (Debian #758633).</li> 5241 5242 <li>modify logic for <code>exec-formatted</code> and 5243 <code>insert-formatted</code> actions to ensure that the 5244 formatting occurs just after the selection is received (Debian 5245 #758633).</li> 5246 5247 <li>account for state of reverse-video in special case of 5248 cursor coloring (Debian #759734).</li> 5249 5250 <li>fix a sign-extension problem in ReGIS support, as well as 5251 correcting a case where ignored-characters were not really 5252 ignored (patch by Ross Combs).</li> 5253 5254 <li>Enable the "Escape Sequence" menu entry when an OSC 50 5255 is received. Also disable it if the escape sequence specifies 5256 no font (Debian #760208).</li> 5257 5258 <li>improve fix for the <code>fontsel</code> menu entry from 5259 <a href="#xterm_304">patch #304</a>: because the recovery used 5260 the "current font", it would fail if one first selected a valid 5261 font, then an invalid font (Debian #760207).</li> 5262 5263 <li>correct an off-by-one in limit-check for 5264 <code>ScrnLimitChar</code> function (report by Egmont 5265 Koblinger).</li> 5266 </ul> 5267 5268 <h1><a name="xterm_310" id="xterm_310">Patch #310 - 5269 2014/07/25</a></h1> 5270 5271 <ul> 5272 <li>update package/freebsd files based on xterm #309 port.</li> 5273 5274 <li>adapt changes from Minux3.2 which ported <a href= 5275 "#xterm_197">xterm #197</a>, to allow building on that platform 5276 both using <code>imake</code> as well as using the configure 5277 script.</li> 5278 5279 <li>update precompose.c based on Unicode 7.0</li> 5280 5281 <li>build-fix for <code>--with-Xaw3dxft</code> option (report 5282 by Emanuel Haupt).</li> 5283 </ul> 5284 5285 <h1><a name="xterm_309" id="xterm_309">Patch #309 - 5286 2014/07/13</a></h1> 5287 5288 <ul> 5289 <li>modify configure script to work around debris left by 5290 XQuartz upgrades.</li> 5291 5292 <li>modify test-package scripts to enable ReGIS graphics.</li> 5293 5294 <li>improvements/additions to ReGIS graphics, e.g., drawing 5295 text (Ross Combs).</li> 5296 5297 <li>add <code>--with-Xaw3dxft</code>, to link with Xaw 3d xft 5298 library (Stephen P Wall).</li> 5299 5300 <li>amend reset for cursor-shape to take into account 5301 <code>cursorUnderline</code> resource (report by Christian 5302 Weisgerber).</li> 5303 5304 <li>update config.guess, config.sub</li> 5305 </ul> 5306 5307 <h1><a name="xterm_308" id="xterm_308">Patch #308 - 5308 2014/06/19</a></h1> 5309 5310 <ul> 5311 <li>corrected font used for clipping double-width bitmap fonts 5312 from <a href="#xterm_307">patch #307</a> changes to work around 5313 mis-scaled fonts (Debian #752947).</li> 5314 5315 <li>improve wording of a warning message.</li> 5316 </ul> 5317 5318 <h1><a name="xterm_307" id="xterm_307">Patch #307 - 5319 2014/06/17</a></h1> 5320 5321 <ul> 5322 <li>fill background for top/bottom parts of 5323 double-width/double-height characters, to cover occasional gaps 5324 due to bitmap font-scaling (report by Egmont Koblinger).</li> 5325 5326 <li>amend resets for keyboard-type, pointer-mode and 5327 title-modes from <a href="#xterm_305">xterm #305</a> changes to 5328 account for resource settings (Debian #751351).</li> 5329 5330 <li>modify <em>printAttributes</em> feature to include new SGR 5331 codes.</li> 5332 5333 <li>modify cursor show/hide logic to work with italic 5334 fonts.</li> 5335 5336 <li>do clipping and filling for a case with bitmap-fonts and 5337 italics when the font server returns only a "close" match 5338 (report/testcase by Egmont Koblinger).</li> 5339 5340 <li>adjust loop comparison for underlining to display 5341 underlines on 5x8 font as in <a href="#xterm_304">patch 5342 #304</a> (Debian #750733).</li> 5343 5344 <li>amend fix for Freedesktop #15979 (Debian #750733).</li> 5345 5346 <li>amend xterm.appdata.xml, making it validate with current 5347 schema.</li> 5348 </ul> 5349 5350 <h1><a name="xterm_306" id="xterm_306">Patch #306 - 5351 2014/06/03</a></h1> 5352 5353 <ul> 5354 <li>fixes for display-errors in new SGR codes (report by Egmont 5355 Koblinger).</li> 5356 </ul> 5357 5358 <h1><a name="xterm_305" id="xterm_305">Patch #305 - 5359 2014/06/02</a></h1> 5360 5361 <ul> 5362 <li>add <code>xterm.appdata.xml</code> (request by Richard 5363 Hughes). By the way, none of the <em>released</em> validators 5364 yet handle <code><licence></code> tags (or 5365 <code><metadata_license></code>, etc).</li> 5366 5367 <li>fix memory leaks in bitmap font-name caching.</li> 5368 5369 <li>other changes to hard-reset behavior: 5370 <ul> 5371 <li>reset keyboard-type on hard-reset.</li> 5372 5373 <li>reset pointer-mode (<code>pointerMode</code>) on 5374 hard-reset</li> 5375 5376 <li>reset title-modes (<code>titleModes</code>) on 5377 hard-reset</li> 5378 5379 <li>reset cursor-shape on hard or soft-reset</li> 5380 5381 <li>reset LEDs on hard-reset.</li> 5382 5383 <li>reset DECSACE on hard-reset.</li> 5384 </ul> 5385 </li> 5386 5387 <li>reset bracketed-paste mode on hard-reset (suggested by 5388 Egmont Koblinger).</li> 5389 5390 <li>modify UTF-8 decoder to account for 5391 <code>allowC1Printable</code> resource.</li> 5392 5393 <li>revise <code>getXftColor</code> to ensure that its sequence 5394 number will not overflow in long-running sessions.</li> 5395 5396 <li>minor fix to selection to prevent hidden character from 5397 being returned in selection data (report by Egmont 5398 Koblinger).</li> 5399 5400 <li>add <code>-sh</code> to help-message.</li> 5401 5402 <li>amend check for incomplete fonts to always decide that a 5403 character is missing if the font lacks per-character metrics 5404 (prompted by Freedesktop #15979).</li> 5405 5406 <li>minor reorganization to implement “filler” SGR 5407 features. There are no established applications which rely upon 5408 these; some people find them amusing. 5409 <ul> 5410 <li>separate bits used to manage drawing state from 5411 attribute-bits.</li> 5412 5413 <li>implement SGR codes 2, 3, 9, 21 and their corresponding 5414 resets.</li> 5415 5416 <li>add configure option <code>--disable-wide-attrs</code> 5417 to disable the feature.</li> 5418 </ul> 5419 </li> 5420 5421 <li>additional changes for ReGIS support (Ross Combs): 5422 <ul> 5423 <li>fix some arc drawing bugs and add support for pattern 5424 shading.</li> 5425 </ul> 5426 </li> 5427 </ul> 5428 5429 <h1><a name="xterm_304" id="xterm_304">Patch #304 - 5430 2014/05/03</a></h1> 5431 5432 <ul> 5433 <li>add debugging check for parsing table entries, fixed a few 5434 inconsistencies.</li> 5435 5436 <li>handle utmp/utmpx strings consistently with new function 5437 that null-pads unused locations.</li> 5438 5439 <li>build-fix for imake configuration with FreeBSD 9 and later, 5440 to account for replacing <code>utmp</code> with 5441 <code>utmpx</code>.</li> 5442 5443 <li>improve handling of the <code>fontsel</code> 5444 (font-selection) menu item: 5445 <ul> 5446 <li>initialize the menu entry differently if the toolbar 5447 configuration is used, i.e., enabling it without attempting 5448 to use the current selection as a font name. Because of the 5449 way in which the toolbar is setup, this attempt usually 5450 failed, and would result in a warning.</li> 5451 5452 <li>if the menu action fails, e.g., no font can be loaded 5453 for the given selected name, then recover by resuming with 5454 the current font. Before, the recovery went to the default 5455 font. That was done to work around missing bitmap font in 5456 <a href="#xterm_276">patch #276</a>.</li> 5457 </ul> 5458 </li> 5459 5460 <li>document OSC 119 in the control sequences listing 5461 (report by Egmont Koblinger).</li> 5462 5463 <li>modify special handling of <code>XF86Paste</code> or 5464 <code>SunPaste</code> keysyms (see <a href="#xterm_227">patch 5465 #227</a>) to use the standard shift/lock modifiers in case 5466 those are, for example, used in level 3 in an XKB file (patch 5467 by Matthieu Herrb).</li> 5468 5469 <li>configure macro updates: 5470 <ul> 5471 <li>drop the <code>-no-gcc</code> option from 5472 CF_INTEL_COMPILER</li> 5473 5474 <li>modify CF_XOPEN_SOURCE to suppress the check for 5475 defining _XOPEN_SOURCE on Solaris</li> 5476 </ul> 5477 </li> 5478 5479 <li>reduce bss storage used for ReGIS/Sixel modules, as well as 5480 cleanup storage usage in other modules.</li> 5481 5482 <li>initial changes for ReGIS support (Ross Combs): 5483 <ul> 5484 <li>document control-sequences</li> 5485 5486 <li>separate ifdef's for sixel and color-register 5487 features</li> 5488 5489 <li>add configuration for VT382</li> 5490 </ul> 5491 </li> 5492 </ul> 5493 5494 <h1><a name="xterm_303" id="xterm_303">Patch #303 - 5495 2014/03/06</a></h1> 5496 5497 <ul> 5498 <li>improve check for <code>/etc/shells</code> to allow its 5499 entries to be symbolic links.</li> 5500 5501 <li>fix a regression in <a href="#xterm_302">patch #302</a> 5502 fixes relating to interaction of <code>SHELL</code> and 5503 <code>XTERM_SHELL</code> variables (Debian #740919).</li> 5504 5505 <li>improve manpage discussion of use of 5506 <code>/etc/shells</code> for validating the <code>SHELL</code> 5507 environment variable.</li> 5508 5509 <li>further improve the approximation for color map by ignoring 5510 bits which would not be applied by the rgb masks for the 5511 current visual (report by Joe Peterson).</li> 5512 5513 <li>add <code>-report-colors</code> to usage-message (report by 5514 Joe Peterson).</li> 5515 </ul> 5516 5517 <h1><a name="xterm_302" id="xterm_302">Patch #302 - 5518 2014/03/02</a></h1> 5519 5520 <ul> 5521 <li>amend approximation for color map introduced in <a href= 5522 "#xterm_277">patch #277</a> to make that apply only to 5523 <code>TrueColor</code> (adapted from patch by Joe 5524 Peterson).</li> 5525 5526 <li>add <code>-report-colors</code> option, to show colors as 5527 they are allocated.</li> 5528 5529 <li>fix some gcc <code>-Wcast-qual</code> warnings.</li> 5530 5531 <li>correct app-defaults location for CentOS-4 in 5532 xterm.spec</li> 5533 5534 <li>improve check in <code>minstall.sh</code> for X manpage's 5535 section number; add sample dependencies for the relevant 5536 documentation package to packaging test-scripts (prompted by 5537 Novell #779474).</li> 5538 5539 <li>modify sample build-scripts for dpkg and rpm to ensure that 5540 <code>vttests</code> scripts are uncompressed and 5541 executable.</li> 5542 5543 <li>modify Perl scripts in <code>vttests</code> to use 5544 <code>env</code> to find Perl rather than relying on 5545 <code>/usr/bin/perl</code> This makes the sample scripts usable 5546 with NetBSD and other systems using <em>pkgsrc</em>.</li> 5547 5548 <li>amend check from <a href="#xterm_301">patch #301</a> for 5549 valid shell to permit existing <code>SHELL</code> value to 5550 specify the shell; clarify the behavior in the manpage (report 5551 by Emmanuel Thomé).</li> 5552 5553 <li>amend change to wide-character processing from <a href= 5554 "#xterm_257">patch #257</a> to allow switching to/from UTF-8 5555 encoding if the <code>utf8</code> resource was not set to 5556 “always” (report by Honza Maly).</li> 5557 5558 <li>fix incorrect free from <a href="#xterm_301">patch #301</a> 5559 changes, if explicit program without <code>-e</code> option is 5560 a valid shell (patch by Romain Francoise).</li> 5561 </ul> 5562 5563 <h1><a name="xterm_301" id="xterm_301">Patch #301 - 5564 2014/01/19</a></h1> 5565 5566 <ul> 5567 <li>OSC 104 and 105 did not accept parameter to reset a 5568 specific color (patch by Egmont Koblinger).</li> 5569 5570 <li>add configure check for <code>initgroups</code>, and use 5571 that function to complement its use of <code>setgid</code> 5572 (prompted by patch by Miroslav Lichvar).</li> 5573 5574 <li>improve manpage description of scrollbar translations 5575 versus the vt100 translations (Debian #723573).</li> 5576 5577 <li>add a few paragraphs to manpage explaining the implications 5578 of xterm's reliance on X Toolkit for command-line parsing.</li> 5579 5580 <li>modify cursor-theme logic to check if the environment 5581 variable <code>XCURSOR_THEME</code> is set to a nonempty value 5582 before constructing a dummy them (prompted by similar check 5583 added in OpenBSD CVS).</li> 5584 5585 <li>add check for a case where TrueType bold font is missing a 5586 glyph where the non-bold font has it. Temporarily switch to the 5587 non-bold font to draw the glyph (report by David 5588 Demelier).</li> 5589 5590 <li>minor documentation fixes for ctlseqs.ms</li> 5591 5592 <li>only set <code>SHELL</code> environment variable to 5593 programs found in <code>/etc/shells</code> (prompted by 5594 patch/report by Al Poole).</li> 5595 5596 <li>build-fix, when <code>--disable-wide-chars</code> 5597 <code>--disable-boxchar</code> is used (prompted by patch by 5598 Andrey Panov).</li> 5599 </ul> 5600 5601 <h1><a name="xterm_300" id="xterm_300">Patch #300 - 5602 2013/12/03</a></h1> 5603 5604 <ul> 5605 <li>amend workaround for <code>Xcursor</code> library from 5606 <a href="#xterm_298">patch #298</a>; the suggested solution for 5607 Debian #466704 fell afoul of a bug in <code>Xcursor</code> 5608 which treated an empty value for <code>Inherits=</code> as a 5609 valid theme—and resulted in a stack overflow due to 5610 unbounded recursion. Certain environments such as XFCE4 exposed 5611 the bug. A related report in Debian #531679 was closed without 5612 following the recommendation to limit stack recursion in this 5613 library (reported by Sergey V Dyatko, Debian #731269).</li> 5614 </ul> 5615 5616 <h1><a name="xterm_299" id="xterm_299">Patch #299 - 5617 2013/12/01</a></h1> 5618 5619 <ul> 5620 <li>fix regression in line-drawing from <a href= 5621 "#xterm_297">patch #297</a> changes for NRCS exposed by change 5622 to <code>assumeAllChars</code> resource in <a href= 5623 "#xterm_298">patch #298</a> (report by Markus Waldeck).</li> 5624 </ul> 5625 5626 <h1><a name="xterm_298" id="xterm_298">Patch #298 - 5627 2013/11/27</a></h1> 5628 5629 <ul> 5630 <li>quiet a warning about ambiguity when <code>-h</code> 5631 command-line option is parsed, since <code>-help</code> is used 5632 rather than the options mentioned in the message. This warning 5633 was caused by fixes in <a href="#xterm_272">patch 5634 #272</a>.</li> 5635 5636 <li>remove an extra check for keypad-mode which interfered with 5637 the <a href="#xterm_280">patch #280</a> 5638 <code>modifyKeyboard</code> feature for the numeric keypad 5639 (report by David Conners).</li> 5640 5641 <li>change default for <code>assumeAllChars</code> resource 5642 (Debian #725682). There are unresolved issues with Terminus 5643 fonts, e.g., Debian #722017.</li> 5644 5645 <li>add <code>-report-fonts</code> command-line option and 5646 <code>reportFonts</code> resource to optionally report the 5647 fonts which are loaded, and their metrics such as the number of 5648 missing glyphs.</li> 5649 5650 <li>work around <code>Xcursor</code> library to make 5651 <code>pointerColor</code> resource work as documented (Debian 5652 #466704, analysis by Vincent Lefèvre).</li> 5653 5654 <li>amend change from <a href="#xterm_297">patch #297</a> for 5655 ASCII-equivalents to ensure that missing characters which 5656 happen to be double-width are padded to the expected number of 5657 columns. Also, correct the choice between normal/wide Xft fonts 5658 used when checking for missing characters (reported by WU Yue, 5659 Debian #728949, Gentoo #491334).</li> 5660 5661 <li>modify sixel-graphics drawing to account for scrollbar 5662 width (report by Mario Edelmann).</li> 5663 5664 <li>fix remaining issue with <code>DECNRCM</code>; the British 5665 character set was confused with ISO Latin-1 (report by Hayaki 5666 Saito).</li> 5667 5668 <li>build-fix for <code>--disable-boxchars</code> configure 5669 option.</li> 5670 5671 <li>updated configure macros, from ongoing work on lynx and 5672 ncurses.</li> 5673 5674 <li>update config.guess, config.sub</li> 5675 </ul> 5676 5677 <h1><a name="xterm_297" id="xterm_297">Patch #297 - 5678 2013/09/10</a></h1> 5679 5680 <ul> 5681 <li>modify check for missing cells in bitmap font to work 5682 around terminus 10646 encoding, which is mostly missing, add 5683 <code>assumeAllChars</code> resource to provide the older 5684 behavior.</li> 5685 5686 <li>modify macros used to check for missing cells in bitmap 5687 fonts to pick up a long-overlooked improvement made to xfd in 5688 XFree86.</li> 5689 5690 <li>improve workaround for groff versus ASCII-equivalents; 5691 <a href="#xterm_185">patch #185</a> had overlooked Xft 5692 configuration (reported by anonymous user on Arch Linux 5693 forum).</li> 5694 5695 <li>review/extend <code>DECNRCM</code> support (prompted by 5696 report by Hayaki Saito asking about the two "A" codes). 5697 <ul> 5698 <li>make pasting of DECNRCM data work by translating the 5699 pasted data into the selected encoding.</li> 5700 5701 <li>limit mode changes to VT220 and up.</li> 5702 5703 <li>ignore SCS for National Replacement Characters if 5704 <code>DECNRCM</code> is not set.</li> 5705 5706 <li>add tables and logic to decode SCS controls ending with 5707 "%" and one additional character. This expects the parsing 5708 of SCS to VT320.</li> 5709 5710 <li>also added parsing for SCS of DEC Supplemental and DEC 5711 Technical, which are for VT2xx and VT3xx respectively.</li> 5712 5713 <li>implement VT220 Multinational character set "GR" aka 5714 "DEC Supplemental Graphic".</li> 5715 5716 <li>DEC Technical character set based on <a href= 5717 "http://www.vt100.net/charsets/technical.html">vt100.net 5718 description</a>.</li> 5719 5720 <li>implement Portuguese NRC.</li> 5721 5722 <li>provide for temporarily switching to/from NRC mode from 5723 UTF-8 mode when <code>DECNRCM</code> is set or reset.</li> 5724 </ul> 5725 </li> 5726 5727 <li>minor fix to assert's found while testing examples from 5728 <a href="https://gist.github.com/ttdoda">ttdoda's 5729 slrm-test1.txt</a>.</li> 5730 5731 <li>modify <code>DECLRMM</code> to not update the cursor 5732 position (report by Iwamoto Kouichi forwarded by Hayaki 5733 Saito).</li> 5734 5735 <li>modify cursor-position report to take origin-mode into 5736 account (report by Hayaki Saito, see also <a href= 5737 "https://github.com/gnachman/iTerm2/pull/129">iTerm2 pull 5738 request 129</a>).</li> 5739 5740 <li>correct off-by-one comparison in when handling 5741 carriage-return at left margin (patch by Iwamoto Kouichi, 5742 forwarded by Hayaki Saito).</li> 5743 5744 <li>improve handling of <code>faceName</code> resource when a 5745 "size=" property is embedded in it, by using that size to 5746 replace the default <code>faceSize</code> resource. This lets 5747 xterm honor the other faceSize resources (report by Jens 5748 Schweikhardt).</li> 5749 5750 <li>improve OSC 52 selection-data by setting its timestamp 5751 to correspond to the most-recent event received by xterm, to 5752 ensure that calls to <code>XtOwnSelect</code> succeed even if 5753 the selection is manipulated solely through the keyboard 5754 (prompted by patch by Richard Tollerton).</li> 5755 5756 <li>change configure-script defaults for "luit" and 5757 "wide-chars" options to match the values used in the imake 5758 configuration, to lessen user surprise if they are accustomed 5759 to building xterm using imake(report by Andries E 5760 Brouwer).</li> 5761 5762 <li>improve the imake-related configuration's check if xterm is 5763 started in a locale that uses UTF-8 encoding. Before, this 5764 checked the locale settings only for "UTF-8", now it checks 5765 ignoring case for "UTF-8" and "UTF-8" (report by Andries E 5766 Brouwer).</li> 5767 </ul> 5768 5769 <h1><a name="xterm_296" id="xterm_296">Patch #296 - 5770 2013/07/10</a></h1> 5771 5772 <ul> 5773 <li>improve experimental sixel feature (Ross Combs).</li> 5774 5775 <li>modify delimiter in configure macro used to add a library 5776 after a given library to avoid confusion with <code>-Wl</code> 5777 pass-through options to linker (NetBSD #48031).</li> 5778 5779 <li>fix quoting in expression used to trim extra libraries from 5780 <a href="#xterm_295">patch #295</a> changes (report by Thomas 5781 Klausner).</li> 5782 </ul> 5783 5784 <h1><a name="xterm_295" id="xterm_295">Patch #295 - 5785 2013/07/06</a></h1> 5786 5787 <ul> 5788 <li>adjust order of libraries to work around incomplete symbol 5789 resolution when using <code>--as-needed</code> option 5790 (ArchLinux #36047).</li> 5791 5792 <li>minor fix for <code>plink.sh</code>, for IRIX64.</li> 5793 </ul> 5794 5795 <h1><a name="xterm_294" id="xterm_294">Patch #294 - 5796 2013/07/05</a></h1> 5797 5798 <ul> 5799 <li>add note in ctlseqs.ms for CPR response pointing out a 5800 potential point of confusion with the string sent by a modified 5801 F1 key (suggested by Bram Moolenaar).</li> 5802 5803 <li>improve <code>plink.sh</code> by checking if the linker 5804 supports the <code>--as-needed</code> option (suggested by 5805 David Philippi).</li> 5806 5807 <li>improve clearing for private mode 1049 when switching to 5808 the alternate screen (Debian #711758).</li> 5809 5810 <li>amend fix from <a href="#xterm_292">patch #292</a> by 5811 removing now-unneeded chunk which introduced problem in 5812 selection (Debian #714527).</li> 5813 5814 <li>add definition to optionally override compiled-in class for 5815 xterm from makefile, needed for test-packages.</li> 5816 5817 <li>add configure option 5818 <code>--enable-sixel-graphics</code></li> 5819 5820 <li>add experimental support for sixel graphics (Ross 5821 Combs).</li> 5822 </ul> 5823 5824 <h1><a name="xterm_293" id="xterm_293">Patch #293 - 5825 2013/05/27</a></h1> 5826 5827 <ul> 5828 <li>modify sample xterm.spec to use newer icon</li> 5829 5830 <li>add configure option <code>--with-icon-symlink</code> to 5831 work around systems which map icon requests for to a single 5832 "xterm" icon, but neglect to install the icon needed for window 5833 decorations (report by H Merijn Brand).</li> 5834 5835 <li>improve parameterizing of sample xterm.spec</li> 5836 5837 <li>amend fix for printer from <a href="#xterm_280">patch 5838 #280</a>, removing a reset of the signal handler for 5839 <code>SIGCHLD</code> (report by Joe Julian).</li> 5840 5841 <li>set environment variable <code>XTERM_FILTER</code> if a 5842 locale-filter is used.</li> 5843 5844 <li>enable <code>DEBUG</code> logic when 5845 <code>--enable-trace</code> configure option is given.</li> 5846 5847 <li>improve description of <code>initialFont</code>, 5848 <code>set-vt-font</code> and <code>set-tex-text</code> in 5849 manpage (Debian #707899).</li> 5850 5851 <li>fix regression from <a href="#xterm_292">patch #292</a>; 5852 selecting a word that ended at the right margin without 5853 wrapping would not select the last cell (report by Christian 5854 Weisgerber).</li> 5855 </ul> 5856 5857 <h1><a name="xterm_292" id="xterm_292">Patch #292 - 5858 2013/04/25</a></h1> 5859 5860 <ul> 5861 <li>add limit-check when double-click selects a word; if the 5862 saved-lines were scrolled back and the word selected wrapped at 5863 the screen's lower right corner, an assertion was triggered 5864 (patch by Taketo Kabe).</li> 5865 5866 <li>correct limit-check in <code>unsaveEditBufLines</code>, 5867 fixing a case where enlarging the terminal size could show a 5868 blank line where there actually is available text (patch by 5869 Bertram Felgenhauer).</li> 5870 5871 <li>add <code>PasteControls</code> feature to 5872 <code>allowWindowOps</code> which by default disallows pasting 5873 control characters other than formatting such as carriage 5874 return (discussion with Hayaki Saito).</li> 5875 5876 <li>fix typo in ctlseqs.ms for DECRQM response (patch by 5877 Emanuele Giaquinta).</li> 5878 5879 <li>update default shown in configure <code>--help</code> 5880 message for <code>--with-terminal-id</code> option (patch by 5881 Andres Perera).</li> 5882 5883 <li>rename script/preprocessor variables used for substituting 5884 the <code>backarrowKey</code> default value for consistency 5885 (patch by Andres Perera).</li> 5886 5887 <li>set umask to 077 before creating debugging-trace 5888 files.</li> 5889 5890 <li>add configure option <code>--disable-openpty</code> to 5891 control whether openpty() may be used in preference to 5892 posix_openpt().</li> 5893 5894 <li>improve workaround from <a href="#xterm_279">patch #279</a> 5895 for BSD systems which do not complete initialization until both 5896 sides of the pseudoterminal are opened, by preferring openpty() 5897 function over posix_openpt() when available (report by 5898 Christian Weisgerber).</li> 5899 </ul> 5900 5901 <h1><a name="xterm_291" id="xterm_291">Patch #291 - 5902 2013/02/26</a></h1> 5903 5904 <ul> 5905 <li>add validity check for xterm widget parameter to 5906 <code>AlternateScroll</code> function, needed to handle wheel 5907 mouse events in the scrollbar area since <a href= 5908 "#xterm_282">patch #282</a> changes which introduced 5909 <code>alternateScroll</code> feature (Redhat #874327).</li> 5910 </ul> 5911 5912 <h1><a name="xterm_290" id="xterm_290">Patch #290 - 5913 2013/02/12</a></h1> 5914 5915 <ul> 5916 <li>revert of <a href="#xterm_282">patch #282</a> change was 5917 incomplete (report by Jim Reisert).</li> 5918 5919 <li>fix typo in manpage (report by Vincent 5920 Lefèvre).</li> 5921 </ul> 5922 5923 <h1><a name="xterm_289" id="xterm_289">Patch #289 - 5924 2013/02/08</a></h1> 5925 5926 <ul> 5927 <li>revert the <a href="#xterm_282">patch #282</a> change which 5928 restored "lost" text after shrinking/growing the screen size. 5929 If the screen was updated between the two resizing operations, 5930 unexpected text might be shown at the end (report/testcase by 5931 Joe Peterson).</li> 5932 5933 <li>reverse the arrow-keys sent for 5934 <code>alternateScroll</code> to match the usage in browsers 5935 (suggested by Dieter Roelants).</li> 5936 5937 <li>modify mouse reports to consistently indicate motion events 5938 whether or not a button is pressed. Old behavior (since 5939 <a href="#xterm_127">patch #127</a> modified encoding for wheel 5940 mouse) showed only that the button was released if no button 5941 had been pressed (report by Andy Koppe).</li> 5942 5943 <li>correct and improve behavior for SGR 1006 mouse protocol on 5944 button release in any-event mode. Initial implementation in 5945 <a href="#xterm_277">patch #277</a> left internal state showing 5946 the last button pressed when reporting motion events. It now 5947 keeps track of all buttons which have been pressed and 5948 released, showing the lowest remaining button by number in the 5949 response (reports by Hayaki Saito, Andy Koppe).</li> 5950 5951 <li>fix inconsistency between <code>TermColors</code> and 5952 <code>OscTextColors</code> enums which interchanged values for 5953 tektronix cursor color and highlight foreground in control 5954 sequences in <a href="#xterm_225">patch #225</a> (report/patch 5955 by Peder Stray).</li> 5956 5957 <li>fix inconsistent use of noreturn-attribute in 5958 <code>Exit</code> function which interfered with clang 5959 --analyze.</li> 5960 5961 <li>remove incorrect <code>free</code> used in computation of 5962 <code>XTERM_SHELL</code> variable, from Coverity fixes in 5963 <a href="#xterm_288">patch #288</a> (FreeBSD #175782).</li> 5964 5965 <li>add <code>--with-valgrind</code> option to configure script 5966 for consistency with my other programs.</li> 5967 5968 <li>update table of ambiguous width characters in wcwidth.c 5969 based on Unicode 6.2.0</li> 5970 5971 <li>update table of combining characters in wcwidth.c based on 5972 Unicode 6.2.0</li> 5973 5974 <li>update precompose.c based on Unicode 6.2.0</li> 5975 </ul> 5976 5977 <h1><a name="xterm_288" id="xterm_288">Patch #288 - 5978 2013/01/09</a></h1> 5979 5980 <ul> 5981 <li>fix a special case in <code>ShowCursor</code> where the 5982 foreground and background colors of the current position are 5983 the same. In that case, choose the further of the window's 5984 foreground and background colors for the cursor color.</li> 5985 5986 <li>modify <code>alternateScroll</code> feature added in 5987 <a href="#xterm_282">patch #282</a> to use either 5988 <code>CSI</code> or <code>SS3</code> according to the cursor 5989 keys application mode setting, to simplify using it in vi, etc. 5990 (suggested by Dietar Roelants).</li> 5991 5992 <li>revise manpage for <code>resize</code> to clarify the 5993 changes which <code>resize</code> may make to the terminal 5994 settings as well as to the terminal itself.</li> 5995 5996 <li>remove code such as <code>struct ttysize</code>, used for 5997 SunOS 3 and 4.</li> 5998 5999 <li>modify configure script and makefile to check for 6000 <code>groff</code> and suppress groff-specific rules if groff 6001 is not found.</li> 6002 6003 <li>modify ctlseqs.ms and makefile to work around bugs in 6004 <code>grohtml</code> which cause ".png" files to be truncated 6005 when producing html documentation.</li> 6006 6007 <li>modify suffix rules for "make docs" to make the names of 6008 the generated ".png" files predictable, helping to work around 6009 longstanding problems with this feature of groff—none of 6010 its releases work for <em>all</em> of xterm's tables..</li> 6011 6012 <li>correct typo in ctlseqs.ms for DECIC and DECDC; the 6013 character preceding the final "<code>~</code>" is an ASCII 6014 single-quote "<code>'</code>" rather than a space (report by 6015 Paul LeoNerd Evans).</li> 6016 6017 <li>update CF_GCC_VERSION macro, handling both Debian and 6018 Darwin.</li> 6019 6020 <li>improve configure script checks for the 6021 <code>--with-desktop-category</code> option. After <a href= 6022 "#xterm_280">patch #280</a> changes, if no value was given for 6023 this option, and no existing desktop files found for 6024 comparison, the incorrect "auto" value was passed into the 6025 generated desktop file (report by Julien Cristau).</li> 6026 6027 <li>modify sample build-scripts to disable check for 6028 <code>imake</code> due to code-rot in Xorg.</li> 6029 6030 <li>add <code>-v</code> command-line option to 6031 <code>resize</code>, reporting the same version string as 6032 <code>xterm</code> and the two shell-wrappers.</li> 6033 6034 <li>make name-transformation apply to other occurrences of 6035 <code>resize</code>, other manpages.</li> 6036 6037 <li>special-case the name-transformation in xterm's manpage in 6038 the NAME section so that the result works with 6039 <code>makewhatis</code> (report by Julien Cristau).</li> 6040 6041 <li>modify install-rules for manpages to put each program's 6042 respective transformed name into the header rather than 6043 xterm's.</li> 6044 6045 <li>remove deprecated files: proto.h, os2main.c</li> 6046 6047 <li>minor fixes based on Coverity scan, including: 6048 <ul> 6049 <li>correct caching of Atom value for the font menu's 6050 "Selection" entry.</li> 6051 6052 <li>ensure that utmp/utmpx calls do not depend upon 6053 trailing nulls in the <code>ut_id</code> and 6054 <code>ut_line</code> values.</li> 6055 </ul> 6056 </li> 6057 </ul> 6058 6059 <h1><a name="xterm_287" id="xterm_287">Patch #287 - 6060 2012/11/25</a></h1> 6061 6062 <ul> 6063 <li>fix a case where in_put() loop could continue when it has 6064 found an X event rather than the pty, causing the pty-read to 6065 be delayed (patch by Balazs Kezes).</li> 6066 6067 <li>add option to <code>pointerMode</code> resource and 6068 corresponding control sequences to allow text-cursor to remain 6069 hidden if the pointer leaves/enters the window via accelerator 6070 keys. Ordinary motion within the window restores the pointer 6071 (prompted by patch by Balazs Kezes).</li> 6072 6073 <li>remove special case of modifiers for the 6074 <code>Mode_switch</code> and <code>XK_ISO_Level3_Shift</code> 6075 from <a href="#xterm_223">patch #223</a>. Verified that the 6076 conflict which this was intended to resolve does not happen for 6077 normal compose- or modeswitch-handling (prompted by patch by 6078 Balazs Kezes, Debian #638694).</li> 6079 6080 <li>modify the handling of focus-change events to ignore those 6081 whose detail is <code>NotifyPointer</code>, since those are 6082 sent in addition to focus-change events directed to the old/new 6083 windows having focus. In particular, this prevents the 6084 urgency-hint from being reset inadvertently (prompted by patch 6085 by Balazs Kezes).</li> 6086 6087 <li>modify description of <code>iconName</code> in manpage to 6088 make it clearer that this resource does not specify the 6089 filename of an icon (discussion with Ian Collier).</li> 6090 6091 <li>modify <code>iconHint</code> resource to allow suppressing 6092 the built-in icon by setting this to "none" (discussion with 6093 Ian Collier).</li> 6094 6095 <li>make <code>-iconic</code> option work with the toolbar 6096 configuration.</li> 6097 6098 <li>correct initialization of window manager hints used to set 6099 the icon-pixmap. That detail from <a href="#xterm_282">patch 6100 #282</a> overwrote state used to control the 6101 <code>-iconic</code> command-line option (report by Ian 6102 Collier).</li> 6103 6104 <li>fix paste64 feature for the case where the selection comes 6105 from the current terminal. The selection callback can happen 6106 after the reply is partly built, making it necessary to flush 6107 the reply-buffer to keep things in the proper order (report by 6108 Ailin Nemui).</li> 6109 6110 <li>reject command-line options which are longer than the 6111 options in xterm's table, to avoid mismatches (Redhat 6112 #875305).</li> 6113 6114 <li>correct attribution for <a href="#xterm_282">patch #282</a> 6115 changes.</li> 6116 </ul> 6117 6118 <h1><a name="xterm_286" id="xterm_286">Patch #286 - 6119 2012/10/29</a></h1> 6120 6121 <ul> 6122 <li>fix <code>minstall.in</code> to work with "make docs" rule, 6123 so that patch number appears in the corresponding generated 6124 documentation.</li> 6125 6126 <li>modify <code>minstall.in</code> to keep the name shown in 6127 the heading consistent with any renaming, e.g., for 6128 test-builds.</li> 6129 6130 <li>check for misconfigured <code>printerCommand</code> 6131 resource on the first use, warn and disable it if it does not 6132 specify an executable command (Debian #691642).</li> 6133 6134 <li>improve check for window-manager name needed to establish 6135 usable default for activeIcon resource. This works around a 6136 scenario where <code>gdm</code> does incomplete cleanup, 6137 leaving window properties that refer to windows which no longer 6138 exist (Redhat #869959).</li> 6139 </ul> 6140 6141 <h1><a name="xterm_285" id="xterm_285">Patch #285 - 6142 2012/10/23</a></h1> 6143 6144 <ul> 6145 <li>add/adapt FreeBSD ports files for test-building.</li> 6146 6147 <li>modify <code>minstall.sh</code> to use the patch-number and 6148 date in the manpage footer.</li> 6149 6150 <li>add check for failure to allocate the fg/bg colors at 6151 startup, e.g., misconfiguration. Work around by setting both to 6152 the default colors (suggested by Scott Bertilson).</li> 6153 6154 <li>amend change for <a href="#xterm_280">patch #280</a> which 6155 added <code>modifyKeyboard</code>, to make 6156 <code>modifyOtherKeys</code> work (report by Ailin Nemui).</li> 6157 6158 <li>add <code>query-colors.pl</code> example for 6159 OSC 4.</li> 6160 6161 <li>correct mis-applied fix for minstall.sh (report by Miroslav 6162 Lichvar).</li> 6163 </ul> 6164 6165 <h1><a name="xterm_284" id="xterm_284">Patch #284 - 6166 2012/10/14</a></h1> 6167 6168 <ul> 6169 <li>amend configurability changes for icons from <a href= 6170 "#xterm_283">patch #283</a>, moving the new functionality to 6171 the <code>iconHint</code> resource to avoid conflict with 6172 existing uses of the <code>iconName</code> resource in the 6173 <code>Shell</code> widget (report by Emanuel Haupt).</li> 6174 6175 <li>fix documentation errata reported by Miroslav Lichvar: 6176 <ul> 6177 <li>correct manpage default for <code>allowTcapOps</code> 6178 (see <a href="#xterm_243">patch #243</a></li> 6179 6180 <li>modify documentation for configure 6181 <code>--enable-backarrow-key</code> to match the script 6182 (see <a href="#xterm_280">patch #280</a>).</li> 6183 6184 <li>fix typo in <code>minstall.sh</code> in <a href= 6185 "#xterm_283">patch #283</a>, which made the leading-cap 6186 "Xterm" become "xterm" (patch by Miroslav).</li> 6187 </ul> 6188 </li> 6189 6190 <li>fix two typos in configure.in from <a href= 6191 "#xterm_283">patch #283</a> changes; one broke the 6192 <code>--regex</code> configure option (report by H Merijn 6193 Brand).</li> 6194 </ul> 6195 6196 <h1><a name="xterm_283" id="xterm_283">Patch #283 - 6197 2012/10/09</a></h1> 6198 6199 <ul> 6200 <li>modify makefile and script to generate appropriate renaming 6201 s/xterm/xterm-dev/ for test-package's manpage.</li> 6202 6203 <li>improve makefile rules for installing/uninstalling pixmap 6204 files, to include the newer mini- and filled- variants.</li> 6205 6206 <li>clarify change in manpage regarding <a href= 6207 "#xterm_282">patch #282</a> change to always set a 6208 window-decoration icon, even if <code>iconName</code> is not 6209 set.</li> 6210 6211 <li>add a fourth flavor of window-decoration icons, 6212 "filled-xterm" for a monochrome xterm with filled 6213 interior.</li> 6214 6215 <li>use shape-mask to improve contrast of the window-decoration 6216 icons.</li> 6217 6218 <li>minor changes to icon colors to improve contrast on 6219 bright-mud backgrounds.</li> 6220 6221 <li>drop configure checks for memmove versus bcopy, and 6222 strerror function; all currently tested platforms support 6223 these.</li> 6224 6225 <li>cleanup configure macros, as done in byacc 20121003.</li> 6226 6227 <li>improve configurability of the built-in icon selectable via 6228 the <code>iconName</code> resource.</li> 6229 6230 <li>update config.guess, config.sub</li> 6231 </ul> 6232 6233 <h1><a name="xterm_282" id="xterm_282">Patch #282 - 6234 2012/09/28</a></h1> 6235 6236 <ul> 6237 <li>improve configure check for 6238 <code>XkbKeycodeToKeysym</code>, fixing a regression on some 6239 older systems in the <a href="#xterm_280">patch #280</a> 6240 changes.</li> 6241 6242 <li>add clarification in manpage for 6243 <code>alwaysBoldMode</code> and <code>veryBoldColors</code> 6244 resources (prompted by Derek Martin question about using the 6245 former with TrueType fonts).</li> 6246 6247 <li>add <code>alternateScroll</code> resource and corresponding 6248 control sequences which modify the <code>scroll-forw</code> and 6249 <code>scroll-back</code> actions: when the alternate screen is 6250 displayed, wheel mouse up/down will send cursor keys (Debian 6251 #683942).</li> 6252 6253 <li>improve rendering for the case when a Unicode character is 6254 absent in the bold font but present in the normal font by 6255 temporarily falling back to the normal font (Debian #359006, 6256 Debian #408666).</li> 6257 6258 <li>provide configure option 6259 <code>--enable-double-buffer</code> and ifdef's to allow 6260 comparisons with/without double-buffering. The default uses 6261 normal buffering.</li> 6262 6263 <li>add feature to optionally scroll current page before 6264 clearing, controlled by resource setting 6265 <code>cdXtraScroll</code> (prompted by patch by Balazs 6266 Kezes):</li> 6267 6268 <li>integrated patches from Arch Linux forum posting (patches 6269 by Balazs Kezes): 6270 <ul> 6271 <li>modify reallocation limit of line-data when resizing 6272 screen so that "lost" text will be restored if the screen 6273 is first shrunk and then grown.</li> 6274 6275 <li>modify output to use double-buffering to reduce 6276 flicker.</li> 6277 </ul> 6278 </li> 6279 6280 <li>modify <code>scroll-lock</code> action to handle 6281 on/off/toggle keywords like other actions. Previously the 6282 optional parameter was interpreted as an integer.</li> 6283 6284 <li>extend <code>DECSCUSR</code> to provide a way to set the 6285 cursor to a vertical bar (patch by Paul Bolle).</li> 6286 6287 <li>add <code>-8</code>, <code>-c</code>, <code>-d</code> and 6288 <code>-u</code> options to <code>88colors2.pl</code> and 6289 <code>256colors2.pl</code> scripts. No current terminal 6290 emulator recognizes C1 controls while handling UTF-8 6291 encoding—see notes in <a href="#xterm_119">patch #119</a> 6292 and <a href="#xterm_109">patch #109</a> regarding 6293 <code>utf8controls</code>—but the <code>-u</code> and 6294 <code>-8</code> options are useful for demonstrating this 6295 point.</li> 6296 6297 <li>improve speed when changing color palettes using OSC 6298 controls by deferring repaint while followup controls might be 6299 additional color palette changes.</li> 6300 6301 <li>modify <code>SGR 38</code> and 6302 <code>SGR 48</code> to accept RGB index, matching the 6303 closest entry in xterm's palette.</li> 6304 6305 <li>extend <code>SGR 38</code> and 6306 <code>SGR 48</code> to accept colon as parameter separator 6307 (request by Paul LeoNerd Evans).</li> 6308 6309 <li>modify <code>fullscreen</code> action to allow it to toggle 6310 the full-screen mode rather than only set or unset it (prompted 6311 by Eeri Kask's suggestion to support 6312 <code>_NET_WM_TOGGLE</code>). This implementation does not yet 6313 use <code>_NET_WM_TOGGLE</code>.</li> 6314 6315 <li>add support for <code>_NET_WM_STATE_MAXIMIZED_VERT</code> 6316 and <code>_NET_WM_STATE_MAXIMIZED_HORZ</code> EWMH properties 6317 (suggested by Eeri Kask).</li> 6318 6319 <li>make fullscreen mode work with the tek4014 window. This 6320 change makes only the currently active window to be changed to 6321 fullscreen rather than changing both windows.</li> 6322 6323 <li>modify <code>TekClear</code> function to discard pending 6324 output before clearing the tek4014 display (patch by Kevin 6325 Ryde).</li> 6326 6327 <li>fix <code>deleteIsDEL</code> feature, broken in <a href= 6328 "#xterm_280">patch #280</a> changes (report by Mike Thornburg, 6329 forwarded by Jeremy Huddleston).</li> 6330 6331 <li>fix a special case of wrapping double-width characters 6332 (report/test-case by Ken Winstein).</li> 6333 6334 <li>add <code>E3</code> extended capability to 6335 <code>xterm-basic</code> to match ncurses <a href= 6336 "https://invisible-island.net/ncurses/NEWS.html#t20120728">20120728</a> 6337 patch.</li> 6338 6339 <li>fix incorrect transformation of row-parameter for 6340 <code>ClearCurBackground</code> in <a href="#xterm_279">patch 6341 #279</a> which caused incorrect painting in some scrolling 6342 scenarios (report by Chuck Silvers).</li> 6343 6344 <li>fix typo in manpage description of <code>+maximized</code> 6345 option (Paul Maier).</li> 6346 6347 <li>change default for configure option 6348 <code>--with-xpm</code>, turning it on unless requested 6349 otherwise.</li> 6350 6351 <li>add configure option <code>--with-icon-name</code> which 6352 can be used to override the default icon used in 6353 icon-themes.</li> 6354 6355 <li>extend <code>activeIcon</code> resource to provide 6356 <code>default</code> value which tells xterm to determine the 6357 window manager's name and automatically enable the feature for 6358 fvwm and window maker. The explicit true/false values can be 6359 used to override this behavior.</li> 6360 6361 <li>add "mini" xterm icon, which scales better than the 6362 standard xterm icon, e.g., for the gnome/kde "panel" 6363 feature.</li> 6364 6365 <li>extend <code>iconName</code> resource to search for icon 6366 named according to resource value and use that if found. If not 6367 found, use compiled-in pixmap. Both set the WM_ICON_NAME 6368 property which is used by various window managers, usually for 6369 window decoration.</li> 6370 6371 <li>updated autoconf patch, adding support for --datarootdir, 6372 which changes the default location of manpages.</li> 6373 6374 <li>further improved autoconf macros for configuring icons, 6375 from vile 9.8h</li> 6376 </ul> 6377 6378 <h1><a name="xterm_281" id="xterm_281">Patch #281 - 6379 2012/06/26</a></h1> 6380 6381 <ul> 6382 <li>remove "$(srcdir)/" from install-icon rule to fix builds 6383 when --srcdir configuration option is used.</li> 6384 6385 <li>fix for configure script's search for icon file when it is 6386 not found in the current directory, e.g., when building out of 6387 tree (patch by Thierry Reding).</li> 6388 6389 <li>undo the XK_Home / XK_End change from <a href= 6390 "#xterm_280">patch #280</a> which broke the non-VT220 keyboard 6391 for those keys (report by H Merijn Brand).</li> 6392 </ul> 6393 6394 <h1><a name="xterm_280" id="xterm_280">Patch #280 - 6395 2012/06/24</a></h1> 6396 6397 <ul> 6398 <li>add configure check to work around warning from 6399 desktop-file-install for "Encoding", noting that it emits 6400 deprecation warnings without providing its version 6401 information.</li> 6402 6403 <li>add configure option <code>--with-icon-theme</code> to tell 6404 xterm whether to install into an icon theme, defaulting to 6405 "hicolor" (Redhat #755206, Redhat #799614 and Redhat 6406 #804279).</li> 6407 6408 <li>change <code>--with-icondir</code> to look for "icons" 6409 directory rather than "pixmaps" by default. Add new option 6410 <code>--with-pixmapdir</code> to allow these two uses to be 6411 installed concurrently.</li> 6412 6413 <li>modify configure options <code>--with-app-defaults</code> 6414 and <code>--with-icondir</code> to accept "auto" as value to 6415 look for existing directory from well-known locations.</li> 6416 6417 <li>add missing codes for secondary DA response which tell the 6418 type of terminal as in the primary DA response.</li> 6419 6420 <li>update primary DA response for VT420 to include user 6421 windows and horizontal scrolling.</li> 6422 6423 <li>add <code>modifyKeyboard</code> resource to support 6424 keypad-modifier changes per request by Thomas Wolff.</li> 6425 6426 <li>add XK_Home / XK_End to editing-keypad checks</li> 6427 6428 <li>add back-tab key <code>kB</code> to termcap entries to 6429 match the terminfo.</li> 6430 6431 <li>update terminfo to match corresponding entries in ncurses, 6432 e.g., add <code>XT</code> and adjust <code>sgr</code> string 6433 for xterm-bold entry.</li> 6434 6435 <li>add configure options to predefine the most commonly 6436 customized resources for terminal-settings, use those to 6437 substitute into the manpage the corresponding compiled-in 6438 values: <code>altSendsEscape</code>, <code>backarrowKey</code>, 6439 <code>backarrowKeyIsErase</code>, <code>deleteIsDEL</code>, 6440 <code>metaSendsEscape</code> (Redhat #819588).</li> 6441 6442 <li>change default emulation level to VT420 (discussion with 6443 Ailin Nemui).</li> 6444 6445 <li>improve logic for DECSCL; <a href="#xterm_279">patch 6446 279</a> partly enforced limitation of this to higher-level 6447 emulations. This patch finishes that change.</li> 6448 6449 <li>improve check for base of combining characters, preventing 6450 combination when cursor movement has intervened. Mosh's webpage 6451 gives two different examples of this, with other causes 6452 ascribed to the behavior.</li> 6453 6454 <li>modify IL/DL to set cursor to first column on row for 6455 better VT102/VT220 compatibility (prompted by code review of 6456 mosh).</li> 6457 6458 <li>separate state-table entries for DECSC/DECRC from the 6459 ANSI.SYS save/restore cursor, since the latter conflicts with 6460 DECSLRM when DECLRMM is enabled since <a href= 6461 "#xterm_279">patch #279</a> (report/analysis by Ailin 6462 Nemui).</li> 6463 6464 <li>fixes to avoid using <code>SIGCHLD</code> handler of main 6465 program in printer's subprocess (report by Joe Julian).</li> 6466 6467 <li>correct restore-parameter for mouse-modes from <a href= 6468 "#xterm_279">patch #279</a> changes.</li> 6469 6470 <li>add null-pointer checks to input-method caching added in 6471 <a href="#xterm_277">patch #277</a> to fix a problem in the 6472 exposure code, when deselecting a window (report by Kriston 6473 Rehberg).</li> 6474 6475 <li>unset <code>DESKTOP_STARTUP_ID</code> environment variable 6476 to lessen confusion on the part of GTK applications which use 6477 the variable without checking it (report by John Little).</li> 6478 </ul> 6479 6480 <h1><a name="xterm_279" id="xterm_279">Patch #279 - 6481 2012/05/10</a></h1> 6482 6483 <ul> 6484 <li>fill in missing cases in the save/restore modes feature 6485 (report by Thomas Wolff).</li> 6486 6487 <li>add check to ensure that combining characters are 6488 precomposed in the order given (report/analysis by Andries E 6489 Brouwer).</li> 6490 6491 <li>improve workability check for posix_openpt(), to take into 6492 account BSD systems which do not complete initialization until 6493 both sides of the pseudoterminal are opened (report by 6494 Christian Weisgerber).</li> 6495 6496 <li>amend fix for Debian #650291 in <a href="#xterm_277">patch 6497 #277</a> changes to account for different data returned by 6498 vnc4server (Debian #670638).</li> 6499 6500 <li>add check in DECCRA operation to make copies of blinking 6501 text also blink by updating a line-level flag.</li> 6502 6503 <li>modify rectangle operations to work with DECOM.</li> 6504 6505 <li>modify DECSERA to use the current protected state rather 6506 than preserving it.</li> 6507 6508 <li>add <code>precompose</code> resource to allow storing 6509 character data in Normalized Form D as described in <a href= 6510 "http://unicode.org/reports/tr15/">http://unicode.org/reports/tr15/</a> 6511 (report/discussion with Andries E Brouwer).</li> 6512 6513 <li>modify CBT, other ISO-6429 controls which are used by VT520 6514 to work with DECOM.</li> 6515 6516 <li>add HPR and VPR controls, ISO 6429 cursor movement used in 6517 VT520.</li> 6518 6519 <li>remove "linux" restriction for IUTF8 ifdef in main.c 6520 (prompted by Matthew Dempsky posting on 6521 mailing.openbsd.tech).</li> 6522 6523 <li>implement the remaining VT420-level device status 6524 reports.</li> 6525 6526 <li>change DECXCPR to return page 1, rather than 0.</li> 6527 6528 <li>improve VT-level checks on reporting functions, such as 6529 DECXCPR.</li> 6530 6531 <li>change limit on <code>decTerminalID</code> to 525.</li> 6532 6533 <li>fixes to improve vttest vt52 screen when running as a 6534 VT420: 6535 <ul> 6536 <li>add checks for some VT2xx and up controls for 6537 consistency: DECSCL, S1C8T, S1C7T.</li> 6538 6539 <li>modify DECRQSS return for DECSCL to only return that 6540 when running as VT2xx and up.</li> 6541 6542 <li>when exiting from VT52-mode, resume in VT100 level 6543 rather than the level before starting VT52-mode.</li> 6544 </ul> 6545 </li> 6546 6547 <li>implement DECLRMM, DECSLRMM and DECNCSM (prompted by 6548 discussions with Ailin Nemui and Paul LeoNerd Evans). This 6549 modifies several controls to obey top/bottom and left/right 6550 margins.</li> 6551 6552 <li>correct macro definition used for testing modes used in 6553 ANSI/DEC request-mode controls introduced in <a href= 6554 "#xterm_262">patch #262</a>.</li> 6555 6556 <li>modify <code>x_getlogin</code> to check $LOGNAME and $USER 6557 before fallback to <code>getlogin</code>, so that user's choice 6558 for these variables can be carried forward to the xterm process 6559 (Debian #611487).</li> 6560 6561 <li>document DECSCUSR response for DECRQSS in ctlseqs.ms</li> 6562 6563 <li>add <code>zIconTitleFormat</code> resource to allow 6564 customizing the "*** " prefixed to the icon title when the 6565 <code>zIconBeep</code> feature is activated (request by Thomas 6566 Adam).</li> 6567 6568 <li>modify DECSCUSR to update the same internal variable as 6569 RM/SM 12, and document in manpage the two variables used for 6570 controlling blinking cursor (report by Paul LeoNerd 6571 Evans).</li> 6572 6573 <li>correct response data for DECSCUSR in reply for DECRQSS 6574 response, which had inverted the blink-value (reports by Ailin 6575 Nemui, Paul LeoNerd Evans).</li> 6576 6577 <li>add a null-pointer check in <code>OkPasswd</code> macro to 6578 fix a problem in <code>resize</code> with Fedora 17 and a 6579 serial console (report/patch by Daniel Drake).</li> 6580 6581 <li>add workaround for Mac OS X, which loses the window size of 6582 a pseudo-terminal when the tty device is opened 6583 (report/analysis by Egmont Koblinger).</li> 6584 6585 <li>updated configure check for workable 6586 <code>posix_openpt</code> versus <code>grantpt</code>, from 6587 <code>luit</code> fixes.</li> 6588 6589 <li>modify DECIC/DECDC/DECBI/DECFI implemented in <a href= 6590 "#xterm_277">patch #277</a> to enable them only in VT4xx mode 6591 and up (report by Ailin Nemui).</li> 6592 6593 <li>update config.guess, config.sub</li> 6594 </ul> 6595 6596 <h1><a name="xterm_278" id="xterm_278">Patch #278 - 6597 2012/01/18</a></h1> 6598 6599 <ul> 6600 <li>correct initialization for <code>eightBitMeta</code> 6601 resource (FreeBSD #164101).</li> 6602 6603 <li>make special check for Darwin 9 (and lower) to <em>not</em> 6604 use <code>posix_openpt</code> (report by Christian Ebert).</li> 6605 6606 <li>minor fixes (adding ".ne" directives) to reduce the cases 6607 where groff's utility for generating images for tables dumps 6608 core. Most versions of groff (I've found 1.19.2 to be the most 6609 stable) dump core when attempting to report that there are too 6610 few lines on a page for a table to be shown.</li> 6611 </ul> 6612 6613 <h1><a name="xterm_277" id="xterm_277">Patch #277 - 6614 2012/01/07</a></h1> 6615 6616 <ul> 6617 <li>remove special case for ISC pseudo-terminals which attempts 6618 to open the pty in two different ways.</li> 6619 6620 <li>move call to <code>grantpt</code> before asking utempter to 6621 add a record, to work with kFreeBSD which does not update the 6622 terminal's ownership until this point (Debian #652907).</li> 6623 6624 <li>document limitation of XIM interface in manpage (Debian 6625 #230787).</li> 6626 6627 <li>cleanup error reporting with new xtermWarning 6628 function.</li> 6629 6630 <li>add configure option <code>--disable-selection-ops</code> 6631 to make the new actions optional.</li> 6632 6633 <li>add four new actions for making the selection or data 6634 directly copied from the screen (prompted by discussion in 6635 Debian #637001, as well as report by Arjen van Tol): 6636 <ul> 6637 <li>exec-formatted</li> 6638 6639 <li>exec-selectable</li> 6640 6641 <li>insert-formatted</li> 6642 6643 <li>insert-selectable</li> 6644 </ul> 6645 </li> 6646 6647 <li>add <code>visualBellLine</code> resource to allow 6648 <code>visualBell</code> to flash only the current line 6649 (prompted by patch by Gertjan Halkes).</li> 6650 6651 <li>add <code>eightBitMeta</code> resource to control the 6652 features which modify or interpret the eighth bit of a key when 6653 the meta modifier key is pressed (prompted by Debian 6654 #326200).</li> 6655 6656 <li>improve discussion of <code>eightBitInput</code> in the 6657 manpage (prompted by Debian #326200).</li> 6658 6659 <li>correct logic for <code>alt-sends-escape</code> action, 6660 overlooked when implementing <code>altSendsEscape</code> 6661 resource, which still used <code>eightBitInput</code> resource 6662 value.</li> 6663 6664 <li>add a workaround for <code>XAllocColor()</code>, which does 6665 not actually allocate "a read-only colormap entry corresponding 6666 to the closest RGB value supported by the hardware", but rather 6667 a rough approximation (Debian #650291).</li> 6668 6669 <li>undo parameter checks for <code>RequestResize()</code> 6670 added in <a href="#xterm_251">patch #251</a> and amended in 6671 <a href="#xterm_270">patch #270</a>, because zeros also are 6672 special cases (report by John S Urban).</li> 6673 6674 <li>modify some test-scripts to use <code>/bin/echo</code> 6675 rather than the shell's possibly-builtin <code>echo</code>, to 6676 work around broken configuration on Mac OS X, i.e., neither 6677 honoring the option nor flagging an error.</li> 6678 6679 <li>add SGR 1006, as a better technical solution than SGR 1015: 6680 <ul> 6681 <li>the responses will not be confused with line-deletion 6682 and scrolling controls.</li> 6683 6684 <li>the button encoding is a little simpler, since it does 6685 not add an unnecessary 32 because the integer parameter 6686 does not have to be represented as a printable 6687 character.</li> 6688 6689 <li>the control responses for pressing and releasing a 6690 mouse button differ, allowing an application to tell which 6691 button was released.</li> 6692 </ul> 6693 6694 <p>Besides these improvements, in discussion, it was noted 6695 that urxvt's implementation of 1005 is incorrect, relying 6696 upon a locale that provides UTF-8 encoding. In contrast, 6697 vttest demonstrates a correct decoding, independent of 6698 locale.</p> 6699 </li> 6700 6701 <li>add support for urxvt SGR 1015 to address shortcoming of 6702 SGR 1005 with luit (patch by Egmont Koblinger).</li> 6703 6704 <li>add ISO and DEC controls useful for left/right 6705 scrolling.</li> 6706 6707 <li>add some changes for OpenBSD and MirBSD (adapted from patch 6708 by Thorsten Glaser): 6709 <ul> 6710 <li>disable search for non-Unix96 ptys.</li> 6711 6712 <li>fix a gcc warning in 6713 <code>timestamp_filename</code></li> 6714 6715 <li>modify <code>Imakefile</code> to install xterm setgid 6716 to utmp.</li> 6717 </ul> 6718 </li> 6719 6720 <li>add/use/prefer <code>posix_openpt()</code> for opening 6721 pseudo-terminal.</li> 6722 6723 <li>modify special errno handling case in ptydata.c from 6724 <a href="#xterm_158">patch #158</a> to allow for the 6725 possibility that any platform may have special cases where 6726 "/dev/tty" is absent. For example, this can happen in a FreeBSD 6727 jail (patch by David Wolfskill).</li> 6728 6729 <li>add keyboard logic to map shift-tab into XK_ISO_Left_Tab, 6730 which is usually, not always, done by the X keyboard 6731 configuration.</li> 6732 6733 <li>portability fixes for some configure macros: 6734 <code>CF_XOPEN_SOURCE</code></li> 6735 </ul> 6736 6737 <h1><a name="xterm_276" id="xterm_276">Patch #276 - 6738 2011/10/10</a></h1> 6739 6740 <ul> 6741 <li>modify clipping limits for TrueType fonts to account for 6742 the <code>scaleHeight</code> resource setting, to work around 6743 another problem due to recent FreeType changes. In this case, 6744 the <code>DejaVu Sans Mono</code> set to pixelsize=13.5 is 6745 truncated because the font descent is reduced by FreeType to 6746 match an incorrect height metric (report by Adam Lee).</li> 6747 6748 <li>improve recovery when bitmap fonts are not installed, e.g., 6749 so that switching font-sizes works for TrueType fonts.</li> 6750 6751 <li>modify lookup for <code>XTERM_SHELL</code> feature to allow 6752 relative pathnames.</li> 6753 6754 <li>modify abbreviation disambiguation check for command-line 6755 parameters to account for <code>-geometry</code>, whose 6756 parameter may begin with "+" or "-" (report by Scott 6757 Bertilson).</li> 6758 </ul> 6759 6760 <h1><a name="xterm_275" id="xterm_275">Patch #275 - 6761 2011/09/11</a></h1> 6762 6763 <ul> 6764 <li>add <code>ash</code>, <code>zsh</code> to known shells for 6765 <code>resize</code>.</li> 6766 6767 <li>modify <code>resize</code> to reuse the logic from 6768 <code>xterm</code> which determines the actual logon-user's 6769 shell if <code>$SHELL</code> is not set.</li> 6770 6771 <li>revert the <code>unsetenv("SHELL")</code> added in <a href= 6772 "#xterm_272">patch #272</a>.</li> 6773 6774 <li>an <code>unsetenv("SHELL")</code> added in <a href= 6775 "#xterm_272">patch #272</a> to help ensure that 6776 <code>luit</code> would get the user's shell consistently did 6777 not work as expected for cases where multiple names are in the 6778 password-file for a given uid. That was because changes in 6779 <a href="#xterm_157">patch #157</a> to handle this situation 6780 did not take into account that repeated calls to 6781 <code>getpwnam</code> and <code>getpwuid</code> return a 6782 pointer to the same static buffer. Fixed the older logic to 6783 work as intended, by ensuring that the passwd-data from each 6784 call is stored separately (report by Paul Keusemann).</li> 6785 6786 <li>adjust ifdef's for <code>putenv</code> and 6787 <code>unsetenv</code> in case only one of those is provided on 6788 a given platform.</li> 6789 6790 <li>correct comparison used in <code>ExposeContains</code> 6791 macro from <a href="#xterm_274">patch #274</a> changes, to 6792 handle window-dragging (patch by Todd Eigenschink).</li> 6793 </ul> 6794 6795 <h1><a name="xterm_274" id="xterm_274">Patch #274 - 6796 2011/09/05</a></h1> 6797 6798 <ul> 6799 <li>portability fixes for cygwin: do not define 6800 <code>SVR4</code>, and work around nonstandard header 6801 location.</li> 6802 6803 <li>ifdef'd use of <code>unsetenv</code> from <a href= 6804 "#xterm_273">patch #273</a> changes to work with Solaris 9 6805 (report by Waldemar Rachwal).</li> 6806 6807 <li>modify logic for <code>XtAppPending</code> to merge 6808 adjacent <code>Expose</code> and <code>ConfigureNotify</code> 6809 events which are redundant (report by Edward McGuire).</li> 6810 6811 <li>fix an unneeded warning message when <code>-r</code> option 6812 is given.</li> 6813 6814 <li>remove a few redundant entries from table used for helping 6815 abbreviation-checking of command-line options, makes 6816 <code>-geom</code> work again after <a href="#xterm_272">patch 6817 #272</a> changes as an abbreviation of 6818 <code>-geometry</code>.</li> 6819 6820 <li>add <code>scaleHeight</code> resource and command-line 6821 option <code>-sh</code> as workaround for some 6822 font-configurations broken by changes in FreeType 2.4.6 (report 6823 by Miroslav Hodak).</li> 6824 6825 <li>portability fixes for some configure macros: 6826 <code>CF_FUNC_TGETENT</code>, <code>CF_XOPEN_SOURCE</code>, 6827 <code>CF_X_ATHENA_LIBS</code>.</li> 6828 6829 <li>add configure option <code>--with-freetype-config</code> to 6830 improve selection over the plethora of configuration options 6831 which freetype has so far provided.</li> 6832 6833 <li>build-fix for configure <code>--enable-load-vt-fonts</code> 6834 when <code>--enable-widec</code> is not specified.</li> 6835 6836 <li>build-fixes for suppressing various features, needed after 6837 changes in patches 270, 271 and 272 (report by Brian 6838 Lindholm)</li> 6839 </ul> 6840 6841 <h1><a name="xterm_273" id="xterm_273">Patch #273 - 6842 2011/08/25</a></h1> 6843 6844 <ul> 6845 <li>build-fix for out-of-tree "make docs" rule.</li> 6846 6847 <li>correct a typo in <code>x_strdup</code>, from <a href= 6848 "#xterm_198">patch #198</a> changes.</li> 6849 6850 <li>correct initialization for <code>-e</code> option, broken 6851 in <a href="#xterm_272">patch #272</a> changes (report by 6852 Gabriele Balducci).</li> 6853 6854 <li>build-fix for out-of-tree builds to address 6855 <code>minstall</code> script changes in <a href= 6856 "#xterm_272">patch #272</a> (patch by Thierry Reding).</li> 6857 </ul> 6858 6859 <h1><a name="xterm_272" id="xterm_272">Patch #272 - 6860 2011/08/24</a></h1> 6861 6862 <ul> 6863 <li>document limitation of <code>Gtk</code> in connection with 6864 xterm's <code>-into</code> option, in the manpage (Ubuntu 6865 #806969).</li> 6866 6867 <li>improve <code>-into</code> by checking for and using the 6868 size of the window within which xterm is embedded, overriding 6869 other clues.</li> 6870 6871 <li>modify logic for <code>localeFilter</code> resource to 6872 allow that to include command-line options of luit.</li> 6873 6874 <li>improve <code>-into</code> by checking for invalid 6875 window-id, and allowing hexadecimal/decimal/octal values.</li> 6876 6877 <li>improve <code>keepSelection</code>, adding the case where 6878 the highlighting is cleared, overlooked in <a href= 6879 "#xterm_230">patch #230</a> (patch by Marco Peereboom).</li> 6880 6881 <li>improve command-line parsing to make abbreviate options 6882 work consistently across xterm-specific versus standard X 6883 toolkit options, and report cases where an abbreviated option 6884 happens to be ambiguous. In particular, <code>-d</code> now 6885 works as an abbreviation for <code>-display</code>.</li> 6886 6887 <li>fix regression in command-line parsing introduced in 6888 <a href="#xterm_271">patch #271</a> changes for Debian #629358, 6889 (Debian #637910).</li> 6890 6891 <li>split-out new termcap/terminfo building block 6892 <code>xterm+kbs</code> for configurability.</li> 6893 6894 <li>modify <code>terminfo</code> file to reflect changes in 6895 ncurses for <code>xterm-16color</code> and 6896 <code>xterm-256color</code>.</li> 6897 6898 <li>modify <code>minstall.sh</code>, etc., to reflect the 6899 default default class, <code>$TERM</code> and 6900 <code>decTerminalID</code> values.</li> 6901 6902 <li>reword <code>resize</code> manpage to reflect the fact that 6903 <code>$TERMCAP</code> is not set on all systems (patch by Alan 6904 Coopersmith).</li> 6905 6906 <li>work around combined Xaw6/Xaw7 package in DragonFlyBSD 6907 which omits the usual symbolic link to the preferred library 6908 name.</li> 6909 6910 <li>further improve build-fix for termcap systems by checking 6911 for some which are only partial implementations, e.g., termcap 6912 2.08 in CentOS 5.2</li> 6913 </ul> 6914 6915 <h1><a name="xterm_271" id="xterm_271">Patch #271 - 6916 2011/07/14</a></h1> 6917 6918 <ul> 6919 <li>omit permissions adjustments to pty on exit except for 6920 pre-Unix98 ptys, since modern implementations handle this 6921 (report by Sean C Farley).</li> 6922 6923 <li>modify logic for switching fonts between UTF-8 and 6924 non-UTF-8 encoding to not merge the derivable bold-, wide- and 6925 widebold values from the VT100 fonts. Also suppress warning 6926 when not using UTF-8 fonts if wide- and widebold-fonts cannot 6927 be derived or otherwise loaded (report by Werner 6928 Scheinast).</li> 6929 6930 <li>modify menu-creation to suppress entries which will never 6931 be used in the current configuration, rather than simply 6932 disabling them.</li> 6933 6934 <li>add resource <code>printModeImmediate</code> and menu item 6935 to allow print of screen plus saved lines to a file.</li> 6936 6937 <li>add menu item to allow runtime enable/disable of the 6938 <code>printFileOnXError</code> feature.</li> 6939 6940 <li>append a timestamp to filename used in 6941 <code>printFileOnXError</code> feature, and restrict its 6942 permissions (request by Vincent Lefèvre).</li> 6943 6944 <li>add a check when cancelling cursor-blinking, in case the 6945 cursor is blinked off. Fix so that the cursor is repainted 6946 without waiting for other events, e.g., keypress (report by 6947 Ailin Nemui).</li> 6948 6949 <li>add configure <code>--with-app-class</code> option, to 6950 simplify building "xterm-dev" packages with filenames that do 6951 not conflict with conventional "xterm" packages.</li> 6952 6953 <li>corrected logic flow for DECSCL, which prevented the 6954 updated operating level from being reported via DECRQSS (report 6955 by Ailin Nemui).</li> 6956 6957 <li>corrected default for <code>brokenStringTerm</code> 6958 resource to match manpage.</li> 6959 6960 <li>add vttests/dynamic.pl</li> 6961 6962 <li>add runtime check for locale not supported by X libraries, 6963 and fallback to XA_STRING in this case (request by Bryan 6964 Henderson).</li> 6965 6966 <li>fix a special case in configure script after no FreeType 6967 libraries are found. The script was proceeding to check for a 6968 usable configuration.</li> 6969 6970 <li>add <code>xterm+tmux</code> building block to terminfo 6971 (adapted from changes proposed by Ailin Nemui and Nicholas 6972 Marriott).</li> 6973 6974 <li>improve discussion of <code>faceName</code> resource in 6975 manpage (adapted from suggestions by Jens Schweikhardt).</li> 6976 6977 <li>correct mapping of shifted up/down cursor-keys in termcap 6978 function-keys mode, i.e., resource 6979 <code>tcapFunctionKeys</code> (patch by Gertjan Halkes).</li> 6980 6981 <li>update AIX case in <code>CF_XOPEN_SOURCE</code> configure 6982 macro to add release 7.x.</li> 6983 6984 <li>modify ifdef's in <code>xterm_io.h</code> for 6985 <code>__hpux</code> to force that to use the hacked SYSV 6986 support in that file. This fixes a problem with a non-blocking 6987 socket call (patch by Paul Lampert).</li> 6988 6989 <li>improve filtering of desktop category scanning, to exclude 6990 XFCE.</li> 6991 6992 <li>modify configure script to work with systems that have both 6993 ncurses (or other terminfo) as well as a real termcap library, 6994 e.g., Slackware (report by Andrew Watts).</li> 6995 6996 <li>modify configure script to work around special case where 6997 user's environment adds compiler flags to the <code>CC</code> 6998 variable (prompted by report by Paul Lampert).</li> 6999 7000 <li>amend change for Debian #110226 so that "-h" or "-v" 7001 options cause an exit, rather than simply printing to stdout 7002 while the window is displayed (Debian #629358).</li> 7003 7004 <li>add response for <code>DECRQSS</code> which gives the 7005 setting for <code>DECSCUSR</code>.</li> 7006 7007 <li>modify AllocateTermColor() to handle 7008 <code>XtDefaultForeground</code> and 7009 <code>XtDefaultBackground</code>, which are not recognized by 7010 <code>XParseColor</code>. For example, this fixes the use of 7011 OSC 112 when no explicit cursor color was set (report by 7012 Ailin Nemui).</li> 7013 7014 <li>handle special-case of <code>KeyPress</code> translated to 7015 <code>popup-menu</code> action (Ubuntu #756273).</li> 7016 </ul> 7017 7018 <h1><a name="xterm_270" id="xterm_270">Patch #270 - 7019 2011/04/26</a></h1> 7020 7021 <ul> 7022 <li>build-fix, e.g., for using <code>imake</code> on platforms 7023 which use the termcap library.</li> 7024 7025 <li>modify <code>utf8</code> resource to accept a name.</li> 7026 7027 <li>mention default for <code>fontWarnings</code> in manpage 7028 (report by Werner Scheinast).</li> 7029 7030 <li>split "UTF-8" menu entry into "UTF-8 Encoding" and "UTF-8 7031 Fonts" (prompted by discussion with Werner Scheinast).</li> 7032 7033 <li>gray-out font-menu entries when a font fails to load, e.g., 7034 a bitmap font is not installed.</li> 7035 7036 <li>improve behavior when there is no app-defaults file: 7037 <ul> 7038 <li>set the <code>toolBar</code> resource to false</li> 7039 7040 <li>gray-out the font menu entries where no resource is 7041 found.</li> 7042 </ul> 7043 </li> 7044 7045 <li>add configure option <code>--with-desktop-category</code> 7046 to allow customization of the ".desktop" files.</li> 7047 7048 <li>build-fix for the <code>install-desktop</code> 7049 makefile-rule, when the source/build directories differ (patch 7050 by Loïc Minier).</li> 7051 7052 <li>add menu entry and corresponding resource which can be used 7053 to suppress all bold-fonts (discussion with Jan 7054 Engelhardt).</li> 7055 7056 <li>make internal line-size value consistent with allocated 7057 sizes of character and related arrays to ensure that bulk 7058 copying of line data, e.g., in scrolling, accounts for the 7059 padding used for pointer alignment (adapted from patch by 7060 Rajesh Mandalemula, also reported by Ali Bahar).</li> 7061 7062 <li>widen ifdef for screen-resizing logic from <a href= 7063 "#xterm_176">patch #176</a> changes to send 7064 <code>SIGWINCH</code> to process group to include any system 7065 supporting <code>ioctl(*,TIOCGPGRP,*)</code> (prompted by 7066 linux-specific patch in OpenSUSE rpm package).</li> 7067 7068 <li>add <code>printModeOnXError</code> and 7069 <code>printFileOnXError</code> resources, which allow the user 7070 to specify that xterm will write the contents of its screen to 7071 a file if it is exiting due to an X error (Debian 7072 #280457).</li> 7073 7074 <li>restore logic that made reverse-video apply to the 7075 scrollbar's foreground/background, broken in <a href= 7076 "#xterm_158">patch #158</a> (report by Bryan Ischo).</li> 7077 7078 <li>amend some of the window operations parameter-checks added 7079 in <a href="#xterm_251">patch #251</a> for the push/pop title 7080 feature, to allow the parameters used for window resizing to be 7081 -1's, which makes the corresponding values ignored rather than 7082 using the window's maximum width/height (report by Noah 7083 Friedman).</li> 7084 7085 <li>correct order of initialization for 7086 <code>translations</code> vs <code>fullscreen</code> resources 7087 to enable a special case which omits the Alt-Enter translation 7088 when <code>fullscreen</code> is disabled (Debian #612978).</li> 7089 7090 <li>update config.guess, config.sub</li> 7091 </ul> 7092 7093 <h1><a name="xterm_269" id="xterm_269">Patch #269 - 7094 2011/02/19</a></h1> 7095 7096 <ul> 7097 <li>build-fixes for <code>imake</code> (report by Heiko 7098 Berges).</li> 7099 7100 <li>modify autoconf macro CF_PKG_CONFIG to work with 7101 cross-compile environments (patch by Thierry Reding).</li> 7102 7103 <li>modify <code>MapToColorMode()</code> to favor bold over 7104 underline, matching the precedence used before <a href= 7105 "#xterm_252">patch #252</a> (report/analysis by Nicolas 7106 George).</li> 7107 7108 <li>add <code>omitTranslation</code> resource, which can be 7109 used to suppress the default translations for these features: 7110 <ul> 7111 <li>fullscreen</li> 7112 7113 <li>scroll-lock</li> 7114 7115 <li>shift-fonts</li> 7116 7117 <li>wheel-mouse</li> 7118 </ul> 7119 </li> 7120 7121 <li>make the fullscreen feature configurable (Debian #612978) 7122 <ul> 7123 <li>add it to the configurable list 7124 <code>disallowedWindowOps</code>.</li> 7125 7126 <li>add command-line option <code>-fullscreen</code> to 7127 allow the feature to be enabled at startup.</li> 7128 7129 <li>add resource <code>fullscreen</code> to control whether 7130 the feature is active or may be enabled.</li> 7131 </ul> 7132 </li> 7133 7134 <li>modify <code>probe_netwm_fullscreen_capability</code> for 7135 64-bit machines. Contrary to <code>XGetWindowProperty</code> 7136 manpage, that function returns 32-bit data packed as 7137 <code>long</code>'s.</li> 7138 7139 <li>eliminate copy of <code>name</code> resource, which was 7140 otherwise used only to give the terminal-description name for 7141 the tcap-query feature. Use the actual <code>$TERM</code> value 7142 instead, as derived from <code>termName</code> resource, 7143 etc.</li> 7144 7145 <li>eliminate an old inconsistency with error messages, some 7146 used the <code>-name</code> option, while others used 7147 <code>argv[0]</code>. The latter is now used consistently.</li> 7148 7149 <li>improve configure check for rpath-hack, to improve builds 7150 on systems where gcc will not search /usr/local/lib, etc.</li> 7151 7152 <li>build-fix for Xaw3d configuration (report by H Merijn 7153 Brand).</li> 7154 7155 <li>update config.guess, config.sub</li> 7156 </ul> 7157 7158 <h1><a name="xterm_268" id="xterm_268">Patch #268 - 7159 2011/02/10</a></h1> 7160 7161 <ul> 7162 <li>fix an inconsistency of the "Enable Reverse Video" checkbox 7163 in the VT Options menu. This also removes a special case added 7164 in <a href="#xterm_217">patch #217</a> which limited the effect 7165 of the <code>reverseVideo</code> resource (Debian 7166 #603808).</li> 7167 7168 <li>amend decoding of misformed UTF-8 sequences to avoid 7169 absorbing valid characters as documented in Unicode 6.0 section 7170 3.9 (report by Keith Winstein).</li> 7171 7172 <li>do not set urgency hint when window already has focus 7173 (patch by Dimitrios Christidis).</li> 7174 7175 <li>amend extended mouse-coordinate mode from <a href= 7176 "#xterm_262">patch #262</a> changes to include the <em>Cb</em> 7177 button-code, which also may be greater than 127 (report by 7178 Ailin Nemui).</li> 7179 7180 <li>ensure that underline-cursor is visible when an application 7181 happens to set the background color (report by Christian 7182 Weisgerber).</li> 7183 7184 <li>add feature for <a href= 7185 "http://www.davidsimmons.com/soft/xtermhacks/xterm-fullscreen.patch"> 7186 full-screen toggling</a> using either Alt-Enter or a menu 7187 selection (integrated patch by Dave Simmons).</li> 7188 7189 <li>add missing logic to handle reallocation of FIFO index for 7190 the "UTF-8" menu entry (report by David Holland, NetBSD 7191 #44344).</li> 7192 7193 <li>add makefile rules <code>docs-ctlseqs</code>, 7194 <code>docs-xterm</code>, etc.</li> 7195 7196 <li>correct typo in description of DECRPM in control sequences 7197 document (report by Ailin Nemui).</li> 7198 </ul> 7199 7200 <h1><a name="xterm_267" id="xterm_267">Patch #267 - 7201 2010/11/20</a></h1> 7202 7203 <ul> 7204 <li>minor formatting changes to ctlseqs.ms to simplify a script 7205 which extracts the feature information. See the results in 7206 <a href= 7207 "https://invisible-island.net/xterm/xterm.faq.html#compare_versions"> 7208 Comparing versions, by counting controls</a> in the xterm 7209 FAQ.</li> 7210 7211 <li>add <code>docs-clean</code> makefile rule.</li> 7212 7213 <li>add <code>copy-selection</code> action (request by Timo 7214 Juhani Lindfors, Debian #588785).</li> 7215 7216 <li>trim leading/trailing blanks from string used for 7217 "Selection" font-menu data.</li> 7218 7219 <li>trim leading/trailing blanks from color resource 7220 values.</li> 7221 7222 <li>configure script improvements: 7223 <ul> 7224 <li>add workaround for removal of X11 dependency from Xt's 7225 package file (report by Robert Hooker).</li> 7226 7227 <li>add workaround for removal of fontconfig dependency 7228 from Xft's package file (report by Jeremy Huddleston).</li> 7229 7230 <li>add workaround for removal of Xmu dependency from Xaw's 7231 package file (report by Jeremy Huddleston).</li> 7232 7233 <li>improve workaround in <code>CF_X_TOOLKIT</code> macro, 7234 checking for other possible packages where Xt's 7235 dependencies may be given.</li> 7236 7237 <li>prefer <code>${name:=value}</code> to 7238 <code>${name-value}</code>, since recent bash changes break 7239 legacy support for that feature.</li> 7240 </ul> 7241 </li> 7242 </ul> 7243 7244 <h1><a name="xterm_266" id="xterm_266">Patch #266 - 7245 2010/10/24</a></h1> 7246 7247 <ul> 7248 <li>add rpm and dpkg scripts, for testing.</li> 7249 7250 <li>more fixes for Debian #600707 (report by Cyril 7251 Brulebois).</li> 7252 </ul> 7253 7254 <h1><a name="xterm_265" id="xterm_265">Patch #265 - 7255 2010/10/22</a></h1> 7256 7257 <ul> 7258 <li>fix a regression in fontname logic from <a href= 7259 "#xterm_263">patch #263</a> changes (Debian #600707, reported 7260 by Vincent Lefèvre).</li> 7261 7262 <li>revert modification of any-event/any-button protocol from 7263 <a href="#xterm_263">patch #263</a> changes. It interferes with 7264 selection using a shifted mouse button (reports by Neil Bird, 7265 Bram Moolenaar).</li> 7266 </ul> 7267 7268 <h1><a name="xterm_264" id="xterm_264">Patch #264 - 7269 2010/10/14</a></h1> 7270 7271 <ul> 7272 <li>replace a null-pointer check with check for empty string in 7273 <code>xtermOpenFont</code>, to eliminate a warning message from 7274 <a href="#xterm_263">patch #263</a> changes.</li> 7275 7276 <li>build-fix for <a href="#xterm_263">patch #263</a> when 7277 toolbar is not configured (patch by Chris Clayton) (reports by 7278 Robby Workman, David Wood).</li> 7279 </ul> 7280 7281 <h1><a name="xterm_263" id="xterm_263">Patch #263 - 7282 2010/10/13</a></h1> 7283 7284 <ul> 7285 <li>corrected initialization of "misc" resource values, to 7286 ensure that xterm has allocated a copy of strings which may not 7287 have been malloc'd by the X library (Debian #600129).</li> 7288 7289 <li>modify handling of any-event/any-button mouse protocol; it 7290 now is active with any combination of key-modifiers.</li> 7291 7292 <li>add debugging feature <code>showWrapMarks</code>, which 7293 marks lines which xterm knows are wrapped, showing where a 7294 double-click will select past the end of a line.</li> 7295 7296 <li>build-fix to address change in include-guards for 7297 <code>Xlib.h</code> in ongoing Xorg edits (patch by Jeremy 7298 Huddleston).</li> 7299 7300 <li>improve <code>pointerMode</code> by continuing to watch for 7301 motion events after mouse tracking is disabled if the pointer 7302 is hidden (Debian #594856).</li> 7303 7304 <li>further extend initialization for active-icon font to check 7305 if the font was not loaded successfully, to retry with 7306 <code>font1</code>, or as even (if TrueType fonts are used) to 7307 use a TrueType font. The retries are to help with cases as in 7308 <a href="#xterm_241">patch #241</a> where the bitmap fonts are 7309 not available.</li> 7310 7311 <li>fix special case of active-icon used when TrueType font is 7312 specified for the xterm window, from <a href="#xterm_261">patch 7313 #261</a> change. In that case, the default font's size was used 7314 for layout of the active icon's window (Debian #591265).</li> 7315 </ul> 7316 7317 <h1><a name="xterm_262" id="xterm_262">Patch #262 - 2010/8/30</a></h1> 7318 7319 <ul> 7320 <li>fix a case where changing the cursor color via escape 7321 sequences did not immediately update the screen (report by 7322 Andreas Wagner).</li> 7323 7324 <li>implement ANSI and DEC request-mode control sequences. The 7325 latter includes the xterm-specific private modes such as the 7326 mouse mode. The feature is ifdef'd with the rectangle 7327 operations since its decoding overlaps that feature.</li> 7328 7329 <li>correct typo in ctlseqs.ms for response of OSC 21 (patch by 7330 Kevin Schoedel).</li> 7331 7332 <li>improve discussion of mouse tracking in ctlseqs.ms</li> 7333 7334 <li>increase an array limit used in reporting mouse events 7335 (report by Ryan Johnson).</li> 7336 7337 <li>add extended mouse-coordinates mode, allowing up to 7338 2015x2015 windows, using UTF-8 encoding (patch by Ryan 7339 Johnson).</li> 7340 7341 <li>modify manpage hyphens to conform with <a href= 7342 "http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html"> 7343 Debian</a>.</li> 7344 </ul> 7345 7346 <h1><a name="xterm_261" id="xterm_261">Patch #261 - 2010/6/28</a></h1> 7347 7348 <ul> 7349 <li>fix regression in <code>renderFont</code> logic, from 7350 <a href="#xterm_260">patch #260</a> changes (report by Joseph 7351 Quinsey).</li> 7352 </ul> 7353 7354 <h1><a name="xterm_260" id="xterm_260">Patch #260 - 2010/6/20</a></h1> 7355 7356 <ul> 7357 <li>modify <code>plink.sh</code> to work around problem linking 7358 to recent PCRE libraries.</li> 7359 7360 <li>extend <code>renderFont</code> resource to allow deferred 7361 switch to TrueType fonts without affecting existing resource 7362 settings (Debian #585620).</li> 7363 7364 <li>modify configure macro CF_X_TOOLKIT to work around omission 7365 of ICE library from ".pc" file (report by Miroslav 7366 Lichvar).</li> 7367 7368 <li>change configure script default for 7369 <code>--enable-broken-st</code> i.e., the 7370 <code>brokenStringTerm</code> feature) to normally enable it. 7371 If the corresponding resource is enabled, this feature 7372 eliminates an apparent freeze of xterm when sending mis-encoded 7373 data to the screen (Debian #584801).</li> 7374 7375 <li>document in manpage some actions which were overlooked: 7376 <ul> 7377 <li>readline-button</li> 7378 7379 <li>scroll-lock</li> 7380 7381 <li>set-8-bit-control</li> 7382 </ul> 7383 </li> 7384 7385 <li>undo a change to limit-check in <code>ScrnRefresh</code> in 7386 <a href="#xterm_257">patch #257</a>, which broke 7387 <code>fastScroll</code> feature (Debian #584841).</li> 7388 7389 <li>modify handling of <code>brokenLinuxOSC</code> and 7390 <code>brokenStringTerm</code> to also sound the bell.</li> 7391 7392 <li>add control/D and control/Q to controls which will cause 7393 early exit from control string per 7394 <code>brokenStringTerm</code> resource.</li> 7395 7396 <li>improve documentation of <code>brokenStringTerm</code> 7397 resource in manpage.</li> 7398 </ul> 7399 7400 <h1><a name="xterm_259" id="xterm_259">Patch #259 - 2010/6/5</a></h1> 7401 7402 <ul> 7403 <li>modify configure check for <a href= 7404 "https://invisible-island.net/luit/">luit</a> to include new 7405 aliases for the program (<code>xterm-filter</code> and 7406 <code>bluit</code>).</li> 7407 7408 <li>add workaround in <code>xtermClearLEDs()</code> to account 7409 for Xkb's override, making vttest's LED demo reset the scroll 7410 lock.</li> 7411 7412 <li>filter out client-message events when deciding whether to 7413 hide cursor, e.g., when using SCIM (patch/report by anonymous 7414 user).</li> 7415 7416 <li>improve description of <code>-bd</code> option in manpage 7417 (report by Guy Daniel Clotilde).</li> 7418 7419 <li>modify configure checks for PCRE and other libraries to use 7420 <code>pkg-config</code>, if available.</li> 7421 7422 <li>amend change from <a href="#xterm_252">patch #252</a>, to 7423 take <code>veryColorColors</code> resource into account when 7424 checking <code>colorBDMode</code> resource for TrueType fonts 7425 (report by anonymous user).</li> 7426 7427 <li>add <code>vttests/query-fonts.pl</code> script for 7428 demonstrating the <code>OSC 50</code> font query.</li> 7429 7430 <li>improve manpage discussion of Scroll Lock feature.</li> 7431 7432 <li>improve configure macros CF_GCC_VERSION and 7433 CF_GCC_WARNINGS.</li> 7434 7435 <li>fix warnings for "clang --analyze".</li> 7436 7437 <li>change default for <code>allowScrollLock</code> resource to 7438 <code>false</code>, noting that the supposedly unused key has 7439 been useful for various rebindings (Debian #580946).</li> 7440 </ul> 7441 7442 <h1><a name="xterm_258" id="xterm_258">Patch #258 - 2010/5/1</a></h1> 7443 7444 <ul> 7445 <li>add pointer-checks in <code>ScrnRefresh</code> to fix a 7446 case in rapid scrolling where an empty record is fetched from 7447 the scrollback FIFO.</li> 7448 </ul> 7449 7450 <h1><a name="xterm_257" id="xterm_257">Patch #257 - 2010/4/22</a></h1> 7451 7452 <ul> 7453 <li>correct ctlseqs.ms description of OSC 17 and OSC 19 (patch 7454 by Emanuele Giaquinta).</li> 7455 7456 <li>corrected logic for <code>menuLocale</code> resource; the 7457 <code>setlocale</code> function returns the original locale 7458 only when querying.</li> 7459 7460 <li>improve filtering of translations resource, narrowing the 7461 scope of the <code>alwaysUseMods</code> to address only the 7462 translations that would cause a key to be sent to the host 7463 (report by Andrew Gaylard).</li> 7464 7465 <li>change default value of <code>menuLocale</code> resource to 7466 "C", to work around longstanding <a href= 7467 "https://invisible-island.net/xterm/xterm.faq.html#slow_menus">Xorg 7468 bug</a>.</li> 7469 7470 <li>modify handling of <code>scrollKey</code> feature to ignore 7471 XON/XOFF keys.</li> 7472 7473 <li>implement scroll-lock feature.</li> 7474 7475 <li>revise memory allocation in UTF8toLatin1() to fix an 7476 out-of-bounds index (Mandriva #54531).</li> 7477 7478 <li>compute value for first wide-character rather than assuming 7479 it is 256, fixes problem with <code>-cjk_width</code> 7480 introduced in patches <a href="#xterm_242">242</a> and <a href= 7481 "#xterm_249">249</a> (report by Thomas Wolff).</li> 7482 7483 <li>improve configure script: 7484 <ul> 7485 <li>corrected check for <code>_XOPEN_SOURCE</code> for 7486 OpenSolaris.</li> 7487 7488 <li>when possible, add rpath option for libraries in 7489 unusual places</li> 7490 7491 <li>add configure option <code>--disable-rpath-hack</code> 7492 to control whether the rpath option can be added.</li> 7493 </ul> 7494 </li> 7495 7496 <li>modify <code>AllocateTermColor()</code> to separate 7497 initialization from control sequences, fixing problem from 7498 <a href="#xterm_254">patch #254</a> changes where enabling 7499 <code>allowSendEvents</code> resource prevents setting cursor 7500 color on command-line (Debian #572928).</li> 7501 7502 <li>amend logic from <a href="#xterm_185">patch #185</a> to not 7503 reallocate cell-array if processing 7504 <code>ESC % G</code> to switch from UTF-8 if already 7505 in ISO-8859-1 character set (report by Michael Koehne).</li> 7506 7507 <li>fix to avoid calling <code>XmuInternStrings()</code> with 7508 zero count (report by Johan Bockgård).</li> 7509 7510 <li>fix build when --disable-ansi-color configure option is 7511 used.</li> 7512 7513 <li>fix build when neither OPT_TCAP_QUERY or OPT_TCAP_FKEYS is 7514 defined (patch by Matthieu Herrb)</li> 7515 </ul> 7516 7517 <h1><a name="xterm_256" id="xterm_256">Patch #256 - 2010/3/6</a></h1> 7518 7519 <ul> 7520 <li>add TerminalEmulator to desktop category files.</li> 7521 7522 <li>modify <code>sinstall.sh</code> to ignore the "." appended 7523 to permissions by selinux.</li> 7524 7525 <li>change app-defaults organization, installing UXTerm-color 7526 and KOI8XTerm-color for consistent behavior regarding 7527 <code>customization: color</code> (prompted by discussion 7528 in Ubuntu #421261).</li> 7529 7530 <li>fix typo in <code>minstall.sh</code> from <a href= 7531 "#xterm_255">patch #255</a> changes, and add case for 7532 <code>/var/run</code> needed for full path of utmp (report by 7533 Julien Cristau).</li> 7534 7535 <li>minor fix to xterm manpage, remove a comment stating that 7536 margin bell can be changed via the VT Options menu. That was 7537 replaced in <a href="#xterm_225">patch #225</a></li> 7538 7539 <li>add a "docs" rule to makefile.</li> 7540 7541 <li>fix initialization of Atom used for <code>XkbBell</code> 7542 feature from <a href="#xterm_243">patch 243</a> changes. Unlike 7543 the other calls to <code>XInternAtom()</code>, in this case the 7544 flag telling X to create the Atom was unset (patch by Chris 7545 Adams).</li> 7546 </ul> 7547 7548 <h1><a name="xterm_255" id="xterm_255">Patch #255 - 2010/1/21</a></h1> 7549 7550 <ul> 7551 <li>rename <code>install.sh</code> to <code>install-sh</code> 7552 in case suffix-rules might interfere.</li> 7553 7554 <li>extend range for <code>convertToUTF8</code> function to 7555 full 31-bits, to use with printing, etc.</li> 7556 7557 <li>improve manpage by checking for actual locations of 7558 utmp/wtmp files (Debian #562640).</li> 7559 7560 <li>modify configure macro CF_XOPEN_SOURCE to remove -D's 7561 before adding the same name rather than relying on -U's, to 7562 reduce redefinition warnings for some platforms that have 7563 conflicting definitions in headers.</li> 7564 7565 <li>correct logic used to switch to alternate screen using 7566 FIFO-lines configuration (Debian #565772).</li> 7567 7568 <li>update config.guess, config.sub</li> 7569 </ul> 7570 7571 <h1><a name="xterm_254" id="xterm_254">Patch #254 - 2010/1/6</a></h1> 7572 7573 <ul> 7574 <li>add a configure-check to eliminate <code>install-ti</code> 7575 rule from Makefile when the system has no tic (terminfo 7576 compiler) program. This lets one use the 7577 <code>install-full</code> rule more consistently.</li> 7578 7579 <li>amend change to WriteText() function in <a href= 7580 "#xterm_252">patch #252</a> to take into account the 7581 <code>colorAttrMode</code> resource (report by Krzysztof 7582 Kotlenga).</li> 7583 7584 <li>document <code>titleModes</code> resource in manpage, added 7585 in <a href="#xterm_252">patch #252</a>.</li> 7586 7587 <li>modify tcap-query table entries for shifted up/down cursor 7588 keys to match ncurses convention.</li> 7589 7590 <li>improve lookup of termcap-query data, allowing for 7591 duplicate keycodes versus missing entries.</li> 7592 7593 <li>add control sequence which can be used to modify the 7594 terminal data used for the termcap-keyboard.</li> 7595 7596 <li>improve portability of tcap-query feature, using terminfo 7597 functions in preference to termcap on systems having 7598 terminfo.</li> 7599 7600 <li>improve font-setting/querying control 7601 (<code>OSC 50</code>): 7602 <ul> 7603 <li>when TrueType font is selected, the TrueType 7604 <code>faceName</code> will be set, rather than the bitmap 7605 font.</li> 7606 7607 <li>when TrueType font is selected, querying returns the 7608 name of the TrueType font.</li> 7609 7610 <li>querying a font recognizes the relative-font convention 7611 that setting a font could use.</li> 7612 </ul> 7613 </li> 7614 7615 <li>add menu-entry for allowColorOps.</li> 7616 7617 <li>add new resources for fine-tuning menu entries: 7618 <code>allowColorOps</code>, <code>disallowedColorOps</code>, 7619 <code>disallowedFontOps</code> and 7620 <code>disallowedTcapOps</code>.</li> 7621 7622 <li>correct logic for disabling the "TrueType Fonts" menu item; 7623 it was not ensuring that the <code>faceName</code> resource 7624 value was non-empty.</li> 7625 7626 <li>implement VT520-style controls <code>DECSMBV</code> and 7627 <code>DECSWBV</code> for setting the margin- and warning-bell 7628 volume.</li> 7629 7630 <li>fix a minor error from <a href="#xterm_243">patch #243</a> 7631 which made the zIconBeep feature use a minor-error tone rather 7632 than an informational tone.</li> 7633 7634 <li>add a null-pointer check for the case where 7635 <code>renderFont</code> resource is true, but 7636 <code>faceName</code> resource is unset, used in logic to strip 7637 "xft:" prefix from <a href="#xterm_251">patch #251</a> changes 7638 (patch by Michael Riepe).</li> 7639 7640 <li>add special case to configure CF_XOPEN_SOURCE macro to use 7641 extensions on Darwin (patch by Dennis Preiser).</li> 7642 7643 <li>improve configure checks for regular expressions header and 7644 library</li> 7645 7646 <li>update config.guess, config.sub</li> 7647 </ul> 7648 7649 <h1><a name="xterm_253" id="xterm_253">Patch #253 - 7650 2009/12/10</a></h1> 7651 7652 <ul> 7653 <li>add a null-pointer check in <code>getPrinterFlags()</code> 7654 per changes in <a href="#xterm_252">patch #252</a>.</li> 7655 7656 <li>add a null-pointer check, needed in UTF-8 mode for Xft 7657 fonts after changes in <a href="#xterm_252">patch #252</a> 7658 (patch by Alan Coopersmith).</li> 7659 7660 <li>correct size when clearing struct for tek4014 (patch by 7661 Jochen Voss).</li> 7662 7663 <li>parenthesize expression in <code>MoreRows</code> macro, 7664 fixing a limit check added in <a href="#xterm_251">patch 7665 #251</a> (Debian #560039).</li> 7666 </ul> 7667 7668 <h1><a name="xterm_252" id="xterm_252">Patch #252 - 2009/12/7</a></h1> 7669 7670 <ul> 7671 <li>modify title-querying logic to support retrieval of titles 7672 encoded using UTF-8.</li> 7673 7674 <li>add new "title-modes" control sequence for controlling 7675 whether window/icon titles can be set or queried using UTF-8, 7676 optionally encoded in a hexadecimal string.</li> 7677 7678 <li>use <code>mkdir -p</code> rather than 7679 <code>mkdirs.sh</code> (prompted by discussion of mawk by 7680 Aleksey Cheusov).</li> 7681 7682 <li>add appropriate copyright/license notices to the bulk of 7683 files lacking same, and modify to use identical terms in others 7684 which used different wording. The main exceptions are the files 7685 contributed by Markus Kuhn, who appears to prefer public domain 7686 distribution, noting that I have modified/improved several of 7687 these without changing the terms of distribution (request by 7688 Jari Aalto).</li> 7689 7690 <li>add control sequences for resetting the "dynamic" colors to 7691 their default values.</li> 7692 7693 <li>add control sequences for resetting the "special" colors to 7694 their default values.</li> 7695 7696 <li>add control sequences for setting the "special" colors such 7697 as <code>colorBD</code> (bold).</li> 7698 7699 <li>add overlooked case for setting highlight foreground color 7700 with the dynamic-colors control.</li> 7701 7702 <li>add <code>OSC 104</code>, for resetting ANSI/16/88/256 7703 colors to default.</li> 7704 7705 <li>reset ANSI/16/88/256 colors to default in soft/hard reset 7706 functions.</li> 7707 7708 <li>strip "xft:" prefix from <code>faceName</code> and 7709 <code>faceNameDoublesize</code> resource values,</li> 7710 7711 <li>add <code>DECSCUSR</code> (discussion with Andy 7712 Koppe).</li> 7713 7714 <li>add check/warning on failure to load font, to see if the 7715 name looks like an Xft pattern rather than XLFD. This can 7716 happen if someone happens to modify their X resource settings 7717 for programs that read data from xterm's namespace.</li> 7718 7719 <li>modify handling of <code>print</code> and 7720 <code>print-everything</code> actions to allow the various 7721 printer flags to be overridden by supplying parameters.</li> 7722 7723 <li>add resource <code>printerNewLine</code> (request by Ovidiu 7724 Gheorghioiu).</li> 7725 7726 <li>minor cleanup, finish using <code>TScreenOf()</code> and 7727 <code>TekScreenOf()</code> macros introduced in <a href= 7728 "#xterm_224">patch #224</a>.</li> 7729 7730 <li>improve checks in ShowCursor/HideCursor to get the 7731 background color, particularly when 7732 <code>highlightReverse</code> resource is used (reports by Jan 7733 Engelhardt, Christian Weisgerber).</li> 7734 7735 <li>correct <code>checkVeryBoldAttr</code> to omit comparison 7736 of foreground color to special color values used for 7737 <code>color<XX></code> resources (report by Jan 7738 Engelhardt).</li> 7739 7740 <li>make <code>colorBDMode</code> and <code>colorULMode</code> 7741 resources work with TrueType configuration (report by Jan 7742 Engelhardt).</li> 7743 </ul> 7744 7745 <h1><a name="xterm_251" id="xterm_251">Patch #251 - 7746 2009/11/11</a></h1> 7747 7748 <ul> 7749 <li>add window-ops controls to push/pop icon and/or window 7750 labels on a stack.</li> 7751 7752 <li>minor fixes to align termcap file with terminfo.</li> 7753 7754 <li>add resource <code>disallowedWindowOps</code>, to allow 7755 fine-tuning of features to suppress with the 7756 <code>allowWindowOps</code> resource (prompted by discussion 7757 with Bram Moolenaar).</li> 7758 7759 <li>add makefile rules for resize-manpage to pdf, etc.</li> 7760 7761 <li>further improve limit-checks in select/paste (Mandriva 7762 #54531).</li> 7763 </ul> 7764 7765 <h1><a name="xterm_250" id="xterm_250">Patch #250 - 7766 2009/10/13</a></h1> 7767 7768 <ul> 7769 <li>add check and error-message for fonts that have no 7770 printable values in the ISO-8859-1 range (Debian #542434).</li> 7771 7772 <li>some compiler-warning cleanup, in particular workaround for 7773 defective implementation of gcc's attribute warn_unused_result 7774 (report by Bram Moolenaar).</li> 7775 7776 <li>improve estimate of single-column width for packed TrueType 7777 fonts by ignoring extents for codes 127 and 159.</li> 7778 7779 <li>improve line-drawing for TrueType fonts which happen to 7780 have defined glyphs which are <em>not</em> line-drawing in 7781 0..31 by assuming they're not, and just checking the existence 7782 of the Unicode codepoints. This makes it more likely that the 7783 user can override a misconfigured font using the "Line-Drawing 7784 Characters" menu entry.</li> 7785 7786 <li>limit minimum cell-width for packed font to maximum-advance 7787 reported by Xft. Some fonts are wider than that, even in the 7788 Latin-1 range (Debian #550497).</li> 7789 7790 <li>add list of direct-contributors in "THANKS" file.</li> 7791 7792 <li>stylistic changes to this file to help scripted extraction 7793 of list of contributors.</li> 7794 7795 <li>correct off-by-one in <code>okPosition</code> fix from 7796 <a href="#xterm_249">patch #249</a> limit-checks which 7797 prevented double-click selection on the bottom line of the 7798 screen (reports by Rajeev V. Pillai, Debian #550368).</li> 7799 7800 <li>add <code>-q</code> option to 7801 <code>vttests/256colors2.pl</code> and 7802 <code>vttests/88colors2.pl</code> to demonstrate bulk 7803 initialization of color palette.</li> 7804 7805 <li>improve the workaround from patch #188 by enabling 7806 resources for the 88-color model.</li> 7807 7808 <li>document in xterm manpage the limited availability of 7809 resources <code>color16</code> to <code>color255</code> as 7810 noted in <a href="#xterm_188">patch #188</a> (Ubuntu 7811 #438850).</li> 7812 </ul> 7813 7814 <h1><a name="xterm_249" id="xterm_249">Patch #249 - 2009/10/1</a></h1> 7815 7816 <ul> 7817 <li>change default for <code>allowWindowOps</code> resource to 7818 false. 7819 <!-- on the other hand, gnome-terminal, pterm and rxvt-unicode 7820 leave most of the related functionality enabled ;-) --></li> 7821 7822 <li>add limit-checks for result of visual_width() function, 7823 needed from <a href="#xterm_242">patch #242</a> and exposed by 7824 #244 changes (Debian #548321).</li> 7825 7826 <li>improve limit-checks in select/paste.</li> 7827 7828 <li>fix a remaining bug from <a href="#xterm_230">patch 7829 #230</a> changes for displaying multi-column characters in a 7830 proportional font (report by Chris Jones).</li> 7831 7832 <li>add new resource forcePackedFont and menu entry "Packed 7833 Font" to control whether to use the font's minimum (default) or 7834 maximum width when those differ. The workaround which xterm 7835 uses to accommodate proportional fonts is not necessary with 7836 certain fonts such as unifont which happen to store a mixture 7837 of multicolumn glyphs (report by Chris Jones).</li> 7838 7839 <li>fix an (old) bug which did not restart the timer for 7840 blinking text if the only blinking text was temporarily 7841 scrolled out of view, e.g., using the scrollbar.</li> 7842 7843 <li>fix an (old) flaw in the delete-line operation where the 7844 text which is scrolled into view while the display is scrolled 7845 up was not repainted.</li> 7846 7847 <li>improve delete-line and insert-line operations, retaining 7848 selection when the selection does not intersect the 7849 deleted/inserted lines.</li> 7850 7851 <li>fix an (old) off-by-one error when an application cleared 7852 above the cursor position while the display was scrolled up, 7853 that would leave an extra line of text uncleared.</li> 7854 7855 <li>fix a similar problem where the double-size attribute would 7856 not be reset when clearing the screen while the display was 7857 scrolled up.</li> 7858 7859 <li>fix an indexing error which would occur if an application 7860 cleared a line while the display was scrolled up and was also 7861 in UTF-8 mode (Redhat #524503). The error was from <a href= 7862 "#xterm_228">patch #228</a> but more visible after changes from 7863 <a href="#xterm_244">patch #244</a>.</li> 7864 </ul> 7865 7866 <h1><a name="xterm_248" id="xterm_248">Patch #248 - 2009/9/11</a></h1> 7867 7868 <ul> 7869 <li>fix an overlooked adjustment for selecting double-width 7870 characters in the narrow-character configuration.</li> 7871 7872 <li>eliminate uses of <code>XTERM_CELL</code> and 7873 <code>XTERM_CELLC</code> where an appropriate 7874 <code>LineData</code> pointer is available.</li> 7875 7876 <li>correct expression in <code>okScrnRow</code> macro, making 7877 selections give the length of lines below the visible screen 7878 (report by Stuart Henderson).</li> 7879 7880 <li>correct logic used to improve performance of missing-glyph 7881 check, which did not handle line-drawing characters (Debian 7882 #545220).</li> 7883 </ul> 7884 7885 <h1><a name="xterm_247" id="xterm_247">Patch #247 - 2009/8/30</a></h1> 7886 7887 <ul> 7888 <li>add ifdef's and check for openpty() on DragonFly (patch by 7889 Alex Hornung).</li> 7890 7891 <li>correct calculation for size of line's data block, which 7892 was sometimes off-by-one when configured using 7893 <code>--enable-16bit-chars</code> (report by H Merijn 7894 Brand).</li> 7895 7896 <li>fix indexing error in print-everything feature from 7897 <a href="#xterm_246">patch #246</a> (patch by Ovidiu 7898 Gheorghioiu).</li> 7899 </ul> 7900 7901 <h1><a name="xterm_246" id="xterm_246">Patch #246 - 2009/8/16</a></h1> 7902 7903 <ul> 7904 <li>remove obsolete logic for saving/restoring wrapping flags, 7905 which did not work on 64-bit platform. Wrapping flags (stored 7906 in the line-index) are now copied with line-data (Debian 7907 #541160).</li> 7908 7909 <li>modify comments in app-defaults files to avoid problem with 7910 C preprocessor used by <code>xrdb</code> (Debian #541603).</li> 7911 7912 <li>restore special case in <code>makeColorPair</code>, needed 7913 for <code>colorBDMode</code> resource (Debian #541089).</li> 7914 7915 <li>correct <code>SetLineFlags()</code> macro, broken in 7916 <a href="#xterm_244">patch #244</a> when recoding to avoid 7917 gcc-specific bitfields (Debian #541236).</li> 7918 7919 <li>modify initialization of screen buffers to ensure that 7920 pointers align to int-boundaries. This fixes a problem 7921 introduced in <a href="#xterm_244">patch #244</a> where the 7922 color- and character-arrays (stored after the video-attributes 7923 in each row) might be misaligned (report by Rajeev V 7924 Pillai).</li> 7925 7926 <li>add limit-check in <code>ScrnRefresh</code> for handling 7927 saved-lines from the circular buffer which are repainted on a 7928 screen whose width has increased. To improve performance, 7929 circular buffer entries are not resized (report by Rajeev V 7930 Pillai).</li> 7931 7932 <li>correct type for <code>CellColor</code> (a late change in 7933 <a href="#xterm_244">patch #244</a> to avoid gcc-specifc enums 7934 made that unsigned rather than unsigned short, for the 7935 256-color option).</li> 7936 7937 <li>fix typo in configure option --enable-16bit-chars (report 7938 by Rajeev V. Pillai).</li> 7939 </ul> 7940 7941 <h1><a name="xterm_245" id="xterm_245">Patch #245 - 2009/8/12</a></h1> 7942 7943 <ul> 7944 <li>correct a special case in saving FIFO-lines from <a href= 7945 "#xterm_244">patch #244</a>. If the screen was shrunk, xterm 7946 used the wrong amount for copying to FIFO-lines, and then used 7947 this amount to adjust the current row on the screen. That was 7948 both a visible defect (Debian #541109) as well as a potential 7949 addressing error (Debian #541132, Debian #541160, and Debian 7950 #541236).</li> 7951 7952 <li>add clarification in xterm manual about the various 7953 <code>allow<em>XXX</em>Ops</code> resources, which are disabled 7954 when the <code>allowSendEvents</code> resource is active (patch 7955 by Julien Cristau, Debian #531597).</li> 7956 </ul> 7957 7958 <h1><a name="xterm_244" id="xterm_244">Patch #244 - 2009/8/9</a></h1> 7959 7960 <ul> 7961 <li>refactored storage of saved-lines, providing a configure 7962 option to manage them as a FIFO (actually a circular buffer), 7963 improving performance. Added configure option 7964 <code>--enable-fifo-lines</code> to enable/disable the new 7965 feature (it is enabled by default).</li> 7966 7967 <li>added <code>fastScroll</code> resource, to amuse people who 7968 measure terminal emulator performance by <code>cat</code>'ing 7969 large files to the screen.</li> 7970 7971 <li>modify check in <code>readPtyData</code> from return values 7972 to provide exit on zero-bytes read from pty for FreeBSD, or 7973 eliminate high-CPU in "xterm-hold" processing (discussion with 7974 Ulrich Spoerlein, FreeBSD ports/136686). The check was 7975 originally modified to combine negative/zero values in 7976 XFree86-3.1.2E, 1996/05/06.</li> 7977 7978 <li>add configure option <code>--enable-16bit-chars</code> to 7979 provide wide-characters with 16-bits (rather than the default 7980 32-bits).</li> 7981 7982 <li>add <code>retryInputMethod</code> resource to allow 7983 configuring out the retries xterm uses to connect to 7984 non-responsive XIM server, to work around defective X 7985 configurations as noted in <a href= 7986 "http://mail-index.netbsd.org/tech-x11/2009/06/07/msg000511.html"> 7987 NetBSD mailing list</a>.</li> 7988 7989 <li>make regular-expression selection work for VT100 7990 double-sized characters.</li> 7991 7992 <li>improve layout when drawing missing characters in a 7993 proportional font, e.g., as boxes, to take into account whether 7994 they are double-width (report by Guilbert Stabilo on 7995 comp.unix.shell).</li> 7996 7997 <li>add capability for keypad-center (kb2/KA2) to termcap entry 7998 for xterm-new, as well as xterm-8bit, xterm-sun and xterm-vt220 7999 (FreeBSD conf/136336).</li> 8000 8001 <li>change default for <code>keepSelection</code> resource to 8002 true (prompted by discussion with David Muir Sharnoff).</li> 8003 8004 <li>remove a limit-check in ptydata.c, allowing Unicode values 8005 past 64k to be displayed using TrueType fonts (Debian 8006 #458432).</li> 8007 8008 <li>remove a vt52-specific ifdef to allow mapping F1-F4 to 8009 PF1-PF4 when vt52 support is not compiled (report by Olaf 8010 'Rhialto' Seibert).</li> 8011 8012 <li>save/restore line-wrapping flags when converting from 8013 ISO-8859-1 encoding to UTF-8 encoding, as well as when resizing 8014 screen.</li> 8015 8016 <li>remove extra adjustment of position in fix for Debian 8017 #418324.</li> 8018 8019 <li>modify default check for <code>mkWidth</code> resource to 8020 check for line-drawing characters, which are categorized as 8021 double-width in Solaris 10 (report by Sebastian Kayser).</li> 8022 8023 <li>add "print-everything" action (patch by Ovidiu 8024 Gheorghioiu).</li> 8025 8026 <li>start refactoring scrollback data using new getLineData() 8027 function.</li> 8028 8029 <li>demote recent change to Debian #252873 fix to experimental, 8030 ifdef'd out as <code>EXP_BOGUS_FG</code> (Debian #522141).</li> 8031 8032 <li>work around groff mapping of ASCII quotes using macros 8033 (requested by Reuben Thomas based on Colin Watson advice, fixes 8034 Debian #378700).</li> 8035 8036 <li>correct symbol used for default of 8037 <code>allowWindowOps</code> which was 8038 <code>DEF_ALLOW_FONT</code> rather than 8039 <code>DEF_ALLOW_WINDOW</code> (report by Matthieu Herrb).</li> 8040 8041 <li>amend fix for tek4014 from <a href="#xterm_243">patch 8042 #243</a> to make it only apply to the Tek Options menu.</li> 8043 </ul> 8044 8045 <h1><a name="xterm_243" id="xterm_243">Patch #243 - 2009/3/28</a></h1> 8046 8047 <ul> 8048 <li>revert change to default for <code>allowTcapOps</code> 8049 (request by Bram Moolenaar).</li> 8050 8051 <li>reallocate result returned by <code>xtermEnvLocale()</code> 8052 to avoid reference to freed memory after handling 8053 <code>menuLocale</code> resource.</li> 8054 8055 <li>fix an old (X11R5) bug in tek4014 for switching 8056 fontsizes.</li> 8057 8058 <li>add resource <code>defaultString</code> to make 8059 configurable the use of "#" when pastes of UTF-8 text fail due 8060 to limitations in the current locale settings.</li> 8061 8062 <li>make the set of selection target Atom's configurable by two 8063 new resources <code>eightBitSelectTypes</code> and 8064 <code>utf8SelectTypes</code>, e.g., to use the 8065 <code>TEXT</code> Atom in preference to 8066 <code>UTF8_STRING</code> (discussion with Stanislav Sedov 8067 regarding koi8rxterm and the FreeBSD port).</li> 8068 8069 <li>modify handling of <code>TARGETS</code> Atom by making it 8070 return exactly the set of targets as those which xterm is 8071 currently providing.</li> 8072 8073 <li>set <code>MANPAGER</code> and <code>PAGER</code> explicitly 8074 to /bin/cat in <code>minstall.sh</code> to work around 8075 /etc/man.conf's with those variables already set (report by 8076 Марьясин 8077 Семён).</li> 8078 8079 <li>improve error-checking of tcap-query parser.</li> 8080 8081 <li>add check for keyboard <code>tcap</code>), which ensures 8082 that terminal descriptions containing the same string for 8083 shifted/unshifted keys will be seen by tcap-query as only the 8084 unshifted key. (This would only happen with an incorrect 8085 terminal description).</li> 8086 8087 <li>fix conversion for input event-state to modifier-parameter 8088 which made tcap-query feature not work with 8089 <code>tcapFunctionKeys</code> (keyboard type 8090 <code>tcap</code>).</li> 8091 8092 <li>add "DEF_ALLOW_<em>XXX</em>" definitions to main.h to allow 8093 overriding the default compiled-in values for 8094 "allow<em>xxx</em>" resources.</li> 8095 8096 <li>remove check on bell-percentage added in <a href= 8097 "#xterm_242">patch #242</a>, which disallowed zero/negative 8098 values (Redhat Bugzilla #487829).</li> 8099 </ul> 8100 8101 <h1><a name="xterm_242" id="xterm_242">Patch #242 - 2009/2/15</a></h1> 8102 8103 <ul> 8104 <li>fix configure check for <code>XkbBell</code> and provide 8105 appropriate parameter for it.</li> 8106 8107 <li>fix a caching problem with double-size fonts versus reverse 8108 video that could cause core dump.</li> 8109 8110 <li>repair double-size fonts from workaround used in <a href= 8111 "#xterm_240">patch #240</a>.</li> 8112 8113 <li>add new section to the VT Fonts menu which allows enabling 8114 or disabling the font, termcap (tcap-query), title and window 8115 operations.</li> 8116 8117 <li>add <code>fontWarnings</code> resource, to control whether 8118 to show warnings on failure to load a font.</li> 8119 8120 <li>improve warnings for unloadable fonts introduced in 8121 <a href="#xterm_240">patch #240</a> by limiting those to the 8122 cases where a font would be specified directly by a resource 8123 setting rather than a derived fontname.</li> 8124 8125 <li>further amend fix for Debian #252873 from <a href= 8126 "#xterm_197">patch #197</a> to treat a blank cell which does 8127 not have both foreground and background colored as a 8128 non-colored cell. This improves a special case where the cursor 8129 is on a blank cell which had foreground color scrolled in 8130 (report by Miroslav Lichvar). 8131 <p>Also add the same logic when hiding cursor, so the outline 8132 matches the in-focus cursor.</p> 8133 </li> 8134 8135 <li>modify internals to reduce places PAIRED_CHARS() is used, 8136 making WriteText() and ScrnWriteText() accept IChar array, as 8137 well as providing a wrapper for drawXtermText().</li> 8138 8139 <li>change default XIM font from "*" to "fixed" to improve 8140 startup time in zh_CN.UTF-8 locale (Mike Fabian, SuSE Bugzilla 8141 #464930).</li> 8142 8143 <li>typo in #240 log (Slava Semushin)</li> 8144 </ul> 8145 8146 <h1><a name="xterm_241" id="xterm_241">Patch #241 - 2009/1/26</a></h1> 8147 8148 <ul> 8149 <li>improve checks for missing bitmap fonts, fallback to 8150 "fixed" as needed to work around broken font-packages (report 8151 by Jacek Luczak).</li> 8152 8153 <li>fix breakage from <a href="#xterm_240">patch #240</a> 8154 changes for <code>xtermAddInput()</code> (patches by Jeff Chua, 8155 Julien Cristau).</li> 8156 </ul> 8157 8158 <h1><a name="xterm_240" id="xterm_240">Patch #240 - 2009/1/25</a></h1> 8159 8160 <ul> 8161 <li>use <code>plink.sh</code> for linking xterm (suggested by 8162 Larry Doolittle).</li> 8163 8164 <li>add resource descriptions for input method to xterm 8165 manpage.</li> 8166 8167 <li>update configure script; consistently append to $CFLAGS 8168 rather than prepend.</li> 8169 8170 <li>add <code>install-scripts</code> rule to makefile, to allow 8171 koi8rxterm and uxterm scripts to be altered independently of 8172 <code>install-bin</code></li> 8173 8174 <li>add <code>-maximized</code> command-line option and 8175 corresponding resource (prompted by alt.os.linux newsgroup 8176 comment).</li> 8177 8178 <li>modify translations of scrollbar widget using 8179 <code>xtermAddInput()</code> (see <a href="#xterm_181">patch 8180 #181</a>) to accept the actions that the vt100 widget accepts, 8181 such as shift-insert to perform a paste operation (request by 8182 Martin Zwickel).</li> 8183 8184 <li>change default for <code>allowTcapsOps</code> resource to 8185 false, since it causes unexpected behavior for vim users with 8186 <code>AltGr</code>.</li> 8187 8188 <li>update config.guess, config.sub</li> 8189 </ul> 8190 8191 <h1><a name="xterm_239" id="xterm_239">Patch #239 - 2009/1/8</a></h1> 8192 8193 <ul> 8194 <li>correct a cast in input.c, which broke translation of 8195 numeric keypad codes to pageup, pagedown, etc., on 64-bit 8196 platform (Debian #511138, report by Larry Doolittle).</li> 8197 </ul> 8198 8199 <h1><a name="xterm_238" id="xterm_238">Patch #238 - 8200 2008/12/30</a></h1> 8201 8202 <ul> 8203 <li>update configure macro CF_XOPEN_SOURCE for AIX 6.x and Mint 8204 platforms.</li> 8205 8206 <li>reset the screen wrapping-flag at the end of 8207 <code>ClearRight</code> to fix an occasional case where the 8208 last character of a scrolled and wrapped line would be cleared 8209 (patch by Joe Peterson).</li> 8210 8211 <li>modify to use POSIX coding for comparing resource settings 8212 such as <code>locale</code>, to work with locales such as 8213 Turkish (report by M Vefa Bicakci).</li> 8214 8215 <li>turn on configure <code>paste64</code> feature by default 8216 (request by Jean-Philippe Bernardy). It is runtime 8217 enabled/disabled with <code>allowWindowOps</code>.</li> 8218 8219 <li>turn on configure <code>tcap-query</code> feature by 8220 default, add resource <code>allowTcapOps</code> to make this 8221 runtime enabled/disabled.</li> 8222 8223 <li>make <code>OSC 3</code> (change X property, from <a href= 8224 "#xterm_110">patch #110</a>) subject to 8225 <code>allowWindowOps</code> resource.</li> 8226 8227 <li>make VT220 <code>DSR</code> responses inactive in 8228 VT100-mode.</li> 8229 8230 <li>make <code>DECUDK</code> feature inactive in 8231 VT100-mode.</li> 8232 8233 <li>respond to incorrectly formatted <code>DECRQSS</code> with 8234 a cancel.</li> 8235 8236 <li>add <code>allowFontOps</code> resource to allow the 8237 fontsize-switching and font query/set control sequences to be 8238 enabled/disabled (prompted by Debian #510030).</li> 8239 8240 <li>some code cleanup based on gcc 4.x 8241 <code>-Wconversion</code> warnings in button.c and 8242 charproc.c</li> 8243 8244 <li>modify <code>tcap-query</code> feature to not return data 8245 for shifted cursor-keys when the keyboard type is set to vt220, 8246 since returning the same string for shifted/unshifted keys may 8247 confuse some applications (Gentoo #212546).</li> 8248 </ul> 8249 8250 <h1><a name="xterm_237" id="xterm_237">Patch #237 - 8251 2008/09/14</a></h1> 8252 8253 <ul> 8254 <li>improve usability of TrueType fonts by making the font-size 8255 switching for shifted keypad plus/minus use the 8256 <code>faceSize</code> resources to determine the order of fonts 8257 (when TrueType fonts are used) rather than the bitmap fonts, 8258 since their sizes may not be in the same order (report by H 8259 Merijn Brand)</li> 8260 8261 <li>remove an optimization of <code>ConfigureNotify</code> 8262 events from <a href="#xterm_236">patch #236</a> which seems to 8263 interfere with passing <code>SIGWINCH</code> to applications 8264 (Gentoo #233836).</li> 8265 8266 <li>modify handling of <code>altSendsEscape</code> to reset the 8267 <code>eightBitInput</code> mode, like 8268 <code>metaSendsEscape</code> (patch by Ted Phelps).</li> 8269 8270 <li>add feature to show the text-cursor as an underline rather 8271 than a box, plus command-line options <code>-uc</code> and 8272 <code>+uc</code> and resource <code>cursorUnderLine</code> to 8273 control the feature (patch by Paul Lampert).</li> 8274 8275 <li>update config.guess, config.sub</li> 8276 </ul> 8277 8278 <h1><a name="xterm_236" id="xterm_236">Patch #236 - 8279 2008/07/27</a></h1> 8280 8281 <ul> 8282 <li>correct memory reallocation when handling a paste of UTF-8 8283 text from <a href="#xterm_225">patch #225</a> changes 8284 (report/patch by Max Mikhanosha).</li> 8285 8286 <li>correct allocation of temporary buffer in 8287 <code>xtermFindShell</code> in case the user's 8288 <code>$PATH</code> contains no ":" (report/analysis by Victor 8289 Stinner, Freedesktop.Org Bugzilla #16790).</li> 8290 8291 <li>modify CF_XOPEN_SOURCE to add case for DragonFly BSD, to 8292 fix new compile problem exposed by fix for fd_mask (patch by 8293 Hasso Tepper).</li> 8294 8295 <li>add configure-check for ncurses 8296 <code>use_extended_names</code>, (report by Martin 8297 Mokrejs).</li> 8298 8299 <li>correct computation for toolbar height; layout manager 8300 already takes into account <code>borderWidth</code> 8301 resource.</li> 8302 8303 <li>implement VT320-style SCS (select character set) for ISO 8304 Latin-1 supplemental.</li> 8305 8306 <li>fixes for vt100-style character sets in UTF-8 mode (Ubuntu 8307 #230919).</li> 8308 8309 <li>fix to make <code>luit</code> work with xterm's 8310 <code>-ls</code> option (report/patch by Marius Tolzmann).</li> 8311 8312 <li>update config.guess, config.sub</li> 8313 </ul> 8314 8315 <h1><a name="xterm_235" id="xterm_235">Patch #235 - 8316 2008/04/20</a></h1> 8317 8318 <ul> 8319 <li>add control sequences for some of the recent resource/menu 8320 settings: 8321 <ul> 8322 <li><code>altSendsEscape</code> (private mode 1039)</li> 8323 8324 <li><code>keepSelection</code> (private mode 1040)</li> 8325 8326 <li><code>selectToClipboard</code> (private mode 1041)</li> 8327 8328 <li><code>bellIsUrgent</code> (private mode 1042)</li> 8329 8330 <li><code>popOnBell</code> (private mode 1043)</li> 8331 </ul> 8332 </li> 8333 8334 <li>add resource <code>formatOtherKeys</code> to provide an 8335 alternate escape sequence format for the 8336 <code>modifyOtherKeys</code> resource (request by Paul LeoNerd 8337 Evans).</li> 8338 8339 <li>adjust saved-cursor position if the window is resized while 8340 displaying the alternate screen (Novell #196880, Debian 8341 #383384).</li> 8342 8343 <li>improve pointer-checks to fix a bug exposed by resizing 8344 during initialization under StumpWM window manager (Fedora 8345 Bugzilla #437928).</li> 8346 8347 <li>modify <code>unselectwindow()</code> to ensure that the 8348 mouse pointer is not hidden after xterm loses focus (report by 8349 Jeremy Huddleston).</li> 8350 8351 <li>add special check for fd_mask on Mac OS X (report by Jeremy 8352 Huddleston).</li> 8353 8354 <li>add <code>dylib</code> to autoconf's suffix list used for 8355 checking the result from <code>xmkmf</code>, to work with Mac 8356 OS X (report by Jeremy Huddleston).</li> 8357 8358 <li>correct initialization of bold- and wide-, wide-bold fonts 8359 which may be set via the <code>utf8Fonts</code> subresource 8360 (Debian #347790).</li> 8361 </ul> 8362 8363 <h1><a name="xterm_234" id="xterm_234">Patch #234 - 8364 2008/03/02</a></h1> 8365 8366 <ul> 8367 <li>modify <code>sinstall.sh</code> to use POSIX locale to 8368 bypass GNU ls changes to date-format.</li> 8369 8370 <li>improved/refined changes for closing bitmap font (patch by 8371 Andrea Odetti).</li> 8372 8373 <li>improve resize computation for situations where the 8374 negotiation fails, by invoking the xterm widget's core-class 8375 resize method (Debian #365602, patch by Jim Paris).</li> 8376 8377 <li>restore initialization of terminal's <code>VMIN</code> and 8378 <code>VTIME</code> settings, from <a href="#xterm_232">patch 8379 #232</a> changes (patch by Matthieu Herrb).</li> 8380 </ul> 8381 8382 <h1><a name="xterm_233" id="xterm_233">Patch #233 - 8383 2008/02/24</a></h1> 8384 8385 <ul> 8386 <li>add configure check for <code>ttydefaults.h</code>, include 8387 if needed, e.g., for systems where defining 8388 <code>_POSIX_C_SOURCE</code>, etc., prevents it from being 8389 included via <code>termios.h</code> (prompted by comments by 8390 Robert Delius Royar and Jeremy Huddleston).</li> 8391 8392 <li>bug-fixes for bugs.opensolaris.org (patches from Alan 8393 Coopersmith) 8394 <dl> 8395 <dt>4029911</dt> 8396 8397 <dd>fix a typo in manpage</dd> 8398 8399 <dt>4045962</dt> 8400 8401 <dd>xterm doesn't properly set ut_syslen</dd> 8402 8403 <dt>4192572</dt> 8404 8405 <dd>left-left-right misinterpreted as triple click</dd> 8406 </dl> 8407 </li> 8408 8409 <li>minor optimization to tab-initialization (patch by 8410 Németh Márton).</li> 8411 8412 <li>fix a case where an incorrect font was freed during 8413 initialization from <a href="#xterm_232">patch #232</a> changes 8414 (patch by Andrea Odetti).</li> 8415 8416 <li>improve comparison used in <code>SameFont</code> function 8417 for GC-caching (Julien Cristau).</li> 8418 8419 <li>correct macro name used for default <code>CKILL</code> 8420 definition to work with Mac OS X (report by Jeremy 8421 Huddleston).</li> 8422 </ul> 8423 8424 <h1><a name="xterm_232" id="xterm_232">Patch #232 - 8425 2008/01/30</a></h1> 8426 8427 <ul> 8428 <li>corrected logic in a font-cache used for reverse-video 8429 (Debian #404079).</li> 8430 8431 <li>add control sequence to alter <code>pointerMode</code> at 8432 runtime.</li> 8433 8434 <li>add limit-checks for rectangle operation parameters (report 8435 by Martin Pirker).</li> 8436 8437 <li>modify <code>minstall.sh</code> to suppress 8438 <code>$MANPAGER</code> and <code>$PAGER</code> environment 8439 variables, which may interfere with redirecting output of 8440 <code>man</code> to a shell variable (report/patch by Zdenek 8441 Sekera).</li> 8442 8443 <li>do not try to hide mouse pointer in the tek4014 window, 8444 fixes broken "-t" option at startup from <a href= 8445 "#xterm_230">patch #230</a> changes (report by Robert K. 8446 Nelson).</li> 8447 8448 <li>correct datatype used when drawing tek4014 data using xterm 8449 compiled for wide-characters, on big-endian machines (reports 8450 by Jeremy Huddleston, Harald Hanche-Olsen, Martin Costabel, 8451 Merle Reinhart).</li> 8452 8453 <li>modify to cache the font-names along with the bitmap font 8454 data, to improve comparison of fonts.</li> 8455 8456 <li>modify to allow building with configure options 8457 <code>--disable-ansi-color</code> and 8458 <code>--disable-leaks</code> (Debian #459817, report/patch by 8459 Németh Márton).</li> 8460 8461 <li>modify to allow building with configure options 8462 <code>--enable-wide-chars</code> and 8463 <code>--disable-c1-print</code> (Debian #459816, report/patch 8464 by Németh Márton).</li> 8465 8466 <li>add <code>pointerMode</code> resource to control whether 8467 and when the pointer cursor is hidden as the user types.</li> 8468 8469 <li>simplify initialization of ttyMode- and related characters 8470 using a table.</li> 8471 8472 <li>modify initialization-logic for stty values that correspond 8473 to ltchars structure and the BSD TIOCSLTC ioctl (susp, dsusp, 8474 rprnt flush, werase, lnext). These were reset to constants for 8475 both termios and legacy interfaces immediately after asking the 8476 system for the existing values since X11R6.1, rather than using 8477 them to provide inherited values. While the legacy interface 8478 has some constraints, e.g., on HPUX, the POSIX or termios 8479 interface should not. Your shell may reset these anyway 8480 (prompted by patch by Ed Schouten).</li> 8481 8482 <li>improve logic for hiding/displaying pointer-cursor (report 8483 by Mark Brukhartz).</li> 8484 8485 <li>add limit-checks to tabs.c, increase maximum column for 8486 setting tab-stops from 320 to 1024 (report by Németh 8487 Márton).</li> 8488 8489 <li>correct length, i.e., number of types of selection targets, 8490 computed by <code>ConvertSelection()</code> when not handling 8491 wide characters for the <code>XA_TARGETS()</code> case. This 8492 leaves an extra Atom on the end of the list which is not 8493 handled by <a href= 8494 "http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6322854">Java 8495 applications</a>. The problem was introduced in <a href= 8496 "#xterm_151">patch #151</a> (report by David Wood).</li> 8497 </ul> 8498 8499 <h1><a name="xterm_231" id="xterm_231">Patch #231 - 8500 2008/01/05</a></h1> 8501 8502 <ul> 8503 <li>undo change to <code>getXtermCell()</code> from patch #230 8504 using <code>PACK_PAIR</code> macro (Debian #459014, analysis by 8505 Caetano Jimenez Carezzato).</li> 8506 8507 <li>minor documentation fixes (patch by Slava Semushin)</li> 8508 8509 <li>add makefile actions to install KOI8RXTerm app-defaults 8510 file (patch by Julien Cristau).</li> 8511 </ul> 8512 8513 <h1><a name="xterm_230" id="xterm_230">Patch #230 - 8514 2007/12/31</a></h1> 8515 8516 <ul> 8517 <li>add <code>quietGrab</code> resource, which when true, 8518 suppresses cursor repainting when <code>NotifyGrab</code> and 8519 <code>NotifyUngrab</code> event types are received during 8520 change of focus (request by Nicolas George).</li> 8521 8522 <li>do not treat Unicode BIDI control characters as combining 8523 characters (Debian #457634).</li> 8524 8525 <li>add <code>koi8rxterm</code>, from Debian.</li> 8526 8527 <li>add manpage for <code>uxterm</code>, from Debian (Ubuntu 8528 #128136, Debian #438645)</li> 8529 8530 <li>remove ".xpm" suffixes from Icon filenames in desktop files 8531 since it confuses some lookups following the <a href= 8532 "http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html"> 8533 Icon Theme Specification</a> (report by Slava Semushin)</li> 8534 8535 <li>correct width-calculation used for adjusting proportional 8536 fonts, to work with wide-characters (Debian #441354).</li> 8537 8538 <li>fixes/improvements for double-size characters: 8539 <ul> 8540 <li>correct old clipping calculation which used total 8541 height of glyphs where ascent was needed.</li> 8542 8543 <li>if bold font is unavailable, fall back to normal 8544 font</li> 8545 8546 <li>adjust to "work" with Xft (which does not support 8547 double-width single-height characters).</li> 8548 8549 <li>restore reset of doublesize for a line when it is 8550 cleared, broken in <a href="#xterm_228">patch 8551 #228</a>.</li> 8552 </ul> 8553 </li> 8554 8555 <li>modify logic for <code>forceBoxChars</code> resource when 8556 using TrueType fonts to be consistent with bitmap fonts</li> 8557 8558 <li>modify logic for <code>forceBoxChars</code> resource to 8559 make the "Line-Drawing Characters" menu entry use xterm's 8560 line-drawing characters even asked to draw wide line-drawing 8561 characters which are available in the font.</li> 8562 8563 <li>modify rectangle-support functions to preserve colors when 8564 filling/erasing to match WRQ Reflection behavior (request by 8565 Enzo Toscano).</li> 8566 8567 <li>add getopt-parsing to tcapquery.pl, including feature to 8568 test the extended cursor/editing keys.</li> 8569 8570 <li>make missing double-width glyphs display as double-width 8571 (Debian #456236).</li> 8572 8573 <li>change <code>tcap-fkeys</code> and <code>rectangles</code> 8574 configure options to enable them by default.</li> 8575 8576 <li>hide the mouse pointer while user is typing (request by 8577 Rodolfo Borges).</li> 8578 8579 <li>extend configure options <code>--enable-tcap-query</code> 8580 and <code>--enable-tcap-fkeys</code> to send cursor- and 8581 editing-keypad keys modified according to the keyboard (or 8582 termcap) selection for shift, alt, control, meta.</li> 8583 8584 <li>modify <code>kdch1</code> in termcap, e.g., 8585 <code>xterm-r6</code> to match the terminfo file.</li> 8586 8587 <li>add <code>-hm</code> option to turn 8588 <code>highlightColorMode</code> on or off.</li> 8589 8590 <li>add <code>highlightColorMode</code> resource to separate 8591 the new (since <a href="#xterm_225">patch #225</a>) 8592 highlighting with both text- and background-colors (prompted by 8593 report/example by Thomas Wolff).</li> 8594 8595 <li>add <em>Keep Selection</em> menu entry to turn the 8596 <code>keepSelection</code> resource on/off at runtime.</li> 8597 8598 <li>add <code>keepSelection</code> resource, which when 8599 enabled, tells xterm to retain the X selection even after it 8600 stops highlighting it (patch by Sergey Vlasov).</li> 8601 8602 <li>extend the <code>CSI > n</code> sequence to 8603 allow disabling all types of modified-keys that the 8604 <code>CSI > m</code> sequence affects.</li> 8605 8606 <li>move include for <code><xtermcap.h></code> in 8607 <code>resize.c</code> to avoid redefinition of 8608 <code>termios</code> structure on OpenSolaris (report by Rahul 8609 Gopinathan Nair).</li> 8610 8611 <li>extend terminfo building blocks for modified editing keys 8612 to include all six keys.</li> 8613 8614 <li>synchronize terminfo with ncurses (report by Stephane 8615 Chazelas) 8616 <ul> 8617 <li>equate <code>xterm-xfree86</code> and 8618 <code>xterm-xf86-v44</code>.</li> 8619 8620 <li>add ncurses extensions OTbs, AX, for termcap 8621 conversions.</li> 8622 8623 <li>make old/legacy entries such as <code>xterm-24</code>, 8624 <code>xterm-65</code> and aliases <code>xterms</code>, 8625 <code>vs100</code> inherit from 8626 <code>xterm-old</code>.</li> 8627 8628 <li>make <code>xterm-r5</code> and <code>xterm-r6</code> 8629 the same, ignoring historical errors in X Consortium's 8630 version.</li> 8631 </ul> 8632 </li> 8633 8634 <li>fix an ifdef in logic for selecting regular expressions 8635 while in a narrow-character locale (Debian #449227).</li> 8636 </ul> 8637 8638 <h1><a name="xterm_229" id="xterm_229">Patch #229 - 2007/8/12</a></h1> 8639 8640 <ul> 8641 <li>override locale in minstall.sh; change in <a href= 8642 "#xterm_226">patch #226</a> does not work in UTF-8 locale 8643 (report by Zdenek Sekera).</li> 8644 8645 <li>undo an incorrect fix for a memory leak in <a href= 8646 "#xterm_209">patch #209</a> (Debian #435858).</li> 8647 </ul> 8648 8649 <h1><a name="xterm_228" id="xterm_228">Patch #228 - 2007/7/22</a></h1> 8650 8651 <ul> 8652 <li>modify configure script to permit combining 8653 <code>--with-utempter</code> and <code>--enable-setuid</code>, 8654 e.g., for using xterm with the utempter library on FreeBSD 8655 (report by Andriy Gapon).</li> 8656 8657 <li>modify "Quit" menu entry to override the <code>-hold</code> 8658 command-line option.</li> 8659 8660 <li>add a check in the startup error-reporting to avoid writing 8661 to pipe when it has not been opened. In that case, report 8662 errors directly to the standard error.</li> 8663 8664 <li>add OPT_READLINE definition to xtermcfg.hin, overlooked in 8665 <a href="#xterm_205">patch #205</a> (report by Kalle Olavi 8666 Niemitalo).</li> 8667 8668 <li>modify <code>88colors2.pl</code> and 8669 <code>256colors2.pl</code>, adding <code>-r</code> option to 8670 reverse the palettes for the extended colors.</li> 8671 8672 <li>check for partial overwrite or deletion of multi-column 8673 characters in several cases, e.g., insert-character, 8674 delete-character, etc., and fill the remainder of the cells 8675 used by the multi-column characters affected with blanks.</li> 8676 8677 <li>correct character-class codes in wide-character mode for 8678 characters 215, 247 (see also <a href="#xterm_165">patch 8679 #165</a>).</li> 8680 8681 <li>fix missing assignment for UTF-8 parsing in widget 8682 initialization (Debian #403360).</li> 8683 8684 <li>correct index expression used to set line-wrapping flag, 8685 making selection from scrollback work consistently (Debian 8686 #430121, report by Vincent Lefèvre).</li> 8687 8688 <li>amend changes to handshake in <a href="#xterm_226">patch 8689 #226</a> to accommodate Solaris, which relies on the extra 8690 setting of the terminal size after I/O initialization. Do this 8691 by adding new resource <code>ptySttySize</code>, which is false 8692 for Linux and MacOS X, i.e., true for for Solaris and other 8693 SVR4 platforms, as well as FreeBSD (reports by David Wood, 8694 Renato Botelho).</li> 8695 8696 <li>check for X events after cursor-left, and carriage return, 8697 consistent with indexing operations (comments by Vegard Nossum 8698 and Ingo Molnar on a mailing-list).</li> 8699 8700 <li>initialize the <code>.keyboard</code> structure, needed for 8701 some platforms (such as Solaris) after <a href= 8702 "#xterm_227">patch #227</a> fixes for keysyms (patch by David 8703 Wood).</li> 8704 8705 <li>update config.guess, config.sub</li> 8706 </ul> 8707 8708 <h1><a name="xterm_227" id="xterm_227">Patch #227 - 2007/6/27</a></h1> 8709 8710 <ul> 8711 <li>exclude the Intel compiler from the extra gcc warning 8712 options added in <a href="#xterm_226">patch #226</a>.</li> 8713 8714 <li>modify change for Debian #422521 from <a href= 8715 "#xterm_226">patch #226</a> to work with configurations where 8716 the X server does not recognize the <code>XF86Paste</code> or 8717 <code>SunPaste</code> keysyms (report by Paolo Pumilia).</li> 8718 8719 <li>fix incorrect free in fix for "Selection" menu entry in 8720 <a href="#xterm_226">patch #226</a>.</li> 8721 </ul> 8722 8723 <h1><a name="xterm_226" id="xterm_226">Patch #226 - 2007/6/17</a></h1> 8724 8725 <ul> 8726 <li>add configure check to use 8727 <code>-Wno-unknown-pragmas</code> for Solaris, and a few other 8728 new gcc warning options to address regressions in its warning 8729 options.</li> 8730 8731 <li>add sample desktop and icon files, along with configure 8732 options for manipulating them.</li> 8733 8734 <li>fix an infinite loop when showing a 2-column character in a 8735 1-column screen (Debian #426863).</li> 8736 8737 <li>add <code>XF86Paste</code> and <code>SunPaste</code> to the 8738 default translations (Debian #422521, patch by Bernhard R 8739 Link).</li> 8740 8741 <li>update wcwidth.c (partly based on/prompted by mailing list 8742 comment).</li> 8743 8744 <li>update/improve keysym2ucs.c based on Unicode 5.0.1d3 and 8745 Xorg 7.1 keysymdef.h file.</li> 8746 8747 <li>improve <code>gen-pc-fkeys.pl</code>, making it show all of 8748 the building-block terminfo entries used by xterm.</li> 8749 8750 <li>correct strings used for modifiers applied to F1-F4 in 8751 xterm+pcf1 terminfo entry.</li> 8752 8753 <li>improve session management by adding the ICE connection 8754 number to the <code>select</code> call rather than waking up 8755 once per second (patch by Miroslav Lichvar).</li> 8756 8757 <li>add environment variable <code>$XTERM_LOCALE</code> to help 8758 with shell initialization, e.g., to set a specific locale for 8759 xterm on systems where a global locale is set in the shell 8760 startup scripts.</li> 8761 8762 <li>add resource settings <code>mkSampleSize</code> and 8763 <code>mkSamplePass</code> to modify the <code>mkWidth</code> 8764 added in <a href="#xterm_201">patch #201</a>. In <a href= 8765 "#xterm_202">patch #202</a>, xterm would also check if the 8766 system's <code>wcwidth</code> matched its built-in tables "well 8767 enough" to be used when <code>mkWidth</code> was false, and if 8768 not would use the built-in tables anyway. These resources allow 8769 the user to customize the decision (prompted by comments by 8770 Emanuele Giaquinta)</li> 8771 8772 <li>modify logic which resets/updates the screensize on the 8773 child process side of the pseudo-terminal to do this only if a 8774 successful handshake was received, e.g., as determined by the 8775 <code>waitForMap</code> resource (prompted by reports by 8776 Emanuele Giaquinta and Bernhard R Link, but see also <a href= 8777 "#xterm_177">patch #177</a> and <a href="#xterm_159">patch 8778 #159</a>.</li> 8779 8780 <li>improve permissions logic when closing pseudo-terminal 8781 (Debian #12261, patch by Nathanael Nerode, analysis by Richard 8782 Braakman).</li> 8783 8784 <li>add resource <code>highlightReverse</code> which controls 8785 whether xterm will allow selection highlighting to hide 8786 reverse-video or use the older behavior which inverts the 8787 foreground and background colors when selected text with 8788 reverse-video attribute (report by Adam M Costello, comments by 8789 Victor Vaile).</li> 8790 8791 <li>restore a special case for cursor-color in 8792 <code>ReverseVideo()</code> lost in rewrite for <a href= 8793 "#xterm_224">patch #224</a> (report by Adam Sulmicki).</li> 8794 8795 <li>correct initialization for menu entry for 8796 <code>bellIsUrgent</code> (patch by Emanuele Giaquinta).</li> 8797 8798 <li>correct length of underlining for double-width Xft fonts 8799 (report by Shidai Liu "Leo").</li> 8800 8801 <li>correct clipping for double-width Xft fonts (report by 8802 Shidai Liu "Leo").</li> 8803 8804 <li>modify initialization for <code>italicULMode</code> to 8805 avoid <code>XftPatternBuild</code> reusing bold attributes 8806 (report by Shidai Liu "Leo").</li> 8807 8808 <li>add a check in case someone tries to call the 8809 <code>popup-menu()</code> action on a menu which is not 8810 initialized (Debian #426364).</li> 8811 8812 <li>improve CF_IMAKE_CFLAGS to work with Solaris sed (report by 8813 Peter Bray).</li> 8814 8815 <li>improve guess for X's manpage section in 8816 <code>minstall.sh</code>, (prompted by comment by Miroslav 8817 Lichvar).</li> 8818 8819 <li>modify <code>minstall.sh</code> to handle manpage patch 8820 with more than one dot (patch by Miroslav Lichvar).</li> 8821 8822 <li>fix configure message for --disable-setgid option (patch by 8823 Miroslav Lichvar).</li> 8824 8825 <li>add <code>allowTitleOps</code> resource to allow users to 8826 prevent the title- and icon-names from changing (request by 8827 John Bashinski).</li> 8828 8829 <li>fix "spawn-new-terminal" action, for the case where no 8830 parameter is passed to the action (patch by Daniel 8831 Colascione).</li> 8832 8833 <li>fix error-checking on internal font switching for 8834 "Selection" menu entry (Debian #421523).</li> 8835 8836 <li>amend select/paste change from <a href="#xterm_225">patch 8837 #225</a> by limiting it to non-UTF-8/non-KOI8-R encoding 8838 (Debian #420974).</li> 8839 8840 <li>add workaround for groff ".URL" codes which are not present 8841 in some commonly-used bitmap fonts (Debian #418324).</li> 8842 </ul> 8843 8844 <h1><a name="xterm_225" id="xterm_225">Patch #225 - 2007/3/24</a></h1> 8845 8846 <ul> 8847 <li>add <code>useClipping</code> resource to allow clipping to 8848 be disabled.</li> 8849 8850 <li>use <code>XftDrawSetClipRectangles</code> to work around 8851 Xft pixel-trash (report by Reuben Thomas).</li> 8852 8853 <li>add configure option <code>--enable-tcap-fkeys</code>, and 8854 resource <code>tcapFunctionKeys</code>, which can be used to 8855 tell xterm to use function-key definitions from the termcap (or 8856 terminfo) which it uses to set $TERM on startup.</li> 8857 8858 <li>add resources <code>altIsNotMeta</code> and 8859 <code>altSendsEscape</code> to allow one to use Alt-keys like 8860 the meta-key even if they are bound to different keycodes 8861 (prompted by discussion with Daniel Jacobowitz).</li> 8862 8863 <li>revert a change from <a href="#xterm_216">patch #216</a> 8864 that unnecessarily made the meta modifier override the 8865 <code>eightBitInput</code> resource if the alt- and 8866 meta-modifiers happened to overlap (report/patch by Daniel 8867 Jacobowitz).</li> 8868 8869 <li>correct associated font for active icon for colored text 8870 (broken in <a href="#xterm_224">patch #224</a>).</li> 8871 8872 <li>correct ifdef's for Darwin (patch by Emanuele 8873 Giaquinta).</li> 8874 8875 <li>add <code>highlightTextColor</code> resource, and options 8876 <code>-selfg</code>, <code>-selbg</code> like <code>xwsh</code> 8877 (adapted from patch by Victor Vaile).</li> 8878 8879 <li>revise <code>find_closest_color()</code> function to 8880 address concern about borrowing from <code>Tcl/Tk</code> 8881 (request by Dan McNichol).</li> 8882 8883 <li>add "spawn-new-terminal" action, which can be assigned to 8884 key translation, allowing one to spawn a new copy of xterm 8885 using the current process's working directory (adapted from 8886 patch by Daniel Colascione).</li> 8887 8888 <li>improve select/paste between UTF-8 and Latin1 xterms by 8889 adapting the translations from <a href="#xterm_185">patch 8890 #185</a>. Extend that to include Unicode fullwidth forms 8891 FF00-FF5E. Also modify select/paste of DEC line-drawing 8892 characters in Latin1 mode to use ASCII characters.</li> 8893 8894 <li>add "Enable Bell Urgency" to VT Options menu, removed 8895 "Enable Margin Bell".</li> 8896 8897 <li>add <code>bellIsUrgent</code> resource to control whether 8898 the Urgency hint is set/reset.</li> 8899 8900 <li>modify to set Urgency window manager hint on bell, reset it 8901 on Focus-In event (patch by Emanuele Giaquinta).</li> 8902 8903 <li>add <code>--disable-setgid</code> configure option (request 8904 by Miroslav Lichvar).</li> 8905 8906 <li>fix a possible infinite loop in last change to 8907 <code>dabbrev-expand()</code> (patch by Emanuele 8908 Giaquinta).</li> 8909 8910 <li>modify initialization to set the pty erase value if the 8911 <code>erase</code> is set in the <code>ttyModes</code> 8912 resource. This overrides the <code>ptyInitialErase</code> 8913 setting (request by Lluís Batlle i Rossell).</li> 8914 8915 <li>add <code>initialFont</code> resource to xterm widget, like 8916 tek-widget (Debian #299669).</li> 8917 8918 <li>amend change to <code>boldMode</code> from <a href= 8919 "#xterm_223">patch #223</a> for Debian #347790. As noted in 8920 Debian #412599, that made xterm no longer match the documented 8921 behavior. Add new resource <code>alwaysBoldMode</code> to allow 8922 overriding the comparison between normal/bold fonts when 8923 deciding whether to use overstriking to simulate bold 8924 fonts.</li> 8925 8926 <li>restore background color in ClearCurBackground(), omitted 8927 in changes for <a href="#xterm_223">patch #223</a> (report by 8928 Miroslav Lichvar).</li> 8929 8930 <li>correct logic for repainting double-width TrueType 8931 characters (prompted by test-case for Novell #246573).</li> 8932 8933 <li>add a check to avoid trying to repeat a multibyte character 8934 (report by Sami Farin).</li> 8935 8936 <li>modify parameter to <code>XftNameParse()</code> to select 8937 wide face-name as needed, to make <code>-fd</code> option work 8938 (patch by Mike Fabian, Novell #246573).</li> 8939 8940 <li>correct logic for mouse highlight tracking's abort 8941 sequence, broken in a restructuring modification from <a href= 8942 "#xterm_224">patch #224</a> (report by Thomas Wolff).</li> 8943 8944 <li>revert the simplification of blinking cursor, since that 8945 broke the xor'ing introduced in <a href="#xterm_193">patch 8946 #193</a> (report by Thomas Wolff).</li> 8947 </ul> 8948 8949 <h1><a name="xterm_224" id="xterm_224">Patch #224 - 2007/2/11</a></h1> 8950 8951 <ul> 8952 <li>simplify code for set/reset mode for blinking cursor (patch 8953 by Emanuele Giaquinta).</li> 8954 8955 <li>modify <code>dabbrev-expand()</code> to restart after the 8956 last match (patch by Emanuele Giaquinta).</li> 8957 8958 <li>add control sequences for enabling/disabling focus in/out 8959 event reporting (request by Bram Moolenaar).</li> 8960 8961 <li>improve startup performance of menus by adding resource 8962 setting <code>menuLocale</code> which can be set to override 8963 X's lengthy initialization of fontsets - which are seldom used 8964 for the <code>Xaw</code> popup menus (adapted from patch by 8965 Dave Coffin).</li> 8966 8967 <li>modify <code>do_precomposition()</code> function and 8968 <code>make-precompose.sh</code> to handle 21-bit codes vs the 8969 16-bit codes those were written for, and fix a few mis-sorted 8970 codes (patch by Thomas Wolff).</li> 8971 8972 <li>handle special case in <code>-cjk_width</code> which 8973 unexpectedly caused a character's width to change when a 8974 combining character (patch by Thomas Wolff)</li> 8975 8976 <li>fix build for GNU/KFreeBSD (Debian #40111).</li> 8977 8978 <li>consolidate GC creation/updating into a single module to 8979 reduce GC manipulation (prompted by Debian #389476, though a 8980 complete fix would involve optimizing the scrolling 8981 behavior).</li> 8982 8983 <li>fix ifdef of xtermCellWidth(), which broke for a case 8984 without TrueType and without wide-character support (report by 8985 Martin Pirker).</li> 8986 8987 <li>undo a comparison in 8988 <code>handle_translated_exposure</code> which did not work due 8989 to X server optimization. That caused the inner border to be 8990 repainted with unexpected colors when handling a repaint, e.g., 8991 after switching to/from another workspace (Debian #401726, 8992 Redhat Bugzilla #223027).</li> 8993 8994 <li>allow <code>-cr</code> option to override cursor color when 8995 <code>-ah</code> option is used (Debian #406502).</li> 8996 8997 <li>add a note in xterm's manpage explaining that the 8998 <code>-bw</code> (or <code>-w</code>) option is only used by 8999 the window manager, if at all (Debian #405043).</li> 9000 9001 <li>make <code>Selection</code> of <code>VT Fonts</code> 9002 work with <code>selectToClipboard</code> resource.</li> 9003 9004 <li>correct length calculation for <code>Selection</code> entry 9005 of <code>VT Fonts</code> menu, broken since it ignored the 9006 actual selection length since X11R4.</li> 9007 9008 <li>fixes for fontsize changes with <code>-fa</code> option 9009 (Redhat Bugzilla #222340).</li> 9010 </ul> 9011 9012 <h1><a name="xterm_223" id="xterm_223">Patch #223 - 9013 2006/11/30</a></h1> 9014 9015 <ul> 9016 <li>add <code>--enable-rectangles</code> configure option 9017 (request by Martin Pirker).</li> 9018 9019 <li>correct default value for <code>--with-symlink</code> 9020 configure option.</li> 9021 9022 <li>fixes configure script macros that use 9023 <code>$X_EXTRA_LIBS</code>.</li> 9024 9025 <li>modify configure script to provide support for pre-package 9026 config versions of Xft aka "FreeType".</li> 9027 9028 <li>add the Xaw scrollbar translations resource to the xterm 9029 manpage, add an example showing how to change the mouse button 9030 assignments (Debian #382225).</li> 9031 9032 <li>amend a change from <a href="#xterm_216">patch #216</a>, 9033 which omitted modifiers for control, meta, etc., if they were 9034 mixed with any other modifiers. The intent of the change was to 9035 avoid confusion with <code>XK_Mode_switch</code> and 9036 <code>XK_ISO_Level3_Shift</code>; the check is now done 9037 explicitly (report by Daniel Jacobowitz).</li> 9038 9039 <li>interpret a negative value for 9040 <code>modifyCursorKeys</code> or 9041 <code>modifyFunctionKeys</code> resources to disable the 9042 respective features (prompted by Novell #220728).</li> 9043 9044 <li>amend cell-width computation for FreeType from <a href= 9045 "#xterm_217">patch #217</a>, which did not work for VT100 9046 line-drawing characters (Debian #399638, Gentoo #147111).</li> 9047 9048 <li>amend a change from <a href="#xterm_216">patch #216</a>, 9049 which made alt-modifier on a cursor-key send a modifier 9050 parameter (Novell #220728).</li> 9051 9052 <li>correct an off-by-one that made DECCRA not work 9053 (report/patch by Martin Pirker).</li> 9054 9055 <li>revert an optimization in SGR_Foreground() and 9056 SGR_Background from <a href="#xterm_209">patch #209</a> (Debian 9057 #347722, analysis by Pierre Lombard).</li> 9058 9059 <li>fix for <code>boldMode</code> (Debian #347790, patch by Tim 9060 Pope).</li> 9061 9062 <li>amend fix for <code>-iconic</code> in <a href= 9063 "#xterm_208">patch #208</a>, which broke the positioning part 9064 of <code>-geom</code> with toolbar configuration.</li> 9065 9066 <li>fix to prevent indexing error in regular expressions (patch 9067 by Dennis Schneider).</li> 9068 9069 <li>fixes to make the <code>internalBorder</code> area not 9070 change color due to reverseVideo and/or related exposure 9071 events. The latter was a very old bug exposed in <a href= 9072 "#xterm_196">patch #196</a> (report by Neil Hoggarth, also 9073 Debian #397624).</li> 9074 </ul> 9075 9076 <h1><a name="xterm_222" id="xterm_222">Patch #222 - 9077 2006/10/17</a></h1> 9078 9079 <ul> 9080 <li>minor optimization for recoloring cursor via dynamic 9081 colors.</li> 9082 9083 <li>fix a bug caused by restructuring of tek4014 widget (report 9084 by Paul Schenkeveld)</li> 9085 </ul> 9086 9087 <h1><a name="xterm_221" id="xterm_221">Patch #221 - 2006/10/1</a></h1> 9088 9089 <ul> 9090 <li>fix for regular expressions: the code which converted the 9091 column offset within a line did not check properly for the end 9092 of a line, and if allowed to match the whole line, would select 9093 the beginning of the following line. If the following line were 9094 empty, in turn it would select from the next, etc. (report by 9095 Sean Reifschneider).</li> 9096 9097 <li>minor optimization of color allocation to avoid repainting 9098 the screen if the corresponding color had not been 9099 allocated.</li> 9100 9101 <li>fixes for vttests/256colors.pl (report by Egmont 9102 Koblinger).</li> 9103 9104 <li>add terminfo building block entries for modifiers of the 9105 6-key editing keypad.</li> 9106 9107 <li>fix for initialization of tek4014 which broke on QNX 9108 6.1</li> 9109 </ul> 9110 9111 <h1><a name="xterm_220" id="xterm_220">Patch #220 - 2006/9/10</a></h1> 9112 9113 <ul> 9114 <li>make "xterm -t -iconic" work as expected, i.e., start in 9115 tek4014 mode, but iconified.</li> 9116 </ul> 9117 9118 <h1><a name="xterm_219" id="xterm_219">Patch #219 - 2006/9/4</a></h1> 9119 9120 <ul> 9121 <li>some internal restructuring to separate data for vt100 and 9122 tek4014 widgets.</li> 9123 9124 <li>fix a few cases where form-events would be seen by the 9125 vt100 widget when built with the toolbar configuration.</li> 9126 </ul> 9127 9128 <h1><a name="xterm_218" id="xterm_218">Patch #218 - 2006/8/27</a></h1> 9129 9130 <ul> 9131 <li>change behavior when encountering an illegal character in a 9132 title string. Rather than reject the string, translate illegal 9133 characters into "?" and use the string (requested by Thomas 9134 Wolff).</li> 9135 9136 <li>improve checks for nonprinting characters in title strings 9137 (report by Samuel Thibault).</li> 9138 9139 <li>correct typo in menu labels, changing 9140 <code>print-redirect</code> to <code>print-redir</code>, making 9141 it follow the manpage and match the usage for the actions table 9142 (report by Samuel Thibault).</li> 9143 9144 <li>correct a typo that prevents building with some older 9145 systems such as Solaris 2.6 (report by Julian Bridle).</li> 9146 </ul> 9147 9148 <h1><a name="xterm_217" id="xterm_217">Patch #217 - 2006/8/20</a></h1> 9149 9150 <ul> 9151 <li>minor improvements to FreeType font layout and 9152 drawing.</li> 9153 9154 <li>add a check in the ptyInitialErase logic to ensure that the 9155 termcap was read (Redhat Bugzilla #201246).</li> 9156 9157 <li>limit changes for reverse-video from <a href= 9158 "#xterm_216">patch #216</a> to cases where the reverse-video 9159 command-line option is used (report by Zdenek Sekera).</li> 9160 9161 <li>correct bitmap-derived pointsizes for TrueType fonts; they 9162 should be proportional to the square root of the area of the 9163 bitmap fonts.</li> 9164 9165 <li>add resources to specify pointsize of TrueType fonts 9166 (request by Reuben Thomas).</li> 9167 9168 <li>improve install of terminfo by filtering out harmless 9169 messages related to extended capabilities. At the same time, 9170 use ncurses tic to compile the extended capabilities if 9171 possible (report by Zdenek Sekera).</li> 9172 9173 <li>update "xterm+pcfkeys" terminfo entry to correspond to 9174 <a href="#xterm_216">patch #216</a>.</li> 9175 </ul> 9176 9177 <h1><a name="xterm_216" id="xterm_216">Patch #216 - 2006/8/3</a></h1> 9178 9179 <ul> 9180 <li>improve handling of <code>ConfigureNotify</code> events by 9181 checking if there are further events in the queue which 9182 obsolete the current one (adapted from rxvt 2.7.5). Only the 9183 normal normal (non-toolbar) configuration is addressed in this 9184 patch.</li> 9185 9186 <li>several changes to terminfo: 9187 <ul> 9188 <li>incorporate some minor changes from ncurses to help 9189 keep these synchronized: 9190 <dl> 9191 <dt>2005-02-26</dt> 9192 9193 <dd>modify sgr/sgr0 in xterm-new to improve tgetent's 9194 derived "me".</dd> 9195 9196 <dt>2006-02-18</dt> 9197 9198 <dd>remove ncv flag from xterm-16color</dd> 9199 9200 <dt>2006-06-24</dt> 9201 9202 <dd>improve xterm-256color by combining the 16-color 9203 setaf/setab strings with SGR 48, and cancelling the 9204 setf/setb strings.</dd> 9205 </dl> 9206 </li> 9207 9208 <li>use extended function-key definitions for xterm-sun, 9209 xterm-sco entries.</li> 9210 9211 <li>add terminfo building-blocks corresponding to the 9212 <code>modifyFunctionKeys</code> and 9213 <code>modifyCursorKeys</code> resources.</li> 9214 </ul> 9215 </li> 9216 9217 <li>ifdef'd Sun function-key feature to make it optional, like 9218 HP and SCO.</li> 9219 9220 <li>extend table for termcap-query feature through F63, and 9221 updated tcapquery.pl to match.</li> 9222 9223 <li>modify logic for function-key input processing to allow 9224 function key numbers which are constructed by control- and 9225 shift-modifiers to extend beyond X's hardcoded limit of 9226 35.</li> 9227 9228 <li>add control sequence to set or reset the 9229 <code>eightBitInput</code> resource.</li> 9230 9231 <li>change default resource <code>modifyFunctionKeys</code> to 9232 2 to avoid sending SS3 with parameters (report by Kalle Olavi 9233 Niemitalo).</li> 9234 9235 <li>add control sequences for setting and resetting the values 9236 of the <code>modifyCursorKeys</code>, 9237 <code>modifyFunctionKeys</code> and 9238 <code>modifyOtherKeys</code> resources.</li> 9239 9240 <li>add <code>modifyFunctionKeys</code> resource like 9241 <code>modifyCursorKeys</code>. Setting this to zero allows one 9242 to use the control- and shift-modifiers to construct function 9243 key strings, for terminals using many function keys, e.g., for 9244 <code>xterm-sun</code> or <code>xterm-sco</code>.</li> 9245 9246 <li>modify screen responses and function-key logic to reduce 9247 the number of writes made, to make it less likely that an 9248 application would read only part of a function-key in a read 9249 operation (suggested by John E Urbanczyk).</li> 9250 9251 <li>add <code>combiningChars</code> resource, which allows the 9252 user to specify the maximum number of combining characters that 9253 xterm will store for each cell in wide-character mode (prompted 9254 by request by Markus Kuhn to increase the limit from 2).</li> 9255 9256 <li>improve logic in <code>metaSendsEscape</code> in case the 9257 Alt- and Meta-keys are mapped to different modifiers. That 9258 allows one to use the Alt-key for shifting in the 9259 <code>eightBitInput</code> and use a Meta-key modifier to 9260 prefix the result with an <code><ESC></code>.</li> 9261 9262 <li>improve <code>modifyCursorKeys</code> logic to prevent it 9263 from modifying codes where <code>eightBitInput</code> or 9264 <code>metaSendsEscape</code> are set (request by Dan 9265 Nicolaescu).</li> 9266 9267 <li>improve <code>modifyCursorKeys</code> logic to prevent it 9268 from changing the user input when other modifiers such as AltGr 9269 are used (report by Thomas Wolff).</li> 9270 9271 <li>extend <code>modifyCursorKeys</code> to include the numeric 9272 keypad when in application mode.</li> 9273 9274 <li>improve <code>-reverse</code> (<code>-rv</code>) option 9275 (patch by Jason Vas Dias, Redhat #189161).</li> 9276 9277 <li>workaround for color resources on Fedora-5 which made the 9278 toolbar colors inconsistent.</li> 9279 9280 <li>corrected calls used for <code>--disable-setuid</code> 9281 option, add debugging traces to help diagnose this area.</li> 9282 9283 <li>modify configure script to ensure that 9284 <code>USE_UTMP_SETGID</code> is defined only if the check for 9285 POSIX saved-ids succeeds, or corresponds to one of the BSD 9286 systems known to have a workable <code>setegid</code> 9287 function.</li> 9288 9289 <li>extend configure check for POSIX saved-ids to include BSD 9290 systems</li> 9291 9292 <li>modify CF_SYSV configure macro to work with gcc on HPUX 9293 10.20, whose broken <code><term.h></code> relies on 9294 including <code><termios.h></code>.</li> 9295 9296 <li>change order of setuid/setgid ifdef checks in Imakefile to 9297 make it simpler to produce a setgid install, allowing the 9298 latter to override the former (prompted by an XFree86 9299 commit).</li> 9300 9301 <li>adapt a fix for setgid support from subsequent XFree86 9302 changes (patch by Emanuele Giaquinta).</li> 9303 9304 <li>further improve setgid support (patches by Emanuele 9305 Giaquinta).</li> 9306 </ul> 9307 9308 <h1><a name="xterm_215" id="xterm_215">Patch #215 - 2006/6/19 - 9309 XFree86 4.6.99.2</a></h1> 9310 9311 <ul> 9312 <li>improve setgid support by exploiting the saved-ids feature 9313 on which it relies (patch by Emanuele Giaquinta).</li> 9314 9315 <li>make the <code>modifyOtherKeys</code> resource disabled by 9316 default since the intermediate setting altered some common 9317 bindings (report by Emanuele Giaquinta).</li> 9318 </ul> 9319 9320 <h1><a name="xterm_214" id="xterm_214">Patch #214 - 2006/6/18 - 9321 XFree86 4.6.99.2</a></h1> 9322 9323 <ul> 9324 <li>modify makefile rule for ctlseqs.txt to strip 9325 backspace/overstrikes, and add a copy of ctlseqs.txt to the 9326 source tarballs (requests by Bram Moolenaar, Emanuele 9327 Giaquinta).</li> 9328 9329 <li>add <code>modifyOtherKeys</code> resource, analogous to the 9330 <code>modifyCursorKeys</code> resource. This applies to keys 9331 that normally would transmit nothing when a given modifier is 9332 applied (request by Dan Nicolaescu).</li> 9333 9334 <li>add <code>default</code> to the acceptable values for the 9335 <code>keyboardType</code> resource, allowing the 9336 <code>-kt</code> command-line option to override app-defaults 9337 resource settings of <code>sunKeyboard</code>, etc.</li> 9338 9339 <li>correct ifdef's for <code>XkbBell()</code> which used the 9340 header file but not the corresponding function in <a href= 9341 "#xterm_175">patch #175</a> (report by Zach Beane).</li> 9342 9343 <li>add xterm manpage to the <code>--with-symlink</code> 9344 logic.</li> 9345 9346 <li>regenerated configure script to omit some debugging 9347 artifacts of the SIGWINCH test.</li> 9348 9349 <li>fix <code>install-man</code> rule in 9350 <code>Makefile.in</code> to avoid including the 9351 <code>$(DESTDIR)</code> value in substitutions made on the 9352 manpages (patch by Emanuele Giaquinta).</li> 9353 9354 <li>improved fix for cursor deallocation (Redhat #186935, patch 9355 by Jason Vas Dias).</li> 9356 9357 <li>improve checks for setuid/setgid operation to accommodate 9358 limited resource management in some kernels (Gentoo 9359 #193238).</li> 9360 9361 <li>update config.guess, config.sub</li> 9362 </ul> 9363 9364 <h1><a name="xterm_213" id="xterm_213">Patch #213 - 2006/4/30 - 9365 XFree86 4.5.99.905</a></h1> 9366 9367 <ul> 9368 <li>minor optimization to cell layout; will use that to 9369 simplify some logic and allow for more than two combining 9370 characters in another patch.</li> 9371 9372 <li>add <code>utf8Latin1</code> resource to make optional the 9373 feature from <a href="#xterm_209">patch #209</a> which allowed 9374 ISO-8859-1 fonts to be used in cases where a wide font was 9375 given. This would only work for the special case where the user 9376 normally used Latin-1 and wanted some wide characters (report 9377 by Rostislav Krasny).</li> 9378 9379 <li>add <code>utf8Title</code> resource to manpage (Novell 9380 #52655).</li> 9381 9382 <li>fix typo in table entry for <code>utf8Title</code> resource 9383 which made it treated as an integer rather than boolean (patch 9384 by Mike Fabian, Novell #52655).</li> 9385 </ul> 9386 9387 <h1><a name="xterm_212" id="xterm_212">Patch #212 - 2006/4/9 - 9388 XFree86 4.5.99.904</a></h1> 9389 9390 <ul> 9391 <li>improve description of <code>forceBoxChars</code> in 9392 manpage (discussion with Joe Wells).</li> 9393 9394 <li>set checkmark for "Select To Clipboard" menu entry on 9395 startup, from resource setting.</li> 9396 9397 <li>update manpage to note that 9398 <code>*customization:color</code> is not needed, though it is 9399 useful (Redhat #188034).</li> 9400 9401 <li>add underscore to sample pattern for URL in 9402 <code>XTerm.ad</code> (Redhat #188037).</li> 9403 9404 <li>modify install rule for manpage to use the configured 9405 app-defaults directory (Redhat #188031).</li> 9406 9407 <li>add checks in <code>releaseCursorGCs()</code> to ensure 9408 GC's are distinct, needed since memory leak changes for 9409 <a href="#xterm_208">patch #208</a> (Redhat #186935, patch by 9410 Jason Vas Dias).</li> 9411 9412 <li>modify <code>Imakefile</code> definitions to allow 9413 <code>imake</code> to set <code>InstallXtermSetGID</code>. Add 9414 symbol <code>InstGidFlags</code>.</li> 9415 9416 <li>add configure script check to ensure that SIGWINCH if 9417 defined even when headers undefine this as a side-effect of 9418 <code>_POSIX_C_SOURCE</code>, etc.</li> 9419 9420 <li>resync with XFree86 CVS 9421 <ul> 9422 <li>ifdef-out chmod of terminal device for OS/2 (XFree86 9423 #1663, Frank Giessler).</li> 9424 9425 <li>move new <code>Imakefile</code> chunk which defines 9426 <code>$(CSGIDFLAGS)</code> before DEFINES, e.g., for IRIX64 9427 (Marc La France).</li> 9428 </ul> 9429 </li> 9430 </ul> 9431 9432 <h1><a name="xterm_211" id="xterm_211">Patch #211 - 2006/3/19 - 9433 XFree86 4.5.99.902</a></h1> 9434 9435 <ul> 9436 <li>modify prefix/suffix transformation in makefile to make 9437 <code>uxterm</code> install properly on Cygwin.</li> 9438 9439 <li>restore the sizeof-comparison for <code>struct 9440 lastlog</code> added in <a href="#xterm_208">patch #208</a>, 9441 rendered (mostly) obsolete in <a href="#xterm_210">patch 9442 #210</a>, since an imake configuration can still turn that code 9443 on (prompted by comment by David Dawes).</li> 9444 9445 <li>remove feature for <code>FreeBSDArchitecture</code> from 9446 <code>Imakefile</code> which would install xterm using the 9447 <code>utmp</code> group since a standard FreeBSD system has no 9448 such group, though it would support this configuration. FreeBSD 9449 packager uses the <code>configure</code> script, which can make 9450 the appropriate check (prompted by comment by David 9451 Dawes).</li> 9452 9453 <li>fixes for gcc redefinition warnings when built using imake 9454 (reports by David Dawes, Marc La France).</li> 9455 </ul> 9456 9457 <h1><a name="xterm_210" id="xterm_210">Patch #210 - 2006/3/12 - 9458 XFree86 4.5.99.902</a></h1> 9459 9460 <ul> 9461 <li>add configure check for workaround in <a href= 9462 "#xterm_208">patch #208</a> for Solaris' inconsistent support 9463 for struct lastlog to quiet compiler warnings (prompted by 9464 David Dawes commit message for XFree86).</li> 9465 9466 <li>fixes for BASE64 selection manipulation, e.g., ensure that 9467 the string terminator is written after cut-buffer data (report 9468 by Joe Allen).</li> 9469 9470 <li>add vttests/paste64.pl script to test experimental option 9471 for setting/getting selection data.</li> 9472 9473 <li>add some error-checking in fontutils.c (prompted by David 9474 Dawes commit message for XFree86).</li> 9475 9476 <li>change xterm manpage to show the actual color resource 9477 names <code>XtDefaultForeground</code> and 9478 <code>XtDefaultBackground</code> rather than black and white 9479 (prompted by discussion with Emanuele Giaquinta).</li> 9480 9481 <li>add <code>utf8Title</code> resource and menu entry, 9482 allowing the user to control whether title strings are 9483 interpreted as ISO-8859-1 or UTF-8 encoding (Novell #52655, 9484 Novell #113206).</li> 9485 9486 <li>change order of ifdef's for utempter versus platforms in 9487 <code>Imakefile</code> to ensure a proper value for 9488 <code>InstallXtermSetGID</code> (prompted by Marc La France 9489 commit message for XFree86).</li> 9490 9491 <li>update the cursor GCs when menu entry for reverse video is 9492 toggled. (Redhat #183993).</li> 9493 9494 <li>a memory-leak fix for <code>set_cursor_gcs()</code> in 9495 <a href="#xterm_208">patch #208</a> broke the <code>-cm</code> 9496 option (Redhat #182382).</li> 9497 </ul> 9498 9499 <h1><a name="xterm_209" id="xterm_209">Patch #209 - 2006/2/12 - 9500 XFree86 4.5.99.22</a></h1> 9501 9502 <ul> 9503 <li>remove <code>setf</code> and <code>setb</code> from 9504 <code>xterm-256color</code> terminfo entry to avoid issues with 9505 applications that ignore the ANSI strings (report by Emanuele 9506 Giaquinta).</li> 9507 9508 <li>remove obsolete references to "Xorg" to avoid confusion 9509 with "X.org" (prompted by David Dawes commit message for 9510 XFree86).</li> 9511 9512 <li>improve initial layout performance for the toolbar 9513 configuration by precalculating the height of the toolbar.</li> 9514 9515 <li>remove menu entry for "Enable Curses Emulation" (to make 9516 room for "Select To Clipboard").</li> 9517 9518 <li>add resource <code>selectToClipboard</code>, action 9519 <code>set-select</code> and a menu entry to allow users to 9520 switch between PRIMARY and CLIPBOARD for select/paste.</li> 9521 9522 <li>allow cursor to have the same color as foreground (text), 9523 since it is rendered as reverse (Debian #350664).</li> 9524 9525 <li>amend change for loading <code>utf8Fonts</code> resource 9526 from <a href="#xterm_204">patch #204</a> to allow an ISO-8859-1 9527 "normal" font to be combined with an ISO-10646 font if the 9528 latter is given via the <code>-fw</code> option or its 9529 corresponding resource value (prompted by comment in Novell 9530 #49305).</li> 9531 9532 <li>add <code>TIOCSCTTY</code> <code>ioctl()</code> ifdef'd for 9533 <code>__GNU__</code> to set the controlling terminal (Debian 9534 #348457).</li> 9535 9536 <li>add configure option <code>--disable-leaks</code>.</li> 9537 9538 <li>add a check in <code>Bell</code> to ensure that the VT100 9539 widget is realized, since it may be called by 9540 <code>xtermLoadFont</code> given an incorrect font resource 9541 (Redhat #180450).</li> 9542 9543 <li>improve initialization of wide-bold font by not using the 9544 derived value when it happens to have few glyphs (report by 9545 Mboso Sampson).</li> 9546 9547 <li>improve dynamic colors by not repainting the screen if only 9548 the cursor color changes (request by Bram Moolenaar).</li> 9549 9550 <li>fix menu initialization for tek4014 window broken in 9551 <a href="#xterm_206">patch #206</a>.</li> 9552 9553 <li>typo in manpage (Debian #351425).</li> 9554 9555 <li>correct loop logic in <code>dotext</code> to prevent an 9556 infinite loop if a wide character was just at the right margin 9557 when wrapping was disabled (report by Serge van den Boom).</li> 9558 9559 <li>initialize the saved-cursor data so a restore-cursor 9560 operation without a preceding save-cursor operation will not 9561 modify the foreground color.</li> 9562 9563 <li>add a new selection feature: regular expressions, and new 9564 resources which specify what happens on multiple mouse clicks: 9565 <code>on2Clicks</code>, <code>on3Clicks</code>, 9566 <code>on4Clicks</code> and <code>on5Clicks</code>.</li> 9567 9568 <li>revert the <code>XTerm.ad</code> change from <a href= 9569 "#xterm_208">patch #208</a> (Debian #348384).</li> 9570 9571 <li>fixes for the print-window to make it handle combining 9572 characters in UTF-8 mode.</li> 9573 9574 <li>add check to ensure that double-clicking to extend 9575 selection will not extend it into the scrollback area. This 9576 still allows users to scroll back and select text (Debian 9577 #347415).</li> 9578 9579 <li>add configure option <code>--with-tty-group</code> to help 9580 work around deficiencies in packager's build environment 9581 (Debian #349142).</li> 9582 9583 <li>fix typo in configure script option 9584 <code>--disable-narrowproto</code> (report by David 9585 Martínez Moreno).</li> 9586 9587 <li>amend CF_X_FREETYPE changes for <code>pkg-config</code> 9588 check to ensure that <code>Xft</code> is known to that tool 9589 (report and patch by Emanuele Giaquinta).</li> 9590 9591 <li>add an ifdef to allow <code>./configure 9592 --disable-active-icon</code> to work, broken by new code for 9593 testing memory leaks in <a href="#xterm_208">patch #208</a> 9594 (report by Brian Lindholm).</li> 9595 </ul> 9596 9597 <h1><a name="xterm_208" id="xterm_208">Patch #208 - 2006/1/3 - 9598 XFree86 4.5.99.19</a></h1> 9599 9600 <ul> 9601 <li>add <code>charClass</code> resource to 9602 <code>XTerm.ad</code> and <code>UXTerm.ad</code> which 9603 simplifies selecting URLs (prompted by Kirill Ponomarew).</li> 9604 9605 <li>modify install rule for <code>uxterm</code> to account for 9606 the <code>--program-prefix</code>, etc., options by invoking 9607 the transformed name of xterm rather than simply "xterm".</li> 9608 9609 <li>modify configure <code>--with-app-defaults</code> option to 9610 allow <code>--without-app-defaults</code>.</li> 9611 9612 <li>add configure <code>--with-symlink</code> option to make it 9613 simpler to install successive versions of <code>xterm</code> 9614 renamed using the <code>--program-prefix</code>, etc., options 9615 with a symbolic link pointing to the most recent.</li> 9616 9617 <li>make <code>-iconic</code> option work with toolbar 9618 configuration (Gentoo #113604).</li> 9619 9620 <li>suppress <code>lastlog</code> feature for 64-bit Solaris 9621 configuration since that platform provides only a 32-bit 9622 interface (report by Peter Bray).</li> 9623 9624 <li>fix memory reallocation for the "UTF-8" menu entry when 9625 xterm is started using the <code>+u8</code> option (reported by 9626 Jan Willem Stumpel).</li> 9627 9628 <li>add a configure check for the actual path of 9629 <code>luit</code>, to work around broken <code>imake</code> 9630 configurations.</li> 9631 9632 <li>add a configure check for <code>pkg-config</code> (Redhat 9633 Bugzilla #173541).</li> 9634 9635 <li>modify install-rule for <code>uxterm</code> to omit 9636 executable suffix, e.g., for Cygwin.</li> 9637 9638 <li>modify <code>sinstall.sh</code> to work around quirks in 9639 Cygwin configuration.</li> 9640 </ul> 9641 9642 <h1><a name="xterm_207" id="xterm_207">Patch #207 - 2005/11/13 - 9643 XFree86 4.5.99.16</a></h1> 9644 9645 <ul> 9646 <li>enable <code>lastlogx</code> support for NetBSD (was added, 9647 but not enabled in <a href="#xterm_186">patch #186</a>).</li> 9648 9649 <li>work around broken <code>lastlog.h</code> in glibc 2.3.5, 9650 which includes <code>utmp.h</code>.</li> 9651 9652 <li>revert part of recent XFree86 Imakefile change, restoring 9653 the <code>-I.</code> needed for <code>xmkmf</code> builds of 9654 xterm (XFree86 Bugzilla #1633, reports by Alexander Pohoyda, 9655 Matthieu Herrb).</li> 9656 9657 <li>change compiled-in default for <code>printerCommand</code> 9658 resource to an empty string. People who want to use the printer 9659 should be able to read the manual (Debian #311490).</li> 9660 9661 <li>modify <code>Imakefile</code> to work around old problems 9662 in <code>imake</code> configuration to allow test-builds using 9663 <code>xmkmf</code> on Linux. (This was not noticed since 9664 several releases had broken definitions relating to Xft which 9665 were harder to work around).</li> 9666 9667 <li>link <code>resize</code> for SCO platforms (Kean 9668 Johnston).</li> 9669 </ul> 9670 9671 <h1><a name="xterm_206" id="xterm_206">Patch #206 - 2005/11/3 - 9672 XFree86 4.5.99.15</a></h1> 9673 9674 <ul> 9675 <li>add configure <code>--with-app-defaults</code> option to 9676 allow app-defaults directory for install-rules to be 9677 customized.</li> 9678 9679 <li>remove default translations for 9680 <code>dabbrev-expand()</code> due to conflicts with existing 9681 keyboard arrangements.</li> 9682 9683 <li>remove redundant check for <code>_NET_WM_PID</code> (report 9684 by Emanuele Giaquinta).</li> 9685 9686 <li>set icon border width explicitly to work around fvwm 9687 problem with active icon resizing (report by Steve Morris, 9688 analysis by Dominik Vogt).</li> 9689 9690 <li>modify resource files to make the font-resources a little 9691 more specific, e.g., changing "*VT100*" to "*VT100.", to make 9692 the distinction between VT100.font and VT100.utf8Fonts.font 9693 sharper, in case a packager modifies one of those.</li> 9694 9695 <li>expanded comments in <code>UXTerm.ad</code> regarding the 9696 font resources (Debian #319179).</li> 9697 9698 <li>add <code>--enable-narrowproto</code> configure option to 9699 accommodate X.org "modular" build (report by Stephan Hermann, 9700 Gentoo #17220).</li> 9701 9702 <li>fix typo in xterm.man description of <code>+wf</code> 9703 (patch by Tobias Stoeckmann).</li> 9704 9705 <li>add <code>scrollBarBorder</code> resource (request by Floyd 9706 L Davidson).</li> 9707 9708 <li>modify <code>xterm-new</code> terminfo entry to use 9709 capabilities for shifted scroll forward/reverse as shifted 9710 cursor up/down.</li> 9711 9712 <li>correct updating of checkmark for toolbar entry in popup 9713 menu (report by Emanuele Giaquinta).</li> 9714 9715 <li>fix ifdef's to allow compiling with toolbar and without 9716 tek4014 (patch by Emanuele Giaquinta).</li> 9717 9718 <li>use <code>openpty()</code> for Darwin port (patch by 9719 Emanuele Giaquinta).</li> 9720 9721 <li>fix Gentoo #90697 a different way, postponing the logic in 9722 <code>SetupToolbar</code> until the toolbar is actually needed, 9723 i.e., the <code>+tb</code> option is handled as expected.</li> 9724 9725 <li>revert fix made in <a href="#xterm_203">patch #203</a> for 9726 Gentoo #90697. That introduced a problem with the control mouse 9727 click-popups, while most of the performance problems can be 9728 resolved by restricting the menu fonts (report by Emanuele 9729 Giaquinta).</li> 9730 9731 <li>fix a file-descriptor leak when calling 9732 <code>openpty()</code> (OpenBSD system/4561).</li> 9733 9734 <li>make a special case of resizing work like vt100: a hard 9735 reset also resets the 132/80 mode. The code to support this was 9736 present since X11R5, but not used because the corresponding 9737 initial state of the <code>-132</code> option was not 9738 saved.</li> 9739 9740 <li>restore window manager hints after 9741 <code>XtMakeResizeRequest()</code> calls. One instance from 9742 <a href="#xterm_205">patch #205</a> resulted in the window 9743 manager displaying pixels rather than than characters after 9744 selecting a different font size (FreeBSD ports/87424).</li> 9745 9746 <li>remove special case for Darwin in CF_XOPEN_SOURCE (Emanuele 9747 Giaquinta).</li> 9748 9749 <li>modify parsing of control sequence <code>CSI T</code> 9750 to allow scroll-down to be sent while mouse tracking is enabled 9751 (request by D Hugh Redelmeier).</li> 9752 9753 <li>correct termcap "me" (mode-end) string so it does not 9754 modify the alternate character set (report by Andrey 9755 Chernov).</li> 9756 9757 <li>correct size-comparison in HandleInterpret() broken in 9758 changes from <a href="#xterm_201">patch #201</a> to allocate 9759 input buffer (Debian #334317).</li> 9760 9761 <li>amend adjustments for scrollbar layout from <a href= 9762 "#xterm_204">patch #204</a> to make this apply only to the 9763 toolbar configuration. In the non-toolbar configuration, the 9764 resulting scrollbar was shifted by its borderwidth (report by 9765 Matthieu Herrb).</li> 9766 9767 <li>add select-cursor-extend() action.</li> 9768 9769 <li>fix some broken href's in xterm.log.html, and typo in the 9770 INSTALL file (report/patch by David Martínez 9771 Moreno).</li> 9772 9773 <li>modify <code>Imakefile</code> to use setgid mode for 9774 installing with Linux, OpenBSD and FreeBSD.</li> 9775 9776 <li>add configure --with-setuid and --with-reference options to 9777 allow packagers more flexibility in customizing install 9778 permissions.</li> 9779 9780 <li>generalize and make optional (configure --with-utmp-setgid) 9781 the change made for XFree86 Bugzilla #878 in <a href= 9782 "#xterm_205">patch #205</a> (FreeBSD bug report 9783 #ports/86663).</li> 9784 </ul> 9785 9786 <h1><a name="xterm_205" id="xterm_205">Patch #205 - 2005/9/18 - 9787 XFree86 4.5.99.12</a></h1> 9788 9789 <ul> 9790 <li>correct a typo in CF_FUNC_TGETENT introduced in <a href= 9791 "#xterm_198">patch #198</a> fix for Gentoo #69926.</li> 9792 9793 <li>implement logic in termcap query to process multiple 9794 parameters as documented in ctlseqs.ms</li> 9795 9796 <li>fix buffer size used for termcap query, which was not long 9797 enough for the terminfo "colors" name (patch by Bradd W. 9798 Szonye).</li> 9799 9800 <li>add configure option --enable-readline-mouse, which turns 9801 on the experimental OPT_READLINE code (patch by Ilya 9802 Zakharevich).</li> 9803 9804 <li>for FreeBSD, drop setuid privileges after startup (XFree86 9805 Bugzilla #878, report/patch by Alexander Pohoyda)</li> 9806 9807 <li>add menu entry (alt-esc) and corresponding action 9808 (alt-sends-esc) to toggle the <code>eightBitInput</code> 9809 resource setting.</li> 9810 9811 <li>generate configure script with autoconf 2.52 (patched) to 9812 use the feature therein which forces the script's locale to 9813 POSIX (Gentoo Bugzilla #105369).</li> 9814 9815 <li>modify computation of rows/columns on resize to avoid 9816 extending beyond the given limits, e.g., if resizing in 9817 response to a "maximize" in Gnome or KDE which do not use the 9818 window manager hints for this case (Debian #289123, Novell 9819 #61153).</li> 9820 9821 <li>modifications to work with z/OS 1.4 (Paul Giordano).</li> 9822 9823 <li>improve error-reporting when chown/chmod of the 9824 pseudo-terminal fails, e.g., if a copy of xterm which was 9825 designed to work with old-style pseudo-terminals is not 9826 installed setuid or setgid (report by Jeremy C. Reed).</li> 9827 9828 <li>patches from Emanuele Giaquinta: 9829 <ul> 9830 <li>ctlseqs.ms says that primary and secondary DA accept a 9831 nonzero parameter, which is incorrect. Also modify code to 9832 agree with this.</li> 9833 9834 <li>correct a comment in 88colres.pl</li> 9835 9836 <li>ctlseqs.ms says that the DEC Set/Reset control 9837 sequences for the backarrow key make it send DEL/BS, 9838 respectively, while it's the opposite.</li> 9839 9840 <li>update the menu entries for the metaSendsEscape, 9841 deleteIsDEL and numLock resources when changing them with 9842 the corresponding DEC Set/Reset control sequences.</li> 9843 </ul> 9844 </li> 9845 9846 <li>fixes for configure script: 9847 <ul> 9848 <li>add special case for QNX, defining _QNX_SOURCE.</li> 9849 9850 <li>check for preprocessors which do not perform -U and -D 9851 options in the given order.</li> 9852 9853 <li>improve macro to determine gcc version</li> 9854 9855 <li>improve check for Intel compiler and related warning 9856 options</li> 9857 </ul> 9858 </li> 9859 9860 <li>update config.guess, config.sub</li> 9861 9862 <li>improve fix from <a href="#xterm_198">patch #198</a> for 9863 <code>Cleanup()</code> by ensuring it is not called from the 9864 SIGCHLD handler (patch by Todd Miller (OpenBSD CVS)).</li> 9865 9866 <li>eliminate a retry for a better-matching bold font, to work 9867 around recent font server changes.</li> 9868 9869 <li>fixes for Novell #113277: 9870 <ul> 9871 <li>specify weight for wide font which may be derived from 9872 normal fontname.</li> 9873 9874 <li>cache the derived wide- and widebolt-fontnames.</li> 9875 </ul> 9876 </li> 9877 9878 <li>workaround for Gentoo Bugzilla #100728.</li> 9879 9880 <li>add menubar's border width to layout computation. Normally 9881 this is zero, but patterns such as 9882 <code>XTerm*borderWidth:1</code> would give poor layout for the 9883 toolbar configuration.</li> 9884 </ul> 9885 9886 <h1><a name="xterm_204" id="xterm_204">Patch #204 - 2005/8/4 - 9887 XFree86 4.5.99.9</a></h1> 9888 9889 <ul> 9890 <li>work around quirk in shell which allowed user to "run" 9891 uxterm script when there was no UTF-8 locale installed by 9892 entering "sh -x uxterm". Also popup an xmessage to show the 9893 problem for users who run this via a GUI (Debian #318513).</li> 9894 9895 <li>disallow changes to fonts, toolbar and scrollbar when the 9896 vt100 window is iconified, to simplify management of the active 9897 icon.</li> 9898 9899 <li>fixes to make <code>-geom</code> option work properly with 9900 the toolbar configuration (Gentoo #90717, Gentoo #91967).</li> 9901 9902 <li>minor improvements to scrollbar layout: ensure that the 9903 scrollbar border is zero if the vt100 border is zero.</li> 9904 9905 <li>improve initialization due to <code>utf8</code> resource by 9906 loading the <code>utf8Fonts</code> resource in the case where 9907 <code>locale</code> resource is false. Also in this case, do 9908 not disable switching UTF-8 mode on/off.</li> 9909 9910 <li>minor optimization of TrueType font-loading, loads italic 9911 font only when needed.</li> 9912 9913 <li>correct variable used to store temporary result from lookup 9914 of bold font, when initializing the wide-bold-font data and no 9915 immediate match is found by asking for a bold variant of the 9916 wide-font. The result was to use overstriking rather than the 9917 actual bold font (Debian #318162, patch by Eugene Konev).</li> 9918 9919 <li>add checks to ensure vt100 widget is realized when it might 9920 be updated via actions handled from a tek4014-only 9921 configuration.</li> 9922 </ul> 9923 9924 <h1><a name="xterm_203" id="xterm_203">Patch #203 - 2005/7/6 - 9925 XFree86 4.5.99.7</a></h1> 9926 9927 <ul> 9928 <li>modify initialization of <code>allowSendEvents</code> and 9929 <code>allowWindowOps</code> to prevent modification with the 9930 editres protocol.</li> 9931 9932 <li>fix compiler warning for NetBSD by including util.h in 9933 main.c (XFree86 Bugzilla #1596).</li> 9934 9935 <li>fix to build on Darwin 8.x, which no longer provides 9936 <code>setpgrp()</code> (patch by Min Sik Kim).</li> 9937 9938 <li>adapted fixes for Legend (SCO) from diffs attached to 9939 Freedesktop.Org Bugzilla #3180.</li> 9940 9941 <li>fix typo in xterm manpage description of <code>-ls</code> 9942 option (Freedesktop.Org Bugzilla #3543).</li> 9943 9944 <li>add support for interpreting the underline attribute as an 9945 italic font in Xft mode (patch by Chuck Blake).</li> 9946 9947 <li>improve initialization of toolbar so that individual 9948 pulldown menus are initialized on demand, as they are in the 9949 scenario where they are invoked as popup menus (Gentoo Bugzilla 9950 #90697).</li> 9951 9952 <li>fix logic in <code>find_utmp</code>, which did not reset 9953 result in <code>getutid()</code>, causing an infinite loop in 9954 some conditions (report by Emil Mikulic).</li> 9955 9956 <li>set the <code>_NET_WM_PID</code> property (Gentoo Bugzilla 9957 #91008).</li> 9958 9959 <li>modify ifdef's in ptyx.h and xterm_io.h to build with 9960 DragonFly (patch by Jeroen Ruigrok).</li> 9961 9962 <li>change default values for <code>minBufSize</code> and 9963 <code>maxBufSize</code> to 4096 and 32768 respectively so that 9964 the initial read request will match the value from before 9965 changes to use <code>sched_yield()</code>.</li> 9966 9967 <li>make paste of UTF-8 faster for Western character sets by 9968 checking range of incoming data (patch by Joe Allen).</li> 9969 9970 <li>add experimental option to allow applications to get or set 9971 the selection data as a BASE64 string (adapted from patch by 9972 Joe Allen).</li> 9973 9974 <li>fix an off-by-one error parsing <code>-S/nn</code> option 9975 (Debian #311438, report/fix by Peter Chubb).</li> 9976 9977 <li>fix an initialization bug from <a href="#xterm_201">patch 9978 #201</a> that broke logging (report by Rodney Thayer).</li> 9979 9980 <li>amend change to command-line processing in <a href= 9981 "#xterm_201">patch #201</a> to avoid conflict with 9982 <code>-e</code> option (report by Servatius Brandt).</li> 9983 9984 <li>suppress configure check for <code>_XOPEN_SOURCE</code> on 9985 darwin.</li> 9986 9987 <li>update config.guess, config.sub</li> 9988 </ul> 9989 9990 <h1><a name="xterm_202" id="xterm_202">Patch #202 - 2005/5/2 - 9991 XFree86 4.5.99.3</a></h1> 9992 9993 <ul> 9994 <li>add extended shift- and control-modifier cursor keys to 9995 "xterm+pcfkeys" terminfo entry to correspond to ncurses 9996 20050430 patch.</li> 9997 9998 <li>fix a rare case where text would be written with the wrong 9999 colors because output of scrolled text would reset the colors 10000 and the new text would be written with the same colors 10001 (report/testcase by Thomas Glanzmann).</li> 10002 10003 <li>rename <code>$CMD</code> variable in <code>plink.sh</code> 10004 because it is a reserved symbol in bash 3.00.16 (report by Ted 10005 Taylor).</li> 10006 10007 <li>add environment variables <code>$XTERM_SHELL</code> and 10008 <code>$XTERM_VERSION</code> (request by Zdenek Sekera).</li> 10009 10010 <li>corrected workaround for background color of menubar, which 10011 gave a too-broad expression, coloring the background of the 10012 VT100 widget unless overridden by another resource 10013 setting.</li> 10014 10015 <li>correct an error in the logic which decides when 10016 <code>sched_yield()</code> is run; it would occasionally hang 10017 when contending with other pseudo-terminal applications such as 10018 screen (report by Kirill Ponomarew).</li> 10019 10020 <li>modify initialization to decide whether to default to 10021 built-in <code>wcwidth()</code> versus system's version based 10022 on the starting locale and whether the system's version is poor 10023 quality (suggested by Bram Moolenaar).</li> 10024 10025 <li>update table for <code>mk_width()</code> from UnicodeData 10026 4.1.0 using Markus Kuhn's <code>uniset</code> script.</li> 10027 </ul> 10028 10029 <h1><a name="xterm_201" id="xterm_201">Patch #201 - 2005/4/21 - 10030 XFree86 4.5.99.2</a></h1> 10031 10032 <ul> 10033 <li>improve resource files to show how the menubar and popup 10034 menus can be colored (prompted by report by Joe Wells).</li> 10035 10036 <li>modify parsing of OSC (and SOS, etc), strings so their 10037 contents are not interpreted as UTF-8. This allows non-ASCII 10038 title strings to be set, provided that the window manager 10039 complies (report by Thomas Wolff).</li> 10040 10041 <li>improved some of the built-in line-drawing glyphs.</li> 10042 10043 <li>correct color of "box" character drawn for line-drawing 10044 glyph 1 (report by Nicolas George).</li> 10045 10046 <li>improve behavior when switching to UTF-8 mode after startup 10047 so xterm will check if the current fonts are already wide 10048 (ISO10646-1). If they are not, xterm will use the 10049 <code>utf8Fonts</code> subresource to load appropriate fonts 10050 (request by Bram Moolenaar).</li> 10051 10052 <li>modify logic for setting title-string so it applies to the 10053 current widget rather than the vt100 widget.</li> 10054 10055 <li>modify initialization for wide-bold fontname, to search for 10056 one if none is given (report by Michael Schroeder).</li> 10057 10058 <li>add resource <code>mkWidth</code> and command-line option 10059 <code>-mk_width</code> to control whether xterm uses the 10060 built-in version of wcwidth().</li> 10061 10062 <li>add resource settings for minimum/maximum input buffer 10063 size, and call to <code>sched_yield</code> to improve 10064 performance with newer Linux kernels (adapted from patch by 10065 Nicolas George).</li> 10066 10067 <li>correct computation of width for wide characters with the 10068 invisible attribute (report by Thomas Wolff).</li> 10069 10070 <li>modify interaction between <code>+u8</code> and 10071 <code>locale</code> resource to allow the command-line option 10072 to override the resource (requested by Thomas Wolff).</li> 10073 10074 <li>add a limit check for scrolling margins in a one-line 10075 screen, overlooked in fixes for <a href="#xterm_198">patch 10076 #198</a> (Debian #297430).</li> 10077 10078 <li>correct treatment of <code>iconBorderWidth</code> for 10079 resizing an active-icon, and its description in manpage (Debian 10080 #296592).</li> 10081 10082 <li>modify configure script <code>--disable-imake</code> to use 10083 the script's definitions anyway if it cannot detect imake 10084 (prompted by FreeBSD bug 77408).</li> 10085 10086 <li>ignore error in the I/O initialization that tries to set 10087 the tty to 7-bit input for the case where 10088 <code>eightBitInput</code> resource is false (Debian 10089 #298551).</li> 10090 10091 <li>modify command-processing to accept an optional parameter 10092 that tells xterm which shell program to use (request by Zdenek 10093 Sekera).</li> 10094 10095 <li>add simpler resource <code>keyboardType</code> which, when 10096 set, overrides the individual keyboard-type resources and 10097 eliminates the possibility of conflict between them.</li> 10098 10099 <li>add initialization for <code>scoFunctionKeys</code> 10100 resource (report by Rick K).</li> 10101 10102 <li>correct logic of <code>ReallocateBufOffsets()</code> which 10103 did not copy the content of the old screen buffer to the proper 10104 location, making a repaint clear after switching to 10105 wide-character mode (report by Bram Moolenaar):</li> 10106 10107 <li>implement the remaining pieces to make xterm allocate cells 10108 for wide-characters when the "UTF-8" menu entry is selected. 10109 Also, load the UTF-8 font when that menu entry is selected, or 10110 the escape sequence for UTF-8 mode is received (report by Bram 10111 Moolenaar):</li> 10112 10113 <li>add command-line options (<code>-tb</code>, 10114 <code>+tb</code>) and resource <code>toolBar</code> to allow 10115 menu/toolbar to disabled or enabled at startup (prompted by 10116 reports by Joe Wells).</li> 10117 10118 <li>correct typo in configure script's --enable-dec-locator 10119 option (report by Bram Moolenaar).</li> 10120 </ul> 10121 10122 <h1><a name="xterm_200" id="xterm_200">Patch #200 - 2005/2/6 - 10123 XFree86 4.4.99.23</a></h1> 10124 10125 <ul> 10126 <li>increase color pairs value for xterm-256color and 10127 xterm-88color to match ncurses, which has an experimental 10128 option to support this.</li> 10129 10130 <li>modify ifdef's to make AIX use termios rather than termio; 10131 the struct sizes for the two were not the same.</li> 10132 10133 <li>improve CF_WITH_IMAKE_CFLAGS configure macro script for 10134 OSMAJORVERSION and OSMINORVERSION values, e.g., for Tru64 and 10135 AIX.</li> 10136 10137 <li>modify ifdef to define USE_POSIX_TERMIOS for Darwin (patch 10138 by Min Sik Kim).</li> 10139 10140 <li>modify find_utmp() to initialize the whole utmpx struct 10141 (except ut_id), since that is needed for OSF1 4.0D to prevent 10142 an infinite loop on exit.</li> 10143 10144 <li>add configure check before adding -D_POSIX_SOURCE since 10145 some platforms predefine it, e.g., cygwin.</li> 10146 10147 <li>add simplified sed expressions in CF_IMAKE_CFLAGS configure 10148 script macro to ensure value for PROJECTROOT is quoted on 10149 Solaris, i.e., when nested <code>\(</code> and <code>\)</code> 10150 are not interpreted correctly.</li> 10151 10152 <li>correct DEC rectangle operations to reset state after 10153 completing the operations.</li> 10154 10155 <li>modify CASE_ST handling in charproc.c to ensure that the 10156 parse state is reset even if xterm is not currently processing 10157 an OSC or other string (patch by Johnny Billquist forwarded by 10158 Matthias Scheler, NetBSD xsrc/29003).</li> 10159 10160 <li>fix OS/2 build for innotek_libc (patch by David Yeo).</li> 10161 10162 <li>fix a regression from <a href="#xterm_197">patch #197</a> 10163 fix for Debian #277832 which disowned the selection if it was 10164 scrolled, e.g., by the user pressing return at the bottom of 10165 the screen (Debian #291787).</li> 10166 10167 <li>move the warning/exit for missing $DISPLAY into the error 10168 handler in case <code>-display</code> is given, and the connect 10169 fails for some other reason.</li> 10170 </ul> 10171 10172 <h1><a name="xterm_199" id="xterm_199">Patch #199 - 2005/1/17 - 10173 XFree86 4.4.99.22</a></h1> 10174 10175 <ul> 10176 <li>instead of setting <code>$DISPLAY</code>, check for the 10177 unset variable and warn/exit on this condition (comments by H 10178 Merijn Brand and Bernhard R Link).</li> 10179 10180 <li>fix a typo in Imakefile from <a href="#xterm_198">patch 10181 #198</a> (reports/patches by Stefan Dirsch, Mike Castle).</li> 10182 </ul> 10183 10184 <h1><a name="xterm_198" id="xterm_198">Patch #198 - 2005/1/13 - 10185 XFree86 4.4.99.21</a></h1> 10186 10187 <ul> 10188 <li>set <code>$DISPLAY</code> to ":0" if it is not set.</li> 10189 10190 <li>add <code>utmpDisplayId</code> resource to allow users to 10191 control whether the display identifier (display number and 10192 screen number) are retained in the connection information 10193 recorded in utmp (discussion with Edoardo Tirtarahardja).</li> 10194 10195 <li>add <code>bellOnReset</code> resource to allow users to 10196 disable bell which sounds on hard reset since <a href= 10197 "#xterm_183">patch #183</a> changes to DECSCL (discussion with 10198 Danek Duvall).</li> 10199 10200 <li>improve <code>$WINDOWID</code> for configuration with 10201 toolbar by making it refer to the top-level shell rather than 10202 the parent of the current window. For that case, the parent is 10203 a form widget, which does not have a name, which made the 10204 <code>$WINDOWID</code> not very useful as a parameter for 10205 <code>xwininfo</code> (suggested by Dave Bodenstab).</li> 10206 10207 <li>fix a typo in WhichVFont() macro from <a href= 10208 "#xterm_197">patch #197</a> changes which broke the 10209 --disable-active-icon configuration (report by Ralf S. 10210 Engelschall).</li> 10211 10212 <li>improve some limit checks (Gentoo Bugzilla #75604).</li> 10213 10214 <li>add --disable-setuid option to configure script (Gentoo 10215 Bugzilla #76543).</li> 10216 10217 <li>add --disable-full-tgetent option to configure script, 10218 allowing one to ignore a termcap library in favor of 10219 ncurses/curses (Gentoo Bugzilla #69926).</li> 10220 10221 <li>modify configure script to choose useful warning options 10222 for Intel version 8.0 compiler.</li> 10223 10224 <li>update config.guess, config.sub</li> 10225 10226 <li>make active-icon work properly when TrueType fonts are used 10227 (Debian #286068).</li> 10228 10229 <li>correct change from <a href="#xterm_157">patch #157</a> 10230 which uses getlogin() to check for an alias; the storage used 10231 for the related getpwuid() call was overwritten by the data 10232 used for comparison (patch by Per Hedeland).</li> 10233 10234 <li>correct case of SCS for character set 0 (line-drawing) to 10235 allow it to be selected into GR.</li> 10236 10237 <li>fix a file-descriptor leak (Redhat Bugzilla #139597).</li> 10238 10239 <li>modify <code>creat_as()</code> to only fork if xterm is 10240 actually running as setuid and/or setgid. This works around a 10241 Cygwin bug which hangs when logging is enabled and makes xterm 10242 a little faster for systems using interfaces such as utempter 10243 (report by Al Goodman).</li> 10244 10245 <li>modify <code>Cleanup()</code> to avoid operations such as X 10246 calls that might use unsafe functions when it is called by a 10247 signal handler (report by Michiel Boland).</li> 10248 10249 <li>fix bugs in <a href="#xterm_191">patch #191</a> and in SRM 10250 changes from <a href="#xterm_197">patch #197</a> that broke 10251 DECSET 38: switch to Tek4014 emulation (report by Dave 10252 Bodenstab).</li> 10253 10254 <li>fix for manpage escapes (Marc La France).</li> 10255 10256 <li>improve on IRIX-specific change for Imakefile in XFree86 10257 CVS versus resize linking against termcap library to reflect 10258 definitions for USE_TERMCAP in resize.c</li> 10259 </ul> 10260 10261 <h1><a name="xterm_197" id="xterm_197">Patch #197 - 2004/11/30 - 10262 XFree86 4.4.99.19</a></h1> 10263 10264 <ul> 10265 <li>modify configure script to remove empty "-DPROJECTROOT=" 10266 definition which resulted unusable values for luit's default 10267 path.</li> 10268 10269 <li>update precompose.c based on Unicode 4.0.1</li> 10270 10271 <li>several minor fixes based on Intel compiler warnings.</li> 10272 10273 <li>change default translations so a <code>BtnDown</code> which 10274 is not recognized is simply ignored rather than emitting a 10275 bell. That makes it less obtrusive when the user tries to use a 10276 mouse which provides more capabilities than the X mouse driver 10277 supports, e.g., one with a horizontal scroll wheel (Debian 10278 #265133).</li> 10279 10280 <li>note in xterm's manpage that <code>translations</code> is 10281 not specific to xterm (Debian #278897).</li> 10282 10283 <li>modify uxterm script to use locale program to verify if the 10284 derived locale is installed (Debian #246398).</li> 10285 10286 <li>correct font handling for active icon when in UTF-8 mode 10287 (report by Paolo Liberatore).</li> 10288 10289 <li>make active-icon and toolbar configurations work 10290 together.</li> 10291 10292 <li>modify the criteria for disowning primary selection. 10293 Previously, this happened anytime the cursor was moved before 10294 the end of the selection. That would ensure that any 10295 insert/delete of char or line, as well as scrolling, would 10296 disown the selection. The new criteria change this to checking 10297 if the operations would modify the data which is highlighted 10298 (Debian #277832).</li> 10299 10300 <li>reimplement <code>DECALN</code> with functions for vt420 10301 rectangles, fixes selection for this case.</li> 10302 10303 <li>implement vt420 rectangle operations.</li> 10304 10305 <li>add parsing, for debug/test of vt220 soft-fonts.</li> 10306 10307 <li>add menu entry, actions and escape sequence to allow 10308 enabling/disabling toolbars at runtime.</li> 10309 10310 <li>improve rendering for Xft, allow it to draw non-linedrawing 10311 characters such as "pi", which were drawn from internal tables 10312 with <a href="#xterm_180">patch #180</a> (Freedesktop.org 10313 Bugzilla #1260).</li> 10314 10315 <li>add configure option <code>--enable-mini-luit</code>, 10316 ifdef'd the mini-luit feature with 10317 <code>OPT_MINI_LUIT</code>.</li> 10318 10319 <li>add mini-luit feature, which supports Latin9 directly 10320 rather than via luit, provided that Unicode fonts are used 10321 (Freedesktop.org Bugzilla #1571, request by Stefan Dirsch, 10322 patch by Michael Schroeder).</li> 10323 10324 <li>for Linux, if IUTF8 is defined, e.g., on recent 2.6.x 10325 kernels, set the corresponding flag for the slave pty, to 10326 enable UTF-8 interpretation of backspace in cooked mode 10327 (Freedesktop.org Bugzilla #1578, request by Stefan 10328 Dirsch).</li> 10329 10330 <li>modify <code>faceSize</code> resource to use a 10331 floating-point internal value (adapted from patch by Sam 10332 Stephenson).</li> 10333 10334 <li>correct handling selection of tabs over cleared space in 10335 UTF-8 mode. In this special case, xterm represents the 10336 whitespace with a null rather than a space character (Debian 10337 #276447).</li> 10338 10339 <li>amend fix for infinite loop from <a href="#xterm_192">patch 10340 #192</a> to check if there is wrapped text to output in a 10341 following iteration (Debian #273202).</li> 10342 10343 <li>fixes ifdef'd with <code>__INTERIX</code> to allow building 10344 with Interix (Windows Services for UNIX) 3.5 using the xlibs 10345 libraries from freedesktop.org (patch by Min Sik Kim).</li> 10346 10347 <li>amend solution for Debian #252873, Debian #260471 from 10348 <a href="#xterm_194">patch #194</a> by making the cursor not 10349 explicitly colored if only the foreground color is set, and the 10350 cursor is on a blank space (Debian #275473).</li> 10351 10352 <li>correct logic for send/receive mode (SRM) with regard to 10353 control characters.</li> 10354 10355 <li>fix masking of invisible text in wide-character mode, which 10356 did not work for line-drawing characters.</li> 10357 10358 <li>incorporate CF_XOPEN_SOURCE into configure script, 10359 replacing CF_GNU_SOURCE.</li> 10360 </ul> 10361 10362 <h1><a name="xterm_196" id="xterm_196">Patch #196 - 2004/8/15 - 10363 XFree86 4.4.99.12</a></h1> 10364 10365 <ul> 10366 <li>add a special case to configure script to ignore NetBSD's 10367 <code>grantpt()</code> which was recently added (but not part 10368 of a release), until someone is able to ensure that xterm can 10369 use it (report by Min Sik Kim).</li> 10370 10371 <li>clear the buffer returned by getutid(). This fixes an 10372 infinite loop on some platforms introduced in <a href= 10373 "#xterm_193">patch #193</a> by Debian #256468 fix (report by 10374 David Ellement).</li> 10375 </ul> 10376 10377 <h1><a name="xterm_195" id="xterm_195">Patch #195 - 2004/8/8 - 10378 XFree86 4.4.99.11</a></h1> 10379 10380 <ul> 10381 <li>correct length used for blinking text, make the last column 10382 blink (patch by Alexander V Lukyanov).</li> 10383 10384 <li>start changes to make doublesize characters work with 10385 TrueType fonts (see <a href="#xterm_44">patch #44</a>).</li> 10386 10387 <li>trim leading/trailing blanks from color resources as done 10388 for other strings in <a href="#xterm_167">patch #167</a>.</li> 10389 10390 <li>fixes for <code>showBlinkAsBold</code> resource (report by 10391 Christoph Berg).</li> 10392 </ul> 10393 10394 <h1><a name="xterm_194" id="xterm_194">Patch #194 - 2004/7/27 - 10395 XFree86 4.4.99.11</a></h1> 10396 10397 <ul> 10398 <li>change clearing operations so foreground color attribute is 10399 not set. Usually this is benign, but in some cases when the 10400 cursor color is not set explicitly, the cursor would show this 10401 color (Debian #252873, Debian #260471).</li> 10402 10403 <li>add extra state (cursor-moved) to guard against deciding 10404 that the cursor did not require repainting after an indexing 10405 operation that leaves the cursor in the same location on the 10406 screen.</li> 10407 10408 <li>fix a case where a full-screen indexing operation would not 10409 restore the cursor-busy state.</li> 10410 10411 <li>fix a repainting bug introduced in <a href= 10412 "#xterm_180">patch #180</a>: when using a font lacking 10413 line-drawing characters, a repaint of the screen could skip 10414 horizontally an extra amount after filling in the missing 10415 character (reports by Nicolas George, Hans de Goede, Redhat 10416 Bugzilla #128341).</li> 10417 10418 <li>rename terminfo fragment "xterm-pc-fkeys" to 10419 "xterm+pcfkeys" for consistency with ncurses.</li> 10420 </ul> 10421 10422 <h1><a name="xterm_193" id="xterm_193">Patch #193 - 2004/7/19 - 10423 XFree86 4.4.99.10</a></h1> 10424 10425 <ul> 10426 <li>fix for wide-character selection from OpenBSD CVS 10427 (report/patch by Matthieu Herrb).</li> 10428 10429 <li>modify initialization and cleanup of utmp data to also 10430 compare the <code>ut_line</code> member (Debian #256468).</li> 10431 10432 <li>modify check on focus-change to ignore 10433 <code>FocusOut</code> events generated by 10434 <code>XGrabKeyboard</code>. This fixes a case where the text 10435 cursor would act as if focus were lost when selecting the 10436 "Secure Keyboard" menu option.</li> 10437 10438 <li>add <code>gen-pc-fkeys.pl</code> script, use that to 10439 generate terminfo fragment corresponding to the pc-style 10440 function keys.</li> 10441 10442 <li>fix a case where the checkmark by the "VT220 Keyboard" menu 10443 entry was not set on startup.</li> 10444 10445 <li>separated two methods for making the cursor blink (menu and 10446 escape sequence) by using the menu as the primary method and 10447 XOR'ing the state of the escape sequence against that.</li> 10448 10449 <li>modify logic for enabling blinking cursor via escape 10450 sequence as well as the related save/restore operations so this 10451 is only available if the <code>cursorBlink</code> resource was 10452 set on startup.</li> 10453 </ul> 10454 10455 <h1><a name="xterm_192" id="xterm_192">Patch #192 - 2004/7/12 - 10456 XFree86 4.4.99.9</a></h1> 10457 10458 <ul> 10459 <li>change resource settings for color4 and color12, add some 10460 discussion in <code>XTerm-col.ad</code> (Debian #241717).</li> 10461 10462 <li>add a note in xterm manpage discussing the difference 10463 between alt- and meta-keys, and the way the latter is used in 10464 the <code>eightBitInput</code> resource.</li> 10465 10466 <li>add a note in xterm manpage regarding possible conflict 10467 between resource settings for <code>xterm.vt100.font</code> and 10468 <code>xterm.vt100.utf8Fonts.font</code> (Debian #254650).</li> 10469 10470 <li>add compile-time customization of 10471 <code>backarrowKeyIsErase</code> and 10472 <code>ptyInitialErase</code> default resource values (adapted 10473 from OpenBSD CVS).</li> 10474 10475 <li>change parameter of <code>FIONREAD</code> 10476 <code>ioctl()</code> call from long to int (discussion on 10477 tech-x11@netbsd.org regarding LP64 by John Heasley and Matthias 10478 Scheler).</li> 10479 10480 <li>modify configure script options for Athena widgets to work 10481 as expected for "--without-Xaw3d", etc., (Gentoo Bugzilla 10482 #53455).</li> 10483 10484 <li>add case to uxterm to accommodate locales ending with 10485 "@euro", e.g., fr_FR.UTF-8@euro (Debian #255197, 10486 report/analysis by Matthieu Lagouge).</li> 10487 10488 <li>add special case for VT100 graphic's "box" character 10489 (discussion with Ben Armstrong).</li> 10490 10491 <li>add missing initialization for bitmap-font sizes needed to 10492 make fonts menu work with TrueType fonts (report by Ben 10493 Armstrong).</li> 10494 10495 <li>save the fontnames for bold fonts that are derived from 10496 normal fonts, or from the <code>boldFont</code> resource, so 10497 the same value is restored when switching with the VT Fonts 10498 menu (Debian #256086).</li> 10499 10500 <li>fix manpage preprocessing (Marc La France).</li> 10501 10502 <li>fix typo in manpage's description of character classes 10503 (Debian #257073).</li> 10504 10505 <li>modify terminfo to accommodate luit, which relies on G1 10506 being used via an ISO-2022 escape sequence (Debian #254316, 10507 analysis by Juliusz Chroboczek).</li> 10508 10509 <li>modify Makefile.in rule for ctlseqs.txt to work around 10510 groff SGR misfeature.</li> 10511 10512 <li>modify <code>XTerm.ad</code> to set <code>saveLines</code> 10513 default to 1024 (Redhat Bugzilla #127132).</li> 10514 10515 <li>add a limit-check in <code>dotext()</code> to prevent 10516 infinite loop in a corner case of UTF-8 configuration.</li> 10517 10518 <li>update config.guess, config.sub</li> 10519 </ul> 10520 10521 <h1><a name="xterm_191" id="xterm_191">Patch #191 - 2004/6/6 - 10522 XFree86 4.4.99.7</a></h1> 10523 10524 <ul> 10525 <li>correct options parsing for <code>-into</code> option so it 10526 can be combined with <code>-e</code> (Redhat Bugzilla #124518, 10527 report/patch by James Armstrong).</li> 10528 10529 <li>fix ifdef's for <code>OPT_COLOR_RES2</code> so that the 10530 fake resource table introduced in <a href="#xterm_188">patch 10531 #188</a> is not compiled if it is empty. This happened to work 10532 with gcc (report by Joel Konkle-Parker).</li> 10533 10534 <li>reorganize ptydata.c to use one input buffer shared between 10535 the VTxxx and tek4014 emulators. In the new scheme, UTF-8 10536 decoding is performed on characters as they are needed by the 10537 state machine rather than on buffers as they are read.</li> 10538 10539 <li>work around change in quoting of PROJECTROOT symbol when 10540 using configure script, from changes made in <a href= 10541 "#xterm_187">patch #187</a> for CF_IMAKE_CFLAGS (Gentoo 10542 Bugzilla #50982).</li> 10543 </ul> 10544 10545 <h1><a name="xterm_190" id="xterm_190">Patch #190 - 2004/5/25 - 10546 XFree86 4.4.99.6</a></h1> 10547 10548 <ul> 10549 <li>correct state for values in the range 128-159 after 10550 translating from UTF-8: this should be ignored unless the user 10551 overrides it with the <code>allowC1Printable</code> resource 10552 (reported by Simon Strandgaard).</li> 10553 10554 <li>add configure-script check for nl_langinfo(CODESET), use 10555 this to replace check of environment variables for UTF-8.</li> 10556 10557 <li>change Makefile.in rules for 256colres.h and 88colres.h so 10558 they are only made if they do not exist. The maintainer-clean 10559 rule will remove these files; they require perl to be 10560 made.</li> 10561 10562 <li>remove check in configure script --enable-toolbar that 10563 suppressed this option when building with Xaw7.</li> 10564 10565 <li>apply fixes to Tektronix widget used for VT100 widget to 10566 make toolbar work with Xaw7 (XFree86 4.x).</li> 10567 </ul> 10568 10569 <h1><a name="xterm_189" id="xterm_189">Patch #189 - 2004/5/16 - 10570 XFree86 4.4.99.6</a></h1> 10571 10572 <ul> 10573 <li>do not call xim_real_init() if <code>openIm</code> resource 10574 is false (Debian #249025).</li> 10575 10576 <li>minor improvements to built-in line-drawing.</li> 10577 10578 <li>fix a few portability issues with dynamic abbreviation 10579 support, i.e., did not compile on Tru64.</li> 10580 10581 <li>modify constraints in form used to layout toolbar, to work 10582 with newer Xaw in XFree86 4.x.</li> 10583 </ul> 10584 10585 <h1><a name="xterm_188" id="xterm_188">Patch #188 - 2004/5/12 - 10586 XFree86 4.4.99.6</a></h1> 10587 10588 <ul> 10589 <li>correct table entry for DEL in the ground state, which 10590 marked it as a printable character from <a href= 10591 "#xterm_171">patch #171</a> (report by D Hugh Redelmeier).</li> 10592 10593 <li>improve fix in <a href="#xterm_186">patch #186</a> for 10594 failure in xim_real_init() by adding a sleep.</li> 10595 10596 <li>fix a typo in os2main.c (XFree86 Bugzilla #1358, 10597 report/patch by Frank Giessler).</li> 10598 10599 <li>make escape sequence reporting dynamic colors consistent 10600 with the logic that sets it; choosing the opposite color when 10601 reverse video is set (XFree86 Bugzilla #1361, reported by Bradd 10602 W Szonye).</li> 10603 10604 <li>modify initialization of 256- and 88-colors so that colors 10605 beyond 16 are normally not X resources. This works around a 10606 hard-coded limit in Xt which breaks xterm when 256-colors and 10607 luit are both configured (report by Noah Friedman).</li> 10608 10609 <li>remove <code>ncv</code> from <code>xterm-256color</code> 10610 terminfo entry since it is no longer needed (report by Eli 10611 Zaretskii).</li> 10612 10613 <li>add "erase2" and "eol2" keywords to <code>ttyModes</code> 10614 resource, for recent/current FreeBSD.</li> 10615 10616 <li>improve ifdef's for utempter library to omit direct calls 10617 to <code>setutent()</code> or <code>getutent()</code> (adapted 10618 from patch by Christian Biere).</li> 10619 10620 <li>add dynamic abbreviation support like Emacs (patch by 10621 Tomasz Cholewo). This is ifdef'd with <code>OPT_DABBREV</code>, 10622 and enabled via the configure script 10623 <code>--enable-dabbrev</code> option.</li> 10624 10625 <li>fix problem responding to session management events, e.g., 10626 which would make logging out very slow (patch by Eddy De Greef, 10627 Debian #233883).</li> 10628 10629 <li>work around a newer bug in toolbar with XFree86 by forcing 10630 menus to be fully initialized at startup. In older versions of 10631 XFree86 and X11R6, it was possible to delay initialization of 10632 the menu contents until it was popped up. (The longstanding bug 10633 with XFree86 4.x layout for toolbar still exists, though).</li> 10634 10635 <li>modify <code>xtermAddInput</code> to work around core dump 10636 on IRIX64 when initializing scrollbar translations if toolbar 10637 is compiled-in.</li> 10638 10639 <li>fix some minor conflicts in the 2-character entry names in 10640 the termcap file.</li> 10641 </ul> 10642 10643 <h1><a name="xterm_187" id="xterm_187">Patch #187 - 2004/4/27 - 10644 XFree86 4.4.99.4</a></h1> 10645 10646 <ul> 10647 <li>change xterm version string to use 10648 <code>__vendorversion__</code> where that is available, and 10649 "XTerm" otherwise.</li> 10650 10651 <li>improve description of <code>utf8</code> resource in 10652 manpage (Debian #179407).</li> 10653 10654 <li>modify configure macros CF_IMAKE_CFLAGS and CF_ADD_CFLAGS 10655 to handle <code>-D</code> options that define string values, 10656 e.g., for <code>XVENDORNAME</code>.</li> 10657 10658 <li>modify configure macro CF_IMAKE_CFLAGS to allow (if 10659 <code>$PATH</code> is set accordingly) to use the 10660 <code>xmkmf</code> script within an X build tree.</li> 10661 10662 <li>add missing <code>#undef OPT_SESSION_MGT</code> to 10663 xtermcfg.hin to make the configure script's 10664 --disable-session-mgt option work.</li> 10665 10666 <li>update config.guess, config.sub</li> 10667 </ul> 10668 10669 <h1><a name="xterm_186" id="xterm_186">Patch #186 - 2004/4/18 - 10670 XFree86 4.4.99.4</a></h1> 10671 10672 <ul> 10673 <li>change reset on <code>DECSCL</code> to a soft-reset 10674 (appears some DEC manuals have errors).</li> 10675 10676 <li>add a section to ctlseqs.ms elaborating on normal/alternate 10677 screens.</li> 10678 10679 <li>modify initialization of Acolors[] so that any 10680 XtDefaultForeground or XtDefaultBackground values are 10681 translated as in the Tcolors[], to use the window's 10682 foreground/background colors. This affects the 10683 <code>colorBD</code> and similar resources which normally have 10684 no explicit color assigned.</li> 10685 10686 <li>modify initialization of Tektronix window so that control 10687 sequences setting its color before the window is popped up will 10688 apply to its initial colors.</li> 10689 10690 <li>add control sequence to set Tektronix window's 10691 text-cursor.</li> 10692 10693 <li>modify initialization of terminal colors, e.g., mouse 10694 pointer and text cursor, to treat 10695 <code>XtDefaultForeground</code> and 10696 <code>XtDefaultBackground</code> values as the actual 10697 foreground and background colors of the terminal rather than 10698 white and black (Debian #241717).</li> 10699 10700 <li>remove an incorrect comparison against 10701 <code>PTYCHARLEN</code> in parsing the <code>-S</code> option 10702 (report by Michael B Taylor).</li> 10703 10704 <li>minor restructuring of terminfo/termcap files, having noted 10705 some packager's customizations which caused the structure to be 10706 confused.</li> 10707 10708 <li>eliminate an isolated use of MIN/MAX in charproc.c</li> 10709 10710 <li>replace <code>XtExtdefaultfont</code> and 10711 <code>XtExtdefaultbackground</code> by their more familiar 10712 equivalents <code>XtDefaultFont</code> and 10713 <code>XtDefaultBackground</code>.</li> 10714 10715 <li>replace ifdef's using <code>SCO</code>, <code>sco</code> 10716 and <code>SCO325</code> with <code>__SCO__</code> (XFree86 10717 Bugzilla #1301, Kean Johnston). But ensure that it still builds 10718 on platforms where this symbol is not defined.</li> 10719 10720 <li>add <code>scoFunctionKeys</code> resource, to match 10721 manpage.</li> 10722 10723 <li>update manpage discussion of menus and related 10724 resources.</li> 10725 10726 <li>enable utmpx support for NetBSD 1.6C and newer (patch by 10727 Matthias Scheler).</li> 10728 10729 <li>add a note in the manpage discussing xterm's treatment of 10730 open file-descriptors (request by Dan Shearer).</li> 10731 10732 <li>modify <code>Help()</code> to make "xterm -h" write to 10733 standard output rather than standard error (patch by Bram 10734 Moolenaar).</li> 10735 10736 <li>check for type of failure in xim_real_init() to avoid 10737 looping when the problem is an unsupported input method rather 10738 than a failure to connect to the XIM server. Problem was 10739 introduced in <a href="#xterm_175">patch #175</a> (XFree86 10740 Bugzilla #1306).</li> 10741 10742 <li>modify <code>Imakefile</code> to remove dependency of 10743 "install" target on the <code>xterm</code> executable to make 10744 installs from tree without attempting to rebuild anything 10745 (commit by David Dawes, report/patch from Lee Olsen).</li> 10746 10747 <li>remove call to <code>ShowCursor</code> from 10748 <code>SetCursorBlink()</code> since that is redundant, and can 10749 cause display glitches if the cursor is already blinking 10750 (XFree86 Bugzilla #1158, patch/report by Andreas Schwab).</li> 10751 </ul> 10752 10753 <h1><a name="xterm_185" id="xterm_185">Patch #185 - 2004/3/3 - 10754 XFree86 4.4</a></h1> 10755 10756 <ul> 10757 <li>fix tcap-query logic for the backspace key (XFree86 10758 Bugzilla #1233, report/patch by Anton Kovalenko).</li> 10759 10760 <li>add test-scripts resize.pl and tcapquery.pl</li> 10761 10762 <li>add translation to ASCII of commonly-used characters that 10763 groff translates to Unicode, when the font in use does not 10764 provide the corresponding glyphs (Debian #219551).</li> 10765 10766 <li>modify RequestMaximize(), which performs maximize/restore 10767 via control sequences, to account for window-frame (patch by 10768 Jess Thrysoee).</li> 10769 10770 <li>improve pattern used in <code>uxterm</code> to check for 10771 UTF-8 locale, e.g., for HPUX (patch by H Merijn Brand).</li> 10772 10773 <li>add <code>-fd</code> option and resource 10774 <code>faceNameDoublesize</code> to specify double-wide fonts 10775 with Xft (adapted from patch by Zarick Lau).</li> 10776 10777 <li>change a couple of resource classes from "Boolean" to 10778 specific values: <code>freeBoldBox</code>, 10779 <code>forceBoxChars</code>.</li> 10780 10781 <li>add resource <code>showMissingGlyphs</code> to outline 10782 places on the screen where a font lacks the corresponding 10783 glyph.</li> 10784 10785 <li>add resource <code>showBlinkAsBold</code> to control 10786 whether blinking text should be shown as bold or actual 10787 blinking text.</li> 10788 10789 <li>improve logic in ShowCursor() to avoid repainting the 10790 cursor when it is already visible, e.g., in response to the 10791 DECTCEM escape sequence. This also addresses XFree86 Bugzilla 10792 #1158.</li> 10793 10794 <li>implement blinking text, using the timer for blinking 10795 cursor.</li> 10796 10797 <li>modify FreeType support to allow resizing the font, in the 10798 same ways the window can be resized if fixed fonts are used. 10799 The relative font sizes are derived from the fixed font 10800 sizes.</li> 10801 10802 <li>add menu items and corresponding actions for switching 10803 on/off the UTF-8 mode and Xft (TrueType) support.</li> 10804 10805 <li>add logic to handle switching UTF-8 mode on/off. It worked 10806 if the escape sequences were flushed, but if data was mixed in 10807 with the same write, some were not handled properly (report by 10808 Nicolas George).</li> 10809 10810 <li>modify to allow turning UTF-8 mode on/off via escape 10811 sequence even if <code>-wc</code> option was not given at 10812 startup (patch by Peter Berg Larsen).</li> 10813 10814 <li>amend fix for XFree86 Bugzilla #981, adjusting for 10815 savedlines value (report by Tim Adye).</li> 10816 10817 <li>fix a typo in computing relative font size (Jess 10818 Thrysoee).</li> 10819 </ul> 10820 10821 <h1><a name="xterm_184" id="xterm_184">Patch #184 - 2003/12/31 - 10822 XFree86 4.3.99.903</a></h1> 10823 10824 <ul> 10825 <li>improve configure-script checks for FreeType and related 10826 libraries, using <code>xft-config</code> or 10827 <code>freetype-config</code> scripts when available.</li> 10828 10829 <li>fix configure-script check for <code>SYSV</code> definition 10830 by ensuring whether <code>sys_errlist[]</code> is declared, and 10831 by modifying the test program to include 10832 <code>X11/Intrinsic.h</code> to check that <code>wchar_t</code> 10833 is declared consistently (report by H Merijn Brand).</li> 10834 </ul> 10835 10836 <h1><a name="xterm_183" id="xterm_183">Patch #183 - 2003/12/26 - 10837 XFree86 4.3.99.903</a></h1> 10838 10839 <ul> 10840 <li>correct logic for configurations that may attempt to open 10841 both old/new-style pseudoterminals. In this case, the old-style 10842 are preferred. Logic was broken in <a href="#xterm_145">patch 10843 #145</a> (XFree86 Bugzilla #997, report/patch by Kean 10844 Johnston).</li> 10845 10846 <li>modify handling of <code>eightBitInput</code> resource in 10847 UTF-8 mode to translate the value into UTF-8. Otherwise an 10848 illegal UTF-8 code is sent to the application (report by Bram 10849 Moolenaar).</li> 10850 10851 <li>modify <code>uxterm</code> script to interpret help and 10852 version options so xterm does not always create a window when 10853 the user requests this information (Debian #223926).</li> 10854 10855 <li>add a limit check to ScrnTstWrapped() (XFree86 Bugzilla 10856 #981).</li> 10857 10858 <li>modify DECSCL to perform a hard reset (RIS) as per DEC 10859 manuals. Extended DECSCL to accept parameters for vt4XX and 10860 vt5xx terminals.</li> 10861 10862 <li>correct logic for ANSI conformance level escape sequences, 10863 which were confused with DEC conformance level escape 10864 sequences.</li> 10865 10866 <li>correct state for vt52 shift-in/shift-out, which was not 10867 reset properly after <a href="#xterm_171">patch #171</a>.</li> 10868 10869 <li>correct handling of graphics characters for vt52 mode, 10870 which did not display line-drawing characters after G1 fix from 10871 <a href="#xterm_182">patch #182</a>.</li> 10872 10873 <li>fixes for configure script to work with current Cygwin 10874 headers and libraries.</li> 10875 10876 <li>modify <code>Imakefile</code> to put the current directory 10877 at the beginning of the include searchpath (patch by David 10878 Dawes).</li> 10879 </ul> 10880 10881 <h1><a name="xterm_182" id="xterm_182">Patch #182 - 2003/12/2 - 10882 XFree86 4.3.99.901</a></h1> 10883 10884 <ul> 10885 <li>correct logic for <code>metaSendsEscape</code> resource to 10886 allow for the meta-right key to be tested. Improve check for 10887 meta/alt modifiers by dropping the assumption that a keysym is 10888 associated with only one modifier, and by ignoring NoSymbol 10889 entries in the xmodmap data (XFree86 Bugzilla #924, patch by 10890 David Dawes).</li> 10891 10892 <li>correct wrapping logic for line-drawing characters written 10893 in non-UTF-8 mode of xterm build for wide-characters (XFree86 10894 Bugzilla #918, report/patch by Jürgen Keil).</li> 10895 10896 <li>improve manpage description of resources, in particular the 10897 <code>utf8Fonts</code> class (XFree86 Bugzilla #905).</li> 10898 10899 <li>add definitions to compile with glibc-based GNU/Hurd, 10900 GNU/KFreeBSD and GNU/KNetBSD (XFree86 Bugzilla #893).</li> 10901 10902 <li>compiler-warning fixes (patch by Christian Biere).</li> 10903 10904 <li>add README.i18n (Tomohiro Kubota).</li> 10905 10906 <li>correct initialization of G1 character set mapping, which 10907 used line-drawing set as a result of confusion between "DEC 10908 Supplemental Graphic" and "DEC Special Graphic" character sets 10909 (see <a href="#xterm_34">patch #34</a> regarding DECSTR).</li> 10910 10911 <li>correct ifdef in main.c for variable utret (patch by 10912 Bernhard Rosenkraenzer).</li> 10913 10914 <li>document in xterm's manpage how to use XFree86 ":unscaled" 10915 keyword to suppress scaling of bold fonts.</li> 10916 10917 <li>when deriving bold fontname from normal fontname, use the 10918 normal font's average width to avoid for example selecting 10919 7x13bold from an 8x13 normal font (Debian #107769).</li> 10920 </ul> 10921 10922 <h1><a name="xterm_181" id="xterm_181">Patch #181 - 2003/10/26 - 10923 XFree86 4.3.99.15</a></h1> 10924 10925 <ul> 10926 <li>implement <code>boldMode</code> for wide-character logic in 10927 <code>drawXtermText()</code> (report by Michael 10928 Schroeder).</li> 10929 10930 <li>modify <code>UXTerm.ad</code> resource file to include 10931 "XTerm-color" rather than "XTerm", in case the latter file 10932 contains no color resource definitions, e.g., after <a href= 10933 "#xterm_180">patch #180</a>.</li> 10934 10935 <li>add action <code>load-vt-fonts()</code> and configure 10936 option <code>--enable-load-vt-fonts</code> which allows users 10937 to define additional sets of VT-fonts which can be loaded at 10938 runtime.</li> 10939 10940 <li>add logic to wide-character support which attempts to load 10941 fonts specified by <code>utf8Fonts</code> subresources at 10942 startup. The subresources have the same names as the fonts 10943 which they replace, e.g., <code>font</code>, 10944 <code>font1</code>, etc., so that the ISO-10646-1 fonts can be 10945 specified in the <code>XTerm</code> app-defaults file (adapted 10946 from patch by Tomohiro Kubota).</li> 10947 10948 <li>improve Set Font escape string handling by making the 10949 relative settings apply to the size of the font, as in shift 10950 keypad plus/minus rather than the menu index.</li> 10951 10952 <li>simplify parameter passing for the <code>set-vt-font</code> 10953 action and related code.</li> 10954 10955 <li>cleanup some include-ordering, moving some recently-added 10956 hardcoded stuff into xterm.h where it will not interfere with 10957 the configure script.</li> 10958 10959 <li>modify <code>xtermAddInput()</code> (see note on 10960 augmentation in <a href="#xterm_158">patch #158</a>) to use the 10961 complete set of default keyboard translations so that one can 10962 use shifted pageup, wheel mouse, etc., while the mouse pointer 10963 is over the scrollbar. (Debian #178812).</li> 10964 10965 <li>make save/restore mode controls apply to show/blink cursor 10966 states.</li> 10967 10968 <li>add escape sequence to start/stop blinking cursor, which 10969 allows implementing <code>cvvis</code> terminfo capability 10970 (request by Nate Bargmann).</li> 10971 10972 <li>add <code>indp</code> and <code>rin</code> to terminfo 10973 entry.</li> 10974 10975 <li>fix an out-of-bounds array reference in ScrnRefresh() for 10976 wide characters (report by Dan Harnett, patch by Todd Miller). 10977 This bug dates from <a href="#xterm_141">patch #141</a>.</li> 10978 </ul> 10979 10980 <h1><a name="xterm_180" id="xterm_180">Patch #180 - 2003/10/12 - 10981 XFree86 4.3.99.15</a></h1> 10982 10983 <ul> 10984 <li>several fixes for rendering using Xft via option 10985 <code>-fa</code>: 10986 <ul> 10987 <li>translate Unicode values, i.e,. from UTF-8 output to 10988 xterm, for line-drawing to xterm's internal code, etc., 10989 since TrueType fonts generally do not have either set of 10990 line-drawing glyphs. xterm can draw these directly (report 10991 by Abigail Brady).</li> 10992 10993 <li>pass 16-bit values rather than 8-bit values to 10994 xtermXftDrawString() to allow for wide-characters.</li> 10995 10996 <li>remove spurious check for <code>colorBDMode</code> 10997 resource in logic that does bold fonts.</li> 10998 10999 <li>implement underlining.</li> 11000 </ul> 11001 </li> 11002 11003 <li>patches by Ilya Zakharevich: 11004 <ul> 11005 <li>improve drawXtermText() by making the recursive calls 11006 communicate through arguments, and not through 11007 saving/restoring global variables.</li> 11008 11009 <li>make double-width characters work with <code>-u8</code> 11010 option.</li> 11011 11012 <li>modify lookup of double-sized fonts by checking for a 11013 match ignoring x/y resolution if the first check 11014 fails.</li> 11015 </ul> 11016 </li> 11017 11018 <li>make height of TrueType fonts match ascent+descent (patch 11019 by Keith Packard).</li> 11020 11021 <li>correct configure-script check for imake $CFLAGS, which did 11022 not check properly if imake was not available.</li> 11023 11024 <li>correct install rule in Makefile.in for 11025 <code>uxterm</code>, which was attempting to strip the script 11026 (newsgroup posting by Fernan Aguero).</li> 11027 11028 <li>correct AF/AB strings in termcap for xterm-256color and 11029 xterm-88color entries (report by Josh Howard).</li> 11030 11031 <li>update wcwidth.c to incorporate changes from Markus Kuhn's 11032 2003-05-20 (Unicode 4.0) version of that file.</li> 11033 11034 <li>modify <code>scroll-back</code> and 11035 <code>scroll-forw</code> actions to accept an adjustment value, 11036 e.g., 11037 11038 <pre> 11039 <code>scroll-back(1, page-2)</code> 11040</pre>to scroll back by 2 lines less than a page (patch by Greg 11041Klanderman). 11042 </li> 11043 11044 <li>use color resource setting from Debian package for xterm 11045 VT100 widget, since the choice of blues provides better 11046 contrast.</li> 11047 11048 <li>remove color resources from <code>XTerm.ad</code>, leaving 11049 them only in <code>XTerm-col.ad</code> (prompted by Debian 11050 package for xterm).</li> 11051 11052 <li>correct configure script option --enable-pty-handshake 11053 (report by Paul Gilmartin).</li> 11054 11055 <li>add <code>visualBellDelay</code> resource to modify the 11056 length of time used for visual bell, for very slow displays or 11057 very fast computers (reports by Ingo van Lil and Doug 11058 Toppin).</li> 11059 11060 <li>correct logic for initializing dynamic highlight color 11061 (patch by Jess Thrysoee).</li> 11062 11063 <li>add a check for non-zero size in call to 11064 <code>XCopyArea()</code> to accommodate a Solaris bug.</li> 11065 11066 <li>correct typo in example for character classes in xterm 11067 manpage (Debian #198910).</li> 11068 11069 <li>link xterm with bind_on_load option on Darwin to work 11070 around a deadlock in the dynamic loader when a signal is 11071 received while the dynamic loader is looking up symbols 11072 (patches by Rob Braun, Torrey Lyons).</li> 11073 11074 <li>modify configure script to avoid using "head -1".</li> 11075 11076 <li>update config.guess, config.sub</li> 11077 11078 <li>modify ifdef's to work around inclusion of types FcChar32 11079 and XftCharSpec with FreeType 2.0 (see <a href= 11080 "#xterm_175">patch #175</a>).</li> 11081 11082 <li>modify the predictable version of the generated logfile 11083 name (see <a href="#xterm_171">patch #171</a>) to append the 11084 process-id rather than a random value.</li> 11085 11086 <li>resync with XFree86 CVS 11087 <ul> 11088 <li>Enable SCO function keys in xterm</li> 11089 11090 <li>Make Delete key send DEL by default on SCO in 11091 xterm</li> 11092 </ul> 11093 </li> 11094 </ul> 11095 11096 <h1><a name="xterm_179" id="xterm_179">Patch #179 - 2003/5/21 - 11097 XFree86 4.3.99.5</a></h1> 11098 11099 <ul> 11100 <li>modify ifdef's for WTMPX_FILE to allow building on cygwin 11101 again.</li> 11102 11103 <li>change the default of pty-handshaking configure option (and 11104 related default for imake) to assume this feature is 11105 needed.</li> 11106 11107 <li>add ifdef's so configure option for XawPlus library works 11108 (patch by Pavel Roskin).</li> 11109 11110 <li>add <code>$(MAIN_DEFINES)</code> to the variables checked 11111 by the configure script that may contain information set by 11112 imake. This allows xterm to build/run properly using the 11113 configure script on IRIX64.</li> 11114 11115 <li>add configure check for ".exe" suffix on cygwin.</li> 11116 </ul> 11117 11118 <h1><a name="xterm_178" id="xterm_178">Patch #178 - 2003/5/18 - 11119 XFree86 4.3.99.5</a></h1> 11120 11121 <ul> 11122 <li>modify default for configure 11123 <code>--enable-pty-handshake</code> option to enable it for 11124 Solaris (report by Nelson Beebe).</li> 11125 11126 <li>modify <code>in_put()</code> function to call 11127 <code>PreeditPosition()</code> only when the cursor's position 11128 has changed. This addresses report by Stefan Baums of high CPU 11129 usage while xterm with chinput are running in the background 11130 (patch by Yong Li).</li> 11131 11132 <li>improved explanation of <code>-ls</code> conflict with 11133 <code>-e</code> option in xterm manpage (adapted from comments 11134 by Henning Makholm).</li> 11135 11136 <li>correct comment in terminfo file regarding modifier used 11137 for <code>kDC</code> (Debian #189764, report by Henning 11138 Makholm).</li> 11139 11140 <li>correct/extend some of the keypad description in ctlseqs.ms 11141 (report by Henning Makholm).</li> 11142 11143 <li>correct keypad-mapping table in input.c so 11144 <code>XK_KP_Equal</code> works (report by Henning 11145 Makholm).</li> 11146 11147 <li>modified to work with CJK double-width (bi-width/monospace) 11148 fonts. They're similar to Roman Czbora and David Starner's 11149 gnuunifonts in that Latin letters and numbers have all the same 11150 width which is exactly the half of the width of East Asian 11151 characters. (patch by Jungshik Shin 11152 <jshin@mailaps.org>).</li> 11153 11154 <li>add configure option <code>--enable-broken-osc</code> and 11155 resource <code>brokenLinuxOSC</code> to accommodate scripts 11156 which do not distinguish between running in the Linux console 11157 and running in X. Linux console recognizes malformed control 11158 strings which start with an <code>OSC</code>, but are 11159 fixed-length, with no terminator.</li> 11160 11161 <li>add configure option <code>--enable-broken-st</code> and 11162 resource <code>brokenStringTerm</code> to allow user to revert 11163 one part of the parsing table corrections from <a href= 11164 "#xterm_171">patch #171</a>. (reports by Matthias Scheler and 11165 Kirill Ponomarew indicate that someone's network firmware sends 11166 an <code><escape>X</code>).</li> 11167 11168 <li>modify configure <code>--disable-imake</code> to provide 11169 values for <code>OSMAJORVERSION</code>, 11170 <code>OSMINORVERSION</code>, <code>FUNCPROTO</code> and 11171 <code>NARROWPROTO</code> (report by Heiko Schlichting).</li> 11172 11173 <li>correct <code>vttests/16colors.sh</code>, which omitted the 11174 <code>$SUF</code> variable in output strings (patch by Paul 11175 Gilmartin).</li> 11176 11177 <li>modify shell scripts in <code>vttests</code> directory to 11178 attempt to use named signals in the <code>trap</code> 11179 statement, making this portable to OS/390 (report by Paul 11180 Gilmartin). Tested on SunOS 4.1.4, which implements only 11181 numbers.</li> 11182 </ul> 11183 11184 <h1><a name="xterm_177" id="xterm_177">Patch #177 - 2003/3/23 - 11185 XFree86 4.3.0</a></h1> 11186 11187 <ul> 11188 <li>fix definition of <code>USE_HANDSHAKE</code>, must be 11189 numeric (reported by Jens Schleusener).</li> 11190 </ul> 11191 11192 <h1><a name="xterm_176" id="xterm_176">Patch #176 - 2003/3/22 - 11193 XFree86 4.3.0</a></h1> 11194 11195 <ul> 11196 <li>add configure option <code>--enable-pty-handshake</code> to 11197 allow one to compile-in support for the pty handshaking logic, 11198 and resource <code>ptyHandshake</code> to enable or disable it 11199 (suggested by Ian Collier).</li> 11200 11201 <li>restore <code>USE_HANDSHAKE</code> ifdef removed in 11202 <a href="#xterm_159">patch #159</a> to address Debian 11203 #39964.</li> 11204 11205 <li>move ifdef's for ttysize/winsize into xterm_io.h</li> 11206 11207 <li>simplify loop on <code>tgetent</code>, check if the 11208 successive entries in the lookup table are the same. That makes 11209 xterm do one less lookup if there is no "xterm" entry in the 11210 termcap file (report by Derek Martin).</li> 11211 11212 <li>correct manpage discussion of <code>$TERM</code> and 11213 <code>$TERMCAP</code> variables, which omitted the Tektronix 11214 emulation and a note of the final "dumb" fallback.</li> 11215 11216 <li>broaden ifdef for 11217 <code>XRegisterIMInstantiateCallback()</code> from <a href= 11218 "#xterm_175">patch #175</a> (XIM fix) to exclude non-XFree86 11219 (report by Nelson Beebe indicates this breaks for Solaris, IRIX 11220 and OSF/1).</li> 11221 11222 <li>correct resource-size for <code>iconFont</code> (this was 11223 added by X11R6.3).</li> 11224 11225 <li>improve configure check for XKB bell extension, to work 11226 around inconsistent implementation of this feature (reports by 11227 Nelson Beebe, Kriston Rehberg and David Ellement).</li> 11228 11229 <li>modify configure-check for <code>tty</code> group to be 11230 less strict in batch mode (report by Nelson Beebe).</li> 11231 11232 <li>modify to allow building with g++, to use its compiler 11233 warnings (suggested by Nelson Beebe).</li> 11234 11235 <li>modify <code>dec2ucs[]</code> table to reflect newer codes 11236 available for scanlines 1, 3, 7, 9 (report by Michael 11237 Schroeder).</li> 11238 11239 <li>add configure option for XawPlus library.</li> 11240 </ul> 11241 11242 <h1><a name="xterm_175" id="xterm_175">Patch #175 - 2003/3/9 - 11243 XFree86 4.3.0</a></h1> 11244 11245 <ul> 11246 <li>fix a SIGSEGV which could occur if xterm is connecting to 11247 XIM server, and the XIM server is destroyed (patch by Nam 11248 SungHyun).</li> 11249 11250 <li>modify to use built-in line-drawing characters for Xft 11251 fonts (patch by Andrew Tipton).</li> 11252 11253 <li>make menu reflect the state of the <code>tekInhibit</code> 11254 resource.</li> 11255 11256 <li>make <code>signalInhibit</code> resource work, i.e., 11257 disable the menu entries that would send signals to, or exit 11258 xterm. This was probably broken in X11R5 when logging was 11259 disabled (report by Sven Mascheck).</li> 11260 11261 <li>changed classes of <code>colorBDMode</code> and similar 11262 resources that override colors when a video attribute is set to 11263 <code>ColorAttrMode</code>, to make them distinct from 11264 <code>ColorMode</code>. This avoids an unexpected rendering of 11265 reverse video, for example (report by Paul Fox).</li> 11266 11267 <li>changed class of <code>veryBoldColors</code> to 11268 <code>VeryBoldColors</code>, since <code>ColorMode</code> is 11269 associated with boolean resources.</li> 11270 11271 <li>add option <code>-k8</code> and resource 11272 <code>allowC1Printable</code> to allow users of non-VTxxx 11273 character sets such as KOI-8 to treat the C1 control area 11274 (character codes 128-159) as printable rather than control 11275 characters.</li> 11276 11277 <li>add a null-pointer check for return-value of 11278 <code>ptsname()</code> in HPUX-specific code (report by David 11279 Ellement).</li> 11280 11281 <li>revise the ifdef's used for <code>XKB</code> bell support. 11282 The code was using a nonstandard call 11283 <code>XkbStdBell()</code>. Changed to use 11284 <code>XkbBell()</code> (based on patch by 11285 <derek@signalmarketing.com>).</li> 11286 11287 <li>add a null-pointer check in <code>xtermLoadFont()</code> in 11288 case there is no wide-bold font (Nam SungHyun).</li> 11289 11290 <li>change <code>Makefile.in</code> to use autoconf's 11291 <code>bindir</code>, <code>libdir</code> and 11292 <code>mandir</code> variables (report by Nam SungHyun).</li> 11293 11294 <li>add <code>le</code> to termcap <code>xterm-basic</code> 11295 entry. Though missing from older termcaps for xterm, some 11296 applications check for it (report by Matthias Buelow).</li> 11297 11298 <li>modify <code>uxterm</code> script to strip modifiers such 11299 as "@euro" from the locale setting before adding ".UTF-8" 11300 (Debian #179929).</li> 11301 11302 <li>modify the remaining places where tek4014 emulation uses 11303 <code>XDefineCursor()</code>, to make it work as originally 11304 implemented, e.g., when switching back to alpha mode. Added 11305 test-screen in vttest to test this feature properly.</li> 11306 </ul> 11307 11308 <h1><a name="xterm_174" id="xterm_174">Patch #174 - 2003/2/25 - 11309 XFree86 4.2.99.903</a></h1> 11310 11311 <ul> 11312 <li>work-around for XFree86 bug which made 11313 <code>XDefineCursor()</code> on a shell-window no longer work. 11314 The tek4014 emulation used this. Use the next lower window 11315 (report by Karl Rudolf Bauchspiess).</li> 11316 11317 <li>add a resource setting <code>allowWindowOps</code> to 11318 control whether the extended window operations should be 11319 allowed, e.g., resize, iconify, report window attributes. This 11320 is to accommodate people who are not capable of using a pager 11321 to view log-files.</li> 11322 </ul> 11323 11324 <h1><a name="xterm_173" id="xterm_173">Patch #173 - 2003/2/6 - 11325 XFree86 4.2.99.902</a></h1> 11326 11327 <ul> 11328 <li>reset mouse mode to normal on a full reset. This does not 11329 apply to mouse hilite tracking mode, of course (see 11330 ctlseqs.ms).</li> 11331 11332 <li>add a time-delay at the point where mouse hilite tracking 11333 mode choses to not handle X events, to avoid runaway CPU usage 11334 (report by D Hugh Redelmeier).</li> 11335 11336 <li>check for illegal character in DECUDK string, quit if 11337 detected.</li> 11338 </ul> 11339 11340 <h1><a name="xterm_172" id="xterm_172">Patch #172 - 2002/12/27 - 11341 XFree86 4.2.99.3</a></h1> 11342 11343 <ul> 11344 <li>fixes to make repainting of 256-color example work properly 11345 (reports by Abigail Brady and Scott A Crosby). 11346 <ul> 11347 <li>set flag in <code>AllocateAnsiColor()</code> to ensure 11348 the color is allocated once only.</li> 11349 11350 <li>fix check in <code>ScrnRefresh</code>, which was 11351 comparing background colors only if the ANSI foreground 11352 colors also were set.</li> 11353 </ul> 11354 </li> 11355 11356 <li>merge <code>Error()</code> calls and some 11357 <code>exit()</code> calls into <code>SysError()</code>, and 11358 change that to add the brief explanation for each error code 11359 which is provided in the manpage. Change a few 11360 <code>SysError()</code>, calls to avoid using code 1, to avoid 11361 confusion with exit status from places that do not use 11362 <code>SysError()</code>.</li> 11363 11364 <li>simplify logic used to open a debug logfile as the standard 11365 error.</li> 11366 11367 <li>modify the <code>-e</code> option so that if it fails, 11368 xterm will check if only one argument follows, e.g., it was 11369 quoted, and then retry using <code>sh -c</code>.</li> 11370 11371 <li>modify parsing of DECUDK string parameter to allow a comma 11372 between pairs of hexadecimal digits (Ray Neuman 11373 <raymond@one.com.au> reports that "real" terminals accept 11374 this; perhaps they simply ignore unexpected characters).</li> 11375 11376 <li>fix a few problems with the <code>$TERMCAP</code> string 11377 generated by <code>resize</code>: 11378 <ul> 11379 <li>for Bourne shell, add an <code>export</code> command. 11380 This was missing as far back as X11R5.</li> 11381 11382 <li>escape exclamation marks, used in xterm's reset 11383 string.</li> 11384 11385 <li>translate literal <code>\177\</code> to "^?".</li> 11386 </ul> 11387 </li> 11388 11389 <li>improve configure check for <code>tgetent()</code> to work 11390 when <code>$TERMCAP</code> has been set to a specific 11391 entry.</li> 11392 11393 <li>modify <code>minstall.sh</code> to use "%" rather than "@", 11394 to avoid problems with AFS (report by Zdenek Sekera).</li> 11395 11396 <li>list fatal error codes from <code>error.h</code> in the 11397 manpage, remove unused codes in <code>error.h</code>.</li> 11398 11399 <li>use more explicit wording for manpage list of color 11400 resources, since at least one user confused the generic names 11401 such as "black" with the names in rgb.txt (the latter are now 11402 used).</li> 11403 11404 <li>minor fix to description of 1003 mouse mode in ctlseqs.ms 11405 (Larry Riedel).</li> 11406 </ul> 11407 11408 <h1><a name="xterm_171" id="xterm_171">Patch #171 - 2002/12/12 - 11409 XFree86 4.2.99.3</a></h1> 11410 11411 <ul> 11412 <li>modify parser tables to improve detection of malformed 11413 control sequences, making xterm behave more like a real DEC 11414 terminal (patch by Paul Williams).</li> 11415 11416 <li>update comment in <code>input.c</code> to document 11417 <code>Meta</code> as a modifier for escape sequences (patch by 11418 D Roland Walker).</li> 11419 11420 <li>add ifdef'd code for logging option which adds the hostname 11421 and a timestamp to the generated logfile name. The ifdef's are 11422 setup with the configure script (patch by Nelson Beebe).</li> 11423 11424 <li>remove <code>xevents()</code> call from the end of 11425 <code>BlinkCursor()</code>, to fix an occasional problem which 11426 caused xterm to pause until a key was pressed. The reason for 11427 this was that there was no check to ensure that there really 11428 were events for <code>xevents()</code> to process. (patch by 11429 Semen A Ustimenko <semenu@FreeBSD.org>).</li> 11430 11431 <li>remove unused mode-params from <code>open()</code> calls 11432 that do not create a file.</li> 11433 11434 <li>modify configure script to put new items first on 11435 <code>$CPPFLAGS</code> and <code>$CFLAGS</code> to avoid 11436 conflict with environment's <em>-I</em> and <em>-D</em> 11437 options.</li> 11438 11439 <li>update config.guess, config.sub</li> 11440 11441 <li>resync with XFree86 CVS 11442 <ul> 11443 <li>fix va_args glitches for xterm/libfontconfig: 0 == 11444 (void*)0 isn't true for all platforms (Egbert Eich).</li> 11445 11446 <li>initialise ProgramName in xterm's main before 11447 referencing it (XFree86 #5473, Peter Valchev).</li> 11448 11449 <li>some cleanup of Imakefile ifdef's (Marc La 11450 France).</li> 11451 </ul> 11452 </li> 11453 </ul> 11454 11455 <h1><a name="xterm_170" id="xterm_170">Patch #170 - 2002/10/13 - 11456 XFree86 4.2.1</a></h1> 11457 11458 <ul> 11459 <li>correct an off-by-one allocating data for sorted help 11460 message.</li> 11461 11462 <li>modify configure script to check for Xpm library, on which 11463 XFree86 Xaw library depends.</li> 11464 11465 <li>update config.guess, config.sub</li> 11466 </ul> 11467 11468 <h1><a name="xterm_169" id="xterm_169">Patch #169 - 2002/10/5 - 11469 XFree86 4.2.1</a></h1> 11470 11471 <ul> 11472 <li>modify wording of some options in help message to make them 11473 use <code>-/+</code> consistently with respect to "on/off" or 11474 "off/on".</li> 11475 11476 <li>sort options list which is displayed in help- and 11477 syntax-messages at runtime to simplify maintenance.</li> 11478 11479 <li>remove support for Amoeba and Minix (Juliusz Chroboczek 11480 noted it was removed from XFree86 server; there have been no 11481 users since 1996).</li> 11482 11483 <li>add configure script option 11484 <code>--disable-session-mgt</code> to control whether the 11485 session management code should be compiled-in (request by H 11486 Merijn Brand).</li> 11487 11488 <li>ifdef'd the session-management changes with 11489 <code>OPT_SESSION_MGT</code>, to accommodate X11R5 which 11490 predates the related definitions.</li> 11491 11492 <li>fix <code>decode_keyvalue()</code>, which did not properly 11493 parse multiple settings as needed for the <code>ttyModes</code> 11494 resource, since it did not skip over the parsed data.</li> 11495 11496 <li>fix an option-parsing conflict between <code>-class</code> 11497 and <code>-cjk_width</code> (Nam SungHyun)</li> 11498 11499 <li>add a missing null in <code>XtVaSetValues()</code> call 11500 used in <code>Cleanup()</code> (Nam SungHyun)</li> 11501 </ul> 11502 11503 <h1><a name="xterm_168" id="xterm_168">Patch #168 - 2002/9/29 - 11504 XFree86 4.2.1</a></h1> 11505 11506 <ul> 11507 <li>improve data reported for control sequence that requests 11508 window position by taking into account the window decorations, 11509 e.g., border and title (patch by Jess Thrysoee 11510 <jess@thrysoee.dk>).</li> 11511 11512 <li>add <code>-cjk_width</code> and corresponding resource 11513 <code>cjkWidth</code> (patch by Jungshik Shin 11514 <jshin@mailaps.org>).</li> 11515 11516 <li>add <code>-into</code> option, for embedding xterm in a 11517 Tcl/Tk application (patch by George Peter Staplin 11518 <georgeps@xmission.com>).</li> 11519 11520 <li>add simple session management (XSM) client capabilities to 11521 xterm. So a session manager such as, e.g., xsm, should be able 11522 to respawn or kill xterms without the help of an SM proxy (like 11523 smproxy), which is a hack and almost always buggy (patch by 11524 David Madore).</li> 11525 11526 <li>fix conflict between ifdef's for 11527 <code>OPT_DEC_LOCATOR</code> and <code>OPT_READLINE</code> in 11528 button.c (reported by Ilya Zakharevich).</li> 11529 11530 <li>fix for inconsistent use of <code>struct utmp</code> versus 11531 <code>struct utmpx</code> introduced in <a href= 11532 "#xterm_167">patch #167</a> (patches by Paul Gilmartin, Marc La 11533 France).</li> 11534 11535 <li>modify logic for <code>metaSendsEscape</code> to allow it 11536 to work in a setup where the Meta-key is not recognized as a 11537 modifier by the key-translations logic (discussion of 11538 eightBitInput with H.J.Lu). Note however that Vincent 11539 Lefèvre reported this in January).</li> 11540 11541 <li>use null pointer values consistently, rather than literal 11542 "0", for ending variable-length argument lists, e.g., for 11543 <code>execlp()</code> (based on patch by Matthieu Herrb).</li> 11544 11545 <li>correct logic of <code>ChangeAnsiColorRequest()</code>, 11546 which would do a screen repaint after replying to a request for 11547 information.</li> 11548 11549 <li>improve scripts in vttests to work with systems whose 11550 shells support <code>echo -n</code> and have, as does Debian, 11551 an unrelated <code>print</code> utility.</li> 11552 11553 <li>add vttests/acolors.sh to demonstrate OSC 4, which queries 11554 or sets ANSI colors.</li> 11555 11556 <li>fixes for ctlseqs.ms (Pavel Roskin, Ilya Zakharevich).</li> 11557 11558 <li>typos in xterm manpage (Jens Schweikhardt)</li> 11559 11560 <li>remove a redundant GCC_UNUSED from InitPopup() (Nam 11561 SungHyun)</li> 11562 </ul> 11563 11564 <h1><a name="xterm_167" id="xterm_167">Patch #167 - 2002/8/24 - 11565 XFree86 4.2.0</a></h1> 11566 11567 <ul> 11568 <li>correct ifdef's for <code>USE_TERMCAP</code> to match 11569 cygwin configuration.</li> 11570 11571 <li>fix several places in ctlseqs.ms which had no boxes around 11572 the literal text (report by Ilya Zakharevich).</li> 11573 11574 <li>extend mouse support for readline, ifdef'd with 11575 OPT_READLINE (integrated patch from Ilya Zakharevich).</li> 11576 11577 <li>modify terminfo description to match default for 11578 <code>modifyCursorKeys</code> resource.</li> 11579 11580 <li>add <code>modifyCursorKeys</code> resource to control how 11581 the shift- and similar modifiers are used to make a cursor 11582 escape sequence. The default makes a modified escape sequence 11583 always start with CSI and puts the modifier as the second 11584 parameter, to avoid confusing applications that would interpret 11585 the first parameter as a repeat count. The original behavior 11586 can be obtained by setting the resource to 0 (newsgroup 11587 discussion with Stephen J Turnbull, Jeffrey Altman).</li> 11588 11589 <li>correct missing initializations for 11590 <code>appdefaultCursor</code> and <code>appdefaultKeypad</code> 11591 resources.</li> 11592 11593 <li>add configure option <code>--enable-luit</code> and ifdef'd 11594 the luit-related code with OPT_LUIT_PROG.</li> 11595 11596 <li>modify xterm to invoke luit (integrated patch by Tomohiro 11597 Kubota)</li> 11598 11599 <li>update wcwidth.c to match Markus Kuhn's 2002-05-18 11600 version.</li> 11601 11602 <li>correct limit-checking in <code>ComputeSelect()</code> to 11603 handle selections that extend off the visible area; rather than 11604 modify the parameters to <code>TrackText()</code>, use 11605 <code>ScrollSelection()</code> to update the highlighting 11606 limits. (reported by Yegappan Lakshmanan and Nelson Beebe, 11607 patch by Alexander V Lukyanov).</li> 11608 11609 <li>correct manpage description of <code>tiXtraScroll</code> 11610 resource (reported by Tony Finch).</li> 11611 11612 <li>changes from OpenBSD: 11613 <ul> 11614 <li>Make xterm setgid utmp to be able to update utmp even 11615 with root privileges revoked.</li> 11616 11617 <li>If not updating utmp, revoke group privileges totally 11618 too.</li> 11619 </ul> 11620 </li> 11621 11622 <li>changes from NetBSD: 11623 <ul> 11624 <li>Check that the return value from ttyslot() is greater 11625 than 0 before writing the utmp file. Fixes w's "w: Stale 11626 utmp entry: <user> <tty> <pty>" 11627 errors.</li> 11628 11629 <li>Use openpty() to deal with new pty naming scheme.</li> 11630 </ul> 11631 </li> 11632 11633 <li>add <code>print-redir</code> action and menu entry to allow 11634 user to switch terminal in/out of printer controller mode. It 11635 appears from the manual that a real vt220 would not switch back 11636 to normal mode, so another mechanism is used (addresses Debian 11637 #37517).</li> 11638 11639 <li>check if <code>printerCommand</code> resource string is 11640 empty, use this to allow user to disable printer function.</li> 11641 11642 <li>trim trailing blanks from resource strings.</li> 11643 11644 <li>check return value from <code>ptsname()</code>, which may 11645 return null for example if someone has changed the permissions 11646 of /dev/pts to zero (Debian #121899).</li> 11647 11648 <li>modify OS/2 version to use <code>__UNIXOS2__</code> 11649 definition rather than <code>__EMX__</code>, related cleanup 11650 (patch by Holger Veit).</li> 11651 11652 <li>used modified indent 2.0 (patch <a href= 11653 "ftp://ftp.invisible-island.net/gnu-patches/">20020428</a>) to 11654 reformat most of the C source files, to simplify 11655 maintenance.</li> 11656 11657 <li>fix a couple of places where there were leading tabs on 11658 symbol-definition lines in Imakefile (Marc La France from 11659 report by Tony Finch)</li> 11660 11661 <li>add imake variable (TraceXTerm) to allow building debug 11662 version (Egbert Eich).</li> 11663 </ul> 11664 11665 <h1><a name="xterm_166" id="xterm_166">Patch #166 - 2002/3/25 - 11666 XFree86 4.2.0</a></h1> 11667 11668 <ul> 11669 <li>correct a bug in selection: double clicking on a word which 11670 was partly scrolled off the screen may select that text (report 11671 by Vincent Lefèvre <vincent@vinc17.org>).</li> 11672 11673 <li>implement <code>veryBoldColors</code> resource to control 11674 whether the corresponding video attribute such as 11675 <code>bold</code> is displayed when using 11676 <code>colorBDMode</code>, etc. (request by Josh Howard 11677 <jrh@vicor-nb.com>).</li> 11678 11679 <li>define escape sequences for function keys F21-F35 (patch by 11680 Stephen P Wall).</li> 11681 11682 <li>change the colors for the 256-color model, making them less 11683 skewed toward black (patch by Stephen P Wall).</li> 11684 11685 <li>add <code>vt100Graphics</code> resource (see <a href= 11686 "#xterm_115">patch #115</a>, based on discussion with Glenn 11687 Maynard).</li> 11688 11689 <li>ifdef'd Xaw/Xaw3d/neXtaw includes separately to avoid 11690 potential incompatibilities between these flavors of Athena 11691 widgets.</li> 11692 11693 <li>add configure check for XFree86 4.x Xaw library, whose 11694 geometry management is broken, to avoid trying to use it for 11695 toolbar configuration.</li> 11696 11697 <li>updates to configure script from vile and lynx to allow 11698 configure.in to be compiled with autoconf 2.5x</li> 11699 11700 <li>add a check for null pointer return by 11701 <code>ptsname()</code> (newsgroup posting from Mike Silva 11702 <mikesilva@lucent.com>).</li> 11703 11704 <li>fill in a few details needed to allow UTF-8 mode to switch 11705 on/off after startup. This requires that <code>wideChars</code> 11706 resource be set. (based on comments in 4 Aug 2001 by Alexey 11707 Marinichev <lyosha@lyosha.2y.net>).</li> 11708 11709 <li>remove duplicate install rules that make directories, e.g., 11710 so installing manpage will not create app-defaults 11711 directory.</li> 11712 11713 <li>add comment in in <code>do_osc()</code>, reserving cases 30 11714 and 31 for for Konsole (request by Stephan Binner 11715 <Stephan.Binner@gmx.de>).</li> 11716 11717 <li>fixes for ctlseqs.ms and xterm.man (patch by Werner Lemberg 11718 <wl@gnu.org>).</li> 11719 11720 <li>add check for monochrome display, disabling colorMode in 11721 that case (fixes Debian #134130).</li> 11722 11723 <li>resync with XFree86 CVS 11724 <ul> 11725 <li>Fix some xterm build warnings on *BSD (patch by David 11726 Dawes).</li> 11727 11728 <li>Only use SA_RESTART in xterm when it's available (patch 11729 by Frank Liu).</li> 11730 11731 <li>Fix incorrect code in signal handlers in most of the 11732 clients, xterm and xdm not done yet (patch by Matthieu 11733 Herrb).</li> 11734 </ul> 11735 </li> 11736 </ul> 11737 11738 <h1><a name="xterm_165" id="xterm_165">Patch #165 - 2002/1/5 - 11739 XFree86 4.1.0</a></h1> 11740 11741 <ul> 11742 <li>modify <code>uxterm</code> script to strip encoding part 11743 from environment variable before adding ".UTF-8" (based on 11744 Debian #125947, but using a more portable solution).</li> 11745 11746 <li>add an assignment statement in VTInitialize() to make 11747 <code>awaitInput</code> resource work.</li> 11748 11749 <li>use new macros init_Bres(), etc., in VTInitialize() to add 11750 trace of the initialization of resources.</li> 11751 11752 <li>modify checks for $LC_ALL, related environment variables to 11753 ensure the resulting strings are nonempty (report by Markus 11754 Kuhn).</li> 11755 11756 <li>add an ifdef in charproc.c for num_ptrs variable in case 11757 all configure options are disabled.</li> 11758 11759 <li>modify definition of getXtermBackground() to avoid negative 11760 array index warning on Tru64 (report by Jeremie Petit).</li> 11761 11762 <li>improve fix from patch #165 (still Debian #117184, report 11763 by Matt Zimmerman <mdz@debian.org>)</li> 11764 11765 <li>correct install rule for uxterm in Makefile.in, to handle 11766 the case where building in a different directory than xterm's 11767 source (patch by Paul Gilmartin).</li> 11768 11769 <li>documented ANSI.SYS-style cursor save/restore escape 11770 sequences in ctlseqs.ms, which are in xterm since X11R5.</li> 11771 11772 <li>correct two entries in the default charClass table, which 11773 did not follow the manpage comment about the character number 11774 corresponding to the class (patch by Marc Bevand 11775 <bevand_m@epita.fr>).</li> 11776 11777 <li>fix a couple of typos in comments in the app-defaults files 11778 (David Krause <xfree86@davidkrause.com>).</li> 11779 11780 <li>resync with XFree86 CVS 11781 <ul> 11782 <li>update language of copyrights in some files to reflect 11783 the fact that they were reassigned from X Consortium to The 11784 Open Group in 1998. Note that this xterm source is derived 11785 from the 1996 version from X Consortium, does not 11786 incorporate changes made by X Consortium or The Open Group 11787 after that date, hence we do not add The Open Group's 1998 11788 copyright date to related files.</li> 11789 11790 <li>save/restore <code>errno</code> in signal catcher 11791 (patch by Matthieu Herrb).</li> 11792 11793 <li>modify UXTerm.ad's font5 resource so that xterm can 11794 display double width characters using a font distributed 11795 with XFree86 (Tomohiro Kubota).</li> 11796 </ul> 11797 </li> 11798 </ul> 11799 11800 <h1><a name="xterm_164" id="xterm_164">Patch #164 - 2001/11/13 - 11801 XFree86 4.1.0</a></h1> 11802 11803 <ul> 11804 <li>correct a case where <code>ptyInitialErase</code> and 11805 <code>backarrowKeyIsErase</code> resources combine to set 11806 <code>DECBKM</code> mode, but a <code>reset</code> command 11807 would not reset xterm to that state, making the erase character 11808 revert to ^H (Debian #117184)</li> 11809 </ul> 11810 11811 <h1><a name="xterm_163" id="xterm_163">Patch #163 - 2001/11/04 - 11812 XFree86 4.1.0</a></h1> 11813 11814 <ul> 11815 <li>correct ifdef's for <code>__QNX__</code> and 11816 <code>USE_SYSV_PGRP</code> in main.c call to 11817 <code>tcsetpgrp</code>, which broke bash behavior around 11818 <a href="#xterm_140">patch #140</a> (report/patch by Frank Liu 11819 <fliu@mail.vipstage.com>).</li> 11820 11821 <li>modify trace.c to fix missing definition of GCC_UNUSED for 11822 compilers other than gcc when configured for trace code 11823 (report/patch by Paul Gilmartin).</li> 11824 11825 <li>change format in TraceOptions() to use long rather than 11826 int, since the latter could lose precision on 64-bit machines 11827 (report/patch by Nelson Beebe).</li> 11828 11829 <li>modify xterm manual page and minstall.sh to allow imake 11830 rules to define location of app-defaults directory (Debian 11831 #87611).</li> 11832 11833 <li>review/update list of conflicting preprocessor symbols to 11834 remove from $CPPFLAGS at the end of the configure script. In 11835 particular, this allows one to configure xterm without the 11836 utempter library on Redhat 7.1 (report/patch by Adam 11837 Sulmicki).</li> 11838 </ul> 11839 11840 <h1><a name="xterm_162" id="xterm_162">Patch #162 - 2001/10/23 - 11841 XFree86 4.1.0</a></h1> 11842 11843 <ul> 11844 <li>correct logic that processes <code>-class</code> option, so 11845 that a following <code>-e</code> option is handled (Debian 11846 #116297).</li> 11847 11848 <li>improve options-decoding to allow <code>-version</code> and 11849 <code>-help</code> options to be combined (Debian 11850 #110226).</li> 11851 11852 <li>add a 10 millisecond delay in event loop when processing 11853 <code>-hold</code> option, to avoid using too much CPU time 11854 (Debian #116213).</li> 11855 11856 <li>prefix final program execution in <code>uxterm</code> with 11857 "exec" to avoid a useless shell hanging around (Christian 11858 Weisgerber).</li> 11859 </ul> 11860 11861 <h1><a name="xterm_161" id="xterm_161">Patch #161 - 2001/10/10 - 11862 XFree86 4.1.0</a></h1> 11863 11864 <ul> 11865 <li>modify logic that resets keypad application mode to avoid 11866 doing this if there is no modifier associated with the Num_Lock 11867 keysym (report by John E Davis <davis@space.mit.edu> and 11868 Alan W Irwin <irwin@beluga.phys.uvic.ca>).</li> 11869 11870 <li>add built-in translation for Control/KP_Separator to 11871 KP_Subtract, to accommodate users who wish to use xmodmap to 11872 reassign the top row of the numeric keypad.</li> 11873 11874 <li>correct Imakefile install-rule for <code>uxname</code> 11875 script (reported by Nam SungHyun <namsh@lge.com>).</li> 11876 11877 <li>resync with XFree86 CVS – correct typo in 11878 <code><ncurses/term.h></code> ifdef.</li> 11879 </ul> 11880 11881 <h1><a name="xterm_160" id="xterm_160">Patch #160 - 2001/10/7 - 11882 XFree86 4.1.0</a></h1> 11883 11884 <ul> 11885 <li>modify logic in main.c (see <a href="#xterm_145">patch 11886 #145</a>) to avoid generating the same identifier, for example, 11887 for /dev/tty1 and /dev/pts/1, which is used to denote an entry 11888 in the utmp file (Debian bug report #84676), A similar fix was 11889 also sent by Jerome Borsboom <borsboom@westbrabant.net> 11890 in May, but I overlooked it when reviewing bug reports.</li> 11891 11892 <li>add configure check for <code><ncurses/term.h></code> 11893 to get rid of hardcoded <code>__CYGWIN__</code> ifdef in 11894 resize.c 11895 <p>NOTE: The CYGWIN port should not be linking 11896 <code>resize</code> with ncurses. It appears that the only 11897 reason it is, is because both the ncurses and termcap ports 11898 on that platform are badly misconfigured (essential pieces 11899 have been removed, etc). Checking for 11900 <code><ncurses/term.h></code> does not hurt anything, 11901 since there are some correct installations that are set up 11902 that way.</p> 11903 </li> 11904 11905 <li>add a sample <code>uxterm</code> script, which uses the 11906 <code>UXTerm</code> application defaults for UTF-8 11907 environments.</li> 11908 11909 <li>undo change to xterm application defaults, since this 11910 introduced an unnecessary incompatibility. The intended 11911 functionality was already addressed by the <a href= 11912 "#xterm_141">UXTerm</a> app-defaults file.</li> 11913 11914 <li>resync with XFree86 CVS 11915 <ul> 11916 <li>Modified xterm app default to use LFD fontnames instead 11917 of old type (Michael Schroeder).</li> 11918 11919 <li>Fix xterm when XIM is disabled - caused a segfault 11920 (Tomohiro Kubota).</li> 11921 </ul> 11922 </li> 11923 </ul> 11924 11925 <h1><a name="xterm_159" id="xterm_159">Patch #159 - 2001/9/19 - 11926 XFree86 4.1.0</a></h1> 11927 11928 <ul> 11929 <li>remove an ifdef for <code>USE_HANDSHAKE</code> added in 11930 patch #158 from the second <code>TIOCSSIZE</code> ioctl call in 11931 the initialization code. Paul Gilmartin reports that for 11932 Solaris 2.6 (sparc), stty does not show that xterm sets rows 11933 and columns unless the second ioctl is executed.</li> 11934 11935 <li>correct treatment of empty parameter list for some OSC 11936 strings (report by Sami Farin <sfarin@ratol.fi>).</li> 11937 </ul> 11938 11939 <h1><a name="xterm_158" id="xterm_158">Patch #158 - 2001/9/8 - 11940 XFree86 4.1.0</a></h1> 11941 11942 <ul> 11943 <li>augment key translations for scrollbar widget to ensure 11944 that keystrokes intended for the text area are not lost if the 11945 mouse pointer happens to fall on the scrollbar. This can 11946 happen, for instance, if the user's <code>app-defaults</code> 11947 or <code>.Xdefaults</code> file contains a translations 11948 resource, though it may also happen through unrelated resource 11949 settings: probably a bug in libXt (reported by Paul Fox 11950 <pgf@foxharp.boston.ma.us> and Dmitry Yu. Bolkhovityanov 11951 <D.Yu.Bolkhovityanov@inp.nsk.su>).</li> 11952 11953 <li>widen ifdef's in xterm.h to define 11954 <code>__EXTENSIONS__</code> on Solaris, for compilers other 11955 than gcc. This was added along <code>_POSIX_C_SOURCE</code> 11956 with in <a href="#xterm_151">patch #151</a>, but is not 11957 sufficient since Sun's compiler does not define 11958 <code>__STDC__</code> by default (report by Matthias Scheler 11959 <tron@zhadum.de>).</li> 11960 11961 <li>modify xterm to obtain the closest matching color if an 11962 exact color is not available, e.g., on 8-bit displays (patch by 11963 Stephen P Wall)</li> 11964 11965 <li>implement "OverTheSpot" preedit type of XIM input (patch by 11966 Tomohiro Kubota): 11967 <ul> 11968 <li>This preedit type is a reasonable compromise between 11969 simpleness of implementation and usefulness. "Root" preedit 11970 type is easy to implement but not useful; "OnTheSpot" 11971 preedit type is the best in the point of view of user 11972 interface but very complex. And more, "OverTheSpot" is the 11973 preedit type which the most XIM servers support. Thus, to 11974 achieve reasonable usability, support of "OverTheSpot" 11975 preedit type is needed.</li> 11976 11977 <li>In "OverTheSpot" preedit type, the preedit 11978 (preconversion) string is displayed at the position of the 11979 cursor. On the other hand, it is XIM server's 11980 responsibility to display the preedit string. Thus, it is 11981 needed for XIM client (here XTerm) to inform the XIM server 11982 of the cursor position. And more, to achieve good visual 11983 proportion, preedit string must be written using proper 11984 font. Thus, it is XIM client's responsibility to inform the 11985 XIM server of the proper font. The font must be supplied by 11986 "fontset". Fontset is a set of fonts with charsets which 11987 are specified by the current locale. Since XTerm uses 11988 ISO10646 fonts regardless of the current locale, the fonts 11989 for XIM must be prepared separately. It is difficult to 11990 prepare fonts which are similar to XTerm font. Thus, my 11991 patch uses a simple way - the default font is "*" which 11992 matches every fonts and X library will automatically choose 11993 fonts with proper charsets. I added "-fx" command option 11994 and "ximFont" resource to override this default font 11995 setting.</li> 11996 11997 <li>changed the definition of "OverTheSpot" preedit type 11998 from XIMPreeditPosition|XIMStatusArea to 11999 XIMPreeditPosition|XIMStatusNothing. This matches the 12000 behavior of other programs such as Rxvt, Kterm, Gedit.</li> 12001 12002 <li>A tiny XIM bugfix is also included. By calling 12003 XSetLocaleModifiers() with parameter of "", it can consider 12004 XMODIFIERS environmental variable which is a standard way 12005 for users to specify XIM server to be used.</li> 12006 </ul> 12007 </li> 12008 12009 <li>adjust configure script to accommodate repackaging of 12010 keysym2ucs.c as include-file for xutf8.c (patch by Tomohiro 12011 Kubota).</li> 12012 12013 <li>add the <code>UXTerm</code> app-defaults file to makefile 12014 install rules (request by Juliusz Chroboczek).</li> 12015 12016 <li>correct logic in <code>get_termcap()</code>, which returned 12017 false if the <code>tgetent()</code> call indicated that xterm 12018 was linked with terminfo. Although the <code>$TERMCAP</code> 12019 variable cannot be adjusted in this case, xterm still needs 12020 information from this call to extract data to initialize the 12021 erase-mode when the <code>ptyInitialErase</code> resource is 12022 false.</li> 12023 12024 <li>modify <code>ScrollbarReverseVideo()</code> function to 12025 cache the original border color, so it can restore that when an 12026 application flashes the screen (Bugzilla #38872).</li> 12027 12028 <li>resync with XFree86 CVS 12029 <ul> 12030 <li>remove ifdef's for X_NOT_STDC_ENV (patch by David 12031 Dawes).</li> 12032 12033 <li>add Cygwin to special errno handling case in ptydata.c 12034 (Alan Hourihane)</li> 12035 12036 <li>set screen size earlier in initialization, to address a 12037 race with window manager resizing its clients (Keith 12038 Packard).</li> 12039 </ul> 12040 </li> 12041 </ul> 12042 12043 <h1><a name="xterm_157" id="xterm_157">Patch #157 - 2001/6/18 - 12044 XFree86 4.1.0</a></h1> 12045 12046 <ul> 12047 <li>clean up button.c and input.c (patch by Juliusz 12048 Chroboczek). The basic idea is to use a single set of APIs in 12049 the XTerm core, and put a set of workarounds in a separate 12050 file. As you will notice, this drastically simplifies parts of 12051 the code; in particular, the only remaining ifdefs related to 12052 the differences between Xutf8 and legacy systems are related to 12053 the selection provider logic. This defines two new files, 12054 xutf8.h and xutf8.c, provide some half-hearted but fully 12055 portable emulation for the three Xutf8* functions that XTerm 12056 uses. Putting these in a separate file will allow people to 12057 experiment with more complex versions without making the core 12058 of XTerm more difficult to maintain. The functionality of the 12059 emulation is as follows. 12060 <ul> 12061 <li>Xutf8TextListToTextProperty fully handles XStringstyle 12062 and XUTF8StringStyle. It will only generate STRING for 12063 XStdICCTextStyle, and will only generate Latin-1 in 12064 XCompoundTextStyle (but label it as COMPOUND_TEXT, as the 12065 spec requires). (I have hesitated to make this function 12066 fail for XStdICCTextStyle and XCompoundTextStyle; this 12067 might be a smart thing to do, in the hope that the 12068 selection requestor will try UTF8_STRING afterwards; 12069 opinions?)</li> 12070 12071 <li>Xutf8TextPropertyToTextList fully handles STRING and 12072 UTF8_STRING. It systematically fails for 12073 COMPOUND_TEXT.</li> 12074 12075 <li>Xutf8LookupString will properly handle single-keystroke 12076 input for the keysyms covered by Markus' keysym2ucs 12077 function. It will not handle either compose key input or 12078 external input methods.</li> 12079 </ul> 12080 </li> 12081 12082 <li>add an ifdef for <code>SunXK_F36</code>, used in 12083 <code>xtermcapKeycode()</code> (patch by Mark Waggoner 12084 <waggoner@ichips.intel.com>).</li> 12085 12086 <li>modify check for login name to try <code>getlogin()</code> 12087 and $LOGNAME, $USER environment variables to detect if the user 12088 has logged in under an alias, i.e., an account with the same 12089 user id but a different name (Debian bug report #70084).</li> 12090 12091 <li>add resource <code>tiXtraScroll</code>, which can be used 12092 to preserve the screen contents in the scrollback rather than 12093 erasing it when starting a fullscreen application such as 12094 <code>vi</code> (patch by Ken Martin 12095 <fletcher@catsreach.org>).</li> 12096 12097 <li>two patches by Denis Zaitsev <zzz@cd-club.ru>: 12098 <ul> 12099 <li>added <code>forceBoxChars</code> resource to control 12100 the "line-drawing characters" option.</li> 12101 12102 <li>added <code>freeBoldBox</code> resource, which, when 12103 set true, suppresses check in 12104 <code>same_font_size()</code>, so xterm does not attempt to 12105 ensure that the bold font is the same size as the normal 12106 font.</li> 12107 </ul> 12108 </li> 12109 12110 <li>change the color class for ANSI colors and similar ones 12111 such as bold-color, etc., to follow the convention that the 12112 classname is the instance name with a leading capital (e.g., 12113 <code>color0</code> and <code>Color0</code> rather than 12114 <code>color0</code> and <code>Foreground</code>). There was 12115 little use for Foreground as a class other than to create 12116 occasional confusion and bug reports, most recently by Nelson 12117 Beebe who reports that it disables colors in xterm but not on 12118 Linux, which is probably due to a difference in resource 12119 evaluation order. A configure script option 12120 (--disable-color-class) is provided for anyone who did use the 12121 older behavior.</li> 12122 12123 <li>fix a signal-handling bug. When running xterm with 12124 <code>ksh</code> or similar shell such as bash 2.05, xterm will 12125 hang and not respond to keystrokes after the user types 12126 <code>suspend</code>. Additionally the popup menus do not 12127 respond, so it is not possible to send SIGCONT to the shell. 12128 What is happening is that the shell is sending itself SIGSTOP, 12129 and it is being stopped. Per specification it also means that 12130 the operating system is sending SIGCHLD to parent to the bash 12131 (XTERM). Now the issue is that xterm assumes it cannot happen 12132 and it expects to receive SIGCHLD only upon 12133 <em>termination</em> of its children. This causes a deadlock 12134 with xterm waiting for the child to die, and the child waiting 12135 for SIGCONT. (report/patch by Adam Sulmicki), analysis/testing 12136 by Sven Mascheck 12137 <sven.mascheck@student.uni-ulm.de>).</li> 12138 12139 <li>correct some inconsistent checks for 12140 <code>XtReleaseGC()</code> calls in 12141 <code>xtermLoadFont()</code> (patch by Nam SungHyun 12142 <namsh@lge.com>).</li> 12143 12144 <li>updated wcwidth.c and keysym2ucs.c to versions dated 12145 2001/1/12 and 2001/4/18, respectively from 12146 http://www.cl.cam.ac.uk/~mgk25/ucs/</li> 12147 12148 <li>correction to change from <a href="#xterm_90">patch 12149 #90</a>, which was intended to reset the saved cursor position 12150 for normal/alternate screens on a soft reset, but actually 12151 wiped out all of the saved cursor information. Just reset the 12152 saved position for the current screen (report by Michael 12153 Schroeder).</li> 12154 12155 <li>modify ShowCursor() and HideCursor() so that if the cursor 12156 points to the second part of a wide character, make the 12157 show/hide operate on the first position of the wide character 12158 (patch by Sven Verdoolaege).</li> 12159 12160 <li>scrolling in the alternate screen just before switching 12161 back to the main screen can cause extra blank lines to be 12162 inserted into the scrollback buffer (patch by Paul Vojta 12163 <vojta@math.berkeley.edu>).</li> 12164 12165 <li>resync with XFree86 4.1.0: 12166 <ul> 12167 <li>Use TermcapLibrary as -lncurses instead of -ltermcap, 12168 fixes problem building xterm/resize on Cygwin/XFree86 12169 (Harold Hunt).</li> 12170 12171 <li>Install xterm.termcap and xterm.terminfo when 12172 installing xterm (Torrey T. Lyons).</li> 12173 12174 <li>Fix some build issues on Cygwin/XFree86 (Suhaib 12175 Siddiqi).</li> 12176 12177 <li>Define CBAUD, when it's missing in xterm, on LynxOS 12178 (Stuart Lissaman).</li> 12179 </ul> 12180 </li> 12181 </ul> 12182 12183 <h1><a name="xterm_156" id="xterm_156">Patch #156 - 2001/4/28 - 12184 XFree86 4.0.3</a></h1> 12185 12186 <ul> 12187 <li>change order of selection-target types to make 8-bit xterm 12188 prefer UTF8_STRING to COMPOUND_TEXT (patch by Juliusz 12189 Chroboczek).</li> 12190 12191 <li>document <code>-fa</code>, <code>-fs</code> command-line 12192 options and <code>faceName</code>, <code>faceSize</code> 12193 resources which are used by the freetype library support.</li> 12194 12195 <li>if configure script finds freetype libraries, but imake 12196 definitions do not have the XRENDERFONT definition, define it 12197 anyway.</li> 12198 12199 <li>modify configure script check for freetype libraries to 12200 include <code><Xlib.h></code>, since an older version of 12201 the related headers relies on this (patch by Adam 12202 Sulmicki).</li> 12203 </ul> 12204 12205 <h1><a name="xterm_155" id="xterm_155">Patch #155 - 2001/4/20 - 12206 XFree86 4.0.3</a></h1> 12207 12208 <ul> 12209 <li>correct return type of in_put() from <a href= 12210 "#xterm_155">patch #153</a> changes, which left it not wide 12211 enough for UTF-8 (patch by Bruno Haible).</li> 12212 </ul> 12213 12214 <h1><a name="xterm_154" id="xterm_154">Patch #154 - 2001/4/11 - 12215 XFree86 4.0.3</a></h1> 12216 12217 <ul> 12218 <li>undo check for return value from <code>pututline</code> 12219 (used for debugging) since that function does not return a 12220 value on Slackware 3.6.</li> 12221 12222 <li>correct length in ScreenWrite, when rendering invisible 12223 text (patch by Sven Verdoolaege <skimo@kotnet.org>).</li> 12224 12225 <li>fixes/improvements for the <code>i18nSelection</code> 12226 resource from patch #153, by Bruno Haible: 12227 <ul> 12228 <li>add missing initialization for 12229 <code>i18nSelection</code> resource.</li> 12230 12231 <li>split-out the non-ICCM aspect of the 12232 <code>i18nSelection</code> resource as a new resource, 12233 <code>brokenSelections</code>.</li> 12234 </ul> 12235 </li> 12236 12237 <li>add configure check for <code><time.h></code> and 12238 <code><sys/time.h></code>, to allow for Unixware 7, 12239 which requires both. If the configure script is not used, only 12240 <code><time.h></code> will be included as before (report 12241 by Thanh Ma).</li> 12242 12243 <li>fix redefinition of <code>dup2</code>, 12244 <code>getutent</code>, <code>getutid</code>, 12245 <code>getutline</code> and <code>sleep</code> functions on 12246 Unixware 7 (report by Thanh Ma 12247 <Thanh.Ma@casi-rusco.com>)</li> 12248 12249 <li>add a fall-back definition for <code>__hpux</code>, which 12250 is apparently not defined in some compilers on HPUX 11.0 12251 (reported by Clint Olsen).</li> 12252 12253 <li>change VAL_INITIAL_ERASE, which is used as a fallback for 12254 the <code>"kb"</code> termcap string to 8, since that matches 12255 the xterm terminal description (request by Alexander V 12256 Lukyanov).</li> 12257 12258 <li>correct an off-by-one in <code>ClearInLine</code>, which 12259 caused the erase-characters (ECH) control to display 12260 incorrectly (patch by Alexander V Lukyanov).</li> 12261 12262 <li>correct escape sequences shown in terminfo for shifted 12263 editing keys. The modifier code was for the control key rather 12264 than the shift key.</li> 12265 </ul> 12266 12267 <h1><a name="xterm_153" id="xterm_153">Patch #153 - 2001/3/29 - 12268 XFree86 4.0.3</a></h1> 12269 12270 <ul> 12271 <li>increase PTYCHARLEN to 8 for os390, add some debugging 12272 traces for UTMP functions (patch by Paul Gilmartin).</li> 12273 12274 <li>correct an misplaced brace in 12275 <code>SelectionReceived()</code> (patch by Bruno Haible).</li> 12276 12277 <li>correct an assignment dropped in 12278 <code>SelectionReceived()</code> which made it not compile for 12279 wide-characters combined with debug traces.</li> 12280 12281 <li>correct typo, clarify description of 88- and 256-color 12282 controls (report by Bram Moolenaar).</li> 12283 12284 <li>correct a typo in ctlseqs.ms which caused DEC Locator 12285 control sequences using single quote "'" display grave "`" 12286 instead (reported by Paul Williams, apparently in patch 12287 #114).</li> 12288 </ul> 12289 12290 <h1><a name="xterm_152" id="xterm_152">Patch #152 - 2001/3/13 - 12291 XFree86 4.0.2</a></h1> 12292 12293 <ul> 12294 <li>correct index in inner loop in <code>VTInitI18N()</code> 12295 from patch #151 changes, which resulted in infinite loop under 12296 some conditions (report/analysis by Paul Gilmartin).</li> 12297 12298 <li>remove spurious "%|" from terminfo sgr capabilities 12299 (report/analysis by Adam M Costello, Debian #89222).</li> 12300 12301 <li>add shell script to adjust list of dynamic libraries linked 12302 by <code>resize</code> when building with the standalone 12303 configure script. Otherwise it uses the same list as for xterm, 12304 which is excessive.</li> 12305 12306 <li>fix a few compiler warnings reported by the 20010305 gcc 12307 snapshot.</li> 12308 </ul> 12309 12310 <h1><a name="xterm_151" id="xterm_151">Patch #151 - 2001/3/10 - 12311 XFree86 4.0.2</a></h1> 12312 12313 <ul> 12314 <li>alter the behaviour of selections in XTerm (patch by 12315 Juliusz Chroboczek). It is believed to follow the ICCCM + 12316 UTF8_STRING to the letter, both in UTF-8 and in eight-bit mode. 12317 From his description: 12318 <ul> 12319 <li>When compiled against XFree86 4.0.2, the patched XTerm 12320 will make the selection available as COMPOUND_TEXT, STRING 12321 or UTF8_STRING in both modes. It will request selections in 12322 the following order: 12323 <p>UTF-8 mode: UTF8_STRING, TEXT, COMPOUND_TEXT, 12324 STRING.<br> 12325 eight-bit mode: TEXT, COMPOUND_TEXT, UTF8_STRING, 12326 STRING.</p> 12327 </li> 12328 12329 <li>When compiled against an earlier version of XFree86 (or 12330 compiled with OPT_UTF8_API=0), it will still obey the 12331 ICCCM, but will neither request nor provide UTF8_STRING in 12332 eight-bit mode, and neither TEXT nor COMPOUND_TEXT in UTF-8 12333 mode.</li> 12334 12335 <li>For compatibility with previous versions of XTerm, a 12336 resource <code>i18nSelections</code> is provided, please 12337 see the manpage for details. However, due to an unexpected 12338 combination of ICCCM extensions by various bits and pieces 12339 of the libraries, interacting with previous versions of 12340 XTerm will work in many locales even without this flag. 12341 (Please do not set this resource to true by default, as 12342 this would violate the ICCCM.)</li> 12343 </ul> 12344 </li> 12345 12346 <li>improved error checking/reporting in VTInitI18N(), ensuring 12347 that lack of input method styles is treated distinctly from a 12348 mismatch.</li> 12349 12350 <li>remove an incorrect ifdef from patch #141 which suppressed 12351 overstriking to simulate bold font when xterm was compiled to 12352 support wide characters (report/analysis by Adam M Costello 12353 <amc@cs.berkeley.edu>, Debian #76404, Debian 12354 #77575).</li> 12355 12356 <li>modify <code>RequestResize()</code> function to 12357 save/restore window manager hints. Its call to 12358 <code>XtMakeResizeRequest()</code> had the undesirable 12359 side-effect of clearing window manager hints, e.g., when 12360 switching to 132-columns via DECCOLM escape sequence. Window 12361 manager hints make it simple to resize xterm in terms of 12362 character cells rather than pixels (reports by Christian 12363 Weisgerber, Debian #79939). 12364 <p>This applies to the normal configuration. When built with 12365 toolbar support, the hints are applied to a different widget 12366 level (more work will be needed to make hints work with the 12367 toolbar).</p> 12368 </li> 12369 12370 <li>fix a redefinition warning for resize.c on OpenBSD (patch 12371 by Christian Weisgerber).</li> 12372 12373 <li>change resource corresponding to <code>-T</code> option to 12374 match Xt library's <code>-title</code>, i.e., 12375 <code>.title</code> rather than <code>*title</code> so the 12376 command-line options are interchangeable as documented (Debian 12377 bug report #68843).</li> 12378 12379 <li>add script used from autoconf'd makefile for installing 12380 manpages, since recent XFree86 changing the way section numbers 12381 are represented makes the install dependent on extra 12382 scripts.</li> 12383 12384 <li>add configure check for freetype libraries and configure 12385 option --disable-freetype to override this feature.</li> 12386 12387 <li>modify some configure script macros to avoid using 12388 changequote(), which has been rendered useless in the latest 12389 autoconf alpha 2.49c</li> 12390 12391 <li>update config.guess, config.sub to 2001-2-13</li> 12392 12393 <li>remove redundant/contradictory __CYGWIN__ definitions from 12394 resize.c</li> 12395 12396 <li>correct manpage typo introduced by X11R6.5 resync.</li> 12397 </ul> 12398 12399 <p>Changes from XFree86 4.0.2:</p> 12400 12401 <ul> 12402 <li>add definition of <code>_POSIX_C_SOURCE</code> for Solaris 12403 to make this compile with <code>gcc -ansi -pedantic</code> 12404 (report by <mark@zang.com>.</li> 12405 </ul> 12406 12407 <h1><a name="xterm_150" id="xterm_150">Patch #150 - 2000/12/29 - 12408 XFree86 4.0.2</a></h1> 12409 12410 <ul> 12411 <li>move the binding for shifted keypad plus/minus, which 12412 invokes the <code>larger-vt-font()</code> and 12413 <code>smaller-vt-font()</code> actions, respectively, into the 12414 translations resource (suggested by Marius Gedminas 12415 <mgedmin@puni.osf.lt>).</li> 12416 12417 <li>modify configure script to support the 12418 <code>--program-prefix</code>, <code>--program-suffix</code> 12419 and <code>--program-transform-name</code> options (request by 12420 Alison Winters <alison@mirrabooka.com>).</li> 12421 12422 <li>fixes for wide/combining characters (Robert Brady): 12423 <ul> 12424 <li>fix a scrolling / combining characters display 12425 anomaly</li> 12426 12427 <li>fix a problem with double-width characters where if the 12428 primary font had no box-drawing characters, the right hand 12429 half of double-width characters was erased (reported by Yao 12430 Zhang <yzhang@sharemedia.com>).</li> 12431 12432 <li>fix special case of null byte for key handling in UTF-8 12433 locales.</li> 12434 </ul> 12435 </li> 12436 12437 <li>modify logic that compares sizes of normal and bold fonts 12438 to be more forgiving of the font server's choice of bold font 12439 which must match the normal font's size. Now 12440 <code>same_font_size()</code> compares the height of the fonts 12441 rather than individually ascent and descent, and allows the 12442 bold font to be one pixel smaller than the normal font 12443 (addresses a report by Alan Citterman <alan@mticket.com>, 12444 who says that something in patches <a href= 12445 "#xterm_146">#146</a> to <a href="#xterm_148">#148</a> made 12446 xterm more likely to overstrike bold fonts, and indirectly 12447 Debian bug report #76404, which reports the opposite).</li> 12448 12449 <li>make configure script use $CFLAGS and $CPPFLAGS 12450 consistently, including removing a chunk from configure.in 12451 which attempted to save/restore $CPPFLAGS while processing 12452 value set by the --x-includes option, but lost values set in an 12453 intervening AC_CHECK_HEADERS. This change modifies macros 12454 CF_ADD_CFLAGS, CF_ANSI_CC_CHECK and CF_X_TOOLKIT, as well as 12455 removing variables IMAKE_CFLAGS and X_CFLAGS from the generated 12456 makefile (the AC_CHECK_HEADERS problem was reported by Albert 12457 Chin-A-Young <china@thewrittenword.com<).</li> 12458 12459 <li>correct a comparison in SELECTWORD case of ComputeSelect(), 12460 which resulted in a word-selection wrapping past the first 12461 column without checking the first column's character class 12462 (reported by Christian Lacunza 12463 <celacunza@netscape.net></li> 12464 12465 <li>correct a logic in UTF-8 mode for selecting double-width 12466 characters; a combining character was omitted (patch by Markus 12467 Kuhn).</li> 12468 12469 <li>add feature to pop (raise) window when a bell is received 12470 (patch by Gael Roualland 12471 <gael.roualland@dial.oleane.com>).</li> 12472 12473 <li>add __NetBSD__ and __OpenBSD__ to special-case in 12474 xterm_io.h for USE_POSIX_TERMIOS definition (patch by Christian 12475 Weisgerber).</li> 12476 12477 <li>move special-case HPUX include for <sys/bsdtty.h> to 12478 xterm_io.h to define TIOCSLTC, making HAS_LTCHARS defined for 12479 HPUX 10.20 (report by Bruno Betro).</li> 12480 </ul> 12481 12482 <h1><a name="xterm_149" id="xterm_149">Patch #149 - 2000/12/6 - 12483 XFree86 4.0.1h</a></h1> 12484 12485 <ul> 12486 <li>restructured includes for <code>termios.h</code>, 12487 <code>termio.h</code> and related definitions for main.c, 12488 os2main.c, screen.c and resize.c so they will share equivalent 12489 definitions in a new header <code>xterm_io.h</code>. This is 12490 intended to solve some problems mainly for HPUX which appear to 12491 arise from inconsistent definitions for SIGWINCH- and 12492 HAS_LTCHARS-related symbols (reports by Bruno Betro, Jeremie 12493 Petit and Clint Olsen).</li> 12494 12495 <li>improve usability of double-width fonts by allowing normal 12496 fonts to be given as double-width (from a patch by Fabrice 12497 Bellard <bellard@email.enst.fr>).</li> 12498 12499 <li>correct a few compiler warnings in TRACE() macros for 12500 signed/unsigned variable differences (reported by Clint 12501 Olsen).</li> 12502 12503 <li>make configure script use $CFLAGS and $CPPFLAGS more 12504 consistently, i.e., by using CF_ADD_CFLAGS in CF_ANSI_CC 12505 macro.</li> 12506 12507 <li>expanded description of environment variables in 12508 manual-page.</li> 12509 12510 <li>modify OPT_TCAP_QUERY feature to always return the termcap 12511 or terminfo capability string in the response, and to 12512 read/write the names in hexadecimal form to allow for the 12513 special case of termcap's <code>k;</code> name (patch by Bram 12514 Moolenaar).</li> 12515 12516 <li>add OPT_SAME_NAME and OPT_TCAP_QUERY to xtermcfg.hin, so 12517 the corresponding configure options work (patch by Bram 12518 Moolenaar).</li> 12519 12520 <li>resync with XFree86 4.0.1g: 12521 <ul> 12522 <li>Rewrite Xft library for Render extension/core text and 12523 font management Change xterm to use new interface (Keith 12524 Packard).</li> 12525 </ul> 12526 </li> 12527 </ul> 12528 12529 <h1><a name="xterm_148" id="xterm_148">Patch #148 - 2000/10/31 - 12530 XFree86 4.0.1d</a></h1> 12531 12532 <ul> 12533 <li>document logfile options in man-page.</li> 12534 12535 <li>correct spelling of <code>-samename</code> option in help 12536 message.</li> 12537 12538 <li>add configure script option 12539 <code>--enable-tcap-query</code> (request by Bram 12540 Moolenaar).</li> 12541 12542 <li>add a "Co" or "colors" entry to the OPT_TCAP_QUERY feature 12543 (patch by Bram Moolenaar).</li> 12544 12545 <li>patch by Kiyokazu Suto <suto@ks-and-ks.ne.jp>: 12546 <ul> 12547 <li>add support for bold font for double width characters. 12548 The font name may be specified with the command line option 12549 <code>-fwb</code> or with resource 12550 <code>wideBoldFont</code> (class 12551 <code>WideBoldFont</code>).</li> 12552 12553 <li>correct underlining of double width character string, 12554 which was drawn only half width.</li> 12555 12556 <li>correct binary search of precomposed character table, 12557 which may return wrong result when <code>int</code> is just 12558 32 bits.</li> 12559 </ul> 12560 </li> 12561 12562 <li>some changes to align terminfo with ncurses 5.2: 12563 <ul> 12564 <li>remove xtermm description, retaining xterm-mono since 12565 the former conflicts with ncurses.</li> 12566 12567 <li>modify initialization and reset strings to avoid 12568 putting the save/restore cursor operations bracketing 12569 changes to video attributes, since the changes could be 12570 lost when the cursor is restored. This affects xterm-r6 and 12571 xterm-8bit (the xterm-xfree86 entry uses the soft-reset 12572 feature which resets scrolling margins and origin mode 12573 without requiring us to save/restore the cursor 12574 position).</li> 12575 12576 <li>make a few entries explicitly inherit from 12577 xterm-xfree86 rather than xterm: xterm-rep, xterm-xmc, 12578 xterm-nrc</li> 12579 </ul> 12580 </li> 12581 12582 <li>ensure that sign-extension does not affect 12583 <code>ctype</code> macros by using <code>CharOf()</code> macro 12584 to coerce the parameter to an unsigned char.</li> 12585 12586 <li>resync with XFree86 4.0.1d: 12587 <ul> 12588 <li>Add primitive support in xterm for Xft based fonts 12589 (Keith Packard). The changes are ifdef'd with 12590 <code>-DXRENDERFONT</code>.</li> 12591 </ul> 12592 </li> 12593 </ul> 12594 12595 <h1><a name="xterm_147" id="xterm_147">Patch #147 - 2000/10/26 - 12596 XFree86 4.0.1c</a></h1> 12597 12598 <ul> 12599 <li>correct implementation of <code>ptyInitialErase</code>: the 12600 value assigned to <code>initial_erase</code> was for the 12601 control terminal, which is correct as far as it goes. But there 12602 was no following test for the pseudo-terminal's erase value, 12603 which would overwrite the default obtained from the control 12604 terminal (reported by Christian Weisgerber 12605 <naddy@mips.inka.de>).</li> 12606 12607 <li>modify check for printable-characters in OSC string to use 12608 xterm's ansi_table rather than isprint() macro, to isolate this 12609 check from locale settings. This fixes a problem using 8-bit 12610 characters to set the title (reported by Ricardas Cepas 12611 <rch@richard.eu.org>).</li> 12612 12613 <li>modify sample scripts to check for printf before print, 12614 since the latter is not as well standardized (e.g., on 12615 Linux).</li> 12616 12617 <li>updated config.sub, config.guess to reflect changes on 12618 subversions.gnu.org</li> 12619 </ul> 12620 12621 <h1><a name="xterm_146" id="xterm_146">Patch #146 - 2000/9/12 - 12622 XFree86 4.0.1c</a></h1> 12623 12624 <ul> 12625 <li>correct two instances overlooked from patch #141 which 12626 assumed UTF-8 mode without checking, causing a core dump in 12627 non-UTF-8 mode (one instance was reported by Tommi Virtanen 12628 <tv@debian.org>).</li> 12629 12630 <li>correct a problem selecting from the scrollback buffer in 12631 UTF-8 mode by changing remaining getXtermCell() calls to 12632 XTERM_CELL() as in the non-UTF-8 cases (report by Markus Kuhn, 12633 patch by Robert Brady).</li> 12634 </ul> 12635 12636 <h1><a name="xterm_145" id="xterm_145">Patch #145 - 2000/9/11 - 12637 XFree86 4.0.1c</a></h1> 12638 12639 <ul> 12640 <li>changes for UTF-8 configuration (Robert Brady): 12641 <ul> 12642 <li>doublewide characters don't lose their accents when the 12643 cursor moves onto or from them (a visual bug)</li> 12644 12645 <li>fix logic in addXtermCombining, which mean that if the 12646 low byte of a cell's first combining char was 0, a 12647 following combining char would go into combining slot 1, 12648 not 2.</li> 12649 12650 <li>modify logic for cut-buffers so UTF-8 data is first 12651 converted to Latin1.</li> 12652 12653 <li>collapse surrogates, 0xfffe, 0xffff to UCS_REPL.</li> 12654 12655 <li>modify to allow xterm to to show combining characters 12656 attached to doublewidth characters.</li> 12657 12658 <li>correct bug in linewrap with -u8 option (reported by 12659 Andreas Koenig <andreas.koenig@anima.de>).</li> 12660 </ul> 12661 </li> 12662 12663 <li>several changes to PTY logic (based on request by Tim Ryan 12664 <timryan@nortelnetworks.com>). 12665 <ul> 12666 <li>modify treatment of <code>-S</code> option to to make 12667 it work with Unix98 PTY's.</li> 12668 12669 <li>restore sense of IsPts flag in <code>get_pty()</code>, 12670 which was lost in Unix98 changes.</li> 12671 12672 <li>use new functions <code>my_pty_id()</code> and 12673 <code>my_pty_name()</code> to simplify/fix strings used for 12674 utmp, wtmp identifiers.</li> 12675 12676 <li>simplify <code>get_pty()</code> function, making it 12677 have a single return point so its inputs/outputs can be 12678 identified.</li> 12679 </ul> 12680 </li> 12681 12682 <li>update config.guess and config.sub and scripts to my 12683 20000819 patch, adding cases for OS/2 EMX.</li> 12684 12685 <li>add special case for os390 compiler options to configure 12686 script (patch by Paul Gilmartin)</li> 12687 12688 <li>fix some unused-variable compiler warnings (reported by 12689 Zdenek Sekera).</li> 12690 12691 <li>split-out some string functions into xstrings.c, to use 12692 them more consistently among main.c, os2main.c and 12693 resize.c</li> 12694 12695 <li>align termcap/terminfo files, adding entries to make them 12696 match. The termcap entries are necessarily less complete than 12697 the terminfo, to fit within 1023 character per entry.</li> 12698 12699 <li>add terminfo entry for xterm-sco (SCO function keys).</li> 12700 12701 <li>modify <code>same_font_name()</code> to properly handle 12702 wildcard introduced in <code>bold_font_name()</code>, making 12703 comparison for different fonts succeed when only the normal 12704 font is specified. This is needed to decide if 1-pixel offset 12705 should be used. (reported in a newsgroup by Bart Oldeman 12706 <enbeo@enbeo.resnet.bris.ac.uk>)</li> 12707 12708 <li>correct preprocessor line for OPT_WIDE_CHARS in 12709 drawXtermText() from patch #141 which resulted in overstriking 12710 for bold fonts not working.</li> 12711 12712 <li>correct Imakefile from 4.0.1c resync so UTF-8 modules are 12713 in UTF8SRC, UTF8OBJ lists, allowing build without UTF-8 12714 support.</li> 12715 </ul> 12716 12717 <h1><a name="xterm_144" id="xterm_144">Patch #144 - 2000/8/23 - 12718 XFree86 4.0.1b</a></h1> 12719 12720 <ul> 12721 <li>remove a spurious assignment in ScreenWrite() from Robert 12722 Brady's patch which set a null at the "end" of the buffer to be 12723 written. That made the autowrap feature write a blank in the 12724 first column for the non-UTF-8 configuration, rather than the 12725 actual character (reported by Alan Citterman 12726 <alan@mticket.com>).</li> 12727 </ul> 12728 12729 <h1><a name="xterm_143" id="xterm_143">Patch #143 - 2000/8/19 - 12730 XFree86 4.0.1b</a></h1> 12731 12732 <ul> 12733 <li>add a check to ensure that <code>-class</code> command-line 12734 option is not confused with <code>-c</code> (reported by Paul 12735 Townsend <aab@aab.cc.purdue.edu>).</li> 12736 </ul> 12737 12738 <h1><a name="xterm_142" id="xterm_142">Patch #142 - 2000/8/18 - 12739 XFree86 4.0.1b</a></h1> 12740 12741 <ul> 12742 <li>correction to precompose scripts, so 0061 + 0300 will now 12743 be really be displayed as 00C0 (patch by Robert Brady 12744 <robert@susu.org.uk>).</li> 12745 12746 <li>correct macro ClassSelects() in button.c, used to hide 12747 ifdef's for OPT_WIDE_CHARS in patch #141 (reported by Andreas 12748 Paul <paula@informatik.tu-muenchen.de>).</li> 12749 12750 <li>change wcwidth.h to include stddef.h rather than wchar.h, 12751 which is not present on OpenBSD and FreeBSD (reported by 12752 Christian Weisgerber and Bram Moolenaar).</li> 12753 12754 <li>newer config.sub and config.guess, from lynx 12755 2.8.4dev.7</li> 12756 </ul> 12757 12758 <h1><a name="xterm_141" id="xterm_141">Patch #141 - 2000/8/14 - 12759 XFree86 4.0.1b</a></h1> 12760 12761 <ul> 12762 <li>changes for doublewidth and combining characters, from 12763 http://www.ecs.soton.ac.uk/~rwb197/xterm/ (integrated patch by 12764 Robert Brady). In this context, doublewidth refers to 16-bit 12765 character sets which may have glyphs occupying two cells.</li> 12766 12767 <li>add command-line option <code>-class</code>, which allows 12768 one to override xterm's resource class. Also add resource file 12769 <code>UXTerm.ad</code>, which simplifies using xterm for both 12770 8-bit character sets and UTF-8.</li> 12771 12772 <li>fixes/improvements to OPT_TCAP_QUERY logic (patches by Bram 12773 Moolenaar, Stephen P Wall).</li> 12774 </ul> 12775 12776 <h1><a name="xterm_140" id="xterm_140">Patch #140 - 2000/7/23 - 12777 XFree86 4.0.1</a></h1> 12778 12779 <ul> 12780 <li>modify Makefile.in to circumvent GNU make's built-in suffix 12781 rule for ".sh" which confuses install.sh with the "make 12782 install" target (report/patch by Paul Gilmartin).</li> 12783 12784 <li>implement an experimental control sequence which an 12785 application may use to query the terminal to determine what 12786 sequence of characters it would send for a given function key. 12787 This is ifdef'd with OPT_TCAP_QUERY (request by Bram 12788 Moolenaar).</li> 12789 12790 <li>add /usr/local to search path in CF_X_ATHENA configure 12791 macro to build with Xaw3d on OpenBSD (patch by Christian 12792 Weisgerber).</li> 12793 12794 <li>add missing <code>#undef HAVE_TERMIO_C_ISPEED</code> to 12795 xtermcfg.hin, omitted in patch #133 fix for IRIX 6.5 baudrate 12796 (report by Alain Filbois <Alain.Filbois@loria.fr>).</li> 12797 12798 <li>correct a few errors in xterm.man: font in filename example 12799 for Tektronix emulation, and description of -nul/+nul 12800 command-line options (report by Eric Fischer 12801 <enf@pobox.com>).</li> 12802 12803 <li>update config.guess and config.sub, from tin and lynx.</li> 12804 </ul> 12805 12806 <h1><a name="xterm_139" id="xterm_139">Patch #139 - 2000/6/17 - 12807 XFree86 4.0d</a></h1> 12808 12809 <ul> 12810 <li>back out change to <code>-name</code> command-line option, 12811 restoring its original behavior (as noted by David Madore, the 12812 correct interpretation of this option is the application 12813 instance rather than the application class).</li> 12814 </ul> 12815 12816 <h1><a name="xterm_138" id="xterm_138">Patch #138 - 2000/6/15 - 12817 XFree86 4.0c</a></h1> 12818 12819 <ul> 12820 <li>workaround for fixed fonts which are generated from Unicode 12821 fonts: they omit glyphs for some xterm's less-used line-drawing 12822 characters, which caused xterm to set a flag telling it to use 12823 only its internal line-drawing characters. Do not set the flag 12824 (it can be set from the popup menu), and xterm will generate 12825 only the line-drawing glyphs which actually are missing.<br> 12826 Otherwise, when used for large fonts, xterm may generate a 12827 2-pixel wide line, which can leave dots on the screen.</li> 12828 12829 <li>restore first line of 256colres.pl, omitted in 4.0c 12830 diffs.</li> 12831 </ul> 12832 12833 <h1><a name="xterm_137" id="xterm_137">Patch #137 - 2000/6/10 - 12834 XFree86 4.0b</a></h1> 12835 12836 <ul> 12837 <li>make command-line <code>-name</code> option work as 12838 documented. Apparently this was lost in X11R5 when coding to 12839 use <code>XtAppInitialize</code>.</li> 12840 12841 <li>limit numeric parameters of control sequences to 65535 to 12842 simplify checks for numeric overflow.</li> 12843 12844 <li>change index into UDK list to unsigned to guard against 12845 numeric overflow making the index negative (Taneli Huuskonen 12846 <huuskone@cc.helsinki.fi>).</li> 12847 12848 <li>change <code>sun function-keys</code> resource name to 12849 <code>sunFunctionKeys</code> to work around redefinition of the 12850 token <code>sun</code> by xrdb on Solaris. Similarly, renamed 12851 resource <code>sun keyboard</code> to 12852 <code>sunKeyboard</code> (Stephen P Wall).</li> 12853 12854 <li>change similar resource names for HP and SCO to avoid 12855 potential conflict with xrdb symbols on other systems, as well 12856 as for consistency.</li> 12857 12858 <li>reorganized the install targets in the autoconf'd Makefile, 12859 adding install-app, install-bin, install-dirs and install-man. 12860 The app-defaults class can be overridden by setting the make 12861 variable 'CLASS', simplifying customization of xterm as a 12862 Unicode terminal, e.g., CLASS=UXTerm.</li> 12863 12864 <li>add limit checks to <code>ClearInLine()</code>, 12865 <code>ScrnInsertChar()</code>, <code>ScrnDeleteChar()</code> to 12866 correct potential out-of-bounds indexing (prompted by Debian 12867 bug report #64713, which reported a problem with ICH escape 12868 sequences).</li> 12869 12870 <li>updates to config.sub and config.guess Kevin Buettner 12871 <kev@primenet.com> for elf64_ia64 Bernd Kuemmerlen 12872 <bkuemmer@mevis.de> and MacOS X.</li> 12873 12874 <li>for os390, add check for errno set to ENODEV on failure to 12875 open /dev/tty when there is no controlling terminal (patch by 12876 Paul Gilmartin).</li> 12877 12878 <li>fixes for building on Digital Unix 4.0 and AIX 4.2 (patch 12879 from H Merijn Brand <h.m.brand@hccnet.nl>).</li> 12880 12881 <li>modify DECRQSS reply for DECSCL to additionally report if 12882 the terminal is set for 8-bit controls.</li> 12883 </ul> 12884 12885 <h1><a name="xterm_136" id="xterm_136">Patch #136 - 2000/6/3 - 12886 XFree86 4.0b</a></h1> 12887 12888 <ul> 12889 <li>add a resource (<code>limitResize</code>) limiting resizing 12890 via the CSI 4 t and CSI 8 t sequences.</li> 12891 12892 <li>ignore out-of-bounds resize requests, i.e., where 12893 sign-extension or truncation of the parameters would 12894 occur.</li> 12895 </ul> 12896 12897 <h1><a name="xterm_135" id="xterm_135">Patch #135 - 2000/5/29 - 12898 XFree86 4.0b</a></h1> 12899 12900 <ul> 12901 <li>remove code introduced in #134 which made some backgrounds 12902 bold.</li> 12903 12904 <li>minor correction to format of updated $TERMCAP when adding 12905 <code>kb</code> capability for <code>ptyInitialErase</code> 12906 logic.</li> 12907 12908 <li>improved test for SVR4 definition.</li> 12909 </ul> 12910 12911 <h1><a name="xterm_134" id="xterm_134">Patch #134 - 2000/5/28 - 12912 XFree86 4.0b</a></h1> 12913 12914 <ul> 12915 <li>update URL's and mailing addresses, moved to 12916 http://dickey.his.com and dickey@herndon4.his.com</li> 12917 12918 <li>correct missing quotes in CF_TTY_GROUP configure script 12919 macro in case the script is run in batch mode.</li> 12920 12921 <li>modify ownership-check of log file to ignore the group 12922 ownership. Otherwise xterm cannot create logfiles in 12923 directories with set-gid permissions.</li> 12924 12925 <li>simplify the logic that reads termcap data.</li> 12926 12927 <li>add fallback definition for B9600 in case line speed 12928 definition for 38400 is missing (report by Jack J Woehr 12929 <jwoehr@ibm.net>, for OpenBSD 2.6).</li> 12930 12931 <li>fix: Set highlightColor, and select a region containing the 12932 text cursor. If the window loses focus, the cursor becomes 12933 hollow, with the region inside the cursor being 12934 background/foreground, unlike the rest of the selection, which 12935 is foreground/highlight (patch by Ross Paterson 12936 <ross@soi.city.ac.uk>).</li> 12937 12938 <li>add configure script tests to define SVR4, SYSV and 12939 USE_POSIX_WAIT, which enables xterm to compile on Solaris 7 and 12940 SCO Openserver without imake, though there are still a few 12941 features for the latter which require <code>sco</code> to be 12942 predefined.</li> 12943 12944 <li>patches from Stephen P Wall: 12945 <ul> 12946 <li>add support for two Sun-specific function keys. These 12947 keys are labeled F11 and F12 on Sun Type 5 keyboards, but 12948 return SunXK_F36 and SunXK_F37. Support will only be 12949 compiled in if the header file <X11/Sunkeysym.h> 12950 exists and contains the appropriate symbol definitions. The 12951 keycodes for the DEC keycodes were arbitrary unused codes, 12952 but the ones for the Sun keycodes are what cmdtool and 12953 shelltool actually send.</li> 12954 12955 <li>add <code>colorRV</code> and <code>colorRVMode</code> 12956 resources to allow specifying a color to use for reverse 12957 video, similar to the existing UL, BD, and BL modes.</li> 12958 12959 <li>add <code>alwaysUseMods</code> resource, to override 12960 check if <code>alt</code> or <code>meta</code> modifiers 12961 are used in <code>translations</code> resource. Revamped 12962 the code to calculate the modifier value, and included Meta 12963 if alwaysUseMods is TRUE, using values 9-16.</li> 12964 </ul> 12965 </li> 12966 12967 <li>fixes for os390 (Paul Gilmartin): 12968 <ul> 12969 <li>regularize the definition of CONTROL() and remove an 12970 acknowledged "trial and error" table.</li> 12971 12972 <li>translate "^?" into A2E(0177) which is the EBCDIC "DEL" 12973 rather than plain 0177 which is the EBCDIC quotation 12974 mark.</li> 12975 12976 <li>modify <code>xtermMissingChar()</code> so that EBCDIC 12977 codes 128-159 are not rendered as blanks by X server 12978 running on Solaris, which sees those as control 12979 characters.</li> 12980 12981 <li>make debugging traces (configure --enable-trace) work 12982 properly with EBCDIC.</li> 12983 </ul> 12984 </li> 12985 </ul> 12986 12987 <h1><a name="xterm_133" id="xterm_133">Patch #133 - 2000/5/2 - 12988 XFree86 4.0a</a></h1> 12989 12990 <ul> 12991 <li>add substitutions in autoconf'd Makefile for CPPFLAGS, 12992 LDFLAGS and AWK (reported by Neil Bird).</li> 12993 12994 <li>correct uninitialized <code>childstat</code> variable from 12995 patch #131 in <code>creat_as()</code> function, which caused 12996 logging to not work on Solaris, whose <code>waitpid()</code> 12997 function does not initialize its parameter. Add check for EINTR 12998 on return from <code>waitpid()</code> as well (reported by Neil 12999 Bird <neil.bird@rdel.co.uk>).</li> 13000 13001 <li>remove a redundant check for working <code>setuid()</code> 13002 function introduced in patch #132. Greg Smith reports that this 13003 does not work as intended on os390.</li> 13004 13005 <li>change line speed from 9600bd to 38400bd, to accommodate 13006 people who mistakenly use $TERM set to <em>vt100</em>, to 13007 reduce the effect of padding associated with this terminal 13008 type.</li> 13009 13010 <li>add configure script check for IRIX 6.5's redefinition of 13011 baud rates associated with <code>struct termio</code>, to 13012 correct a situation where the baud rate was initialized to zero 13013 (reported by Andrew Isaacson <adi@lcse.umn.edu>).</li> 13014 13015 <li>remove unused configure script check for VDISABLE.</li> 13016 </ul> 13017 13018 <h1><a name="xterm_132" id="xterm_132">Patch #132 - 2000/4/11 - 13019 XFree86 4.0a</a></h1> 13020 13021 <ul> 13022 <li>undo an incorrect change from patch #113 caused the right 13023 scrollbar to be positioned incorrectly when re-enabling it 13024 (analysis by D Roland Walker).</li> 13025 13026 <li>add ctrlFKeys resource, replacing constant for adjusting 13027 control-F1 to control-F12 to VT220-style F10-F20. The resource 13028 changes the constant 12 to a default value of 10 (request by 13029 Jim Knoble <jmknoble@pobox.com>).</li> 13030 13031 <li>correct ifdef'ing for conflict between definitions in AIX's 13032 <sys/select.h> and <X11/Xpoll.h> (reported by Clint 13033 Olsen).</li> 13034 13035 <li>add checks for return-values of getutid(), initgroups() and 13036 setuid() in main.c, as well as modifying ifdef's for __osf__ to 13037 include tty-group and WTMP logic (adapted from patch by Paul 13038 Szabo <psz@maths.usyd.edu.au>)</li> 13039 13040 <li>modify resize.c to build and work on os390 (uses EBCDIC) 13041 (adapted from patch by Phil Sidler 13042 <Phil.Sidler@airborne.com>)</li> 13043 13044 <li>use Ires(), Bres() and Sres() macros to simplify resource 13045 list in charproc.c</li> 13046 13047 <li>resync with XFree86 4.0a: 13048 <ul> 13049 <li>correct a typo in os2main.c (Holger Veit, from 13050 4.0a).</li> 13051 </ul> 13052 </li> 13053 </ul> 13054 13055 <h1><a name="xterm_131" id="xterm_131">Patch #131 - 2000/3/3 - 13056 XFree86 3.9.18b</a></h1> 13057 13058 <ul> 13059 <li>improve logfile security (integrated patch by Branden 13060 Robinson) 13061 <ul> 13062 <li>make the <code>creat_as()</code> function more strict 13063 by using O_EXCL rather than O_APPEND.</li> 13064 13065 <li>fixes to make DEBUG ifdef's compile/run, including 13066 making the debug logfile more unique by appending a 13067 timestamp to its name.</li> 13068 13069 <li>include <term.h> in resize.c, to fix a 13070 missing-prototype warning.</li> 13071 </ul> 13072 </li> 13073 13074 <li>modified <code>creat_as()</code> a little more, retaining 13075 the ability to append to a logfile If the user specifies the 13076 name. Also, check if the opened file (which <a href= 13077 "#xterm_130">patch #130</a> ensures is owned by the effective 13078 user) is not writable by other users.</li> 13079 13080 <li>use <code>creat_as()</code> logic to make tek4014 13081 screen-copy more secure (noted by Branden Robinson).</li> 13082 13083 <li>ifdef'd some of Branden's changes to build/work on older 13084 machines.</li> 13085 13086 <li>correct missing initialization of the <code>.mode</code> 13087 flag in <code>ColorRes</code> struct, from patch #129. This 13088 worked on Linux because <code>malloc()</code> zeroes memory on 13089 that platform (reported by Christian Weisgerber).</li> 13090 13091 <li>modify logic for <code>deleteIsDEL</code> resource so it 13092 has internally 3 states: unspecified, true and false. If 13093 unspecified, the keyboard type determines whether the Delete 13094 key transmits <code><ESC>[3~</code> or <code>\177</code>, 13095 and the popup menu entry reflects the internal state. 13096 Otherwise, the popup menu entry overrides the keyboard type 13097 (suggested by Dr Werner Fink, to make it simpler to set 13098 resources that imitate the legacy X11R6 xterm).</li> 13099 </ul> 13100 13101 <h1><a name="xterm_130" id="xterm_130">Patch #130 - 2000/3/1 - 13102 XFree86 3.9.18a</a></h1> 13103 13104 <ul> 13105 <li>modify <code>scroll-forw()</code> and 13106 <code>scroll-back()</code> actions, adding a third parameter 13107 which will direct xterm to ignore the action when mouse 13108 reporting is enabled. This is needed for the wheel mouse to be 13109 used to report to the application rather than scroll the 13110 window.</li> 13111 13112 <li>add menu entry and action to allow disabling xterm's 13113 assumption that the current font contains line-drawing 13114 characters if the font cells 1-31 are nonempty. Some fonts may 13115 have other characters (reported by Bruno Betro 13116 <bruno@iami.mi.cnr.it>).</li> 13117 13118 <li>add a check in <code>creat_as()</code> to ensure that the 13119 user really owns the logfile that has been opened.</li> 13120 13121 <li>add logic to implement SCO function-keys. (This is really 13122 incomplete, since I intend to revisit this and make xterm able 13123 to emulate scoansi better than just the function-keys).</li> 13124 13125 <li>add configure script option --enable-sco-fkeys, minor 13126 related fixes (patch by Dr Werner Fink).</li> 13127 13128 <li>fix typos in ctlseqs.ms (reported by Bram Moolenaar)</li> 13129 13130 <li>fix typo in sinstall.sh default for $TST_PROG (reported by 13131 Paul Gilmartin <pg@sweng.stortek.com>)</li> 13132 </ul> 13133 13134 <h1><a name="xterm_129" id="xterm_129">Patch #129 - 2000/2/26 - 13135 XFree86 3.9.18a</a></h1> 13136 13137 <ul> 13138 <li>improve initialization of ANSI colors by delaying 13139 allocation until each color is first used.</li> 13140 13141 <li>remove ifdef that prevented colorBD/colorUL/colorBL 13142 resources from working when 256-color configuration was built 13143 (reported by Todd Larason).</li> 13144 13145 <li>fix some minor inconsistencies in terminfo (Debian 13146 #58530).</li> 13147 </ul> 13148 13149 <h1><a name="xterm_128" id="xterm_128">Patch #128 - 2000/2/17 - 13150 XFree86 3.9.18</a></h1> 13151 13152 <ul> 13153 <li>correct logic for <code>oldXtermFKeys</code> resource, 13154 fixes a core dump when attempting to set it from the 13155 command-line (reported by Dr Werner Fink).</li> 13156 13157 <li>correct ifdef for meta-sends-escap so configure 13158 --disable-num-lock builds.</li> 13159 </ul> 13160 13161 <h1><a name="xterm_127" id="xterm_127">Patch #127 - 2000/2/12 - 13162 XFree86 3.9.17e</a></h1> 13163 13164 <ul> 13165 <li>add resource, popup menu entry and control sequence to 13166 allow changing the Delete key to send either DEL or the 13167 VT220-style Remove escape sequence.</li> 13168 13169 <li>remove logic for metaSendsEscape that would allow xterm to 13170 send <code><ESC>[3~</code> before a function key that 13171 would begin with <code><ESC>[3~</code> (request by 13172 Christian Weisgerber).</li> 13173 13174 <li>add missing action and documentation for 13175 meta-sends-escape.</li> 13176 13177 <li>correct a few typos in ctlseqs.ms (incorrect code for Cyan 13178 color)</li> 13179 </ul> 13180 13181 <h1><a name="xterm_126" id="xterm_126">Patch #126 - 2000/2/8 - 13182 XFree86 3.9.17c</a></h1> 13183 13184 <ul> 13185 <li>ensure that xterm will automatically activate the UTF-8 13186 mode whenever the name of the locale environment variable 13187 suggests that a UTF-8 locale is in use (patch by Markus Kuhn). 13188 This will help that by simply setting LC_CTYPE an entire system 13189 can be switched over to UTF-8, without users having to remember 13190 the UTF-8 command line options ("-u8", etc.) of the various 13191 applications. Command line options and X resource entries can 13192 still be used to override this default choice.</li> 13193 13194 <li>add old function-keys control sequences and popup menu 13195 entry, for compatibility with legacy X11R6 xterm.</li> 13196 13197 <li>revert translation of editing keypad "Delete" key to legacy 13198 \177.</li> 13199 13200 <li>simplify the color-resource data expressions with macro 13201 COLOR_RES, for later use in restructuring color 13202 initialization.</li> 13203 13204 <li>change encoding of wheel mouse (buttons 4 and 5) to avoid 13205 conflict with legacy mouse modifiers (suggested by Bram 13206 Moolenaar).</li> 13207 </ul> 13208 13209 <h1><a name="xterm_125" id="xterm_125">Patch #125 - 2000/1/31 - 13210 XFree86 3.9.17c</a></h1> 13211 13212 <ul> 13213 <li>make this work on OpenVMS (integrated patch by David 13214 Mathog).</li> 13215 13216 <li>rename some functions, e.g., <code>Index</code> to 13217 <code>xtermIndex</code> so that ports such as VMS which link 13218 externals ignoring case will not have library conflicts 13219 (reported by David Mathog).</li> 13220 13221 <li>correct logic of <code>do_reversevideo()</code>, which did 13222 not update the corresponding popup menu check mark (reported by 13223 David Mathog, this was a detail overlooked in patch #94).</li> 13224 13225 <li>change TRACE macro so semicolon is not within definition, 13226 making <em>indent</em> and similar programs work better.</li> 13227 13228 <li>add <code>depend</code> rule to Makefile.in</li> 13229 13230 <li>modify logic of boldColors resource to suppress it if an 13231 extended color control has been used, e.g., for 88-color or 13232 256-color mode (patch by Todd Larason).</li> 13233 13234 <li>revise logic that handles menus and input translation for 13235 keyboard type so only one can be selected at a time.</li> 13236 13237 <li>restore kdch1=\177 for the Sun function-key type, and make 13238 the the Delete key send DEL (\177) if the oldXtermFKeys 13239 resource is set.</li> 13240 13241 <li>rephrase logic and ifdef's for POSIX VDISABLE to avoid 13242 preprocessor expression that will not compile on NetBSD/x86 13243 1.4.1 (reported by Takaaki Nomura 13244 <amadeus@yk.rim.or.jp>).</li> 13245 </ul> 13246 13247 <h1><a name="xterm_124" id="xterm_124">Patch #124 - 2000/1/27 - 13248 XFree86 3.9.17b</a></h1> 13249 13250 <ul> 13251 <li>change coding of editing keypad's "Delete" key to 13252 <escape>[3~, in the default (Sun/PC) keyboard mode. This 13253 makes the terminfo kdch1 capability independent of the coding 13254 of the backarrow key, which sends either backspace (8) or DEL 13255 (127). The reason for doing this (compatibility with the 13256 <em>screen</em> program) outweighs the choice of DEL (127) 13257 which was used in X11R5/X11R6 xterms. The <em>screen</em> 13258 program translates whatever matches kdch1 into 13259 <escape>[3~, even if it happens to be the stty erase 13260 character.</li> 13261 13262 <li>add encoding for control/?, to work around xmodmap or key 13263 translations which may confuse backspace and delete. A 13264 control/? will send DEL (127), and a control/H will of course 13265 send backspace (8).</li> 13266 13267 <li>add encoding for kcbt to <escape>[Z (fixes Debian 13268 #54840).</li> 13269 13270 <li>minor correction to logic that encodes Sun and DEC function 13271 keys to avoid sending an escape sequence if the key symbol is 13272 not found in xterm's lookup table.</li> 13273 13274 <li>simplify ifdef's in main.c for POSIX VDISABLE so the "^-" 13275 pattern is more likely to be implemented when <em>imake</em> 13276 configures xterm (fixes Debian #55105).</li> 13277 13278 <li>change manpage to make it clearer what codes are sent by 13279 the backarrow key.</li> 13280 </ul> 13281 13282 <h1><a name="xterm_123" id="xterm_123">Patch #123 - 2000/1/22 - 13283 XFree86 3.9.17a</a></h1> 13284 13285 <ul> 13286 <li>add a note reserving OSC 51 for use in Emacs shell (request 13287 by Rob Mayoff <mayoff@dqd.com>).</li> 13288 13289 <li>correct a missing backslash in xterm-vt220 termcap.</li> 13290 13291 <li>cleanup remaining quoted includes, preferring bracketed 13292 form.</li> 13293 13294 <li>minor configure-script macro updates from tin and 13295 vile.</li> 13296 13297 <li>add configure-script option for using utempter library, 13298 adapted from Redhat 6.1 patch for XFree86 3.3.5</li> 13299 13300 <li>resync with XFree86 3.9.17a: 13301 <ul> 13302 <li>correction to QNX support (Frank Guangxin Liu)</li> 13303 13304 <li>some cosmetic changes that did not correct any reported 13305 problems.</li> 13306 </ul> 13307 </li> 13308 </ul> 13309 13310 <h1><a name="xterm_122" id="xterm_122">Patch #122 - 1999/12/28 - 13311 XFree86 3.9.16f</a></h1> 13312 13313 <ul> 13314 <li>move the suggested wheel-mouse button translations into 13315 charproc.c to simplify customization. Correct some minor logic 13316 errors in the support for buttons 4 and 5, used for wheel mice 13317 (reported by Bram Moolenaar).</li> 13318 13319 <li>implement <em>metaSendsEscape</em> resource, with 13320 corresponding control sequence and menu entry. Like 13321 <em>eightBitInput</em>, this causes xterm to send ESC prefixing 13322 the given key, but applies to all keys and is independent of 13323 the 8-bit/7-bit terminal setting. (requests by Alexander V 13324 Lukyanov and Marc Feeley).</li> 13325 13326 <li>correct potential indexing with negative subscript in 13327 udk_lookup(), (reported by Ian Collier 13328 <Ian.Collier@comlab.ox.ac.uk>).</li> 13329 13330 <li>modify configure script that sets TERMINFO_DIR to use 13331 ${prefix} rather than /usr if the --prefix option was specified 13332 (request by Zdenek Sekera <zs@sgi.com>).</li> 13333 13334 <li>modify checks for repeat-character control sequence to test 13335 the character class against xterm's state table, rather than 13336 the isprint() macro (patch by Alexander V Lukyanov).</li> 13337 13338 <li>change several functions to macros to improve speed</li> 13339 13340 <li>two corrections to simulation of bold font via 13341 overstriking: 13342 <ul> 13343 <li>use clipping to avoid leaving trash at end of the text, 13344 and</li> 13345 13346 <li>add brackets so wide-character logic does not 13347 fall-through into the overstriking logic (reported by Marc 13348 Feeley <feeley@IRO.UMontreal.CA>)</li> 13349 </ul> 13350 </li> 13351 13352 <li>add several entries to termcap file to make it have the 13353 same set of aliases as the terminfo file.</li> 13354 13355 <li>scale the color values used for xterm-256color terminfo 13356 entry to 0..1000, as expected by ncurses.</li> 13357 13358 <li>change xterm-r6 terminfo definitions for F1-F4 to match 13359 program.</li> 13360 13361 <li>Add QNX/Neutrino support (Frank Guangxin Liu 13362 <frank@ctcqnx4.ctc.cummins.com>)</li> 13363 </ul> 13364 13365 <h1><a name="xterm_121" id="xterm_121">Patch #121 - 1999/11/14 - 13366 XFree86 3.9.16c</a></h1> 13367 13368 <ul> 13369 <li>change label on "Sun/PC Keyboard" popup menu entry to 13370 "VT220 Keyboard", since the checked state corresponds to VT220 13371 rather than Sun/PC.</li> 13372 13373 <li>add configure test CF_UTMP_UT_XSTATUS to handle the 13374 variants of utmp exit status (reports by Dave Ellement, Jeremie 13375 Petit, Tomas Vanhala).</li> 13376 13377 <li>amend treatment of ALT key (see <a href="#xterm_94">patch 13378 #94</a>) so that if ALT is used as a modifier in key 13379 translations, then no parameter will be sent in escape 13380 sequences for Sun/PC function keys (request by Dr Werner 13381 Fink).</li> 13382 13383 <li>modify default for OPT_I18N_SUPPORT to assume that 13384 <code>XtSetLanguageProc()</code> is available in X11R5. 13385 <p>Caveat: <code>XtSetLanguageProc()</code> was added fairly 13386 late in the X11R5 patches, and some vendors shipped buggy 13387 versions of this function (request by Tomas Vanhala).</p> 13388 </li> 13389 13390 <li>correct configure macro CF_SYSV_UTMP to test-link with 13391 functions consistent with the header, e.g., getutent() for 13392 utmp.h and getutxent() for utmpx.h (reported by Greg 13393 Smith).</li> 13394 13395 <li>modify terminfo entry for <code>xterm-xfree86</code> to 13396 reflect modifiers for shift and control (from a patch by 13397 Alexander V Lukyanov).</li> 13398 13399 <li>modify terminfo entry for <code>xterm-sun</code> to match 13400 the function-key definitions in ncurses. The pageup/pagedown 13401 and related function keys correspond to the Sun keyboard, which 13402 does not necessarily correspond with X's notion of those 13403 keys.</li> 13404 13405 <li>modify treatment of XK_Delete keysym so it transmits 13406 parameterized VT220-style <code><ESC>[3~</code> if 13407 modifiers (shift, control alt) are given (request by Alexander 13408 V Lukyanov).</li> 13409 13410 <li>corrected misspelled resource name in command-line option 13411 for HP function keys.</li> 13412 </ul> 13413 13414 <h1><a name="xterm_120" id="xterm_120">Patch #120 - 1999/10/28 - 13415 XFree86 3.9.16c</a></h1> 13416 13417 <ul> 13418 <li>refine the change to <code>SGR_Background()</code> in patch 13419 #119, by not flushing the pending scrolling operation if the 13420 background color is not actually changing. This combination 13421 occurs when using color-ls to display a long listing, since 13422 each line ends with an SGR0 which affects only the foreground 13423 color. The unnecessary flushing made it noticeably slower 13424 (reported by D Roland Walker <walker@pobox.com>).</li> 13425 13426 <li>remove obsolete documentation about modifiers which can be 13427 returned in mouse tracking mode, and modify logic to ignore 13428 modifiers other than the existing ones, e.g., NumLock (prompted 13429 by discussions with Christian Weisgerber and Brad Pepers 13430 <brad@linuxcanada.com>).</li> 13431 13432 <li>use free bit from obsolete shift-modifier coding of mouse 13433 tracking button events to encode buttons 4 and 5, e.g., for a 13434 wheel mouse (requests by Brad Pepers and Bram Moolenaar).</li> 13435 13436 <li>correct a place where the ptyInitialErase logic did not set 13437 the backarrowKey state, and modify it further to use tgetstr() 13438 rather than parse the termcap data returned from tgetent() so 13439 the ptyInitialErase logic will work when xterm is linked with a 13440 terminfo library (based on a patch by Dr Werner Fink 13441 <werner@suse.de>).</li> 13442 13443 <li>fix definition of HAVE_UTMP_UT_HOST for ISC configuration 13444 (patch by Michael Rohleder).</li> 13445 13446 <li>improve configure script's utmp tests (based on reports by 13447 Greg Smith for os390, and David Ellement for HPUX).</li> 13448 13449 <li>modify sinstall.sh to use uid=0 rather than 'root' to 13450 determine if the installer is privileged. This is needed on 13451 some systems since more than one account may be privileged 13452 (report by Greg Smith).</li> 13453 13454 <li>add an application resource, <code>messages</code> (and a 13455 corresponding -/+mesg option) which controls the initial 13456 permission on the terminal: if messages is set to true (the 13457 default), behavior is as without the patch; if it is set to 13458 false (as per -mesg), the terminal is opened in mode 0600, thus 13459 producing the effect of the <code>mesg n</code> command. This 13460 is useful for users who want to redirect all their messages to 13461 one particular xterm: it is more pleasant to do this with xterm 13462 resources than with explicit calls to the <code>mesg</code> 13463 program (patch, description by David Madore 13464 <david.madore@ens.fr>).</li> 13465 </ul> 13466 13467 <h1><a name="xterm_119" id="xterm_119">Patch #119 - 1999/10/16 - 13468 XFree86 3.9.16c</a></h1> 13469 13470 <ul> 13471 <li>add responses (DA and DSR) for DEC locator mode</li> 13472 13473 <li>add coding for ANSI color to DA response</li> 13474 13475 <li>implement UTF-8 translation for Media Copy (print) 13476 operations.</li> 13477 13478 <li>implement vt320 control sequences for Print Composed Main 13479 Display and for Print All Pages. The latter directs xterm to 13480 print the current screen as well as the scrollback buffer.</li> 13481 13482 <li>correct error in _GNU_SOURCE configure test, which left it 13483 always defined.</li> 13484 13485 <li>add more information, i.e., with strerror for some system 13486 calls in the main program which may fail due to insufficient 13487 permissions (prompted by a problem report for <code>-C</code> 13488 by Jeremie Petit <Jeremie.Petit@digital.com>).</li> 13489 13490 <li>add workaround for conflict between <X11/Xpoll.h> and 13491 <sys/select.h> on AIX 4.3 (Richard Griswold 13492 <griswold@acm.org>).</li> 13493 13494 <li>add configure script test to resolve conflict between 13495 between <X11/Xpoll.h> and <sys/select.h></li> 13496 13497 <li>modify translation of UTF-8 sequences to reject "overly 13498 long" variations (patch by Markus Kuhn).</li> 13499 13500 <li>remove <code>utf8controls</code> resource, since Markus' 13501 change removes the corresponding logic.</li> 13502 13503 <li>correct a case where colors were not rendered properly. 13504 This happened when an application inserted several lines, then 13505 changed colors. If this was done all in one write, then there 13506 would be no intervening refresh, and the new color was applied 13507 to the pending scrolling operation which was awaiting the next 13508 refresh (reported by Stephane Chazelas 13509 <Stephane_Chazelas@Raytheon.com>).</li> 13510 </ul> 13511 13512 <h1><a name="xterm_118" id="xterm_118">Patch #118 - 1999/10/5 - 13513 XFree86 3.9.16b</a></h1> 13514 13515 <ul> 13516 <li>refine configure test for utmp versus utmpx, to build on 13517 HP-UX 10.x (reported by David Ellement).</li> 13518 13519 <li>move the configure check for <code>const</code> after the 13520 check for ANSI C compiler options, since those may be required 13521 to make it work properly on HP-UX.</li> 13522 13523 <li>add configure test for defining 13524 <code>_GNU_SOURCE</code></li> 13525 13526 <li>correction to <em>-hold</em> option, ensure that if data is 13527 already in the output buffer that it will be displayed before 13528 closing the PTY.</li> 13529 13530 <li>move the configure checks for setuid install of xterm into 13531 a script to avoid installing it setuid'd to a non-root user 13532 (reported by Adam Sulmicki <adam@cfar.umd.edu>).</li> 13533 13534 <li>correct configure script's check for termcap.h to avoid 13535 using ncurses' version of it on systems that have a working 13536 <code>tgetent()</code> function. This is needed to make 13537 <code>resize</code> work properly.</li> 13538 13539 <li>fix some typography in ctlseqs.ms description of DEC 13540 locator events (reported by Stephen P Wall).</li> 13541 </ul> 13542 13543 <h1><a name="xterm_117" id="xterm_117">Patch #117 - 1999/9/29 - 13544 XFree86 3.9.16b</a></h1> 13545 13546 <ul> 13547 <li>change order of tests in configure script for utmp and 13548 utmpx to test utmpx first, to compile on Solaris (reported by 13549 Leena Heino <liinu@uta.fi> and Patrik Hagglund 13550 <patha@ida.liu.se>).</li> 13551 13552 <li>add a configure test for utmp.ut_xtime, needed for SCO 13553 Openserver, and for lastlog, needed for Redhat 6.0, to refine 13554 the utmp/utmpx auto-configure.</li> 13555 13556 <li>remove a spurious comma in an #undef (reported by David 13557 Green <greendjf@cvhp152.marconicomms.com> and David 13558 Ellement <ellement@sdd.hp.com> both on HP-UX, whose 13559 compiler does care about syntax).</li> 13560 13561 <li>change ifdef's using __CYGWIN32__ to __CYGWIN__ (reported 13562 by Suhaib M. Siddiqi <Ssiddiqi@InspirePharm.Com>, who is 13563 told that the next Cygnus release will drop that symbol in 13564 their next release).</li> 13565 13566 <li>minor cleanup of ifdef's for makeColorPair (patch by 13567 Stephen P Wall).</li> 13568 13569 <li>work around problem observed in XFree86 3.3.5 (patch by 13570 Alexander V Lukyanov, Redhat #5419). From the problem report: 13571 <blockquote> 13572 <p>xterm consumes cpu when selecting text with mouse 13573 (holding down left mouse button) and when a program working 13574 under the xterm outputs something to stdout.</p> 13575 13576 <p>Easy way to reproduce:<br> 13577 <code>while :; do echo aaa; sleep 1; done</code><br> 13578 (while this runs, select text and hold down left mouse 13579 button) watch cpu load.<br> 13580 release left mouse button - spinning stops.</p> 13581 </blockquote> 13582 </li> 13583 </ul> 13584 13585 <h1><a name="xterm_116" id="xterm_116">Patch #116 - 1999/9/25 - 13586 XFree86 3.9.16a</a></h1> 13587 13588 <ul> 13589 <li>modify warning if change-ownership of PTY fails; some 13590 configurations may not happen to have old-style pty's (reported 13591 by Bob Maynard).</li> 13592 13593 <li>improve check in configure script for group ownership of 13594 installed xterm; some platforms use the -g option of ls to 13595 toggle group off rather than on (reported by Greg Smith).</li> 13596 13597 <li>minor improvement to toolbar geometry, to make it not 13598 resizable. This still is not satisfactory (but is usable) since 13599 the toolbar overlaps the xterm widget if the window is resized 13600 to make it smaller. It appears that some work is needed for the 13601 xterm widget's geometry management to make it function 13602 properly.</li> 13603 13604 <li>implement configure script tests for utmp, tty group.</li> 13605 13606 <li>implement <em>-hold</em> option, allowing users to retain 13607 the window after a shell has exited (this is recently an FAQ, 13608 but prompted by a comment by Joachim Plaettner-Hochwarth 13609 <plaettner@aem.umn.edu> in comp.unix.programmer, that the 13610 IRIX winterm provides this option).</li> 13611 13612 <li>add support for DEC Locator control sequences for xterm 13613 (integrated patch by Stephen P Wall): 13614 13615 <pre> 13616 DECEFR, "Enable Filter Rectangle" 13617 DECELR, "Enable Locator Reports" 13618 DECSLE, "Select Locator Events" 13619 DECRQLP, "Request Locator Position" 13620</pre> 13621 <p>This allows the xterm mouse to be used with applications 13622 that use the DEC Locator sequences, such as VAX Tpu, or SMG$ 13623 based applications.</p> 13624 </li> 13625 13626 <li>improve print action (patch by Matthias Baake). From his 13627 notes, 13628 <ul> 13629 <li>Bug 1<br> 13630 Underlined text is preceded by ESC [0;2m . This should 13631 be ESC [0;4m , ESC [2m doesn't seem to have 13632 any effect. (print.c/send_SGR)</li> 13633 13634 <li>Bug 2<br> 13635 The check for the last non-empty column (while (last > 13636 0) ... in print.c/printLine) omits the rightmost column of 13637 the screen, the loop must start with last = 13638 screen->max_col+1 instead of last = 13639 screen->max_col.</li> 13640 13641 <li>Bug 3<br> 13642 Any attributes of the first character (and of all 13643 immediately following characters with the same attributes) 13644 are ignored. The variable attr (print.c/printLine) should 13645 be initialized with 0, not with *a & SGR_MASK.</li> 13646 </ul> 13647 </li> 13648 </ul> 13649 13650 <h1><a name="xterm_115" id="xterm_115">Patch #115 - 1999/9/18 - 13651 XFree86 3.9.16a</a></h1> 13652 13653 <ul> 13654 <li>integrated changes by Stephen P Wall to implement an 13655 88-color model for systems where 256-colors cannot be 13656 allocated.</li> 13657 13658 <li>when 256-color configuration is compiled, colored bold and 13659 underlining is not available; ifdef'd to avoid possible odd 13660 effects in this case (reported by Stephen P Wall).</li> 13661 13662 <li>add resource <em>cacheDoublesize</em>, to limit the caching 13663 of font information for double-sized characters. This addresses 13664 a problem reported by Aryeh Koenigsberg for X terminals with 13665 limited font memory.</li> 13666 13667 <li>modify treatment of line-drawing characters in UTF-8 mode 13668 so that the Unicode values are used rather than the C0 codes 13669 for storing the translated characters (request by Markus 13670 Kuhn).</li> 13671 </ul> 13672 13673 <h1><a name="xterm_114" id="xterm_114">Patch #114 - 1999/9/15 - 13674 XFree86 3.9.16</a></h1> 13675 13676 <ul> 13677 <li>add configure script checks for Athena headers and 13678 libraries under /usr/contrib to work on HPUX (reported by 13679 several people: David Nixon <djn@csc.liv.ac.uk> Aryeh 13680 Koenigsberg <aryeh.koenigsberg@telrad.co.il> Johannes 13681 Mähner <johanm@camline.com> Andrew Gaylard 13682 <andrew.gaylard@bsw.co.za>).</li> 13683 13684 <li>add check to configure script if xterm is installed setgid 13685 rather than setuid, since wtmp and utmp may be installed with 13686 group-writable permissions other than root (based on Debian bug 13687 report #7112 by Bo Branten <bosse@ing.umu.se>).</li> 13688 13689 <li>rewrote logic that removes data from termcap entry, e.g., 13690 for titeInhibit, to make it less likely to remove the wrong 13691 data.</li> 13692 13693 <li>correct logic which checks for missing characters used for 13694 line drawing. The 0 character was tested unnecessarily, leading 13695 to some inefficiency when rendering.</li> 13696 13697 <li>change termcap capability which is used as input or output 13698 of ptyInitialErase logic from <em>kD</em> to <em>kb</em>. 13699 Christian Weisgerber <naddy@mips.rhein-neckar.de> pointed 13700 out in effect that <em>kD</em> (in terminfo <em>kdch1</em>) 13701 should correspond to the control sequence for <em>dch1</em>, 13702 which deletes from the current position toward the right.</li> 13703 13704 <li>check for failure to change ownership of the PTY device and 13705 warn when xterm is running setuid'd to root. This was reported 13706 to happen on the FreeBSD/NetBSD/OpenBSD systems as a result of 13707 the chflags() call.</li> 13708 13709 <li>add xterm-noapp terminfo entry to illustate a nominally 13710 bash-compatible terminal description.</li> 13711 </ul> 13712 13713 <h1><a name="xterm_113" id="xterm_113">Patch #113 - 1999/8/15 - 13714 XFree86 3.9.15b</a></h1> 13715 13716 <p>Several fixes. The main one is a first draft of pulldown 13717 menus. It's not complete (I have some minor/annoying geometry 13718 problems to correct), but is usable. Once it's complete I plan to 13719 add a menu to support additional selections that won't fit on the 13720 current popup menus. Also, this fits into my longterm plan to 13721 allow configuring with Motif libraries.</p> 13722 13723 <ul> 13724 <li>correct error in input conversion for NRC mode (reported by 13725 Stefan Traby <stefan@sime.com>).</li> 13726 13727 <li>fix initialization of num_lock data in Misc struct (since 13728 those fields of the reference widget aren't initialized), and 13729 add logic to deal with XVision whose NumLock key does not 13730 transmit but does alter keypad state.</li> 13731 13732 <li>correct a missing return-value in get_pty(), for SCO</li> 13733 13734 <li>add E2A fix for backspace (patch by Greg Smith), i.e.,<br> 13735 #define VAL_INITIAL_ERASE A2E(127)</li> 13736 13737 <li>correct foreground color within cursor outline when the 13738 window is unfocused (reported by Stephane Chazelas).</li> 13739 13740 <li>corrected position of scrollbar set in ResizeScrollBar(), 13741 which left it positioned incorrectly if the right scrollbar 13742 were enabled from the popup menu but was not initially enabled. 13743 <p>I have noticed some additional problems with 13744 right-scrollbar on X11R5 which I will correct later.</p> 13745 </li> 13746 13747 <li>integrate changes by Jean-Claude Michot for QNX from 13748 XFree86 3.3.4c</li> 13749 13750 <li>add resources menuBar/MenuBar, menuHeight/MenuHeight for 13751 later use in toolbar geometry.</li> 13752 13753 <li>add configure option --enable-toolbar</li> 13754 13755 <li>add missing definition to make ziconbeep logic not 13756 compile-in when configure script disables it.</li> 13757 13758 <li>add configure-check for input-method support in X 13759 libraries</li> 13760 </ul> 13761 13762 <h1><a name="xterm_112" id="xterm_112">Patch #112 - 1999/7/17 - 13763 XFree86 3.9Pw</a></h1> 13764 13765 <ul> 13766 <li>add null-pointer check to FlushLog(), fixes a core dump 13767 when both -l and -lf options are used when xterm is configured 13768 with wide-character support.</li> 13769 13770 <li>remove "ISO" case for SD, which was due to a typographical 13771 error in ECMA-48 (reported by Paul Williams 13772 <paul@celigne.co.uk> for vttest).</li> 13773 13774 <li>add "FILES" section to manpage.</li> 13775 13776 <li>generate header file to initialize default resources for 13777 colors 16-255.</li> 13778 13779 <li>fixes for os390 (Greg Smith): 13780 <ul> 13781 <li>add README.os390</li> 13782 13783 <li>use the pty_search() function to find an available 13784 pty/tty pair.</li> 13785 13786 <li>move E2A() call out of getXtermCell() to SaveText() 13787 function so it will be available in all 13788 configurations.</li> 13789 </ul> 13790 </li> 13791 13792 <li>patches by Todd Larason: 13793 <ul> 13794 <li>enable SGR 48 5 in ISO color mode, not just 256 color 13795 mode</li> 13796 13797 <li>change configure's --disable-256-color option to 13798 --enable-256-color, to match its effect</li> 13799 13800 <li>fix OSC 4 xx ? (report ansi color) to report a string 13801 which can actually be used to set the color back</li> 13802 13803 <li>fix OSC 4 xx yy (change ansi color) to not allow 13804 setting colors > 15 in 16 color mode</li> 13805 13806 <li>simplify the COLOR_ settings a bit in ptyx.h, along 13807 with setting NUM_ANSI_COLORS needed for #1 and #4 13808 above</li> 13809 13810 <li>correct string-terminator code passed for reference to 13811 OSC responses; when in 7-bit mode, only the final byte of 13812 ST was seen.</li> 13813 13814 <li>Allow multiple color #;name pairs in OSC 4, and 13815 document changes to match.</li> 13816 </ul> 13817 </li> 13818 </ul> 13819 13820 <h1><a name="xterm_111" id="xterm_111">Patch #111 - 1999/7/10 - 13821 XFree86 3.9Pw</a></h1> 13822 13823 <ul> 13824 <li>add control sequences for specifying the RGB value of the 13825 ANSI colors, and for configuring with 256 colors (patch by Todd 13826 Larason <jtl@molehill.org>). I made the default 13827 configuration to 16-colors, because xterm uses the default 13828 color map (which has only 256 colors).</li> 13829 13830 <li>correct an error in DCS $ q m reporting for colors 8-15 13831 (Todd Larason).</li> 13832 13833 <li>add test/demo script for double size characters. Used this 13834 to test/correct display of double size characters that should 13835 wrap, underlined double size characters.</li> 13836 13837 <li>increased cache size for double size fonts to 8, to allow 13838 for both normal and bold fonts (discussion with Aryeh 13839 Koenigsberg <aryeh.koenigsberg@telrad.co.il>).</li> 13840 13841 <li>add fixes for port to OS390 aka MVS (integrated patch from 13842 Greg Smith <rys@epaibm.rtpnc.epa.gov>). OS390 uses EBCDIC 13843 rather than ASCII.</li> 13844 13845 <li>correct an off-by-one in binary search limits in 13846 keysym2ucs.c (Markus Kuhn).</li> 13847 13848 <li>implement logging for UTF-8 mode. The output is written in 13849 UTF-8 form.</li> 13850 </ul> 13851 13852 <h1><a name="xterm_110" id="xterm_110">Patch #110 - 1999/6/29 - 13853 XFree86 3.9Pu</a></h1> 13854 13855 <ul> 13856 <li>If colorMode is enabled by default, compile-in default 13857 resources to match the colors listed in XTerm-col.ad (this 13858 should fix a longstanding FAQ).</li> 13859 13860 <li>added new OSC 3 ; PROPNAME=VALUE ST 13861 escape sequence to set an arbitrary X property on the top level 13862 xterm X11 window. Omit "=VALUE" to delete the X property (patch 13863 by Greg Badros <gjb@cs.washington.edu>).</li> 13864 13865 <li>change internal flag used for <em>utf8controls</em> 13866 resource so we allow 31-bit range of characters (suggested by 13867 Thomas Wolff).</li> 13868 13869 <li>add check for 16-bit characters in OSC strings, change them 13870 to '?' (reported by Thomas Wolff).</li> 13871 13872 <li>modify logic of same_font_name() to avoid trying to 13873 interpret both parameters as wildcard patterns. That does not 13874 (cannot) work, and in some instances the font server will 13875 return unresolved wildcards for the normal or bold fontnames, 13876 making them match inadvertently, triggering the fallback 13877 overstrike logic (reported by Tim Adye).</li> 13878 </ul> 13879 13880 <h1><a name="xterm_109" id="xterm_109">Patch #109 - 1999/6/23 - 13881 XFree86 3.9Pt</a></h1> 13882 13883 <ul> 13884 <li>correct range-check from patch #108, which resulted in not 13885 being able to select from the scrollback buffer (reported by 13886 Tim Adye <T.J.Adye@rl.ac.uk>)</li> 13887 13888 <li>correct "no available ptys" problem with Cygwin B20.1 13889 (patch by Tim Adye).</li> 13890 13891 <li>modified install-ti rule in Makefile.in to allow override 13892 of the terminfo directory when doing a "make install", i.e., by 13893 assigning to TERMINFO_DIR (request by Zdenek Sekera 13894 <zs@sgi.com>).</li> 13895 13896 <li>added install-full rule to Makefile.in</li> 13897 13898 <li>resync mkdirs.sh and install.sh scripts against current 13899 autoconf</li> 13900 13901 <li>implement $(DESTDIR) in Makefile.in, making it simple to 13902 install xterm and associated files into a directory just for 13903 packaging a binary release (suggested by CaT 13904 <cat@zip.com.au>).</li> 13905 13906 <li>change IChar type to unsigned, rather than unsigned short, 13907 making room for a flag to keep with 16-bit characters to 13908 prevent them from being interpreted as C0 or C1 controls 13909 (reported by Thomas Wolff).</li> 13910 13911 <li>correct a typo from patch #107, incorrect array name, in 13912 the filterUTF8 function (patch by Bruno Haible 13913 <haible@ilog.fr>)</li> 13914 13915 <li>add <em>utf8controls</em> resource to specify whether xterm 13916 should interpret 16-bit characters unpacked from UTF-8 form as 13917 control characters if they happen to fall into that range. This 13918 behavior is left unspecified by the Unicode standard (request 13919 by Thomas Wolff).</li> 13920 13921 <li>modify handling of OSC to recover if application sends 13922 16-bit characters with codes above 255. We cannot display them 13923 as is, but translate out-of-range characters to a '?' (reported 13924 by Thomas Wolff).</li> 13925 </ul> 13926 13927 <h1><a name="xterm_108" id="xterm_108">Patch #108 - 1999/6/19 - 13928 XFree86 3.9Ps</a></h1> 13929 13930 <ul> 13931 <li>add a range-check to LastTextCol(), to guard against 13932 indexing before the beginning of the scrollback buffer. This 13933 appears to happen with certain fonts under X11R5 (reported by 13934 Stephane Chazelas <Stephane_Chazelas@Raytheon.com>).</li> 13935 13936 <li>implement resource <em>boldMode</em>, to allow disabling 13937 the simulation of bold fonts when the bold and normal fonts are 13938 not different (requested by Will Day 13939 <willday@rom.oit.gatech.edu>).</li> 13940 13941 <li>change the atom "UTF-8" to "UTF8_STRING", and fixes a few 13942 bugs in the UTF-8 selection (patch by Juliusz Chroboczek).</li> 13943 13944 <li>correct logic of binary-search in keysym2ucs.c (patch by 13945 Markus Kuhn).</li> 13946 13947 <li>add special interpretation of keysym codes above 0x1000000 13948 as the corresponding UCS value plus 0x1000000 (patch by Markus 13949 Kuhn).</li> 13950 </ul> 13951 13952 <h1><a name="xterm_107" id="xterm_107">Patch #107 - 1999/6/12 - 13953 XFree86 3.9Pq</a></h1> 13954 13955 <ul> 13956 <li>Two changes from Stephen P Wall. From his description: 13957 <blockquote> 13958 <p>The first change is simple - I added ESC[3J to erase the 13959 stored lines above the screen. That's what the changes to 13960 util.c and ctlseqs.ms are.</p> 13961 13962 <p>The second change is to get the blinking cursor working. 13963 I took out the cursorBlinkTime resource, and put in 13964 cursorBlink (Boolean), cursorOnTime (time cursor is on in 13965 msecs) and cursorOffTime, and added a cursorblink item to 13966 the vtMenu to enable/disable it.</p> 13967 </blockquote> 13968 </li> 13969 13970 <li>improve selection (integrated patch by Juliusz Chroboczek). 13971 From his description: 13972 <blockquote> 13973 <p>With this patch, selection conversion works 13974 properly:</p> 13975 13976 <pre> 13977 ISO 8859-1 xterm -> ISO 8859-1 xterm (transferred as STRING); 13978 ISO 8859-1 xterm -> UTF-8 xterm (transferred as STRING); 13979 UTF-8 xterm -> ISO 8859-1 xterm (transferred as STRING); 13980 UTF-8 xterm -> UTF-8 xterm (transferred as UTF-8). 13981</pre> 13982 <p>It will not work properly if one xterm is in, say, ISO 13983 8859-2. Actually, for this case xterm breaks the ICCCM 13984 routinely (sending ISO 8859-2 data as STRING), so I 13985 wouldn't worry too much about it. I have not changed the 13986 behaviour in eight-bit mode in any way.</p> 13987 </blockquote> 13988 </li> 13989 </ul> 13990 13991 <h1><a name="xterm_106" id="xterm_106">Patch #106 - 1999/6/9 - 13992 XFree86 3.9Pq</a></h1> 13993 13994 <ul> 13995 <li>remove duplicate fix for OpenBSD in resize.c</li> 13996 13997 <li>correct logic in ScreenWrite, which did not reset the high 13998 bytes of 16-bit characters when overwriting them with a 8-bit 13999 character string (reported by Thomas Wolff).</li> 14000 14001 <li>provide limited support for input of UTF-8 16-bit data by a 14002 lookup table (integrated patch by Markus Kuhn).</li> 14003 14004 <li>correct check in non_blank_line to ensure we're in 14005 wide-character mode before looking at the high bytes, for 14006 InsertChar.</li> 14007 </ul> 14008 14009 <h1><a name="xterm_105" id="xterm_105">Patch #105 - 1999/6/5 - 14010 XFree86 3.9Pp</a></h1> 14011 14012 <ul> 14013 <li>implement new resource <em>trimSelection</em>, which allows 14014 xterm to trim trailing blanks from selected lines. This does 14015 not affect the highlighting. (reported by several people using 14016 <em>mutt</em>, including Hans Morten Kind <edphk@uib.no>, 14017 Jeremy <jeremy@exit109.com> and (Michael Fuller 14018 <msf@mds.rmit.edu.au>).</li> 14019 14020 <li>include term.h in resize for OpenBSD (patch by Matthieu 14021 Herrb).</li> 14022 14023 <li>correct logic for UTF-8 in functions that hide and show the 14024 cursor; it was displaying a space whenever the low byte of the 14025 character at the cursor position was zero (reported by Thomas 14026 Wolff <Thomas.Wolff@icn.siemens.de>).</li> 14027 </ul> 14028 14029 <h1><a name="xterm_104" id="xterm_104">Patch #104 - 1999/5/30 - 14030 XFree86 3.9Pn</a></h1> 14031 14032 <p>This is a resync patch against XFree86 3.9Pn, reflecting 14033 changes which were submitted by Branden Robinson, who worked with 14034 Wichert Akkerman <wichert@cs.leidenuniv.nl> to set up 14035 ifdef's to handle GNU libc 2.1, and use getpt() which lets xterm 14036 avoid having to know the actual PTY name.</p> 14037 14038 <p>I have also added a few fixes for signed/unsigned mismatches, 14039 and corrected a problem in the configure script (the UTF-8 code 14040 was always configured since the Imakefile defines this).</p> 14041 14042 <h1><a name="xterm_103" id="xterm_103">Patch #103 - 1999/5/14 - 14043 XFree86 3.9Pm</a></h1> 14044 14045 <ul> 14046 <li>correct selection logic: I omitted an offset that accounts 14047 for the distance into the scrollback buffer when rewriting this 14048 for <a href="#xterm_101">patch #101</a>. Also fixed a similar 14049 problem for selecting double size characters from the 14050 scrollback buffer (first was reported by D Roland Walker 14051 <walker@pobox.com>).</li> 14052 14053 <li>improved support for Unix98 PTY's, using patch in Debian 14054 bug report #35650, by J.H.M. Dassen 14055 <jdassen@wi.leidenuniv.nl>. From the patch description: 14056 <blockquote> 14057 <ul> 14058 <li>No longer links xterm against libutil on a glibc2.1 14059 system. libutil is a compatibility library and should 14060 only be used when necessary. Rather than having get_pty() 14061 use openpty() from this compatibility library, use the 14062 real UNIX98 pty support in get_pty() (open()ing the 14063 master pty, through getpt() if available (glibc 14064 extension)). Use openpty() only under glibc2.0.</li> 14065 14066 <li>GNU libc2 is not Linux-specific; already it runs on 14067 the Hurd. It provides the UNIX98 pty functions (plus the 14068 getpt() extension), regardless of the underlying OS. 14069 Changed two constructs to look for GNU libc2 only, not 14070 GNU libc2 on Linux.</li> 14071 </ul> 14072 </blockquote> 14073 </li> 14074 14075 <li>improve font configuration, by checking if the user's 14076 resource settings for normal and bold fonts give the same font 14077 sizes (fixes problem reported by Peter Waltenberg 14078 <peterw@dascom.com>).</li> 14079 </ul> 14080 14081 <h1><a name="xterm_102" id="xterm_102">Patch #102 - 1999/5/12 - 14082 XFree86 3.9Pm</a></h1> 14083 14084 <ul> 14085 <li>revert change to openpty call in <a href="#xterm_101">patch 14086 #101</a>; this causes xterm to fail on DEC-Alpha OSF/1 4.0B 14087 (reported by H Merijn Brand).</li> 14088 14089 <li>modify print.c to move include of stdio.h after the 14090 autoconf'd xtermcfg.h since HP's ANSI C compiler otherwise sees 14091 inconsistent prototype for getopt, probably due to problem with 14092 const (reported by H Merijn Brand).</li> 14093 </ul> 14094 14095 <h1><a name="xterm_101" id="xterm_101">Patch #101 - 1999/5/10 - 14096 XFree86 3.9Pm</a></h1> 14097 14098 <ul> 14099 <li>moved includes and definitions for 'select' from data.h to 14100 xterm.h to fix problem introduced by prototype for getPtyData, 14101 part of UTF-8 changes (reported by Jens Schleusener 14102 <Jens.Schleusener@dlr.de>)</li> 14103 14104 <li>added "Meta <Btn2Down>:clear-saved-lines()" default 14105 translation (patch by H Merijn Brand)</li> 14106 14107 <li>fixes to configure script and ifdef's in main.c to build on 14108 a HP9000/D390 (hppa-2.0w) running HP-UX 11.00 (64 bit) with 14109 egcs 1.1.2 and HP's ANSI C compiler (patch by H Merijn Brand 14110 <PROCURA_BV@CompuServe.com>)</li> 14111 14112 <li>add more parentheses in ifdef's (patch by Bob 14113 Maynard).</li> 14114 14115 <li>eliminate conflicting definitions for USE_TERMINFO in 14116 resize.c (reported by Jeremy Buhler).</li> 14117 14118 <li>change openpty call to pass NULL rather than ttydev 14119 parameter, since that was used only to estimate the length of 14120 the corresponding data, and may not really be long enough 14121 (reported by Andreas Jaeger)</li> 14122 14123 <li>update description in xterm manpage for character class 14124 table, which said it handles only 7-bit codes.</li> 14125 14126 <li>correct a typo in ScrnDeleteChar() which made it not clear 14127 the high byte of wide-character data.</li> 14128 14129 <li>add logic to convert selection to UTF-8 form when 14130 appropriate. This makes select/paste "work", but further work 14131 is needed to make UTF-8 recognized as a locale in Xlib.</li> 14132 14133 <li>correct right-limit check when selecting double-width 14134 characters.</li> 14135 14136 <li>change default answerback response to an empty string.</li> 14137 </ul> 14138 14139 <h1><a name="xterm_100" id="xterm_100">Patch #100 - 1999/5/3 - 14140 XFree86 3.9Pl</a></h1> 14141 14142 <ul> 14143 <li>Correct a typo in the default resource value for 14144 backarrowKeyIsErase: it was always true (reported by Bram 14145 Moolenaar).</li> 14146 14147 <li>improve configure script's test if the installed xterm is 14148 setuid, in case that is a symbolic link.</li> 14149 14150 <li>correct "install-ti" rule in Makefile.in, by not setting a 14151 blank $TERMINFO value. That is interpreted as "." by ncurses' 14152 tic.</li> 14153 </ul> 14154 14155 <h1><a name="xterm_99" id="xterm_99">Patch #99 - 1999/5/2 - 14156 XFree86 3.9Pk</a></h1> 14157 14158 <ul> 14159 <li>correct logic that computes num_ptrs count of the number of 14160 indices into the screen buffer. This is the maximum of the 14161 colors and character-set indices; was incorrect in patch 14162 #97.</li> 14163 14164 <li>correct argument type for sigsetjmp, incidental change in 14165 patch #96's Unix88 PTY patch (reported by Bram Moolenaar).</li> 14166 14167 <li>correct description of secondary DA in ctlseqs.ms (reported 14168 by Bram Moolenaar).</li> 14169 14170 <li>decouple the backarrowKey and ptyInitialErase resources by 14171 adding a new resource backarrowKeyIsErase, to accommodate 14172 people using applications which have hardcoded tests for 14173 characters 8 and 127 rather than relying on the stty 14174 settings.</li> 14175 14176 <li>modify the UTF-8 decoder so that all possible illegal UTF-8 14177 sequences are properly represented by U+FFFD. This should be 14178 very helpful for developers of code that output UTF-8 strings 14179 for debugging. See the file utf-8-test.txt in 14180 http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz for a 14181 demonstration text that contains numerous illegal UTF-8 values. 14182 (patch by Markus Kuhn).</li> 14183 14184 <li>correct a place in ScrnRefresh where I was filling the high 14185 byte of a wide character with a space rather than a null 14186 (reported by Markus Kuhn).</li> 14187 </ul> 14188 14189 <h1><a name="xterm_98" id="xterm_98">Patch #98 - 1999/4/26 - 14190 XFree86 3.9Pk</a></h1> 14191 14192 <ul> 14193 <li>correct data manipulation in unparseputc(), broken for 14194 little-endian machines by patch #97's UTF-8 changes. This meant 14195 that keyboard input on SunOS did not work, though Linux i386 14196 was fine.</li> 14197 14198 <li>modify initialization for backarrowKey and logic for 14199 initial-erase to prevent the initial-erase from overriding an 14200 explicitly set backarrowKey resource (reported by Vikas 14201 Agnihotri).</li> 14202 14203 <li>add a missing null-pointer check in ScrnRefresh, for the 14204 wide-characters configuration.</li> 14205 </ul> 14206 14207 <h1><a name="xterm_97" id="xterm_97">Patch #97 - 1999/4/25 - 14208 XFree86 3.9Pk</a></h1> 14209 14210 <ul> 14211 <li>add configure script test for -lutil, needed for openpty 14212 call when configuring xterm for Glibc-2.1 and Unix98 PTY's 14213 (first reported by Martin Lorentz" 14214 <m.lorentz@w12.link-goe.de>).</li> 14215 14216 <li>completely parenthesize ifdef expressions for Glibc 14217 (suggested by Bob Maynard).</li> 14218 14219 <li>add initial-erase options (-ie, +ie) to help message 14220 (reported by Vikas Agnihotri).</li> 14221 14222 <li>remove duplicate definition of USE_USG_PTYS (reported by 14223 Jeremy Buhler).</li> 14224 14225 <li>change termcap <em>kD</em> and terminfo <em>kdch1</em> to a 14226 DEL (\177). I overlooked this when separating the styles of 14227 keyboard with the <em>sunKeyboard</em> resources in patch #94, 14228 so that it normally matches the value of the stty erase 14229 character: 14230 <ul> 14231 <li>Reported by Jae Gangemi 14232 <jgangemi@ccf.rutgers.edu>, this caused emacs to not 14233 process the DEL properly, combining it with succeeding 14234 characters.</li> 14235 14236 <li>This does not appear to be related to a problem which I 14237 have found with <em>screen</em>, which translates the stty 14238 erase into the termcap <em>kD</em> or terminfo 14239 <em>kdch1</em> value (depending on how it is linked) if the 14240 $TERMCAP variable is set when <em>screen</em> is 14241 invoked.</li> 14242 </ul> 14243 </li> 14244 14245 <li>add command-line options for enabling UTF-8 mode: -u8 and 14246 +u8. The more obvious -utf8 and +utf8 would conflict with 14247 xterm's -ut and +ut (utmp) options. The UTF-8 changes were 14248 requested by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. This 14249 patch does not complete UTF-8 implementation, but makes it 14250 usable, i.e., display and refresh work, and I am able to 14251 display the test cases which Markus provides. More work is 14252 needed to complete this feature: 14253 <ul> 14254 <li>the control sequences for switching in/out of UTF-8 14255 mode are partly implemented (don't use them). Similarly, 14256 the switching between vt100 and tek4014 emulations when 14257 UTF-8 mode is enabled will not work properly. 14258 <p>You must use the -u8 command line option to use this 14259 feature, as well as compile with the OPT_WIDE_CHARS 14260 definition.</p> 14261 </li> 14262 14263 <li>cut/paste only copies 8-bit characters.</li> 14264 14265 <li>logging is disabled in the wide-character 14266 configuration</li> 14267 14268 <li>printing only writes 8-bit characters.</li> 14269 14270 <li>input only does 8-bit characters. This is the area that 14271 I know least about.</li> 14272 </ul> 14273 </li> 14274 </ul> 14275 14276 <h1><a name="xterm_96" id="xterm_96">Patch #96 - 1999/4/19 - 14277 XFree86 3.9Pj</a></h1> 14278 14279 <ul> 14280 <li>modify Makefile.in to work with configure script's --srcdir 14281 option. (patch by Jeremy Buhler 14282 <jbuhler@cs.washington.edu>)</li> 14283 14284 <li>add checks for 'echo -n' equivalent for 8colors.sh and 14285 16colors.sh scripts (reported by Vikas Agnihotri).</li> 14286 14287 <li>improve logic that looks for bold fonts to allow for 14288 wildcards in the specification for normal fonts, and to ensure 14289 that if a bold font is specified as normal, that xterm will 14290 simulate a bold version of that using a one-pixel offset 14291 overstrike (reported by Henrik Harmsen 14292 <harmsen@erv.ericsson.se>).</li> 14293 14294 <li>correct horizontal spacing of double width line-drawing 14295 characters that xterm simulates.</li> 14296 14297 <li>improve support for Unix98 PTY's, using patch in Debian bug 14298 report #35650, by Topi Miettinen 14299 <Topi.Miettinen@medialab.sonera.fi>. Andreas Jaeger says 14300 this also corrects a permissions problem reported by 14301 cat@zip.net.au</li> 14302 14303 <li>modify initial-erase logic to ensure that 14304 <code>ttyModes</code> resource overrides it.</li> 14305 </ul> 14306 14307 <h1><a name="xterm_95" id="xterm_95">Patch #95 - 1999/4/5 - 14308 XFree86 3.9Ph</a></h1> 14309 14310 <ul> 14311 <li>modify primary DA response to allow a '1' parameter.</li> 14312 14313 <li>add printer and national replacement character sets to 14314 VT220 primary DA response.</li> 14315 14316 <li>document primary and secondary DA responses in 14317 ctlseqs.ms</li> 14318 14319 <li>use the patch number (e.g., 95) in the secondary DA 14320 response, providing user applications a means of determining 14321 the version of xterm for feature comparison (request by Bram 14322 Moolenaar).</li> 14323 14324 <li>make xterm respond to secondary DA when the decTerminalID 14325 is set for VT100.</li> 14326 14327 <li>limit user-defined keys (DECUDK) to VT220-style keyboard 14328 when sunKeyBoard resource is true.</li> 14329 14330 <li>modify ifdef's for Linux-2.2.x with Glibc-2.1 to work with 14331 Glibc-2.1 and no Unix98 PTY support (patch from Andreas Jaeger 14332 <aj@arthur.rhein-neckar.de>)</li> 14333 14334 <li>add optional feature (resource and command-line options) to 14335 make xterm use the PTY's sense of erase character on startup, 14336 rather than requiring it to be \177, or set the PTY's erase 14337 character to match xterm's configuration. Note that while 14338 $TERMCAP is modified to reflect the actual configuration, the 14339 terminfo kdch1 string is not (request by Dirk H Hohndel 14340 <hohndel@suse.de>)</li> 14341 14342 <li>improve scripts in vttests to work with newer shells that 14343 do not use 'echo -n'.</li> 14344 14345 <li>add fonts.sh example script</li> 14346 14347 <li>correct inequality in handling of "#1" font 14348 specification.</li> 14349 14350 <li>correct call to XGetWMNormalHints() used for computing 14351 maximum screen size; the size hints may not have been set.</li> 14352 14353 <li>begin implementation of support for wide-characters 14354 (configure option --enable-wide-chars defines OPT_WIDE_CHARS, 14355 invoke xterm with -wc option to activate this feature). This 14356 patch optionally widens internal data structures, invokes the 14357 16-bit text output rather than the 8-bit version and adds some 14358 tables.</li> 14359 </ul> 14360 14361 <h1><a name="xterm_94" id="xterm_94">Patch #94 - 1999/3/27 - 14362 XFree86 3.9Pf</a></h1> 14363 14364 <ul> 14365 <li>further fixes for terminfo: ka1, ka3, etc., differ between 14366 the default xterm-xfree86 and xterm-vt220 entries.</li> 14367 14368 <li>change default (with sunKeyboard resource false) behavior 14369 of the editing keypad "Delete" to send a 127, like xterm-r6. 14370 The VT220-style <code><ESC>[3~</code> is sent when 14371 sunKeyboard is true (reported by Tomas Vanhala).</li> 14372 14373 <li>add parameters to function keys to indicate if shift, 14374 control or alt are set. The codes are based on a description of 14375 a DEC VT510 with a PC keyboard, from Jeffrey Altman 14376 <jaltman@watsun.cc.columbia.edu>.</li> 14377 14378 <li>add control sequence 1035, set-num-lock action and num-lock 14379 menu entry to control the use of the NumLock and Alt keys for 14380 the Sun/PC and VT220 keyboard extensions.</li> 14381 14382 <li>implement DECSET/DECRST numeric keypad (DECNKM) mode.</li> 14383 14384 <li>modify terminfo and termcap to use recommended "X Window" 14385 or "X11" names rather than "X Windows" (reported by Tomas 14386 Vanhala).</li> 14387 14388 <li>suppress translation of shifted keypad "+" when sunKeyboard 14389 is true.</li> 14390 14391 <li>workaround unexpected behavior (perhaps bug) in 14392 XmbLookupString, which returns trash in the string buffer for 14393 numlock and control-key combined with keypad-keys.</li> 14394 14395 <li>modify ScrollBarReverseVideo() to keep scrollbar border 14396 visible when reverse video is toggled.</li> 14397 14398 <li>correct missing case for parameter 17 (set highlight color) 14399 in dynamic colors control sequences.</li> 14400 14401 <li>extend dynamic colors control sequences to allow users to 14402 determine the colors and font which are currently active.</li> 14403 14404 <li>minor tweak to OSC responses, to use BEL if the application 14405 used that to end the request, rather than ST. This works better 14406 with shell scripts, which may not handle an 14407 <code><ESC>backslash</code> very well.</li> 14408 14409 <li>separate menu settings for reverse video from that done 14410 under program control.</li> 14411 14412 <li>corrected ifdef's for menus, which did not allow tek4014 to 14413 be suppressed properly (reported by Clint Olsen).</li> 14414 14415 <li>changes for Linux-2.2.x with GLibc-2.1 and /dev/ptmx 14416 support (integrated patch from Pavel Roskin): 14417 <ul> 14418 <li>main.c and resize.c were using different rules to 14419 determine whether ATT should be defined (actually 14420 USE_USG_PTYS is more apt).</li> 14421 14422 <li>copy definitions from main.c to resize.c to prevent 14423 sys/stream.h and sys/ptem.h from inclusion when SYSV is not 14424 defined</li> 14425 14426 <li>define CNUL if not already defined like other 14427 variables.</li> 14428 14429 <li>/dev/tty does exist in Linux, but it doesn't mean, it 14430 should be used. Therefore EACCES is now an acceptable 14431 result.</li> 14432 14433 <li>ifdef'd several calls such as <code>ioctl (ptyfd, 14434 I_PUSH, "ptem")</code> to build on Linux (I_PUSH is not 14435 defined when sys/stropts.h is not included).</li> 14436 </ul> 14437 </li> 14438 14439 <li>initialize second "ltc" variable in main.c (reported by 14440 David Dawes).</li> 14441 14442 <li>provide definition for USE_USG_PTYS in screen.c</li> 14443 14444 <li>add resource-files to install rule in standalone 14445 Makefile.in</li> 14446 14447 <li>add sample scripts to illustrate titlebar controls, 14448 resizing and colors.</li> 14449 </ul> 14450 14451 <h1><a name="xterm_93" id="xterm_93">Patch #93 - 1999/3/14 - 14452 XFree86 3.9Pd</a></h1> 14453 14454 <p>Here are several fixes and minor enhancements. The chief ones 14455 are the fixes for NumLock mode and reverse video, since we had 14456 become used to working around the problems.</p> 14457 14458 <ul> 14459 <li>remove kfnd/kll/kslt strings from terminfo, because curses 14460 applications do not necessarily return khome/kend pairs 14461 (reported by Vikas Agnihotri).</li> 14462 14463 <li>implement NumLock resource which overrides the keyboard 14464 tables for the special case of keypad keys. This is a problem 14465 introduced in xterm by X11R6 changes, i.e., an ambiguity which 14466 in effect discarded vt100 keypad support.</li> 14467 14468 <li>modify Sun/PC keyboard mode to extend this (emulation of 14469 DEC vt100 keypad) to the remainder of the numeric keypad. Now, 14470 the default operating mode of xterm uses the keyboard tables 14471 as-is (except if the NumLock mode overrides), but provides good 14472 vt100 keypad compatibility if the Sun/PC keyboard menu item is 14473 checked.</li> 14474 14475 <li>separate command-line settings for reverse video from that 14476 done under program control. This is a problem which was 14477 introduced by X11R6. Though <em>correct</em>, most users are 14478 confused by allowing the reset command to undo the effect of 14479 the command-line <kbd>-rv</kbd> option.</li> 14480 14481 <li>add description of function keys, keypad and cursor keys to 14482 ctlseqs.ms</li> 14483 14484 <li>add terminfo entries for xterm-vt52, xterm-sun and 14485 xterm-hp</li> 14486 14487 <li>correct typo (missing case value) for DECSET 35, 14488 enable/disable shifted keypad action and a few compiler 14489 warnings (reported by Zdenek Sekera <zs@sgi.com>).</li> 14490 14491 <li>correct reporting of color values 8-15 in DECRQSS (reported 14492 by Vikas Agnihotri).</li> 14493 14494 <li>modify parsing of ttyModes resource to recognize "^-" as 14495 "undef" (requested by Tomas Vanhala).</li> 14496 14497 <li>integrate/extend changes to add iconify/maximize actions 14498 (from Edward S. Arthur <eda@ultranet.com>).</li> 14499 14500 <li>add control sequences for maximizing/restoring window, and 14501 for reporting maximum screen size.</li> 14502 14503 <li>add 'interpret' action, to support local function-key 14504 interpretation. Used properly, this makes most of the 14505 specialized actions of xterm redundant.</li> 14506 14507 <li>add control sequence private modes 1051, 1052 and 1052, for 14508 setting the Sun and HP function key modes, and for setting the 14509 Sun/PC keyboard mode.</li> 14510 14511 <li>add configure option --disable-maximize</li> 14512 14513 <li>add configure option --disable-num-lcok</li> 14514 14515 <li>extend descriptions of configure script options in 14516 INSTALL.</li> 14517 </ul> 14518 14519 <h1><a name="xterm_92" id="xterm_92">Patch #92 - 1999/2/5 - 14520 XFree86 3.9Nz</a></h1> 14521 14522 <ul> 14523 <li>increase buffer size for tgetent (i.e., termcap) to 1500. 14524 This fixes a problem where <em>screen</em> is built using 14525 ncurses or GNU termcap and <em>xterm</em> is built using the 14526 standard termcap interface. The former does not limit the 14527 termcap size, while the latter is assumed to be no longer than 14528 1023 characters. The <em>screen</em> program's termcap entry is 14529 about 1200 characters long.</li> 14530 14531 <li>change update_menu_item() to a function, to simplify 14532 debugging. This also reduces the executable by 4Kb.</li> 14533 14534 <li>add control sequences for DECSET 30, 1010, 1011 like rxvt 14535 (enable or disable some features that were only settable via 14536 resources or command line arguments).</li> 14537 14538 <li>add control sequence for DECSET 35, which enables/disables 14539 the shifted keypad functions.</li> 14540 14541 <li>add support for switching font sizes, by stepping through 14542 the font menu using shifted keypad plus and minus.</li> 14543 14544 <li>correct missing initialization of tekInhibit and tekSmall 14545 resources.</li> 14546 14547 <li>correct ifdef's in charproc.c for XtNgeometry and 14548 XtCGeometry (reported by Bram Moolenaar).</li> 14549 </ul> 14550 14551 <h1><a name="xterm_91" id="xterm_91">Patch #91 - 1999/1/21 - 14552 XFree86 3.9Nw</a></h1> 14553 14554 <ul> 14555 <li>Implement logic to translate input characters which are 14556 mapped when in vt220 National Replacement Character mode 14557 (requested by Tomas Vanhala).</li> 14558 14559 <li>Resync configure scripts with my patches to autoconf 14560 2.13</li> 14561 14562 <li>Change order of -lXmu and -lXext to accommodate cygwin32 14563 (reported by Vikas Agnihotri).</li> 14564 14565 <li>Add "-ti" option to set terminal emulation level from 14566 command line rather than via resource.</li> 14567 14568 <li>Simplify some of the preprocessor logic using #elif.</li> 14569 </ul> 14570 14571 <h1><a name="xterm_90" id="xterm_90">Patch #90 - 1998/12/13 - 14572 XFree86 3.9Nq</a></h1> 14573 14574 <p>This implements several small fixes and enhancements. The 14575 chief one implements fallback support for line drawing characters 14576 with fonts that do not include those characters. But I 14577 implemented that last.</p> 14578 14579 <ul> 14580 <li>If any of the glyphs in positions 0-31 (used by xterm to 14581 implement the VT100 alternate character set) are zero-sized 14582 (i.e., missing), xterm will reserve a normal space for the 14583 glyph when drawing. I implemented a simple stroke-drawing 14584 function to draw the line-drawing characters and a couple of 14585 the other (simpler) characters such as diamond. (This was 14586 suggested by Vikas Agnihotri).</li> 14587 14588 <li>Modify the computation of doublesize characters to work 14589 around font servers which shift the scaled characters up/down 14590 or do not give the correct width.</li> 14591 14592 <li>Add popup menu item and corresponding resource settings to 14593 disable the font-scaling logic for doublesize characters to 14594 work around (older) font servers which simply do not draw the 14595 fonts scaled to the size that they said they would. I see this 14596 problem on a SunOS system running X11R5; the X11R6 servers seem 14597 well behaved.</li> 14598 14599 <li>Implement new escape sequence, private mode 1049, which 14600 combines the switch to/from alternate screen mode with screen 14601 clearing and cursor save/restore. Unlike the existing escape 14602 sequence, this clears the alternate screen when switching to it 14603 rather than when switching to the normal screen, thus retaining 14604 the alternate screen contents for select/paste operations. 14605 <p>When I implemented the popup menu entry to toggle between 14606 the normal and alternate screens, I considered only pasting 14607 from the normal screen to the alternate; this improvement 14608 allows either direction.</p> 14609 </li> 14610 14611 <li>Changed the termcap and terminfo for xterm-xfree86 and 14612 xterm-8bit to use the new 1049 private mode.</li> 14613 14614 <li>Modify the logic which switches between normal and 14615 alternate screens so that the save/restore cursor operations 14616 apply only to the current screen. That means that applications 14617 which use the terminfo smcur/rmcur or termcap ti/te 14618 capabilities will restore the cursor to the original position 14619 on the normal screen rather than to the most recent place where 14620 a save-cursor operation was performed. 14621 <p>I note that a real VT100 terminal would not behave in this 14622 way, but it is a moot point since the VT100 does not 14623 implement alternate screen, and therefore the save/restore 14624 cursor sequence would not be used in this context. I reviewed 14625 the logic which switches between normal and alternate screens 14626 based on some recent newsgroup postings as well as a proposed 14627 patch in the Debian group which attempts to do this (the 14628 patch has a bug, however, so I did not use it).</p> 14629 </li> 14630 14631 <li>Add popup menu entry for toggling the titeInhibit 14632 resource.</li> 14633 14634 <li>Add new resource answerbackString, which overrides the 14635 default "xterm" returned by xterm when responding to an ENQ 14636 (control/E) character (request by Rajesh Vaidheeswarran 14637 <rv@fore.com>).</li> 14638 14639 <li>Add new resource keyboardDialect for setting the NRC 14640 display character set (request by Tomas Vanhala, who notes that 14641 I should add logic to translate the keyboard as well).</li> 14642 14643 <li>Add new command-line option and corresponding resources for 14644 making xterm generate escape sequences compatible with HP 14645 terminals. Like the existing Sun escape sequences, this is 14646 available as a popup menu item. It is enabled by the configure 14647 script with the option --enable-hp-fkeys (requested by Toni 14648 Mueller <sales@oeko.net>).</li> 14649 14650 <li>Add configure script option --disable-boxchars to disable 14651 the fallback support for line drawing characters.</li> 14652 14653 <li>Fix ifdef's for configure script --disable-ansi-color, and 14654 reviewed all configure options to ensure that all can be 14655 enabled/disabled appropriately.</li> 14656 14657 <li>Update config.guess and config.sub, from Lynx.</li> 14658 </ul> 14659 14660 <h1><a name="xterm_89" id="xterm_89">Patch #89 - 1998/11/20 - 14661 XFree86 3.9Nm</a></h1> 14662 14663 <p>This patch completes the implementation of double-sized 14664 character support for the VT100 emulation, and fixes a few minor 14665 bugs:</p> 14666 14667 <ul> 14668 <li>corrected the cursor position in HideCursor, which did not 14669 multiply the column by two when in doublesize mode. This bug, 14670 which did not appear in normal use, dates back to my original 14671 <a href="#xterm_44">changes</a> to partly implement 14672 double-sized characters. I noticed it when cat'ing a typescript 14673 from vttest's double-sized character test.</li> 14674 14675 <li>ensure that the current line is repainted when switching 14676 between single and double width characters.</li> 14677 14678 <li>reduce the number of bits used for double-sized character 14679 coding from 3 to 2, to make more room for soft-font codes.</li> 14680 14681 <li>copy newer ifdef's from the XFree86 3.3.3 release's main.c, 14682 which address details of glibc and powerpc.</li> 14683 14684 <li>moved definition of DECL_ERRNO in xterm.h to match XFree86 14685 3.3.3</li> 14686 14687 <li>modify <em>resize</em> to remove the ifdef on SVr4 that 14688 suppressed printing the script for $LINES and $COLUMNS. 14689 Solaris' resize utility does this; suppressing the behavior is 14690 unnecessary.</li> 14691 </ul> 14692 14693 <p>I tested the double-sized characters using vttest and the 14694 xfsft patch. These fonts worked reasonably well:</p> 14695 14696 <pre> 14697 -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1 14698 9x15 14699</pre> 14700 <p>The iso8859 font does not include box characters, of course, 14701 but looks good.</p> 14702 14703 <h1><a name="xterm_88" id="xterm_88">Patch #88 - 1998/10/31 - 14704 XFree86 3.9Nk and 3.3.2h</a></h1> 14705 14706 <p>This refines my <a href="#xterm_85">patch #85</a> by checking 14707 for a case where the font server returns a bold font that does 14708 not quite correspond to the normal font. When I asked for a bold 14709 version of the 6x12 font, the font server returned a near 14710 equivalent where the ascent and descent values did not match, 14711 causing xterm to leave lines across the display. This patch makes 14712 xterm reject that type of mismatch, falling back to the old font 14713 behavior.</p> 14714 14715 <h1><a name="xterm_87" id="xterm_87">Patch #87 - 1998/10/21 - 14716 XFree86 3.9Nj and 3.3.2f</a></h1> 14717 14718 <p>This corrects a problem reported by Stefan Dalibor. My table 14719 entries for the <em>printerExtent</em> and 14720 <em>printerFormFeed</em> resources used the wrong types for 14721 sizeof, causing the printer to not work properly on some 14722 platforms because the <em>printAttributes</em> resource was 14723 overwritten (e.g., Digital Unix with DEC Alpha).</p> 14724 14725 <p>I reviewed all of the resource table entries and fixed a 14726 potential problem with <em>resizeGravity</em>, which was typed as 14727 <em>int</em> rather than <em>XtGravity</em>.</p> 14728 14729 <h1><a name="xterm_86" id="xterm_86">Patch #86 - 1998/10/14 - 14730 XFree86 3.9Nj and 3.3.2e</a></h1> 14731 14732 <p>A small fix: when switching to/from the continuous mouse 14733 reporting mode, the event mask was incorrect if xterm was built 14734 under X11R5 because the original data was saved under an ifdef 14735 for active-icon.</p> 14736 14737 <h1><a name="xterm_85" id="xterm_85">Patch #85 - 1998/10/12 - 14738 XFree86 3.9Nj and 3.3.2e</a></h1> 14739 14740 <p>Some cleanup (I noticed the pixel droppings a few months ago 14741 after getting a new 17" monitor):</p> 14742 14743 <ul> 14744 <li>split-out the functions that load/reload fonts for xterm as 14745 new file fontutils.c to extend them to support automatic 14746 loading of bold font corresponding to the normal font. Adapted 14747 logic from EMU 1.3 for this purpose. This fixes most 14748 occurrences of pixel droppings from bold characters.</li> 14749 14750 <li>modified by renaming variables and adding casts to permit 14751 compile with g++.</li> 14752 14753 <li>modify headers so they can all be compiled without order 14754 dependencies, and use bracketed rather than quoting includes to 14755 allow compile from separate directory.</li> 14756 14757 <li>renamed xtermm terminfo entry to xterm-mono, to avoid 14758 conflict with Solaris entry now in ncurses.</li> 14759 </ul> 14760 14761 <h1><a name="xterm_84" id="xterm_84">Patch #84 - 1998/10/9 - 14762 XFree86 3.9Ni and 3.3.2e</a></h1> 14763 14764 <p>Several small fixes and enhancements, including a patch from 14765 Bjorn Helgaas:</p> 14766 14767 <ul> 14768 <li>correct initialization of TERMCAP environment variable, 14769 which was frequently set to garbage on non-Linux systems 14770 because "termcap" and "newtc" contained random data from the 14771 stack.</li> 14772 14773 <li>remove the LINEWRAPPED attribute from lines as they are 14774 cleared. Previously, the attribute was set but never 14775 cleared.</li> 14776 14777 <li>make word and line selections work even when lines are 14778 wrapped by xterm. Previously, selections were limited to one 14779 screen line.</li> 14780 </ul> 14781 14782 <p>as well as</p> 14783 14784 <ul> 14785 <li>modify logic for line-wrapping to reset the associated flag 14786 if the application deletes a character. This fixes a problem 14787 reported by Bjorn Helgaas where word/line selection would still 14788 wrap even after deleting characters from the first line.</li> 14789 14790 <li>add kll/kH capabilities to xterm-xfree86 entries in termcap 14791 and terminfo (request by Michael Schroeder).</li> 14792 14793 <li>shorten descriptions in termcap to make resolved entries 14794 all shorter than 1023 character limit.</li> 14795 14796 <li>use DECSTR control sequence to shorten initialization and 14797 reset strings in xterm-xfree86 termcap and terminfo.</li> 14798 14799 <li>use rmul/smul and rmir/smir in xterm-r5 terminfo to match 14800 termcap.</li> 14801 14802 <li>correct typos in initialization and reset strings in 14803 xterm-r5 termcap and terminfo.</li> 14804 14805 <li>disable special translations of key symbols (the backarrow 14806 key, the editing keypad and the keypad "+") when a modifier 14807 other than shift, control or numlock is used. This makes xterm 14808 handle the meta key as expected by people using emacs (reported 14809 by Pete Harlan <harlan@pointofchoice.com> in 14810 linux.debian.user newsgroup).</li> 14811 </ul> 14812 14813 <h1><a name="sync_83" id="sync_83">Resync #83 - 1998/10/7 - 14814 XFree86 3.3.2e</a></h1> 14815 14816 <p>Merge changes through <a href="#xterm_83">patch #83</a> with 14817 the 3.3.2e version.</p> 14818 14819 <p>This follows a change from XFree86 CVS which adds checks for 14820 non-null return from malloc (patch by Matthieu Herrb).</p> 14821 14822 <h1><a name="xterm_83" id="xterm_83">Patch #83 - 1998/8/25 - 14823 XFree86 3.9Nb</a></h1> 14824 14825 <p>Several small fixes and enhancements:</p> 14826 14827 <ul> 14828 <li>add configure test to infer if xterm should be installed 14829 setuid based on previously installed xterm (reported by Stephen 14830 Marley and Stefan Dalibor).</li> 14831 14832 <li>implement quasi-continuous mouse reporting (integrated 14833 patch by Jason Bacon).</li> 14834 14835 <li>correct control sequences transmitted by function keys F1 14836 to F4 when sunFunctionKeys resource is true (it was still using 14837 the VT100 control sequences).</li> 14838 14839 <li>modify handling of backarrow key so that the control 14840 modifier toggles the backspace/delete interpretation set by the 14841 backarrowKey resource.</li> 14842 14843 <li>limit the row and column values used to report mouse 14844 position.</li> 14845 </ul> 14846 14847 <p>From resync with XFree86 3.9Nb:</p> 14848 14849 <ul> 14850 <li>add support for the VSTATUS control character (patch by 14851 Robert Earl <rearl@teleport.com>).</li> 14852 </ul> 14853 14854 <h1><a name="xterm_82" id="xterm_82">Patch #82 - 1998/7/15 - 14855 XFree86 3.9Aj</a></h1> 14856 14857 <p>Bug fix for <a href="#xterm_81">patch #81</a>:</p> 14858 14859 <ul> 14860 <li>remove an #undef for NBBY, which caused compile problem on 14861 FreeBSD (reported by David Dawes).</li> 14862 </ul> 14863 14864 <h1><a name="xterm_81" id="xterm_81">Patch #81 - 1998/7/14 - 14865 XFree86 3.9Aj</a></h1> 14866 14867 <p>More bug fixes:</p> 14868 14869 <ul> 14870 <li>fix conflicting ifdef's for TIOCSLTC when building with 14871 Linux on AXP aka DEC Alpha (reported by Robin Cutshaw).</li> 14872 14873 <li>correction to patch #79, move assignment for 14874 *utptr->ut_user = 0; back into non-SVR4 ifdef in main.c, 14875 since this clobbers username on Solaris 2.5.1 (analysis by Will 14876 Day <willday@rom.oit.gatech.edu>).</li> 14877 14878 <li>corrected khome/kend in xterm-8bit terminfo 14879 description.</li> 14880 14881 <li>improve cursor color by making it always the reverse of 14882 fg/bg unless the cursorColor resource is set, i.e., to 14883 something other than the default foreground (reported by Vikas 14884 Agnihotri and Bram Moolenaar).</li> 14885 14886 <li>minor fixes for compiler warnings, including a syntax error 14887 in the AMOEBA ifdef's.</li> 14888 </ul> 14889 14890 <p>From resync with XFree86 3.9Aj:</p> 14891 14892 <ul> 14893 <li>correction to patch #73, supply missing #else for fallback 14894 definitions of size_t, time_t (Robin Cutshaw 14895 <robin@intercore.com>).</li> 14896 </ul> 14897 14898 <h1><a name="xterm_80" id="xterm_80">Patch #80 - 1998/6/29 - 14899 XFree86 3.9Ai</a></h1> 14900 14901 <p>This fixes a couple of items leftover or introduced by patch 14902 79:</p> 14903 14904 <ul> 14905 <li>take out the logic that suppresses editing-keypad in vt100 14906 mode (those keys are too valuable to give up for a fine point 14907 of emulation).</li> 14908 14909 <li>corrected a couple of places in terminfo where I missed 14910 using the vt220-style editing-keypad codes for Find/Select 14911 (mapped to Home/End).</li> 14912 14913 <li>checked termcap file against terminfo, fix several places 14914 where it was inconsistent.</li> 14915 </ul> 14916 14917 <h1><a name="xterm_79" id="xterm_79">Patch #79 - 1998/6/28 - 14918 XFree86 3.9Ai</a></h1> 14919 14920 <p>This patch fixes several small bugs:</p> 14921 14922 <ul> 14923 <li>use X_EXTRA_LIBS in standalone Makefile.in (patch by Tomas 14924 Vanhala).</li> 14925 14926 <li>add new resource 'oldXtermFKeys' which provides backward 14927 compatibility for F1-F4 control sequences with TOG's 14928 xterm.</li> 14929 14930 <li>determine the server's default foreground/background Pixel 14931 values, needed if the -flipPixels X server option is used 14932 (reported by David Dawes).</li> 14933 14934 <li>correct logic for F1-F4 function keys so that they generate 14935 VT100 compatible escape sequences in VT220 mode, since that is 14936 what the numeric keypad is supposed to do (reported by Ron 14937 Johnson, Jr. <ronjohn@communique.net>).</li> 14938 14939 <li>modify logic for editing keypad to work more like VT220: 14940 don't pass those codes in VT100-mode unless oldXtermFKeys mode 14941 is set.</li> 14942 14943 <li>correct an interaction with the editing-keypad logic that 14944 prevented backarrow key from sending a 127 for the delete key 14945 (the 'remove' escape sequence was being sent instead).</li> 14946 14947 <li>use return-value from getuid() rather than the parameter, 14948 to work on systems which do not update the latter (patch by 14949 Kevin Buhr <buhr@mozart.stat.wisc.edu>)</li> 14950 14951 <li>correct scrollbar border color when toggling to/from secure 14952 keyboard mode (patch by Jeff Uphoff 14953 <juphoff@tarsier.cv.nrao.edu>)</li> 14954 14955 <li>modifications to terminfo file: 14956 <ul> 14957 <li>rename description to xterm-xfree86, adding an entry 14958 'xterm' which is derived from xterm-xfree86 to simplify 14959 customization.</li> 14960 14961 <li>change string for kdch1 from \177 to \E[3~, to address 14962 complaints from Debian developers. (This applies to the key 14963 labeled "Delete", and does not affect the backarrow 14964 key).</li> 14965 14966 <li>add user-strings u6, u7, u8, u9 to entries to make them 14967 work with Daniel Weaver's "tack" program.</li> 14968 14969 <li>modify xterm-24, xterm-bold, xterm-boldso entries to 14970 disentangle them from explicit dependency upon 14971 xterm-xfree86.</li> 14972 14973 <li>add generic 'xterm-color' entry.</li> 14974 14975 <li>minor corrections to xterm-xfree86, xterm-8bit, 14976 xterm-r5 and xterm-r6 entries.</li> 14977 </ul> 14978 </li> 14979 </ul> 14980 14981 <h1><a name="xterm_78" id="xterm_78">Patch #78 - 1998/6/3 - 14982 XFree86 3.9Ah and 3.3.2</a></h1> 14983 14984 <p>Again, most of the bulk of this patch is for ANSI conversion. 14985 I used the IRIX compiler's -wlint option to find the remaining 14986 functions that use K&R syntax (since gcc does not do this 14987 properly). Also, I changed the logic in the print code slightly 14988 to close unwanted files before opening a pipe to the printer. 14989 This may help in some configurations where the line printer hangs 14990 until xterm closes the pipe.</p> 14991 14992 <h1><a name="xterm_77" id="xterm_77">Patch #77 - 1998/5/26 - 14993 XFree86 3.9Ah and 3.3.2</a></h1> 14994 14995 <p>Most of the bulk of this patch is to convert the extended C 14996 (K&R functions with prototypes) to ANSI. I verified that on 14997 Linux by comparing object files, to ensure that I did not, for 14998 example, interchange parameters in the function declarations.</p> 14999 15000 <p>The rest of the patch fixes several minor bugs, and adds a few 15001 features:</p> 15002 15003 <ul> 15004 <li>back-out my use of ncurses "captoinfo -f" option 15005 (if/then/else/endif) formatting, since ncurses did not 15006 correctly filter embedded newlines in terminfo capability 15007 strings until _after_ ncurses 4.1, thus corrupting 15008 setf/setb/sgr strings (reported by Darren Hiebert and 15009 others).</li> 15010 15011 <li>document SGR 8, 28 (invisible/visible), add corresponding 15012 capabilities to terminfo description. 15013 <p>I would also add the 'prot protected capability, but the 15014 control sequences for that would not be recognized or 15015 properly ignored by the older xterm programs.</p> 15016 </li> 15017 15018 <li>modify ChangeGroup to not suppress a null-resource, but 15019 treat it as an empty string (recommended by Stefan 15020 Dalibor).</li> 15021 15022 <li>add printerAutoClose resource to control whether printer is 15023 closed when going offline. More than one person reports 15024 problems (on Solaris 2.6 and Digital Unix 4.0) getting the 15025 printer to proceed unless xterm exits; I think that it is a 15026 problem flushing the pipe. Closing it ought to flush it.</li> 15027 15028 <li>adapt TOG fix-3 to in HandleKeymapChange and VTInitI18N 15029 (but adapt XtStackAlloc/XtStackFree for clarity, as well as 15030 fixing memory leak).</li> 15031 15032 <li>change calls on FillCurBackground to ClearCurBackground, in 15033 effect using XClearArea rather than XFillRectangle when 15034 clearing as a side-effect of scrolling and insertion (patch by 15035 Alexander V Lukyanov)</li> 15036 15037 <li>correct some places where insert/delete did not _move_ the 15038 color attributes, using memmove (patch by Alexander V Lukyanov 15039 <lav@long.yar.ru>)</li> 15040 15041 <li>add ifdef's for __CYGWIN32__, for port to cygnus version 15042 B19.1 (patch by Andrew Sumner 15043 <andrew_sumner@hotmail.com>).</li> 15044 15045 <li>remove #define for hpux that turned on USE_SYSV_ENVVARS, 15046 since this causes some applications (such as 'less') to get 15047 incorrect $LINES and $COLUMNS values (reported by Clint 15048 Olsen).</li> 15049 15050 <li>modify behavior for HP-UX, to set the "reserved" process 15051 group controls to _POSIX_VDISABLE so the TIOCSLTC ioctl does 15052 not produce an error (patch by Ben Yoshino 15053 <ben@wiliki.eng.hawaii.edu>).</li> 15054 15055 <li>correct length of underlining, reducing it by one pixel to 15056 avoid leaving a dot when the application does not clear the 15057 whole screen I noticed this only recently myself (and other 15058 people as well); it depends on the font chosen. A 6x10 font 15059 shows it, but the other fonts from XTerm.ad do not. I also see 15060 a similar problem with the emulation of bold fonts. (patch by 15061 Sergei Laskavy <Laskavy@cs.msu.su>).</li> 15062 15063 <li>add include for Xos.h to xterm.h, to ensure proper 15064 definitions (reported by Holger Veit).</li> 15065 15066 <li>update config.guess to recognize Unixware 2.1 and 7 (patch 15067 by Mike Hopkirk <hops@sco.com>).</li> 15068 </ul> 15069 15070 <h1><a name="xterm_76" id="xterm_76">Patch #76 - 1998/5/8 - 15071 XFree86 3.9Ah and 3.3.2</a></h1> 15072 15073 <p>A fix for the print-window function, and some minor 15074 cleanup:</p> 15075 15076 <ul> 15077 <li>modify logic that closes pipe in the print-window function 15078 to not use pclose, which does not work on all systems, since I 15079 did not open the pipe with popen (reported by Stefan 15080 Dalibor).</li> 15081 15082 <li>correct name of $(EXTRA_LOAD_FLAGS) imake variable 15083 (reported by Stefan Dalibor).</li> 15084 15085 <li>guard logic in ChangeGroup() function against null pointer 15086 (reported by Stefan Dalibor).</li> 15087 15088 <li>ensure that menu entry for toggling sunKeyboard resource is 15089 initialized (reported by Branden Robinson 15090 <branden@purdue.edu>).</li> 15091 15092 <li>gcc unused-variable warnings (reported by Bernd Ernesti 15093 <bernd@arresum.inka.de>)</li> 15094 15095 <li>rename global variable 'buffer' to 'VTbuffer'</li> 15096 </ul> 15097 15098 <h1><a name="xterm_75" id="xterm_75">Patch #75 - 1998/5/7 - 15099 XFree86 3.9Ah and 3.3.2</a></h1> 15100 15101 <p>This incorporates fixes from several people, as well as some 15102 improvements that I made based on feedback from users:</p> 15103 15104 <ul> 15105 <li>add option to standalone configure script, 15106 "--with-own-terminfo-dir", which causes xterm to pass a 15107 predefined value of $TERMINFO to the application. Also use this 15108 value in install rule "make install-ti", for the standalone 15109 configure script. (patch & feedback from Tor Lillqvist 15110 <tml@hemuli.tte.vtt.fi>)</li> 15111 15112 <li>change ifdef's for "hpux" to "__hpux" (patch by Tor 15113 Lillqvist). The imake configuration uses the former, but the 15114 latter is predefined by HP's compilers.</li> 15115 15116 <li>define USE_SYSV_ENVVARS for HP-UX, curses does not use 15117 $TERMCAP (patch by Tor Lillqvist).</li> 15118 15119 <li>on HP-UX, use the /dev/ptym/clone device to allocate PTY's. 15120 Works both on HP-UX 9 and 10. (patch by Tor Lillqvist).</li> 15121 15122 <li>modify configure script to obtain the $(EXTRA_LOADFLAGS) 15123 value from imake, needed for compiling under DEC OSF/1 15124 (reported by Stefan Dalibor)</li> 15125 15126 <li>modify print-window action so that the printer is closed 15127 after printing a window, unless the printer was already opened 15128 (i.e., by an application running in the window). This makes the 15129 printing complete without having to exit xterm, since not all 15130 systems treat fflush through a pipe very well (reported by 15131 Stefan Dalibor)</li> 15132 15133 <li>modify printing code so that the ^M's are not printed if 15134 the printAttribute resource is set to zero (request by Stefan 15135 Dalibor).</li> 15136 15137 <li>correct typo in xterm.man, for the default value of 15138 printAttribute (reported by Stefan Dalibor).</li> 15139 15140 <li>correct printing code so that the alternate character set 15141 is printed, like other attributes, with escape sequences.</li> 15142 15143 <li>correct termcap description, removing spurious 'm' 15144 character from the 'op' capability (reported by Greg Woods 15145 <woods@weird.com>).</li> 15146 15147 <li>correct trace code so that the initial timestamp is 15148 set.</li> 15149 15150 <li>correct/modify utmp data for the Linux glibc 2 15151 configuration, so that the ut_line member is set before using 15152 it to update wtmp (patch by Bill Nottingham 15153 <wen1@cec.wustl.edu>).</li> 15154 </ul> 15155 15156 <h1><a name="xterm_74" id="xterm_74">Patch #74 - 1998/4/27 - 15157 XFree86 3.9Ag and 3.3.2</a></h1> 15158 15159 <p>This corrects a couple of recent bugs and adds a new 15160 resource:</p> 15161 15162 <ul> 15163 <li>modify definition of TRACE_CHILD so that it does not 15164 conflict with ifdef's for USE_USG_PTYS in main.c (reported by 15165 Vikas Agnihotri <VikasA@att.com> and Stefan 15166 Dalibor).</li> 15167 15168 <li>correct ownership of file (actually pipe) written by the 15169 print controls. When undoing the setuid changes in patch #69, I 15170 overlooked this. Now xterm forks a process which resets setuid 15171 and routes the printer data as the real user.</li> 15172 15173 <li>add a new resource, "printAttributes", which controls 15174 whether color attributes (or any attributes) are sent to the 15175 printer.</li> 15176 </ul> 15177 15178 <h1><a name="xterm_73" id="xterm_73">Patch #73 - 1998/4/25 - 15179 XFree86 3.9Ag and 3.3.2</a></h1> 15180 15181 <p>This patch does the following:</p> 15182 15183 <ul> 15184 <li>implements a print-window facility for xterm. Though useful 15185 in itself, I added it as part of some debugging which I am 15186 doing. (Occasionally during an exposure event xterm fails to 15187 restore the proper colors for highlighted text, and printing 15188 the screen will show the internal states nicely). 15189 <p>The print facility now also displays the color 15190 information. (I will probably make this a resource).</p> 15191 </li> 15192 15193 <li>modified the xterm-16color terminfo description to use the 15194 setaf and setab strings, which is a little more efficient 15195 (requested by Stephen Marley).</li> 15196 15197 <li>reduced some clutter of the ifdef/includes (e.g., stdlib.h, 15198 unistd.h, errno) making the configure script test for these. 15199 <p>I removed the symbols Size_t and Time_t, since they no 15200 longer serve a useful purpose.</p> 15201 </li> 15202 15203 <li>added some debugging traces to show the initial screen 15204 size, and the success/failure of the ioctl calls pass handle 15205 window resizing events to the application (for Clint Olsen). 15206 <p>I also modified the trace code to produce two files since 15207 some of the information is produced by the child process. So 15208 now they are Trace-parent.out and Trace-child.out</p> 15209 </li> 15210 15211 <li>updated configure test for ANSI compiler options to handle 15212 a special case for HP-UX 10.x (reported by Clint Olsen).</li> 15213 </ul> 15214 15215 <h1><a name="xterm_72" id="xterm_72">Patch #72 - 1998/4/17 - 15216 XFree86 3.9Ag and 3.3.2</a></h1> 15217 15218 <p>This is a patch from Chris Siebenmann 15219 <cks@hawkwind.utcs.toronto.edu>, which I have cleaned up a 15220 little, and integrated into the configure script.</p> 15221 15222 <p>From his description:</p> 15223 15224 <blockquote> 15225 <p>This set of patches is the latest incarnation of patches 15226 originally written by Ian! D Allen, then of the University of 15227 Waterloo and now of who knows where; I have been carrying them 15228 forward from xterm to xterm ever since about X11R4. What they 15229 do is add an option so that when an iconified xterm receives 15230 output it prepends '*** ' to its icon title and (optionally) 15231 beeps the bell; deiconifying the xterm removes the '*** '. Over 15232 the years I've found this to be incredibly convenient for 15233 monitoring all sorts of low-activity things.</p> 15234 </blockquote> 15235 15236 <h1><a name="xterm_71" id="xterm_71">Patch #71 - 1998/4/12 - 15237 XFree86 3.9Ag and 3.3.2</a></h1> 15238 15239 <p>This patch is a slightly modified version of one by Richard 15240 Braakman, which prevents buffer overflow in the input-method and 15241 preedit-type parsing in xterm. I changed a couple of details to 15242 make the code more maintainable, and looked for similar things - 15243 copying into a fixed-size buffer (found none, though I did spot 15244 an unused variable).</p> 15245 15246 <h1><a name="xterm_70" id="xterm_70">Patch #70 - 1998/3/29 - 15247 XFree86 3.9Af and 3.3.2</a></h1> 15248 15249 <p>This patch corrects some minor bugs in xterm, and fills in 15250 some more details in the VT220 emulation:</p> 15251 15252 <ul> 15253 <li>modify Imakefile to use SpecialCObjectRule for menu and 15254 data modules, making xterm build properly if logging is enabled 15255 (patch by Scott Sewall <scott@iprg.nokia.com>).</li> 15256 15257 <li>restore "ich" capability to terminfo entries, since Michael 15258 Schroeder points out that "ich1" is the one which is the 15259 problem in Solaris vi.</li> 15260 15261 <li>correct color of cursor, which would disappear on 15262 inverse-video since the initialization did not compare the 15263 cursor color against both foreground and background (reported 15264 by Olivier Calle).</li> 15265 15266 <li>correct abbreviation-test for -version and -help options, 15267 making command-line option -vb work (reported by Stefan 15268 Dalibor).</li> 15269 15270 <li>correct a dependency between ifdef's for OPT_I18N_SUPPORT 15271 and OPT_INPUT_METHOD (reported by Stefan Dalibor).</li> 15272 15273 <li>split-out character-set translations as new module 15274 charsets.c, to implement VT220 national replacement character 15275 sets (a mode where some of the characters are displayed as 15276 specific European glyphs). This relies on xterm using an ISO 15277 8859-1 font (approach suggested by Kenneth R. Robinette 15278 <zkrr01@mailbox.neosoft.com>).</li> 15279 15280 <li>correct a missing increment, which made SS2 and SS3 15281 controls repeat the shifted character.</li> 15282 15283 <li>add xterm-nrc to terminfo to illustrate the VT220 national 15284 replacement character sets.</li> 15285 15286 <li>reformat terminfo using new ncurses tic option "-f", which 15287 makes if/then/else/endif expressions easier to read.</li> 15288 </ul> 15289 15290 <h1><a name="xterm_69" id="xterm_69">Patch #69 - 1998/3/16 - 15291 XFree86 3.9Ad and 3.3.2</a></h1> 15292 15293 <p>This corrects the problem in xterm with utmp, reported by 15294 Olivier Calle <olivier@tc.fluke.com> as well as some other 15295 people after the XFree86 3.3.2 release.</p> 15296 15297 <p>The error was introduced by my <a href="#xterm_53">patch 15298 #53</a> in XFree86 3.9r (October 1997).</p> 15299 15300 <p>The correction removes the reset of setuid/setgid before the 15301 main event loop, and solves the problem which I had worked around 15302 in a different manner: for some reason, the particular waitpid() 15303 call in creat_as() hangs, does not return when the child process 15304 exits. I changed the ifdef's to force the Linux configuration to 15305 use wait() instead. This call appears to work properly on other 15306 platforms such as SunOS and Solaris.</p> 15307 15308 <p>I also added tests in the standalone configure script to check 15309 for the existence of waitpid().</p> 15310 15311 <h1><a name="xterm_68" id="xterm_68">Patch #68 - 1998/3/4 - 15312 XFree86 3.9Ad and 3.3.1z</a></h1> 15313 15314 <p>This corrects another problem with the logic for 15315 highlightColor resource. As reported by David Dawes:</p> 15316 15317 <blockquote> 15318 <p>I've just noticed a problem with with the "inverse" control 15319 sequence (ESC[7m) with the 3.3.2 xterm. What it does is sets 15320 the background black, and the text the usual foreground colour 15321 rather than simply swapping the foreground/background.</p> 15322 </blockquote> 15323 15324 <p>This appears to be because when I added logic to check that 15325 the highlightColor was distinct from foreground and background 15326 colors, I did not add a further check to see that it was not 15327 black (I would make an explicit check for the resource not being 15328 set, but see nothing definite in the headers that would let me 15329 reference an explicitly-undefined Pixel value, though there are 15330 some implications in xpm.h). But this should work.</p> 15331 15332 <h1><a name="xterm_67" id="xterm_67">Patch #67 - 1998/2/23 - 15333 XFree86 3.9Ad and 3.3.1e</a></h1> 15334 15335 <p>This patch does the following:</p> 15336 15337 <ul> 15338 <li>improve test for highlightColor so that xterm does not 15339 attempt to use that unless it is different from the foreground 15340 and background colors (reported by Stefan Dalibor 15341 <Stefan.Dalibor@informatik.uni-erlangen.de>. 15342 <p>I could not reproduce this until I noticed that the -rev 15343 option exposed it nicely.</p> 15344 </li> 15345 15346 <li>remove ich and ich1 from xterm and xterm-8bit terminfo 15347 descriptions. SVr4 terminfo documents that you must not combine 15348 these with smir/rmir, but ncurses allows it, opening a hole. 15349 Solaris 2.6 vi does not work properly if it is using a terminfo 15350 description when these are combined, since it was written to 15351 accommodate old terminals that required it (reported by Stephen 15352 Marley).</li> 15353 15354 <li>restore 1-pixel overlap of scrollbar border with left edge 15355 of window (reported by Jim Burmeister 15356 <jimb@metrolink.com>).</li> 15357 15358 <li>add a configure option, --enable-logfile-exec, which allows 15359 the user to specify a pipe for logfile. This defines 15360 ALLOWLOGFILEEXEC.</li> 15361 15362 <li>makes the ALLOWLOGFILEEXEC code compile & run, if 15363 configured.</li> 15364 15365 <li>minor documentation nits.</li> 15366 </ul> 15367 15368 <h1><a name="xterm_66" id="xterm_66">Patch #66 - 1998/2/16 - 15369 XFree86 3.9Ad and 3.3.1d</a></h1> 15370 15371 <p>This fixes the problem reported with failure to build the 15372 <em>resize</em> program (BSDI, OSF/1) due to not having 15373 <termcap.h>, by changing the ifdef to one that would be set 15374 only if the file exists (not currently specified, except by the 15375 standalone configure script). We do not really need to include 15376 <termcap.h> to build, but only for a clean compile, since 15377 it may declare the tgetent() prototype. I also updated the 15378 man-page for <em>resize</em>, since I had recently noticed that 15379 it can be used to resize <em>xterm</em> using the "Sun" control 15380 sequences option.</p> 15381 15382 <h1><a name="xterm_65" id="xterm_65">Patch #65 - 1998/2/14 - 15383 XFree86 3.9Ad and 3.3.1c</a></h1> 15384 15385 <p>This is a small patch to xterm's 8-bit terminal description. I 15386 noticed while testing ncurses that I had specified the wrong 15387 (VT100-style) codes for the F1-F4. Xterm only uses VT220-style 15388 function keys in 8-bit mode.</p> 15389 15390 <h1><a name="xterm_64" id="xterm_64">Patch #64 - 1998/2/8 - 15391 XFree86 3.9Ad</a></h1> 15392 15393 <p>This fixes the following problems with xterm:</p> 15394 15395 <ul> 15396 <li>save/restore the ANSI foreground and background colors with 15397 the other visible attributes in the save-cursor and 15398 restore-cursor operations. This works around a problem with 15399 vim, which apparently assumed that switching between the normal 15400 and alternate screens resets the colors (reported by Jim Battle 15401 <jb@chromatic.com>). 15402 <p>It would be nice to implement save/restore cursor as a 15403 stack (and solve this type of problem completely), but that 15404 would lead to incompatibility with applications which assume 15405 they are running with a VT100 or VT220.</p> 15406 </li> 15407 15408 <li>corrects behavior of a restore-cursor operation which does 15409 not follow a save-cursor (it is supposed to set the character 15410 sets to a known initial state).</li> 15411 15412 <li>extends the sunKeyboard resource (and menu toggle) to 15413 modify the home, end and delete keys on a Sun or PC editing 15414 keypad, making them generate codes compatible with DEC VT220's 15415 Find, Select and Remove keys.</li> 15416 15417 <li>corrects a length in checking command-line options, which 15418 caused the "-help" message to not work when X was not 15419 running.</li> 15420 15421 <li>add some detail to the man-page (requested by Jason Bacon 15422 <acadix@execpc.com>)</li> 15423 15424 <li>modify the standalone configure script to ignore the broken 15425 nsl and socket libraries on IRIX 6.2 (the ones on 5.2 also are 15426 broken, so this change just widens the check for the system 15427 version number).</li> 15428 </ul> 15429 15430 <h1><a name="xterm_63" id="xterm_63">Patch #63 - 1998/2/5 - 15431 XFree86 3.9Ad</a></h1> 15432 15433 <p>This is another patch from Bjorn Helgaas 15434 <helgaas@rsn.hp.com>, which I've reviewed (and learned 15435 some). Following are his notes:</p> 15436 15437 <p>I poked around some more and finally got xterm-62 to build and 15438 run cleanly on HP-UX 10.20. Here are the patches. They look sort 15439 of ugly, so here's a little explanation:</p> 15440 15441 <ul> 15442 <li>aclocal.m4: Removed side effects from the AC_CACHE_VAL 15443 commands in CF_FUNC_TGETENT. Previously, LIBS was set inside 15444 AC_CACHE_VAL, which worked fine the first time configure was 15445 run, but failed if there were cached values.</li> 15446 15447 <li>aclocal.m4: Added temporary setting of LIBS before 15448 AC_TRY_LINK in CF_FUNC_TGETENT. Previously, the last value set 15449 by the AC_TRY_RUN loop was used, so only -lcurses was 15450 checked.</li> 15451 15452 <li>configure.in: Added temporary setting of CPPFLAGS before 15453 AC_CHECK_HEADERS for X11 files. Previously 15454 <X11/DECkeysym.h> and <X11/Xpoll.h> were found only 15455 if they were in the compiler's default include directories, 15456 even if `--x-includes=DIR' had been used or AC_PATH_XTRA had 15457 found them elsewhere.</li> 15458 </ul> 15459 15460 <p>The problem on HP-UX was that we were linking with -lcurses 15461 rather than -ltermcap due to the second bullet above, and 15462 apparently something in HP-UX curses is broken. This seems very 15463 strange, because the only thing used is tgetent, which should 15464 affect any tty/pty configuration, but I lost interest in tracking 15465 down the exact problem.</p> 15466 15467 <h1><a name="xterm_62" id="xterm_62">Patch #62 - 1998/1/23 - 15468 XFree86 3.9Ac</a></h1> 15469 15470 <p>This is a patch mostly by Bjorn Helgaas 15471 <helgaas@dhc.net> (I added the os2main.c change, and a 15472 little of the documentation). From Bjorn's description:</p> 15473 15474 <ul> 15475 <li>If you use the "-hc <color>" option or set the 15476 "highlightColor" resource, text is highlighted by changing only 15477 the background color, rather than using reverse video. I find 15478 this easier to read, especially when selecting multi-colored 15479 text, and it is similar to the way Netscape shows 15480 selections.</li> 15481 15482 <li>Most of the code changes are under "#if 15483 OPT_HIGHLIGHT_COLOR". The principal exception is in screen.c, 15484 where I added a couple calls to resetXtermGC(). This seems like 15485 it could be a bug even without the color highlighting changes 15486 (though I don't pretend to understand all the logic).</li> 15487 </ul> 15488 15489 <h1><a name="xterm_61" id="xterm_61">Patch #61 - 1998/1/17 - 15490 XFree86 3.9Ac</a></h1> 15491 15492 <p>This patch modifies the reset behavior of xterm slightly:</p> 15493 15494 <ul> 15495 <li>change the terminfo entry so that rs1 (one of the strings 15496 used by the 'reset' program) does a hard reset rather than 15497 switching character sets. This is more in accord with other 15498 terminal descriptions.</li> 15499 15500 <li>modifies the treatment of hard reset by the xterm program 15501 to reset the saved lines.</li> 15502 15503 <li>corrects hard reset by also resetting user-defined keys, 15504 i.e., DECUDK.</li> 15505 </ul> 15506 15507 <h1><a name="xterm_60" id="xterm_60">Patch #60 - 1998/1/10 - 15508 XFree86 3.9Ab</a></h1> 15509 15510 <p>This fixes some minor bugs and adds new functionality:</p> 15511 15512 <ul> 15513 <li>add support for blinking text. 15514 <ul> 15515 <li>This does not actually cause the text to flash, but 15516 text with the blink attribute can be displayed in color, 15517 using new resources colorBL and colorBLMode.</li> 15518 15519 <li>If colors are not used, the blinking text will be 15520 displayed as before (just like bold). The main purpose of 15521 this is to make applications work properly when they assume 15522 the emulator supports blinking text.</li> 15523 15524 <li>I did this by moving the per-cell LINEWRAPPED flag to a 15525 per-line flag, to make room for the new BLINK flag. There 15526 were no per-line flags, so this changes a lot of 15527 logic.</li> 15528 </ul> 15529 </li> 15530 15531 <li>corrected missing save-cursor logic in the handling of SGR 15532 1048 (the new control sequence I added in patch #54, 15533 1997/10/17). Reported by Darren Hiebert.</li> 15534 15535 <li>flush the output of the transparent printing after each 15536 line Reported by Tomas Vanhala 15537 <vanhala@ling.helsinki.fi>.</li> 15538 15539 <li>correct the modes that are affected by save/restore cursor 15540 by adding WRAPAROUND and PROTECTED.</li> 15541 15542 <li>corrected placement of one of the XSync calls that I added 15543 in patch #51, 1997/9/15, which had the side-effect of writing 15544 on the window border when the xterm was resizing from 132 to 80 15545 columns.</li> 15546 15547 <li>work around an incompatibility of the XKB definition used 15548 in xterm versus that symbol from IRIX 6.2's imake definitions 15549 (by adjusting the standalone configure script).</li> 15550 </ul> 15551 15552 <h1><a name="xterm_59" id="xterm_59">Patch #59 - 1998/1/5 - 15553 XFree86 3.9Ab</a></h1> 15554 15555 <p>My last patch has an off-by-one error in the comparison for 15556 argc. Douglas Kosovic <douglask@dstc.edu.au> showed me 15557 where (he got a core dump). Also, I think this explains Clint 15558 Olsen's problem, but the symptoms were more subtle (EINVAL for a 15559 system call if the -display option is omitted).</p> 15560 15561 <h1><a name="xterm_58" id="xterm_58">Patch #58 - 1998/1/3 - 15562 XFree86 3.9Ab</a></h1> 15563 15564 <p>This patch does the following:</p> 15565 15566 <ul> 15567 <li>implement logic to permit xterm to work with proportional 15568 fonts. 15569 <ul> 15570 <li>Thomas Wolff <Thomas.Wolff@sietec.de> requested 15571 this (but it isn't exactly what he's asking for - that's a 15572 more involved task).</li> 15573 15574 <li>I chose to do this by rendering the characters on a 15575 fixed pitch, because it would not be useful for existing 15576 applications to display varying numbers of characters on 15577 each line.</li> 15578 15579 <li>Except that this forces the display to be wider, it 15580 works reasonably well. A couple of special cases (reverse + 15581 colorBD, for example) do not display with proper colors, 15582 since the inter-character gaps are painted with the 15583 background.</li> 15584 </ul> 15585 </li> 15586 15587 <li>added a version number to the program (several people have 15588 requested this).</li> 15589 15590 <li>make the -version and -help options interpreted before the 15591 program attempts to open the display.</li> 15592 15593 <li>minor reorganization of the man-page (ordered the options, 15594 resources and translations alphabetically - and eliminated some 15595 duplication).</li> 15596 15597 <li>corrected a misspelled filename in Makefile.in, and added a 15598 lint rule.</li> 15599 15600 <li>updated the configure script to correct behavior when it 15601 cannot find imake, as well as to fix the IRIX+gcc build 15602 (conflict with /usr/include).</li> 15603 15604 <li>regenerated the configure script with a newer patch to 15605 autoconf that fixes a problem with environment space vs the 15606 configure --help message.</li> 15607 </ul> 15608 15609 <h1><a name="xterm_57" id="xterm_57">Patch #57 - 1997/12/26 - 15610 XFree86 3.9Aa</a></h1> 15611 15612 <p>This patch is mostly concerned with the standalone configure 15613 script; a few minor corrections are added:</p> 15614 15615 <ul> 15616 <li>add configure option --disable-tek4014, to allow xterm to 15617 be built without the tek4014 emulation.</li> 15618 15619 <li>add configure option --with-terminal-type, to allow xterm 15620 to be compiled with default $TERM value other than "xterm" 15621 (e.g., "xterm-16color") -- requested by Stephen Marley 15622 <stephen@memex.com>.</li> 15623 15624 <li>fix a typo in the configure --help message -- reported by 15625 Darren Hiebert <darren@hmi.com>.</li> 15626 15627 <li>review diffs between main.c and os2main.c, to make them 15628 more alike. (applies some minor bug-fixes to OS/2's 15629 version).</li> 15630 15631 <li>add missing quotes in memmove/bcopy configure test</li> 15632 </ul> 15633 15634 <h1><a name="xterm_56" id="xterm_56">Patch #56 - 1997/11/28 - 15635 XFree86 3.9x</a></h1> 15636 15637 <p>This patch is based on analysis by Arfst Ludwig 15638 <arfst@luxor.IN-Berlin.DE>, who reported:</p> 15639 15640 <blockquote> 15641 <p>Setting the following resources xterm (all current versions) 15642 receives a segmentation fault on <Btn2Up> after 15643 scrolling:</p> 15644 15645 <pre> 15646 *XTerm*VT100*translations: #override \ 15647 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\ 15648 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1)\n\ 15649 ~Shift<BtnUp>: select-end(PRIMARY, CUT_BUFFER0)\n\ 15650 Shift<BtnUp>: select-end(CLIPBOARD, CUT_BUFFER1) 15651</pre> 15652 <p>(The above resources intention is to be able to paste the 15653 latest selection even if the xterm was cleared.)</p> 15654 15655 <p>And here is how it works (and a fix!): The widget given to 15656 the action handler as first argument is not guaranteed to be a 15657 XtermWidget (it can be the ScrollbarWidget). Instead of 15658 accessing the widget's member directly XtDisplay gives the 15659 required pointer in a safe way.</p> 15660 </blockquote> 15661 15662 <p>I noticed that this was not the only instance (by reading the 15663 code, and testing with his example), and extended the solution to 15664 check the widget-class to ensure that it is indeed xterm's widget 15665 class before attempting to use it in the context of 15666 translations.</p> 15667 15668 <h1><a name="xterm_55" id="xterm_55">Patch #55 - 1997/11/25 - 15669 XFree86 3.9x</a></h1> 15670 15671 <p>This fixes the segmentation violation noted by Rogier Wolff 15672 about a month ago. He'd set xterm to 400 (rows) by 150 columns, 15673 which broke because there were limited buffers (200 rows) used 15674 for juggling data when adding or deleting lines and for switching 15675 between alternate and normal screens. I replaced this by an 15676 allocated buffer.</p> 15677 15678 <p>The bug is simple to test if you set titeInhibit false.</p> 15679 15680 <h1><a name="xterm_54" id="xterm_54">Patch #54 - 1997/10/17 - 15681 XFree86 3.9s</a></h1> 15682 15683 <p>This patch does the following:</p> 15684 15685 <ul> 15686 <li>correct a minor placement problem with the right 15687 scrollbar.</li> 15688 15689 <li>implement a new set of control sequences for switching 15690 between the normal and alternate VT100 screens. These work 15691 around the older sequences limitation that required 15692 modification of the runtime $TERMCAP to cooperate with the 15693 titeInhibit resource (that can't work with terminfo). I do this 15694 by moving all of the functionality of the rmcur terminfo 15695 capability into the control sequences.</li> 15696 15697 <li>implement the alternate-screen menu entry</li> 15698 </ul> 15699 15700 <h1><a name="xterm_53" id="xterm_53">Patch #53 - 1997/10/12 - 15701 XFree86 3.9r</a></h1> 15702 15703 <p>This patch adds a fix and implements a new feature (as well as 15704 some minor typos):</p> 15705 15706 <ul> 15707 <li>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a 15708 problem with the wait call with the logging option. It hung 15709 when the logfile was opened as a command-line option. I fixed 15710 this by moving the StartLogging() call down past the place 15711 where I'd reset the setuid mode. So the logfile is opened as 15712 the real user, without having to fork.</li> 15713 15714 <li>improve Rohleder's changes by renaming the command-line 15715 options and reducing the number of ifdef's.</li> 15716 15717 <li>implement right-scrollbars for xterm (patch by Michael 15718 Rohleder <michael.rohleder@stadt-frankfurt.de>).</li> 15719 </ul> 15720 15721 <h1><a name="xterm_52" id="xterm_52">Patch #52 - 1997/9/29 - 15722 XFree86 3.9q</a></h1> 15723 15724 <p>This patch addresses bugs and requests reported by</p> 15725 15726 <ul> 15727 <li>Bob Maynard <rmaynard@montana.com>,</li> 15728 15729 <li>Clint Olsen <olsenc@ichips.intel.com>,</li> 15730 15731 <li>JCHANDRA@Inf.COM (JCHANDRA),</li> 15732 15733 <li>Michael Schroeder 15734 <Michael.Schroeder@informatik.uni-erlangen.de>,</li> 15735 15736 <li>Pablo Ariel Kohan <pablo@memco.co.il></li> 15737 </ul> 15738 15739 <p>Some of the changes are interrelated (it was an unusually busy 15740 week).</p> 15741 15742 <ul> 15743 <li>change the default resource value for colorMode to true, 15744 matching the Xterm.ad file.</li> 15745 15746 <li>correct behavior of 'ech' control, making the default and 0 15747 parameters erase one character rather than to the end of line 15748 (reported by Michael Schroeder).</li> 15749 15750 <li>add resource boldColors, command-line options +pc and -pc 15751 and configure-script option to specify behavior of xterm's 15752 mapping bold colors 0 through 7 to colors 8 through 15. 15753 (request by Pablo Ariel Kohan).</li> 15754 15755 <li>add resource colorAttrMode to specify whether colorULMode 15756 and colorBDMode can override the ANSI colors (report by Clint 15757 Olsen).</li> 15758 15759 <li>correct a conflict between colorULMode/colorBDMode versus 15760 ANSI colors, where exposure events would occasionally pick up 15761 the former (e.g., colorBD) rather than ANSI colors. Testing the 15762 colorAttrMode made this apparent, though it has been in the 15763 code since 3.2A (<a href="#xterm_35">patch #35</a> in Jan 15764 1997).</li> 15765 15766 <li>correct two problems with the optional logging support. On 15767 Linux at least, the waitpid call in creat_as hangs when the 15768 logging is toggled from the popup menu. Also, the mktemp 15769 template has the wrong number of X's (since X11R5!). Fixed the 15770 waitpid problem by exploiting the fact that the setuid behavior 15771 is reset before the popup menus are available. (reported by 15772 Jayachandran C.).</li> 15773 15774 <li>add configure script options for building with the Xaw3d 15775 and neXtaw libraries.</li> 15776 15777 <li>correct CF_IMAKE_CFLAGS standalone configure script macro, 15778 so that it will pick up $(ALLDEFINES) rather than 15779 $(STD_DEFINES). This is needed to make scrollbars work on 15780 Linux, since that uses narrow prototypes. (reported by Bob 15781 Maynard).</li> 15782 15783 <li>various minor updates to configure-script macros.</li> 15784 </ul> 15785 15786 <h1><a name="xterm_51" id="xterm_51">Patch #51 - 1997/9/15 - 15787 XFree86 3.9p</a></h1> 15788 15789 <p>Most of this patch is related to the standalone configure 15790 script, though there are fixes/enhancements as well:</p> 15791 15792 <ul> 15793 <li>add a new resource sunKeyboard, with associated 15794 command-line option and menu-toggle that allows using a normal 15795 Sun or PC keyboard to generated the complete DEC-style function 15796 keys and keypad.</li> 15797 15798 <li>correct a reversed foreground/background test in the 15799 control sequence that replies with the current SGR 15800 settings.</li> 15801 15802 <li>correct, by invoking XSync, a display problem that caused 15803 the program to not properly update newly exposed areas when a 15804 font change or 80/132 resize request was not completely 15805 accepted.</li> 15806 15807 <li>restructured autoconf macros (I made a library of all of 15808 the macros across the complicated configure scripts I'm working 15809 on).</li> 15810 15811 <li>use the autoconf config.guess and config.sub scripts to 15812 better identify the host-os.</li> 15813 15814 <li>improve the configure script that uses 'imake' as a 15815 fallback for definitions.</li> 15816 15817 <li>correct several instances of unsigned/signed mixed 15818 expressions.</li> 15819 </ul> 15820 15821 <p>I've tested the configure script on Linux, SunOS 4.1.3, 15822 Solaris 2.5.1, IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but 15823 the last run properly as well).</p> 15824 15825 <h1><a name="xterm_50" id="xterm_50">Patch #50 - 1997/8/22 - 15826 XFree86 3.9m</a></h1> 15827 15828 <p>This is a collection of small fixes, and a couple of minor 15829 enhancements:</p> 15830 15831 <ul> 15832 <li>plug a security hole in the implementation of Media Copy 15833 (print) by invoking setuid just before the main loop.</li> 15834 15835 <li>add an ifdef'd include for <sys/termio.h> for HP-UX, 15836 which allows the program to process SIGWINCH events (this is a 15837 bug in X11R6.3)</li> 15838 15839 <li>add state-table entries for VT52 emulation to enter/exit 15840 keypad application mode.</li> 15841 15842 <li>disable the popup-menu entry for 8-bit controls when the 15843 terminal-id is less than 200 (e.g., VT52 or VT100).</li> 15844 15845 <li>ensure that the popup-menu entry for 8-bit controls is 15846 updated when the application enables/disables this mode, 15847 including the response to a full-reset.</li> 15848 15849 <li>implement VT300 DECBKM feature: set interpretation of the 15850 backarrow key to either backspace or delete. The initial 15851 setting is via resource; it can also be modified in the main 15852 popup menu.</li> 15853 15854 <li>implement VTxxx KAM (ISO AM), which allows a keyboard to be 15855 locked (i.e., the terminal discards input).</li> 15856 15857 <li>implement VTxxx SRM, which is used to control local echoing 15858 of input on the terminal.</li> 15859 15860 <li>add terminfo and termcap entries for xterm-8bit, a 15861 variation of the xterm description that uses 8-bit control 15862 characters.</li> 15863 15864 <li>add fallback definitions for Imakefile to allow it to work 15865 on some X11R5 systems that have no SpecialCObjectRule or 15866 ProgramTargetName macros.</li> 15867 15868 <li>add .c.o and .c.i rules to standalone Makefile.in</li> 15869 15870 <li>correct order of -lXmu and -lXext in standalone configure 15871 script.</li> 15872 15873 <li>add configure script options to allow selective disabling 15874 of active-icon, input-method and i18n code (mainly for users 15875 with X11R5 or an incomplete X11R6 configuration).</li> 15876 15877 <li>change menu-indices from #define's to enum values, thereby 15878 making it work better with the ifdef's for logging and 15879 active-icon (the X11R6.3 active-icon code is incorrectly 15880 ifdef'd; this corrects an error introduced by incorporating 15881 that code).</li> 15882 15883 <li>correct minor compile errors in the configuration where 15884 active-icon is not used.</li> 15885 15886 <li>add configure option to suppress echoing of long compiler 15887 commands</li> 15888 15889 <li>correct spelling of decTerminalID in configure script help 15890 message</li> 15891 15892 <li>use gcc __attribute__((unused)) to quiet warnings about 15893 unused parameters when compiling with -W (to make it simpler to 15894 find the real problems).</li> 15895 </ul> 15896 15897 <h1><a name="xterm_49" id="xterm_49">Patch #49 - 1997/8/10 - 15898 XFree86 3.9k</a></h1> 15899 15900 <p>This patch implements the VT100/VT220 Media Copy (i.e., 15901 print-screen) control sequences.</p> 15902 15903 <h1><a name="xterm_48" id="xterm_48">Patch #48 - 1997/7/26 - 15904 XFree86 3.9j</a></h1> 15905 15906 <p>This patch does the following (all but the first affect only 15907 the standalone configure script):</p> 15908 15909 <ul> 15910 <li>minor correction to positioning of underlines for small 15911 (e.g., 5x8) font size. 15912 <p>The existing behavior allowed underlines to be drawn 15913 outside the character-cell, so they weren't cleared properly 15914 under some circumstances.</p> 15915 </li> 15916 15917 <li>adds more special-case tokens to the standalone configure 15918 script's imake-option filter (e.g., "&&", since a "make 15919 -n main.o" on my IRIX system uses that shell construct).</li> 15920 15921 <li>adds a '--enable-logging' option for the standalone 15922 configure script.</li> 15923 15924 <li>adds check and ifdef's for the standalone configure script 15925 to allow for building on platforms with X11R6, which lacks 15926 Xpoll.h (introduced in X11R6.1).</li> 15927 </ul> 15928 15929 <h1><a name="xterm_47" id="xterm_47">Patch #47 - 1997/7/13 - 15930 XFree86 3.9i</a></h1> 15931 15932 <p>This patch does the following</p> 15933 15934 <ul> 15935 <li>corrects an indexing error in the doublesize character 15936 logic (button.c) that caused core dump (this was reported by J. 15937 Wunsch).</li> 15938 15939 <li>corrects the logic of ShowCursor when it is painting in a 15940 doublesize cell (charproc.c).</li> 15941 15942 <li>corrects, according to vttest, the behavior when switching 15943 to doublesize characters and back again (doublechr.c).</li> 15944 15945 <li>adds cbt (back_tab) to the terminfo description (this was 15946 something that I'd overlooked as applicable to curses 15947 optimization last summer).</li> 15948 15949 <li>corrects, for the standalone xmc test, the logic for 15950 disabling xmc.</li> 15951 </ul> 15952 15953 <h1><a name="xterm_46" id="xterm_46">Patch #46 - 1997/7/4 - 15954 XFree86 3.9h</a></h1> 15955 15956 <p>This is a patch to provide test-support for some work I'm 15957 doing on ncurses. It does not modify the normal configuration of 15958 xterm; the code is compiled if the standalone configure option 15959 "--enable-xmc-glitch" is specified.</p> 15960 15961 <h1><a name="xterm_45" id="xterm_45">Patch #45 - 1997/7/2 - 15962 XFree86 3.9h</a></h1> 15963 15964 <p>This fixes the problem reported with xterm's cursor color 15965 versus the background (the second chunk in this patch) and also 15966 removes some duplicate initialization of the cursor GC's. If the 15967 cursor color at startup is the same as the background, then xterm 15968 will use the reverse GC, ignoring the setting of the colorMode 15969 resource.</p> 15970 15971 <h1><a name="xterm_44" id="xterm_44">Patch #44 - 1997/6/22 - 15972 XFree86 3.9g</a></h1> 15973 15974 <p>This implements the first part of the VT100 doublesize 15975 characters for xterm, as well as fixing a handful of bugs:</p> 15976 15977 <ul> 15978 <li>the doublesize character support uses the normal font 15979 (using scaled fonts will be another patch) with blanks to 15980 simulate doublesize characters. This patch does most of the 15981 global changes that'll be required. I've hidden most of the 15982 details in macros and ifdef's so it's easy to configure out 15983 (part of the patch is a configure option for that 15984 purpose).</li> 15985 15986 <li>corrected limits in DeleteChar() function -- it's always 15987 ignored the size of the left border and scrollbar. I noticed 15988 this when working on the doublesize characters since the glitch 15989 was doubled in size (i.e., it wrapped some garbage around the 15990 right margin).</li> 15991 15992 <li>corrected 'memmove()' logic, for standalone builds (it 15993 referenced a malloc wrapper from my development library).</li> 15994 15995 <li>add a check for HideCursor() to prevent repeated screen 15996 updates (which can cause a spurious cursor glitch to appear, 15997 e.g., during scrolling). I noticed this with the 3.2A version 15998 (but only a few weeks ago, when I started working on this 15999 patch).</li> 16000 </ul> 16001 16002 <h1><a name="xterm_43" id="xterm_43">Patch #43 - 1997/6/10 - 16003 XFree86 3.9d</a></h1> 16004 16005 <p>Here's a fix for two problems:</p> 16006 16007 <ul> 16008 <li>modify handling of tgetent results in xterm and resize 16009 programs to make them tolerant of missing termcap file, or 16010 unknown terminal name. In this scheme, an explicit "-tn" option 16011 will succeed, overriding the fallback list.</li> 16012 16013 <li>a nit in the configure script (log extra information to 16014 help diagnose which case of the test-compile of tgetent was 16015 used).</li> 16016 </ul> 16017 16018 <h1><a name="xterm_42" id="xterm_42">Patch #42 - 1997/6/8 - 16019 XFree86 3.2Xl</a></h1> 16020 16021 <p>Bram Moolenaar reported that the cursor color changed 16022 unexpectedly while scrolling. The cause was that it used the same 16023 GC's as the logic that draws the ANSI colors. The bug only 16024 appears if the cursorColor resource isn't set, and has been 16025 present since the initial implementation early last year. (The 16026 same bug also appears in rxvt ;-). Here's a fix.</p> 16027 16028 <h1><a name="xterm_41" id="xterm_41">Patch #41 - 1997/5/28 - 16029 XFree86 3.2Xl</a></h1> 16030 16031 <p>Some nits found by Darren Hiebert (missing part of 16032 install-rule, incorrect assignment for --enable-color-mode 16033 option).</p> 16034 16035 <h1><a name="xterm_40" id="xterm_40">Patch #40 - 1997/5/26 - 16036 XFree86 3.2Xl</a></h1> 16037 16038 <p>Patch for the configure script's logic for obtaining imake 16039 predefined symbols.</p> 16040 16041 <h1><a name="xterm_39" id="xterm_39">Patch #39 - 1997/5/24 - 16042 XFree86 3.2Xl</a></h1> 16043 16044 <p>This patch does the following:</p> 16045 16046 <ul> 16047 <li>integrate the 16-color change for 'xterm'</li> 16048 16049 <li>minor fixes/clarification of tgetent in terminfo vs termcap 16050 to 'resize'</li> 16051 </ul> 16052 16053 <p>(both changes also modify the configure script)</p> 16054 16055 <h1><a name="xterm_38" id="xterm_38">Patch #38 - 1997/5/22 - 16056 XFree86 3.2Xh</a></h1> 16057 16058 <p>This implements a simple configuration script with autoconf 16059 (to which I'll add more options later). It does the 16060 following:</p> 16061 16062 <ul> 16063 <li>configures xterm to build with X11R5 (at least on SunOS 16064 4.1, Solaris 2.4, possibly IRIX - sorry network was down today, 16065 but I did test an earlier version yesterday).</li> 16066 16067 <li>enables/disables the configuration ifdef's for ANSI color 16068 and VT52 emulation.</li> 16069 </ul> 16070 16071 <p>It does not make tests for the things that imake does (that's 16072 another project), instead it uses a hybrid of the autoconf tests 16073 for libraries and adds imake's compiler options (which are 16074 necessary in some cases to get main.c to compile).</p> 16075 16076 <h1><a name="xterm_37" id="xterm_37">Patch #37 - 1997/5/7 - 16077 XFree86 3.9a</a></h1> 16078 16079 <p>This corrects a minor, but annoying error in the vt220 16080 emulation: the DECUDK is only supposed to be interpreted for 16081 _shifted_ function keys.</p> 16082 16083 <h1><a name="xterm_36" id="xterm_36">Patch #36 - 1997/1/16 - 16084 XFree86 3.2r</a></h1> 16085 16086 <p>This corrects something that I overlooked in patch #27 16087 (21-aug-1996), which is that when trimming the region to be 16088 repainted for the highlightSelection resource of xterm, I still 16089 have to paint the background past the highlighted region. This 16090 only happens when I first do a selection in a window that's 16091 partly off-screen, then move the window on-screen.</p> 16092 16093 <h1><a name="xterm_35" id="xterm_35">Patch #35 - 1997/1/7 - 16094 XFree86 3.2o</a></h1> 16095 16096 <p>This patch does the following:</p> 16097 16098 <ul> 16099 <li>combines the coding for foreground and background colors 16100 into a single byte, reducing the memory required to store 16101 saved-lines in color. (I'll take back that byte in a following 16102 patch to use to ensure the character-set, so there's no 16103 long-term decrease in memory use).</li> 16104 16105 <li>modifies the PF1-PF4 coding in termcap/terminfo. Because 16106 xterm is still by default emulating vt100, the function key 16107 codes are vt100-compatible (I overlooked this in patch #31). I 16108 also reformatted the whole terminfo file into a single-column, 16109 for consistency.</li> 16110 16111 <li>adds an interim xterm-vt220 description to accommodate the 16112 old and new styles of function-keys (though probably it'd be 16113 better to drop the old-style altogether).</li> 16114 </ul> 16115 16116 <h1><a name="xterm_34" id="xterm_34">Patch #34 - 1997/1/5 - 16117 XFree86 3.2o</a></h1> 16118 16119 <p>This patch does the following:</p> 16120 16121 <ul> 16122 <li>implement DECSTR (soft terminal reset). The biggest diff is 16123 due to adding another state table (note that there's only one 16124 useful state here, but it's only 256 bytes rather than 1k as it 16125 would have been before I reduced the size of state 16126 entries).</li> 16127 16128 <li>some minor tidying up (e.g., signed/unsigned use bitcpy, 16129 MODE_DECCKM, resetColor, resetCharsets). More is done in 16130 <a href="#xterm_35">patch #35</a>.</li> 16131 </ul> 16132 16133 <p>I got the description of DECSTR from a vt420 user's manual. 16134 I'll do some testing with vttest to ensure that there's nothing 16135 else to do than what was documented.</p> 16136 16137 <h1><a name="xterm_33" id="xterm_33">Patch #33 - 1996/11/24 - 16138 XFree86 3.2</a></h1> 16139 16140 <p>This adds to the reset-fix by Matthieu Herrb 16141 <Mathieu.Herrb@mipnet.fr> a small change to make xterm able 16142 to output 8-bit characters in VT100 mode. Applications that run 16143 on real VT100's don't do that anyway, and this feature should be 16144 removed sometime after finishing off the VT220 emulation (VT220's 16145 can do 8-bit characters). That would be a good time to change the 16146 default terminal-id to 220.</p> 16147 16148 <h1><a name="xterm_32" id="xterm_32">Patch #32 - 1996/11/21 - 16149 XFree86 3.2</a></h1> 16150 16151 <p>This implements the REP (repeat) control for xterm. That isn't 16152 part of the DEC VTxxx series, but is defined in ISO 6429. (Note 16153 that the base xterm terminal description is <em>not</em> changed 16154 -- I added a variant, "xterm-rep").</p> 16155 16156 <h1><a name="xterm_31" id="xterm_31">Patch #31 - 1996/11/16 - 16157 XFree86 3.2</a></h1> 16158 16159 <p>This implements vt52 emulation in xterm (ifdef'd so it can be 16160 removed). I've been using it for testing for the past month or 16161 so.</p> 16162 16163 <h1><a name="xterm_30" id="xterm_30">Patch #30 - 1996/11/16 - 16164 XFree86 3.2</a></h1> 16165 16166 <p>From bug-report by <auroux@clipper.ens.fr> (Denis 16167 Auroux), missing reset to ground state. I checked through the 16168 rest of <em>that</em> table and found another, in the 16169 unimplemented MC (screen print).</p> 16170 16171 <h1><a name="xterm_29" id="xterm_29">Patch #29 - 1996/9/15 - 16172 XFree86 3.1.2Gb</a></h1> 16173 16174 <p>This patch does the following:</p> 16175 16176 <ul> 16177 <li>corrects the restoration of color for bold/underline color 16178 mode</li> 16179 16180 <li>adds a resource 'decTerminalID' to control the reporting 16181 level of xterm (e.g., VT100, VT220).</li> 16182 16183 <li>uses the new resource to implement/correct the DA1, DA2 and 16184 DECRPTUI reports.</li> 16185 16186 <li>change valid-response code in DECRQSS from 0 to 1 (the 16187 manual says 0, but the VT420 terminal I've been testing on says 16188 1).</li> 16189 </ul> 16190 16191 <p>All of these changes are based on vttest 2.6</p> 16192 16193 <p>(Most of the volume in the patch is to add 2 more state tables 16194 for parsing the 2nd/3rd device-attribute controls).</p> 16195 16196 <h1><a name="xterm_28" id="xterm_28">Patch #28 - 1996/8/31 - 16197 XFree86 3.1.2F</a></h1> 16198 16199 <p>This patch corrects the following reported by Roland Rosenfeld 16200 <roland@spinnaker.rhein.de>:</p> 16201 16202 <ul> 16203 <li>handle SGR 22, 24 and 25 in combination with colorUL and 16204 colorBD resources. Also noted & fixed reset of colored 16205 underline/bold with SGR 0.</li> 16206 16207 <li>a typo in the termcap (missing '['), from 3.1.2Dj (my 16208 error)</li> 16209 </ul> 16210 16211 <p>Roland also complained that he couldn't use box characters 16212 with</p> 16213 16214 <pre> 16215 -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1 16216</pre> 16217 <p>but that's a known xterm limitation (the box characters must 16218 be part of the font, in the first 32 locations).</p> 16219 16220 <h1><a name="xterm_27" id="xterm_27">Patch #27 - 1996/8/21 - 16221 XFree86 3.1.2Ek</a></h1> 16222 16223 <p>This patch fixes one of my long-term gripes: xterm's selection 16224 doesn't clearly show what's being selected (as per David's 16225 request, it's controlled by a resource, which defaults to the 16226 older behavior).</p> 16227 16228 <h1><a name="xterm_26" id="xterm_26">Patch #26 - 1996/8/20 - 16229 XFree86 3.1.2Ei</a></h1> 16230 16231 <p>Here's a patch to fix a problem with xterm's cut/paste and 16232 another to modify the appearance of the highlighting while 16233 selecting. (The changes are independent, so you can see if the 16234 change to screen.c is desirable).</p> 16235 16236 <h1><a name="xterm_25" id="xterm_25">Patch #25 - 1996/8/18 - 16237 XFree86 3.1.2Ei</a></h1> 16238 16239 <p>Here's a correction for two minor bugs that I picked up in 16240 testing, plus some lint (from Solaris 2.5) where NULL was used 16241 incorrectly:</p> 16242 16243 <ul> 16244 <li>make the second alternate font the same as the first 16245 (that's what vt420 and dtterm do)</li> 16246 16247 <li>corrected DECSCL report when DECSCL hasn't been set (i.e., 16248 don't return a '60').</li> 16249 </ul> 16250 16251 <h1><a name="xterm_24" id="xterm_24">Patch #24 - 1996/8/11 - 16252 XFree86 3.1.2Ee</a></h1> 16253 16254 <p>This patch does several things. In effect, xterm can (I think) 16255 do a reasonably good job of emulating vt220 and vt320 terminals 16256 (as well as it was doing vt100, at any rate ;-).</p> 16257 16258 <p>It does NOT do:</p> 16259 16260 <ul> 16261 <li>soft fonts</li> 16262 16263 <li>rigel or sixel graphics</li> 16264 </ul> 16265 16266 <p>Anyway, I:</p> 16267 16268 <ul> 16269 <li>added ECH, CPL, CNL, SU, SD, CBT, CHT controls</li> 16270 16271 <li>added popup-menu for switching between DEC and Sun function 16272 keys. (corrected alignment err wrt logging entry at that 16273 point).</li> 16274 16275 <li>make xterm recognize both 8-bit and 7-bit controls 16276 (including popup menu for switching modes).</li> 16277 16278 <li>add user-definable function keys (aka DECUDK)</li> 16279 16280 <li>support concealed text</li> 16281 16282 <li>support protected text (both ISO compatible and DEC 16283 compatible - that's not the same thing, btw), with SPA, EPA, 16284 DECSCA, DECSED, DECSEL controls.</li> 16285 16286 <li>implement DECSCL.</li> 16287 </ul> 16288 16289 <p>I'll be continuing to test this patch for a while, but don't 16290 expect to add any new functionality (it passes all of the current 16291 tests I've built in vttest, but I need to make more tests)..</p> 16292 16293 <h1><a name="xterm_23" id="xterm_23">Patch #23 - 1996/7/31 - 16294 XFree86 3.1.2Ec</a></h1> 16295 16296 <p>This removes the blinking cursor I added last week (for 16297 performance reasons). Time-permitting, I'll revisit this after 16298 3.2 is released (there <em>will</em> be more work after XFree86 16299 3.2, I assume).</p> 16300 16301 <h1><a name="xterm_22" id="xterm_22">Patch #22 - 1996/7/26 - 16302 XFree86 3.1.2Ec</a></h1> 16303 16304 <p>I looked more closely at my "double-negative" and realized 16305 that I had been confused by the default color scheme (black on 16306 white) in combination with reverse video. However, I did see that 16307 the original_fg and original_bg data weren't really used - so I 16308 removed that logic.</p> 16309 16310 <p>Also:</p> 16311 16312 <ul> 16313 <li>during initialization, check if ANSI colors are set with 16314 non fg/bg values, disable color mode if not. This makes xterm 16315 tolerant of applications that allocate the whole color 16316 map.</li> 16317 16318 <li>implemented blinking cursor (default is <em>off</em>)</li> 16319 </ul> 16320 16321 <h1><a name="xterm_21" id="xterm_21">Patch #21 - 1996/7/24 - 16322 XFree86 3.1.2Ec</a></h1> 16323 16324 <p>This patch does the following:</p> 16325 16326 <ul> 16327 <li>fixes some minor typography in the control-sequences 16328 documentation (it didn't occur to me til I'd sent the last 16329 patch that I could use ghostview for previewing the troff 16330 output ;-)</li> 16331 16332 <li>adjusts the shell's background color in ReverseVideo so 16333 that flicker in resizing is reduced</li> 16334 16335 <li>adds an ifdef OPT_ISO_COLORS to allow configuring xterm 16336 without the ISO color support (saves a lot of memory)</li> 16337 16338 <li>used that ifdef to isolate/modify logic so that if the user 16339 doesn't have the colorMode enabled, then ISO color support is 16340 disabled (saving memory). 16341 <p>(If anyone needs numbers, I had savedLines set to 2000, 16342 and found a reduction from ~700k to ~400k of allocated 16343 memory, according to Purify).</p> 16344 </li> 16345 </ul> 16346 16347 <h1><a name="xterm_20" id="xterm_20">Patch #20 - 1996/7/24 - 16348 XFree86 3.1.2Ec</a></h1> 16349 16350 <p>This documents the changes in control sequences for window 16351 operations that I added in my previous patch. I'm testing another 16352 patch that allows the user to use less memory if colors aren't 16353 needed.</p> 16354 16355 <h1><a name="xterm_19" id="xterm_19">Patch #19 - 1996/7/21 - 16356 XFree86 3.1.2Ec</a></h1> 16357 16358 <p>This patch does the following:</p> 16359 16360 <ul> 16361 <li>fixes the core dump that I reported on IRIX 5.2 (in main.c) 16362 <p>(it's worth noting that this bug exists in X11R6.1, so I'd 16363 like to assume that someone's already submitted a fix to X 16364 Consortium...)</p> 16365 </li> 16366 16367 <li>change the interpretation of zero rows or columns in a 16368 resize-window request to use the root window's size (looking 16369 more carefully at dtterm, that seems to be what it does).</li> 16370 16371 <li>change some memmove calls to memcpy for slightly better 16372 performance. also, a couple of memset calls to bzero, since 16373 Quantify says bzero runs 20% faster, I assume because there's 16374 one less argument.</li> 16375 16376 <li>interpret character sets 1 and 2 (so that vttest gives a 16377 reasonable result) Both rxvt and dtterm do something 16378 equivalent.</li> 16379 16380 <li>fix a minor memory leak in the logic that retrieves the 16381 window or icon names (Purify found this for me while I ran 16382 vttest).</li> 16383 </ul> 16384 16385 <h1><a name="xterm_18" id="xterm_18">Patch #18 - 1996/7/18 - 16386 XFree86 3.1.2Ec</a></h1> 16387 16388 <p>This implements the following:</p> 16389 16390 <ul> 16391 <li>escape sequences that act like the CDE dtterm's window 16392 operations (though I have implemented the default width and 16393 height -- I've seen a rather buggy dtterm running that seems to 16394 treat width=0 or height=0 literally -- maybe that's a feature, 16395 not a bug?)</li> 16396 16397 <li>minor tweak to the screen-repainting when resizing (I still 16398 cannot entirely get rid of flicker).</li> 16399 16400 <li>still more fixes to terminfo & termcap (I corrected my 16401 error for the hpa code and added some other stuff by comparing 16402 to ncurses' description and rxvt's).</li> 16403 16404 <li>a tweak to the changes by Michael Rohleder for the color 16405 translation</li> 16406 16407 <li>re-order attribute codes to allow later implementation of 16408 protected fields (dtterm supposedly does this; it's probably 16409 more useful than blinking or invisible text -- that uses up all 16410 of the available bits without changing the attribute scheme 16411 radically).</li> 16412 </ul> 16413 16414 <h1><a name="xterm_17" id="xterm_17">Patch #17 - 1996/7/2 - 16415 XFree86 3.1.2Eb</a></h1> 16416 16417 <p>This patch implements for xterm several minor features from 16418 ISO 6429 which are useful for terminfo applications. The HPA and 16419 VPA control sequences allow cursor movement along a row or 16420 column, cutting down a little on the characters transmitted. The 16421 other codes allow resetting specific graphic rendition attributes 16422 without modifying the other attributes. (now if someone just had 16423 time to implement blinking cursors...)</p> 16424 16425 <h1><a name="xterm_16" id="xterm_16">Patch #16 - 1996/6/25 - 16426 XFree86 3.1.2Ea</a></h1> 16427 16428 <p>Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks 16429 ago that I'd missed some of the background coloring in xterm. I 16430 investigated, and found that while I'd picked up on the 16431 clear-to-bottom and clear-to-end-of-line operations, I'd 16432 overlooked the insert/delete lines. Just so I wouldn't overlook 16433 any more of these, I updated a copy of vttest to test ISO colors 16434 and bce (background color erase). This patch introduces a new 16435 function, ClearCurBackground, whose calls replace the direct 16436 XClearArea calls that I'd overlooked. (There's also a few 16437 compiler warnings fixed, etc ;-)</p> 16438 16439 <h1><a name="xterm_15" id="xterm_15">Patch #15 - 1996/5/29 - 16440 XFree86 3.1.2E</a></h1> 16441 16442 <p>This fixes the problem reported by David Dawes, by making the 16443 50msec select timeout for the Xaw3d arrow scrollbar a resource. 16444 (I made it a boolean for a variety of reasons -- to make it a 16445 number, you'd need an additional resource, to avoid breaking the 16446 logic).</p> 16447 16448 <h1><a name="xterm_14" id="xterm_14">Patch #14 - 1996/5/12 - 16449 XFree86 3.1.2Dj</a></h1> 16450 16451 <p>This patch brings the termcap and terminfo descriptions for 16452 xterm up to date. I made the following changes:</p> 16453 16454 <ul> 16455 <li>reformatted the terminfo description in a single-column 16456 (this is ok for terminfo, and will simplify future patches -- 16457 can't do that for termcap, since it would impact buffer 16458 requirements on some systems).</li> 16459 16460 <li>omitted obsolete features in termcap to save a little space 16461 (bs, pt)</li> 16462 16463 <li>added color capabilities to termcap (ut, Co, NC, op, AB, 16464 AF)</li> 16465 16466 <li>corrected some capabilities (vi, ve)</li> 16467 16468 <li>added 'st' (set tab)</li> 16469 16470 <li>reduced function keys in termcap for 'xterm' to 12 because 16471 color capabilities makes that description larger than 1023 16472 characters.</li> 16473 16474 <li>created new termcap name 'xtermm' (monochrome) to match the 16475 terminfo list, and make that description have 20 function 16476 keys.</li> 16477 16478 <li>added corresponding color capabilities to terminfo (bce, 16479 colors, pairs, op, ncv, setab, setaf)</li> 16480 16481 <li>corrected corresponding capabilities in terminfo (civis, 16482 cnorm, rmcup, smcup)</li> 16483 16484 <li>added capabilities (el1, hts)</li> 16485 16486 <li>in both, corrected home/end keys to match the code 16487 correction made by Thomas Mueller in 3.1.2Bk 16488 <p>=> (I'm still considering modifying the code & 16489 description to match the rxvt program).</p> 16490 </li> 16491 </ul> 16492 16493 <h1><a name="xterm_13" id="xterm_13">Patch #13 - 1996/4/23 - 16494 XFree86 3.1.2Df</a></h1> 16495 16496 <p>This corrects my earlier changes for colors - the inner border 16497 of the xterm was getting painted with the wrong color, since I'd 16498 moved the call to set the background into the logic that tracks 16499 SGR information.</p> 16500 16501 <h1><a name="xterm_12" id="xterm_12">Patch #12 - 1996/3/16 - 16502 XFree86 3.1.2Dc</a></h1> 16503 16504 <p>This corrects a memory leak in xterm that happens whenever one 16505 switches fonts.</p> 16506 16507 <h1><a name="xterm_11" id="xterm_11">Patch #11 - 1996/3/5 - 16508 XFree86 3.1.2Db</a></h1> 16509 16510 <p>This patch corrects the behavior of the ANSI colors in xterm 16511 when reverse video is used, as well as some other lesser 16512 sins:</p> 16513 16514 <ul> 16515 <li>button.c 16516 <ul> 16517 <li>(compiler warnings: shadowing of 'time', redundant 16518 cast)</li> 16519 </ul> 16520 </li> 16521 16522 <li>charproc.c 16523 <ul> 16524 <li>renamed screen.colors[] array to screen.Acolors[] to 16525 more easily distinguish the non-ANSI colors from the ANSI 16526 colors.</li> 16527 16528 <li>moved logic of SGR_Save() into VTInitialize, getting 16529 rid of local private variables original_fg and 16530 original_bg.</li> 16531 16532 <li>moved some logic into getXtermForeground and 16533 getXtermBackground from SGR_Foreground, SGR_Background, 16534 etc.</li> 16535 16536 <li>corrected misleading 'row' to 'col' in case for CUF, 16537 CUB sequences.</li> 16538 </ul> 16539 </li> 16540 16541 <li>ctlseqs.ms</li> 16542 16543 <li>xterm.man 16544 <ul> 16545 <li>(correct a misconception which I'd added that the 16546 color0 through color6 resource values apply to non-ANSI 16547 colors)</li> 16548 </ul> 16549 </li> 16550 16551 <li>ptyx.h 16552 <ul> 16553 <li>added original_fg, original_bg to TScreen 16554 structure.</li> 16555 </ul> 16556 </li> 16557 16558 <li>scrollbar.c 16559 <ul> 16560 <li>(compiler warnings: redundant cast)</li> 16561 </ul> 16562 </li> 16563 16564 <li>util.c 16565 <ul> 16566 <li>new functions getXtermForeground and getXtermBackground 16567 replace the macros GET_FG and GET_BG, with the added 16568 functionality of checking for the reverse-video status of 16569 xterm.</li> 16570 16571 <li>in ReverseVideo, swap the SGR foreground and background 16572 colors also.</li> 16573 </ul> 16574 </li> 16575 </ul> 16576 16577 <h1><a name="xterm_10" id="xterm_10">Patch #10 - 1996/2/14 - 16578 XFree86 3.1.2Cd</a></h1> 16579 16580 <p>I observed an occasional glitch in the xterm's color behavior; 16581 a clear to end of line would get a color that had been used in a 16582 program that supposedly reset colors. I traced this down to the 16583 way xterm was modifying colors of GC's on the fly; it didn't 16584 restore the original color of the GC, even though it would later 16585 be used in functions (such as ClearRight) that assumed (my error) 16586 that the GC would have the current foreground or background 16587 color.</p> 16588 16589 <p>I fixed this by resetting the GC's colors with a new function 16590 'resetXtermGC()', and direct calls on 16591 SGR_Foreground/SGR_Background, as appropriate and using a new 16592 function 'updatedXtermGC()' to encapsulate the logic that 16593 modifies the GC's color. (I also removed some commented-out code 16594 that was trying to do this -- the problem was a little more 16595 obscure).</p> 16596 16597 <h1><a name="xterm_09" id="xterm_09">Patch #9 - 1996/2/10 - 16598 XFree86 3.1.2Cb</a></h1> 16599 16600 <p>This patch fixes the remaining problems that I had making 16601 xterm run with x11r5, as well as a couple of other bugs. It 16602 follows my patch from yesterday, that added ifdef's for some of 16603 the input-method resources.</p> 16604 16605 <ul> 16606 <li>corrected ifdef's that suppress the input-method code 16607 (doesn't exist in my x11r5, and xterm works adequately without 16608 it).</li> 16609 16610 <li>corrected fallback definition for 'Select()' macro (oops: 16611 I'd copied the wrong text...)</li> 16612 16613 <li>moved the declarations for the fd_set variables to 16614 data.[ch]</li> 16615 16616 <li>corrected an ifdef in resize.c (sunos 4.x doesn't have 16617 termcap.h)</li> 16618 16619 <li>corrected (in main.c) some unused/orphaned variables.</li> 16620 </ul> 16621 16622 <h1><a name="xterm_08" id="xterm_08">Patch #8 - 1996/2/9 - 16623 XFree86 3.1.2Cb</a></h1> 16624 16625 <p>This is mostly a documentation patch for xterm. It describes 16626 the color control sequences in more detail, and documents some 16627 other features of xterm that aren't described elsewhere.</p> 16628 16629 <p>I've also added a couple of ifdef's to fix (part of) the 16630 problem that I'm working on (making the program work properly on 16631 x11r5, where I'm doing memory testing -- I have a "good" version 16632 from mid-January, but my resync version doesn't work properly on 16633 x11r5). I'm not done with <em>that</em> yet.</p> 16634 16635 <h1><a name="xterm_07" id="xterm_07">Patch #7 - 1996/1/28 - 16636 XFree86 3.1.2n</a></h1> 16637 16638 <p>I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF). I've 16639 got an S3 card.</p> 16640 16641 <p>This fixes the following in the 3.1.2n xterm:</p> 16642 16643 <ul> 16644 <li>initialize cur_foreground, cur_background in charproc.c 16645 (Purify told me they weren't initialized).</li> 16646 16647 <li>add interpretation of codes 39, 49, to reset background and 16648 foreground to default value (I'm told that ISO 6429 does this; 16649 but I don't have a written reference -- yet -- can anyone help 16650 here?). Anyway, rxvt does it, and it'll solve my remaining 16651 color management problems.</li> 16652 16653 <li>shadowing of 'time' in menu.c</li> 16654 16655 <li>'Cardinal' vs 'int' in scrollbar.c</li> 16656 16657 <li>several changes to permit compile with X11R5 (the system 16658 that I've got Purify on won't be upgraded to X11R6 for a long 16659 time).</li> 16660 </ul> 16661 16662 <p>I built this version (with a minor nit that I'll patch soon) 16663 on SunOS 4.1.3 so that I can test it some more with Purify.</p> 16664 16665 <p><em>btw</em>: the changes made in Xpoll.h won't work on some 16666 older systems, because fd_set isn't a defined type (I've got one 16667 machine at least that this applies to).</p> 16668 16669 <h1><a name="xterm_06" id="xterm_06">Patch #6 - 1996/1/8</a></h1> 16670 16671 <p>This patch does all of the SGR foreground/background fixes 16672 (i.e., clearing the screen after an SGR color is set causes that 16673 color to be used in the foreground and/or background). If the 16674 FG_COLOR and/or BG_COLOR flags aren't set, then the xterm 16675 foreground and background default to the window's values. This 16676 usage is consistent with various types of hardware (especially 16677 the IBM PC), and is also used in rxvt.</p> 16678 16679 <ul> 16680 <li>charproc.c: 16681 <ul> 16682 <li>add/use new macros GET_FG, GET_BG - n/c.</li> 16683 16684 <li>add/use new functions SGR_Foreground() and 16685 SGR_Background() to set corresponding colors in GC's, and 16686 to retain sense of "original" colors. 16687 <p>=> This makes redundant some of the corresponding 16688 logic in HideCursor to set the foreground and background, 16689 but I left it in since it <em>may</em> be fixing an 16690 unrelated requirement.</p> 16691 </li> 16692 16693 <li>set GC's in LoadNewFont() according to whether the SGR 16694 fg/bg colors are active. 16695 <p>=> This fixes some glitches in the accompanying 16696 resize, that leaves parts of the window in the original 16697 background color.</p> 16698 </li> 16699 </ul> 16700 </li> 16701 16702 <li>screen.c: 16703 <ul> 16704 <li>modified ClearBufRows() to use the SGR fg/bg colors if 16705 they're set.</li> 16706 16707 <li>added function ScrnClearLines(), used this to replace 16708 portions of ScrnInsertLine() and ScrnDeleteLine(). The new 16709 function uses the SGR fg/bg colors if they're set. 16710 <p>=> Otherwise, selection after an index or reverse 16711 index will paint the wrong colors.</p> 16712 </li> 16713 16714 <li>modified ScrnDeleteChar() and ScrnInsertChar() to use 16715 SGR fg/bg colors.</li> 16716 </ul> 16717 </li> 16718 16719 <li>util.c: 16720 <ul> 16721 <li>modified ClearRight() so that if either of the SGR 16722 fg/bg colors is set, we don't bzero the attributes and 16723 color arrays, but instead fill them with the appropriate 16724 codes.</li> 16725 16726 <li>modified ClearLeft to use SGR fg/bg colors.</li> 16727 </ul> 16728 </li> 16729 </ul> 16730 16731 <h1><a name="xterm_05" id="xterm_05">Patch #5 - 1996/1/7</a></h1> 16732 16733 <p>This patch modifies the object code, by replacing indexing 16734 expressions with temporary variables with the full indexing 16735 expression. At first glance, this seems inefficient (it did to me 16736 ;-), until remembering comments made in the compilers newsgroups 16737 that trying to "help" the compiler doesn't really work that well. 16738 A good optimizing compiler can do a better job than the 16739 programmer can. (There's a moral in the use of 'register' 16740 variables also, but I won't fix those...).</p> 16741 16742 <p>Anyway, the revised code generates a smaller object...</p> 16743 16744 <ul> 16745 <li>charproc.c: 16746 <ul> 16747 <li>recode index expressions in ShowCursor() and 16748 HideCursor() using SCRN_BUF_xxxxS macros - changes 16749 object.</li> 16750 16751 <li>replace constant '4' by MAX_PTRS - n/c.</li> 16752 </ul> 16753 </li> 16754 16755 <li>ptyx.h: 16756 <ul> 16757 <li>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS 16758 macros, to pick up references to ScrnBuf data directly, and 16759 added MAX_PTRS symbol to pick up those '4' constants strewn 16760 about the code - n/c.</li> 16761 </ul> 16762 </li> 16763 16764 <li>screen.c: 16765 <ul> 16766 <li>recode index expressions in ScreenWrite() using 16767 SCRN_BUF_xxxxS macros - changes object.</li> 16768 16769 <li>replace constant '4' by MAX_PTRS - n/c.</li> 16770 16771 <li>use macros BUF_CHARS, BUF_ATTRS - n/c.</li> 16772 16773 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 16774 - n/c</li> 16775 </ul> 16776 </li> 16777 16778 <li>scrollbar.c: 16779 <ul> 16780 <li>replace constant '4' by MAX_PTRS - n/c.</li> 16781 16782 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 16783 - n/c</li> 16784 </ul> 16785 </li> 16786 </ul> 16787 16788 <h1><a name="xterm_04" id="xterm_04">Patch #4 - 1996/1/7</a></h1> 16789 16790 <p>When setting up for this phase, I saw that you'd corrected the 16791 bug that I found in ClearLeft. I decided to make this series of 16792 patches anyway, since readability never hurt (and there's the 16793 potential for finding another bug while reviewing this set).</p> 16794 16795 <ul> 16796 <li>button.c: 16797 <ul> 16798 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16799 </ul> 16800 </li> 16801 16802 <li>charproc.c: 16803 <ul> 16804 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16805 </ul> 16806 </li> 16807 16808 <li>ptyx.h: 16809 <ul> 16810 <li>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS, 16811 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four arrays 16812 that are derived from screen->buf.</li> 16813 </ul> 16814 </li> 16815 16816 <li>screen.c: 16817 <ul> 16818 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16819 </ul> 16820 </li> 16821 16822 <li>util.c: 16823 <ul> 16824 <li>use SCRN_BUF_xxxxS macros - n/c</li> 16825 </ul> 16826 </li> 16827 </ul> 16828 16829 <h1><a name="xterm_03" id="xterm_03">Patch #3 - 1996/1/7</a></h1> 16830 16831 <p>This is my third (and final cleanup) patch for xterm. It gets 16832 rid of the unused stuff, and converts several functions to static 16833 (thereby reducing their scope).</p> 16834 16835 <p>At this point, the only compile warnings I've got (on Linux) 16836 are those about the select arguments (int vs fd_set type), and a 16837 missing declaration for waitpid. Those both are hard to get right 16838 without autoconfigure.</p> 16839 16840 <p>The next patches will address the functional changes...</p> 16841 16842 <ul> 16843 <li>Tekproc.c: 16844 <ul> 16845 <li>changed several functions to 'static' that aren't used 16846 outside this module -- changes object</li> 16847 </ul> 16848 </li> 16849 16850 <li>charproc.c: 16851 <ul> 16852 <li>changed several functions to 'static' that aren't used 16853 outside this module -- changes object</li> 16854 16855 <li>deleted unused function unparsefputs -- changes 16856 object.</li> 16857 </ul> 16858 </li> 16859 16860 <li>main.c: 16861 <ul> 16862 <li>changed several functions to 'static' that aren't used 16863 outside this module -- changes object</li> 16864 16865 <li>ifdef'd out unused function 'consolepr()' -- changes 16866 object</li> 16867 16868 <li>removed unused variable 'dummy_tio' -- changes 16869 object</li> 16870 16871 <li>moved variable 'discipline' to quiet unused-warning -- 16872 changes object</li> 16873 </ul> 16874 </li> 16875 16876 <li>main.h: 16877 <ul> 16878 <li>deleted unused definition of DEFBORDERWIDTH - n/c</li> 16879 </ul> 16880 </li> 16881 16882 <li>misc.c: 16883 <ul> 16884 <li>changed several functions to 'static' that aren't used 16885 outside this module -- changes object</li> 16886 16887 <li>provide dummy return statements for xerror and xioerror 16888 to quiet compiler warnings -- changes object</li> 16889 </ul> 16890 </li> 16891 16892 <li>ptyx.h: 16893 <ul> 16894 <li>change sbuf_address and abuf_address to 'Char *' - 16895 n/c</li> 16896 </ul> 16897 </li> 16898 16899 <li>resize.c: 16900 <ul> 16901 <li>changed several functions to 'static' that aren't used 16902 outside this module -- changes object</li> 16903 </ul> 16904 </li> 16905 16906 <li>screen.c: 16907 <ul> 16908 <li>remove unnecessary 'Char **' casts - n/c</li> 16909 </ul> 16910 </li> 16911 16912 <li>util.c: 16913 <ul> 16914 <li>changed several functions to 'static' that aren't used 16915 outside this module -- changes object</li> 16916 </ul> 16917 </li> 16918 </ul> 16919 16920 <h1><a name="xterm_02" id="xterm_02">Patch #2 - 1996/1/7</a></h1> 16921 16922 <p>This is my second patch to xterm. It corrects most of the gcc 16923 warnings (except for some that are due to X header files ;-). I 16924 compared objects to keep track of the changes that don't affect 16925 the object code (n/c) versus those that do.</p> 16926 16927 <p>At this point, I'm compiling (fairly) clean with gcc 16928 options</p> 16929 16930 <pre> 16931 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs 16932</pre> 16933 <p>(I also compiled with -Wshadow, but while that found some 16934 things that I wanted to find, there's far too many warnings from 16935 the X headers to be usable in this context).</p> 16936 16937 <p>The changes:</p> 16938 16939 <ul> 16940 <li>Tekproc.c: 16941 <ul> 16942 <li>parenthesized expression to avoid gcc warning -- 16943 n/c.</li> 16944 16945 <li>corrected nested-extern declaration for Bool 16946 waiting_for_initial_map; ourTopLevelShellArgs, and 16947 number_ourTopLevelShellArgs - n/c</li> 16948 </ul> 16949 </li> 16950 16951 <li>charproc.c: 16952 <ul> 16953 <li>corrected potentially-unintialized variables 'scstype', 16954 'xim', and 'input_style' -- changes object.</li> 16955 16956 <li>adjusted logic of VTparse so that gcc won't warn about 16957 setjmp clobbering parsestate -- changes object.</li> 16958 16959 <li>corrected initialization of 'scstype', which could have 16960 been clobbered by setjmp/longjmp - changes object.</li> 16961 16962 <li>corrected nested-extern declaration of 'term', 16963 'ProgramName' - n/c</li> 16964 </ul> 16965 </li> 16966 16967 <li>cursor.c: 16968 <ul> 16969 <li>corrected nested-extern declaration of 'term' -- 16970 n/c</li> 16971 16972 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 16973 - n/c</li> 16974 </ul> 16975 </li> 16976 16977 <li>input.c: 16978 <ul> 16979 <li>change interface of StringInput to assume size_t (i.e., 16980 unsigned) nbytes -- changes object.</li> 16981 16982 <li>change interface of funcvalue, and sunfuncvalue to use 16983 'KeySym' type instead of 'int' - changes object.</li> 16984 </ul> 16985 </li> 16986 16987 <li>main.c: 16988 <ul> 16989 <li>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h 16990 - n/c</li> 16991 16992 <li>corrected missing params of 'do_hangup()' -- changes 16993 object (note: the missing params were not used).</li> 16994 16995 <li>corrected missing param of 'Error()' -- changes 16996 object</li> 16997 16998 <li>corrected nested-extern 'environ' - n/c</li> 16999 17000 <li>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' 17001 so that gcc can see they won't be clobbered by the longjmp 17002 - changes object.</li> 17003 17004 <li>use Size_t type - n/c.</li> 17005 </ul> 17006 </li> 17007 17008 <li>menu.c: 17009 <ul> 17010 <li>removed redundant prototype for 'do_hangup()' -- 17011 n/c.</li> 17012 17013 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 17014 - n/c</li> 17015 </ul> 17016 </li> 17017 17018 <li>menu.h: 17019 <ul> 17020 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 17021 - n/c</li> 17022 </ul> 17023 </li> 17024 17025 <li>misc.c: 17026 <ul> 17027 <li>corrected definition of 'HandleFocusChange()' -- 17028 changes object</li> 17029 17030 <li>cast parameters in call to 'TekExpose()' -- n/c</li> 17031 17032 <li>corrected nested-extern declarations of 'term', 17033 'toplevel', ProgramName, and 'environ' -- n/c.</li> 17034 17035 <li>use Size_t type - n/c.</li> 17036 </ul> 17037 </li> 17038 17039 <li>proto.h: 17040 <ul> 17041 <li>moved definition of SIGNAL_T (and SIGNAL_RETURN) here 17042 from main.c, resize.c to allow use of this symbol in 17043 prototypes (mostly in xterm.h).</li> 17044 17045 <li>added definition 'Size_t' to use as corrected type for 17046 strncpy, malloc sizes - n/c.</li> 17047 </ul> 17048 </li> 17049 17050 <li>resize.c: 17051 <ul> 17052 <li>moved SIGNAL_T definition to proto.h -- n/c.</li> 17053 17054 <li>use Size_t type - n/c.</li> 17055 </ul> 17056 </li> 17057 17058 <li>screen.c: 17059 <ul> 17060 <li>use Size_t type - n/c.</li> 17061 </ul> 17062 </li> 17063 17064 <li>tabs.c: 17065 <ul> 17066 <li>corrected nested-extern declaration of 'term' -- 17067 n/c</li> 17068 </ul> 17069 </li> 17070 17071 <li>util.c: 17072 <ul> 17073 <li>corrected/supplied parameters to 'TekExpose()' -- 17074 changes object (note: 'TekExpose()' doesn't use its 17075 parameters).</li> 17076 17077 <li>corrected nested-extern declaration of 17078 'waiting_for_initial_map' -- n/c.</li> 17079 17080 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 17081 - n/c</li> 17082 </ul> 17083 </li> 17084 17085 <li>xterm.h: 17086 <ul> 17087 <li>prototype 'do_hangup()', 'HandleFocusChange()', 17088 'TekExpose()', 'Error()', 'Exit()' - forces changes in 17089 various places.</li> 17090 17091 <li>adjusted prototypes that pass 'Boolean' arguments to 17092 use 'int' (this is the "correct" ANSI approach to extended 17093 compiles; it's worth mentioning that gcc doesn't meet the 17094 ANSI spec here). I used gcc -Wconversion to find these, but 17095 there's a lot of unrelated warnings that are due to setting 17096 NARROWPROTO in the config - n/c.</li> 17097 17098 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 17099 - n/c</li> 17100 </ul> 17101 </li> 17102 </ul> 17103 17104 <h1><a name="xterm_01" id="xterm_01">Patch #1 - 1996/1/6</a></h1> 17105 17106 <p>This is my first cleanup patch for xterm. It addresses all of 17107 the gcc warnings for -Wall, -Wmissing-prototypes and 17108 -Wstrict-prototypes that I can change without modifying the 17109 object code. (I'm compiling this with gcc 2.7.0 for an aout 17110 target, which makes it simple to compare objects. When I do 17111 ELF-only, I've got a tool that compares that sort of thing as 17112 well).</p> 17113 17114 <p>Briefly, this patch adds (and uses) two header files in the 17115 xterm directory:</p> 17116 17117 <pre> 17118 proto.h 17119 xterm.h 17120</pre> 17121 <p>I expect this to be the biggest patch by far. However (barring 17122 a misplaced prototype), it shouldn't break anything, since the 17123 intent of the patch is to provide missing declarations.</p> 17124</body> 17125</html> 17126