xterm.log.html revision a5ae21e4
1<!-- 2 ***************************************************************************** 3 * this file is part of xterm * 4 * * 5 * Copyright 1997-2020,2021 by Thomas E. Dickey * 6 * * 7 * All Rights Reserved * 8 * * 9 * Permission is hereby granted, free of charge, to any person obtaining a * 10 * copy of this software and associated documentation files (the * 11 * "Software"), to deal in the Software without restriction, including * 12 * without limitation the rights to use, copy, modify, merge, publish, * 13 * distribute, sublicense, and/or sell copies of the Software, and to * 14 * permit persons to whom the Software is furnished to do so, subject to * 15 * the following conditions: * 16 * * 17 * The above copyright notice and this permission notice shall be included * 18 * in all copies or substantial portions of the Software. * 19 * * 20 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * 21 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * 22 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * 23 * IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY * 24 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * 25 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * 26 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * 27 * * 28 * Except as contained in this notice, the name(s) of the above copyright * 29 * holders shall not be used in advertising or otherwise to promote the * 30 * sale, use or other dealings in this Software without prior written * 31 * authorization. * 32 ***************************************************************************** 33 $XTermId: xterm.log.html,v 1.2374 2021/11/13 14:22:58 tom Exp $ 34 --> 35<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> 36<html> 37<head> 38 <meta name="generator" content= 39 "HTML Tidy for HTML5 for Linux version 5.6.0"> 40 <title>XTERM - Change Log</title> 41 <link rel="author" href="mailto:dickey@invisible-island.net"> 42 <meta http-equiv="Content-Type" content= 43 "text/html; charset=us-ascii"> 44 <meta name="keywords" content="xterm, change log"> 45 <meta name="description" content= 46 "This is the xterm change-log, distributed with xterm, with items listed by patch-number and date"> 47 <link rel="SHORTCUT ICON" href="/img/icons/xterm.ico" type= 48 "image/x-icon"> 49</head> 50<body> 51 <hr> 52 53 <p>Copyright © 1997-2020,2021 by <a href= 54 "mailto:dickey@invisible-island.net">Thomas E. Dickey</a></p> 55 56 <hr> 57 58 <h1>Contents</h1> 59 60 <p><a href= 61 "https://invisible-island.net/xterm/xterm.log.html">Here</a> is 62 the latest version of this file.</p> 63 64 <p>It began as a list of the changes that I made for xterm, using 65 the notes that I added when submitting a patch. You should note 66 that other changes were made as well, by other people, to fix 67 bugs and correct ifdef's for portability. Until mid-2006, most of 68 these were summarized in the XFree86 <a href= 69 "https://web.archive.org/web/20070101220948/http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/CHANGELOG"> 70 CHANGELOG</a>).</p> 71 72 <ul> 73 <li><a href="#xterm_370">Patch #370 - 2021/11/13</a></li> 74 75 <li><a href="#xterm_369">Patch #369 - 2021/09/21</a></li> 76 77 <li><a href="#xterm_368">Patch #368 - 2021/06/07</a></li> 78 79 <li><a href="#xterm_367">Patch #367 - 2021/03/26</a></li> 80 81 <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li> 82 83 <li><a href="#xterm_365">Patch #365 - 2021/02/03</a></li> 84 85 <li><a href="#xterm_364">Patch #364 - 2021/02/02</a></li> 86 87 <li><a href="#xterm_363">Patch #363 - 2020/12/26</a></li> 88 89 <li><a href="#xterm_362">Patch #362 - 2020/11/11</a></li> 90 91 <li><a href="#xterm_361">Patch #361 - 2020/10/14</a></li> 92 93 <li><a href="#xterm_360">Patch #360 - 2020/09/20</a></li> 94 95 <li><a href="#xterm_359">Patch #359 - 2020/08/17</a></li> 96 97 <li><a href="#xterm_358">Patch #358 - 2020/07/12</a></li> 98 99 <li><a href="#xterm_357">Patch #357 - 2020/07/05</a></li> 100 101 <li><a href="#xterm_356">Patch #356 - 2020/05/02</a></li> 102 103 <li><a href="#xterm_355">Patch #355 - 2020/05/01</a></li> 104 105 <li><a href="#xterm_354">Patch #354 - 2020/04/26</a></li> 106 107 <li><a href="#xterm_353">Patch #353 - 2020/02/01</a></li> 108 109 <li><a href="#xterm_352">Patch #352 - 2020/01/16</a></li> 110 111 <li><a href="#xterm_351">Patch #351 - 2019/11/17</a></li> 112 113 <li><a href="#xterm_350">Patch #350 - 2019/11/02</a></li> 114 115 <li><a href="#xterm_349">Patch #349 - 2019/09/22</a></li> 116 117 <li><a href="#xterm_348">Patch #348 - 2019/07/22</a></li> 118 119 <li><a href="#xterm_347">Patch #347 - 2019/06/30</a></li> 120 121 <li><a href="#xterm_346">Patch #346 - 2019/05/27</a></li> 122 123 <li><a href="#xterm_345">Patch #345 - 2019/05/14</a></li> 124 125 <li><a href="#xterm_344">Patch #344 - 2019/02/12</a></li> 126 127 <li><a href="#xterm_343">Patch #343 - 2019/01/13</a></li> 128 129 <li><a href="#xterm_342">Patch #342 - 2019/01/03</a></li> 130 131 <li><a href="#xterm_341">Patch #341 - 2018/12/24</a></li> 132 133 <li><a href="#xterm_340">Patch #340 - 2018/12/16</a></li> 134 135 <li><a href="#xterm_339">Patch #339 - 2018/12/12</a></li> 136 137 <li><a href="#xterm_338">Patch #338 - 2018/12/09</a></li> 138 139 <li><a href="#xterm_337">Patch #337 - 2018/09/21</a></li> 140 141 <li><a href="#xterm_336">Patch #336 - 2018/09/19</a></li> 142 143 <li><a href="#xterm_335">Patch #335 - 2018/08/14</a></li> 144 145 <li><a href="#xterm_334">Patch #334 - 2018/08/12</a></li> 146 147 <li><a href="#xterm_333">Patch #333 - 2018/05/03</a></li> 148 149 <li><a href="#xterm_332">Patch #332 - 2018/04/15</a></li> 150 151 <li><a href="#xterm_331">Patch #331 - 2017/12/30</a></li> 152 153 <li><a href="#xterm_330">Patch #330 - 2017/06/20</a></li> 154 155 <li><a href="#xterm_329">Patch #329 - 2017/06/12</a></li> 156 157 <li><a href="#xterm_328">Patch #328 - 2017/06/01</a></li> 158 159 <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> 160 161 <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> 162 163 <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> 164 165 <li><a href="#xterm_324">Patch #324 - 2016/03/10</a></li> 166 167 <li><a href="#xterm_323">Patch #323 - 2016/03/07</a></li> 168 169 <li><a href="#xterm_322">Patch #322 - 2016/01/02</a></li> 170 171 <li><a href="#xterm_321">Patch #321 - 2015/12/31</a></li> 172 173 <li><a href="#xterm_320">Patch #320 - 2015/08/28</a></li> 174 175 <li><a href="#xterm_319">Patch #319 - 2015/08/19</a></li> 176 177 <li><a href="#xterm_318">Patch #318 - 2015/04/12</a></li> 178 179 <li><a href="#xterm_317">Patch #317 - 2015/03/27</a></li> 180 181 <li><a href="#xterm_316">Patch #316 - 2015/03/07</a></li> 182 183 <li><a href="#xterm_315">Patch #315 - 2015/03/02</a></li> 184 185 <li><a href="#xterm_314">Patch #314 - 2014/12/28</a></li> 186 187 <li><a href="#xterm_313">Patch #313 - 2014/11/28</a></li> 188 189 <li><a href="#xterm_312">Patch #312 - 2014/09/28</a></li> 190 191 <li><a href="#xterm_311">Patch #311 - 2014/09/18</a></li> 192 193 <li><a href="#xterm_310">Patch #310 - 2014/07/25</a></li> 194 195 <li><a href="#xterm_309">Patch #309 - 2014/07/13</a></li> 196 197 <li><a href="#xterm_308">Patch #308 - 2014/06/19</a></li> 198 199 <li><a href="#xterm_307">Patch #307 - 2014/06/17</a></li> 200 201 <li><a href="#xterm_306">Patch #306 - 2014/06/03</a></li> 202 203 <li><a href="#xterm_305">Patch #305 - 2014/06/02</a></li> 204 205 <li><a href="#xterm_304">Patch #304 - 2014/05/03</a></li> 206 207 <li><a href="#xterm_303">Patch #303 - 2014/03/06</a></li> 208 209 <li><a href="#xterm_302">Patch #302 - 2014/03/02</a></li> 210 211 <li><a href="#xterm_301">Patch #301 - 2014/01/19</a></li> 212 213 <li><a href="#xterm_300">Patch #300 - 2013/12/03</a></li> 214 215 <li><a href="#xterm_299">Patch #299 - 2013/12/01</a></li> 216 217 <li><a href="#xterm_298">Patch #298 - 2013/11/27</a></li> 218 219 <li><a href="#xterm_297">Patch #297 - 2013/09/10</a></li> 220 221 <li><a href="#xterm_296">Patch #296 - 2013/07/10</a></li> 222 223 <li><a href="#xterm_295">Patch #295 - 2013/07/06</a></li> 224 225 <li><a href="#xterm_294">Patch #294 - 2013/07/05</a></li> 226 227 <li><a href="#xterm_293">Patch #293 - 2013/05/27</a></li> 228 229 <li><a href="#xterm_292">Patch #292 - 2013/04/25</a></li> 230 231 <li><a href="#xterm_291">Patch #291 - 2013/02/26</a></li> 232 233 <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li> 234 235 <li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li> 236 237 <li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li> 238 239 <li><a href="#xterm_287">Patch #287 - 2012/11/25</a></li> 240 241 <li><a href="#xterm_286">Patch #286 - 2012/10/29</a></li> 242 243 <li><a href="#xterm_285">Patch #285 - 2012/10/23</a></li> 244 245 <li><a href="#xterm_284">Patch #284 - 2012/10/14</a></li> 246 247 <li><a href="#xterm_283">Patch #283 - 2012/10/09</a></li> 248 249 <li><a href="#xterm_282">Patch #282 - 2012/09/28</a></li> 250 251 <li><a href="#xterm_281">Patch #281 - 2012/06/26</a></li> 252 253 <li><a href="#xterm_280">Patch #280 - 2012/06/24</a></li> 254 255 <li><a href="#xterm_279">Patch #279 - 2012/05/10</a></li> 256 257 <li><a href="#xterm_278">Patch #278 - 2012/01/18</a></li> 258 259 <li><a href="#xterm_277">Patch #277 - 2012/01/07</a></li> 260 261 <li><a href="#xterm_276">Patch #276 - 2011/10/10</a></li> 262 263 <li><a href="#xterm_275">Patch #275 - 2011/09/11</a></li> 264 265 <li><a href="#xterm_274">Patch #274 - 2011/09/05</a></li> 266 267 <li><a href="#xterm_273">Patch #273 - 2011/08/25</a></li> 268 269 <li><a href="#xterm_272">Patch #272 - 2011/08/24</a></li> 270 271 <li><a href="#xterm_271">Patch #271 - 2011/07/14</a></li> 272 273 <li><a href="#xterm_270">Patch #270 - 2011/04/26</a></li> 274 275 <li><a href="#xterm_269">Patch #269 - 2011/02/19</a></li> 276 277 <li><a href="#xterm_268">Patch #268 - 2011/02/10</a></li> 278 279 <li><a href="#xterm_267">Patch #267 - 2010/11/20</a></li> 280 281 <li><a href="#xterm_266">Patch #266 - 2010/10/24</a></li> 282 283 <li><a href="#xterm_265">Patch #265 - 2010/10/22</a></li> 284 285 <li><a href="#xterm_264">Patch #264 - 2010/10/14</a></li> 286 287 <li><a href="#xterm_263">Patch #263 - 2010/10/13</a></li> 288 289 <li><a href="#xterm_262">Patch #262 - 2010/8/30</a></li> 290 291 <li><a href="#xterm_261">Patch #261 - 2010/6/28</a></li> 292 293 <li><a href="#xterm_260">Patch #260 - 2010/6/20</a></li> 294 295 <li><a href="#xterm_259">Patch #259 - 2010/6/5</a></li> 296 297 <li><a href="#xterm_258">Patch #258 - 2010/5/1</a></li> 298 299 <li><a href="#xterm_257">Patch #257 - 2010/4/22</a></li> 300 301 <li><a href="#xterm_256">Patch #256 - 2010/3/6</a></li> 302 303 <li><a href="#xterm_255">Patch #255 - 2010/1/21</a></li> 304 305 <li><a href="#xterm_254">Patch #254 - 2010/1/6</a></li> 306 307 <li><a href="#xterm_253">Patch #253 - 2009/12/10</a></li> 308 309 <li><a href="#xterm_252">Patch #252 - 2009/12/7</a></li> 310 311 <li><a href="#xterm_251">Patch #251 - 2009/11/11</a></li> 312 313 <li><a href="#xterm_250">Patch #250 - 2009/10/13</a></li> 314 315 <li><a href="#xterm_249">Patch #249 - 2009/10/1</a></li> 316 317 <li><a href="#xterm_248">Patch #248 - 2009/9/11</a></li> 318 319 <li><a href="#xterm_247">Patch #247 - 2009/8/30</a></li> 320 321 <li><a href="#xterm_246">Patch #246 - 2009/8/16</a></li> 322 323 <li><a href="#xterm_245">Patch #245 - 2009/8/12</a></li> 324 325 <li><a href="#xterm_244">Patch #244 - 2009/8/9</a></li> 326 327 <li><a href="#xterm_243">Patch #243 - 2009/3/28</a></li> 328 329 <li><a href="#xterm_242">Patch #242 - 2009/2/15</a></li> 330 331 <li><a href="#xterm_241">Patch #241 - 2009/1/26</a></li> 332 333 <li><a href="#xterm_240">Patch #240 - 2009/1/25</a></li> 334 335 <li><a href="#xterm_239">Patch #239 - 2009/1/8</a></li> 336 337 <li><a href="#xterm_238">Patch #238 - 2008/12/30</a></li> 338 339 <li><a href="#xterm_237">Patch #237 - 2008/09/14</a></li> 340 341 <li><a href="#xterm_236">Patch #236 - 2008/07/27</a></li> 342 343 <li><a href="#xterm_235">Patch #235 - 2008/04/20</a></li> 344 345 <li><a href="#xterm_234">Patch #234 - 2008/03/02</a></li> 346 347 <li><a href="#xterm_233">Patch #233 - 2008/02/24</a></li> 348 349 <li><a href="#xterm_232">Patch #232 - 2008/01/30</a></li> 350 351 <li><a href="#xterm_231">Patch #231 - 2008/01/05</a></li> 352 353 <li><a href="#xterm_230">Patch #230 - 2007/12/31</a></li> 354 355 <li><a href="#xterm_229">Patch #229 - 2007/8/12</a></li> 356 357 <li><a href="#xterm_228">Patch #228 - 2007/7/22</a></li> 358 359 <li><a href="#xterm_227">Patch #227 - 2007/6/27</a></li> 360 361 <li><a href="#xterm_226">Patch #226 - 2007/6/17</a></li> 362 363 <li><a href="#xterm_225">Patch #225 - 2007/3/24</a></li> 364 365 <li><a href="#xterm_224">Patch #224 - 2007/2/11</a></li> 366 367 <li><a href="#xterm_223">Patch #223 - 2006/11/30</a></li> 368 369 <li><a href="#xterm_222">Patch #222 - 2006/10/17</a></li> 370 371 <li><a href="#xterm_221">Patch #221 - 2006/10/1</a></li> 372 373 <li><a href="#xterm_220">Patch #220 - 2006/9/10</a></li> 374 375 <li><a href="#xterm_219">Patch #219 - 2006/9/4</a></li> 376 377 <li><a href="#xterm_218">Patch #218 - 2006/8/27</a></li> 378 379 <li><a href="#xterm_217">Patch #217 - 2006/8/20</a></li> 380 381 <li><a href="#xterm_216">Patch #216 - 2006/8/3</a></li> 382 383 <li><a href="#xterm_215">Patch #215 - 2006/6/19 - XFree86 384 4.6.99.2</a></li> 385 386 <li><a href="#xterm_214">Patch #214 - 2006/6/18 - XFree86 387 4.6.99.2</a></li> 388 389 <li><a href="#xterm_213">Patch #213 - 2006/4/30 - XFree86 390 4.5.99.905</a></li> 391 392 <li><a href="#xterm_212">Patch #212 - 2006/4/9 - XFree86 393 4.5.99.904</a></li> 394 395 <li><a href="#xterm_211">Patch #211 - 2006/3/19 - XFree86 396 4.5.99.902</a></li> 397 398 <li><a href="#xterm_210">Patch #210 - 2006/3/12 - XFree86 399 4.5.99.902</a></li> 400 401 <li><a href="#xterm_209">Patch #209 - 2006/2/12 - XFree86 402 4.5.99.22</a></li> 403 404 <li><a href="#xterm_208">Patch #208 - 2006/1/3 - XFree86 405 4.5.99.19</a></li> 406 407 <li><a href="#xterm_207">Patch #207 - 2005/11/13 - XFree86 408 4.5.99.16</a></li> 409 410 <li><a href="#xterm_206">Patch #206 - 2005/11/3 - XFree86 411 4.5.99.15</a></li> 412 413 <li><a href="#xterm_205">Patch #205 - 2005/9/18 - XFree86 414 4.5.99.12</a></li> 415 416 <li><a href="#xterm_204">Patch #204 - 2005/8/4 - XFree86 417 4.5.99.9</a></li> 418 419 <li><a href="#xterm_203">Patch #203 - 2005/7/6 - XFree86 420 4.5.99.7</a></li> 421 422 <li><a href="#xterm_202">Patch #202 - 2005/5/2 - XFree86 423 4.5.99.3</a></li> 424 425 <li><a href="#xterm_201">Patch #201 - 2005/4/21 - XFree86 426 4.5.99.2</a></li> 427 428 <li><a href="#xterm_200">Patch #200 - 2005/2/6 - XFree86 429 4.4.99.23</a></li> 430 431 <li><a href="#xterm_199">Patch #199 - 2005/1/17 - XFree86 432 4.4.99.22</a></li> 433 434 <li><a href="#xterm_198">Patch #198 - 2005/1/13 - XFree86 435 4.4.99.21</a></li> 436 437 <li><a href="#xterm_197">Patch #197 - 2004/11/30 - XFree86 438 4.4.99.19</a></li> 439 440 <li><a href="#xterm_196">Patch #196 - 2004/8/15 - XFree86 441 4.4.99.12</a></li> 442 443 <li><a href="#xterm_195">Patch #195 - 2004/8/8 - XFree86 444 4.4.99.11</a></li> 445 446 <li><a href="#xterm_194">Patch #194 - 2004/7/27 - XFree86 447 4.4.99.11</a></li> 448 449 <li><a href="#xterm_193">Patch #193 - 2004/7/19 - XFree86 450 4.4.99.10</a></li> 451 452 <li><a href="#xterm_192">Patch #192 - 2004/7/12 - XFree86 453 4.4.99.9</a></li> 454 455 <li><a href="#xterm_191">Patch #191 - 2004/6/6 - XFree86 456 4.4.99.7</a></li> 457 458 <li><a href="#xterm_190">Patch #190 - 2004/5/25 - XFree86 459 4.4.99.6</a></li> 460 461 <li><a href="#xterm_189">Patch #189 - 2004/5/16 - XFree86 462 4.4.99.6</a></li> 463 464 <li><a href="#xterm_188">Patch #188 - 2004/5/12 - XFree86 465 4.4.99.6</a></li> 466 467 <li><a href="#xterm_187">Patch #187 - 2004/4/27 - XFree86 468 4.4.99.4</a></li> 469 470 <li><a href="#xterm_186">Patch #186 - 2004/4/18 - XFree86 471 4.4.99.4</a></li> 472 473 <li><a href="#xterm_185">Patch #185 - 2004/3/3 - XFree86 474 4.4</a></li> 475 476 <li><a href="#xterm_184">Patch #184 - 2003/12/31 - XFree86 477 4.3.99.903</a></li> 478 479 <li><a href="#xterm_183">Patch #183 - 2003/12/26 - XFree86 480 4.3.99.903</a></li> 481 482 <li><a href="#xterm_182">Patch #182 - 2003/12/2 - XFree86 483 4.3.99.901</a></li> 484 485 <li><a href="#xterm_181">Patch #181 - 2003/10/26 - XFree86 486 4.3.99.15</a></li> 487 488 <li><a href="#xterm_180">Patch #180 - 2003/10/12 - XFree86 489 4.3.99.15</a></li> 490 491 <li><a href="#xterm_179">Patch #179 - 2003/5/21 - XFree86 492 4.3.99.5</a></li> 493 494 <li><a href="#xterm_178">Patch #178 - 2003/5/18 - XFree86 495 4.3.99.5</a></li> 496 497 <li><a href="#xterm_177">Patch #177 - 2003/3/23 - XFree86 498 4.3.0</a></li> 499 500 <li><a href="#xterm_176">Patch #176 - 2003/3/22 - XFree86 501 4.3.0</a></li> 502 503 <li><a href="#xterm_175">Patch #175 - 2003/3/9 - XFree86 504 4.3.0</a></li> 505 506 <li><a href="#xterm_174">Patch #174 - 2003/2/25 - XFree86 507 4.2.99.903</a></li> 508 509 <li><a href="#xterm_173">Patch #173 - 2003/2/6 - XFree86 510 4.2.99.902</a></li> 511 512 <li><a href="#xterm_172">Patch #172 - 2002/12/27 - XFree86 513 4.2.99.3</a></li> 514 515 <li><a href="#xterm_171">Patch #171 - 2002/12/12 - XFree86 516 4.2.99.3</a></li> 517 518 <li><a href="#xterm_170">Patch #170 - 2002/10/13 - XFree86 519 4.2.1</a></li> 520 521 <li><a href="#xterm_169">Patch #169 - 2002/10/5 - XFree86 522 4.2.1</a></li> 523 524 <li><a href="#xterm_168">Patch #168 - 2002/9/29 - XFree86 525 4.2.1</a></li> 526 527 <li><a href="#xterm_167">Patch #167 - 2002/8/24 - XFree86 528 4.2.0</a></li> 529 530 <li><a href="#xterm_166">Patch #166 - 2002/3/25 - XFree86 531 4.2.0</a></li> 532 533 <li><a href="#xterm_165">Patch #165 - 2002/1/5 - XFree86 534 4.1.0</a></li> 535 536 <li><a href="#xterm_164">Patch #164 - 2001/11/13 - XFree86 537 4.1.0</a></li> 538 539 <li><a href="#xterm_163">Patch #163 - 2001/11/04 - XFree86 540 4.1.0</a></li> 541 542 <li><a href="#xterm_162">Patch #162 - 2001/10/23 - XFree86 543 4.1.0</a></li> 544 545 <li><a href="#xterm_161">Patch #161 - 2001/10/10 - XFree86 546 4.1.0</a></li> 547 548 <li><a href="#xterm_160">Patch #160 - 2001/10/7 - XFree86 549 4.1.0</a></li> 550 551 <li><a href="#xterm_159">Patch #159 - 2001/9/19 - XFree86 552 4.1.0</a></li> 553 554 <li><a href="#xterm_158">Patch #158 - 2001/9/8 - XFree86 555 4.1.0</a></li> 556 557 <li><a href="#xterm_157">Patch #157 - 2001/6/18 - XFree86 558 4.1.0</a></li> 559 560 <li><a href="#xterm_156">Patch #156 - 2001/4/28 - XFree86 561 4.0.3</a></li> 562 563 <li><a href="#xterm_155">Patch #155 - 2001/4/20 - XFree86 564 4.0.3</a></li> 565 566 <li><a href="#xterm_154">Patch #154 - 2001/4/11 - XFree86 567 4.0.3</a></li> 568 569 <li><a href="#xterm_153">Patch #153 - 2001/3/29 - XFree86 570 4.0.3</a></li> 571 572 <li><a href="#xterm_152">Patch #152 - 2001/3/13 - XFree86 573 4.0.2</a></li> 574 575 <li><a href="#xterm_151">Patch #151 - 2001/3/10 - XFree86 576 4.0.2</a></li> 577 578 <li><a href="#xterm_150">Patch #150 - 2000/12/29 - XFree86 579 4.0.2</a></li> 580 581 <li><a href="#xterm_149">Patch #149 - 2000/12/6 - XFree86 582 4.0.1h</a></li> 583 584 <li><a href="#xterm_148">Patch #148 - 2000/10/31 - XFree86 585 4.0.1d</a></li> 586 587 <li><a href="#xterm_147">Patch #147 - 2000/10/26 - XFree86 588 4.0.1c</a></li> 589 590 <li><a href="#xterm_146">Patch #146 - 2000/9/12 - XFree86 591 4.0.1c</a></li> 592 593 <li><a href="#xterm_145">Patch #145 - 2000/9/11 - XFree86 594 4.0.1c</a></li> 595 596 <li><a href="#xterm_144">Patch #144 - 2000/8/23 - XFree86 597 4.0.1b</a></li> 598 599 <li><a href="#xterm_143">Patch #143 - 2000/8/19 - XFree86 600 4.0.1b</a></li> 601 602 <li><a href="#xterm_142">Patch #142 - 2000/8/18 - XFree86 603 4.0.1b</a></li> 604 605 <li><a href="#xterm_141">Patch #141 - 2000/8/14 - XFree86 606 4.0.1b</a></li> 607 608 <li><a href="#xterm_140">Patch #140 - 2000/7/23 - XFree86 609 4.0.1</a></li> 610 611 <li><a href="#xterm_139">Patch #139 - 2000/6/17 - XFree86 612 4.0d</a></li> 613 614 <li><a href="#xterm_138">Patch #138 - 2000/6/15 - XFree86 615 4.0c</a></li> 616 617 <li><a href="#xterm_137">Patch #137 - 2000/6/10 - XFree86 618 4.0b</a></li> 619 620 <li><a href="#xterm_136">Patch #136 - 2000/6/3 - XFree86 621 4.0b</a></li> 622 623 <li><a href="#xterm_135">Patch #135 - 2000/5/29 - XFree86 624 4.0b</a></li> 625 626 <li><a href="#xterm_134">Patch #134 - 2000/5/28 - XFree86 627 4.0b</a></li> 628 629 <li><a href="#xterm_133">Patch #133 - 2000/5/2 - XFree86 630 4.0a</a></li> 631 632 <li><a href="#xterm_132">Patch #132 - 2000/4/11 - XFree86 633 4.0a</a></li> 634 635 <li><a href="#xterm_131">Patch #131 - 2000/3/3 - XFree86 636 3.9.18b</a></li> 637 638 <li><a href="#xterm_130">Patch #130 - 2000/3/1 - XFree86 639 3.9.18a</a></li> 640 641 <li><a href="#xterm_129">Patch #129 - 2000/2/26 - XFree86 642 3.9.18a</a></li> 643 644 <li><a href="#xterm_128">Patch #128 - 2000/2/17 - XFree86 645 3.9.18</a></li> 646 647 <li><a href="#xterm_127">Patch #127 - 2000/2/12 - XFree86 648 3.9.17e</a></li> 649 650 <li><a href="#xterm_126">Patch #126 - 2000/2/8 - XFree86 651 3.9.17c</a></li> 652 653 <li><a href="#xterm_125">Patch #125 - 2000/1/31 - XFree86 654 3.9.17c</a></li> 655 656 <li><a href="#xterm_124">Patch #124 - 2000/1/27 - XFree86 657 3.9.17b</a></li> 658 659 <li><a href="#xterm_123">Patch #123 - 2000/1/22 - XFree86 660 3.9.17a</a></li> 661 662 <li><a href="#xterm_122">Patch #122 - 1999/12/28 - XFree86 663 3.9.16f</a></li> 664 665 <li><a href="#xterm_121">Patch #121 - 1999/11/14 - XFree86 666 3.9.16c</a></li> 667 668 <li><a href="#xterm_120">Patch #120 - 1999/10/28 - XFree86 669 3.9.16c</a></li> 670 671 <li><a href="#xterm_119">Patch #119 - 1999/10/16 - XFree86 672 3.9.16c</a></li> 673 674 <li><a href="#xterm_118">Patch #118 - 1999/10/5 - XFree86 675 3.9.16b</a></li> 676 677 <li><a href="#xterm_117">Patch #117 - 1999/9/29 - XFree86 678 3.9.16b</a></li> 679 680 <li><a href="#xterm_116">Patch #116 - 1999/9/25 - XFree86 681 3.9.16a</a></li> 682 683 <li><a href="#xterm_115">Patch #115 - 1999/9/18 - XFree86 684 3.9.16a</a></li> 685 686 <li><a href="#xterm_114">Patch #114 - 1999/9/15 - XFree86 687 3.9.16</a></li> 688 689 <li><a href="#xterm_113">Patch #113 - 1999/8/15 - XFree86 690 3.9.15b</a></li> 691 692 <li><a href="#xterm_112">Patch #112 - 1999/7/17 - XFree86 693 3.9Pw</a></li> 694 695 <li><a href="#xterm_111">Patch #111 - 1999/7/10 - XFree86 696 3.9Pw</a></li> 697 698 <li><a href="#xterm_110">Patch #110 - 1999/6/29 - XFree86 699 3.9Pu</a></li> 700 701 <li><a href="#xterm_109">Patch #109 - 1999/6/23 - XFree86 702 3.9Pt</a></li> 703 704 <li><a href="#xterm_108">Patch #108 - 1999/6/19 - XFree86 705 3.9Ps</a></li> 706 707 <li><a href="#xterm_107">Patch #107 - 1999/6/12 - XFree86 708 3.9Pq</a></li> 709 710 <li><a href="#xterm_106">Patch #106 - 1999/6/9 - XFree86 711 3.9Pq</a></li> 712 713 <li><a href="#xterm_105">Patch #105 - 1999/6/5 - XFree86 714 3.9Pp</a></li> 715 716 <li><a href="#xterm_104">Patch #104 - 1999/5/30 - XFree86 717 3.9Pn</a></li> 718 719 <li><a href="#xterm_103">Patch #103 - 1999/5/14 - XFree86 720 3.9Pm</a></li> 721 722 <li><a href="#xterm_102">Patch #102 - 1999/5/12 - XFree86 723 3.9Pm</a></li> 724 725 <li><a href="#xterm_101">Patch #101 - 1999/5/10 - XFree86 726 3.9Pm</a></li> 727 728 <li><a href="#xterm_100">Patch #100 - 1999/5/3 - XFree86 729 3.9Pl</a></li> 730 731 <li><a href="#xterm_99">Patch #99 - 1999/5/2 - XFree86 732 3.9Pk</a></li> 733 734 <li><a href="#xterm_98">Patch #98 - 1999/4/26 - XFree86 735 3.9Pk</a></li> 736 737 <li><a href="#xterm_97">Patch #97 - 1999/4/25 - XFree86 738 3.9Pk</a></li> 739 740 <li><a href="#xterm_96">Patch #96 - 1999/4/19 - XFree86 741 3.9Pj</a></li> 742 743 <li><a href="#xterm_95">Patch #95 - 1999/4/5 - XFree86 744 3.9Ph</a></li> 745 746 <li><a href="#xterm_94">Patch #94 - 1999/3/27 - XFree86 747 3.9Pf</a></li> 748 749 <li><a href="#xterm_93">Patch #93 - 1999/3/14 - XFree86 750 3.9Pd</a></li> 751 752 <li><a href="#xterm_92">Patch #92 - 1999/2/5 - XFree86 753 3.9Nz</a></li> 754 755 <li><a href="#xterm_91">Patch #91 - 1999/1/21 - XFree86 756 3.9Nw</a></li> 757 758 <li><a href="#xterm_90">Patch #90 - 1998/12/13 - XFree86 759 3.9Nq</a></li> 760 761 <li><a href="#xterm_89">Patch #89 - 1998/11/20 - XFree86 762 3.9Nm</a></li> 763 764 <li><a href="#xterm_88">Patch #88 - 1998/10/31 - XFree86 3.9Nk 765 and 3.3.2h</a></li> 766 767 <li><a href="#xterm_87">Patch #87 - 1998/10/21 - XFree86 3.9Nj 768 and 3.3.2f</a></li> 769 770 <li><a href="#xterm_86">Patch #86 - 1998/10/14 - XFree86 3.9Nj 771 and 3.3.2e</a></li> 772 773 <li><a href="#xterm_85">Patch #85 - 1998/10/12 - XFree86 3.9Nj 774 and 3.3.2e</a></li> 775 776 <li><a href="#xterm_84">Patch #84 - 1998/10/9 - XFree86 3.9Ni 777 and 3.3.2e</a></li> 778 779 <li><a href="#sync_83">Resync #83 - 1998/10/7 - XFree86 780 3.3.2e</a></li> 781 782 <li><a href="#xterm_83">Patch #83 - 1998/8/25 - XFree86 783 3.9Nb</a></li> 784 785 <li><a href="#xterm_82">Patch #82 - 1998/7/15 - XFree86 786 3.9Aj</a></li> 787 788 <li><a href="#xterm_81">Patch #81 - 1998/7/14 - XFree86 789 3.9Aj</a></li> 790 791 <li><a href="#xterm_80">Patch #80 - 1998/6/29 - XFree86 792 3.9Ai</a></li> 793 794 <li><a href="#xterm_79">Patch #79 - 1998/6/28 - XFree86 795 3.9Ai</a></li> 796 797 <li><a href="#xterm_78">Patch #78 - 1998/6/3 - XFree86 3.9Ah 798 and 3.3.2</a></li> 799 800 <li><a href="#xterm_77">Patch #77 - 1998/5/26 - XFree86 3.9Ah 801 and 3.3.2</a></li> 802 803 <li><a href="#xterm_76">Patch #76 - 1998/5/8 - XFree86 3.9Ah 804 and 3.3.2</a></li> 805 806 <li><a href="#xterm_75">Patch #75 - 1998/5/7 - XFree86 3.9Ah 807 and 3.3.2</a></li> 808 809 <li><a href="#xterm_74">Patch #74 - 1998/4/27 - XFree86 3.9Ag 810 and 3.3.2</a></li> 811 812 <li><a href="#xterm_73">Patch #73 - 1998/4/25 - XFree86 3.9Ag 813 and 3.3.2</a></li> 814 815 <li><a href="#xterm_72">Patch #72 - 1998/4/17 - XFree86 3.9Ag 816 and 3.3.2</a></li> 817 818 <li><a href="#xterm_71">Patch #71 - 1998/4/12 - XFree86 3.9Ag 819 and 3.3.2</a></li> 820 821 <li><a href="#xterm_70">Patch #70 - 1998/3/29 - XFree86 3.9Af 822 and 3.3.2</a></li> 823 824 <li><a href="#xterm_69">Patch #69 - 1998/3/16 - XFree86 3.9Ad 825 and 3.3.2</a></li> 826 827 <li><a href="#xterm_68">Patch #68 - 1998/3/4 - XFree86 3.9Ad 828 and 3.3.1z</a></li> 829 830 <li><a href="#xterm_67">Patch #67 - 1998/2/23 - XFree86 3.9Ad 831 and 3.3.1e</a></li> 832 833 <li><a href="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad 834 and 3.3.1d</a></li> 835 836 <li><a href="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad 837 and 3.3.1c</a></li> 838 839 <li><a href="#xterm_64">Patch #64 - 1998/2/8 - XFree86 840 3.9Ad</a></li> 841 842 <li><a href="#xterm_63">Patch #63 - 1998/2/5 - XFree86 843 3.9Ad</a></li> 844 845 <li><a href="#xterm_62">Patch #62 - 1998/1/23 - XFree86 846 3.9Ac</a></li> 847 848 <li><a href="#xterm_61">Patch #61 - 1998/1/17 - XFree86 849 3.9Ac</a></li> 850 851 <li><a href="#xterm_60">Patch #60 - 1998/1/10 - XFree86 852 3.9Ab</a></li> 853 854 <li><a href="#xterm_59">Patch #59 - 1998/1/5 - XFree86 855 3.9Ab</a></li> 856 857 <li><a href="#xterm_58">Patch #58 - 1998/1/3 - XFree86 858 3.9Ab</a></li> 859 860 <li><a href="#xterm_57">Patch #57 - 1997/12/26 - XFree86 861 3.9Aa</a></li> 862 863 <li><a href="#xterm_56">Patch #56 - 1997/11/28 - XFree86 864 3.9x</a></li> 865 866 <li><a href="#xterm_55">Patch #55 - 1997/11/25 - XFree86 867 3.9x</a></li> 868 869 <li><a href="#xterm_54">Patch #54 - 1997/10/17 - XFree86 870 3.9s</a></li> 871 872 <li><a href="#xterm_53">Patch #53 - 1997/10/12 - XFree86 873 3.9r</a></li> 874 875 <li><a href="#xterm_52">Patch #52 - 1997/9/29 - XFree86 876 3.9q</a></li> 877 878 <li><a href="#xterm_51">Patch #51 - 1997/9/15 - XFree86 879 3.9p</a></li> 880 881 <li><a href="#xterm_50">Patch #50 - 1997/8/22 - XFree86 882 3.9m</a></li> 883 884 <li><a href="#xterm_49">Patch #49 - 1997/8/10 - XFree86 885 3.9k</a></li> 886 887 <li><a href="#xterm_48">Patch #48 - 1997/7/26 - XFree86 888 3.9j</a></li> 889 890 <li><a href="#xterm_47">Patch #47 - 1997/7/13 - XFree86 891 3.9i</a></li> 892 893 <li><a href="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</a></li> 894 895 <li><a href="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</a></li> 896 897 <li><a href="#xterm_44">Patch #44 - 1997/6/22 - XFree86 898 3.9g</a></li> 899 900 <li><a href="#xterm_43">Patch #43 - 1997/6/10 - XFree86 901 3.9d</a></li> 902 903 <li><a href="#xterm_42">Patch #42 - 1997/6/8 - XFree86 904 3.2Xl</a></li> 905 906 <li><a href="#xterm_41">Patch #41 - 1997/5/28 - XFree86 907 3.2Xl</a></li> 908 909 <li><a href="#xterm_40">Patch #40 - 1997/5/26 - XFree86 910 3.2Xl</a></li> 911 912 <li><a href="#xterm_39">Patch #39 - 1997/5/24 - XFree86 913 3.2Xl</a></li> 914 915 <li><a href="#xterm_38">Patch #38 - 1997/5/22 - XFree86 916 3.2Xh</a></li> 917 918 <li><a href="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</a></li> 919 920 <li><a href="#xterm_36">Patch #36 - 1997/1/16 - XFree86 921 3.2r</a></li> 922 923 <li><a href="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</a></li> 924 925 <li><a href="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</a></li> 926 927 <li><a href="#xterm_33">Patch #33 - 1996/11/24 - XFree86 928 3.2</a></li> 929 930 <li><a href="#xterm_32">Patch #32 - 1996/11/21 - XFree86 931 3.2</a></li> 932 933 <li><a href="#xterm_31">Patch #31 - 1996/11/16 - XFree86 934 3.2</a></li> 935 936 <li><a href="#xterm_30">Patch #30 - 1996/11/16 - XFree86 937 3.2</a></li> 938 939 <li><a href="#xterm_29">Patch #29 - 1996/9/15 - XFree86 940 3.1.2Gb</a></li> 941 942 <li><a href="#xterm_28">Patch #28 - 1996/8/31 - XFree86 943 3.1.2F</a></li> 944 945 <li><a href="#xterm_27">Patch #27 - 1996/8/21 - XFree86 946 3.1.2Ek</a></li> 947 948 <li><a href="#xterm_26">Patch #26 - 1996/8/20 - XFree86 949 3.1.2Ei</a></li> 950 951 <li><a href="#xterm_25">Patch #25 - 1996/8/18 - XFree86 952 3.1.2Ei</a></li> 953 954 <li><a href="#xterm_24">Patch #24 - 1996/8/11 - XFree86 955 3.1.2Ee</a></li> 956 957 <li><a href="#xterm_23">Patch #23 - 1996/7/31 - XFree86 958 3.1.2Ec</a></li> 959 960 <li><a href="#xterm_22">Patch #22 - 1996/7/26 - XFree86 961 3.1.2Ec</a></li> 962 963 <li><a href="#xterm_21">Patch #21 - 1996/7/24 - XFree86 964 3.1.2Ec</a></li> 965 966 <li><a href="#xterm_20">Patch #20 - 1996/7/24 - XFree86 967 3.1.2Ec</a></li> 968 969 <li><a href="#xterm_19">Patch #19 - 1996/7/21 - XFree86 970 3.1.2Ec</a></li> 971 972 <li><a href="#xterm_18">Patch #18 - 1996/7/18 - XFree86 973 3.1.2Ec</a></li> 974 975 <li><a href="#xterm_17">Patch #17 - 1996/7/2 - XFree86 976 3.1.2Eb</a></li> 977 978 <li><a href="#xterm_16">Patch #16 - 1996/6/25 - XFree86 979 3.1.2Ea</a></li> 980 981 <li><a href="#xterm_15">Patch #15 - 1996/5/29 - XFree86 982 3.1.2E</a></li> 983 984 <li><a href="#xterm_14">Patch #14 - 1996/5/12 - XFree86 985 3.1.2Dj</a></li> 986 987 <li><a href="#xterm_13">Patch #13 - 1996/4/23 - XFree86 988 3.1.2Df</a></li> 989 990 <li><a href="#xterm_12">Patch #12 - 1996/3/16 - XFree86 991 3.1.2Dc</a></li> 992 993 <li><a href="#xterm_11">Patch #11 - 1996/3/5 - XFree86 994 3.1.2Db</a></li> 995 996 <li><a href="#xterm_10">Patch #10 - 1996/2/14 - XFree86 997 3.1.2Cd</a></li> 998 999 <li><a href="#xterm_09">Patch #9 - 1996/2/10 - XFree86 1000 3.1.2Cb</a></li> 1001 1002 <li><a href="#xterm_08">Patch #8 - 1996/2/9 - XFree86 1003 3.1.2Cb</a></li> 1004 1005 <li><a href="#xterm_07">Patch #7 - 1996/1/28 - XFree86 1006 3.1.2n</a></li> 1007 1008 <li><a href="#xterm_06">Patch #6 - 1996/1/8</a></li> 1009 1010 <li><a href="#xterm_05">Patch #5 - 1996/1/7</a></li> 1011 1012 <li><a href="#xterm_04">Patch #4 - 1996/1/7</a></li> 1013 1014 <li><a href="#xterm_03">Patch #3 - 1996/1/7</a></li> 1015 1016 <li><a href="#xterm_02">Patch #2 - 1996/1/7</a></li> 1017 1018 <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> 1019 </ul> 1020 1021 <h1><a name="xterm_370" id="xterm_370">Patch #370 - 1022 2021/11/13</a></h1> 1023 1024 <ul> 1025 <li>add <code>-a</code>, <code>-c</code> and <code>-d</code> 1026 options to <code>query-status.pl</code> to improve test for 1027 <code>DECRQSS</code>.</li> 1028 1029 <li>expanded discussion of maximum graphics geometry in 1030 <code>ctlseqs.ms</code> (suggested by Bon Wong).</li> 1031 1032 <li>corrected parameter symbol for <code>DECCARA</code> and 1033 <code>DECRARA</code> in <code>ctlseqs.ms</code> to indicate 1034 that multiple parameters may be used (report by Thomas 1035 Wolff).</li> 1036 1037 <li>add several test/demo scripts.</li> 1038 1039 <li>improve <code>DECCOLM</code>, <code>DECLRMM</code> and 1040 <code>DECALN</code> referring to pseudo-code in DEC 070.</li> 1041 1042 <li>amend a change in patch #348 which caused left/right margin 1043 mode to be reset when resizing the terminal window (report by 1044 Valentine Barshak).</li> 1045 1046 <li>fix a misnamed macro-parameter (patch by Rajeev V. 1047 Pillai).</li> 1048 1049 <li>fix spacing of <code>wideFont</code> when its width is not 1050 exactly twice as wide as the normal font (report by Rajeev V. 1051 Pillai).</li> 1052 1053 <li>suppress loading of italic font in a few places when 1054 <code>colorITmode</code> is enabled (report/analysis by Rajeev 1055 V. Pillai).</li> 1056 1057 <li>modify <code>XTSMGRAPHICS</code> to return failure status 1058 if the terminal is not configured to support the corresponding 1059 ReGIS or SIXEL feature (report by Nick Black, notcurses #2252, 1060 notcurses #2257).</li> 1061 1062 <li>modify <code>DECERA</code> and <code>DECFRA</code> to erase 1063 corresponding area in SIXEL graphics (patch by Nick Black, 1064 notcurses #1740, vt340test #16). Also modify 1065 <code>DECSERA</code>.</li> 1066 1067 <li>equate visuals for TrueColor and DirectColor (patch by 1068 Denis Kaganovich).</li> 1069 1070 <li>correct computation for pixel value of rgb when using depth 1071 16 (report by Denis Kaganovich).</li> 1072 1073 <li>correct wrapping of VT100-style double-sized characters 1074 when configured for Unicode wide-characters (report by Luis 1075 Javier Merino).</li> 1076 1077 <li>updated default value for <code>sixelScrolling</code> 1078 resource to match expected behavior versus <code>DECSDM</code> 1079 change in <a href="#xterm_369">patch #369</a> (report by Grant 1080 Taylor).</li> 1081 </ul> 1082 1083 <h1><a name="xterm_369" id="xterm_369">Patch #369 - 1084 2021/09/21</a></h1> 1085 1086 <ul> 1087 <li>modify <code>run-tic.sh</code> to work around bug in 1088 development version of ncurses which was packaged in FreeBSD 1089 ports.</li> 1090 1091 <li>remove ifdef's for <code>OPT_COLOR_RES</code> and 1092 <code>OPT_COLOR_RES2</code>.</li> 1093 1094 <li>improve performance over slow connections (report by Harald 1095 Dunkel).</li> 1096 1097 <li>update cursor if restoring mode for DECTCEM.</li> 1098 1099 <li>modify <code>CharWidth</code> macro to ensure that the 1100 shortcut for Latin-1 is only applied when UTF-8 is not enabled, 1101 to fix a bug in handling soft-hyphen from <a href= 1102 "#xterm_334">patch #334</a> changes (patch by Martijn van 1103 Duren).</li> 1104 1105 <li>improve terminfo: 1106 <ul> 1107 <li>fill-in function-keys in terminfo which are not Sun/HP 1108 keyboards using <code>xterm+nopcfkeys</code> 1109 building-block.</li> 1110 1111 <li>add kbeg to xterm+keypad to accommodate termcap 1112 applications</li> 1113 1114 <li>add smglp and smgrp to vt420+lrmm, to provide useful 1115 data for the "tabs" <code><strong>+m</strong></code> 1116 option</li> 1117 </ul> 1118 </li> 1119 1120 <li>support shift-tab in Sun, HP and SCO keyboards.</li> 1121 1122 <li>document some legacy features in <code>ctlseqs.ms</code> 1123 (prompted by discussion with Jimmy Aguilar Mena "Ergus").</li> 1124 1125 <li>add “trim” option to <code>cdXtraScroll</code> 1126 and <code>tiXtraScroll</code>.</li> 1127 1128 <li>remove support for non-fifo save-lines configuration.</li> 1129 1130 <li>extend <code>cdXtraScroll</code> to check if the cursor is 1131 at the upper-left of the scrolling region when the erasure is 1132 for the remainder of the screen versus the whole screen 1133 (prompted by discussion with Jörg Breitbart).</li> 1134 1135 <li>add workaround for broken pcre2 package in Debian 10.</li> 1136 1137 <li>change screen-refresh call used for <code>DECCARA</code> 1138 and <code>DECRARA</code> to ensure that trailing blanks which 1139 are part of the rectangle are repainted (report/analysis by 1140 Dennis Filder).</li> 1141 1142 <li>when resetting the terminal, ensure that the cursor shape 1143 also is reset, e.g., if <code>DECSCUSR</code> has been used to 1144 modify the cursor shape for an xterm which was started with the 1145 underlined cursor option (report/analysis by Luis Javier 1146 Merino).</li> 1147 1148 <li>prevent <code>DECSCUSR</code> from blinking the cursor if 1149 the <code>cursorBlink</code> resource is “never” 1150 (report by Vladimir D Seleznev).</li> 1151 1152 <li>invert the sense of <code>DECSDM</code>, to correspond with 1153 VT382 manuals (lsix #41).</li> 1154 1155 <li>update tables in <code>wcwidth.c</code> based on Unicode 1156 14.0.0</li> 1157 </ul> 1158 1159 <h1><a name="xterm_368" id="xterm_368">Patch #368 - 1160 2021/06/07</a></h1> 1161 1162 <ul> 1163 <li>add <code>DefaultOff</code> option to 1164 <code>RenderFont</code> resource, as part of the 1165 session-management feature.</li> 1166 1167 <li>add auto-scroll-lock feature (patch by Stelios 1168 Bounanos).</li> 1169 1170 <li>update the window-size information returned via 1171 <code>TIOCGWINSZ</code> when rows/columns are unchanged but the 1172 font-size changes (report by Nick Black).</li> 1173 1174 <li>improve session-management feature by saving/restoring the 1175 font settings.</li> 1176 1177 <li>update config.guess, config.sub</li> 1178 </ul> 1179 1180 <h1><a name="xterm_367" id="xterm_367">Patch #367 - 1181 2021/03/26</a></h1> 1182 1183 <ul> 1184 <li>add <code>OSC 22</code> to allow programs to select 1185 different pointer cursor at runtime.</li> 1186 1187 <li>change configuration for <em>no-return</em> functions to 1188 use <code>_Noreturn</code> when it is available, because 1189 <code>clang --analyze</code> does not properly handle the gcc 1190 noreturn attribute.</li> 1191 1192 <li>add <code>cursorTheme</code> resource to provide a way to 1193 enable or disable the cursor theme feature.</li> 1194 1195 <li>modified <code>CopyWait</code> event retries to use shorter 1196 sleeps, to improve responsiveness (tmux #2556).</li> 1197 1198 <li>improve quoting/escaping in demo-scripts per 1199 shellcheck.</li> 1200 1201 <li>add <code>resizeByPixel</code> resource, to permit 1202 disabling window manager resizing-hints (patch by Tim 1203 Oehl).</li> 1204 1205 <li>corrected <code>printOptsImmediate</code> handling of 1206 alternate-screen (report by Abhijit Dasgupta).</li> 1207 1208 <li>update sample terminfo to more closely match ncurses.</li> 1209 1210 <li>add/improve limit-checks for Xlib calls (report by Roman 1211 Fiedler).</li> 1212 1213 <li>fix a typo in the help-message (report by Tomas 1214 Korbar).</li> 1215 </ul> 1216 1217 <h1><a name="xterm_366" id="xterm_366">Patch #366 - 1218 2021/02/10</a></h1> 1219 1220 <ul> 1221 <li>correct a compiler-warning fix in <a href= 1222 "#xterm_352">patch #352</a> which allowed sign-extension of 1223 coordinate values (report by "CismonX").</li> 1224 1225 <li>correct upper-limit for selection buffer, accounting for 1226 combining characters (report/testcase by Tavis Ormandy).</li> 1227 1228 <li>with <code>alwaysHighlight</code> true, xterm does not 1229 properly track focus. The <em>screen->select</em> 1230 <code>FOCUS</code> flag remains always on, which prevents 1231 <code>bellIsUrgent</code> from working, as the urgent 1232 <code>WM_HINT</code> flag is only set in 1233 <code>setXUrgency()</code> when the window is not focused. Fix 1234 this by updating <em>screen->select</em> in 1235 <code>unselectwindow()</code> regardless of the value of 1236 <code>always_highlight</code> (patch by Jiri Bohac).</li> 1237 1238 <li>improve fix for interaction between SRM and ENQ (report by 1239 Grant Taylor).</li> 1240 1241 <li>build-fix for <code>--with-Xaw3dxft</code>, needed when 1242 <code>--with-toolbar</code> is omitted (report by Jimmy Olgeni, 1243 Emanuel Haupt).</li> 1244 </ul> 1245 1246 <h1><a name="xterm_365" id="xterm_365">Patch #365 - 1247 2021/02/03</a></h1> 1248 1249 <ul> 1250 <li>amend fix for “word” selection in <a href= 1251 "#xterm_364">patch #364</a> to limit that to the 1252 <code>insert-selectable</code> <em>action</em>, which reads 1253 data from the screen. This restores the interactive behavior 1254 where double-clicking on a “word” would make 1255 subsequent selection extensions by words as well as suppressing 1256 some boundary-checks (report by David Wolfskill, FreeBSD 1257 #253225).</li> 1258 </ul> 1259 1260 <h1><a name="xterm_364" id="xterm_364">Patch #364 - 1261 2021/02/02</a></h1> 1262 1263 <ul> 1264 <li>add <code>-fc</code> option.</li> 1265 1266 <li>correct/improve limit-checks for SRM versus ENQ from 1267 <a href="#xterm_344">patch #344</a> (report by Tom 1268 Szilagyi).</li> 1269 1270 <li>enable <code>XftFont</code> resource in Xaw3dxft 1271 configuration (patch by Tavis Ormandy).</li> 1272 1273 <li>improve quoting/escaping in build-scripts per 1274 shellcheck.</li> 1275 1276 <li>add <code>libpcre2-posix</code> to the packages tested for 1277 <code>--with-pcre2</code> option, needed with Fedora (report by 1278 Tomas Korbar).</li> 1279 1280 <li>correct a typo in manual page, and note that 1281 <code>KeepClipboard</code> may not be compiled-in (report/patch 1282 by Sean C Farley).</li> 1283 1284 <li>corrected boundary-checks for “word” selection 1285 used in <code>on<em>N</em>Clicks</code> resources (report by 1286 Tavis Ormandy).</li> 1287 1288 <li>update to autoconf-2.52-20210101, to improve shellcheck 1289 warnings.</li> 1290 1291 <li>improve configure check for desktop categories.</li> 1292 </ul> 1293 1294 <h1><a name="xterm_363" id="xterm_363">Patch #363 - 1295 2020/12/26</a></h1> 1296 1297 <ul> 1298 <li>disable groff hyphenation in generated html when using 1299 man2html.</li> 1300 1301 <li>change SCS “<code>&4</code>” Cyrillic to 1302 non-NRCS, per VT520 manual.</li> 1303 1304 <li>amend fix for SCS in <a href="#xterm_198">patch #198</a> to 1305 remove <code>DEL</code> rather than converting it to a space 1306 (report by Thomas Wolff).</li> 1307 1308 <li>modify state transitions for selecting character sets to 1309 eliminate an ambiguity between the “A” used in 1310 VT220 versus VT320.</li> 1311 1312 <li>improve error recovery when selecting characters by 1313 resetting to US ASCII when no suitable encoding is found, e.g., 1314 attempting to use an NRCS sequence when NRCS is not 1315 enabled.</li> 1316 1317 <li>turn off hyphenation in “<code>.txt</code>” 1318 conversion, prompted by groff changes.</li> 1319 1320 <li>add VT5xx ISO Latin-2 (prompted by discussion with Thomas 1321 Wolff).</li> 1322 1323 <li>amend change from <a href="#xterm_361">patch #361</a> to 1324 event-handling in <code>CopyWait</code> to handle active-icon 1325 as a special case (Debian #975687).</li> 1326 1327 <li>add call to <code>loadColorTable</code> to get the visual 1328 information needed to decode BE RGBA32 color format (patch by 1329 Leandro Lupori).</li> 1330 1331 <li>modify the resource-parsing for 1332 <code>disallowedPasteControls</code> and similar lists of 1333 names/numbers to recognize “~;” (tilde) for 1334 cancelling a given name/number.</li> 1335 1336 <li>add ENQ, EOT and NUL to default for 1337 <code>disallowedPasteControls</code>.</li> 1338 1339 <li>change default for <code>disallowedPasteControls</code> to 1340 omit the tab character (suggested by Harald Dunkel).</li> 1341 1342 <li>fix swapped height/width in <code>regisScreenSize</code> 1343 and <code>maxGraphicSize</code> resources using "auto" value, 1344 from <a href="#xterm_314">patch #314</a> (report by Anton 1345 Lavrentiev)</li> 1346 1347 <li>revise <a href="#xterm_362">patch #362</a> change for 1348 shift-modifier versus mouse protocol and select/paste by adding 1349 resource <code>shiftEscape</code>, which can be enabled via a 1350 control sequence (prompted by discussion with Matthijs van 1351 Duin).</li> 1352 1353 <li>simplify/improve ifdef in trace code for using a separate 1354 set of files for each run of xterm.</li> 1355 1356 <li>add options <code>-r</code> and <code>-t</code> to 1357 <code>vttests/query-color.pl</code> to show the 6-digit RGB 1358 code and actual colors.</li> 1359 1360 <li>add <code>nel</code> to <code>xterm-basic</code> 1361 terminfo.</li> 1362 1363 <li>alter <code>vttests/modify-keys.pl</code> to omit HTML 1364 reference links to the modified-keys table where no keycode was 1365 available.</li> 1366 </ul> 1367 1368 <h1><a name="xterm_362" id="xterm_362">Patch #362 - 1369 2020/11/11</a></h1> 1370 1371 <ul> 1372 <li>cleanup of calls to <code>free</code>, removing checks for 1373 null (Walter Harms).</li> 1374 1375 <li>improved mouse-button reporting (prompted by discussion 1376 with Stephane Chazelas) 1377 <ul> 1378 <li>narrow the scope of the change for shift-key in 1379 <a href="#xterm_361">patch #361</a> to make it apply only 1380 when the <code>modifyOtherKeys</code> resource is set to 2 1381 (i.e., “program mode”). Also, when checking the 1382 shift-key, ignore modifiers other than shift, control and 1383 “meta”</li> 1384 1385 <li>use the alt/meta modifier information obtained in 1386 <code>VTInitModifiers</code> to replace a hard-coded 1387 <em>mod1</em> used to detect “Meta” for 1388 mouse-button responses.</li> 1389 </ul> 1390 </li> 1391 1392 <li>reduce <code>SIGWINCH</code>'s sent to the client by 1393 filtering out duplicates.</li> 1394 1395 <li>improve display when <code>scaleHeight</code> is greater 1396 than 1: 1397 <ul> 1398 <li>the text-cursor is vertically-centered on the current 1399 line, rather than only extending below the current line 1400 (report by Manu Chaturvedi).</li> 1401 1402 <li>the built-in line-drawing characters extend to the 1403 scaled cell-height.</li> 1404 </ul> 1405 </li> 1406 1407 <li>fill-in special case for motion-events to match the changes 1408 for shift-key in pointer-button events from <a href= 1409 "#xterm_361">patch #361</a>.</li> 1410 </ul> 1411 1412 <h1><a name="xterm_361" id="xterm_361">Patch #361 - 1413 2020/10/14</a></h1> 1414 1415 <ul> 1416 <li>treat the return value of <code>strerror</code> as readonly 1417 (patch by Philipp Klaus Krause).</li> 1418 1419 <li>modify event-handling in <code>CopyWait</code> to work 1420 around hanging while writing large amounts of text to an active 1421 icon and at the same time iconifying/deiconifying (report by 1422 Dave Kemper).</li> 1423 1424 <li>initialize double-buffer for active-icon window.</li> 1425 1426 <li>improve manual page description of scrollbar resources 1427 (report by Brian Lindholm).</li> 1428 1429 <li>correct ifdef for menu entry for active-icon, when 1430 initializing it with toolbar configuration.</li> 1431 1432 <li>add preprocessor option to makefile to set internal 1433 definition of pixmaps directory to match the 1434 install-configuration (FreeBSD #250036).</li> 1435 1436 <li>cleanup of calls to <code>free</code>, removing checks for 1437 null (Walter Harms).</li> 1438 1439 <li>add fallback actions <code>pointer-button</code> and 1440 <code>pointer-motion</code> which handle events for the mouse 1441 control-sequences protocol if the <em>select</em>-related 1442 translations are omitted with 1443 <code>*omitTranslation:select</code> (prompted by discussion 1444 with "Ergus")</li> 1445 1446 <li>amend rule for using shift-key to override mouse-protocol 1447 for select/paste to limit that feature to mouse-buttons which 1448 are actually bound to select/paste actions (prompted by 1449 discussion with "Ergus").</li> 1450 1451 <li>corrected mapping in special case for repainting wrap-marks 1452 when viewing the scrollback area.</li> 1453 1454 <li>use separate <em>GCs</em> for <code>showWrapMarks</code> 1455 feature, to work around cursor coloring change in <a href= 1456 "#xterm_345">patch #345</a> (report by Paulo Silva de 1457 Alíbano).</li> 1458 </ul> 1459 1460 <h1><a name="xterm_360" id="xterm_360">Patch #360 - 1461 2020/09/20</a></h1> 1462 1463 <ul> 1464 <li>mention <code>decGraphicsID</code> in 1465 <code>ctlseqs.ms</code> (suggested by Thomas Wolff).</li> 1466 1467 <li>modify pixel-coordinate mouse response to use as origin the 1468 VT100-window rather than the underlying widget, which includes 1469 the scrollbar (report by Thomas Wolff).</li> 1470 1471 <li>add configure option <code>--disable-print-graphics</code> 1472 (Ross Combs).</li> 1473 1474 <li>add <code>test_ptydata</code> to “make check” 1475 rule.</li> 1476 1477 <li>minor fixes for <code>ctlseqs.ms</code> (report by 1478 Jean-Marc Bourguet).</li> 1479 1480 <li>minor fixes for manpage style (report/patch by 1481 "a1346054").</li> 1482 1483 <li>correct cleanup from switch between italics/normal font in 1484 the show/hide cursor functions (report/testcase by Peter 1485 Fabinski).</li> 1486 1487 <li>integrated patch by Ross Combs: 1488 <ul> 1489 <li>internal renaming of GraphicsID symbols, for 1490 readability.</li> 1491 1492 <li>adjust logic for VT125, treating it as a ReGIS 1493 terminal.</li> 1494 </ul> 1495 </li> 1496 1497 <li>update configure macros, for compiler-warning fixes.</li> 1498 1499 <li>integrated patch by Ross Combs: 1500 <ul> 1501 <li>add control sequence modes for graphics printing.</li> 1502 1503 <li>improve conversion to bitmaps for TrueType fonts in 1504 ReGIS</li> 1505 1506 <li>add <code>font7</code> resource, for an 1507 “enormous” bitmap font.</li> 1508 1509 <li>do not reset graphics in a soft-reset.</li> 1510 1511 <li>add <code>pointerFont</code> resource, and 1512 <code>-pf</code> command-line option.</li> 1513 </ul> 1514 </li> 1515 1516 <li>improve typography of manual page (patch by Branden 1517 Robinson).</li> 1518 1519 <li>amend <a href="#xterm_359">patch #359</a> change to 1520 <code>df-install.in</code> to ignore a command-line assignment 1521 to <code>DESTDIR</code> if followed by an explicit 1522 <code>--dir</code> (report by Sven Joachim).</li> 1523 </ul> 1524 1525 <h1><a name="xterm_359" id="xterm_359">Patch #359 - 1526 2020/08/17</a></h1> 1527 1528 <ul> 1529 <li>add special case in <code>WriteText</code> to allow colors 1530 8-15 to override <code>colorBDMode</code> (patch by Ingo 1531 Brückl).</li> 1532 1533 <li>add <code>utf8Weblike</code> resource, to provide an 1534 alternate scheme for handling ill-formed UTF-8 sequences 1535 (adapted from patch by Dan Gohman).</li> 1536 1537 <li>improve computation for the number of lines needed to 1538 scroll-up a SIXEL graphic (report/patch by Ben Wong).</li> 1539 1540 <li>correct manpage description for default value of 1541 <code>disallowWindowOps</code> from changes in <a href= 1542 "#xterm_331">xterm #331</a> (patch by Ben Wong).</li> 1543 1544 <li>correct a loop starting-point in 1545 <code>refresh_graphics</code> from optimization in <a href= 1546 "#xterm_358">patch #358</a> changes (report by Ben Wong).</li> 1547 1548 <li>add a new mouse mode 1016, which uses the same format as 1549 mode 1006, but sends the mouse's position in pixels (suggested 1550 by Igor van den Hoven).</li> 1551 1552 <li>fix an issue from <a href="#xterm_338">patch #338</a> 1553 changes where only the first selection buffer specified in the 1554 request would be updated using OSC 52 (patch by Michael 1555 Gulick).</li> 1556 1557 <li>modify makefile/scripts to allow <code>DESTDIR</code> to 1558 prefix the target directory for desktop-file-install (report by 1559 Fred Heitkamp).</li> 1560 1561 <li>enable SIXEL feature by default.</li> 1562 1563 <li>update config.guess, config.sub</li> 1564 </ul> 1565 1566 <h1><a name="xterm_358" id="xterm_358">Patch #358 - 1567 2020/07/12</a></h1> 1568 1569 <ul> 1570 <li>correct logic for decodeTerminalID changes in <a href= 1571 "#xterm_357">patch #357</a> (report by "Chartreuse").</li> 1572 1573 <li>modify makefile to use <code>plink.sh</code> when linking 1574 test-programs, to fix build when using pcre (report by H Merijn 1575 Brand)</li> 1576 1577 <li>build-fix for test_ptydata program (patch by H Merijn 1578 Brand)</li> 1579 </ul> 1580 1581 <h1><a name="xterm_357" id="xterm_357">Patch #357 - 1582 2020/07/05</a></h1> 1583 1584 <ul> 1585 <li>several minor optimizations for the ReGIS and SIXEL 1586 features, improving performance by 10%.</li> 1587 1588 <li>add resource <code>decGraphicsID</code> to allow displaying 1589 graphics when the emulation level would ordinarily disallow 1590 this (prompted by discussion with Thomas Wolff).</li> 1591 1592 <li>add control sequences for fast switching of color palettes: 1593 <code>XTPUSHCOLORS</code>, <code>XTPOPCOLORS</code>, 1594 <code>XTREPORTCOLORS</code></li> 1595 1596 <li>amend change for soft-hyphen from <a href= 1597 "#xterm_328">patch #328</a> to avoid stripping 1598 replacement-characters which would be shown with malformed or 1599 overlong UTF-8 input.</li> 1600 1601 <li>corrected an error-handling case in 1602 <code>decodeUtf8</code>, matching a similar fix in <a href= 1603 "#xterm_268">patch #268</a> (report/patch by Dan Gohman).</li> 1604 1605 <li>add a test-driver for <code>ptydata.c</code></li> 1606 1607 <li>minor cleanup of macros (adapted from patch by Walter 1608 Harms).</li> 1609 1610 <li>fix some errata in <code>ctlseqs.ms</code> (report by 1611 Thomas Wolff).</li> 1612 1613 <li>allow immediate repaint-on-palette-changed if 1614 double-buffering is enabled.</li> 1615 1616 <li>deprecate codes 10/11 in sgr push controls, changing those 1617 to 30/31, to avoid confusion with sgr 10-19.</li> 1618 1619 <li>modify <code>SGR</code> parameter handling to stop if an 1620 unrecognized parameter is encountered, to guard against 1621 malformed or nonstandard sequences (report by Bram 1622 Moolenaar).</li> 1623 1624 <li>modify <code>DECERA</code> color for consistency with other 1625 erasures/clearing (report by Thomas Wolff).</li> 1626 1627 <li><code>ECH</code> should not be masked by 1628 <code>DECSCA</code> (report by Thomas Wolff).</li> 1629 1630 <li>extend <code>DECFRA</code> and <code>REP</code> to accept 1631 any “graphic” character rather than just Latin1, 1632 etc. (report by Thomas Wolff).</li> 1633 1634 <li>add <code>-C</code> option to 256colors2.pl and 1635 88colors2.pl, to demonstrate mixed semicolon/colon separators 1636 which are implied by ECMA-48.</li> 1637 1638 <li>update sample terminfo to reflect the documentation 1639 improvements.</li> 1640 1641 <li>update description of 88/256/direct color in 1642 <code>ctlseqs.ms</code> to point out that using semicolons is a 1643 deprecated legacy feature, and standard terminal applications 1644 should use colons (prompted by discussion with Bram 1645 Moolenaar).</li> 1646 1647 <li>modify configure-check for <code>tgetent</code> to 1648 conditionally include <code>termcap.h</code>, enabling 1649 configuration using <code>clang</code>'s pedantic-errors option 1650 (report by Dennis Clarke). See <a href= 1651 "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h3-Other-Compatibility"> 1652 <em>Other Compatibility</em></a> in ncurses' 1653 <em>curs_termcap(3X)</em>.</li> 1654 1655 <li>remove some unnecessary pointer checks (patch by Walter 1656 Harms).</li> 1657 1658 <li>accept terminal-id and add DA response for VT131, 1659 VT132.</li> 1660 </ul> 1661 1662 <h1><a name="xterm_356" id="xterm_356">Patch #356 - 1663 2020/05/02</a></h1> 1664 1665 <ul> 1666 <li>revise fix for Debian #954730, which interfered with wheel 1667 mouse events (report by Gabriele Balducci).</li> 1668 </ul> 1669 1670 <h1><a name="xterm_355" id="xterm_355">Patch #355 - 1671 2020/05/01</a></h1> 1672 1673 <ul> 1674 <li>revise fix for Debian #954730, which interfered with wheel 1675 mouse events (report by Henri Menke).</li> 1676 1677 <li>fix typos in documentation (reports by Stephen Hurd, Stefan 1678 Assmann).</li> 1679 1680 <li>add mapping for <code>decTerminalID</code> for 1681 “100” overlooked in <a href="#xterm_354">patch 1682 #354</a>.</li> 1683 1684 <li>update tables in wcwidth.c based on Unicode 13.0.0</li> 1685 1686 <li>build-fix for “make check” when building 1687 out-of-tree (report by Sven Joachim).</li> 1688 </ul> 1689 1690 <h1><a name="xterm_354" id="xterm_354">Patch #354 - 1691 2020/04/26</a></h1> 1692 1693 <ul> 1694 <li>work around performance problems of 1695 <code>XDrawImageString</code> and 1696 <code>XDrawImageString16</code> functions (Debian 1697 #954845).</li> 1698 1699 <li>add a control sequence which reports xterm's version (patch 1700 by Nicholas Marriott, mintty #881).</li> 1701 1702 <li>temporarily set numeric locale category to "C" when parsing 1703 resources, so that <code>scaleHeight</code> and 1704 <code>faceSize</code> settings do not depend on locale (Debian 1705 #820803).</li> 1706 1707 <li>improve DA/DA2 response by ensuring that the 1708 <code>decTerminalID</code> maps to one of the known 1709 identifiers, as well as providing DA2 response for VT241 and 1710 VT382.</li> 1711 1712 <li>terminfo improvements: 1713 <ul> 1714 <li>add (my) comments from ncurses which explain the keypad 1715 layouts.</li> 1716 1717 <li>add <code>vt52+keypad</code> from ncurses</li> 1718 1719 <li>use improved <code>xm</code> example for 1720 <code>xterm+x11mouse</code>, <code>xterm+sm+1006</code> 1721 from ncurses 6.2 terminfo.src</li> 1722 </ul> 1723 </li> 1724 1725 <li>two fixes for left/right wheel mouse event reporting 1726 (Debian #954730): 1727 <ul> 1728 <li>filter identical button-events</li> 1729 1730 <li>correct order of button-range versus protocol type (see 1731 <a href="#xterm_345">patch #345</a>)</li> 1732 </ul> 1733 </li> 1734 1735 <li>change “make check” makefile-rule to use 1736 test-drivers for charclass and wcwidth data.</li> 1737 1738 <li>quiet “did not find a usable <em>xxx</em> TrueType 1739 font” warnings by making <code>fontWarnings</code> apply 1740 to these messages (report by Jim Rees).</li> 1741 1742 <li>improve reinitialization of parameter list (report/testcase 1743 by James Holderness).</li> 1744 1745 <li>temporarily set numeric locale category to "C" when 1746 formatting SVG or XHTML screendumps, to make the radix 1747 separator used in RGB values consistent (adapted from patch by 1748 George Kouryachy).</li> 1749 1750 <li>add resource <code>forceXftHeight</code> to control whether 1751 workaround from Debian #880407 is used.</li> 1752 1753 <li>apply updated ascent/descent in workaround from Debian 1754 #880407 to fix a 1-pixel gap in built-in vertical lines 1755 (report/testcase by Stefan Assmann).</li> 1756 1757 <li>improve round-off of scaling for built-in line-drawing 1758 (prompted by discussion with Stefan Assmann).</li> 1759 1760 <li>adjust fonts in svg-icon files to accommodate reduced 1761 functionality of new pango (report/analysis by YOKOTA 1762 Hiroshi).</li> 1763 1764 <li>improve configure check for X Toolkit library.</li> 1765 1766 <li>correct Y-coordinate transformation in 1767 <code>ClearCurBackground</code>, overlooked in changes for 1768 <a href="#xterm_334">patch #334</a> (report/analysis by Chuck 1769 Silvers).</li> 1770 1771 <li>remove <code>--vendor</code> option from test-packages' 1772 install of desktop files; the feature is badly broken in 1773 <em>gnome-shell</em>.</li> 1774 1775 <li>modify <code>uxterm</code> to make it possible to select 1776 nonstandard locale <em>C.UTF-8</em>, e.g, if the user's locale 1777 is set to “C” (Debian #940626).</li> 1778 1779 <li>re-save/tweak “.svg” icon-files to work around 1780 breakage in toolset since the files were created in <a href= 1781 "#xterm_283">patch #283</a>.</li> 1782 </ul> 1783 1784 <h1><a name="xterm_353" id="xterm_353">Patch #353 - 1785 2020/02/01</a></h1> 1786 1787 <ul> 1788 <li>amend change in <a href="#xterm_352">patch #352</a> for 1789 button-events to fix a case where some followup events were not 1790 processed soon enough (report/patch by Jimmy Aguilar 1791 Mena).</li> 1792 1793 <li>handle <em>MappingNotify</em> X event, to improve recovery 1794 when switching keyboard configurations using 1795 <code>xkbcomp</code> (prompted by discussion with Frank Mosch, 1796 Debian #661295). There is more work needed here, possibly in 1797 the X libraries.</li> 1798 1799 <li>improve discussion of mouse-mode in <code>ctlseqs.ms</code> 1800 (suggested by Igor van den Hoven).</li> 1801 1802 <li>further improve checks for Xft <em>max-advance-width</em> 1803 to take into account fonts which use two cells for ambiguous 1804 width characters. Also improve the time used for these checks 1805 (reports by Yuri Pankov, Frank Mosch).</li> 1806 1807 <li>fix a few spelling errors reported by codespell (report by 1808 Jens Schleusener).</li> 1809 1810 <li>modify <code>run-tic.sh</code> to prefer development 1811 version of ncurses since changes to terminfo file in <a href= 1812 "#xterm_345">patch #345</a> rely upon bug-fixes in ncurses 1813 (prompted by discussion with Will Senn).</li> 1814 </ul> 1815 1816 <h1><a name="xterm_352" id="xterm_352">Patch #352 - 1817 2020/01/16</a></h1> 1818 1819 <ul> 1820 <li>adjust fontsize data to handle a minor inconsistency from 1821 recent Xft versions (Debian #880407, adapted from patch by 1822 Vincent Lefèvre).</li> 1823 1824 <li>add a table to the manual page description of 1825 <code>forceBoxChars</code> to alert the reader to the special 1826 characters aside from “line-drawing” which are 1827 drawn directly when this resource is set (Debian #931305).</li> 1828 1829 <li>improve <code>checkXft</code> logic which attempts to 1830 detect fonts whose <em>max-advance-width</em> is inconsistent 1831 with the actual glyph widths. For some fonts, it is necessary 1832 to check additional characters (report/analysis by Jan 1833 Engelhardt).</li> 1834 1835 <li>improve configure-checks for X headers and libraries on 1836 recent MacOS, which has moved those files under 1837 <code>/usr/X11</code>.</li> 1838 1839 <li>improve portability of iconify/deiconify feature by taking 1840 into account some window managers which manipulate the EWMH 1841 <code>_NET_WM_STATE</code> property, adding/removing 1842 <code>_NET_WM_STATE_HIDDEN</code> rather than actually 1843 <em>minimizing</em> the window (prompted by discussion with 1844 Jörg Breitbart).</li> 1845 1846 <li>improve workaround from <a href="#xterm_287">patch #287</a> 1847 for the <code>-iconic</code> option when configured with 1848 toolbar by postponing the extra request for minimizing the 1849 window to the end of menu-initialization.</li> 1850 1851 <li>modify <code>xevents</code> special-case for mouse-events 1852 to include button-events so that the meta key by itself can 1853 generate button-events (report/analysis by Mattias 1854 Engdegård).</li> 1855 1856 <li>amend SGR-stack change from <a href="#xterm_348">patch 1857 #348</a> to not associate bold attribute with background color 1858 (report by Nicholas Marriott).</li> 1859 1860 <li>fix copy/paste error in manual page (patch by Larry 1861 Hynes).</li> 1862 1863 <li>add definitions in <code>xterm_io.h</code> so that GNU/Hurd 1864 will use <code>posix_openpty</code> (patch by Samuel 1865 Thibault).</li> 1866 1867 <li>build-fix in debug-tracing, for <code>esctest</code>.</li> 1868 1869 <li>updated autoconf macros</li> 1870 1871 <li>update config.guess</li> 1872 </ul> 1873 1874 <h1><a name="xterm_351" id="xterm_351">Patch #351 - 1875 2019/11/17</a></h1> 1876 1877 <ul> 1878 <li>correct logic in <code>property_to_string</code> for 1879 deciding when to fallback from UTF-8 decoding to ISO-8859-1 1880 decoding, broken in <a href="#xterm_350">xterm #350</a> 1881 (FreeBSD #241961).</li> 1882 1883 <li>add <code>-report-icons</code> to help-message.</li> 1884 1885 <li>improved autoconf macros: 1886 <ul> 1887 <li><code>CF_ADD_LIBS</code>: the change to filter out 1888 duplicates caused this to append rather than prepend. 1889 revise to fix that.</li> 1890 1891 <li><code>CF_GCC_VERSION</code> and 1892 <code>CF_GCC_WARNINGS</code>: move checks to distinguish 1893 icc/clang from gcc from the macro which handles the 1894 --enable-warnings option, to make this work 1895 without-warnings for the inline-checks.</li> 1896 </ul> 1897 </li> 1898 1899 <li>update config.guess, config.sub</li> 1900 1901 <li>correct status in <code>XTGETXRES</code> replies when the 1902 resource was not found.</li> 1903 1904 <li>fix some gcc, cppcheck, clang and coverity warnings.</li> 1905 1906 <li>guard call to <code>RequestResize</code> from the 1907 struct-notify event handler to prevent recursion in the 1908 Xft+buffered workaround in some cases when doing manual 1909 resizing rather than resizing via escape sequences (reports by 1910 Stefan Assmann, Mike Thornburg).</li> 1911 1912 <li>amend the workaround for Xft+buffered blanking by moving 1913 the switch to bitmap-fonts to account for differences in font 1914 metrics between bitmap- and TrueType-fonts (report by Stefan 1915 Assmann).</li> 1916 1917 <li>improve the note on the <code>xterm-rep</code> terminfo 1918 entry (prompted by discussion with Sven Joachim).</li> 1919 </ul> 1920 1921 <h1><a name="xterm_350" id="xterm_350">Patch #350 - 1922 2019/11/02</a></h1> 1923 1924 <ul> 1925 <li>modify html/svg dump to not ignore zero'd/blank cells.</li> 1926 1927 <li>align terminfo file with ncurses, e.g., add 1928 <code>xterm+osc104</code> block.</li> 1929 1930 <li>improve discussion of <code>modifyOtherKeys</code> in 1931 manual page and in <code>ctlseqs.ms</code>.</li> 1932 1933 <li>add <code>vttests/modify-keys.pl</code> script to 1934 illustrate the <code>modifyOtherKeys</code> resource (prompted 1935 by discussion with Bram Moolenaar).</li> 1936 1937 <li>various improvements to <code>ctlseqs.ms</code>, as part of 1938 autogenerating links for the website.</li> 1939 1940 <li>update manual page default for <code>saveLines</code> 1941 resource default value (Branden Robinson, Debian #913815).</li> 1942 1943 <li>add command-line option <code>-report-xres</code> to show 1944 the values of the VT100 widget X resources when initialization 1945 is complete.</li> 1946 1947 <li>add a control sequence which, like tcap-query, allows an 1948 application to inspect most X resource settings of the VT100 1949 widget.</li> 1950 1951 <li>adjust some optional features to enable them in the imake 1952 configuration as they would be by default via the configure 1953 script.</li> 1954 1955 <li>add null-pointer checks to improve error recovery when 1956 bitmap fonts are missing or corrupt (report by Jonne 1957 Ransijn).</li> 1958 1959 <li>correct the condition for deleting the EWMH window-title 1960 property, i.e., if UTF-8 titles are disabled, rather than if an 1961 update to the EWHM property found no change (report by Sven 1962 Joachim).</li> 1963 1964 <li>build-fix for the case when configure 1965 <code>--enable-trace</code> is used without 1966 <code>--enable-warnings</code> (report by Sven Joachim).</li> 1967 1968 <li>fix a few minor bugs found with Coverity.</li> 1969 1970 <li>add a check in <code>property_to_string</code> to avoid 1971 translating <code>UTF8_STRING</code> or 1972 <code>COMPOUND_TEXT</code> into Latin-1 when UTF-8 encoding is 1973 active, e.g., when pushing onto the title-stack while switching 1974 to the alternate screen.</li> 1975 1976 <li>build-fix for the <code>--disable-doublechars</code> 1977 configure option (report by Brian Lindholm).</li> 1978 </ul> 1979 1980 <h1><a name="xterm_349" id="xterm_349">Patch #349 - 1981 2019/09/22</a></h1> 1982 1983 <ul> 1984 <li>add graphic context to support bold+italics (patch by Quinn 1985 Strahl).</li> 1986 1987 <li>document window properties in the manual page.</li> 1988 1989 <li>improve title-string feature: 1990 <ul> 1991 <li>if any of <code>allowC1Printable</code>, 1992 <code>utf8Title</code> or <code>titleModes</code> hint that 1993 an application might send a title-string encoded in UTF-8, 1994 check if that is the case, and if it is recodable into 1995 ISO-8859-1, use that for the ICCCM-style title.</li> 1996 1997 <li>check if the title given by a control sequence happens 1998 to be already encoded in UTF-8, to avoid double-encoding 1999 (FreeBSD #240393).</li> 2000 2001 <li>Make <code>sameName</code> resource work for the EWMH 2002 titles.</li> 2003 2004 <li>Modify menu-state of <code>utf8Title</code> to be 2005 consistent with the <code>utf8</code> source, i.e., setting 2006 the EWMH properties automatically when UTF-8 is 2007 active.</li> 2008 </ul> 2009 </li> 2010 2011 <li>reorganize text-drawing to make it possible to investigate 2012 using Xft to implement VT100-style double-sized characters. 2013 While doing this, made a workaround for apparent Xft bug which 2014 loses its drawable state when switching from 132 to 80 2015 columns.</li> 2016 2017 <li>improve font-warning messages by showing which are 2018 <em>derived</em> rather than directly from resource settings 2019 (suggested by Tomas Korbar). Also filter repeated font-warning 2020 messages, to accommodate broken X configurations.</li> 2021 2022 <li>fix an inconsistency between failure to load derived wide 2023 font versus failure to load derived wide-bold font (Redhat 2024 #1679790). That relies upon the “:unscaled” 2025 property which is broken in some distributions (however, recent 2026 Debian and the BSDs such as MacOS work).</li> 2027 2028 <li>updated autoconf-252 to check X11R7 include/lib directories 2029 found on some older configurations.</li> 2030 2031 <li>set a graphic-context for border when double-buffering is 2032 active; to prevent the border color from changing when 2033 switching to reverse-video.</li> 2034 2035 <li>build-fix for <code>--disable-ziconbeep</code>, which 2036 conflicted with the new double-buffer configuration (report by 2037 Brian Lindholm).</li> 2038 2039 <li>fix loop-limit for lookup of <code>fullscreen</code> 2040 resource broken in <a href="#xterm_347">xterm #347</a> (report 2041 by Scott Bertilson).</li> 2042 </ul> 2043 2044 <h1><a name="xterm_348" id="xterm_348">Patch #348 - 2045 2019/07/22</a></h1> 2046 2047 <ul> 2048 <li>update window-manager hints when exiting Tek4014 mode 2049 (Debian #932569, patch by Jonathan Irwin).</li> 2050 2051 <li>fix a misformatted printf in 2052 <code>report-sgr.pl</code>.</li> 2053 2054 <li>add configure check for termios types, to improve 2055 compiler-warnings.</li> 2056 2057 <li>ensure that when resetting margins, to also reset 2058 <code>DECLRMM</code>. This affects <code>DECCOLM</code>, 2059 <code>DECALN</code> (although DEC STD 070 mentions only 2060 top/bottom margins), and <code>DECSTR</code>.</li> 2061 2062 <li>corrected order of reset/move when setting 2063 <code>DECCOLM</code>, and make it more consistent by always 2064 resetting margins, rather than only when the mode is changed 2065 (report by James Holderness).</li> 2066 2067 <li>compile-in double-buffer support by default, changing the 2068 configure option to set the default resource value for 2069 <code>buffered</code> to true or false.</li> 2070 2071 <li>take in account the reverse-video state when computing the 2072 filler-color used when clearing the screen in double-buffering 2073 configuration.</li> 2074 2075 <li>correct logic for filtering scrollbar-updates when 2076 <code>buffered</code> resource is compiled-in but not enabled 2077 (report by Paul Lampert).</li> 2078 2079 <li>improve state saved/restored for cursor-save and SGR stack 2080 features.</li> 2081 2082 <li>improve description of 1006 and 1005 mouse modes, to avoid 2083 implying that they use character-parameters (report by Bryan 2084 Christ).</li> 2085 2086 <li>explain in <code>ctlseqs.ms</code> that some of the numeric 2087 keypad keys were xterm extensions rather than VT100/VT220 2088 terminal features (prompted by discussion with Thomas 2089 Wolff).</li> 2090 2091 <li>explain in <code>ctlseqs.ms</code> how the DEC windowing 2092 extension is supported by xterm.</li> 2093 2094 <li>add 28 rectangular editing to the primary response 2095 (suggested by Thomas Wolff).</li> 2096 2097 <li>fix a typo, improve wording in <code>ctlseqs.ms</code> 2098 (Thomas Wolff).</li> 2099 2100 <li>fix internal column-parameter when <code>SL</code> or 2101 <code>SR</code> is used with left/right margins (patch by 2102 Thomas Wolff).</li> 2103 2104 <li>fix off-by-one in VT52 graphics character mapping (patch by 2105 Thomas Wolff).</li> 2106 2107 <li>use <code>_X_UNUSED</code>, etc., when available as a 2108 fallback for <code>GCC_UNUSED</code>, etc., to reduce compiler 2109 warnings when building with <code><em>imake</em></code>.</li> 2110 2111 <li>update config.sub</li> 2112 </ul> 2113 2114 <h1><a name="xterm_347" id="xterm_347">Patch #347 - 2115 2019/06/30</a></h1> 2116 2117 <ul> 2118 <li>fix a few minor bugs found with Coverity.</li> 2119 2120 <li>improve double-buffering for scrollbars combined with 2121 scrolled text; add <code>bufferedFPS</code> resource to control 2122 the maximum rate of screen updates (report by Mike 2123 Thornburg).</li> 2124 2125 <li>improve fixes for <code>DECCRA</code> handling of 2126 double-width characters (patch by Martin Hostettler).</li> 2127 2128 <li>improve discussion of ECMA-48's typographical error for 2129 <code>SD</code> in <code>ctlseqs.ms</code> (prompted by report 2130 by Martin Hostettler).</li> 2131 2132 <li>correct off-by-one in parameter limit-check for 2133 <code>DECCRA</code> (report by Martin Hostettler).</li> 2134 2135 <li>modify <code>saveCellData</code> to handle case where 2136 double-width character is partially copied; that should be 2137 blanked (report/testcase by Thomas Wolff).</li> 2138 2139 <li>add resource <code>buffered</code> to allow 2140 enabling/disabling double-buffered mode.</li> 2141 2142 <li>two fixes for the double-buffer configuration, prompted by 2143 MacPorts' switch to double-buffering (patch by Mike Thornburg, 2144 MacPorts #58313): 2145 <ul> 2146 <li>ensure that the needSwap flag is set after drawing 2147 TrueType text</li> 2148 2149 <li>corrected the drawable-parameter used for the 2150 bar-cursor</li> 2151 </ul> 2152 </li> 2153 2154 <li>modify <code>ScrnRefresh</code> to ignore a case where the 2155 left/right halves of a double-width character have been set to 2156 different video attributes. The attribute to use is in the 2157 left-half (report/testcase by Thomas Wolff).</li> 2158 2159 <li>correct a limit-check for <code>DECCRA</code> in case the 2160 target lies off-screen (report/testcase by Thomas Wolff).</li> 2161 2162 <li>documentation errata (report by Thomas Wolff).</li> 2163 2164 <li>reset flags including wraparound and reverse-wrap when 2165 switching to VT52 mode, while noting that DEC's standard 2166 documentation leaves that behavior <em>undefined</em> (report 2167 by Thomas Wolff).</li> 2168 2169 <li>ensure that italic font is turned off on hard/soft resets 2170 (report by Martin Hostettler).</li> 2171 2172 <li>improve responsiveness to X events while processing HTML or 2173 SVG dumps (report by Martin Hostettler).</li> 2174 2175 <li>replace logic in <code>wcwidth.c</code> for detecting 2176 double-width characters with binary-search table generated 2177 using updated <code>uniset</code> (report by Robert Ross).</li> 2178 2179 <li>add test-driver for <code>wcwidth.c</code> to simplify 2180 comparison with system's <code>wcwidth</code>.</li> 2181 2182 <li>ensure that window-manager name comparisons work when 2183 active-icon is enabled, since <code><em>CSI</em>13t</code> uses 2184 the window-manager name (report by Glenn Golden, Arch 2185 #62818).</li> 2186 2187 <li>trim a stray “experimental” in one of the 2188 comments about the tcap-query feature, which has been a 2189 supported feature since 2008 (see <a href="#xterm_238">patch 2190 #238</a>).</li> 2191 </ul> 2192 2193 <h1><a name="xterm_346" id="xterm_346">Patch #346 - 2194 2019/05/27</a></h1> 2195 2196 <ul> 2197 <li>update description of the “default” setting for 2198 the <code>renderFont</code> resource to match the behavior in 2199 <a href="#xterm_261">patch #261</a> (Debian #862042).</li> 2200 2201 <li>account for <code>internalBorder</code> in 2202 <code>useBorderClipping</code> (report by Robert Ross).</li> 2203 2204 <li>update table of unknown-width characters in wcwidth.c based 2205 on Unicode 12.1.0 (prompted by discussion with Robert 2206 Ross).</li> 2207 2208 <li>improve description of DECSCL versus S7C1T and S8C1T in 2209 <code>ctlseqs.ms</code>.</li> 2210 2211 <li>improve consistency between <code><em>CSI</em>3t</code> and 2212 <code><em>CSI</em>13t</code>, accounting for differences 2213 between some window managers' handling of EMWH extents (report 2214 by Bram Moolenaar).</li> 2215 2216 <li>fix a sign-extension when reporting offscreen window 2217 position (report by Bram Moolenaar).</li> 2218 </ul> 2219 2220 <h1><a name="xterm_345" id="xterm_345">Patch #345 - 2221 2019/05/14</a></h1> 2222 2223 <ul> 2224 <li>updated FreeBSD test-package from recent /usr/ports 2225 scripts.</li> 2226 2227 <li>workaround in <code>run-tic.sh</code> for HPUX, whose 2228 <code>mktemp</code> prints the name of a temporary directory 2229 without creating it.</li> 2230 2231 <li>add left/right margin capabilities to terminfo, since the 2232 default terminal emulation is VT420 (suggested by Thomas 2233 Wolff).</li> 2234 2235 <li>modify treatment of <code>reverseVideo</code> for dynamic 2236 colors to make text foreground/background consistent with the 2237 cursor color (prompted by discussion with Ben Wong, lsix 2238 #20).</li> 2239 2240 <li>modify button-handling to make SGR button-release distinct 2241 from button-press for button-codes starting with 8 (patch by 2242 Mikulas Patocka).</li> 2243 2244 <li>add aliases for the sgr push/pop controls to work around 2245 language limitations of C# (request by Dan Thompson).</li> 2246 2247 <li>correct a typo in <code>setDirectFG</code>, which could 2248 cause setting of indexed-color after a direct-color to be 2249 ignored.</li> 2250 2251 <li>add resource <code>useBorderClipping</code> as an 2252 alternative to <code>useClipping</code> (request by Robert 2253 Ross).</li> 2254 2255 <li>improve logic for displaying xterm's built-in line-drawing 2256 characters vs missing glyphs, e.g., for U+2409 to U+240D (patch 2257 by Robert Ross).</li> 2258 2259 <li>add <code>vttests/sgrPushPop2.pl</code> to illustrate how 2260 selective pushes work, as well as to demonstrate push/pop of 2261 the various color types supported by xterm.</li> 2262 2263 <li>fix a special case in <code>XTPOPSGR</code> where 2264 direct-colors were not checked as a dependency of 2265 indexed-colors, contrary to documentation.</li> 2266 2267 <li>reduce buffer-flushes for <code>OSC 4</code> and 2268 <code>OSC 5</code> color-queries, as well as in the 2269 queries for dynamic colors.<br> 2270 <strong>Note:</strong> this change makes the reply for 2271 <code>OSC 5</code> use the “5” in the 2272 response; formerly it was mapped to ”4” after 2273 adding the maximum number of colors.</li> 2274 2275 <li>modify <code>vttests/query-color.pl</code> to demonstrate 2276 multiple queries in one request.</li> 2277 2278 <li>update tables of combining and unknown-width characters in 2279 wcwidth.c based on Unicode 12.0.0.</li> 2280 2281 <li>modify response for <code>OSC 5</code> to be 2282 consistent with documentation.</li> 2283 2284 <li>add <code>vttests/query-dynamic.pl</code></li> 2285 2286 <li>modify <code>vttests/query-color.pl</code> to accept bold, 2287 underline, etc., keywords to decide whether to use 2288 <code>OSC 5</code> rather than 2289 <code>OSC 4</code>.</li> 2290 2291 <li>modify cursor coloring to avoid a case where the cursor 2292 matched the foreground color while the text was displayed in 2293 reverse-video (report by Nuno Silva).</li> 2294 2295 <li>fix an inconsistency in X10 mouse responses from <a href= 2296 "#xterm_342">patch #342</a> changes; the legacy protocol 2297 supports only buttons 1-3.</li> 2298 2299 <li>reduce the number of buffer-flushes for tcap-query 2300 batches.</li> 2301 2302 <li>modify <code>tcapquery.pl</code> to demonstrate batch 2303 queries with <code>-q</code> option.</li> 2304 2305 <li>increase response-buffer size, and make it configurable as 2306 <code>limitResponse</code> (prompted by discussion with Stephen 2307 P Wall).</li> 2308 2309 <li>modified configure script: 2310 <ul> 2311 <li>check/workaround for non-POSIX manipulation of 2312 predefined symbols</li> 2313 2314 <li>check for updated X Toolkit, which uses 2315 <code>const</code>.</li> 2316 </ul> 2317 </li> 2318 2319 <li>update config.guess, config.sub</li> 2320 2321 <li>provide for secondary-selection, overlooked in <a href= 2322 "#xterm_338">patch #338</a> (report by Emile LeBlanc).</li> 2323 2324 <li>documentation errata (patch by Larry Hynes).</li> 2325 2326 <li>improve pointer-checks in <code>Tekproc.c</code></li> 2327 2328 <li>revise solution for Debian #919475, to allow for 2329 struct-notify events occurring as a side-effect of toggling 2330 to/from full-screen mode.</li> 2331 2332 <li>window's border-size was incorrectly added to position when 2333 maximizing window (report by Gary Langshaw).</li> 2334 </ul> 2335 2336 <h1><a name="xterm_344" id="xterm_344">Patch #344 - 2337 2019/02/12</a></h1> 2338 2339 <ul> 2340 <li>add ASCII escape to default for 2341 <code>disallowedPasteControls</code> (prompted by discussion 2342 with Martin Hostettler).</li> 2343 2344 <li>fix typo in <code>ctlseqs.ms</code> (Robert Ross).</li> 2345 2346 <li>implement DEC Cyrillic NRCS (based on screenshots of vttest 2347 provided by Markus Schmidt).</li> 2348 2349 <li>correct control returning sixel geometry maximum versus 2350 actual size (patch by Ben Wong).</li> 2351 2352 <li>improve manual page for <code>resize</code> to clarify that 2353 <code>resize</code> does not execute the shell commands which 2354 it generates for setting environment variables.</li> 2355 2356 <li>improve memory-management for parser, to handle response 2357 strings that might occur with <code>ENQ</code> or when 2358 <code>SRM</code> mode is active (patch by Martin 2359 Hostettler).</li> 2360 2361 <li>change <code>Comment</code> text in uxterm's desktop file 2362 to work around a limitation of GNOME's GIO application 2363 (<a href="https://gitlab.gnome.org/GNOME/gnome-shell/issues/940#note_427334">issue 2364 #940</a>). The <a href= 2365 "https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-search"> 2366 documentation</a> reads: 2367 <blockquote> 2368 <p>Searches desktop files for ones that match 2369 <em><code>search_string</code></em>.</p> 2370 2371 <p>The return value is an array of <em>strv</em>s. Each 2372 <em>strv</em> contains a list of applications that matched 2373 search_string with an equal score. The outer list is sorted 2374 by score so that the first <em>strv</em> contains the 2375 best-matching applications, and so on. The algorithm for 2376 determining matches is undefined and may change at any 2377 time.</p> 2378 </blockquote> 2379 </li> 2380 2381 <li>a check of <code>zIconBeep</code> resource was removed in 2382 double-buffer fix in <a href="#xterm_334">patch #334</a>. That 2383 is used to decide whether to handle struct-notify events. When 2384 xterm does handle the events, it may negotiate a new 2385 window-size with the window manager. In that case, the 2386 <code>limitResize</code> resource setting limited the new 2387 window-size to the screen-size. Amended that by eliminating the 2388 limit for this special case when double-buffer is configured, 2389 and restoring the check for <code>zIconBeep</code> when 2390 double-buffer is not configured (Debian #919475).</li> 2391 2392 <li>disallow recursion which could happen if a user configures 2393 the <code>answerbackString</code> resource with the 2394 <code>ENQ</code> code and experiments with that code when 2395 <code>SRM</code> is enabled (report by by Martin 2396 Hostettler).</li> 2397 2398 <li>add remaining credits in <code>COPYING</code> file.</li> 2399 2400 <li>modify <code>run-tic.sh</code> to check if it is using an 2401 older version of ncurses which does not support large terminal 2402 descriptions, and if so, remove a non-essential feature to keep 2403 within the 4096-byte legacy limit.</li> 2404 </ul> 2405 2406 <h1><a name="xterm_343" id="xterm_343">Patch #343 - 2407 2019/01/13</a></h1> 2408 2409 <ul> 2410 <li>modify <code>run-tic.sh</code> to prefer ncurses6 over 2411 ncurses5, when available.</li> 2412 2413 <li>add <code>COPYING</code> file, and dummy "check" makefile 2414 rule for testing Arch packages.</li> 2415 2416 <li>add/update package scripts for FreeBSD and NetBSD, for 2417 testing.</li> 2418 2419 <li>update tables of combining and ambiguous-width characters 2420 in wcwidth.c based on Unicode 11.0.0.</li> 2421 2422 <li>modify <code>xterm-new</code> sample terminfo entry to 2423 correspond to ncurses 6.1, using the SGR 1006 mouse 2424 protocol.</li> 2425 2426 <li>improve manual page discussion of selection ownership 2427 versus highlighting (prompted by discussion with Martin 2428 Hostettler).</li> 2429 2430 <li>restore/repair <code>keepClipboard</code> feature which was 2431 broken by changes in <a href="#xterm_338">patch #338</a> 2432 (report by Martin Hostettler).</li> 2433 2434 <li>improve documentation for <code>deleteIsDEL</code> 2435 resource.</li> 2436 2437 <li>modify DECRQM response for private mode 1037 to account for 2438 cases where the resource <code>deleteIsDEL</code> is initially 2439 neither true nor false, but dependent upon the keyboard type 2440 (report/analysis by Martin Hostettler).</li> 2441 2442 <li>clear pointers for pattern/fontset after destroying their 2443 data when switching facename with an escape sequence (report by 2444 Robert Ross).</li> 2445 2446 <li>modify logic for TrueType fallback fonts to match the 2447 sort-order used by <code>fc-match</code> (report by Robert 2448 Ross).</li> 2449 2450 <li>add resource setting <code>limitFontsets</code> which can 2451 be used to limit or disable the new TrueType fontset feature 2452 (request by Robert Ross).</li> 2453 </ul> 2454 2455 <h1><a name="xterm_342" id="xterm_342">Patch #342 - 2456 2019/01/03</a></h1> 2457 2458 <ul> 2459 <li>limit mouse-button events to 11 buttons in the original 2460 protocol, and 15 in the extended mouse-protocol (patch by 2461 Martin Hostettler).</li> 2462 2463 <li>correct calculation for buttons past 11 in 2464 <code>mouse-codes</code> sample script (patch by Martin 2465 Hostettler).</li> 2466 2467 <li>disable a supplementary check added in <a href= 2468 "#xterm_341">patch #341</a> which interferes with using 2469 fontconfig to select different-sized bitmap fonts (Arch 2470 #61237).</li> 2471 </ul> 2472 2473 <h1><a name="xterm_341" id="xterm_341">Patch #341 - 2474 2018/12/24</a></h1> 2475 2476 <ul> 2477 <li>add options to <code>mouse-codes</code> script to 2478 demonstrate that the encoding used for mouse events limits 2479 button numbers to 11.</li> 2480 2481 <li>allow mouse button numbers up to 11 using an offset of 128 2482 for button numbers 8-11 rather than the offset of 64 used for 2483 wheel-mouse, etc., buttons 4-7 in <a href="#xterm_338">patch 2484 #338</a> (adapted from patch by Martin Hostettler).</li> 2485 2486 <li>correct off-by-one right-margin checks for double-width 2487 character adjustments in DECERA/DECFRA (patch by Martin 2488 Hostettler).</li> 2489 2490 <li>allocated size of selection buffer was not reset when 2491 freeing the buffer in <a href="#xterm_338">patch #338</a> 2492 (report/analysis by Stefan Assmann).</li> 2493 2494 <li>modify the initial pattern passed to fontconfig to disallow 2495 color bitmap fonts.</li> 2496 2497 <li>improve error recovery for a case where fontconfig ignores 2498 the requested pattern due to override in the user's font 2499 configuration (report/testcase by Stefan Assmann).</li> 2500 </ul> 2501 2502 <h1><a name="xterm_340" id="xterm_340">Patch #340 - 2503 2018/12/16</a></h1> 2504 2505 <ul> 2506 <li>suppress a spurious warning about fontsets when 2507 initializing menus for the toolbar configuration.</li> 2508 2509 <li>fix some strict compiler warnings.</li> 2510 2511 <li>improve checks for TrueType font, to help with the case of 2512 color bitmap fonts, which fontconfig misrepresents (Arch Linux 2513 #58706).</li> 2514 </ul> 2515 2516 <h1><a name="xterm_339" id="xterm_339">Patch #339 - 2517 2018/12/12</a></h1> 2518 2519 <ul> 2520 <li>modify <code>CF_GNU_SOURCE</code> macro to treat 2521 <em>newlib</em> as similar to <em>glibc</em>, fixing a problem 2522 with the configure checks for pseudoterminals in Cygwin 2523 overlooked in <a href="#xterm_334">patch #334</a> updates for 2524 configure-macros.</li> 2525 </ul> 2526 2527 <h1><a name="xterm_338" id="xterm_338">Patch #338 - 2528 2018/12/09</a></h1> 2529 2530 <ul> 2531 <li>ignore <code>$TERMINFO</code> in the configure script if it 2532 is set to a non-directory value.</li> 2533 2534 <li>updated configure macros: 2535 <ul> 2536 <li><code>CF_WITH_PCRE2</code>, modified to work with 2537 Debian's (mis-numbered) pcre3 package.</li> 2538 2539 <li><code>CF_CC_ENV_FLAGS</code> , report preprocessor 2540 options in <code>CFLAGS</code></li> 2541 2542 <li><code>CF_LD_RPATH_OPT</code> , suppress check if 2543 <code>--disable-rpath</code> option was given.</li> 2544 2545 <li><code>CF_XOPEN_SOURCE</code>, add case for 2546 midnightbsd</li> 2547 </ul> 2548 </li> 2549 2550 <li>update config.guess, config.sub</li> 2551 2552 <li>add a check to ensure that the filename parameter passed to 2553 <code>XpmReadFileToPixmap</code> is actually a file, since that 2554 function does not check (report by Ben Nott).</li> 2555 2556 <li>amend solution for Debian #758633 to ensure that replies 2557 for bracketed paste are not sent while processing a selection 2558 for <code>exec-formatted</code> (Debian #913237).</li> 2559 2560 <li>improve adjustments/clearing for double-width characters in 2561 <code>DECERA</code>, <code>DECFRA</code>, 2562 <code>DECSERA</code>.</li> 2563 2564 <li>improve adjustments/clearing for double-width characters 2565 when doing vertical scrolling within left/right margins (patch 2566 by Martin Hostettler).</li> 2567 2568 <li>modify wcwidth to encode a few spacing combining marks as 2569 regular combining characters.</li> 2570 2571 <li>change compiled-in default for <code>saveLines</code> to 2572 match the resource-file changed in <a href="#xterm_192">patch 2573 #192</a> (Debian #913815).</li> 2574 2575 <li>change default <code>faceSize</code> to 8.0, to simplify 2576 switching back/forth between bitmap fonts and TrueType. This 2577 was originally (mis)set to 14.0 in <a href="#xterm_148">patch 2578 #148</a>.</li> 2579 2580 <li>add fallback support in Xft configuration for missing 2581 glyphs (prompted by discussion with Mike Burns).</li> 2582 2583 <li>fix a problem with using direct-colors for the background 2584 color when clearing/scrolling (report by Nicholas 2585 Marriott).</li> 2586 2587 <li>add a "sources" rule for the makefile's generated 2588 source.</li> 2589 2590 <li>add a short explanation in <code>ctlseqs.ms</code> 2591 discussing the differences in error-recovery for malformed 2592 sequences versus unimplemented features, and amend one case for 2593 consistency (prompted by discussion with Martin 2594 Hostettler).</li> 2595 2596 <li>adjusted ifdef's so that the paste64 configure option does 2597 not automatically enable the readline-mouse configure 2598 option.</li> 2599 2600 <li>revert the change which prevented concurrent ownership of 2601 different selection targets, and instead modify selection 2602 storage so that different concurrent requests for different 2603 selection targets will be stored/retrieved independently 2604 (Debian #901249).</li> 2605 2606 <li>remove a check which prevented returning button-codes past 2607 the documented 4/5 for wheel mouse, and add a script 2608 <code>mouse-codes</code> which makes a report showing the 2609 various mouse codes for different button/modifier combinations 2610 (discussion with Přemysl Janouch).</li> 2611 2612 <li>improve display and checksum for DEC Special Graphics by 2613 mapping 0x5f to 0.</li> 2614 2615 <li>add a null-pointer check for table-ending in the 2616 extended-boolean resource-handling (report by Felix von 2617 Leitner).</li> 2618 2619 <li>remove stray <code>]</code>'s from INSTALL-file (Larry 2620 Hynes).</li> 2621 </ul> 2622 2623 <h1><a name="xterm_337" id="xterm_337">Patch #337 - 2624 2018/09/21</a></h1> 2625 2626 <ul> 2627 <li>regenerated configure script (report by Sven Joachim).</li> 2628 2629 <li>revise/improve fix for scrolling in margins 2630 (report/analysis by Martin Hostettler):</li> 2631 2632 <li>amend change to default-translations "select" subset to 2633 ensure that specific key-press actions are listed before 2634 generic key-press actions (reports by H Merijn Brand, Sven 2635 Joachim).</li> 2636 </ul> 2637 2638 <h1><a name="xterm_336" id="xterm_336">Patch #336 - 2639 2018/09/19</a></h1> 2640 2641 <ul> 2642 <li>ensure that only one of PRIMARY and CLIPBOARD is owned by 2643 xterm at a given time (Debian #901249).</li> 2644 2645 <li>documentation fixes (report by Lars Krueger): 2646 <ul> 2647 <li>document <code>SL</code> and <code>SR</code>.</li> 2648 2649 <li>document <code>DECRPTUI</code>, change number of digits 2650 to match VT420.</li> 2651 </ul> 2652 </li> 2653 2654 <li>revise <code>omitTranslation</code> resource, e.g., 2655 splitting “default” into several more useful 2656 categories.</li> 2657 2658 <li>modify mask-logic to permit <em>control-</em> and 2659 <em>meta-</em> modifiers to be used in mouse protocol.</li> 2660 2661 <li>several fixes for parsing/state (report/testcases by Martin 2662 Hostettler): 2663 <ul> 2664 <li>remove an old/unimplemented entry for xterm-title from 2665 state table.</li> 2666 2667 <li>save/restore wrap-flag when scrolling, to fix an 2668 inconsistency between jump-scrolling and 2669 normal-scrolling.</li> 2670 2671 <li>improve a special case of wrapping where the cursor 2672 starts beyond the right-margin, and wraps at the terminal's 2673 last-column before the settable-margins can take 2674 effect.</li> 2675 2676 <li>if origin mode is set, adjust a restored cursor column 2677 relative to the left margin.</li> 2678 2679 <li>when scrolling a line within left/right margins, 2680 correct order of the fixups needed when a double-width 2681 character crosses the margin boundary.</li> 2682 </ul> 2683 </li> 2684 2685 <li>review/fix a few cases where the parsing state was not 2686 reset after completing a control sequence (prompted by report 2687 by Martin Hostettler).</li> 2688 2689 <li>disallow <code>XTCHECKSUM</code> if the corresponding 2690 window-ops "SetChecksum" is unset.</li> 2691 2692 <li>add <code>print-vt-chars.pl</code> script to illustrate the 2693 NRCS and codepages supported by xterm.</li> 2694 2695 <li>add <code>other-sgr.sh</code> script to demonstrate the 2696 non-VT100 video attributes implemented in <a href= 2697 "#xterm_305">patch #305</a>, and added a summary of their 2698 introduction in ECMA-48 to the control sequences document.</li> 2699 2700 <li>add <code>tabs</code> and <code>-tabs</code> keywords to 2701 <code>ttyModes</code> resource to simplify workaround for 2702 terminal drivers which are not aware of UTF-8 (FreeBSD 2703 #229682).</li> 2704 2705 <li>add VT5xx NRCS 7-bit Turkish and DEC Turkish.</li> 2706 2707 <li>add VT5xx NRCS 7-bit Hebrew and DEC Hebrew.</li> 2708 2709 <li>add VT5xx NRCS 7-bit Greek and DEC Greek.</li> 2710 2711 <li>correct a few post-VT220 codepages to make them display 2712 without setting the NRCS state.</li> 2713 2714 <li>extend <code>vt100Graphics</code> resource to include other 2715 character-sets such as the VT500 codepages in UTF-8 mode.</li> 2716 2717 <li>add some VT5xx codepages to help with the discussion of 2718 96-character sets: <em>ISO Greek Supplemental</em>, <em>ISO 2719 Hebrew Supplemental</em>, <em>ISO Latin–5 2720 Supplemental</em>, and <em>ISO Latin–Cyrillic</em>.</li> 2721 2722 <li>improve description of the VT300-controls for designating 2723 character sets, and fix a typo which indicated that some were 2724 used for 94-character sets (prompted by discussion with Lars 2725 Krueger).</li> 2726 2727 <li>add private control <code>XTCHECKSUM</code> for modifying 2728 <code>checksumExtension</code>.</li> 2729 2730 <li>factor out xterm's <code>DECRQCRA</code> checksum 2731 extensions as a resource setting 2732 <code>checksumExtension</code>.</li> 2733 2734 <li>revise calculation of checksum for <code>DECRQCRA</code> to 2735 match DEC's terminals (using screenshots of vttest provided by 2736 Markus Schmidt).</li> 2737 2738 <li>restore a fix for memory-checksum setup of 2739 <code>DECCKSR</code> from <a href="#xterm_315">patch #315</a> 2740 incorrectly reverted in <a href="#xterm_334">patch #334</a> as 2741 part of fix for <code>DECRQCRA</code>.</li> 2742 </ul> 2743 2744 <h1><a name="xterm_335" id="xterm_335">Patch #335 - 2745 2018/08/14</a></h1> 2746 2747 <ul> 2748 <li>add <code>colorInnerBorder</code> resource to make a change 2749 from <a href="#xterm_334">patch #334</a> configurable (reports 2750 by H Merijn Brand, Gabriele Balducci).</li> 2751 </ul> 2752 2753 <h1><a name="xterm_334" id="xterm_334">Patch #334 - 2754 2018/08/12</a></h1> 2755 2756 <ul> 2757 <li>modify <code>Imakefile</code> to reflect the fact that 2758 NetBSD no longer has a working termcap emulation.</li> 2759 2760 <li>add resource-setting <code>validShells</code> which can be 2761 used to augment the system's <code>/etc/shell</code> (prompted 2762 by discussion with Paul Lampert).</li> 2763 2764 <li>stifle some useless warnings from lintian in 2765 test-packages.</li> 2766 2767 <li>add the ncurses extension “RGB” to the 2768 responses for the termcap-query feature.</li> 2769 2770 <li>improved getopts-handling in sample scripts.</li> 2771 2772 <li>fix some warnings from gcc8 and clang --analyze.</li> 2773 2774 <li>update note about incorrect documentation for 2775 <code>DECRQSS</code> to include VT525 (report by Markus 2776 Schmidt).</li> 2777 2778 <li>correct check for default-values in rectangular parsing; a 2779 zero counts as a missing or default parameter (report/testcase 2780 by Markus Schmidt).</li> 2781 2782 <li>correct some ranges in the <code>ambiguous[]</code> table 2783 in wcwidth (adapted from patch by KUGA Tsutomu).</li> 2784 2785 <li>fix a special case with faint video attribute incorrectly 2786 combined with default color.</li> 2787 2788 <li>add private control <code>XTREPORTSGR</code> for reporting 2789 video-attributes and color on a rectangle, and script 2790 <code>report-sgr.pl</code> to demonstrate it.</li> 2791 2792 <li>modify some of the markup in <code>ctlseqs.ms</code> to 2793 work around groff's reassignment of ASCII punctuation 2794 characters as documented in <em>groff_char(7)</em>.</li> 2795 2796 <li>treat ECMA-48 SGR 6 the same as SGR 5.</li> 2797 2798 <li>add private controls <code>XTPUSHSGR</code> and 2799 <code>XTPOPSGR</code> for saving/restoring the current 2800 video-attributes on a stack (adapted from patch by Dan 2801 Thompson).</li> 2802 2803 <li>modify <code>DECRPM</code> response for logging enable to 2804 indicate its state even when enabling/disabling it is not 2805 allowed.</li> 2806 2807 <li>implement <code>DECSNLS</code></li> 2808 2809 <li>implement <code>DECRSPS</code></li> 2810 2811 <li>improve fill-color for double-buffer configuration, which 2812 was sharing a graphic context with the cursor.</li> 2813 2814 <li>fix a couple of cases where double-sized VT100 characters 2815 were not clipped, seen in Joe Smith's <a href= 2816 "http://www.inwap.com/pdp10/#Tymnet">VT100 torture 2817 test</a>.</li> 2818 2819 <li>color the inner border using the same 2820 <code>borderColor</code> as the outer border, rather than 2821 filling with the VT100's default background.</li> 2822 2823 <li>change encoding of “THANKS” to UTF-8.</li> 2824 2825 <li>modify handling of <code>DECELR</code> to recognize 2826 <code>MotionNotify</code> events again, amending a check for 2827 <code>allowMouseOps</code> which limited that to button-events 2828 in <a href="#xterm_328">patch #328</a> (Olaf Rogalsky).</li> 2829 2830 <li>fix some screen-painting problems with left/right margins 2831 when using insert-line or delete-line (report/testcase by 2832 Martin Hostettler). also fix similar case with 2833 index/reverse-index.</li> 2834 2835 <li>several minor performance improvements using macros, e.g., 2836 inline checks for character width.</li> 2837 2838 <li>add <code>DECSCPP</code> and <code>DECSLPP</code> to 2839 <code>DECRQSS</code>.</li> 2840 2841 <li>implement <code>DECSCPP</code>.</li> 2842 2843 <li>implement <code>DECCIR</code> and <code>DECTABSR</code> 2844 presentation reports.</li> 2845 2846 <li>modify checksum computation for <code>DECRQCRA</code> to 2847 treat uninitialized cells as blanks rather than nulls.</li> 2848 2849 <li>drop custom-entity from HTML-dump, use UTF-8 for &nbsp; 2850 (Debian #902381).</li> 2851 2852 <li>modify display of non-BMP characters when using bitmap 2853 fonts to show a null/empty box rather than the replacement 2854 character which was used in cleanup changes for <a href= 2855 "#xterm_233">patch #233</a> (report by Christian 2856 Weisgerber).</li> 2857 2858 <li>when setting up clipping rectangle for Xft, allow for the 2859 case where xterm is only displaying a combining character, 2860 where the base was already written (report by Joshua 2861 Crowgey).</li> 2862 2863 <li>allow reset Xft's state if switching font-sizes when 2864 double-buffering is used.</li> 2865 2866 <li>fix repainting, e.g., on resize, when double-buffering is 2867 used with Xft (patch by Daniel Colascione).</li> 2868 2869 <li>correct some interchanged pairs of symbols in 2870 <code>unicode/keysym.map</code> (Brad Town).</li> 2871 2872 <li>improve configure macros CF_GCC_WARNINGS, CF_GNU_SOURCE, 2873 CF_POSIX_C_SOURCE, CF_TRY_XOPEN_SOURCE, CF_XOPEN_SOURCE, 2874 CF_X_ATHENA_CPPFLAGS.</li> 2875 2876 <li>modify <code>logFile</code> resource to interpret 2877 “<code>-</code>” as the standard output (adapted 2878 patch by Colum Paget).</li> 2879 2880 <li>improve documentation of Tek4014 menu options; fix a case 2881 where the Tek4014 window was not displayed before switching 2882 modes.</li> 2883 2884 <li>re-correct parameter for <em>pid</em> used for DECCKSR, 2885 DECRQCSR (see <a href="#xterm_315">xterm #315</a>).</li> 2886 2887 <li>hard/soft reset now resets the cursor-blinking state that 2888 may have been set via escape sequences; the cursor-blinking 2889 menu-entry feature is unmodified (report by Matthieu 2890 Herrb).</li> 2891 2892 <li>update config.guess, config.sub</li> 2893 </ul> 2894 2895 <h1><a name="xterm_333" id="xterm_333">Patch #333 - 2896 2018/05/03</a></h1> 2897 2898 <ul> 2899 <li>ensure that i18n is enabled if input-method is 2900 enabled.</li> 2901 2902 <li>modify logic for pre-edit to update spot-location while the 2903 cursor is invisible (Kakoune #1940).</li> 2904 2905 <li>change default icon to newer one, "mini.xterm".</li> 2906 2907 <li>install a complete set of icons, to simplify post-install 2908 customization.</li> 2909 2910 <li>add resource <code>disallowedPasteControls</code> to extend 2911 filtering of control characters from pastes.</li> 2912 2913 <li>add <code>print-on-error</code> action-hook, and document 2914 action-hooks for dump-html, dump-svg.</li> 2915 2916 <li>provide action-hook for <code>print-immediate</code>, which 2917 was available only as a menu-item (report by Rastislav 2918 Barlik).</li> 2919 2920 <li>continue to improve notes in <code>ctlseqs.ms</code> which 2921 mention where various controls originated.</li> 2922 2923 <li>add case to accept ECMA-48's bogus <code>SD</code>, but 2924 document the issue in <code>ctlseqs.ms</code>.</li> 2925 2926 <li>add control sequence for loading XPM-icon file, using the 2927 analogous control sequence from shelltool/dtterm.</li> 2928 2929 <li>add <code>-report-icons</code> option, to report on 2930 XPM-icon and title-bar updates.</li> 2931 2932 <li>correct a discrepancy between locator-reports for VT220 vs 2933 VT330.</li> 2934 2935 <li>add window-ops control sequences to complement existing 2936 ones for reporting window-position and text-area size with 2937 reports for text-area position and window-size.</li> 2938 2939 <li>display vt52 graphics mode characters.</li> 2940 2941 <li>correct case-statement for window-ops 10, overlooked since 2942 some window managers equate vertical-maximize and 2943 horizontal-maximize window hints with full-screen 2944 maximize.</li> 2945 </ul> 2946 2947 <h1><a name="xterm_332" id="xterm_332">Patch #332 - 2948 2018/04/15</a></h1> 2949 2950 <ul> 2951 <li>add a <code>GetChecksum</code> item to 2952 <code>disallowedWindowOps</code></li> 2953 2954 <li>improve notes in <code>ctlseqs.ms</code> which mention 2955 where various controls originated.</li> 2956 2957 <li>add control sequences for querying the X display size and 2958 the character size, both in pixels to help eliminate some of 2959 the constants in <code>esctest</code>.</li> 2960 2961 <li>fixes prompted by review of George Nachman's 2962 <code>esctest</code> script: 2963 <ul> 2964 <li>add a null-pointer check and a limit-check in 2965 <code>xtermCheckRect</code>.</li> 2966 2967 <li>correct limit-check for right-margin when processing 2968 autowrapping if xterm is not built for 2969 wide-characters.</li> 2970 2971 <li>repair logic in <code>RIS</code> to reset 132-column 2972 mode when an escape sequence is used to enable 2973 80/132-column switching.</li> 2974 2975 <li>correct array-limit for EWMH working state.</li> 2976 2977 <li>further improve limit-checks versus assert's (see 2978 <a href="#xterm_315">patch #315</a>).</li> 2979 2980 <li>correct order of check-margins and move-to-left margin 2981 for <code>DL</code> and <code>IL</code>.</li> 2982 2983 <li>modify reverse-wrap to pay attention to top/bottom 2984 margins as it has done for left/right margins since 2985 <a href="#xterm_279">patch #279</a>.</li> 2986 2987 <li>modify behavior of <code>DECFI</code> and 2988 <code>DECBI</code> to not index the screen at the 2989 left/right edge of the display unless those happen to be 2990 the left/right margins.</li> 2991 2992 <li>add case for VT320 DSR response for keyboard 2993 status.</li> 2994 </ul> 2995 </li> 2996 2997 <li>improve check for valid shell path using 2998 <code>getusershell</code> and <code>endusershell</code> if 2999 available, in case <code>/etc/shells</code> does not exist 3000 (suggested by Rainer Orth).</li> 3001 3002 <li>modified configure checks for groff and man2html, to use 3003 the latter by default, but allowing mandoc as a partial 3004 replacement for former.</li> 3005 3006 <li>revisited the inconsistent copyright notices mentioned in 3007 <a href="#xterm_165">patch #165</a>, and eliminate the issue as 3008 mentioned in this <a href= 3009 "https://invisible-island.net/personal/copyrights.html">copyright 3010 discussion</a>.</li> 3011 3012 <li>fix typo in this change-log (report by Sven Joachim)</li> 3013 3014 <li>update config.guess, config.sub</li> 3015 </ul> 3016 3017 <h1><a name="xterm_331" id="xterm_331">Patch #331 - 3018 2017/12/30</a></h1> 3019 3020 <ul> 3021 <li>add workaround for improper grayscale adjustments made in 3022 FreeType library, exposed by changes to rounding in 2.8.1, 3023 which shows up as a gap in line-drawing characters (Debian 3024 #880407).</li> 3025 3026 <li>improve a special case where a non-Unicode font's 3027 line-drawing characters were not used, when specifying it via 3028 the <code>utf8Fonts</code> resource, e.g., 3029 <blockquote> 3030 <pre> 3031 -fs 15 \ 3032 -xrm '*VT100.font:12x24' \ 3033 -xrm '*VT100.boldFont:12x24' \ 3034 -xrm '*VT100.utf8Fonts.font: 12x24' \ 3035 -xrm '*VT100.utf8Fonts.boldFont: 12x24' \ 3036</pre> 3037 </blockquote> 3038 </li> 3039 3040 <li>replace constant 10msec delay for next X event with new 3041 resource <code>nextEventDelay</code>, and reduce that to 1msec 3042 to accommodate faster machines than used when 3043 <code>-hold</code> was implemented in <a href= 3044 "#xterm_116">1999</a> (Debian #877628).</li> 3045 3046 <li>add <code>scroll-to</code> action, which simplifies binding 3047 a key to scroll to the beginning or end of the saved-lines 3048 (Debian #880120).</li> 3049 3050 <li>add building blocks for alternate screen and/or title-stack 3051 features in the <code>terminfo</code> file.</li> 3052 3053 <li>improve calculations for cell-data size.</li> 3054 3055 <li>change configure script to enable XHTML/SVG screen dumps by 3056 default.</li> 3057 3058 <li>change configure script to enable 256-colors by 3059 default.</li> 3060 3061 <li>update config.guess, config.sub</li> 3062 3063 <li>change configure script option for 3064 <code>--with-man2html</code> to use improved script by 3065 default.</li> 3066 3067 <li>add case for private mode 1044 in DECRQM, to report the 3068 keepClipboard resource setting and corresponding menu 3069 entry.</li> 3070 3071 <li>fix an inconsistency between private mode 12 (the AT&T 3072 610 cursor blink) and <code>DECSCUSR</code>: the former relied 3073 on having the <code>cursorBlink</code> resource set initially 3074 to enable the escape sequence, while the latter does not.</li> 3075 3076 <li>add private modes 13 and 14, as well as resource 3077 <code>cursorBlinkXOR</code> to allow better control over the 3078 cursor-blinking state (discussion with Bram Moolenaar).</li> 3079 3080 <li>modify the html and svg screen dumps to support direct 3081 color</li> 3082 3083 <li>modify media copy (screen-printing) to support the same SGR 3084 codes as <code>DECRQSS</code>, including 88/256 indexed color 3085 as well as direct color.</li> 3086 3087 <li>improve options-parsing for query-status.pl script.</li> 3088 3089 <li>modify parsing of <code>SGR</code> direct-color control 3090 making <em>color space identitier</em> optional. The 3091 corresponding <code>DECRQSS</code> reply always returns an 3092 empty (default) field for the identifier.</li> 3093 3094 <li>add wide-attributes to <code>DECRQSS</code> reply for 3095 <code>SGR</code>.</li> 3096 3097 <li>add private mode 1046 to help with scripting 3098 applications.</li> 3099 3100 <li>correct expression used for readline-flags in DECRQM; to 3101 test the current flag rather than information <em>stacked</em> 3102 within the same variable.</li> 3103 3104 <li>correct typo in <code>ctlseqs.ms</code> reference to 3105 ISO-8613-6 (patch by Mike Frysinger).</li> 3106 3107 <li>fix lintian warning for test-package.</li> 3108 3109 <li>fix typo in <code>DECRQSS</code> for <code>SGR</code> 48, 3110 which printed the foreground value for colors past 15. Also use 3111 colon delimiter for codes 38/48 in response (report by Paul 3112 LeoNerd Evans).</li> 3113 3114 <li>improve workaround for Debian #542434 by using the font's 3115 maximum width when no ISO-8859-1 glyphs are provided (Debian 3116 #879936).</li> 3117 3118 <li>work around a special case of <em>Xft</em>'s mismanagement 3119 of its cached data by adding a check before the 3120 <code>-report-fonts</code> option to ensure that it does not 3121 use an <code>XftPattern</code> which may have been freed during 3122 a call to <code>XftFontOpenPattern</code>.</li> 3123 3124 <li>improve manual page description of <code>regex</code> 3125 option for <code>on<em>X</em>Clicks</code> resources (report by 3126 Lukas Mai).</li> 3127 3128 <li>add <code>directColor</code> resource.</li> 3129 3130 <li>additional manpage macro cleanup (Branden Robinson, Debian 3131 #880551).</li> 3132 3133 <li>add optional support for direct-colors (adapted from patch 3134 by anonymous “Nibby Nebbulous”).</li> 3135 3136 <li>improve legacy/NRC character set mapping (patch by Thomas 3137 Wolff), e.g., 3138 <ul> 3139 <li>enable alternate NRC set designators for French and 3140 French Canadian, ‘9’ and ‘f’ 3141 respectively, as documented in ctlseqs. (‘9’ is 3142 documented for VT510, ‘f’ is a Kermit 3143 feature).</li> 3144 3145 <li>correct the Unicode value in the <em>DEC Technical</em> 3146 table to show capital delta.</li> 3147 3148 <li>referring to 3149 <blockquote> 3150 <p><a href= 3151 "http://vt100.net/docs/vt220-rm/table2-3b.html">http://vt100.net/docs/vt220-rm/table2-3b.html</a><br> 3152 3153 <a href= 3154 "http://vt100.net/docs/vt320-uu/appendixe.html">http://vt100.net/docs/vt320-uu/appendixe.html</a></p> 3155 </blockquote> 3156 3157 <p>add entries for the <em>DEC Supplemental Graphics</em> 3158 table to display 0x28/0xa8 as ¤ and 0x5d/0xdd as 3159 Ÿ.</p> 3160 </li> 3161 3162 <li>referring to 3163 <blockquote> 3164 <p><a href= 3165 "http://www.vt100.net/charsets/technical.html">http://www.vt100.net/charsets/technical.html</a></p> 3166 </blockquote> 3167 3168 <p>alter the Unicode values used for 0x2b through 0x2c to 3169 use <em>curly braces</em> to work with the 3170 “middle” parts displayed with 0x2f and 3171 0x30.</p> 3172 </li> 3173 3174 <li>modify the VT220 “Supplemental” table, 3175 giving a hint that it was probably meant to be 3176 “Supplemental Graphics” and is the same as 3177 VT320's table.</li> 3178 </ul> 3179 </li> 3180 3181 <li>quiet a few font-warnings when a derived fontname cannot be 3182 opened, overlooked in refactoring of font resources in <a href= 3183 "#xterm_328">patch #328</a> (initially reported on <a href= 3184 "https://cygwin.com/ml/cygwin/2017-06/msg00255.html">Cygwin 3185 mailing list</a>, with <a href= 3186 "https://cygwin.com/ml/cygwin/2017-07/msg00216.html">followup</a>).</li> 3187 3188 <li>correct error response for <code>DECRQSS</code> broken in 3189 cleanup of Coverity reports in <a href="#xterm_288">patch 3190 #288</a> (reports by Bram Moolenaar and IWAMOTO Kouichi).</li> 3191 3192 <li>improve <code>DECRPM</code> responses by returning <em>mode 3193 not recognized</em> for modes which may not be settable due to 3194 the selected <code>decTerminalID</code> resource (report by 3195 IWAMOTO Kouichi).</li> 3196 3197 <li>correct logic for <code>print-immediate</code> action, and 3198 enable corresponding menu entry (patch by Lauri 3199 Tirkkonen).</li> 3200 3201 <li>add configure option <code>--with-pcre2</code> (patch by 3202 David Michael).</li> 3203 3204 <li>fix a misspelled subsection title in ctlseqs.ms and add a 3205 note regarding blink which was rendered as bold in X11R6. 3206 Blinking text was implemented in <a href="#xterm_60">Patch 3207 #60</a>.</li> 3208 3209 <li>fix typos in <code>xterm.man</code> (patches by Sven 3210 Joachim, Larry Hynes).</li> 3211 3212 <li>fix typography in <code>xterm.man</code> (patch by Bjarni 3213 Ingi Gislason, Debian #869248).</li> 3214 3215 <li>fix typo in <code>INSTALL</code> (Larry Hynes).</li> 3216 3217 <li>add <code>xterm-direct</code> terminal description based on 3218 changes introduced in <a href="#xterm_277">patch #277</a>, and 3219 relying upon ncurses <code><strong>RGB</strong></code> 3220 extension.</li> 3221 3222 <li>modify <code>xterm-new</code> terminal description to use 3223 ECMA-48 <code>REP</code>, reflecting its use in xterm since 3224 <a href="#xterm_32">patch #32</a> (1996).</li> 3225 3226 <li>clarify comment in ctlseqs.ms regarding blink: it has been 3227 part of xterm since <a href="#xterm_60">patch #60</a> 3228 (1998).</li> 3229 3230 <li>update ftp URLs in documentation.</li> 3231 </ul> 3232 3233 <h1><a name="xterm_330" id="xterm_330">Patch #330 - 3234 2017/06/20</a></h1> 3235 3236 <ul> 3237 <li>updates for ReGIS (Ross Combs): 3238 <ul> 3239 <li>remove redundant text command error check which broke 3240 <code>T(B)</code> and <code>T(E)</code>.</li> 3241 3242 <li>retain the loading alphabet number across multiple 3243 “L” commands.</li> 3244 3245 <li>add <code>S(T)</code> delay handler.</li> 3246 3247 <li>fix some color handling error messages.</li> 3248 3249 <li>add stubbed-out macrograph handling.</li> 3250 3251 <li>use <code>fragment_remaining()</code> and 3252 <code>fragment_consumed()</code> instead of manually 3253 checking position / length in various places.</li> 3254 3255 <li>rename some local variables in string / extent / option 3256 parsing</li> 3257 3258 <li>wrap some long lines.</li> 3259 3260 <li>move macrograph command handling out of the 3261 top-level.</li> 3262 </ul> 3263 </li> 3264 3265 <li>add a summary of the italic fonts loaded to 3266 <code>-report-fonts</code> option.</li> 3267 3268 <li>modify the font-lookup for italics to allow for 3269 “<code>-i-</code>” if no match is found with slant 3270 “<code>-o-</code>” (prompted by patch by Ben 3271 Wong).</li> 3272 3273 <li>change default values for <code>mkSamplePass</code> and 3274 <code>mkSampleSize</code> to reflect generally-improved locale 3275 support in various operating systems (FreeBSD #219800).</li> 3276 3277 <li>modify <code>wcwidth.c</code> to return -1 for non-Unicode 3278 values, and adjust a couple of blocks to better match 3279 assumptions about ambiguous-width characters in other 3280 implementations. Also modify <code>wcwidth.c</code> to support 3281 configurable soft-hyphen, so there is no drawback to using this 3282 version rather than a system <code>wcwidth</code>.</li> 3283 3284 <li>amend change made in <a href="#xterm_328">patch #328</a> 3285 for cursor-visibility to handle case where an application is 3286 updating the reverse-video state (FreeBSD #219800).</li> 3287 3288 <li>update tables of combining and ambiguous-width characters 3289 in wcwidth.c based on Unicode 10.0.0.</li> 3290 3291 <li>build-fix for <code>--enable-sixel-graphics</code> without 3292 <code>--enable-regis-graphics</code> (reports by Sven Joachim, 3293 FreeBSD #219945).</li> 3294 </ul> 3295 3296 <h1><a name="xterm_329" id="xterm_329">Patch #329 - 3297 2017/06/12</a></h1> 3298 3299 <ul> 3300 <li>add control sequences for reading the Sixel and ReGIS 3301 graphics sizes (suggested by Ben Wong).</li> 3302 3303 <li>add a workaround for <code>wcwidth</code> returning -1 for 3304 characters which should have been printable (FreeBSD 3305 #219800).</li> 3306 3307 <li>fix a bug in font initialization from <a href= 3308 "#xterm_328">patch #328</a> (FreeBSD #219800).</li> 3309 3310 <li>fix a special case in <code>HideCursor</code> which 3311 assigned a bold font to the slot used for normal font in 3312 changes for italics in <a href="#xterm_307">patch #307</a> 3313 (Debian #858304).</li> 3314 3315 <li>updates for ReGIS (Ross Combs): 3316 <ul> 3317 <li>Strings specified with no command are used as 3318 "comments". Print these in the log when tracing.</li> 3319 3320 <li>Catch attempts to use "alternate display" mode (AKA 3321 "blink") from the GIGI, but do not implement it.</li> 3322 3323 <li>The <code>T(M)</code> command should only multiply the 3324 height by 10, not 20.</li> 3325 3326 <li>Make the <code>S(E)</code> command reset more state 3327 than just the screen contents.</li> 3328 3329 <li>Remove two rotation variables which were only being 3330 printed.</li> 3331 3332 <li>Numerous minor fixes and comment updates in the 3333 <code>R</code> command.</li> 3334 3335 <li>Unknown <code>R</code> command option names trigger an 3336 empty response.</li> 3337 3338 <li>Fix the output position after printing rotated text (it 3339 was missing the the sign before).</li> 3340 3341 <li>Fix the position change with pixelvectors and rotated 3342 text (the rotation transform was not being applied).</li> 3343 3344 <li>Update the <em>TODO</em> list and remove a verification 3345 <em>FIXME</em> (slanted text positioning is correct as 3346 is).</li> 3347 3348 <li>Emulate the approximately 1.4x enlargement for text 3349 which isn't rotated at right angles.</li> 3350 3351 <li>Only update the color planes specified in the plane 3352 mask (the <code>W</code> command's <code>F</code> 3353 option).</li> 3354 </ul> 3355 </li> 3356 3357 <li>fix a bug introduced by the changes to font information in 3358 <a href="#xterm_328">patch #328</a>. When processing the 3359 "checkfont" option of the <code>locale</code> resource, the 3360 program referred to the <em>request</em> data, to an array 3361 which was only allocated in the <em>new/result</em> widget 3362 (report by H Merijn Brand).</li> 3363 3364 <li>fix a missing assignment initialization to make the 3365 <code>utf8</code> resource control whether escape sequences to 3366 enable/disable UTF-8 mode are allowed.</li> 3367 </ul> 3368 3369 <h1><a name="xterm_328" id="xterm_328">Patch #328 - 3370 2017/06/01</a></h1> 3371 3372 <ul> 3373 <li>revise parser for <code>charClass</code> resource, making 3374 these improvements: 3375 <ul> 3376 <li>accept octal and hexadecimal values</li> 3377 3378 <li>allow embedded whitespace</li> 3379 3380 <li>allow the class after colon to be optional, e.g., to 3381 clear class settings for a range of characters.</li> 3382 </ul> 3383 </li> 3384 3385 <li>add command-line option 3386 <code>-report-charclass</code>.</li> 3387 3388 <li>fix most lintian warnings about test-package</li> 3389 3390 <li>add <code>eraseSavedLines</code> resource.</li> 3391 3392 <li>document <code>DECSED 3</code> in 3393 <code>ctlseqs.ms</code> (report by Ben Longmans).</li> 3394 3395 <li>improve integration between configure-events and updates 3396 for reported screensize, in particular when switching between 3397 vt100 and tek4014 modes.</li> 3398 3399 <li>modify selection-highlighting of reverse-video text to keep 3400 that distinct, e.g., by reversing the selection foreground and 3401 background colors as one would expect. This fixes a "useless" 3402 case in the description of 3403 <code>highlightColorMode</code>.</li> 3404 3405 <li>improve fix for Debian #759734, addressing a case where 3406 non-colored cursor would be invisible against reverse-video 3407 (see <a href="#xterm_311">patch #311</a>).</li> 3408 3409 <li>updates for ReGIS (Ross Combs): 3410 <ul> 3411 <li>the "H" option of the "T" command should multiply by 3412 10, not 20.</li> 3413 3414 <li>display unknown glyphs as a solid block.</li> 3415 3416 <li>given a succession of text-direction options, use the 3417 last.</li> 3418 3419 <li>fix the direction of ReGIS slanted text so that 3420 negative values produce oblique output .</li> 3421 3422 <li>fix the ReGIS text direction option to only rotate 3423 characters when no following size option is used.</li> 3424 </ul> 3425 </li> 3426 3427 <li>update terminfo to better match corresponding entries in 3428 ncurses, e.g., <code>u8</code> pattern to match the VT220, 3429 VT420, etc., primary responses, as well as adding 3430 <code>smxx</code> and <code>rmxx</code>.</li> 3431 3432 <li>fixes from Jörg Sommer: 3433 <ul> 3434 <li>corrected a trace-message regarding maximum 3435 graphics-size; it used the similar ReGIS maximum size which 3436 might not be configured.</li> 3437 3438 <li>in <code>do_select_regex</code>, clear selection if 3439 there is no match. If the regex does not match anything 3440 around the cursor, the selection returned must be empty, 3441 otherwise the whole line is treated as a match. This way 3442 the command defined by <code>exec-selectable</code> will 3443 not be executed if there is no match.</li> 3444 3445 <li>modify limit in <code>do_select_regex</code> to include 3446 the character at the cursor in the match, making it easier 3447 to type something and then hit the key to trigger 3448 <code>exec-selectable</code>.</li> 3449 3450 <li>If <code>exec-selectable</code> or 3451 <code>insert-selection</code> is triggered by a mouse 3452 button click, the position of the mouse pointer should be 3453 used. This makes it easier to address any position on the 3454 window and it makes it possible to use the mouse, e.g., for 3455 applications such as mutt where you cannot move the 3456 cursor.</li> 3457 </ul> 3458 </li> 3459 3460 <li>modify <code>DECRC</code> to save/restore xterm's 3461 last-column flag used to control wrapping behavior rather than 3462 manipulating <code>DECAWM</code> (report/analysis by Mattias 3463 Engdegård).</li> 3464 3465 <li>add configure option <code>--enable-terminfo-env</code> to 3466 use the value set by <code>--with-own-terminfo</code> for the 3467 <code>$TERMINFO</code> environment variable. That variable was 3468 set automatically for HPUX, but would be useful in other 3469 systems, e.g., for Solaris (request by Jeff Wieland).</li> 3470 3471 <li>fix a race condition when setting up a signal handler to 3472 timeout if opening <code>/dev/tty</code> hangs (patch by Tobias 3473 Stoeckmann).</li> 3474 3475 <li>review/cleanup resources which were not in the manual page 3476 (report by Maxwell Anselm): 3477 <ul> 3478 <li>add manual page description as needed.</li> 3479 3480 <li>drop resource name for <code>menuBar</code>, as 3481 unnecessary.</li> 3482 3483 <li>modify fallback numeric value for 3484 <code>regisScreenSize</code> resource to match that for 3485 <code>maxGraphicSize</code>.</li> 3486 </ul> 3487 </li> 3488 3489 <li>updated configure macros <code>CF_ADD_CFLAGS</code>, 3490 <code>CF_CC_ENV_FLAGS</code>, <code>CF_GNU_SOURCE</code>, 3491 <code>CF_MATH_LIB</code>, and <code>CF_XOPEN_SOURCE</code> from 3492 other program-changes.</li> 3493 3494 <li>update config.guess, config.sub</li> 3495 3496 <li>change “maximum screensize” assumed by 3497 <code>resize</code> to 9999x9999, to accommodate people using 3498 the <em><code>Unreadable</code></em> font.</li> 3499 3500 <li>drop <code>Utility</code> from default value of 3501 <code>--with-desktop-category</code> (Debian #780176).</li> 3502 3503 <li>widen the configure script pattern used for finding related 3504 ".desktop" files, including “Terminal”</li> 3505 3506 <li>several minor improvements to font utility functions: 3507 <ul> 3508 <li>provide for later modification to implement font-sets 3509 by parsing the font resources as comma-separated 3510 lists.</li> 3511 3512 <li>parse <code>-fn</code> and <code>-fa</code> similarly, 3513 using “x:” and “xft:” prefixes for 3514 font name/family strings to distinguish between XLFD and 3515 Xft font specifications.</li> 3516 3517 <li>use loops to iterate over font classes</li> 3518 3519 <li>use getters/setters for font data to allow for 3520 on-demand lookups.</li> 3521 3522 <li>make the debugging trace for missing glyph less verbose 3523 since that interferes with the <code>-report-fonts</code> 3524 option.</li> 3525 3526 <li>refactor <code>xtermLoadFont</code> to make it clearer 3527 how some fonts are derived from others, e.g., bold, 3528 wide.</li> 3529 3530 <li>make the triggering and suppressing of font-warnings 3531 more consistent by storing the last state in the 3532 widget.</li> 3533 3534 <li>reduce font-warnings by checking for repeated 3535 warnings.</li> 3536 </ul> 3537 </li> 3538 3539 <li>add <code>vttests/query-status.pl</code></li> 3540 3541 <li>add <code>vttests/closest-rgb</code></li> 3542 3543 <li>add special case for displaying soft-hyphen if it happens 3544 to fall at the right margin, and omitting similar case such as 3545 the BIDI markers, where a zero-width character is neither a 3546 control character nor a combining character (Debian 3547 #844325).</li> 3548 3549 <li>modify logic for <code>OSC 52</code>, <em>manipulate 3550 selection data</em>, to update the selection-time to include 3551 the latest X events. This fixes some cases where the selection 3552 was invalid, e.g., after an event due to focus-follows-mouse 3553 (report/testcase by Stephane Chauveau).</li> 3554 3555 <li>revise macro <code>CastMallocN</code> as new macro 3556 <code>TextAlloc</code> to make explicit use of 3557 <code>sizeof(char)</code> (prompted by patch by Cade 3558 Foster).</li> 3559 3560 <li>add <em>“Mouse Ops”</em> menu entry and related 3561 resources to allow runtime disabling/enabling of the mouse 3562 protocol escape sequences (discussion with Bob Proulx).</li> 3563 3564 <li>improve discussion of mouse actions versus protocol in the 3565 manual (discussion with Bob Proulx).</li> 3566 3567 <li>improve discussion of environment variables in the manual, 3568 pointing out where some features (such as termcap and the 3569 System5 <code>COLUMNS</code> and <code>LINES</code> variables) 3570 are used rarely, mainly to support legacy applications.</li> 3571 3572 <li>add examples of <code>translations</code> resource for 3573 select/paste, and for font-size changes to the manual.</li> 3574 3575 <li>minor reordering of some entries in <code>ctlseqs.ms</code> 3576 for consistency (report by Arran Ubels).</li> 3577 3578 <li>add <code>-s</code> option to <code>256colors2.pl</code> 3579 and <code>88colors2.pl</code>, to demonstrate modifying the 3580 “system” colors 0–15.</li> 3581 3582 <li>omit <code>XFT_SPACING</code> property from call to <code> 3583 XftPatternBuild</code>, to work around a bug in 3584 <em>fontconfig</em> for handling Google Go fonts, whose names 3585 sort in an order not expected by <em>fontconfig</em>, causing 3586 the request for a monospaced font to return <em>italics</em>, 3587 e.g., 3588 <blockquote> 3589 <pre> 3590$ fc-match 'Go Mono:spacing=monospace' 3591Go-Mono-Italic.ttf: "Go Mono" "Italic" 3592(report by Giacomo Boffi on <a href= 3593"http://unix.stackexchange.com/questions/324941/xterm-displays-an-italic-face-instead-of-regular">Stackoverflow</a>). 3594 3595</pre> 3596 </blockquote> 3597 </li> 3598 3599 <li>modify <code>minstall.in</code> to improve a workaround 3600 added to the manual page in <a href="#xterm_182">patch #182</a> 3601 to avoid having the C preprocessor used in the imake 3602 configuration strip out the comments in the character classes 3603 section (reports by Ted Unangst, Anthony J Bentley).</li> 3604 </ul> 3605 3606 <h1><a name="xterm_327" id="xterm_327">Patch #327 - 3607 2016/10/07</a></h1> 3608 3609 <ul> 3610 <li>add a check in the function which handles end-of-line 3611 wrapping to ensure that C1 controls are allocated one column 3612 when <code>allowC1Printable</code> is set (Debian 3613 #738794).</li> 3614 3615 <li>use consistent error-checking after <code>strtol</code> 3616 calls, fixes a case where a query with OSC 6 did not ensure 3617 there was a valid color number (report by Alex Smith).</li> 3618 3619 <li>add <code>-baudrate</code> option, for testing 3620 ncurses.</li> 3621 3622 <li>always generate the <code>CASE_<em>xxx</em></code> symbols 3623 in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part 3624 of a change to improve debug-logging. This makes the build 3625 always depend upon <code>awk</code>.</li> 3626 3627 <li>modify <code>allowC1Printable</code> to disallow codes 3628 160-254 as being equivalent to codes 32-126 when parsing escape 3629 sequences (Debian #839220).</li> 3630 3631 <li>amend fix from <a href="#xterm_326">patch #326</a> for 3632 TrueType fonts to exclude the hidden character used for 3633 double-width cells (report by Grady Martin).</li> 3634 3635 <li>fix a typo in <code>ctlseqs.ms</code></li> 3636 </ul> 3637 3638 <h1><a name="xterm_326" id="xterm_326">Patch #326 - 3639 2016/09/25</a></h1> 3640 3641 <ul> 3642 <li>updated appdata file (report by Richard Hughes).</li> 3643 3644 <li>improve discussion of the different terminal emulations 3645 provided by xterm in the manual page.</li> 3646 3647 <li>add examples of setting the icon title with/without the 3648 window title in the manual (Debian #833984).</li> 3649 3650 <li>correct a limit-check when using a numeric value for 3651 extended Booleans e.g., <code>*fullscreen:3</code> rather than 3652 a name such as <code>*fullscreen:never</code>.</li> 3653 3654 <li>add action <code>allow-bold-fonts</code></li> 3655 3656 <li>improved formatting fixes for manual page, using script to 3657 find mismatches in spelling of resources, actions and menu 3658 entries.</li> 3659 3660 <li>improve documentation of logging resources.</li> 3661 3662 <li>fix a special case of flickering cursor by adding 3663 <code>GraphicsExpose</code> to the list of event types that 3664 should not trigger making the mouse cursor visible (patch by 3665 Joe Peterson).</li> 3666 3667 <li>correct initialization of line-drawing in VT52-mode, 3668 overlooked in changes for <a href="#xterm_297">patch #297</a> 3669 (report/patch by Ben Wiley Sittler).</li> 3670 3671 <li>minor clarification of form-feed versus line-feed in 3672 <code>ctlseqs.ms</code> (suggested by David Kemper).</li> 3673 3674 <li>amend fix for Debian #738794 to restore a check for missing 3675 characters which are <em>not</em> combining characters. Also 3676 fill in a corresponding special case for TrueType fonts (Debian 3677 #827905).</li> 3678 </ul> 3679 3680 <h1><a name="xterm_325" id="xterm_325">Patch #325 - 3681 2016/06/05</a></h1> 3682 3683 <ul> 3684 <li>improve manual page discussion of function keys (discussion 3685 with Ross Combs).</li> 3686 3687 <li>further improve fix for Debian #545220 in <a href= 3688 "#xterm_248">patch #248</a>, to avoid conflict with combining 3689 characters (Debian #738794).</li> 3690 3691 <li>improve <code>-hold</code> option to avoid 100% CPU usage 3692 with NetBSD after closing the shell, which makes subsequent 3693 checks for X input events fail (prompted by patch by Pierre 3694 Pronchery).</li> 3695 3696 <li>review <code>#ifdef</code> statements, listed those which 3697 do not have a configure option in 3698 <code>xtermcfg.hin</code>.</li> 3699 3700 <li>fixed one case where the menu sensistivity for 3701 <em>Print-All Immediately</em> and <em>Print-All on Error</em> 3702 was not properly ifdef'd.</li> 3703 3704 <li>modify terminfo entries for 16-, 88- and 256-color to reset 3705 palette with <code>rs1</code> capability.</li> 3706 3707 <li>accept <code>legacy</code> value of <code>-kt</code> as 3708 synonym for the <code>oldXtermFKeys</code> resource, and extend 3709 the full-reset logic to use the keyboard type set via 3710 <code>-kt</code>.</li> 3711 3712 <li>modify <code>ioctl</code> calls for <code>I_PUSH</code> to 3713 first check if the module has been added, using 3714 <code>I_FIND</code>. This is needed for newer Solaris libraries 3715 with c11 support (adapted from patch by Alan Coopersmith).</li> 3716 3717 <li>add check in <code>getXtermCombining</code> to ensure that 3718 combining characters were allocated (report by Tor 3719 Andersson).</li> 3720 3721 <li>add configure option <code>--without-xinerama</code> to 3722 allow suppressing the extension (Gentoo #580936).</li> 3723 3724 <li>update keysym2ucs.c based on Unicode 9.0</li> 3725 3726 <li>fixed most <code>cppcheck --enable=all</code> warnings, 3727 including for style (prompted by report by David Binderman). 3728 There was one bug-fix: 3729 <ul> 3730 <li>RGB least-squares computation in 3731 <code>allocateClosestRGB</code> used only one ordinate</li> 3732 </ul> 3733 </li> 3734 3735 <li>add <code>cppcheck</code> to lint-like programs in 3736 configure script and makefile.</li> 3737 3738 <li>fix some const correctness issues and point out an array 3739 lifetime issue (Ross Combs).</li> 3740 3741 <li>updates for SIXEL and ReGIS (Ross Combs): 3742 <ul> 3743 <li>Sixel drawing should still happen after an error if 3744 some commands have been processed</li> 3745 3746 <li>Tiny steps toward reporting ReGIS input</li> 3747 </ul> 3748 </li> 3749 </ul> 3750 3751 <h1><a name="xterm_324" id="xterm_324">Patch #324 - 3752 2016/03/10</a></h1> 3753 3754 <ul> 3755 <li>updated configure macro <code>CF_LD_RPATH_OPT</code> from 3756 ncurses changes.</li> 3757 3758 <li>provide alternate fix for Juha Nurmela's report by turning 3759 on POSIX signals if <code>_POSIX_C_SOURCE</code> is at least 3760 one. This is done to improve the behavior if a direct child 3761 process receives a <code>STOP</code> signal.</li> 3762 3763 <li>revert change to <code>CF_POSIX_C_SOURCE</code> from 3764 <a href="#xterm_323">patch #323</a> (reports by Ashish Shukla, 3765 Christian Weisgerber).</li> 3766 </ul> 3767 3768 <h1><a name="xterm_323" id="xterm_323">Patch #323 - 3769 2016/03/07</a></h1> 3770 3771 <ul> 3772 <li>updated appdata and desktop files to add keywords (report 3773 by Richard Hughes).</li> 3774 3775 <li>modify configure macro <code>CF_POSIX_C_SOURCE</code> to 3776 accommodate some systems, e.g., FreeBSD, which have separated 3777 their implementation specific preprocessor symbols from the 3778 POSIX ones, requiring both to be defined (report by Juha 3779 Nurmela).</li> 3780 3781 <li>change the directory to the current working dir of the 3782 child process in exec-formatted and exec-selectable actions 3783 (patch by Alexander Pohoyda).</li> 3784 3785 <li>correct typo in xterm.man (patch by Larry Hynes).</li> 3786 3787 <li>correct typo in ctlseqs.ms (report by Shriramana 3788 Sharma).</li> 3789 3790 <li>add feature to support XHTML and SVG screen dumps (patch by 3791 Jens Schweikhardt).</li> 3792 3793 <li>correct response to DECRQSS when terminal id is less than 3794 400 (patch by Iwamoto Kouichi).</li> 3795 </ul> 3796 3797 <h1><a name="xterm_322" id="xterm_322">Patch #322 - 3798 2016/01/02</a></h1> 3799 3800 <ul> 3801 <li>fix regression due to incorrect fix for compiler warning 3802 when allocating storage for <code>/etc/shells</code> (reports 3803 by Ashish Shukla, Debian #809646).</li> 3804 </ul> 3805 3806 <h1><a name="xterm_321" id="xterm_321">Patch #321 - 3807 2015/12/31</a></h1> 3808 3809 <ul> 3810 <li>add resource <code>keepClipboard</code>, escape sequence 3811 and action <code>keep-clipboard</code>.</li> 3812 3813 <li>add optional feature to capture text copied to clipboard at 3814 the time of copying rather than at the time the clipboard 3815 contents are requested for pasting (patch by Milan 3816 Mehner).</li> 3817 3818 <li>improve a special case where the <code>-e</code> option was 3819 used to pass a single-quoted command via <code>luit</code>, by 3820 wrapping it in a “sh -c” (report by Keith 3821 Hedger).</li> 3822 3823 <li>minor fix for type-cleanliness when allocating storage for 3824 <code>/etc/shells</code> (Tobias Stoeckmann).</li> 3825 3826 <li>fix a typo in manual page (Dan Church).</li> 3827 3828 <li>fix minor file-descriptor leak; after calling 3829 <code>openpty</code>, the slave's file descriptor is not needed 3830 (report by Juha Nurmela).</li> 3831 3832 <li>editorial change to ctlseqs.ms (report by David 3833 Gomboc).</li> 3834 3835 <li>minor updates for autoconf macros.</li> 3836 3837 <li>update config.guess, config.sub</li> 3838 </ul> 3839 3840 <h1><a name="xterm_320" id="xterm_320">Patch #320 - 3841 2015/08/28</a></h1> 3842 3843 <ul> 3844 <li>correct documentation for <code>%t</code> format (report by 3845 Martin Tournoij).</li> 3846 3847 <li>add <code>%R</code> for consistency to 3848 <code>exec-formatted()</code> and 3849 <code>insert-formatted()</code> actions.</li> 3850 3851 <li>add <code>%r</code> format to <code>exec-formatted()</code> 3852 and <code>insert-formatted()</code> actions (patch by Martin 3853 Tournoij).</li> 3854 3855 <li>Amend fix for Debian #794201 (report forwarded from 3856 Christian Jachmann by Emanuel Haupt, Debian #797008).</li> 3857 </ul> 3858 3859 <h1><a name="xterm_319" id="xterm_319">Patch #319 - 3860 2015/08/19</a></h1> 3861 3862 <ul> 3863 <li>add a section to <code>ctlseqs.ms</code> discussing control 3864 sequences and ECMA-48, to explain why C1 controls do not occur 3865 in the decoded characters from UTF-8 byte streams (prompted by 3866 discussion with Poul-Henning Kamp).</li> 3867 3868 <li>modify check for cursor-theme from <a href= 3869 "#xterm_301">patch #301</a> to also check if the resource 3870 <code>Xcursor.theme</code> is set to a nonempty value before 3871 fallback to xterm's own dummy theme (request by Robert 3872 Kloefkorn).</li> 3873 3874 <li>explain in <code>ctlseqs.ms</code> that some keys which 3875 normally send SS3-prefixes are changed to CSI-prefixes if 3876 key-modifiers are passed as parameters (report by George 3877 Nachman).</li> 3878 3879 <li>correct double-free of font information when multiple 3880 problems are found, particularly for the wide fonts loaded via 3881 the <code>-wc</code> option (report/testcase by Nelson 3882 Beebe).</li> 3883 3884 <li>make configure option <code>--enable-builtin-xpms</code> 3885 actually work (report by William Bulley).</li> 3886 3887 <li>correct combination of <code>-ls</code> and <code>-e</code> 3888 options for utempter configuration (Debian #794201).</li> 3889 3890 <li>NetBSD build-fix for OPT_RENDERFONT versus OPT_SHIFT_FONTS 3891 (patch by Matthew Green, forwarded by Thomas Klausner).</li> 3892 3893 <li>fix a few minor bugs found with Coverity.</li> 3894 3895 <li>update pixelvector handling (Ross Combs): 3896 <ul> 3897 <li>split pixel-based and coord-based functions with common 3898 parts factored out to a "raw" function</li> 3899 3900 <li>add a "step" variant which loads a single PV digit</li> 3901 </ul> 3902 </li> 3903 3904 <li>make the graphic dirty upon resize or clear, fixing some 3905 missing refreshes (patch by Ross Combs)</li> 3906 3907 <li>fixes scrolling to use user coordinates and move in the 3908 correct direction (patch by Ross Combs)</li> 3909 3910 <li>several fixes/improvements for ReGIS whitespace and 3911 page-handling (patch by Ross Combs).</li> 3912 </ul> 3913 3914 <h1><a name="xterm_318" id="xterm_318">Patch #318 - 3915 2015/04/12</a></h1> 3916 3917 <ul> 3918 <li>rename new(er) configure option 3919 <code>--enable-initial-erase</code> to 3920 <code>--enable-pty-erase</code>, since that conflicted with an 3921 existing option (report by Jens Schweikhardt).</li> 3922 3923 <li>fix cut/paste error in <code>--with-builtin-xpms</code> 3924 configure option (reports by Jens Schweikhardt, Ross 3925 Combs).</li> 3926 3927 <li>fix minor formatting issue in xterm manual (report by Jens 3928 Schweikhardt).</li> 3929 3930 <li>eliminate unnecessary "#(vi" markers in autoconf macros by 3931 using "(" to begin case-statement cases (suggested by Jens 3932 Schweikhardt).</li> 3933 3934 <li>minor fixes to improve <code>const</code> usage (Ross 3935 Combs).</li> 3936 </ul> 3937 3938 <h1><a name="xterm_317" id="xterm_317">Patch #317 - 3939 2015/03/27</a></h1> 3940 3941 <ul> 3942 <li>adapt example for <code>exec-formatted</code> from <a href= 3943 "http://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html"> 3944 Lukáš Zapletal's</a> webpage to manual (Debian 3945 #780008).</li> 3946 3947 <li>add a short usage section to the xterm manual, including 3948 notes on setting the window title (Debian #742477).</li> 3949 3950 <li>revise a change made to <code>ICH</code> in <a href= 3951 "#xterm_314">patch #314</a> to address limit-checks 3952 (reports/testcases by Zoltán Kéri and Joe 3953 Peterson, also reported by Christian Weisgerber).</li> 3954 </ul> 3955 3956 <h1><a name="xterm_316" id="xterm_316">Patch #316 - 3957 2015/03/07</a></h1> 3958 3959 <ul> 3960 <li>revert change to make <code>DCH</code> honor top/bottom 3961 scrolling margins. For the record, both the VT420 and VT520 3962 reference manuals incorrectly state that <em>"DCH has no effect 3963 outside the scrolling margins."</em></li> 3964 3965 <li>fix regression in <code>DCH</code> introduced in adjustment 3966 for limit-check in <a href="#xterm_314">patch #315</a> 3967 (report/testcase by Zoltán Kéri, also reported by 3968 Christian Weisgerber).</li> 3969 3970 <li>correct default value for configure option 3971 <code>--enable-initial-erase</code>; it should be "False", but 3972 in <a href="#xterm_315">patch #315</a> it was "Maybe", which 3973 differed from default set in <a href="#xterm_192">patch 3974 #192</a>.</li> 3975 </ul> 3976 3977 <h1><a name="xterm_315" id="xterm_315">Patch #315 - 3978 2015/03/02</a></h1> 3979 3980 <ul> 3981 <li>change default for <code>--enable-narrowproto</code> for 3982 Cygwin to "no" to better match contemporary configurations 3983 (report by Jens Schweikhardt, prompted by <a href= 3984 "http://stackoverflow.com/questions/28137618/what-is-a-narrow-prototype-and-why-would-i-need-one/28334574?noredirect=1#comment45022128_28334574"> 3985 discussion</a>).</li> 3986 3987 <li>provide <code>OSC 106</code> as an alternative to 3988 <code>OSC 6</code>, avoiding conflict with one of 3989 Terminal.app's undocumented escape sequences (report by Egmont 3990 Koblinger).</li> 3991 3992 <li>fix an off-by-one in comparison when autowrap and 3993 left/right margins are combined (report by George 3994 Nachman).</li> 3995 3996 <li>modify <code>DECBI</code> and <code>DECFI</code> to work 3997 outside the left/right margins, since the vague VT520 reference 3998 manual could support that interpretation (suggested by George 3999 Nachman).</li> 4000 4001 <li>correct response for <code>DECSCUSR</code> in 4002 <code>DECRQSS</code> (report/analysis by George Nachman).</li> 4003 4004 <li>add <code>DECSLRM</code> to list for <code>DECRQSS</code> 4005 in ctlseqs.ms (report by George Nachman).</li> 4006 4007 <li>improve limit-checks versus assert's in the debugging 4008 version (reports by George Nachman).</li> 4009 4010 <li>correct a problem with multiple writes to the right-margin 4011 when autowrap is turned off (report by George Nachman, also 4012 reported in Gnome #744819 by Ulf Magnusson).</li> 4013 4014 <li>modify <code>DCH</code> to honor top/bottom and left/right 4015 margins (report by George Nachman).</li> 4016 4017 <li>correct off-by-one in comparison so that <code>DL</code> 4018 honors left/right margins (report by George Nachman).</li> 4019 4020 <li>correct logic of <code>DECSCL</code>, which always set 4021 8-bit controls as a side-effect (report by George 4022 Nachman).</li> 4023 4024 <li>correct loop limit for <code>DECSED 1</code>, when 4025 <code>DECSCA</code> is enabled (report by George Nachman).</li> 4026 4027 <li>fix a entry in csi_table for “<code>$</code>”, 4028 needed for <code><em>CSI</em> [ $ z</code> 4029 (report by George Nachman).</li> 4030 4031 <li>remove restriction from <a href="#xterm_279">patch #279</a> 4032 changes on <code>DECIC</code> and <code>DECDC</code> to 4033 left-right mode (report by George Nachman).</li> 4034 4035 <li>correct PID value returned in response to DECRQCRA 4036 (report/analysis by George Nachman).</li> 4037 4038 <li>fix an ifdef'ing problem, where 4039 <code>--disable-dec-locator</code> would turn off logic needed 4040 for <code>DECIC</code> and <code>DECDC</code> (report by George 4041 Nachman).</li> 4042 4043 <li>correct order of parameters in report for 4044 <code><em>CSI</em> 1 9 t</code>, which gives the 4045 screensize in characters (report by George Nachman).</li> 4046 4047 <li>add null pointer checks for a case in DECCRA where part of 4048 the target rectangle lies outside the screen limits (report by 4049 George Nachman).</li> 4050 4051 <li>remove extra "6" for selective erase from DA1 response 4052 (report by George Nachman).</li> 4053 4054 <li>support Xinerama screen specification in geometry parsing 4055 (patch by Nicolas George).</li> 4056 4057 <li>add configure option <code>--enable-initial-erase</code> to 4058 set <code>ptyInitialErase</code> consistently with manpage, as 4059 well as adding a table in manpage to clarify the relationship 4060 between the resources related to the backarrow key (Debian 4061 #775952).</li> 4062 4063 <li>add configure <code>--enable-builtin-xpms</code> to 4064 simplify compiling-in the icons introduced in <a href= 4065 "#xterm_284">patch #284</a> (prompted by discussion with 4066 William Bulley).</li> 4067 4068 <li>fix/improve autoconf macros: 4069 <ul> 4070 <li>CF_WITH_APP_DEFAULTS, add paths for OSX</li> 4071 4072 <li>CF_WITH_MAN2HTML, configure option "--with-man2html" 4073 provides "man2html" as alternative to groff's man/html 4074 conversion</li> 4075 </ul> 4076 </li> 4077 4078 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 4079 </ul> 4080 4081 <h1><a name="xterm_314" id="xterm_314">Patch #314 - 4082 2014/12/28</a></h1> 4083 4084 <ul> 4085 <li>fix a minor bug in the termcap-specific version of 4086 <code>resize</code> when the lines or columns values are at the 4087 very end of an incomplete termcap string (prompted by coverity 4088 report).</li> 4089 4090 <li>improve paste64 feature (report by Olaf Rogalsky) 4091 <ul> 4092 <li>fix “<code>p</code>;” command in 4093 <code>paste64.pl</code> example.</li> 4094 4095 <li>modify <code>_OwnSelection</code> to allow the paste64 4096 control to cause primary/clipboard selections to be 4097 disowned and cleared.</li> 4098 4099 <li>omit an extra "=" used in padding, to make the base64 4100 response a multiple of four characters.</li> 4101 4102 <li>modify <code>_ConvertSelectionHelper</code> to not stop 4103 converting on embedded nulls in the primary or clipboard 4104 selection. That makes the behavior consistent with 4105 cut-buffers. Nulls are not passed on to the application 4106 because they are used for separators in the X library calls 4107 that convert <code>XTextProperty</code> values.</li> 4108 </ul> 4109 </li> 4110 4111 <li>add configure option <code>--with-man2html</code> to allow 4112 an alternative to groff's man/html conversion.</li> 4113 4114 <li>review and modify resource-settings which can be set via 4115 control sequences, etc: 4116 <ul> 4117 <li>add <code>OSC 6</code>, to enable/disable colors 4118 set via <code>OSC 5</code>, without changing the color 4119 assignments (prompted by patch by Ingo Brückl).</li> 4120 4121 <li>add command-line option <code>-itc</code> for 4122 italics.</li> 4123 4124 <li>add <code>colorIT</code> and <code>colorITMode</code> 4125 for italics, like <code>colorBD</code>, etc.</li> 4126 4127 <li>guard <code>allowPasteControls</code> against 4128 modification by <code>editres</code>.</li> 4129 </ul> 4130 </li> 4131 4132 <li>change <code>passedPty</code> from fixed-length to 4133 allocated to ensure that it is long enough to hold the 4134 <code>-S</code> option value (report by Ben Longbons).</li> 4135 4136 <li>improve ReGIS graphics initialization (Ross Combs): 4137 <ul> 4138 <li>add a new string resource to set the default ReGIS 4139 font.</li> 4140 4141 <li>fix a caching problem where the font name wasn't taken 4142 into consideration when looking up cached metrics.</li> 4143 4144 <li>enables use of fractional values in coordinates (which 4145 in turn allows setting the coordinates to something like 4146 [0,1][1,0])</li> 4147 4148 <li>doubles the minimum ReGIS graphic to 200x200</li> 4149 4150 <li>set the default ReGIS image size to "auto"</li> 4151 4152 <li>fix some swapped width/height parameters in TRACE 4153 messages</li> 4154 4155 <li>add support for scaling and mirrored coordinate systems 4156 to the screen address command</li> 4157 4158 <li>sets a minimum ReGIS graphics size of 100x100 -- 4159 smaller address ranges will be scaled up</li> 4160 4161 <li>reset the image if either the width or height is zero 4162 (which should happen together or not at all, but switching 4163 the logic gets rid of some parentheses)</li> 4164 4165 <li>adds support for alternate screen coordinates (just 4166 offsets, not inverted coordinates or scaling)</li> 4167 4168 <li>keeps the graphics state across ReGIS calls unless P1 4169 or P3 entry codes are used</li> 4170 4171 <li>changes loops to continue after parsing whitespace to 4172 allow trailing whitespace</li> 4173 4174 <li>fixes some incorrect character casts</li> 4175 </ul> 4176 </li> 4177 </ul> 4178 4179 <h1><a name="xterm_313" id="xterm_313">Patch #313 - 4180 2014/11/28</a></h1> 4181 4182 <ul> 4183 <li>add <code>regisScreenSize</code> resource setting to allow 4184 custom screensizes for ReGIS graphics (prompted by discussion 4185 with Scott Froebe).</li> 4186 4187 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 4188 4189 <li>improve ReGIS font-handling (Ross Combs): 4190 <ul> 4191 <li>remove "random junk" generation for unknown 4192 characters</li> 4193 4194 <li>add xterm extension to load user glyphs for alphabet 4195 0</li> 4196 4197 <li>add xterm extension to specify loading an alphabet from 4198 a font by name</li> 4199 4200 <li>fix bug with use of empty alphabet slots which caused 4201 slot 0 to be clobbered</li> 4202 4203 <li>update/clarify ReGIS-related comments</li> 4204 4205 <li>add DECprint extension for printing/clearing the screen 4206 (only clearing is performed)</li> 4207 </ul> 4208 </li> 4209 4210 <li>improve ReGIS colorspec conversion (Ross Combs): 4211 <ul> 4212 <li>avoid some floating point math for colorspace 4213 conversion</li> 4214 4215 <li>move two copies of colorspec parsing to a single 4216 function</li> 4217 4218 <li>change colorspec parsing to handle components being out 4219 of order or with spaces and commas between them</li> 4220 4221 <li>add support for an extension where RGB components can 4222 be given instead of HLS</li> 4223 </ul> 4224 </li> 4225 4226 <li>improve use of const, e.g., for the <code>LineData</code> 4227 pointers (patch by Ross Combs).</li> 4228 4229 <li>clip of graphics that overlap the scrollback buffer and alt 4230 screen (patch by Ross Combs).</li> 4231 4232 <li>amend change to focus-change events in <a href= 4233 "#xterm_287">patch #287</a> to limit it to suppressing the 4234 reset of the urgency-hint, because some useful 4235 <code>FocusOut</code> events were lost (report by Joe 4236 Peterson).</li> 4237 4238 <li>modify dpkg build-script to configure xterm-dev as an 4239 <code>x-terminal-emulator</code> alternative.</li> 4240 4241 <li>extend the <code>--with-xterm-symlink</code> feature to 4242 make symbolic links for the other programs and scripts.</li> 4243 4244 <li>minor fix to <code>vttests/resize.pl</code> to avoid 4245 undefined variable when receiving broken/missing response, 4246 e.g., from mrxvt.</li> 4247 4248 <li>change the way that ReGIS graphics are refreshed (patch by 4249 Ross Combs): 4250 <ul> 4251 <li>it pre-composes any overlapping graphics to avoid 4252 unnecessary and flickering draws</li> 4253 4254 <li>it adds a three-dimensional lookup table for RGB -> 4255 pixel values and uses this across all graphics</li> 4256 4257 <li>it draws in line segments when there is a run of the 4258 same color</li> 4259 4260 <li>in cases where there are no transparent parts, it uses 4261 an XImage to draw</li> 4262 4263 <li>it hooks into the double-buffering support if it is 4264 enabled (though this doesn't seem to get rid of all 4265 flicker).</li> 4266 </ul> 4267 This has the effect of reducing flicker and speeding up 4268 redraws. 4269 </li> 4270 </ul> 4271 4272 <h1><a name="xterm_312" id="xterm_312">Patch #312 - 4273 2014/09/28</a></h1> 4274 4275 <ul> 4276 <li>undo change to <code>do_select_regex()</code> in <a href= 4277 "#xterm_311">patch #311</a> (reports by H Merijn Brand, 4278 Sven-Haegar Koch, Debian #762978).</li> 4279 </ul> 4280 4281 <h1><a name="xterm_311" id="xterm_311">Patch #311 - 4282 2014/09/18</a></h1> 4283 4284 <ul> 4285 <li>mention <code>xclip</code> in manpage as an alternative 4286 workaround for copying clipboard data, noting that 4287 <code>selectToClipboard</code> (see <a href="#xterm_209">patch 4288 #209</a>) is the recommended approach (Debian #639094).</li> 4289 4290 <li>correct comparison in do_select_regex() of working position 4291 against starting column.</li> 4292 4293 <li>correct initialization for regular-expression feature of 4294 <code>exec-selectable</code> and <code>insert-selectable</code> 4295 actions (Debian #758633).</li> 4296 4297 <li>modify logic for <code>exec-formatted</code> and 4298 <code>insert-formatted</code> actions to ensure that the 4299 formatting occurs just after the selection is received (Debian 4300 #758633).</li> 4301 4302 <li>account for state of reverse-video in special case of 4303 cursor coloring (Debian #759734).</li> 4304 4305 <li>fix a sign-extension problem in ReGIS support, as well as 4306 correcting a case where ignored-characters were not really 4307 ignored (patch by Ross Combs).</li> 4308 4309 <li>Enable the "Escape Sequence" menu entry when an OSC 50 4310 is received. Also disable it if the escape sequence specifies 4311 no font (Debian #760208).</li> 4312 4313 <li>improve fix for the <code>fontsel</code> menu entry from 4314 <a href="#xterm_304">patch #304</a>: because the recovery used 4315 the "current font", it would fail if one first selected a valid 4316 font, then an invalid font (Debian #760207).</li> 4317 4318 <li>correct an off-by-one in limit-check for 4319 <code>ScrnLimitChar</code> function (report by Egmont 4320 Koblinger).</li> 4321 </ul> 4322 4323 <h1><a name="xterm_310" id="xterm_310">Patch #310 - 4324 2014/07/25</a></h1> 4325 4326 <ul> 4327 <li>update package/freebsd files based on xterm #309 port.</li> 4328 4329 <li>adapt changes from Minux3.2 which ported <a href= 4330 "#xterm_197">xterm #197</a>, to allow building on that platform 4331 both using <code>imake</code> as well as using the configure 4332 script.</li> 4333 4334 <li>update precompose.c based on Unicode 7.0</li> 4335 4336 <li>build-fix for <code>--with-Xaw3dxft</code> option (report 4337 by Emanuel Haupt).</li> 4338 </ul> 4339 4340 <h1><a name="xterm_309" id="xterm_309">Patch #309 - 4341 2014/07/13</a></h1> 4342 4343 <ul> 4344 <li>modify configure script to work around debris left by 4345 XQuartz upgrades.</li> 4346 4347 <li>modify test-package scripts to enable ReGIS graphics.</li> 4348 4349 <li>improvements/additions to ReGIS graphics, e.g., drawing 4350 text (Ross Combs).</li> 4351 4352 <li>add <code>--with-Xaw3dxft</code>, to link with Xaw 3d xft 4353 library (Stephen P Wall).</li> 4354 4355 <li>amend reset for cursor-shape to take into account 4356 <code>cursorUnderline</code> resource (report by Christian 4357 Weisgerber).</li> 4358 4359 <li>update config.guess, config.sub</li> 4360 </ul> 4361 4362 <h1><a name="xterm_308" id="xterm_308">Patch #308 - 4363 2014/06/19</a></h1> 4364 4365 <ul> 4366 <li>corrected font used for clipping double-width bitmap fonts 4367 from <a href="#xterm_307">patch #307</a> changes to work around 4368 mis-scaled fonts (Debian #752947).</li> 4369 4370 <li>improve wording of a warning message.</li> 4371 </ul> 4372 4373 <h1><a name="xterm_307" id="xterm_307">Patch #307 - 4374 2014/06/17</a></h1> 4375 4376 <ul> 4377 <li>fill background for top/bottom parts of 4378 double-width/double-height characters, to cover occasional gaps 4379 due to bitmap font-scaling (report by Egmont Koblinger).</li> 4380 4381 <li>amend resets for keyboard-type, pointer-mode and 4382 title-modes from <a href="#xterm_305">xterm #305</a> changes to 4383 account for resource settings (Debian #751351).</li> 4384 4385 <li>modify <em>printAttributes</em> feature to include new SGR 4386 codes.</li> 4387 4388 <li>modify cursor show/hide logic to work with italic 4389 fonts.</li> 4390 4391 <li>do clipping and filling for a case with bitmap-fonts and 4392 italics when the font server returns only a "close" match 4393 (report/testcase by Egmont Koblinger).</li> 4394 4395 <li>adjust loop comparison for underlining to display 4396 underlines on 5x8 font as in <a href="#xterm_304">patch 4397 #304</a> (Debian #750733).</li> 4398 4399 <li>amend fix for Freedesktop #15979 (Debian #750733).</li> 4400 4401 <li>amend xterm.appdata.xml, making it validate with current 4402 schema.</li> 4403 </ul> 4404 4405 <h1><a name="xterm_306" id="xterm_306">Patch #306 - 4406 2014/06/03</a></h1> 4407 4408 <ul> 4409 <li>fixes for display-errors in new SGR codes (report by Egmont 4410 Koblinger).</li> 4411 </ul> 4412 4413 <h1><a name="xterm_305" id="xterm_305">Patch #305 - 4414 2014/06/02</a></h1> 4415 4416 <ul> 4417 <li>add <code>xterm.appdata.xml</code> (request by Richard 4418 Hughes). By the way, none of the <em>released</em> validators 4419 yet handle <code><licence></code> tags (or 4420 <code><metadata_license></code>, etc).</li> 4421 4422 <li>fix memory leaks in bitmap font-name caching.</li> 4423 4424 <li>other changes to hard-reset behavior: 4425 <ul> 4426 <li>reset keyboard-type on hard-reset.</li> 4427 4428 <li>reset pointer-mode (<code>pointerMode</code>) on 4429 hard-reset</li> 4430 4431 <li>reset title-modes (<code>titleModes</code>) on 4432 hard-reset</li> 4433 4434 <li>reset cursor-shape on hard or soft-reset</li> 4435 4436 <li>reset LEDs on hard-reset.</li> 4437 4438 <li>reset DECSACE on hard-reset.</li> 4439 </ul> 4440 </li> 4441 4442 <li>reset bracketed-paste mode on hard-reset (suggested by 4443 Egmont Koblinger).</li> 4444 4445 <li>modify UTF-8 decoder to account for 4446 <code>allowC1Printable</code> resource.</li> 4447 4448 <li>revise <code>getXftColor</code> to ensure that its sequence 4449 number will not overflow in long-running sessions.</li> 4450 4451 <li>minor fix to selection to prevent hidden character from 4452 being returned in selection data (report by Egmont 4453 Koblinger).</li> 4454 4455 <li>add <code>-sh</code> to help-message.</li> 4456 4457 <li>amend check for incomplete fonts to always decide that a 4458 character is missing if the font lacks per-character metrics 4459 (prompted by Freedesktop #15979).</li> 4460 4461 <li>minor reorganization to implement “filler” SGR 4462 features. There are no established applications which rely upon 4463 these; some people find them amusing. 4464 <ul> 4465 <li>separate bits used to manage drawing state from 4466 attribute-bits.</li> 4467 4468 <li>implement SGR codes 2, 3, 9, 21 and their corresponding 4469 resets.</li> 4470 4471 <li>add configure option <code>--disable-wide-attrs</code> 4472 to disable the feature.</li> 4473 </ul> 4474 </li> 4475 4476 <li>additional changes for ReGIS support (Ross Combs): 4477 <ul> 4478 <li>fix some arc drawing bugs and add support for pattern 4479 shading.</li> 4480 </ul> 4481 </li> 4482 </ul> 4483 4484 <h1><a name="xterm_304" id="xterm_304">Patch #304 - 4485 2014/05/03</a></h1> 4486 4487 <ul> 4488 <li>add debugging check for parsing table entries, fixed a few 4489 inconsistencies.</li> 4490 4491 <li>handle utmp/utmpx strings consistently with new function 4492 that null-pads unused locations.</li> 4493 4494 <li>build-fix for imake configuration with FreeBSD 9 and later, 4495 to account for replacing <code>utmp</code> with 4496 <code>utmpx</code>.</li> 4497 4498 <li>improve handling of the <code>fontsel</code> 4499 (font-selection) menu item: 4500 <ul> 4501 <li>initialize the menu entry differently if the toolbar 4502 configuration is used, i.e., enabling it without attempting 4503 to use the current selection as a font name. Because of the 4504 way in which the toolbar is setup, this attempt usually 4505 failed, and would result in a warning.</li> 4506 4507 <li>if the menu action fails, e.g., no font can be loaded 4508 for the given selected name, then recover by resuming with 4509 the current font. Before, the recovery went to the default 4510 font. That was done to work around missing bitmap font in 4511 <a href="#xterm_276">patch #276</a>.</li> 4512 </ul> 4513 </li> 4514 4515 <li>document OSC 119 in the control sequences listing 4516 (report by Egmont Koblinger).</li> 4517 4518 <li>modify special handling of <code>XF86Paste</code> or 4519 <code>SunPaste</code> keysyms (see <a href="#xterm_227">patch 4520 #227</a>) to use the standard shift/lock modifiers in case 4521 those are, for example, used in level 3 in an XKB file (patch 4522 by Matthieu Herrb).</li> 4523 4524 <li>configure macro updates: 4525 <ul> 4526 <li>drop the <code>-no-gcc</code> option from 4527 CF_INTEL_COMPILER</li> 4528 4529 <li>modify CF_XOPEN_SOURCE to suppress the check for 4530 defining _XOPEN_SOURCE on Solaris</li> 4531 </ul> 4532 </li> 4533 4534 <li>reduce bss storage used for ReGIS/Sixel modules, as well as 4535 cleanup storage usage in other modules.</li> 4536 4537 <li>initial changes for ReGIS support (Ross Combs): 4538 <ul> 4539 <li>document control-sequences</li> 4540 4541 <li>separate ifdef's for sixel and color-register 4542 features</li> 4543 4544 <li>add configuration for VT382</li> 4545 </ul> 4546 </li> 4547 </ul> 4548 4549 <h1><a name="xterm_303" id="xterm_303">Patch #303 - 4550 2014/03/06</a></h1> 4551 4552 <ul> 4553 <li>improve check for <code>/etc/shells</code> to allow its 4554 entries to be symbolic links.</li> 4555 4556 <li>fix a regression in <a href="#xterm_302">patch #302</a> 4557 fixes relating to interaction of <code>SHELL</code> and 4558 <code>XTERM_SHELL</code> variables (Debian #740919).</li> 4559 4560 <li>improve manpage discussion of use of 4561 <code>/etc/shells</code> for validating the <code>SHELL</code> 4562 environment variable.</li> 4563 4564 <li>further improve the approximation for color map by ignoring 4565 bits which would not be applied by the rgb masks for the 4566 current visual (report by Joe Peterson).</li> 4567 4568 <li>add <code>-report-colors</code> to usage-message (report by 4569 Joe Peterson).</li> 4570 </ul> 4571 4572 <h1><a name="xterm_302" id="xterm_302">Patch #302 - 4573 2014/03/02</a></h1> 4574 4575 <ul> 4576 <li>amend approximation for color map introduced in <a href= 4577 "#xterm_277">patch #277</a> to make that apply only to 4578 <code>TrueColor</code> (adapted from patch by Joe 4579 Peterson).</li> 4580 4581 <li>add <code>-report-colors</code> option, to show colors as 4582 they are allocated.</li> 4583 4584 <li>fix some gcc <code>-Wcast-qual</code> warnings.</li> 4585 4586 <li>correct app-defaults location for CentOS-4 in 4587 xterm.spec</li> 4588 4589 <li>improve check in <code>minstall.sh</code> for X manpage's 4590 section number; add sample dependencies for the relevant 4591 documentation package to packaging test-scripts (prompted by 4592 Novell #779474).</li> 4593 4594 <li>modify sample build-scripts for dpkg and rpm to ensure that 4595 <code>vttests</code> scripts are uncompressed and 4596 executable.</li> 4597 4598 <li>modify Perl scripts in <code>vttests</code> to use 4599 <code>env</code> to find Perl rather than relying on 4600 <code>/usr/bin/perl</code> This makes the sample scripts usable 4601 with NetBSD and other systems using <em>pkgsrc</em>.</li> 4602 4603 <li>amend check from <a href="#xterm_301">patch #301</a> for 4604 valid shell to permit existing <code>SHELL</code> value to 4605 specify the shell; clarify the behavior in the manpage (report 4606 by Emmanuel Thomé).</li> 4607 4608 <li>amend change to wide-character processing from <a href= 4609 "#xterm_257">patch #257</a> to allow switching to/from UTF-8 4610 encoding if the <code>utf8</code> resource was not set to 4611 “always” (report by Honza Maly).</li> 4612 4613 <li>fix incorrect free from <a href="#xterm_301">patch #301</a> 4614 changes, if explicit program without <code>-e</code> option is 4615 a valid shell (patch by Romain Francoise).</li> 4616 </ul> 4617 4618 <h1><a name="xterm_301" id="xterm_301">Patch #301 - 4619 2014/01/19</a></h1> 4620 4621 <ul> 4622 <li>OSC 104 and 105 did not accept parameter to reset a 4623 specific color (patch by Egmont Koblinger).</li> 4624 4625 <li>add configure check for <code>initgroups</code>, and use 4626 that function to complement its use of <code>setgid</code> 4627 (prompted by patch by Miroslav Lichvar).</li> 4628 4629 <li>improve manpage description of scrollbar translations 4630 versus the vt100 translations (Debian #723573).</li> 4631 4632 <li>add a few paragraphs to manpage explaining the implications 4633 of xterm's reliance on X Toolkit for command-line parsing.</li> 4634 4635 <li>modify cursor-theme logic to check if the environment 4636 variable <code>XCURSOR_THEME</code> is set to a nonempty value 4637 before constructing a dummy them (prompted by similar check 4638 added in OpenBSD CVS).</li> 4639 4640 <li>add check for a case where TrueType bold font is missing a 4641 glyph where the non-bold font has it. Temporarily switch to the 4642 non-bold font to draw the glyph (report by David 4643 Demelier).</li> 4644 4645 <li>minor documentation fixes for ctlseqs.ms</li> 4646 4647 <li>only set <code>SHELL</code> environment variable to 4648 programs found in <code>/etc/shells</code> (prompted by 4649 patch/report by Al Poole).</li> 4650 4651 <li>build-fix, when <code>--disable-wide-chars</code> 4652 <code>--disable-boxchar</code> is used (prompted by patch by 4653 Andrey Panov).</li> 4654 </ul> 4655 4656 <h1><a name="xterm_300" id="xterm_300">Patch #300 - 4657 2013/12/03</a></h1> 4658 4659 <ul> 4660 <li>amend workaround for <code>Xcursor</code> library from 4661 <a href="#xterm_298">patch #298</a>; the suggested solution for 4662 Debian #466704 fell afoul of a bug in <code>Xcursor</code> 4663 which treated an empty value for <code>Inherits=</code> as a 4664 valid theme—and resulted in a stack overflow due to 4665 unbounded recursion. Certain environments such as XFCE4 exposed 4666 the bug. A related report in Debian #531679 was closed without 4667 following the recommendation to limit stack recursion in this 4668 library (reported by Sergey V Dyatko, Debian #731269).</li> 4669 </ul> 4670 4671 <h1><a name="xterm_299" id="xterm_299">Patch #299 - 4672 2013/12/01</a></h1> 4673 4674 <ul> 4675 <li>fix regression in line-drawing from <a href= 4676 "#xterm_297">patch #297</a> changes for NRCS exposed by change 4677 to <code>assumeAllChars</code> resource in <a href= 4678 "#xterm_298">patch #298</a> (report by Markus Waldeck).</li> 4679 </ul> 4680 4681 <h1><a name="xterm_298" id="xterm_298">Patch #298 - 4682 2013/11/27</a></h1> 4683 4684 <ul> 4685 <li>quiet a warning about ambiguity when <code>-h</code> 4686 command-line option is parsed, since <code>-help</code> is used 4687 rather than the options mentioned in the message. This warning 4688 was caused by fixes in <a href="#xterm_272">patch 4689 #272</a>.</li> 4690 4691 <li>remove an extra check for keypad-mode which interfered with 4692 the <a href="#xterm_280">patch #280</a> 4693 <code>modifyKeyboard</code> feature for the numeric keypad 4694 (report by David Conners).</li> 4695 4696 <li>change default for <code>assumeAllChars</code> resource 4697 (Debian #725682). There are unresolved issues with Terminus 4698 fonts, e.g., Debian #722017.</li> 4699 4700 <li>add <code>-report-fonts</code> command-line option and 4701 <code>reportFonts</code> resource to optionally report the 4702 fonts which are loaded, and their metrics such as the number of 4703 missing glyphs.</li> 4704 4705 <li>work around <code>Xcursor</code> library to make 4706 <code>pointerColor</code> resource work as documented (Debian 4707 #466704, analysis by Vincent Lefèvre).</li> 4708 4709 <li>amend change from <a href="#xterm_297">patch #297</a> for 4710 ASCII-equivalents to ensure that missing characters which 4711 happen to be double-width are padded to the expected number of 4712 columns. Also, correct the choice between normal/wide Xft fonts 4713 used when checking for missing characters (reported by WU Yue, 4714 Debian #728949, Gentoo #491334).</li> 4715 4716 <li>modify sixel-graphics drawing to account for scrollbar 4717 width (report by Mario Edelmann).</li> 4718 4719 <li>fix remaining issue with <code>DECNRCM</code>; the British 4720 character set was confused with ISO Latin-1 (report by Hayaki 4721 Saito).</li> 4722 4723 <li>build-fix for <code>--disable-boxchars</code> configure 4724 option.</li> 4725 4726 <li>updated configure macros, from ongoing work on lynx and 4727 ncurses.</li> 4728 4729 <li>update config.guess, config.sub</li> 4730 </ul> 4731 4732 <h1><a name="xterm_297" id="xterm_297">Patch #297 - 4733 2013/09/10</a></h1> 4734 4735 <ul> 4736 <li>modify check for missing cells in bitmap font to work 4737 around terminus 10646 encoding, which is mostly missing, add 4738 <code>assumeAllChars</code> resource to provide the older 4739 behavior.</li> 4740 4741 <li>modify macros used to check for missing cells in bitmap 4742 fonts to pick up a long-overlooked improvement made to xfd in 4743 XFree86.</li> 4744 4745 <li>improve workaround for groff versus ASCII-equivalents; 4746 <a href="#xterm_185">patch #185</a> had overlooked Xft 4747 configuration (reported by anonymous user on Arch Linux 4748 forum).</li> 4749 4750 <li>review/extend <code>DECNRCM</code> support (prompted by 4751 report by Hayaki Saito asking about the two "A" codes). 4752 <ul> 4753 <li>make pasting of DECNRCM data work by translating the 4754 pasted data into the selected encoding.</li> 4755 4756 <li>limit mode changes to VT220 and up.</li> 4757 4758 <li>ignore SCS for National Replacement Characters if 4759 <code>DECNRCM</code> is not set.</li> 4760 4761 <li>add tables and logic to decode SCS controls ending with 4762 "%" and one additional character. This expects the parsing 4763 of SCS to VT320.</li> 4764 4765 <li>also added parsing for SCS of DEC Supplemental and DEC 4766 Technical, which are for VT2xx and VT3xx respectively.</li> 4767 4768 <li>implement VT220 Multinational character set "GR" aka 4769 "DEC Supplemental Graphic".</li> 4770 4771 <li>DEC Technical character set based on <a href= 4772 "http://www.vt100.net/charsets/technical.html">vt100.net 4773 description</a>.</li> 4774 4775 <li>implement Portuguese NRC.</li> 4776 4777 <li>provide for temporarily switching to/from NRC mode from 4778 UTF-8 mode when <code>DECNRCM</code> is set or reset.</li> 4779 </ul> 4780 </li> 4781 4782 <li>minor fix to assert's found while testing examples from 4783 <a href="https://gist.github.com/ttdoda">ttdoda's 4784 slrm-test1.txt</a>.</li> 4785 4786 <li>modify <code>DECLRMM</code> to not update the cursor 4787 position (report by Iwamoto Kouichi forwarded by Hayaki 4788 Saito).</li> 4789 4790 <li>modify cursor-position report to take origin-mode into 4791 account (report by Hayaki Saito, see also <a href= 4792 "https://github.com/gnachman/iTerm2/pull/129">iTerm2 pull 4793 request 129</a>).</li> 4794 4795 <li>correct off-by-one comparison in when handling 4796 carriage-return at left margin (patch by Iwamoto Kouichi, 4797 forwarded by Hayaki Saito).</li> 4798 4799 <li>improve handling of <code>faceName</code> resource when a 4800 "size=" property is embedded in it, by using that size to 4801 replace the default <code>faceSize</code> resource. This lets 4802 xterm honor the other faceSize resources (report by Jens 4803 Schweikhardt).</li> 4804 4805 <li>improve OSC 52 selection-data by setting its timestamp 4806 to correspond to the most-recent event received by xterm, to 4807 ensure that calls to <code>XtOwnSelect</code> succeed even if 4808 the selection is manipulated solely through the keyboard 4809 (prompted by patch by Richard Tollerton).</li> 4810 4811 <li>change configure-script defaults for "luit" and 4812 "wide-chars" options to match the values used in the imake 4813 configuration, to lessen user surprise if they are accustomed 4814 to building xterm using imake(report by Andries E 4815 Brouwer).</li> 4816 4817 <li>improve the imake-related configuration's check if xterm is 4818 started in a locale that uses UTF-8 encoding. Before, this 4819 checked the locale settings only for "UTF-8", now it checks 4820 ignoring case for "UTF-8" and "UTF-8" (report by Andries E 4821 Brouwer).</li> 4822 </ul> 4823 4824 <h1><a name="xterm_296" id="xterm_296">Patch #296 - 4825 2013/07/10</a></h1> 4826 4827 <ul> 4828 <li>improve experimental sixel feature (Ross Combs).</li> 4829 4830 <li>modify delimiter in configure macro used to add a library 4831 after a given library to avoid confusion with <code>-Wl</code> 4832 pass-through options to linker (NetBSD #48031).</li> 4833 4834 <li>fix quoting in expression used to trim extra libraries from 4835 <a href="#xterm_295">patch #295</a> changes (report by Thomas 4836 Klausner).</li> 4837 </ul> 4838 4839 <h1><a name="xterm_295" id="xterm_295">Patch #295 - 4840 2013/07/06</a></h1> 4841 4842 <ul> 4843 <li>adjust order of libraries to work around incomplete symbol 4844 resolution when using <code>--as-needed</code> option 4845 (ArchLinux #36047).</li> 4846 4847 <li>minor fix for <code>plink.sh</code>, for IRIX64.</li> 4848 </ul> 4849 4850 <h1><a name="xterm_294" id="xterm_294">Patch #294 - 4851 2013/07/05</a></h1> 4852 4853 <ul> 4854 <li>add note in ctlseqs.ms for CPR response pointing out a 4855 potential point of confusion with the string sent by a modified 4856 F1 key (suggested by Bram Moolenaar).</li> 4857 4858 <li>improve <code>plink.sh</code> by checking if the linker 4859 supports the <code>--as-needed</code> option (suggested by 4860 David Philippi).</li> 4861 4862 <li>improve clearing for private mode 1049 when switching to 4863 the alternate screen (Debian #711758).</li> 4864 4865 <li>amend fix from <a href="#xterm_292">patch #292</a> by 4866 removing now-unneeded chunk which introduced problem in 4867 selection (Debian #714527).</li> 4868 4869 <li>add definition to optionally override compiled-in class for 4870 xterm from makefile, needed for test-packages.</li> 4871 4872 <li>add configure option 4873 <code>--enable-sixel-graphics</code></li> 4874 4875 <li>add experimental support for sixel graphics (Ross 4876 Combs).</li> 4877 </ul> 4878 4879 <h1><a name="xterm_293" id="xterm_293">Patch #293 - 4880 2013/05/27</a></h1> 4881 4882 <ul> 4883 <li>modify sample xterm.spec to use newer icon</li> 4884 4885 <li>add configure option <code>--with-icon-symlink</code> to 4886 work around systems which map icon requests for to a single 4887 "xterm" icon, but neglect to install the icon needed for window 4888 decorations (report by H Merijn Brand).</li> 4889 4890 <li>improve parameterizing of sample xterm.spec</li> 4891 4892 <li>amend fix for printer from <a href="#xterm_280">patch 4893 #280</a>, removing a reset of the signal handler for 4894 <code>SIGCHLD</code> (report by Joe Julian).</li> 4895 4896 <li>set environment variable <code>XTERM_FILTER</code> if a 4897 locale-filter is used.</li> 4898 4899 <li>enable <code>DEBUG</code> logic when 4900 <code>--enable-trace</code> configure option is given.</li> 4901 4902 <li>improve description of <code>initialFont</code>, 4903 <code>set-vt-font</code> and <code>set-tex-text</code> in 4904 manpage (Debian #707899).</li> 4905 4906 <li>fix regression from <a href="#xterm_292">patch #292</a>; 4907 selecting a word that ended at the right margin without 4908 wrapping would not select the last cell (report by Christian 4909 Weisgerber).</li> 4910 </ul> 4911 4912 <h1><a name="xterm_292" id="xterm_292">Patch #292 - 4913 2013/04/25</a></h1> 4914 4915 <ul> 4916 <li>add limit-check when double-click selects a word; if the 4917 saved-lines were scrolled back and the word selected wrapped at 4918 the screen's lower right corner, an assertion was triggered 4919 (patch by Taketo Kabe).</li> 4920 4921 <li>correct limit-check in <code>unsaveEditBufLines</code>, 4922 fixing a case where enlarging the terminal size could show a 4923 blank line where there actually is available text (patch by 4924 Bertram Felgenhauer).</li> 4925 4926 <li>add <code>PasteControls</code> feature to 4927 <code>allowWindowOps</code> which by default disallows pasting 4928 control characters other than formatting such as carriage 4929 return (discussion with Hayaki Saito).</li> 4930 4931 <li>fix typo in ctlseqs.ms for DECRQM response (patch by 4932 Emanuele Giaquinta).</li> 4933 4934 <li>update default shown in configure <code>--help</code> 4935 message for <code>--with-terminal-id</code> option (patch by 4936 Andres Perera).</li> 4937 4938 <li>rename script/preprocessor variables used for substituting 4939 the <code>backarrowKey</code> default value for consistency 4940 (patch by Andres Perera).</li> 4941 4942 <li>set umask to 077 before creating debugging-trace 4943 files.</li> 4944 4945 <li>add configure option <code>--disable-openpty</code> to 4946 control whether openpty() may be used in preference to 4947 posix_openpt().</li> 4948 4949 <li>improve workaround from <a href="#xterm_279">patch #279</a> 4950 for BSD systems which do not complete initialization until both 4951 sides of the pseudoterminal are opened, by preferring openpty() 4952 function over posix_openpt() when available (report by 4953 Christian Weisgerber).</li> 4954 </ul> 4955 4956 <h1><a name="xterm_291" id="xterm_291">Patch #291 - 4957 2013/02/26</a></h1> 4958 4959 <ul> 4960 <li>add validity check for xterm widget parameter to 4961 <code>AlternateScroll</code> function, needed to handle wheel 4962 mouse events in the scrollbar area since <a href= 4963 "#xterm_282">patch #282</a> changes which introduced 4964 <code>alternateScroll</code> feature (Redhat #874327).</li> 4965 </ul> 4966 4967 <h1><a name="xterm_290" id="xterm_290">Patch #290 - 4968 2013/02/12</a></h1> 4969 4970 <ul> 4971 <li>revert of <a href="#xterm_282">patch #282</a> change was 4972 incomplete (report by Jim Reisert).</li> 4973 4974 <li>fix typo in manpage (report by Vincent 4975 Lefèvre).</li> 4976 </ul> 4977 4978 <h1><a name="xterm_289" id="xterm_289">Patch #289 - 4979 2013/02/08</a></h1> 4980 4981 <ul> 4982 <li>revert the <a href="#xterm_282">patch #282</a> change which 4983 restored "lost" text after shrinking/growing the screen size. 4984 If the screen was updated between the two resizing operations, 4985 unexpected text might be shown at the end (report/testcase by 4986 Joe Peterson).</li> 4987 4988 <li>reverse the arrow-keys sent for 4989 <code>alternateScroll</code> to match the usage in browsers 4990 (suggested by Dieter Roelants).</li> 4991 4992 <li>modify mouse reports to consistently indicate motion events 4993 whether or not a button is pressed. Old behavior (since 4994 <a href="#xterm_127">patch #127</a> modified encoding for wheel 4995 mouse) showed only that the button was released if no button 4996 had been pressed (report by Andy Koppe).</li> 4997 4998 <li>correct and improve behavior for SGR 1006 mouse protocol on 4999 button release in any-event mode. Initial implementation in 5000 <a href="#xterm_277">patch #277</a> left internal state showing 5001 the last button pressed when reporting motion events. It now 5002 keeps track of all buttons which have been pressed and 5003 released, showing the lowest remaining button by number in the 5004 response (reports by Hayaki Saito, Andy Koppe).</li> 5005 5006 <li>fix inconsistency between <code>TermColors</code> and 5007 <code>OscTextColors</code> enums which interchanged values for 5008 tektronix cursor color and highlight foreground in control 5009 sequences in <a href="#xterm_225">patch #225</a> (report/patch 5010 by Peder Stray).</li> 5011 5012 <li>fix inconsistent use of noreturn-attribute in 5013 <code>Exit</code> function which interfered with clang 5014 --analyze.</li> 5015 5016 <li>remove incorrect <code>free</code> used in computation of 5017 <code>XTERM_SHELL</code> variable, from Coverity fixes in 5018 <a href="#xterm_288">patch #288</a> (FreeBSD #175782).</li> 5019 5020 <li>add <code>--with-valgrind</code> option to configure script 5021 for consistency with my other programs.</li> 5022 5023 <li>update table of ambiguous width characters in wcwidth.c 5024 based on Unicode 6.2.0</li> 5025 5026 <li>update table of combining characters in wcwidth.c based on 5027 Unicode 6.2.0</li> 5028 5029 <li>update precompose.c based on Unicode 6.2.0</li> 5030 </ul> 5031 5032 <h1><a name="xterm_288" id="xterm_288">Patch #288 - 5033 2013/01/09</a></h1> 5034 5035 <ul> 5036 <li>fix a special case in <code>ShowCursor</code> where the 5037 foreground and background colors of the current position are 5038 the same. In that case, choose the further of the window's 5039 foreground and background colors for the cursor color.</li> 5040 5041 <li>modify <code>alternateScroll</code> feature added in 5042 <a href="#xterm_282">patch #282</a> to use either 5043 <code>CSI</code> or <code>SS3</code> according to the cursor 5044 keys application mode setting, to simplify using it in vi, etc. 5045 (suggested by Dietar Roelants).</li> 5046 5047 <li>revise manpage for <code>resize</code> to clarify the 5048 changes which <code>resize</code> may make to the terminal 5049 settings as well as to the terminal itself.</li> 5050 5051 <li>remove code such as <code>struct ttysize</code>, used for 5052 SunOS 3 and 4.</li> 5053 5054 <li>modify configure script and makefile to check for 5055 <code>groff</code> and suppress groff-specific rules if groff 5056 is not found.</li> 5057 5058 <li>modify ctlseqs.ms and makefile to work around bugs in 5059 <code>grohtml</code> which cause ".png" files to be truncated 5060 when producing html documentation.</li> 5061 5062 <li>modify suffix rules for "make docs" to make the names of 5063 the generated ".png" files predictable, helping to work around 5064 longstanding problems with this feature of groff—none of 5065 its releases work for <em>all</em> of xterm's tables..</li> 5066 5067 <li>correct typo in ctlseqs.ms for DECIC and DECDC; the 5068 character preceding the final "<code>~</code>" is an ASCII 5069 single-quote "<code>'</code>" rather than a space (report by 5070 Paul LeoNerd Evans).</li> 5071 5072 <li>update CF_GCC_VERSION macro, handling both Debian and 5073 Darwin.</li> 5074 5075 <li>improve configure script checks for the 5076 <code>--with-desktop-category</code> option. After <a href= 5077 "#xterm_280">patch #280</a> changes, if no value was given for 5078 this option, and no existing desktop files found for 5079 comparison, the incorrect "auto" value was passed into the 5080 generated desktop file (report by Julien Cristau).</li> 5081 5082 <li>modify sample build-scripts to disable check for 5083 <code>imake</code> due to code-rot in Xorg.</li> 5084 5085 <li>add <code>-v</code> command-line option to 5086 <code>resize</code>, reporting the same version string as 5087 <code>xterm</code> and the two shell-wrappers.</li> 5088 5089 <li>make name-transformation apply to other occurrences of 5090 <code>resize</code>, other manpages.</li> 5091 5092 <li>special-case the name-transformation in xterm's manpage in 5093 the NAME section so that the result works with 5094 <code>makewhatis</code> (report by Julien Cristau).</li> 5095 5096 <li>modify install-rules for manpages to put each program's 5097 respective transformed name into the header rather than 5098 xterm's.</li> 5099 5100 <li>remove deprecated files: proto.h, os2main.c</li> 5101 5102 <li>minor fixes based on Coverity scan, including: 5103 <ul> 5104 <li>correct caching of Atom value for the font menu's 5105 "Selection" entry.</li> 5106 5107 <li>ensure that utmp/utmpx calls do not depend upon 5108 trailing nulls in the <code>ut_id</code> and 5109 <code>ut_line</code> values.</li> 5110 </ul> 5111 </li> 5112 </ul> 5113 5114 <h1><a name="xterm_287" id="xterm_287">Patch #287 - 5115 2012/11/25</a></h1> 5116 5117 <ul> 5118 <li>fix a case where in_put() loop could continue when it has 5119 found an X event rather than the pty, causing the pty-read to 5120 be delayed (patch by Balazs Kezes).</li> 5121 5122 <li>add option to <code>pointerMode</code> resource and 5123 corresponding control sequences to allow text-cursor to remain 5124 hidden if the pointer leaves/enters the window via accelerator 5125 keys. Ordinary motion within the window restores the pointer 5126 (prompted by patch by Balazs Kezes).</li> 5127 5128 <li>remove special case of modifiers for the 5129 <code>Mode_switch</code> and <code>XK_ISO_Level3_Shift</code> 5130 from <a href="#xterm_223">patch #223</a>. Verified that the 5131 conflict which this was intended to resolve does not happen for 5132 normal compose- or modeswitch-handling (prompted by patch by 5133 Balazs Kezes, Debian #638694).</li> 5134 5135 <li>modify the handling of focus-change events to ignore those 5136 whose detail is <code>NotifyPointer</code>, since those are 5137 sent in addition to focus-change events directed to the old/new 5138 windows having focus. In particular, this prevents the 5139 urgency-hint from being reset inadvertently (prompted by patch 5140 by Balazs Kezes).</li> 5141 5142 <li>modify description of <code>iconName</code> in manpage to 5143 make it clearer that this resource does not specify the 5144 filename of an icon (discussion with Ian Collier).</li> 5145 5146 <li>modify <code>iconHint</code> resource to allow suppressing 5147 the built-in icon by setting this to "none" (discussion with 5148 Ian Collier).</li> 5149 5150 <li>make <code>-iconic</code> option work with the toolbar 5151 configuration.</li> 5152 5153 <li>correct initialization of window manager hints used to set 5154 the icon-pixmap. That detail from <a href="#xterm_282">patch 5155 #282</a> overwrote state used to control the 5156 <code>-iconic</code> command-line option (report by Ian 5157 Collier).</li> 5158 5159 <li>fix paste64 feature for the case where the selection comes 5160 from the current terminal. The selection callback can happen 5161 after the reply is partly built, making it necessary to flush 5162 the reply-buffer to keep things in the proper order (report by 5163 Ailin Nemui).</li> 5164 5165 <li>reject command-line options which are longer than the 5166 options in xterm's table, to avoid mismatches (Redhat 5167 #875305).</li> 5168 5169 <li>correct attribution for <a href="#xterm_282">patch #282</a> 5170 changes.</li> 5171 </ul> 5172 5173 <h1><a name="xterm_286" id="xterm_286">Patch #286 - 5174 2012/10/29</a></h1> 5175 5176 <ul> 5177 <li>fix <code>minstall.in</code> to work with "make docs" rule, 5178 so that patch number appears in the corresponding generated 5179 documentation.</li> 5180 5181 <li>modify <code>minstall.in</code> to keep the name shown in 5182 the heading consistent with any renaming, e.g., for 5183 test-builds.</li> 5184 5185 <li>check for misconfigured <code>printerCommand</code> 5186 resource on the first use, warn and disable it if it does not 5187 specify an executable command (Debian #691642).</li> 5188 5189 <li>improve check for window-manager name needed to establish 5190 usable default for activeIcon resource. This works around a 5191 scenario where <code>gdm</code> does incomplete cleanup, 5192 leaving window properties that refer to windows which no longer 5193 exist (Redhat #869959).</li> 5194 </ul> 5195 5196 <h1><a name="xterm_285" id="xterm_285">Patch #285 - 5197 2012/10/23</a></h1> 5198 5199 <ul> 5200 <li>add/adapt FreeBSD ports files for test-building.</li> 5201 5202 <li>modify <code>minstall.sh</code> to use the patch-number and 5203 date in the manpage footer.</li> 5204 5205 <li>add check for failure to allocate the fg/bg colors at 5206 startup, e.g., misconfiguration. Work around by setting both to 5207 the default colors (suggested by Scott Bertilson).</li> 5208 5209 <li>amend change for <a href="#xterm_280">patch #280</a> which 5210 added <code>modifyKeyboard</code>, to make 5211 <code>modifyOtherKeys</code> work (report by Ailin Nemui).</li> 5212 5213 <li>add <code>query-colors.pl</code> example for 5214 OSC 4.</li> 5215 5216 <li>correct mis-applied fix for minstall.sh (report by Miroslav 5217 Lichvar).</li> 5218 </ul> 5219 5220 <h1><a name="xterm_284" id="xterm_284">Patch #284 - 5221 2012/10/14</a></h1> 5222 5223 <ul> 5224 <li>amend configurability changes for icons from <a href= 5225 "#xterm_283">patch #283</a>, moving the new functionality to 5226 the <code>iconHint</code> resource to avoid conflict with 5227 existing uses of the <code>iconName</code> resource in the 5228 <code>Shell</code> widget (report by Emanuel Haupt).</li> 5229 5230 <li>fix documentation errata reported by Miroslav Lichvar: 5231 <ul> 5232 <li>correct manpage default for <code>allowTcapOps</code> 5233 (see <a href="#xterm_243">patch #243</a></li> 5234 5235 <li>modify documentation for configure 5236 <code>--enable-backarrow-key</code> to match the script 5237 (see <a href="#xterm_280">patch #280</a>).</li> 5238 5239 <li>fix typo in <code>minstall.sh</code> in <a href= 5240 "#xterm_283">patch #283</a>, which made the leading-cap 5241 "Xterm" become "xterm" (patch by Miroslav).</li> 5242 </ul> 5243 </li> 5244 5245 <li>fix two typos in configure.in from <a href= 5246 "#xterm_283">patch #283</a> changes; one broke the 5247 <code>--regex</code> configure option (report by H Merijn 5248 Brand).</li> 5249 </ul> 5250 5251 <h1><a name="xterm_283" id="xterm_283">Patch #283 - 5252 2012/10/09</a></h1> 5253 5254 <ul> 5255 <li>modify makefile and script to generate appropriate renaming 5256 s/xterm/xterm-dev/ for test-package's manpage.</li> 5257 5258 <li>improve makefile rules for installing/uninstalling pixmap 5259 files, to include the newer mini- and filled- variants.</li> 5260 5261 <li>clarify change in manpage regarding <a href= 5262 "#xterm_282">patch #282</a> change to always set a 5263 window-decoration icon, even if <code>iconName</code> is not 5264 set.</li> 5265 5266 <li>add a fourth flavor of window-decoration icons, 5267 "filled-xterm" for a monochrome xterm with filled 5268 interior.</li> 5269 5270 <li>use shape-mask to improve contrast of the window-decoration 5271 icons.</li> 5272 5273 <li>minor changes to icon colors to improve contrast on 5274 bright-mud backgrounds.</li> 5275 5276 <li>drop configure checks for memmove versus bcopy, and 5277 strerror function; all currently tested platforms support 5278 these.</li> 5279 5280 <li>cleanup configure macros, as done in byacc 20121003.</li> 5281 5282 <li>improve configurability of the built-in icon selectable via 5283 the <code>iconName</code> resource.</li> 5284 5285 <li>update config.guess, config.sub</li> 5286 </ul> 5287 5288 <h1><a name="xterm_282" id="xterm_282">Patch #282 - 5289 2012/09/28</a></h1> 5290 5291 <ul> 5292 <li>improve configure check for 5293 <code>XkbKeycodeToKeysym</code>, fixing a regression on some 5294 older systems in the <a href="#xterm_280">patch #280</a> 5295 changes.</li> 5296 5297 <li>add clarification in manpage for 5298 <code>alwaysBoldMode</code> and <code>veryBoldColors</code> 5299 resources (prompted by Derek Martin question about using the 5300 former with TrueType fonts).</li> 5301 5302 <li>add <code>alternateScroll</code> resource and corresponding 5303 control sequences which modify the <code>scroll-forw</code> and 5304 <code>scroll-back</code> actions: when the alternate screen is 5305 displayed, wheel mouse up/down will send cursor keys (Debian 5306 #683942).</li> 5307 5308 <li>improve rendering for the case when a Unicode character is 5309 absent in the bold font but present in the normal font by 5310 temporarily falling back to the normal font (Debian #359006, 5311 Debian #408666).</li> 5312 5313 <li>provide configure option 5314 <code>--enable-double-buffer</code> and ifdef's to allow 5315 comparisons with/without double-buffering. The default uses 5316 normal buffering.</li> 5317 5318 <li>add feature to optionally scroll current page before 5319 clearing, controlled by resource setting 5320 <code>cdXtraScroll</code> (prompted by patch by Balazs 5321 Kezes):</li> 5322 5323 <li>integrated patches from Arch Linux forum posting (patches 5324 by Balazs Kezes): 5325 <ul> 5326 <li>modify reallocation limit of line-data when resizing 5327 screen so that "lost" text will be restored if the screen 5328 is first shrunk and then grown.</li> 5329 5330 <li>modify output to use double-buffering to reduce 5331 flicker.</li> 5332 </ul> 5333 </li> 5334 5335 <li>modify <code>scroll-lock</code> action to handle 5336 on/off/toggle keywords like other actions. Previously the 5337 optional parameter was interpreted as an integer.</li> 5338 5339 <li>extend <code>DECSCUSR</code> to provide a way to set the 5340 cursor to a vertical bar (patch by Paul Bolle).</li> 5341 5342 <li>add <code>-8</code>, <code>-c</code>, <code>-d</code> and 5343 <code>-u</code> options to <code>88colors2.pl</code> and 5344 <code>256colors2.pl</code> scripts. No current terminal 5345 emulator recognizes C1 controls while handling UTF-8 5346 encoding—see notes in <a href="#xterm_119">patch #119</a> 5347 and <a href="#xterm_109">patch #109</a> regarding 5348 <code>utf8controls</code>—but the <code>-u</code> and 5349 <code>-8</code> options are useful for demonstrating this 5350 point.</li> 5351 5352 <li>improve speed when changing color palettes using OSC 5353 controls by deferring repaint while followup controls might be 5354 additional color palette changes.</li> 5355 5356 <li>modify <code>SGR 38</code> and 5357 <code>SGR 48</code> to accept RGB index, matching the 5358 closest entry in xterm's palette.</li> 5359 5360 <li>extend <code>SGR 38</code> and 5361 <code>SGR 48</code> to accept colon as parameter separator 5362 (request by Paul LeoNerd Evans).</li> 5363 5364 <li>modify <code>fullscreen</code> action to allow it to toggle 5365 the full-screen mode rather than only set or unset it (prompted 5366 by Eeri Kask's suggestion to support 5367 <code>_NET_WM_TOGGLE</code>). This implementation does not yet 5368 use <code>_NET_WM_TOGGLE</code>.</li> 5369 5370 <li>add support for <code>_NET_WM_STATE_MAXIMIZED_VERT</code> 5371 and <code>_NET_WM_STATE_MAXIMIZED_HORZ</code> EWMH properties 5372 (suggested by Eeri Kask).</li> 5373 5374 <li>make fullscreen mode work with the tek4014 window. This 5375 change makes only the currently active window to be changed to 5376 fullscreen rather than changing both windows.</li> 5377 5378 <li>modify <code>TekClear</code> function to discard pending 5379 output before clearing the tek4014 display (patch by Kevin 5380 Ryde).</li> 5381 5382 <li>fix <code>deleteIsDEL</code> feature, broken in <a href= 5383 "#xterm_280">patch #280</a> changes (report by Mike Thornburg, 5384 forwarded by Jeremy Huddleston).</li> 5385 5386 <li>fix a special case of wrapping double-width characters 5387 (report/test-case by Ken Winstein).</li> 5388 5389 <li>add <code>E3</code> extended capability to 5390 <code>xterm-basic</code> to match ncurses <a href= 5391 "https://invisible-island.net/ncurses/NEWS.html#t20120728">20120728</a> 5392 patch.</li> 5393 5394 <li>fix incorrect transformation of row-parameter for 5395 <code>ClearCurBackground</code> in <a href="#xterm_279">patch 5396 #279</a> which caused incorrect painting in some scrolling 5397 scenarios (report by Chuck Silvers).</li> 5398 5399 <li>fix typo in manpage description of <code>+maximized</code> 5400 option (Paul Maier).</li> 5401 5402 <li>change default for configure option 5403 <code>--with-xpm</code>, turning it on unless requested 5404 otherwise.</li> 5405 5406 <li>add configure option <code>--with-icon-name</code> which 5407 can be used to override the default icon used in 5408 icon-themes.</li> 5409 5410 <li>extend <code>activeIcon</code> resource to provide 5411 <code>default</code> value which tells xterm to determine the 5412 window manager's name and automatically enable the feature for 5413 fvwm and window maker. The explicit true/false values can be 5414 used to override this behavior.</li> 5415 5416 <li>add "mini" xterm icon, which scales better than the 5417 standard xterm icon, e.g., for the gnome/kde "panel" 5418 feature.</li> 5419 5420 <li>extend <code>iconName</code> resource to search for icon 5421 named according to resource value and use that if found. If not 5422 found, use compiled-in pixmap. Both set the WM_ICON_NAME 5423 property which is used by various window managers, usually for 5424 window decoration.</li> 5425 5426 <li>updated autoconf patch, adding support for --datarootdir, 5427 which changes the default location of manpages.</li> 5428 5429 <li>further improved autoconf macros for configuring icons, 5430 from vile 9.8h</li> 5431 </ul> 5432 5433 <h1><a name="xterm_281" id="xterm_281">Patch #281 - 5434 2012/06/26</a></h1> 5435 5436 <ul> 5437 <li>remove "$(srcdir)/" from install-icon rule to fix builds 5438 when --srcdir configuration option is used.</li> 5439 5440 <li>fix for configure script's search for icon file when it is 5441 not found in the current directory, e.g., when building out of 5442 tree (patch by Thierry Reding).</li> 5443 5444 <li>undo the XK_Home / XK_End change from <a href= 5445 "#xterm_280">patch #280</a> which broke the non-VT220 keyboard 5446 for those keys (report by H Merijn Brand).</li> 5447 </ul> 5448 5449 <h1><a name="xterm_280" id="xterm_280">Patch #280 - 5450 2012/06/24</a></h1> 5451 5452 <ul> 5453 <li>add configure check to work around warning from 5454 desktop-file-install for "Encoding", noting that it emits 5455 deprecation warnings without providing its version 5456 information.</li> 5457 5458 <li>add configure option <code>--with-icon-theme</code> to tell 5459 xterm whether to install into an icon theme, defaulting to 5460 "hicolor" (Redhat #755206, Redhat #799614 and Redhat 5461 #804279).</li> 5462 5463 <li>change <code>--with-icondir</code> to look for "icons" 5464 directory rather than "pixmaps" by default. Add new option 5465 <code>--with-pixmapdir</code> to allow these two uses to be 5466 installed concurrently.</li> 5467 5468 <li>modify configure options <code>--with-app-defaults</code> 5469 and <code>--with-icondir</code> to accept "auto" as value to 5470 look for existing directory from well-known locations.</li> 5471 5472 <li>add missing codes for secondary DA response which tell the 5473 type of terminal as in the primary DA response.</li> 5474 5475 <li>update primary DA response for VT420 to include user 5476 windows and horizontal scrolling.</li> 5477 5478 <li>add <code>modifyKeyboard</code> resource to support 5479 keypad-modifier changes per request by Thomas Wolff.</li> 5480 5481 <li>add XK_Home / XK_End to editing-keypad checks</li> 5482 5483 <li>add back-tab key <code>kB</code> to termcap entries to 5484 match the terminfo.</li> 5485 5486 <li>update terminfo to match corresponding entries in ncurses, 5487 e.g., add <code>XT</code> and adjust <code>sgr</code> string 5488 for xterm-bold entry.</li> 5489 5490 <li>add configure options to predefine the most commonly 5491 customized resources for terminal-settings, use those to 5492 substitute into the manpage the corresponding compiled-in 5493 values: <code>altSendsEscape</code>, <code>backarrowKey</code>, 5494 <code>backarrowKeyIsErase</code>, <code>deleteIsDEL</code>, 5495 <code>metaSendsEscape</code> (Redhat #819588).</li> 5496 5497 <li>change default emulation level to VT420 (discussion with 5498 Ailin Nemui).</li> 5499 5500 <li>improve logic for DECSCL; <a href="#xterm_279">patch 5501 279</a> partly enforced limitation of this to higher-level 5502 emulations. This patch finishes that change.</li> 5503 5504 <li>improve check for base of combining characters, preventing 5505 combination when cursor movement has intervened. Mosh's webpage 5506 gives two different examples of this, with other causes 5507 ascribed to the behavior.</li> 5508 5509 <li>modify IL/DL to set cursor to first column on row for 5510 better VT102/VT220 compatibility (prompted by code review of 5511 mosh).</li> 5512 5513 <li>separate state-table entries for DECSC/DECRC from the 5514 ANSI.SYS save/restore cursor, since the latter conflicts with 5515 DECSLRM when DECLRMM is enabled since <a href= 5516 "#xterm_279">patch #279</a> (report/analysis by Ailin 5517 Nemui).</li> 5518 5519 <li>fixes to avoid using <code>SIGCHLD</code> handler of main 5520 program in printer's subprocess (report by Joe Julian).</li> 5521 5522 <li>correct restore-parameter for mouse-modes from <a href= 5523 "#xterm_279">patch #279</a> changes.</li> 5524 5525 <li>add null-pointer checks to input-method caching added in 5526 <a href="#xterm_277">patch #277</a> to fix a problem in the 5527 exposure code, when deselecting a window (report by Kriston 5528 Rehberg).</li> 5529 5530 <li>unset <code>DESKTOP_STARTUP_ID</code> environment variable 5531 to lessen confusion on the part of GTK applications which use 5532 the variable without checking it (report by John Little).</li> 5533 </ul> 5534 5535 <h1><a name="xterm_279" id="xterm_279">Patch #279 - 5536 2012/05/10</a></h1> 5537 5538 <ul> 5539 <li>fill in missing cases in the save/restore modes feature 5540 (report by Thomas Wolff).</li> 5541 5542 <li>add check to ensure that combining characters are 5543 precomposed in the order given (report/analysis by Andries E 5544 Brouwer).</li> 5545 5546 <li>improve workability check for posix_openpt(), to take into 5547 account BSD systems which do not complete initialization until 5548 both sides of the pseudoterminal are opened (report by 5549 Christian Weisgerber).</li> 5550 5551 <li>amend fix for Debian #650291 in <a href="#xterm_277">patch 5552 #277</a> changes to account for different data returned by 5553 vnc4server (Debian #670638).</li> 5554 5555 <li>add check in DECCRA operation to make copies of blinking 5556 text also blink by updating a line-level flag.</li> 5557 5558 <li>modify rectangle operations to work with DECOM.</li> 5559 5560 <li>modify DECSERA to use the current protected state rather 5561 than preserving it.</li> 5562 5563 <li>add <code>precompose</code> resource to allow storing 5564 character data in Normalized Form D as described in <a href= 5565 "http://unicode.org/reports/tr15/">http://unicode.org/reports/tr15/</a> 5566 (report/discussion with Andries E Brouwer).</li> 5567 5568 <li>modify CBT, other ISO-6429 controls which are used by VT520 5569 to work with DECOM.</li> 5570 5571 <li>add HPR and VPR controls, ISO 6429 cursor movement used in 5572 VT520.</li> 5573 5574 <li>remove "linux" restriction for IUTF8 ifdef in main.c 5575 (prompted by Matthew Dempsky posting on 5576 mailing.openbsd.tech).</li> 5577 5578 <li>implement the remaining VT420-level device status 5579 reports.</li> 5580 5581 <li>change DECXCPR to return page 1, rather than 0.</li> 5582 5583 <li>improve VT-level checks on reporting functions, such as 5584 DECXCPR.</li> 5585 5586 <li>change limit on <code>decTerminalID</code> to 525.</li> 5587 5588 <li>fixes to improve vttest vt52 screen when running as a 5589 VT420: 5590 <ul> 5591 <li>add checks for some VT2xx and up controls for 5592 consistency: DECSCL, S1C8T, S1C7T.</li> 5593 5594 <li>modify DECRQSS return for DECSCL to only return that 5595 when running as VT2xx and up.</li> 5596 5597 <li>when exiting from VT52-mode, resume in VT100 level 5598 rather than the level before starting VT52-mode.</li> 5599 </ul> 5600 </li> 5601 5602 <li>implement DECLRMM, DECSLRMM and DECNCSM (prompted by 5603 discussions with Ailin Nemui and Paul LeoNerd Evans). This 5604 modifies several controls to obey top/bottom and left/right 5605 margins.</li> 5606 5607 <li>correct macro definition used for testing modes used in 5608 ANSI/DEC request-mode controls introduced in <a href= 5609 "#xterm_262">patch #262</a>.</li> 5610 5611 <li>modify <code>x_getlogin</code> to check $LOGNAME and $USER 5612 before fallback to <code>getlogin</code>, so that user's choice 5613 for these variables can be carried forward to the xterm process 5614 (Debian #611487).</li> 5615 5616 <li>document DECSCUSR response for DECRQSS in ctlseqs.ms</li> 5617 5618 <li>add <code>zIconTitleFormat</code> resource to allow 5619 customizing the "*** " prefixed to the icon title when the 5620 <code>zIconBeep</code> feature is activated (request by Thomas 5621 Adam).</li> 5622 5623 <li>modify DECSCUSR to update the same internal variable as 5624 RM/SM 12, and document in manpage the two variables used for 5625 controlling blinking cursor (report by Paul LeoNerd 5626 Evans).</li> 5627 5628 <li>correct response data for DECSCUSR in reply for DECRQSS 5629 response, which had inverted the blink-value (reports by Ailin 5630 Nemui, Paul LeoNerd Evans).</li> 5631 5632 <li>add a null-pointer check in <code>OkPasswd</code> macro to 5633 fix a problem in <code>resize</code> with Fedora 17 and a 5634 serial console (report/patch by Daniel Drake).</li> 5635 5636 <li>add workaround for Mac OS X, which loses the window size of 5637 a pseudo-terminal when the tty device is opened 5638 (report/analysis by Egmont Koblinger).</li> 5639 5640 <li>updated configure check for workable 5641 <code>posix_openpt</code> versus <code>grantpt</code>, from 5642 <code>luit</code> fixes.</li> 5643 5644 <li>modify DECIC/DECDC/DECBI/DECFI implemented in <a href= 5645 "#xterm_277">patch #277</a> to enable them only in VT4xx mode 5646 and up (report by Ailin Nemui).</li> 5647 5648 <li>update config.guess, config.sub</li> 5649 </ul> 5650 5651 <h1><a name="xterm_278" id="xterm_278">Patch #278 - 5652 2012/01/18</a></h1> 5653 5654 <ul> 5655 <li>correct initialization for <code>eightBitMeta</code> 5656 resource (FreeBSD #164101).</li> 5657 5658 <li>make special check for Darwin 9 (and lower) to <em>not</em> 5659 use <code>posix_openpt</code> (report by Christian Ebert).</li> 5660 5661 <li>minor fixes (adding ".ne" directives) to reduce the cases 5662 where groff's utility for generating images for tables dumps 5663 core. Most versions of groff (I've found 1.19.2 to be the most 5664 stable) dump core when attempting to report that there are too 5665 few lines on a page for a table to be shown.</li> 5666 </ul> 5667 5668 <h1><a name="xterm_277" id="xterm_277">Patch #277 - 5669 2012/01/07</a></h1> 5670 5671 <ul> 5672 <li>remove special case for ISC pseudo-terminals which attempts 5673 to open the pty in two different ways.</li> 5674 5675 <li>move call to <code>grantpt</code> before asking utempter to 5676 add a record, to work with kFreeBSD which does not update the 5677 terminal's ownership until this point (Debian #652907).</li> 5678 5679 <li>document limitation of XIM interface in manpage (Debian 5680 #230787).</li> 5681 5682 <li>cleanup error reporting with new xtermWarning 5683 function.</li> 5684 5685 <li>add configure option <code>--disable-selection-ops</code> 5686 to make the new actions optional.</li> 5687 5688 <li>add four new actions for making the selection or data 5689 directly copied from the screen (prompted by discussion in 5690 Debian #637001, as well as report by Arjen van Tol): 5691 <ul> 5692 <li>exec-formatted</li> 5693 5694 <li>exec-selectable</li> 5695 5696 <li>insert-formatted</li> 5697 5698 <li>insert-selectable</li> 5699 </ul> 5700 </li> 5701 5702 <li>add <code>visualBellLine</code> resource to allow 5703 <code>visualBell</code> to flash only the current line 5704 (prompted by patch by Gertjan Halkes).</li> 5705 5706 <li>add <code>eightBitMeta</code> resource to control the 5707 features which modify or interpret the eighth bit of a key when 5708 the meta modifier key is pressed (prompted by Debian 5709 #326200).</li> 5710 5711 <li>improve discussion of <code>eightBitInput</code> in the 5712 manpage (prompted by Debian #326200).</li> 5713 5714 <li>correct logic for <code>alt-sends-escape</code> action, 5715 overlooked when implementing <code>altSendsEscape</code> 5716 resource, which still used <code>eightBitInput</code> resource 5717 value.</li> 5718 5719 <li>add a workaround for <code>XAllocColor()</code>, which does 5720 not actually allocate "a read-only colormap entry corresponding 5721 to the closest RGB value supported by the hardware", but rather 5722 a rough approximation (Debian #650291).</li> 5723 5724 <li>undo parameter checks for <code>RequestResize()</code> 5725 added in <a href="#xterm_251">patch #251</a> and amended in 5726 <a href="#xterm_270">patch #270</a>, because zeros also are 5727 special cases (report by John S Urban).</li> 5728 5729 <li>modify some test-scripts to use <code>/bin/echo</code> 5730 rather than the shell's possibly-builtin <code>echo</code>, to 5731 work around broken configuration on Mac OS X, i.e., neither 5732 honoring the option nor flagging an error.</li> 5733 5734 <li>add SGR 1006, as a better technical solution than SGR 1015: 5735 <ul> 5736 <li>the responses will not be confused with line-deletion 5737 and scrolling controls.</li> 5738 5739 <li>the button encoding is a little simpler, since it does 5740 not add an unnecessary 32 because the integer parameter 5741 does not have to be represented as a printable 5742 character.</li> 5743 5744 <li>the control responses for pressing and releasing a 5745 mouse button differ, allowing an application to tell which 5746 button was released.</li> 5747 </ul> 5748 5749 <p>Besides these improvements, in discussion, it was noted 5750 that urxvt's implementation of 1005 is incorrect, relying 5751 upon a locale that provides UTF-8 encoding. In contrast, 5752 vttest demonstrates a correct decoding, independent of 5753 locale.</p> 5754 </li> 5755 5756 <li>add support for urxvt SGR 1015 to address shortcoming of 5757 SGR 1005 with luit (patch by Egmont Koblinger).</li> 5758 5759 <li>add ISO and DEC controls useful for left/right 5760 scrolling.</li> 5761 5762 <li>add some changes for OpenBSD and MirBSD (adapted from patch 5763 by Thorsten Glaser): 5764 <ul> 5765 <li>disable search for non-Unix96 ptys.</li> 5766 5767 <li>fix a gcc warning in 5768 <code>timestamp_filename</code></li> 5769 5770 <li>modify <code>Imakefile</code> to install xterm setgid 5771 to utmp.</li> 5772 </ul> 5773 </li> 5774 5775 <li>add/use/prefer <code>posix_openpt()</code> for opening 5776 pseudo-terminal.</li> 5777 5778 <li>modify special errno handling case in ptydata.c from 5779 <a href="#xterm_158">patch #158</a> to allow for the 5780 possibility that any platform may have special cases where 5781 "/dev/tty" is absent. For example, this can happen in a FreeBSD 5782 jail (patch by David Wolfskill).</li> 5783 5784 <li>add keyboard logic to map shift-tab into XK_ISO_Left_Tab, 5785 which is usually, not always, done by the X keyboard 5786 configuration.</li> 5787 5788 <li>portability fixes for some configure macros: 5789 <code>CF_XOPEN_SOURCE</code></li> 5790 </ul> 5791 5792 <h1><a name="xterm_276" id="xterm_276">Patch #276 - 5793 2011/10/10</a></h1> 5794 5795 <ul> 5796 <li>modify clipping limits for TrueType fonts to account for 5797 the <code>scaleHeight</code> resource setting, to work around 5798 another problem due to recent FreeType changes. In this case, 5799 the <code>DejaVu Sans Mono</code> set to pixelsize=13.5 is 5800 truncated because the font descent is reduced by FreeType to 5801 match an incorrect height metric (report by Adam Lee).</li> 5802 5803 <li>improve recovery when bitmap fonts are not installed, e.g., 5804 so that switching font-sizes works for TrueType fonts.</li> 5805 5806 <li>modify lookup for <code>XTERM_SHELL</code> feature to allow 5807 relative pathnames.</li> 5808 5809 <li>modify abbreviation disambiguation check for command-line 5810 parameters to account for <code>-geometry</code>, whose 5811 parameter may begin with "+" or "-" (report by Scott 5812 Bertilson).</li> 5813 </ul> 5814 5815 <h1><a name="xterm_275" id="xterm_275">Patch #275 - 5816 2011/09/11</a></h1> 5817 5818 <ul> 5819 <li>add <code>ash</code>, <code>zsh</code> to known shells for 5820 <code>resize</code>.</li> 5821 5822 <li>modify <code>resize</code> to reuse the logic from 5823 <code>xterm</code> which determines the actual logon-user's 5824 shell if <code>$SHELL</code> is not set.</li> 5825 5826 <li>revert the <code>unsetenv("SHELL")</code> added in <a href= 5827 "#xterm_272">patch #272</a>.</li> 5828 5829 <li>an <code>unsetenv("SHELL")</code> added in <a href= 5830 "#xterm_272">patch #272</a> to help ensure that 5831 <code>luit</code> would get the user's shell consistently did 5832 not work as expected for cases where multiple names are in the 5833 password-file for a given uid. That was because changes in 5834 <a href="#xterm_157">patch #157</a> to handle this situation 5835 did not take into account that repeated calls to 5836 <code>getpwnam</code> and <code>getpwuid</code> return a 5837 pointer to the same static buffer. Fixed the older logic to 5838 work as intended, by ensuring that the passwd-data from each 5839 call is stored separately (report by Paul Keusemann).</li> 5840 5841 <li>adjust ifdef's for <code>putenv</code> and 5842 <code>unsetenv</code> in case only one of those is provided on 5843 a given platform.</li> 5844 5845 <li>correct comparison used in <code>ExposeContains</code> 5846 macro from <a href="#xterm_274">patch #274</a> changes, to 5847 handle window-dragging (patch by Todd Eigenschink).</li> 5848 </ul> 5849 5850 <h1><a name="xterm_274" id="xterm_274">Patch #274 - 5851 2011/09/05</a></h1> 5852 5853 <ul> 5854 <li>portability fixes for cygwin: do not define 5855 <code>SVR4</code>, and work around nonstandard header 5856 location.</li> 5857 5858 <li>ifdef'd use of <code>unsetenv</code> from <a href= 5859 "#xterm_273">patch #273</a> changes to work with Solaris 9 5860 (report by Waldemar Rachwal).</li> 5861 5862 <li>modify logic for <code>XtAppPending</code> to merge 5863 adjacent <code>Expose</code> and <code>ConfigureNotify</code> 5864 events which are redundant (report by Edward McGuire).</li> 5865 5866 <li>fix an unneeded warning message when <code>-r</code> option 5867 is given.</li> 5868 5869 <li>remove a few redundant entries from table used for helping 5870 abbreviation-checking of command-line options, makes 5871 <code>-geom</code> work again after <a href="#xterm_272">patch 5872 #272</a> changes as an abbreviation of 5873 <code>-geometry</code>.</li> 5874 5875 <li>add <code>scaleHeight</code> resource and command-line 5876 option <code>-sh</code> as workaround for some 5877 font-configurations broken by changes in FreeType 2.4.6 (report 5878 by Miroslav Hodak).</li> 5879 5880 <li>portability fixes for some configure macros: 5881 <code>CF_FUNC_TGETENT</code>, <code>CF_XOPEN_SOURCE</code>, 5882 <code>CF_X_ATHENA_LIBS</code>.</li> 5883 5884 <li>add configure option <code>--with-freetype-config</code> to 5885 improve selection over the plethora of configuration options 5886 which freetype has so far provided.</li> 5887 5888 <li>build-fix for configure <code>--enable-load-vt-fonts</code> 5889 when <code>--enable-widec</code> is not specified.</li> 5890 5891 <li>build-fixes for suppressing various features, needed after 5892 changes in patches 270, 271 and 272 (report by Brian 5893 Lindholm)</li> 5894 </ul> 5895 5896 <h1><a name="xterm_273" id="xterm_273">Patch #273 - 5897 2011/08/25</a></h1> 5898 5899 <ul> 5900 <li>build-fix for out-of-tree "make docs" rule.</li> 5901 5902 <li>correct a typo in <code>x_strdup</code>, from <a href= 5903 "#xterm_198">patch #198</a> changes.</li> 5904 5905 <li>correct initialization for <code>-e</code> option, broken 5906 in <a href="#xterm_272">patch #272</a> changes (report by 5907 Gabriele Balducci).</li> 5908 5909 <li>build-fix for out-of-tree builds to address 5910 <code>minstall</code> script changes in <a href= 5911 "#xterm_272">patch #272</a> (patch by Thierry Reding).</li> 5912 </ul> 5913 5914 <h1><a name="xterm_272" id="xterm_272">Patch #272 - 5915 2011/08/24</a></h1> 5916 5917 <ul> 5918 <li>document limitation of <code>Gtk</code> in connection with 5919 xterm's <code>-into</code> option, in the manpage (Ubuntu 5920 #806969).</li> 5921 5922 <li>improve <code>-into</code> by checking for and using the 5923 size of the window within which xterm is embedded, overriding 5924 other clues.</li> 5925 5926 <li>modify logic for <code>localeFilter</code> resource to 5927 allow that to include command-line options of luit.</li> 5928 5929 <li>improve <code>-into</code> by checking for invalid 5930 window-id, and allowing hexadecimal/decimal/octal values.</li> 5931 5932 <li>improve <code>keepSelection</code>, adding the case where 5933 the highlighting is cleared, overlooked in <a href= 5934 "#xterm_230">patch #230</a> (patch by Marco Peereboom).</li> 5935 5936 <li>improve command-line parsing to make abbreviate options 5937 work consistently across xterm-specific versus standard X 5938 toolkit options, and report cases where an abbreviated option 5939 happens to be ambiguous. In particular, <code>-d</code> now 5940 works as an abbreviation for <code>-display</code>.</li> 5941 5942 <li>fix regression in command-line parsing introduced in 5943 <a href="#xterm_271">patch #271</a> changes for Debian #629358, 5944 (Debian #637910).</li> 5945 5946 <li>split-out new termcap/terminfo building block 5947 <code>xterm+kbs</code> for configurability.</li> 5948 5949 <li>modify <code>terminfo</code> file to reflect changes in 5950 ncurses for <code>xterm-16color</code> and 5951 <code>xterm-256color</code>.</li> 5952 5953 <li>modify <code>minstall.sh</code>, etc., to reflect the 5954 default default class, <code>$TERM</code> and 5955 <code>decTerminalID</code> values.</li> 5956 5957 <li>reword <code>resize</code> manpage to reflect the fact that 5958 <code>$TERMCAP</code> is not set on all systems (patch by Alan 5959 Coopersmith).</li> 5960 5961 <li>work around combined Xaw6/Xaw7 package in DragonFlyBSD 5962 which omits the usual symbolic link to the preferred library 5963 name.</li> 5964 5965 <li>further improve build-fix for termcap systems by checking 5966 for some which are only partial implementations, e.g., termcap 5967 2.08 in CentOS 5.2</li> 5968 </ul> 5969 5970 <h1><a name="xterm_271" id="xterm_271">Patch #271 - 5971 2011/07/14</a></h1> 5972 5973 <ul> 5974 <li>omit permissions adjustments to pty on exit except for 5975 pre-Unix98 ptys, since modern implementations handle this 5976 (report by Sean C Farley).</li> 5977 5978 <li>modify logic for switching fonts between UTF-8 and 5979 non-UTF-8 encoding to not merge the derivable bold-, wide- and 5980 widebold values from the VT100 fonts. Also suppress warning 5981 when not using UTF-8 fonts if wide- and widebold-fonts cannot 5982 be derived or otherwise loaded (report by Werner 5983 Scheinast).</li> 5984 5985 <li>modify menu-creation to suppress entries which will never 5986 be used in the current configuration, rather than simply 5987 disabling them.</li> 5988 5989 <li>add resource <code>printModeImmediate</code> and menu item 5990 to allow print of screen plus saved lines to a file.</li> 5991 5992 <li>add menu item to allow runtime enable/disable of the 5993 <code>printFileOnXError</code> feature.</li> 5994 5995 <li>append a timestamp to filename used in 5996 <code>printFileOnXError</code> feature, and restrict its 5997 permissions (request by Vincent Lefèvre).</li> 5998 5999 <li>add a check when cancelling cursor-blinking, in case the 6000 cursor is blinked off. Fix so that the cursor is repainted 6001 without waiting for other events, e.g., keypress (report by 6002 Ailin Nemui).</li> 6003 6004 <li>add configure <code>--with-app-class</code> option, to 6005 simplify building "xterm-dev" packages with filenames that do 6006 not conflict with conventional "xterm" packages.</li> 6007 6008 <li>corrected logic flow for DECSCL, which prevented the 6009 updated operating level from being reported via DECRQSS (report 6010 by Ailin Nemui).</li> 6011 6012 <li>corrected default for <code>brokenStringTerm</code> 6013 resource to match manpage.</li> 6014 6015 <li>add vttests/dynamic.pl</li> 6016 6017 <li>add runtime check for locale not supported by X libraries, 6018 and fallback to XA_STRING in this case (request by Bryan 6019 Henderson).</li> 6020 6021 <li>fix a special case in configure script after no FreeType 6022 libraries are found. The script was proceeding to check for a 6023 usable configuration.</li> 6024 6025 <li>add <code>xterm+tmux</code> building block to terminfo 6026 (adapted from changes proposed by Ailin Nemui and Nicholas 6027 Marriott).</li> 6028 6029 <li>improve discussion of <code>faceName</code> resource in 6030 manpage (adapted from suggestions by Jens Schweikhardt).</li> 6031 6032 <li>correct mapping of shifted up/down cursor-keys in termcap 6033 function-keys mode, i.e., resource 6034 <code>tcapFunctionKeys</code> (patch by Gertjan Halkes).</li> 6035 6036 <li>update AIX case in <code>CF_XOPEN_SOURCE</code> configure 6037 macro to add release 7.x.</li> 6038 6039 <li>modify ifdef's in <code>xterm_io.h</code> for 6040 <code>__hpux</code> to force that to use the hacked SYSV 6041 support in that file. This fixes a problem with a non-blocking 6042 socket call (patch by Paul Lampert).</li> 6043 6044 <li>improve filtering of desktop category scanning, to exclude 6045 XFCE.</li> 6046 6047 <li>modify configure script to work with systems that have both 6048 ncurses (or other terminfo) as well as a real termcap library, 6049 e.g., Slackware (report by Andrew Watts).</li> 6050 6051 <li>modify configure script to work around special case where 6052 user's environment adds compiler flags to the <code>CC</code> 6053 variable (prompted by report by Paul Lampert).</li> 6054 6055 <li>amend change for Debian #110226 so that "-h" or "-v" 6056 options cause an exit, rather than simply printing to stdout 6057 while the window is displayed (Debian #629358).</li> 6058 6059 <li>add response for <code>DECRQSS</code> which gives the 6060 setting for <code>DECSCUSR</code>.</li> 6061 6062 <li>modify AllocateTermColor() to handle 6063 <code>XtDefaultForeground</code> and 6064 <code>XtDefaultBackground</code>, which are not recognized by 6065 <code>XParseColor</code>. For example, this fixes the use of 6066 OSC 112 when no explicit cursor color was set (report by 6067 Ailin Nemui).</li> 6068 6069 <li>handle special-case of <code>KeyPress</code> translated to 6070 <code>popup-menu</code> action (Ubuntu #756273).</li> 6071 </ul> 6072 6073 <h1><a name="xterm_270" id="xterm_270">Patch #270 - 6074 2011/04/26</a></h1> 6075 6076 <ul> 6077 <li>build-fix, e.g., for using <code>imake</code> on platforms 6078 which use the termcap library.</li> 6079 6080 <li>modify <code>utf8</code> resource to accept a name.</li> 6081 6082 <li>mention default for <code>fontWarnings</code> in manpage 6083 (report by Werner Scheinast).</li> 6084 6085 <li>split "UTF-8" menu entry into "UTF-8 Encoding" and "UTF-8 6086 Fonts" (prompted by discussion with Werner Scheinast).</li> 6087 6088 <li>gray-out font-menu entries when a font fails to load, e.g., 6089 a bitmap font is not installed.</li> 6090 6091 <li>improve behavior when there is no app-defaults file: 6092 <ul> 6093 <li>set the <code>toolBar</code> resource to false</li> 6094 6095 <li>gray-out the font menu entries where no resource is 6096 found.</li> 6097 </ul> 6098 </li> 6099 6100 <li>add configure option <code>--with-desktop-category</code> 6101 to allow customization of the ".desktop" files.</li> 6102 6103 <li>build-fix for the <code>install-desktop</code> 6104 makefile-rule, when the source/build directories differ (patch 6105 by Loïc Minier).</li> 6106 6107 <li>add menu entry and corresponding resource which can be used 6108 to suppress all bold-fonts (discussion with Jan 6109 Engelhardt).</li> 6110 6111 <li>make internal line-size value consistent with allocated 6112 sizes of character and related arrays to ensure that bulk 6113 copying of line data, e.g., in scrolling, accounts for the 6114 padding used for pointer alignment (adapted from patch by 6115 Rajesh Mandalemula, also reported by Ali Bahar).</li> 6116 6117 <li>widen ifdef for screen-resizing logic from <a href= 6118 "#xterm_176">patch #176</a> changes to send 6119 <code>SIGWINCH</code> to process group to include any system 6120 supporting <code>ioctl(*,TIOCGPGRP,*)</code> (prompted by 6121 linux-specific patch in OpenSUSE rpm package).</li> 6122 6123 <li>add <code>printModeOnXError</code> and 6124 <code>printFileOnXError</code> resources, which allow the user 6125 to specify that xterm will write the contents of its screen to 6126 a file if it is exiting due to an X error (Debian 6127 #280457).</li> 6128 6129 <li>restore logic that made reverse-video apply to the 6130 scrollbar's foreground/background, broken in <a href= 6131 "#xterm_158">patch #158</a> (report by Bryan Ischo).</li> 6132 6133 <li>amend some of the window operations parameter-checks added 6134 in <a href="#xterm_251">patch #251</a> for the push/pop title 6135 feature, to allow the parameters used for window resizing to be 6136 -1's, which makes the corresponding values ignored rather than 6137 using the window's maximum width/height (report by Noah 6138 Friedman).</li> 6139 6140 <li>correct order of initialization for 6141 <code>translations</code> vs <code>fullscreen</code> resources 6142 to enable a special case which omits the Alt-Enter translation 6143 when <code>fullscreen</code> is disabled (Debian #612978).</li> 6144 6145 <li>update config.guess, config.sub</li> 6146 </ul> 6147 6148 <h1><a name="xterm_269" id="xterm_269">Patch #269 - 6149 2011/02/19</a></h1> 6150 6151 <ul> 6152 <li>build-fixes for <code>imake</code> (report by Heiko 6153 Berges).</li> 6154 6155 <li>modify autoconf macro CF_PKG_CONFIG to work with 6156 cross-compile environments (patch by Thierry Reding).</li> 6157 6158 <li>modify <code>MapToColorMode()</code> to favor bold over 6159 underline, matching the precedence used before <a href= 6160 "#xterm_252">patch #252</a> (report/analysis by Nicolas 6161 George).</li> 6162 6163 <li>add <code>omitTranslation</code> resource, which can be 6164 used to suppress the default translations for these features: 6165 <ul> 6166 <li>fullscreen</li> 6167 6168 <li>scroll-lock</li> 6169 6170 <li>shift-fonts</li> 6171 6172 <li>wheel-mouse</li> 6173 </ul> 6174 </li> 6175 6176 <li>make the fullscreen feature configurable (Debian #612978) 6177 <ul> 6178 <li>add it to the configurable list 6179 <code>disallowedWindowOps</code>.</li> 6180 6181 <li>add command-line option <code>-fullscreen</code> to 6182 allow the feature to be enabled at startup.</li> 6183 6184 <li>add resource <code>fullscreen</code> to control whether 6185 the feature is active or may be enabled.</li> 6186 </ul> 6187 </li> 6188 6189 <li>modify <code>probe_netwm_fullscreen_capability</code> for 6190 64-bit machines. Contrary to <code>XGetWindowProperty</code> 6191 manpage, that function returns 32-bit data packed as 6192 <code>long</code>'s.</li> 6193 6194 <li>eliminate copy of <code>name</code> resource, which was 6195 otherwise used only to give the terminal-description name for 6196 the tcap-query feature. Use the actual <code>$TERM</code> value 6197 instead, as derived from <code>termName</code> resource, 6198 etc.</li> 6199 6200 <li>eliminate an old inconsistency with error messages, some 6201 used the <code>-name</code> option, while others used 6202 <code>argv[0]</code>. The latter is now used consistently.</li> 6203 6204 <li>improve configure check for rpath-hack, to improve builds 6205 on systems where gcc will not search /usr/local/lib, etc.</li> 6206 6207 <li>build-fix for Xaw3d configuration (report by H Merijn 6208 Brand).</li> 6209 6210 <li>update config.guess, config.sub</li> 6211 </ul> 6212 6213 <h1><a name="xterm_268" id="xterm_268">Patch #268 - 6214 2011/02/10</a></h1> 6215 6216 <ul> 6217 <li>fix an inconsistency of the "Enable Reverse Video" checkbox 6218 in the VT Options menu. This also removes a special case added 6219 in <a href="#xterm_217">patch #217</a> which limited the effect 6220 of the <code>reverseVideo</code> resource (Debian 6221 #603808).</li> 6222 6223 <li>amend decoding of misformed UTF-8 sequences to avoid 6224 absorbing valid characters as documented in Unicode 6.0 section 6225 3.9 (report by Keith Winstein).</li> 6226 6227 <li>do not set urgency hint when window already has focus 6228 (patch by Dimitrios Christidis).</li> 6229 6230 <li>amend extended mouse-coordinate mode from <a href= 6231 "#xterm_262">patch #262</a> changes to include the <em>Cb</em> 6232 button-code, which also may be greater than 127 (report by 6233 Ailin Nemui).</li> 6234 6235 <li>ensure that underline-cursor is visible when an application 6236 happens to set the background color (report by Christian 6237 Weisgerber).</li> 6238 6239 <li>add feature for <a href= 6240 "http://www.davidsimmons.com/soft/xtermhacks/xterm-fullscreen.patch"> 6241 full-screen toggling</a> using either Alt-Enter or a menu 6242 selection (integrated patch by Dave Simmons).</li> 6243 6244 <li>add missing logic to handle reallocation of FIFO index for 6245 the "UTF-8" menu entry (report by David Holland, NetBSD 6246 #44344).</li> 6247 6248 <li>add makefile rules <code>docs-ctlseqs</code>, 6249 <code>docs-xterm</code>, etc.</li> 6250 6251 <li>correct typo in description of DECRPM in control sequences 6252 document (report by Ailin Nemui).</li> 6253 </ul> 6254 6255 <h1><a name="xterm_267" id="xterm_267">Patch #267 - 6256 2010/11/20</a></h1> 6257 6258 <ul> 6259 <li>minor formatting changes to ctlseqs.ms to simplify a script 6260 which extracts the feature information. See the results in 6261 <a href= 6262 "https://invisible-island.net/xterm/xterm.faq.html#compare_versions"> 6263 Comparing versions, by counting controls</a> in the xterm 6264 FAQ.</li> 6265 6266 <li>add <code>docs-clean</code> makefile rule.</li> 6267 6268 <li>add <code>copy-selection</code> action (request by Timo 6269 Juhani Lindfors, Debian #588785).</li> 6270 6271 <li>trim leading/trailing blanks from string used for 6272 "Selection" font-menu data.</li> 6273 6274 <li>trim leading/trailing blanks from color resource 6275 values.</li> 6276 6277 <li>configure script improvements: 6278 <ul> 6279 <li>add workaround for removal of X11 dependency from Xt's 6280 package file (report by Robert Hooker).</li> 6281 6282 <li>add workaround for removal of fontconfig dependency 6283 from Xft's package file (report by Jeremy Huddleston).</li> 6284 6285 <li>add workaround for removal of Xmu dependency from Xaw's 6286 package file (report by Jeremy Huddleston).</li> 6287 6288 <li>improve workaround in <code>CF_X_TOOLKIT</code> macro, 6289 checking for other possible packages where Xt's 6290 dependencies may be given.</li> 6291 6292 <li>prefer <code>${name:=value}</code> to 6293 <code>${name-value}</code>, since recent bash changes break 6294 legacy support for that feature.</li> 6295 </ul> 6296 </li> 6297 </ul> 6298 6299 <h1><a name="xterm_266" id="xterm_266">Patch #266 - 6300 2010/10/24</a></h1> 6301 6302 <ul> 6303 <li>add rpm and dpkg scripts, for testing.</li> 6304 6305 <li>more fixes for Debian #600707 (report by Cyril 6306 Brulebois).</li> 6307 </ul> 6308 6309 <h1><a name="xterm_265" id="xterm_265">Patch #265 - 6310 2010/10/22</a></h1> 6311 6312 <ul> 6313 <li>fix a regression in fontname logic from <a href= 6314 "#xterm_263">patch #263</a> changes (Debian #600707, reported 6315 by Vincent Lefèvre).</li> 6316 6317 <li>revert modification of any-event/any-button protocol from 6318 <a href="#xterm_263">patch #263</a> changes. It interferes with 6319 selection using a shifted mouse button (reports by Neil Bird, 6320 Bram Moolenaar).</li> 6321 </ul> 6322 6323 <h1><a name="xterm_264" id="xterm_264">Patch #264 - 6324 2010/10/14</a></h1> 6325 6326 <ul> 6327 <li>replace a null-pointer check with check for empty string in 6328 <code>xtermOpenFont</code>, to eliminate a warning message from 6329 <a href="#xterm_263">patch #263</a> changes.</li> 6330 6331 <li>build-fix for <a href="#xterm_263">patch #263</a> when 6332 toolbar is not configured (patch by Chris Clayton) (reports by 6333 Robby Workman, David Wood).</li> 6334 </ul> 6335 6336 <h1><a name="xterm_263" id="xterm_263">Patch #263 - 6337 2010/10/13</a></h1> 6338 6339 <ul> 6340 <li>corrected initialization of "misc" resource values, to 6341 ensure that xterm has allocated a copy of strings which may not 6342 have been malloc'd by the X library (Debian #600129).</li> 6343 6344 <li>modify handling of any-event/any-button mouse protocol; it 6345 now is active with any combination of key-modifiers.</li> 6346 6347 <li>add debugging feature <code>showWrapMarks</code>, which 6348 marks lines which xterm knows are wrapped, showing where a 6349 double-click will select past the end of a line.</li> 6350 6351 <li>build-fix to address change in include-guards for 6352 <code>Xlib.h</code> in ongoing Xorg edits (patch by Jeremy 6353 Huddleston).</li> 6354 6355 <li>improve <code>pointerMode</code> by continuing to watch for 6356 motion events after mouse tracking is disabled if the pointer 6357 is hidden (Debian #594856).</li> 6358 6359 <li>further extend initialization for active-icon font to check 6360 if the font was not loaded successfully, to retry with 6361 <code>font1</code>, or as even (if TrueType fonts are used) to 6362 use a TrueType font. The retries are to help with cases as in 6363 <a href="#xterm_241">patch #241</a> where the bitmap fonts are 6364 not available.</li> 6365 6366 <li>fix special case of active-icon used when TrueType font is 6367 specified for the xterm window, from <a href="#xterm_261">patch 6368 #261</a> change. In that case, the default font's size was used 6369 for layout of the active icon's window (Debian #591265).</li> 6370 </ul> 6371 6372 <h1><a name="xterm_262" id="xterm_262">Patch #262 - 2010/8/30</a></h1> 6373 6374 <ul> 6375 <li>fix a case where changing the cursor color via escape 6376 sequences did not immediately update the screen (report by 6377 Andreas Wagner).</li> 6378 6379 <li>implement ANSI and DEC request-mode control sequences. The 6380 latter includes the xterm-specific private modes such as the 6381 mouse mode. The feature is ifdef'd with the rectangle 6382 operations since its decoding overlaps that feature.</li> 6383 6384 <li>correct typo in ctlseqs.ms for response of OSC 21 (patch by 6385 Kevin Schoedel).</li> 6386 6387 <li>improve discussion of mouse tracking in ctlseqs.ms</li> 6388 6389 <li>increase an array limit used in reporting mouse events 6390 (report by Ryan Johnson).</li> 6391 6392 <li>add extended mouse-coordinates mode, allowing up to 6393 2015x2015 windows, using UTF-8 encoding (patch by Ryan 6394 Johnson).</li> 6395 6396 <li>modify manpage hyphens to conform with <a href= 6397 "http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html"> 6398 Debian</a>.</li> 6399 </ul> 6400 6401 <h1><a name="xterm_261" id="xterm_261">Patch #261 - 2010/6/28</a></h1> 6402 6403 <ul> 6404 <li>fix regression in <code>renderFont</code> logic, from 6405 <a href="#xterm_260">patch #260</a> changes (report by Joseph 6406 Quinsey).</li> 6407 </ul> 6408 6409 <h1><a name="xterm_260" id="xterm_260">Patch #260 - 2010/6/20</a></h1> 6410 6411 <ul> 6412 <li>modify <code>plink.sh</code> to work around problem linking 6413 to recent PCRE libraries.</li> 6414 6415 <li>extend <code>renderFont</code> resource to allow deferred 6416 switch to TrueType fonts without affecting existing resource 6417 settings (Debian #585620).</li> 6418 6419 <li>modify configure macro CF_X_TOOLKIT to work around omission 6420 of ICE library from ".pc" file (report by Miroslav 6421 Lichvar).</li> 6422 6423 <li>change configure script default for 6424 <code>--enable-broken-st</code> i.e., the 6425 <code>brokenStringTerm</code> feature) to normally enable it. 6426 If the corresponding resource is enabled, this feature 6427 eliminates an apparent freeze of xterm when sending mis-encoded 6428 data to the screen (Debian #584801).</li> 6429 6430 <li>document in manpage some actions which were overlooked: 6431 <ul> 6432 <li>readline-button</li> 6433 6434 <li>scroll-lock</li> 6435 6436 <li>set-8-bit-control</li> 6437 </ul> 6438 </li> 6439 6440 <li>undo a change to limit-check in <code>ScrnRefresh</code> in 6441 <a href="#xterm_257">patch #257</a>, which broke 6442 <code>fastScroll</code> feature (Debian #584841).</li> 6443 6444 <li>modify handling of <code>brokenLinuxOSC</code> and 6445 <code>brokenStringTerm</code> to also sound the bell.</li> 6446 6447 <li>add control/D and control/Q to controls which will cause 6448 early exit from control string per 6449 <code>brokenStringTerm</code> resource.</li> 6450 6451 <li>improve documentation of <code>brokenStringTerm</code> 6452 resource in manpage.</li> 6453 </ul> 6454 6455 <h1><a name="xterm_259" id="xterm_259">Patch #259 - 2010/6/5</a></h1> 6456 6457 <ul> 6458 <li>modify configure check for <a href= 6459 "https://invisible-island.net/luit/">luit</a> to include new 6460 aliases for the program (<code>xterm-filter</code> and 6461 <code>bluit</code>).</li> 6462 6463 <li>add workaround in <code>xtermClearLEDs()</code> to account 6464 for Xkb's override, making vttest's LED demo reset the scroll 6465 lock.</li> 6466 6467 <li>filter out client-message events when deciding whether to 6468 hide cursor, e.g., when using SCIM (patch/report by anonymous 6469 user).</li> 6470 6471 <li>improve description of <code>-bd</code> option in manpage 6472 (report by Guy Daniel Clotilde).</li> 6473 6474 <li>modify configure checks for PCRE and other libraries to use 6475 <code>pkg-config</code>, if available.</li> 6476 6477 <li>amend change from <a href="#xterm_252">patch #252</a>, to 6478 take <code>veryColorColors</code> resource into account when 6479 checking <code>colorBDMode</code> resource for TrueType fonts 6480 (report by anonymous user).</li> 6481 6482 <li>add <code>vttests/query-fonts.pl</code> script for 6483 demonstrating the <code>OSC 50</code> font query.</li> 6484 6485 <li>improve manpage discussion of Scroll Lock feature.</li> 6486 6487 <li>improve configure macros CF_GCC_VERSION and 6488 CF_GCC_WARNINGS.</li> 6489 6490 <li>fix warnings for "clang --analyze".</li> 6491 6492 <li>change default for <code>allowScrollLock</code> resource to 6493 <code>false</code>, noting that the supposedly unused key has 6494 been useful for various rebindings (Debian #580946).</li> 6495 </ul> 6496 6497 <h1><a name="xterm_258" id="xterm_258">Patch #258 - 2010/5/1</a></h1> 6498 6499 <ul> 6500 <li>add pointer-checks in <code>ScrnRefresh</code> to fix a 6501 case in rapid scrolling where an empty record is fetched from 6502 the scrollback FIFO.</li> 6503 </ul> 6504 6505 <h1><a name="xterm_257" id="xterm_257">Patch #257 - 2010/4/22</a></h1> 6506 6507 <ul> 6508 <li>correct ctlseqs.ms description of OSC 17 and OSC 19 (patch 6509 by Emanuele Giaquinta).</li> 6510 6511 <li>corrected logic for <code>menuLocale</code> resource; the 6512 <code>setlocale</code> function returns the original locale 6513 only when querying.</li> 6514 6515 <li>improve filtering of translations resource, narrowing the 6516 scope of the <code>alwaysUseMods</code> to address only the 6517 translations that would cause a key to be sent to the host 6518 (report by Andrew Gaylard).</li> 6519 6520 <li>change default value of <code>menuLocale</code> resource to 6521 "C", to work around longstanding <a href= 6522 "https://invisible-island.net/xterm/xterm.faq.html#slow_menus">Xorg 6523 bug</a>.</li> 6524 6525 <li>modify handling of <code>scrollKey</code> feature to ignore 6526 XON/XOFF keys.</li> 6527 6528 <li>implement scroll-lock feature.</li> 6529 6530 <li>revise memory allocation in UTF8toLatin1() to fix an 6531 out-of-bounds index (Mandriva #54531).</li> 6532 6533 <li>compute value for first wide-character rather than assuming 6534 it is 256, fixes problem with <code>-cjk_width</code> 6535 introduced in patches <a href="#xterm_242">242</a> and <a href= 6536 "#xterm_249">249</a> (report by Thomas Wolff).</li> 6537 6538 <li>improve configure script: 6539 <ul> 6540 <li>corrected check for <code>_XOPEN_SOURCE</code> for 6541 OpenSolaris.</li> 6542 6543 <li>when possible, add rpath option for libraries in 6544 unusual places</li> 6545 6546 <li>add configure option <code>--disable-rpath-hack</code> 6547 to control whether the rpath option can be added.</li> 6548 </ul> 6549 </li> 6550 6551 <li>modify <code>AllocateTermColor()</code> to separate 6552 initialization from control sequences, fixing problem from 6553 <a href="#xterm_254">patch #254</a> changes where enabling 6554 <code>allowSendEvents</code> resource prevents setting cursor 6555 color on command-line (Debian #572928).</li> 6556 6557 <li>amend logic from <a href="#xterm_185">patch #185</a> to not 6558 reallocate cell-array if processing 6559 <code>ESC % G</code> to switch from UTF-8 if already 6560 in ISO-8859-1 character set (report by Michael Koehne).</li> 6561 6562 <li>fix to avoid calling <code>XmuInternStrings()</code> with 6563 zero count (report by Johan Bockgård).</li> 6564 6565 <li>fix build when --disable-ansi-color configure option is 6566 used.</li> 6567 6568 <li>fix build when neither OPT_TCAP_QUERY or OPT_TCAP_FKEYS is 6569 defined (patch by Matthieu Herrb)</li> 6570 </ul> 6571 6572 <h1><a name="xterm_256" id="xterm_256">Patch #256 - 2010/3/6</a></h1> 6573 6574 <ul> 6575 <li>add TerminalEmulator to desktop category files.</li> 6576 6577 <li>modify <code>sinstall.sh</code> to ignore the "." appended 6578 to permissions by selinux.</li> 6579 6580 <li>change app-defaults organization, installing UXTerm-color 6581 and KOI8XTerm-color for consistent behavior regarding 6582 <code>customization: color</code> (prompted by discussion 6583 in Ubuntu #421261).</li> 6584 6585 <li>fix typo in <code>minstall.sh</code> from <a href= 6586 "#xterm_255">patch #255</a> changes, and add case for 6587 <code>/var/run</code> needed for full path of utmp (report by 6588 Julien Cristau).</li> 6589 6590 <li>minor fix to xterm manpage, remove a comment stating that 6591 margin bell can be changed via the VT Options menu. That was 6592 replaced in <a href="#xterm_225">patch #225</a></li> 6593 6594 <li>add a "docs" rule to makefile.</li> 6595 6596 <li>fix initialization of Atom used for <code>XkbBell</code> 6597 feature from <a href="#xterm_243">patch 243</a> changes. Unlike 6598 the other calls to <code>XInternAtom()</code>, in this case the 6599 flag telling X to create the Atom was unset (patch by Chris 6600 Adams).</li> 6601 </ul> 6602 6603 <h1><a name="xterm_255" id="xterm_255">Patch #255 - 2010/1/21</a></h1> 6604 6605 <ul> 6606 <li>rename <code>install.sh</code> to <code>install-sh</code> 6607 in case suffix-rules might interfere.</li> 6608 6609 <li>extend range for <code>convertToUTF8</code> function to 6610 full 31-bits, to use with printing, etc.</li> 6611 6612 <li>improve manpage by checking for actual locations of 6613 utmp/wtmp files (Debian #562640).</li> 6614 6615 <li>modify configure macro CF_XOPEN_SOURCE to remove -D's 6616 before adding the same name rather than relying on -U's, to 6617 reduce redefinition warnings for some platforms that have 6618 conflicting definitions in headers.</li> 6619 6620 <li>correct logic used to switch to alternate screen using 6621 FIFO-lines configuration (Debian #565772).</li> 6622 6623 <li>update config.guess, config.sub</li> 6624 </ul> 6625 6626 <h1><a name="xterm_254" id="xterm_254">Patch #254 - 2010/1/6</a></h1> 6627 6628 <ul> 6629 <li>add a configure-check to eliminate <code>install-ti</code> 6630 rule from Makefile when the system has no tic (terminfo 6631 compiler) program. This lets one use the 6632 <code>install-full</code> rule more consistently.</li> 6633 6634 <li>amend change to WriteText() function in <a href= 6635 "#xterm_252">patch #252</a> to take into account the 6636 <code>colorAttrMode</code> resource (report by Krzysztof 6637 Kotlenga).</li> 6638 6639 <li>document <code>titleModes</code> resource in manpage, added 6640 in <a href="#xterm_252">patch #252</a>.</li> 6641 6642 <li>modify tcap-query table entries for shifted up/down cursor 6643 keys to match ncurses convention.</li> 6644 6645 <li>improve lookup of termcap-query data, allowing for 6646 duplicate keycodes versus missing entries.</li> 6647 6648 <li>add control sequence which can be used to modify the 6649 terminal data used for the termcap-keyboard.</li> 6650 6651 <li>improve portability of tcap-query feature, using terminfo 6652 functions in preference to termcap on systems having 6653 terminfo.</li> 6654 6655 <li>improve font-setting/querying control 6656 (<code>OSC 50</code>): 6657 <ul> 6658 <li>when TrueType font is selected, the TrueType 6659 <code>faceName</code> will be set, rather than the bitmap 6660 font.</li> 6661 6662 <li>when TrueType font is selected, querying returns the 6663 name of the TrueType font.</li> 6664 6665 <li>querying a font recognizes the relative-font convention 6666 that setting a font could use.</li> 6667 </ul> 6668 </li> 6669 6670 <li>add menu-entry for allowColorOps.</li> 6671 6672 <li>add new resources for fine-tuning menu entries: 6673 <code>allowColorOps</code>, <code>disallowedColorOps</code>, 6674 <code>disallowedFontOps</code> and 6675 <code>disallowedTcapOps</code>.</li> 6676 6677 <li>correct logic for disabling the "TrueType Fonts" menu item; 6678 it was not ensuring that the <code>faceName</code> resource 6679 value was non-empty.</li> 6680 6681 <li>implement VT520-style controls <code>DECSMBV</code> and 6682 <code>DECSWBV</code> for setting the margin- and warning-bell 6683 volume.</li> 6684 6685 <li>fix a minor error from <a href="#xterm_243">patch #243</a> 6686 which made the zIconBeep feature use a minor-error tone rather 6687 than an informational tone.</li> 6688 6689 <li>add a null-pointer check for the case where 6690 <code>renderFont</code> resource is true, but 6691 <code>faceName</code> resource is unset, used in logic to strip 6692 "xft:" prefix from <a href="#xterm_251">patch #251</a> changes 6693 (patch by Michael Riepe).</li> 6694 6695 <li>add special case to configure CF_XOPEN_SOURCE macro to use 6696 extensions on Darwin (patch by Dennis Preiser).</li> 6697 6698 <li>improve configure checks for regular expressions header and 6699 library</li> 6700 6701 <li>update config.guess, config.sub</li> 6702 </ul> 6703 6704 <h1><a name="xterm_253" id="xterm_253">Patch #253 - 6705 2009/12/10</a></h1> 6706 6707 <ul> 6708 <li>add a null-pointer check in <code>getPrinterFlags()</code> 6709 per changes in <a href="#xterm_252">patch #252</a>.</li> 6710 6711 <li>add a null-pointer check, needed in UTF-8 mode for Xft 6712 fonts after changes in <a href="#xterm_252">patch #252</a> 6713 (patch by Alan Coopersmith).</li> 6714 6715 <li>correct size when clearing struct for tek4014 (patch by 6716 Jochen Voss).</li> 6717 6718 <li>parenthesize expression in <code>MoreRows</code> macro, 6719 fixing a limit check added in <a href="#xterm_251">patch 6720 #251</a> (Debian #560039).</li> 6721 </ul> 6722 6723 <h1><a name="xterm_252" id="xterm_252">Patch #252 - 2009/12/7</a></h1> 6724 6725 <ul> 6726 <li>modify title-querying logic to support retrieval of titles 6727 encoded using UTF-8.</li> 6728 6729 <li>add new "title-modes" control sequence for controlling 6730 whether window/icon titles can be set or queried using UTF-8, 6731 optionally encoded in a hexadecimal string.</li> 6732 6733 <li>use <code>mkdir -p</code> rather than 6734 <code>mkdirs.sh</code> (prompted by discussion of mawk by 6735 Aleksey Cheusov).</li> 6736 6737 <li>add appropriate copyright/license notices to the bulk of 6738 files lacking same, and modify to use identical terms in others 6739 which used different wording. The main exceptions are the files 6740 contributed by Markus Kuhn, who appears to prefer public domain 6741 distribution, noting that I have modified/improved several of 6742 these without changing the terms of distribution (request by 6743 Jari Aalto).</li> 6744 6745 <li>add control sequences for resetting the "dynamic" colors to 6746 their default values.</li> 6747 6748 <li>add control sequences for resetting the "special" colors to 6749 their default values.</li> 6750 6751 <li>add control sequences for setting the "special" colors such 6752 as <code>colorBD</code> (bold).</li> 6753 6754 <li>add overlooked case for setting highlight foreground color 6755 with the dynamic-colors control.</li> 6756 6757 <li>add <code>OSC 104</code>, for resetting ANSI/16/88/256 6758 colors to default.</li> 6759 6760 <li>reset ANSI/16/88/256 colors to default in soft/hard reset 6761 functions.</li> 6762 6763 <li>strip "xft:" prefix from <code>faceName</code> and 6764 <code>faceNameDoublesize</code> resource values,</li> 6765 6766 <li>add <code>DECSCUSR</code> (discussion with Andy 6767 Koppe).</li> 6768 6769 <li>add check/warning on failure to load font, to see if the 6770 name looks like an Xft pattern rather than XLFD. This can 6771 happen if someone happens to modify their X resource settings 6772 for programs that read data from xterm's namespace.</li> 6773 6774 <li>modify handling of <code>print</code> and 6775 <code>print-everything</code> actions to allow the various 6776 printer flags to be overridden by supplying parameters.</li> 6777 6778 <li>add resource <code>printerNewLine</code> (request by Ovidiu 6779 Gheorghioiu).</li> 6780 6781 <li>minor cleanup, finish using <code>TScreenOf()</code> and 6782 <code>TekScreenOf()</code> macros introduced in <a href= 6783 "#xterm_224">patch #224</a>.</li> 6784 6785 <li>improve checks in ShowCursor/HideCursor to get the 6786 background color, particularly when 6787 <code>highlightReverse</code> resource is used (reports by Jan 6788 Engelhardt, Christian Weisgerber).</li> 6789 6790 <li>correct <code>checkVeryBoldAttr</code> to omit comparison 6791 of foreground color to special color values used for 6792 <code>color<XX></code> resources (report by Jan 6793 Engelhardt).</li> 6794 6795 <li>make <code>colorBDMode</code> and <code>colorULMode</code> 6796 resources work with TrueType configuration (report by Jan 6797 Engelhardt).</li> 6798 </ul> 6799 6800 <h1><a name="xterm_251" id="xterm_251">Patch #251 - 6801 2009/11/11</a></h1> 6802 6803 <ul> 6804 <li>add window-ops controls to push/pop icon and/or window 6805 labels on a stack.</li> 6806 6807 <li>minor fixes to align termcap file with terminfo.</li> 6808 6809 <li>add resource <code>disallowedWindowOps</code>, to allow 6810 fine-tuning of features to suppress with the 6811 <code>allowWindowOps</code> resource (prompted by discussion 6812 with Bram Moolenaar).</li> 6813 6814 <li>add makefile rules for resize-manpage to pdf, etc.</li> 6815 6816 <li>further improve limit-checks in select/paste (Mandriva 6817 #54531).</li> 6818 </ul> 6819 6820 <h1><a name="xterm_250" id="xterm_250">Patch #250 - 6821 2009/10/13</a></h1> 6822 6823 <ul> 6824 <li>add check and error-message for fonts that have no 6825 printable values in the ISO-8859-1 range (Debian #542434).</li> 6826 6827 <li>some compiler-warning cleanup, in particular workaround for 6828 defective implementation of gcc's attribute warn_unused_result 6829 (report by Bram Moolenaar).</li> 6830 6831 <li>improve estimate of single-column width for packed TrueType 6832 fonts by ignoring extents for codes 127 and 159.</li> 6833 6834 <li>improve line-drawing for TrueType fonts which happen to 6835 have defined glyphs which are <em>not</em> line-drawing in 6836 0..31 by assuming they're not, and just checking the existence 6837 of the Unicode codepoints. This makes it more likely that the 6838 user can override a misconfigured font using the "Line-Drawing 6839 Characters" menu entry.</li> 6840 6841 <li>limit minimum cell-width for packed font to maximum-advance 6842 reported by Xft. Some fonts are wider than that, even in the 6843 Latin-1 range (Debian #550497).</li> 6844 6845 <li>add list of direct-contributors in "THANKS" file.</li> 6846 6847 <li>stylistic changes to this file to help scripted extraction 6848 of list of contributors.</li> 6849 6850 <li>correct off-by-one in <code>okPosition</code> fix from 6851 <a href="#xterm_249">patch #249</a> limit-checks which 6852 prevented double-click selection on the bottom line of the 6853 screen (reports by Rajeev V. Pillai, Debian #550368).</li> 6854 6855 <li>add <code>-q</code> option to 6856 <code>vttests/256colors2.pl</code> and 6857 <code>vttests/88colors2.pl</code> to demonstrate bulk 6858 initialization of color palette.</li> 6859 6860 <li>improve the workaround from patch #188 by enabling 6861 resources for the 88-color model.</li> 6862 6863 <li>document in xterm manpage the limited availability of 6864 resources <code>color16</code> to <code>color255</code> as 6865 noted in <a href="#xterm_188">patch #188</a> (Ubuntu 6866 #438850).</li> 6867 </ul> 6868 6869 <h1><a name="xterm_249" id="xterm_249">Patch #249 - 2009/10/1</a></h1> 6870 6871 <ul> 6872 <li>change default for <code>allowWindowOps</code> resource to 6873 false. 6874 <!-- on the other hand, gnome-terminal, pterm and rxvt-unicode 6875 leave most of the related functionality enabled ;-) --></li> 6876 6877 <li>add limit-checks for result of visual_width() function, 6878 needed from <a href="#xterm_242">patch #242</a> and exposed by 6879 #244 changes (Debian #548321).</li> 6880 6881 <li>improve limit-checks in select/paste.</li> 6882 6883 <li>fix a remaining bug from <a href="#xterm_230">patch 6884 #230</a> changes for displaying multi-column characters in a 6885 proportional font (report by Chris Jones).</li> 6886 6887 <li>add new resource forcePackedFont and menu entry "Packed 6888 Font" to control whether to use the font's minimum (default) or 6889 maximum width when those differ. The workaround which xterm 6890 uses to accommodate proportional fonts is not necessary with 6891 certain fonts such as unifont which happen to store a mixture 6892 of multicolumn glyphs (report by Chris Jones).</li> 6893 6894 <li>fix an (old) bug which did not restart the timer for 6895 blinking text if the only blinking text was temporarily 6896 scrolled out of view, e.g., using the scrollbar.</li> 6897 6898 <li>fix an (old) flaw in the delete-line operation where the 6899 text which is scrolled into view while the display is scrolled 6900 up was not repainted.</li> 6901 6902 <li>improve delete-line and insert-line operations, retaining 6903 selection when the selection does not intersect the 6904 deleted/inserted lines.</li> 6905 6906 <li>fix an (old) off-by-one error when an application cleared 6907 above the cursor position while the display was scrolled up, 6908 that would leave an extra line of text uncleared.</li> 6909 6910 <li>fix a similar problem where the double-size attribute would 6911 not be reset when clearing the screen while the display was 6912 scrolled up.</li> 6913 6914 <li>fix an indexing error which would occur if an application 6915 cleared a line while the display was scrolled up and was also 6916 in UTF-8 mode (Redhat #524503). The error was from <a href= 6917 "#xterm_228">patch #228</a> but more visible after changes from 6918 <a href="#xterm_244">patch #244</a>.</li> 6919 </ul> 6920 6921 <h1><a name="xterm_248" id="xterm_248">Patch #248 - 2009/9/11</a></h1> 6922 6923 <ul> 6924 <li>fix an overlooked adjustment for selecting double-width 6925 characters in the narrow-character configuration.</li> 6926 6927 <li>eliminate uses of <code>XTERM_CELL</code> and 6928 <code>XTERM_CELLC</code> where an appropriate 6929 <code>LineData</code> pointer is available.</li> 6930 6931 <li>correct expression in <code>okScrnRow</code> macro, making 6932 selections give the length of lines below the visible screen 6933 (report by Stuart Henderson).</li> 6934 6935 <li>correct logic used to improve performance of missing-glyph 6936 check, which did not handle line-drawing characters (Debian 6937 #545220).</li> 6938 </ul> 6939 6940 <h1><a name="xterm_247" id="xterm_247">Patch #247 - 2009/8/30</a></h1> 6941 6942 <ul> 6943 <li>add ifdef's and check for openpty() on DragonFly (patch by 6944 Alex Hornung).</li> 6945 6946 <li>correct calculation for size of line's data block, which 6947 was sometimes off-by-one when configured using 6948 <code>--enable-16bit-chars</code> (report by H Merijn 6949 Brand).</li> 6950 6951 <li>fix indexing error in print-everything feature from 6952 <a href="#xterm_246">patch #246</a> (patch by Ovidiu 6953 Gheorghioiu).</li> 6954 </ul> 6955 6956 <h1><a name="xterm_246" id="xterm_246">Patch #246 - 2009/8/16</a></h1> 6957 6958 <ul> 6959 <li>remove obsolete logic for saving/restoring wrapping flags, 6960 which did not work on 64-bit platform. Wrapping flags (stored 6961 in the line-index) are now copied with line-data (Debian 6962 #541160).</li> 6963 6964 <li>modify comments in app-defaults files to avoid problem with 6965 C preprocessor used by <code>xrdb</code> (Debian #541603).</li> 6966 6967 <li>restore special case in <code>makeColorPair</code>, needed 6968 for <code>colorBDMode</code> resource (Debian #541089).</li> 6969 6970 <li>correct <code>SetLineFlags()</code> macro, broken in 6971 <a href="#xterm_244">patch #244</a> when recoding to avoid 6972 gcc-specific bitfields (Debian #541236).</li> 6973 6974 <li>modify initialization of screen buffers to ensure that 6975 pointers align to int-boundaries. This fixes a problem 6976 introduced in <a href="#xterm_244">patch #244</a> where the 6977 color- and character-arrays (stored after the video-attributes 6978 in each row) might be misaligned (report by Rajeev V 6979 Pillai).</li> 6980 6981 <li>add limit-check in <code>ScrnRefresh</code> for handling 6982 saved-lines from the circular buffer which are repainted on a 6983 screen whose width has increased. To improve performance, 6984 circular buffer entries are not resized (report by Rajeev V 6985 Pillai).</li> 6986 6987 <li>correct type for <code>CellColor</code> (a late change in 6988 <a href="#xterm_244">patch #244</a> to avoid gcc-specifc enums 6989 made that unsigned rather than unsigned short, for the 6990 256-color option).</li> 6991 6992 <li>fix typo in configure option --enable-16bit-chars (report 6993 by Rajeev V. Pillai).</li> 6994 </ul> 6995 6996 <h1><a name="xterm_245" id="xterm_245">Patch #245 - 2009/8/12</a></h1> 6997 6998 <ul> 6999 <li>correct a special case in saving FIFO-lines from <a href= 7000 "#xterm_244">patch #244</a>. If the screen was shrunk, xterm 7001 used the wrong amount for copying to FIFO-lines, and then used 7002 this amount to adjust the current row on the screen. That was 7003 both a visible defect (Debian #541109) as well as a potential 7004 addressing error (Debian #541132, Debian #541160, and Debian 7005 #541236).</li> 7006 7007 <li>add clarification in xterm manual about the various 7008 <code>allow<em>XXX</em>Ops</code> resources, which are disabled 7009 when the <code>allowSendEvents</code> resource is active (patch 7010 by Julien Cristau, Debian #531597).</li> 7011 </ul> 7012 7013 <h1><a name="xterm_244" id="xterm_244">Patch #244 - 2009/8/9</a></h1> 7014 7015 <ul> 7016 <li>refactored storage of saved-lines, providing a configure 7017 option to manage them as a FIFO (actually a circular buffer), 7018 improving performance. Added configure option 7019 <code>--enable-fifo-lines</code> to enable/disable the new 7020 feature (it is enabled by default).</li> 7021 7022 <li>added <code>fastScroll</code> resource, to amuse people who 7023 measure terminal emulator performance by <code>cat</code>'ing 7024 large files to the screen.</li> 7025 7026 <li>modify check in <code>readPtyData</code> from return values 7027 to provide exit on zero-bytes read from pty for FreeBSD, or 7028 eliminate high-CPU in "xterm-hold" processing (discussion with 7029 Ulrich Spoerlein, FreeBSD ports/136686). The check was 7030 originally modified to combine negative/zero values in 7031 XFree86-3.1.2E, 1996/05/06.</li> 7032 7033 <li>add configure option <code>--enable-16bit-chars</code> to 7034 provide wide-characters with 16-bits (rather than the default 7035 32-bits).</li> 7036 7037 <li>add <code>retryInputMethod</code> resource to allow 7038 configuring out the retries xterm uses to connect to 7039 non-responsive XIM server, to work around defective X 7040 configurations as noted in <a href= 7041 "http://mail-index.netbsd.org/tech-x11/2009/06/07/msg000511.html"> 7042 NetBSD mailing list</a>.</li> 7043 7044 <li>make regular-expression selection work for VT100 7045 double-sized characters.</li> 7046 7047 <li>improve layout when drawing missing characters in a 7048 proportional font, e.g., as boxes, to take into account whether 7049 they are double-width (report by Guilbert Stabilo on 7050 comp.unix.shell).</li> 7051 7052 <li>add capability for keypad-center (kb2/KA2) to termcap entry 7053 for xterm-new, as well as xterm-8bit, xterm-sun and xterm-vt220 7054 (FreeBSD conf/136336).</li> 7055 7056 <li>change default for <code>keepSelection</code> resource to 7057 true (prompted by discussion with David Muir Sharnoff).</li> 7058 7059 <li>remove a limit-check in ptydata.c, allowing Unicode values 7060 past 64k to be displayed using TrueType fonts (Debian 7061 #458432).</li> 7062 7063 <li>remove a vt52-specific ifdef to allow mapping F1-F4 to 7064 PF1-PF4 when vt52 support is not compiled (report by Olaf 7065 'Rhialto' Seibert).</li> 7066 7067 <li>save/restore line-wrapping flags when converting from 7068 ISO-8859-1 encoding to UTF-8 encoding, as well as when resizing 7069 screen.</li> 7070 7071 <li>remove extra adjustment of position in fix for Debian 7072 #418324.</li> 7073 7074 <li>modify default check for <code>mkWidth</code> resource to 7075 check for line-drawing characters, which are categorized as 7076 double-width in Solaris 10 (report by Sebastian Kayser).</li> 7077 7078 <li>add "print-everything" action (patch by Ovidiu 7079 Gheorghioiu).</li> 7080 7081 <li>start refactoring scrollback data using new getLineData() 7082 function.</li> 7083 7084 <li>demote recent change to Debian #252873 fix to experimental, 7085 ifdef'd out as <code>EXP_BOGUS_FG</code> (Debian #522141).</li> 7086 7087 <li>work around groff mapping of ASCII quotes using macros 7088 (requested by Reuben Thomas based on Colin Watson advice, fixes 7089 Debian #378700).</li> 7090 7091 <li>correct symbol used for default of 7092 <code>allowWindowOps</code> which was 7093 <code>DEF_ALLOW_FONT</code> rather than 7094 <code>DEF_ALLOW_WINDOW</code> (report by Matthieu Herrb).</li> 7095 7096 <li>amend fix for tek4014 from <a href="#xterm_243">patch 7097 #243</a> to make it only apply to the Tek Options menu.</li> 7098 </ul> 7099 7100 <h1><a name="xterm_243" id="xterm_243">Patch #243 - 2009/3/28</a></h1> 7101 7102 <ul> 7103 <li>revert change to default for <code>allowTcapOps</code> 7104 (request by Bram Moolenaar).</li> 7105 7106 <li>reallocate result returned by <code>xtermEnvLocale()</code> 7107 to avoid reference to freed memory after handling 7108 <code>menuLocale</code> resource.</li> 7109 7110 <li>fix an old (X11R5) bug in tek4014 for switching 7111 fontsizes.</li> 7112 7113 <li>add resource <code>defaultString</code> to make 7114 configurable the use of "#" when pastes of UTF-8 text fail due 7115 to limitations in the current locale settings.</li> 7116 7117 <li>make the set of selection target Atom's configurable by two 7118 new resources <code>eightBitSelectTypes</code> and 7119 <code>utf8SelectTypes</code>, e.g., to use the 7120 <code>TEXT</code> Atom in preference to 7121 <code>UTF8_STRING</code> (discussion with Stanislav Sedov 7122 regarding koi8rxterm and the FreeBSD port).</li> 7123 7124 <li>modify handling of <code>TARGETS</code> Atom by making it 7125 return exactly the set of targets as those which xterm is 7126 currently providing.</li> 7127 7128 <li>set <code>MANPAGER</code> and <code>PAGER</code> explicitly 7129 to /bin/cat in <code>minstall.sh</code> to work around 7130 /etc/man.conf's with those variables already set (report by 7131 Марьясин 7132 Семён).</li> 7133 7134 <li>improve error-checking of tcap-query parser.</li> 7135 7136 <li>add check for keyboard <code>tcap</code>), which ensures 7137 that terminal descriptions containing the same string for 7138 shifted/unshifted keys will be seen by tcap-query as only the 7139 unshifted key. (This would only happen with an incorrect 7140 terminal description).</li> 7141 7142 <li>fix conversion for input event-state to modifier-parameter 7143 which made tcap-query feature not work with 7144 <code>tcapFunctionKeys</code> (keyboard type 7145 <code>tcap</code>).</li> 7146 7147 <li>add "DEF_ALLOW_<em>XXX</em>" definitions to main.h to allow 7148 overriding the default compiled-in values for 7149 "allow<em>xxx</em>" resources.</li> 7150 7151 <li>remove check on bell-percentage added in <a href= 7152 "#xterm_242">patch #242</a>, which disallowed zero/negative 7153 values (Redhat Bugzilla #487829).</li> 7154 </ul> 7155 7156 <h1><a name="xterm_242" id="xterm_242">Patch #242 - 2009/2/15</a></h1> 7157 7158 <ul> 7159 <li>fix configure check for <code>XkbBell</code> and provide 7160 appropriate parameter for it.</li> 7161 7162 <li>fix a caching problem with double-size fonts versus reverse 7163 video that could cause core dump.</li> 7164 7165 <li>repair double-size fonts from workaround used in <a href= 7166 "#xterm_240">patch #240</a>.</li> 7167 7168 <li>add new section to the VT Fonts menu which allows enabling 7169 or disabling the font, termcap (tcap-query), title and window 7170 operations.</li> 7171 7172 <li>add <code>fontWarnings</code> resource, to control whether 7173 to show warnings on failure to load a font.</li> 7174 7175 <li>improve warnings for unloadable fonts introduced in 7176 <a href="#xterm_240">patch #240</a> by limiting those to the 7177 cases where a font would be specified directly by a resource 7178 setting rather than a derived fontname.</li> 7179 7180 <li>further amend fix for Debian #252873 from <a href= 7181 "#xterm_197">patch #197</a> to treat a blank cell which does 7182 not have both foreground and background colored as a 7183 non-colored cell. This improves a special case where the cursor 7184 is on a blank cell which had foreground color scrolled in 7185 (report by Miroslav Lichvar). 7186 <p>Also add the same logic when hiding cursor, so the outline 7187 matches the in-focus cursor.</p> 7188 </li> 7189 7190 <li>modify internals to reduce places PAIRED_CHARS() is used, 7191 making WriteText() and ScrnWriteText() accept IChar array, as 7192 well as providing a wrapper for drawXtermText().</li> 7193 7194 <li>change default XIM font from "*" to "fixed" to improve 7195 startup time in zh_CN.UTF-8 locale (Mike Fabian, SuSE Bugzilla 7196 #464930).</li> 7197 7198 <li>typo in #240 log (Slava Semushin)</li> 7199 </ul> 7200 7201 <h1><a name="xterm_241" id="xterm_241">Patch #241 - 2009/1/26</a></h1> 7202 7203 <ul> 7204 <li>improve checks for missing bitmap fonts, fallback to 7205 "fixed" as needed to work around broken font-packages (report 7206 by Jacek Luczak).</li> 7207 7208 <li>fix breakage from <a href="#xterm_240">patch #240</a> 7209 changes for <code>xtermAddInput()</code> (patches by Jeff Chua, 7210 Julien Cristau).</li> 7211 </ul> 7212 7213 <h1><a name="xterm_240" id="xterm_240">Patch #240 - 2009/1/25</a></h1> 7214 7215 <ul> 7216 <li>use <code>plink.sh</code> for linking xterm (suggested by 7217 Larry Doolittle).</li> 7218 7219 <li>add resource descriptions for input method to xterm 7220 manpage.</li> 7221 7222 <li>update configure script; consistently append to $CFLAGS 7223 rather than prepend.</li> 7224 7225 <li>add <code>install-scripts</code> rule to makefile, to allow 7226 koi8rxterm and uxterm scripts to be altered independently of 7227 <code>install-bin</code></li> 7228 7229 <li>add <code>-maximized</code> command-line option and 7230 corresponding resource (prompted by alt.os.linux newsgroup 7231 comment).</li> 7232 7233 <li>modify translations of scrollbar widget using 7234 <code>xtermAddInput()</code> (see <a href="#xterm_181">patch 7235 #181</a>) to accept the actions that the vt100 widget accepts, 7236 such as shift-insert to perform a paste operation (request by 7237 Martin Zwickel).</li> 7238 7239 <li>change default for <code>allowTcapsOps</code> resource to 7240 false, since it causes unexpected behavior for vim users with 7241 <code>AltGr</code>.</li> 7242 7243 <li>update config.guess, config.sub</li> 7244 </ul> 7245 7246 <h1><a name="xterm_239" id="xterm_239">Patch #239 - 2009/1/8</a></h1> 7247 7248 <ul> 7249 <li>correct a cast in input.c, which broke translation of 7250 numeric keypad codes to pageup, pagedown, etc., on 64-bit 7251 platform (Debian #511138, report by Larry Doolittle).</li> 7252 </ul> 7253 7254 <h1><a name="xterm_238" id="xterm_238">Patch #238 - 7255 2008/12/30</a></h1> 7256 7257 <ul> 7258 <li>update configure macro CF_XOPEN_SOURCE for AIX 6.x and Mint 7259 platforms.</li> 7260 7261 <li>reset the screen wrapping-flag at the end of 7262 <code>ClearRight</code> to fix an occasional case where the 7263 last character of a scrolled and wrapped line would be cleared 7264 (patch by Joe Peterson).</li> 7265 7266 <li>modify to use POSIX coding for comparing resource settings 7267 such as <code>locale</code>, to work with locales such as 7268 Turkish (report by M Vefa Bicakci).</li> 7269 7270 <li>turn on configure <code>paste64</code> feature by default 7271 (request by Jean-Philippe Bernardy). It is runtime 7272 enabled/disabled with <code>allowWindowOps</code>.</li> 7273 7274 <li>turn on configure <code>tcap-query</code> feature by 7275 default, add resource <code>allowTcapOps</code> to make this 7276 runtime enabled/disabled.</li> 7277 7278 <li>make <code>OSC 3</code> (change X property, from <a href= 7279 "#xterm_110">patch #110</a>) subject to 7280 <code>allowWindowOps</code> resource.</li> 7281 7282 <li>make VT220 <code>DSR</code> responses inactive in 7283 VT100-mode.</li> 7284 7285 <li>make <code>DECUDK</code> feature inactive in 7286 VT100-mode.</li> 7287 7288 <li>respond to incorrectly formatted <code>DECRQSS</code> with 7289 a cancel.</li> 7290 7291 <li>add <code>allowFontOps</code> resource to allow the 7292 fontsize-switching and font query/set control sequences to be 7293 enabled/disabled (prompted by Debian #510030).</li> 7294 7295 <li>some code cleanup based on gcc 4.x 7296 <code>-Wconversion</code> warnings in button.c and 7297 charproc.c</li> 7298 7299 <li>modify <code>tcap-query</code> feature to not return data 7300 for shifted cursor-keys when the keyboard type is set to vt220, 7301 since returning the same string for shifted/unshifted keys may 7302 confuse some applications (Gentoo #212546).</li> 7303 </ul> 7304 7305 <h1><a name="xterm_237" id="xterm_237">Patch #237 - 7306 2008/09/14</a></h1> 7307 7308 <ul> 7309 <li>improve usability of TrueType fonts by making the font-size 7310 switching for shifted keypad plus/minus use the 7311 <code>faceSize</code> resources to determine the order of fonts 7312 (when TrueType fonts are used) rather than the bitmap fonts, 7313 since their sizes may not be in the same order (report by H 7314 Merijn Brand)</li> 7315 7316 <li>remove an optimization of <code>ConfigureNotify</code> 7317 events from <a href="#xterm_236">patch #236</a> which seems to 7318 interfere with passing <code>SIGWINCH</code> to applications 7319 (Gentoo #233836).</li> 7320 7321 <li>modify handling of <code>altSendsEscape</code> to reset the 7322 <code>eightBitInput</code> mode, like 7323 <code>metaSendsEscape</code> (patch by Ted Phelps).</li> 7324 7325 <li>add feature to show the text-cursor as an underline rather 7326 than a box, plus command-line options <code>-uc</code> and 7327 <code>+uc</code> and resource <code>cursorUnderLine</code> to 7328 control the feature (patch by Paul Lampert).</li> 7329 7330 <li>update config.guess, config.sub</li> 7331 </ul> 7332 7333 <h1><a name="xterm_236" id="xterm_236">Patch #236 - 7334 2008/07/27</a></h1> 7335 7336 <ul> 7337 <li>correct memory reallocation when handling a paste of UTF-8 7338 text from <a href="#xterm_225">patch #225</a> changes 7339 (report/patch by Max Mikhanosha).</li> 7340 7341 <li>correct allocation of temporary buffer in 7342 <code>xtermFindShell</code> in case the user's 7343 <code>$PATH</code> contains no ":" (report/analysis by Victor 7344 Stinner, Freedesktop.Org Bugzilla #16790).</li> 7345 7346 <li>modify CF_XOPEN_SOURCE to add case for DragonFly BSD, to 7347 fix new compile problem exposed by fix for fd_mask (patch by 7348 Hasso Tepper).</li> 7349 7350 <li>add configure-check for ncurses 7351 <code>use_extended_names</code>, (report by Martin 7352 Mokrejs).</li> 7353 7354 <li>correct computation for toolbar height; layout manager 7355 already takes into account <code>borderWidth</code> 7356 resource.</li> 7357 7358 <li>implement VT320-style SCS (select character set) for ISO 7359 Latin-1 supplemental.</li> 7360 7361 <li>fixes for vt100-style character sets in UTF-8 mode (Ubuntu 7362 #230919).</li> 7363 7364 <li>fix to make <code>luit</code> work with xterm's 7365 <code>-ls</code> option (report/patch by Marius Tolzmann).</li> 7366 7367 <li>update config.guess, config.sub</li> 7368 </ul> 7369 7370 <h1><a name="xterm_235" id="xterm_235">Patch #235 - 7371 2008/04/20</a></h1> 7372 7373 <ul> 7374 <li>add control sequences for some of the recent resource/menu 7375 settings: 7376 <ul> 7377 <li><code>altSendsEscape</code> (private mode 1039)</li> 7378 7379 <li><code>keepSelection</code> (private mode 1040)</li> 7380 7381 <li><code>selectToClipboard</code> (private mode 1041)</li> 7382 7383 <li><code>bellIsUrgent</code> (private mode 1042)</li> 7384 7385 <li><code>popOnBell</code> (private mode 1043)</li> 7386 </ul> 7387 </li> 7388 7389 <li>add resource <code>formatOtherKeys</code> to provide an 7390 alternate escape sequence format for the 7391 <code>modifyOtherKeys</code> resource (request by Paul LeoNerd 7392 Evans).</li> 7393 7394 <li>adjust saved-cursor position if the window is resized while 7395 displaying the alternate screen (Novell #196880, Debian 7396 #383384).</li> 7397 7398 <li>improve pointer-checks to fix a bug exposed by resizing 7399 during initialization under StumpWM window manager (Fedora 7400 Bugzilla #437928).</li> 7401 7402 <li>modify <code>unselectwindow()</code> to ensure that the 7403 mouse pointer is not hidden after xterm loses focus (report by 7404 Jeremy Huddleston).</li> 7405 7406 <li>add special check for fd_mask on Mac OS X (report by Jeremy 7407 Huddleston).</li> 7408 7409 <li>add <code>dylib</code> to autoconf's suffix list used for 7410 checking the result from <code>xmkmf</code>, to work with Mac 7411 OS X (report by Jeremy Huddleston).</li> 7412 7413 <li>correct initialization of bold- and wide-, wide-bold fonts 7414 which may be set via the <code>utf8Fonts</code> subresource 7415 (Debian #347790).</li> 7416 </ul> 7417 7418 <h1><a name="xterm_234" id="xterm_234">Patch #234 - 7419 2008/03/02</a></h1> 7420 7421 <ul> 7422 <li>modify <code>sinstall.sh</code> to use POSIX locale to 7423 bypass GNU ls changes to date-format.</li> 7424 7425 <li>improved/refined changes for closing bitmap font (patch by 7426 Andrea Odetti).</li> 7427 7428 <li>improve resize computation for situations where the 7429 negotiation fails, by invoking the xterm widget's core-class 7430 resize method (Debian #365602, patch by Jim Paris).</li> 7431 7432 <li>restore initialization of terminal's <code>VMIN</code> and 7433 <code>VTIME</code> settings, from <a href="#xterm_232">patch 7434 #232</a> changes (patch by Matthieu Herrb).</li> 7435 </ul> 7436 7437 <h1><a name="xterm_233" id="xterm_233">Patch #233 - 7438 2008/02/24</a></h1> 7439 7440 <ul> 7441 <li>add configure check for <code>ttydefaults.h</code>, include 7442 if needed, e.g., for systems where defining 7443 <code>_POSIX_C_SOURCE</code>, etc., prevents it from being 7444 included via <code>termios.h</code> (prompted by comments by 7445 Robert Delius Royar and Jeremy Huddleston).</li> 7446 7447 <li>bug-fixes for bugs.opensolaris.org (patches from Alan 7448 Coopersmith) 7449 <dl> 7450 <dt>4029911</dt> 7451 7452 <dd>fix a typo in manpage</dd> 7453 7454 <dt>4045962</dt> 7455 7456 <dd>xterm doesn't properly set ut_syslen</dd> 7457 7458 <dt>4192572</dt> 7459 7460 <dd>left-left-right misinterpreted as triple click</dd> 7461 </dl> 7462 </li> 7463 7464 <li>minor optimization to tab-initialization (patch by 7465 Németh Márton).</li> 7466 7467 <li>fix a case where an incorrect font was freed during 7468 initialization from <a href="#xterm_232">patch #232</a> changes 7469 (patch by Andrea Odetti).</li> 7470 7471 <li>improve comparison used in <code>SameFont</code> function 7472 for GC-caching (Julien Cristau).</li> 7473 7474 <li>correct macro name used for default <code>CKILL</code> 7475 definition to work with Mac OS X (report by Jeremy 7476 Huddleston).</li> 7477 </ul> 7478 7479 <h1><a name="xterm_232" id="xterm_232">Patch #232 - 7480 2008/01/30</a></h1> 7481 7482 <ul> 7483 <li>corrected logic in a font-cache used for reverse-video 7484 (Debian #404079).</li> 7485 7486 <li>add control sequence to alter <code>pointerMode</code> at 7487 runtime.</li> 7488 7489 <li>add limit-checks for rectangle operation parameters (report 7490 by Martin Pirker).</li> 7491 7492 <li>modify <code>minstall.sh</code> to suppress 7493 <code>$MANPAGER</code> and <code>$PAGER</code> environment 7494 variables, which may interfere with redirecting output of 7495 <code>man</code> to a shell variable (report/patch by Zdenek 7496 Sekera).</li> 7497 7498 <li>do not try to hide mouse pointer in the tek4014 window, 7499 fixes broken "-t" option at startup from <a href= 7500 "#xterm_230">patch #230</a> changes (report by Robert K. 7501 Nelson).</li> 7502 7503 <li>correct datatype used when drawing tek4014 data using xterm 7504 compiled for wide-characters, on big-endian machines (reports 7505 by Jeremy Huddleston, Harald Hanche-Olsen, Martin Costabel, 7506 Merle Reinhart).</li> 7507 7508 <li>modify to cache the font-names along with the bitmap font 7509 data, to improve comparison of fonts.</li> 7510 7511 <li>modify to allow building with configure options 7512 <code>--disable-ansi-color</code> and 7513 <code>--disable-leaks</code> (Debian #459817, report/patch by 7514 Németh Márton).</li> 7515 7516 <li>modify to allow building with configure options 7517 <code>--enable-wide-chars</code> and 7518 <code>--disable-c1-print</code> (Debian #459816, report/patch 7519 by Németh Márton).</li> 7520 7521 <li>add <code>pointerMode</code> resource to control whether 7522 and when the pointer cursor is hidden as the user types.</li> 7523 7524 <li>simplify initialization of ttyMode- and related characters 7525 using a table.</li> 7526 7527 <li>modify initialization-logic for stty values that correspond 7528 to ltchars structure and the BSD TIOCSLTC ioctl (susp, dsusp, 7529 rprnt flush, werase, lnext). These were reset to constants for 7530 both termios and legacy interfaces immediately after asking the 7531 system for the existing values since X11R6.1, rather than using 7532 them to provide inherited values. While the legacy interface 7533 has some constraints, e.g., on HPUX, the POSIX or termios 7534 interface should not. Your shell may reset these anyway 7535 (prompted by patch by Ed Schouten).</li> 7536 7537 <li>improve logic for hiding/displaying pointer-cursor (report 7538 by Mark Brukhartz).</li> 7539 7540 <li>add limit-checks to tabs.c, increase maximum column for 7541 setting tab-stops from 320 to 1024 (report by Németh 7542 Márton).</li> 7543 7544 <li>correct length, i.e., number of types of selection targets, 7545 computed by <code>ConvertSelection()</code> when not handling 7546 wide characters for the <code>XA_TARGETS()</code> case. This 7547 leaves an extra Atom on the end of the list which is not 7548 handled by <a href= 7549 "http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6322854">Java 7550 applications</a>. The problem was introduced in <a href= 7551 "#xterm_151">patch #151</a> (report by David Wood).</li> 7552 </ul> 7553 7554 <h1><a name="xterm_231" id="xterm_231">Patch #231 - 7555 2008/01/05</a></h1> 7556 7557 <ul> 7558 <li>undo change to <code>getXtermCell()</code> from patch #230 7559 using <code>PACK_PAIR</code> macro (Debian #459014, analysis by 7560 Caetano Jimenez Carezzato).</li> 7561 7562 <li>minor documentation fixes (patch by Slava Semushin)</li> 7563 7564 <li>add makefile actions to install KOI8RXTerm app-defaults 7565 file (patch by Julien Cristau).</li> 7566 </ul> 7567 7568 <h1><a name="xterm_230" id="xterm_230">Patch #230 - 7569 2007/12/31</a></h1> 7570 7571 <ul> 7572 <li>add <code>quietGrab</code> resource, which when true, 7573 suppresses cursor repainting when <code>NotifyGrab</code> and 7574 <code>NotifyUngrab</code> event types are received during 7575 change of focus (request by Nicolas George).</li> 7576 7577 <li>do not treat Unicode BIDI control characters as combining 7578 characters (Debian #457634).</li> 7579 7580 <li>add <code>koi8rxterm</code>, from Debian.</li> 7581 7582 <li>add manpage for <code>uxterm</code>, from Debian (Ubuntu 7583 #128136, Debian #438645)</li> 7584 7585 <li>remove ".xpm" suffixes from Icon filenames in desktop files 7586 since it confuses some lookups following the <a href= 7587 "http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html"> 7588 Icon Theme Specification</a> (report by Slava Semushin)</li> 7589 7590 <li>correct width-calculation used for adjusting proportional 7591 fonts, to work with wide-characters (Debian #441354).</li> 7592 7593 <li>fixes/improvements for double-size characters: 7594 <ul> 7595 <li>correct old clipping calculation which used total 7596 height of glyphs where ascent was needed.</li> 7597 7598 <li>if bold font is unavailable, fall back to normal 7599 font</li> 7600 7601 <li>adjust to "work" with Xft (which does not support 7602 double-width single-height characters).</li> 7603 7604 <li>restore reset of doublesize for a line when it is 7605 cleared, broken in <a href="#xterm_228">patch 7606 #228</a>.</li> 7607 </ul> 7608 </li> 7609 7610 <li>modify logic for <code>forceBoxChars</code> resource when 7611 using TrueType fonts to be consistent with bitmap fonts</li> 7612 7613 <li>modify logic for <code>forceBoxChars</code> resource to 7614 make the "Line-Drawing Characters" menu entry use xterm's 7615 line-drawing characters even asked to draw wide line-drawing 7616 characters which are available in the font.</li> 7617 7618 <li>modify rectangle-support functions to preserve colors when 7619 filling/erasing to match WRQ Reflection behavior (request by 7620 Enzo Toscano).</li> 7621 7622 <li>add getopt-parsing to tcapquery.pl, including feature to 7623 test the extended cursor/editing keys.</li> 7624 7625 <li>make missing double-width glyphs display as double-width 7626 (Debian #456236).</li> 7627 7628 <li>change <code>tcap-fkeys</code> and <code>rectangles</code> 7629 configure options to enable them by default.</li> 7630 7631 <li>hide the mouse pointer while user is typing (request by 7632 Rodolfo Borges).</li> 7633 7634 <li>extend configure options <code>--enable-tcap-query</code> 7635 and <code>--enable-tcap-fkeys</code> to send cursor- and 7636 editing-keypad keys modified according to the keyboard (or 7637 termcap) selection for shift, alt, control, meta.</li> 7638 7639 <li>modify <code>kdch1</code> in termcap, e.g., 7640 <code>xterm-r6</code> to match the terminfo file.</li> 7641 7642 <li>add <code>-hm</code> option to turn 7643 <code>highlightColorMode</code> on or off.</li> 7644 7645 <li>add <code>highlightColorMode</code> resource to separate 7646 the new (since <a href="#xterm_225">patch #225</a>) 7647 highlighting with both text- and background-colors (prompted by 7648 report/example by Thomas Wolff).</li> 7649 7650 <li>add <em>Keep Selection</em> menu entry to turn the 7651 <code>keepSelection</code> resource on/off at runtime.</li> 7652 7653 <li>add <code>keepSelection</code> resource, which when 7654 enabled, tells xterm to retain the X selection even after it 7655 stops highlighting it (patch by Sergey Vlasov).</li> 7656 7657 <li>extend the <code>CSI > n</code> sequence to 7658 allow disabling all types of modified-keys that the 7659 <code>CSI > m</code> sequence affects.</li> 7660 7661 <li>move include for <code><xtermcap.h></code> in 7662 <code>resize.c</code> to avoid redefinition of 7663 <code>termios</code> structure on OpenSolaris (report by Rahul 7664 Gopinathan Nair).</li> 7665 7666 <li>extend terminfo building blocks for modified editing keys 7667 to include all six keys.</li> 7668 7669 <li>synchronize terminfo with ncurses (report by Stephane 7670 Chazelas) 7671 <ul> 7672 <li>equate <code>xterm-xfree86</code> and 7673 <code>xterm-xf86-v44</code>.</li> 7674 7675 <li>add ncurses extensions OTbs, AX, for termcap 7676 conversions.</li> 7677 7678 <li>make old/legacy entries such as <code>xterm-24</code>, 7679 <code>xterm-65</code> and aliases <code>xterms</code>, 7680 <code>vs100</code> inherit from 7681 <code>xterm-old</code>.</li> 7682 7683 <li>make <code>xterm-r5</code> and <code>xterm-r6</code> 7684 the same, ignoring historical errors in X Consortium's 7685 version.</li> 7686 </ul> 7687 </li> 7688 7689 <li>fix an ifdef in logic for selecting regular expressions 7690 while in a narrow-character locale (Debian #449227).</li> 7691 </ul> 7692 7693 <h1><a name="xterm_229" id="xterm_229">Patch #229 - 2007/8/12</a></h1> 7694 7695 <ul> 7696 <li>override locale in minstall.sh; change in <a href= 7697 "#xterm_226">patch #226</a> does not work in UTF-8 locale 7698 (report by Zdenek Sekera).</li> 7699 7700 <li>undo an incorrect fix for a memory leak in <a href= 7701 "#xterm_209">patch #209</a> (Debian #435858).</li> 7702 </ul> 7703 7704 <h1><a name="xterm_228" id="xterm_228">Patch #228 - 2007/7/22</a></h1> 7705 7706 <ul> 7707 <li>modify configure script to permit combining 7708 <code>--with-utempter</code> and <code>--enable-setuid</code>, 7709 e.g., for using xterm with the utempter library on FreeBSD 7710 (report by Andriy Gapon).</li> 7711 7712 <li>modify "Quit" menu entry to override the <code>-hold</code> 7713 command-line option.</li> 7714 7715 <li>add a check in the startup error-reporting to avoid writing 7716 to pipe when it has not been opened. In that case, report 7717 errors directly to the standard error.</li> 7718 7719 <li>add OPT_READLINE definition to xtermcfg.hin, overlooked in 7720 <a href="#xterm_205">patch #205</a> (report by Kalle Olavi 7721 Niemitalo).</li> 7722 7723 <li>modify <code>88colors2.pl</code> and 7724 <code>256colors2.pl</code>, adding <code>-r</code> option to 7725 reverse the palettes for the extended colors.</li> 7726 7727 <li>check for partial overwrite or deletion of multi-column 7728 characters in several cases, e.g., insert-character, 7729 delete-character, etc., and fill the remainder of the cells 7730 used by the multi-column characters affected with blanks.</li> 7731 7732 <li>correct character-class codes in wide-character mode for 7733 characters 215, 247 (see also <a href="#xterm_165">patch 7734 #165</a>).</li> 7735 7736 <li>fix missing assignment for UTF-8 parsing in widget 7737 initialization (Debian #403360).</li> 7738 7739 <li>correct index expression used to set line-wrapping flag, 7740 making selection from scrollback work consistently (Debian 7741 #430121, report by Vincent Lefèvre).</li> 7742 7743 <li>amend changes to handshake in <a href="#xterm_226">patch 7744 #226</a> to accommodate Solaris, which relies on the extra 7745 setting of the terminal size after I/O initialization. Do this 7746 by adding new resource <code>ptySttySize</code>, which is false 7747 for Linux and MacOS X, i.e., true for for Solaris and other 7748 SVR4 platforms, as well as FreeBSD (reports by David Wood, 7749 Renato Botelho).</li> 7750 7751 <li>check for X events after cursor-left, and carriage return, 7752 consistent with indexing operations (comments by Vegard Nossum 7753 and Ingo Molnar on a mailing-list).</li> 7754 7755 <li>initialize the <code>.keyboard</code> structure, needed for 7756 some platforms (such as Solaris) after <a href= 7757 "#xterm_227">patch #227</a> fixes for keysyms (patch by David 7758 Wood).</li> 7759 7760 <li>update config.guess, config.sub</li> 7761 </ul> 7762 7763 <h1><a name="xterm_227" id="xterm_227">Patch #227 - 2007/6/27</a></h1> 7764 7765 <ul> 7766 <li>exclude the Intel compiler from the extra gcc warning 7767 options added in <a href="#xterm_226">patch #226</a>.</li> 7768 7769 <li>modify change for Debian #422521 from <a href= 7770 "#xterm_226">patch #226</a> to work with configurations where 7771 the X server does not recognize the <code>XF86Paste</code> or 7772 <code>SunPaste</code> keysyms (report by Paolo Pumilia).</li> 7773 7774 <li>fix incorrect free in fix for "Selection" menu entry in 7775 <a href="#xterm_226">patch #226</a>.</li> 7776 </ul> 7777 7778 <h1><a name="xterm_226" id="xterm_226">Patch #226 - 2007/6/17</a></h1> 7779 7780 <ul> 7781 <li>add configure check to use 7782 <code>-Wno-unknown-pragmas</code> for Solaris, and a few other 7783 new gcc warning options to address regressions in its warning 7784 options.</li> 7785 7786 <li>add sample desktop and icon files, along with configure 7787 options for manipulating them.</li> 7788 7789 <li>fix an infinite loop when showing a 2-column character in a 7790 1-column screen (Debian #426863).</li> 7791 7792 <li>add <code>XF86Paste</code> and <code>SunPaste</code> to the 7793 default translations (Debian #422521, patch by Bernhard R 7794 Link).</li> 7795 7796 <li>update wcwidth.c (partly based on/prompted by mailing list 7797 comment).</li> 7798 7799 <li>update/improve keysym2ucs.c based on Unicode 5.0.1d3 and 7800 Xorg 7.1 keysymdef.h file.</li> 7801 7802 <li>improve <code>gen-pc-fkeys.pl</code>, making it show all of 7803 the building-block terminfo entries used by xterm.</li> 7804 7805 <li>correct strings used for modifiers applied to F1-F4 in 7806 xterm+pcf1 terminfo entry.</li> 7807 7808 <li>improve session management by adding the ICE connection 7809 number to the <code>select</code> call rather than waking up 7810 once per second (patch by Miroslav Lichvar).</li> 7811 7812 <li>add environment variable <code>$XTERM_LOCALE</code> to help 7813 with shell initialization, e.g., to set a specific locale for 7814 xterm on systems where a global locale is set in the shell 7815 startup scripts.</li> 7816 7817 <li>add resource settings <code>mkSampleSize</code> and 7818 <code>mkSamplePass</code> to modify the <code>mkWidth</code> 7819 added in <a href="#xterm_201">patch #201</a>. In <a href= 7820 "#xterm_202">patch #202</a>, xterm would also check if the 7821 system's <code>wcwidth</code> matched its built-in tables "well 7822 enough" to be used when <code>mkWidth</code> was false, and if 7823 not would use the built-in tables anyway. These resources allow 7824 the user to customize the decision (prompted by comments by 7825 Emanuele Giaquinta)</li> 7826 7827 <li>modify logic which resets/updates the screensize on the 7828 child process side of the pseudo-terminal to do this only if a 7829 successful handshake was received, e.g., as determined by the 7830 <code>waitForMap</code> resource (prompted by reports by 7831 Emanuele Giaquinta and Bernhard R Link, but see also <a href= 7832 "#xterm_177">patch #177</a> and <a href="#xterm_159">patch 7833 #159</a>.</li> 7834 7835 <li>improve permissions logic when closing pseudo-terminal 7836 (Debian #12261, patch by Nathanael Nerode, analysis by Richard 7837 Braakman).</li> 7838 7839 <li>add resource <code>highlightReverse</code> which controls 7840 whether xterm will allow selection highlighting to hide 7841 reverse-video or use the older behavior which inverts the 7842 foreground and background colors when selected text with 7843 reverse-video attribute (report by Adam M Costello, comments by 7844 Victor Vaile).</li> 7845 7846 <li>restore a special case for cursor-color in 7847 <code>ReverseVideo()</code> lost in rewrite for <a href= 7848 "#xterm_224">patch #224</a> (report by Adam Sulmicki).</li> 7849 7850 <li>correct initialization for menu entry for 7851 <code>bellIsUrgent</code> (patch by Emanuele Giaquinta).</li> 7852 7853 <li>correct length of underlining for double-width Xft fonts 7854 (report by Shidai Liu "Leo").</li> 7855 7856 <li>correct clipping for double-width Xft fonts (report by 7857 Shidai Liu "Leo").</li> 7858 7859 <li>modify initialization for <code>italicULMode</code> to 7860 avoid <code>XftPatternBuild</code> reusing bold attributes 7861 (report by Shidai Liu "Leo").</li> 7862 7863 <li>add a check in case someone tries to call the 7864 <code>popup-menu()</code> action on a menu which is not 7865 initialized (Debian #426364).</li> 7866 7867 <li>improve CF_IMAKE_CFLAGS to work with Solaris sed (report by 7868 Peter Bray).</li> 7869 7870 <li>improve guess for X's manpage section in 7871 <code>minstall.sh</code>, (prompted by comment by Miroslav 7872 Lichvar).</li> 7873 7874 <li>modify <code>minstall.sh</code> to handle manpage patch 7875 with more than one dot (patch by Miroslav Lichvar).</li> 7876 7877 <li>fix configure message for --disable-setgid option (patch by 7878 Miroslav Lichvar).</li> 7879 7880 <li>add <code>allowTitleOps</code> resource to allow users to 7881 prevent the title- and icon-names from changing (request by 7882 John Bashinski).</li> 7883 7884 <li>fix "spawn-new-terminal" action, for the case where no 7885 parameter is passed to the action (patch by Daniel 7886 Colascione).</li> 7887 7888 <li>fix error-checking on internal font switching for 7889 "Selection" menu entry (Debian #421523).</li> 7890 7891 <li>amend select/paste change from <a href="#xterm_225">patch 7892 #225</a> by limiting it to non-UTF-8/non-KOI8-R encoding 7893 (Debian #420974).</li> 7894 7895 <li>add workaround for groff ".URL" codes which are not present 7896 in some commonly-used bitmap fonts (Debian #418324).</li> 7897 </ul> 7898 7899 <h1><a name="xterm_225" id="xterm_225">Patch #225 - 2007/3/24</a></h1> 7900 7901 <ul> 7902 <li>add <code>useClipping</code> resource to allow clipping to 7903 be disabled.</li> 7904 7905 <li>use <code>XftDrawSetClipRectangles</code> to work around 7906 Xft pixel-trash (report by Reuben Thomas).</li> 7907 7908 <li>add configure option <code>--enable-tcap-fkeys</code>, and 7909 resource <code>tcapFunctionKeys</code>, which can be used to 7910 tell xterm to use function-key definitions from the termcap (or 7911 terminfo) which it uses to set $TERM on startup.</li> 7912 7913 <li>add resources <code>altIsNotMeta</code> and 7914 <code>altSendsEscape</code> to allow one to use Alt-keys like 7915 the meta-key even if they are bound to different keycodes 7916 (prompted by discussion with Daniel Jacobowitz).</li> 7917 7918 <li>revert a change from <a href="#xterm_216">patch #216</a> 7919 that unnecessarily made the meta modifier override the 7920 <code>eightBitInput</code> resource if the alt- and 7921 meta-modifiers happened to overlap (report/patch by Daniel 7922 Jacobowitz).</li> 7923 7924 <li>correct associated font for active icon for colored text 7925 (broken in <a href="#xterm_224">patch #224</a>).</li> 7926 7927 <li>correct ifdef's for Darwin (patch by Emanuele 7928 Giaquinta).</li> 7929 7930 <li>add <code>highlightTextColor</code> resource, and options 7931 <code>-selfg</code>, <code>-selbg</code> like <code>xwsh</code> 7932 (adapted from patch by Victor Vaile).</li> 7933 7934 <li>revise <code>find_closest_color()</code> function to 7935 address concern about borrowing from <code>Tcl/Tk</code> 7936 (request by Dan McNichol).</li> 7937 7938 <li>add "spawn-new-terminal" action, which can be assigned to 7939 key translation, allowing one to spawn a new copy of xterm 7940 using the current process's working directory (adapted from 7941 patch by Daniel Colascione).</li> 7942 7943 <li>improve select/paste between UTF-8 and Latin1 xterms by 7944 adapting the translations from <a href="#xterm_185">patch 7945 #185</a>. Extend that to include Unicode fullwidth forms 7946 FF00-FF5E. Also modify select/paste of DEC line-drawing 7947 characters in Latin1 mode to use ASCII characters.</li> 7948 7949 <li>add "Enable Bell Urgency" to VT Options menu, removed 7950 "Enable Margin Bell".</li> 7951 7952 <li>add <code>bellIsUrgent</code> resource to control whether 7953 the Urgency hint is set/reset.</li> 7954 7955 <li>modify to set Urgency window manager hint on bell, reset it 7956 on Focus-In event (patch by Emanuele Giaquinta).</li> 7957 7958 <li>add <code>--disable-setgid</code> configure option (request 7959 by Miroslav Lichvar).</li> 7960 7961 <li>fix a possible infinite loop in last change to 7962 <code>dabbrev-expand()</code> (patch by Emanuele 7963 Giaquinta).</li> 7964 7965 <li>modify initialization to set the pty erase value if the 7966 <code>erase</code> is set in the <code>ttyModes</code> 7967 resource. This overrides the <code>ptyInitialErase</code> 7968 setting (request by Lluís Batlle i Rossell).</li> 7969 7970 <li>add <code>initialFont</code> resource to xterm widget, like 7971 tek-widget (Debian #299669).</li> 7972 7973 <li>amend change to <code>boldMode</code> from <a href= 7974 "#xterm_223">patch #223</a> for Debian #347790. As noted in 7975 Debian #412599, that made xterm no longer match the documented 7976 behavior. Add new resource <code>alwaysBoldMode</code> to allow 7977 overriding the comparison between normal/bold fonts when 7978 deciding whether to use overstriking to simulate bold 7979 fonts.</li> 7980 7981 <li>restore background color in ClearCurBackground(), omitted 7982 in changes for <a href="#xterm_223">patch #223</a> (report by 7983 Miroslav Lichvar).</li> 7984 7985 <li>correct logic for repainting double-width TrueType 7986 characters (prompted by test-case for Novell #246573).</li> 7987 7988 <li>add a check to avoid trying to repeat a multibyte character 7989 (report by Sami Farin).</li> 7990 7991 <li>modify parameter to <code>XftNameParse()</code> to select 7992 wide face-name as needed, to make <code>-fd</code> option work 7993 (patch by Mike Fabian, Novell #246573).</li> 7994 7995 <li>correct logic for mouse highlight tracking's abort 7996 sequence, broken in a restructuring modification from <a href= 7997 "#xterm_224">patch #224</a> (report by Thomas Wolff).</li> 7998 7999 <li>revert the simplification of blinking cursor, since that 8000 broke the xor'ing introduced in <a href="#xterm_193">patch 8001 #193</a> (report by Thomas Wolff).</li> 8002 </ul> 8003 8004 <h1><a name="xterm_224" id="xterm_224">Patch #224 - 2007/2/11</a></h1> 8005 8006 <ul> 8007 <li>simplify code for set/reset mode for blinking cursor (patch 8008 by Emanuele Giaquinta).</li> 8009 8010 <li>modify <code>dabbrev-expand()</code> to restart after the 8011 last match (patch by Emanuele Giaquinta).</li> 8012 8013 <li>add control sequences for enabling/disabling focus in/out 8014 event reporting (request by Bram Moolenaar).</li> 8015 8016 <li>improve startup performance of menus by adding resource 8017 setting <code>menuLocale</code> which can be set to override 8018 X's lengthy initialization of fontsets - which are seldom used 8019 for the <code>Xaw</code> popup menus (adapted from patch by 8020 Dave Coffin).</li> 8021 8022 <li>modify <code>do_precomposition()</code> function and 8023 <code>make-precompose.sh</code> to handle 21-bit codes vs the 8024 16-bit codes those were written for, and fix a few mis-sorted 8025 codes (patch by Thomas Wolff).</li> 8026 8027 <li>handle special case in <code>-cjk_width</code> which 8028 unexpectedly caused a character's width to change when a 8029 combining character (patch by Thomas Wolff)</li> 8030 8031 <li>fix build for GNU/KFreeBSD (Debian #40111).</li> 8032 8033 <li>consolidate GC creation/updating into a single module to 8034 reduce GC manipulation (prompted by Debian #389476, though a 8035 complete fix would involve optimizing the scrolling 8036 behavior).</li> 8037 8038 <li>fix ifdef of xtermCellWidth(), which broke for a case 8039 without TrueType and without wide-character support (report by 8040 Martin Pirker).</li> 8041 8042 <li>undo a comparison in 8043 <code>handle_translated_exposure</code> which did not work due 8044 to X server optimization. That caused the inner border to be 8045 repainted with unexpected colors when handling a repaint, e.g., 8046 after switching to/from another workspace (Debian #401726, 8047 Redhat Bugzilla #223027).</li> 8048 8049 <li>allow <code>-cr</code> option to override cursor color when 8050 <code>-ah</code> option is used (Debian #406502).</li> 8051 8052 <li>add a note in xterm's manpage explaining that the 8053 <code>-bw</code> (or <code>-w</code>) option is only used by 8054 the window manager, if at all (Debian #405043).</li> 8055 8056 <li>make <code>Selection</code> of <code>VT Fonts</code> 8057 work with <code>selectToClipboard</code> resource.</li> 8058 8059 <li>correct length calculation for <code>Selection</code> entry 8060 of <code>VT Fonts</code> menu, broken since it ignored the 8061 actual selection length since X11R4.</li> 8062 8063 <li>fixes for fontsize changes with <code>-fa</code> option 8064 (Redhat Bugzilla #222340).</li> 8065 </ul> 8066 8067 <h1><a name="xterm_223" id="xterm_223">Patch #223 - 8068 2006/11/30</a></h1> 8069 8070 <ul> 8071 <li>add <code>--enable-rectangles</code> configure option 8072 (request by Martin Pirker).</li> 8073 8074 <li>correct default value for <code>--with-symlink</code> 8075 configure option.</li> 8076 8077 <li>fixes configure script macros that use 8078 <code>$X_EXTRA_LIBS</code>.</li> 8079 8080 <li>modify configure script to provide support for pre-package 8081 config versions of Xft aka "FreeType".</li> 8082 8083 <li>add the Xaw scrollbar translations resource to the xterm 8084 manpage, add an example showing how to change the mouse button 8085 assignments (Debian #382225).</li> 8086 8087 <li>amend a change from <a href="#xterm_216">patch #216</a>, 8088 which omitted modifiers for control, meta, etc., if they were 8089 mixed with any other modifiers. The intent of the change was to 8090 avoid confusion with <code>XK_Mode_switch</code> and 8091 <code>XK_ISO_Level3_Shift</code>; the check is now done 8092 explicitly (report by Daniel Jacobowitz).</li> 8093 8094 <li>interpret a negative value for 8095 <code>modifyCursorKeys</code> or 8096 <code>modifyFunctionKeys</code> resources to disable the 8097 respective features (prompted by Novell #220728).</li> 8098 8099 <li>amend cell-width computation for FreeType from <a href= 8100 "#xterm_217">patch #217</a>, which did not work for VT100 8101 line-drawing characters (Debian #399638, Gentoo #147111).</li> 8102 8103 <li>amend a change from <a href="#xterm_216">patch #216</a>, 8104 which made alt-modifier on a cursor-key send a modifier 8105 parameter (Novell #220728).</li> 8106 8107 <li>correct an off-by-one that made DECCRA not work 8108 (report/patch by Martin Pirker).</li> 8109 8110 <li>revert an optimization in SGR_Foreground() and 8111 SGR_Background from <a href="#xterm_209">patch #209</a> (Debian 8112 #347722, analysis by Pierre Lombard).</li> 8113 8114 <li>fix for <code>boldMode</code> (Debian #347790, patch by Tim 8115 Pope).</li> 8116 8117 <li>amend fix for <code>-iconic</code> in <a href= 8118 "#xterm_208">patch #208</a>, which broke the positioning part 8119 of <code>-geom</code> with toolbar configuration.</li> 8120 8121 <li>fix to prevent indexing error in regular expressions (patch 8122 by Dennis Schneider).</li> 8123 8124 <li>fixes to make the <code>internalBorder</code> area not 8125 change color due to reverseVideo and/or related exposure 8126 events. The latter was a very old bug exposed in <a href= 8127 "#xterm_196">patch #196</a> (report by Neil Hoggarth, also 8128 Debian #397624).</li> 8129 </ul> 8130 8131 <h1><a name="xterm_222" id="xterm_222">Patch #222 - 8132 2006/10/17</a></h1> 8133 8134 <ul> 8135 <li>minor optimization for recoloring cursor via dynamic 8136 colors.</li> 8137 8138 <li>fix a bug caused by restructuring of tek4014 widget (report 8139 by Paul Schenkeveld)</li> 8140 </ul> 8141 8142 <h1><a name="xterm_221" id="xterm_221">Patch #221 - 2006/10/1</a></h1> 8143 8144 <ul> 8145 <li>fix for regular expressions: the code which converted the 8146 column offset within a line did not check properly for the end 8147 of a line, and if allowed to match the whole line, would select 8148 the beginning of the following line. If the following line were 8149 empty, in turn it would select from the next, etc. (report by 8150 Sean Reifschneider).</li> 8151 8152 <li>minor optimization of color allocation to avoid repainting 8153 the screen if the corresponding color had not been 8154 allocated.</li> 8155 8156 <li>fixes for vttests/256colors.pl (report by Egmont 8157 Koblinger).</li> 8158 8159 <li>add terminfo building block entries for modifiers of the 8160 6-key editing keypad.</li> 8161 8162 <li>fix for initialization of tek4014 which broke on QNX 8163 6.1</li> 8164 </ul> 8165 8166 <h1><a name="xterm_220" id="xterm_220">Patch #220 - 2006/9/10</a></h1> 8167 8168 <ul> 8169 <li>make "xterm -t -iconic" work as expected, i.e., start in 8170 tek4014 mode, but iconified.</li> 8171 </ul> 8172 8173 <h1><a name="xterm_219" id="xterm_219">Patch #219 - 2006/9/4</a></h1> 8174 8175 <ul> 8176 <li>some internal restructuring to separate data for vt100 and 8177 tek4014 widgets.</li> 8178 8179 <li>fix a few cases where form-events would be seen by the 8180 vt100 widget when built with the toolbar configuration.</li> 8181 </ul> 8182 8183 <h1><a name="xterm_218" id="xterm_218">Patch #218 - 2006/8/27</a></h1> 8184 8185 <ul> 8186 <li>change behavior when encountering an illegal character in a 8187 title string. Rather than reject the string, translate illegal 8188 characters into "?" and use the string (requested by Thomas 8189 Wolff).</li> 8190 8191 <li>improve checks for nonprinting characters in title strings 8192 (report by Samuel Thibault).</li> 8193 8194 <li>correct typo in menu labels, changing 8195 <code>print-redirect</code> to <code>print-redir</code>, making 8196 it follow the manpage and match the usage for the actions table 8197 (report by Samuel Thibault).</li> 8198 8199 <li>correct a typo that prevents building with some older 8200 systems such as Solaris 2.6 (report by Julian Bridle).</li> 8201 </ul> 8202 8203 <h1><a name="xterm_217" id="xterm_217">Patch #217 - 2006/8/20</a></h1> 8204 8205 <ul> 8206 <li>minor improvements to FreeType font layout and 8207 drawing.</li> 8208 8209 <li>add a check in the ptyInitialErase logic to ensure that the 8210 termcap was read (Redhat Bugzilla #201246).</li> 8211 8212 <li>limit changes for reverse-video from <a href= 8213 "#xterm_216">patch #216</a> to cases where the reverse-video 8214 command-line option is used (report by Zdenek Sekera).</li> 8215 8216 <li>correct bitmap-derived pointsizes for TrueType fonts; they 8217 should be proportional to the square root of the area of the 8218 bitmap fonts.</li> 8219 8220 <li>add resources to specify pointsize of TrueType fonts 8221 (request by Reuben Thomas).</li> 8222 8223 <li>improve install of terminfo by filtering out harmless 8224 messages related to extended capabilities. At the same time, 8225 use ncurses tic to compile the extended capabilities if 8226 possible (report by Zdenek Sekera).</li> 8227 8228 <li>update "xterm+pcfkeys" terminfo entry to correspond to 8229 <a href="#xterm_216">patch #216</a>.</li> 8230 </ul> 8231 8232 <h1><a name="xterm_216" id="xterm_216">Patch #216 - 2006/8/3</a></h1> 8233 8234 <ul> 8235 <li>improve handling of <code>ConfigureNotify</code> events by 8236 checking if there are further events in the queue which 8237 obsolete the current one (adapted from rxvt 2.7.5). Only the 8238 normal normal (non-toolbar) configuration is addressed in this 8239 patch.</li> 8240 8241 <li>several changes to terminfo: 8242 <ul> 8243 <li>incorporate some minor changes from ncurses to help 8244 keep these synchronized: 8245 <dl> 8246 <dt>2005-02-26</dt> 8247 8248 <dd>modify sgr/sgr0 in xterm-new to improve tgetent's 8249 derived "me".</dd> 8250 8251 <dt>2006-02-18</dt> 8252 8253 <dd>remove ncv flag from xterm-16color</dd> 8254 8255 <dt>2006-06-24</dt> 8256 8257 <dd>improve xterm-256color by combining the 16-color 8258 setaf/setab strings with SGR 48, and cancelling the 8259 setf/setb strings.</dd> 8260 </dl> 8261 </li> 8262 8263 <li>use extended function-key definitions for xterm-sun, 8264 xterm-sco entries.</li> 8265 8266 <li>add terminfo building-blocks corresponding to the 8267 <code>modifyFunctionKeys</code> and 8268 <code>modifyCursorKeys</code> resources.</li> 8269 </ul> 8270 </li> 8271 8272 <li>ifdef'd Sun function-key feature to make it optional, like 8273 HP and SCO.</li> 8274 8275 <li>extend table for termcap-query feature through F63, and 8276 updated tcapquery.pl to match.</li> 8277 8278 <li>modify logic for function-key input processing to allow 8279 function key numbers which are constructed by control- and 8280 shift-modifiers to extend beyond X's hardcoded limit of 8281 35.</li> 8282 8283 <li>add control sequence to set or reset the 8284 <code>eightBitInput</code> resource.</li> 8285 8286 <li>change default resource <code>modifyFunctionKeys</code> to 8287 2 to avoid sending SS3 with parameters (report by Kalle Olavi 8288 Niemitalo).</li> 8289 8290 <li>add control sequences for setting and resetting the values 8291 of the <code>modifyCursorKeys</code>, 8292 <code>modifyFunctionKeys</code> and 8293 <code>modifyOtherKeys</code> resources.</li> 8294 8295 <li>add <code>modifyFunctionKeys</code> resource like 8296 <code>modifyCursorKeys</code>. Setting this to zero allows one 8297 to use the control- and shift-modifiers to construct function 8298 key strings, for terminals using many function keys, e.g., for 8299 <code>xterm-sun</code> or <code>xterm-sco</code>.</li> 8300 8301 <li>modify screen responses and function-key logic to reduce 8302 the number of writes made, to make it less likely that an 8303 application would read only part of a function-key in a read 8304 operation (suggested by John E Urbanczyk).</li> 8305 8306 <li>add <code>combiningChars</code> resource, which allows the 8307 user to specify the maximum number of combining characters that 8308 xterm will store for each cell in wide-character mode (prompted 8309 by request by Markus Kuhn to increase the limit from 2).</li> 8310 8311 <li>improve logic in <code>metaSendsEscape</code> in case the 8312 Alt- and Meta-keys are mapped to different modifiers. That 8313 allows one to use the Alt-key for shifting in the 8314 <code>eightBitInput</code> and use a Meta-key modifier to 8315 prefix the result with an <code><ESC></code>.</li> 8316 8317 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8318 from modifying codes where <code>eightBitInput</code> or 8319 <code>metaSendsEscape</code> are set (request by Dan 8320 Nicolaescu).</li> 8321 8322 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8323 from changing the user input when other modifiers such as AltGr 8324 are used (report by Thomas Wolff).</li> 8325 8326 <li>extend <code>modifyCursorKeys</code> to include the numeric 8327 keypad when in application mode.</li> 8328 8329 <li>improve <code>-reverse</code> (<code>-rv</code>) option 8330 (patch by Jason Vas Dias, Redhat #189161).</li> 8331 8332 <li>workaround for color resources on Fedora-5 which made the 8333 toolbar colors inconsistent.</li> 8334 8335 <li>corrected calls used for <code>--disable-setuid</code> 8336 option, add debugging traces to help diagnose this area.</li> 8337 8338 <li>modify configure script to ensure that 8339 <code>USE_UTMP_SETGID</code> is defined only if the check for 8340 POSIX saved-ids succeeds, or corresponds to one of the BSD 8341 systems known to have a workable <code>setegid</code> 8342 function.</li> 8343 8344 <li>extend configure check for POSIX saved-ids to include BSD 8345 systems</li> 8346 8347 <li>modify CF_SYSV configure macro to work with gcc on HPUX 8348 10.20, whose broken <code><term.h></code> relies on 8349 including <code><termios.h></code>.</li> 8350 8351 <li>change order of setuid/setgid ifdef checks in Imakefile to 8352 make it simpler to produce a setgid install, allowing the 8353 latter to override the former (prompted by an XFree86 8354 commit).</li> 8355 8356 <li>adapt a fix for setgid support from subsequent XFree86 8357 changes (patch by Emanuele Giaquinta).</li> 8358 8359 <li>further improve setgid support (patches by Emanuele 8360 Giaquinta).</li> 8361 </ul> 8362 8363 <h1><a name="xterm_215" id="xterm_215">Patch #215 - 2006/6/19 - 8364 XFree86 4.6.99.2</a></h1> 8365 8366 <ul> 8367 <li>improve setgid support by exploiting the saved-ids feature 8368 on which it relies (patch by Emanuele Giaquinta).</li> 8369 8370 <li>make the <code>modifyOtherKeys</code> resource disabled by 8371 default since the intermediate setting altered some common 8372 bindings (report by Emanuele Giaquinta).</li> 8373 </ul> 8374 8375 <h1><a name="xterm_214" id="xterm_214">Patch #214 - 2006/6/18 - 8376 XFree86 4.6.99.2</a></h1> 8377 8378 <ul> 8379 <li>modify makefile rule for ctlseqs.txt to strip 8380 backspace/overstrikes, and add a copy of ctlseqs.txt to the 8381 source tarballs (requests by Bram Moolenaar, Emanuele 8382 Giaquinta).</li> 8383 8384 <li>add <code>modifyOtherKeys</code> resource, analogous to the 8385 <code>modifyCursorKeys</code> resource. This applies to keys 8386 that normally would transmit nothing when a given modifier is 8387 applied (request by Dan Nicolaescu).</li> 8388 8389 <li>add <code>default</code> to the acceptable values for the 8390 <code>keyboardType</code> resource, allowing the 8391 <code>-kt</code> command-line option to override app-defaults 8392 resource settings of <code>sunKeyboard</code>, etc.</li> 8393 8394 <li>correct ifdef's for <code>XkbBell()</code> which used the 8395 header file but not the corresponding function in <a href= 8396 "#xterm_175">patch #175</a> (report by Zach Beane).</li> 8397 8398 <li>add xterm manpage to the <code>--with-symlink</code> 8399 logic.</li> 8400 8401 <li>regenerated configure script to omit some debugging 8402 artifacts of the SIGWINCH test.</li> 8403 8404 <li>fix <code>install-man</code> rule in 8405 <code>Makefile.in</code> to avoid including the 8406 <code>$(DESTDIR)</code> value in substitutions made on the 8407 manpages (patch by Emanuele Giaquinta).</li> 8408 8409 <li>improved fix for cursor deallocation (Redhat #186935, patch 8410 by Jason Vas Dias).</li> 8411 8412 <li>improve checks for setuid/setgid operation to accommodate 8413 limited resource management in some kernels (Gentoo 8414 #193238).</li> 8415 8416 <li>update config.guess, config.sub</li> 8417 </ul> 8418 8419 <h1><a name="xterm_213" id="xterm_213">Patch #213 - 2006/4/30 - 8420 XFree86 4.5.99.905</a></h1> 8421 8422 <ul> 8423 <li>minor optimization to cell layout; will use that to 8424 simplify some logic and allow for more than two combining 8425 characters in another patch.</li> 8426 8427 <li>add <code>utf8Latin1</code> resource to make optional the 8428 feature from <a href="#xterm_209">patch #209</a> which allowed 8429 ISO-8859-1 fonts to be used in cases where a wide font was 8430 given. This would only work for the special case where the user 8431 normally used Latin-1 and wanted some wide characters (report 8432 by Rostislav Krasny).</li> 8433 8434 <li>add <code>utf8Title</code> resource to manpage (Novell 8435 #52655).</li> 8436 8437 <li>fix typo in table entry for <code>utf8Title</code> resource 8438 which made it treated as an integer rather than boolean (patch 8439 by Mike Fabian, Novell #52655).</li> 8440 </ul> 8441 8442 <h1><a name="xterm_212" id="xterm_212">Patch #212 - 2006/4/9 - 8443 XFree86 4.5.99.904</a></h1> 8444 8445 <ul> 8446 <li>improve description of <code>forceBoxChars</code> in 8447 manpage (discussion with Joe Wells).</li> 8448 8449 <li>set checkmark for "Select To Clipboard" menu entry on 8450 startup, from resource setting.</li> 8451 8452 <li>update manpage to note that 8453 <code>*customization:color</code> is not needed, though it is 8454 useful (Redhat #188034).</li> 8455 8456 <li>add underscore to sample pattern for URL in 8457 <code>XTerm.ad</code> (Redhat #188037).</li> 8458 8459 <li>modify install rule for manpage to use the configured 8460 app-defaults directory (Redhat #188031).</li> 8461 8462 <li>add checks in <code>releaseCursorGCs()</code> to ensure 8463 GC's are distinct, needed since memory leak changes for 8464 <a href="#xterm_208">patch #208</a> (Redhat #186935, patch by 8465 Jason Vas Dias).</li> 8466 8467 <li>modify <code>Imakefile</code> definitions to allow 8468 <code>imake</code> to set <code>InstallXtermSetGID</code>. Add 8469 symbol <code>InstGidFlags</code>.</li> 8470 8471 <li>add configure script check to ensure that SIGWINCH if 8472 defined even when headers undefine this as a side-effect of 8473 <code>_POSIX_C_SOURCE</code>, etc.</li> 8474 8475 <li>resync with XFree86 CVS 8476 <ul> 8477 <li>ifdef-out chmod of terminal device for OS/2 (XFree86 8478 #1663, Frank Giessler).</li> 8479 8480 <li>move new <code>Imakefile</code> chunk which defines 8481 <code>$(CSGIDFLAGS)</code> before DEFINES, e.g., for IRIX64 8482 (Marc La France).</li> 8483 </ul> 8484 </li> 8485 </ul> 8486 8487 <h1><a name="xterm_211" id="xterm_211">Patch #211 - 2006/3/19 - 8488 XFree86 4.5.99.902</a></h1> 8489 8490 <ul> 8491 <li>modify prefix/suffix transformation in makefile to make 8492 <code>uxterm</code> install properly on Cygwin.</li> 8493 8494 <li>restore the sizeof-comparison for <code>struct 8495 lastlog</code> added in <a href="#xterm_208">patch #208</a>, 8496 rendered (mostly) obsolete in <a href="#xterm_210">patch 8497 #210</a>, since an imake configuration can still turn that code 8498 on (prompted by comment by David Dawes).</li> 8499 8500 <li>remove feature for <code>FreeBSDArchitecture</code> from 8501 <code>Imakefile</code> which would install xterm using the 8502 <code>utmp</code> group since a standard FreeBSD system has no 8503 such group, though it would support this configuration. FreeBSD 8504 packager uses the <code>configure</code> script, which can make 8505 the appropriate check (prompted by comment by David 8506 Dawes).</li> 8507 8508 <li>fixes for gcc redefinition warnings when built using imake 8509 (reports by David Dawes, Marc La France).</li> 8510 </ul> 8511 8512 <h1><a name="xterm_210" id="xterm_210">Patch #210 - 2006/3/12 - 8513 XFree86 4.5.99.902</a></h1> 8514 8515 <ul> 8516 <li>add configure check for workaround in <a href= 8517 "#xterm_208">patch #208</a> for Solaris' inconsistent support 8518 for struct lastlog to quiet compiler warnings (prompted by 8519 David Dawes commit message for XFree86).</li> 8520 8521 <li>fixes for BASE64 selection manipulation, e.g., ensure that 8522 the string terminator is written after cut-buffer data (report 8523 by Joe Allen).</li> 8524 8525 <li>add vttests/paste64.pl script to test experimental option 8526 for setting/getting selection data.</li> 8527 8528 <li>add some error-checking in fontutils.c (prompted by David 8529 Dawes commit message for XFree86).</li> 8530 8531 <li>change xterm manpage to show the actual color resource 8532 names <code>XtDefaultForeground</code> and 8533 <code>XtDefaultBackground</code> rather than black and white 8534 (prompted by discussion with Emanuele Giaquinta).</li> 8535 8536 <li>add <code>utf8Title</code> resource and menu entry, 8537 allowing the user to control whether title strings are 8538 interpreted as ISO-8859-1 or UTF-8 encoding (Novell #52655, 8539 Novell #113206).</li> 8540 8541 <li>change order of ifdef's for utempter versus platforms in 8542 <code>Imakefile</code> to ensure a proper value for 8543 <code>InstallXtermSetGID</code> (prompted by Marc La France 8544 commit message for XFree86).</li> 8545 8546 <li>update the cursor GCs when menu entry for reverse video is 8547 toggled. (Redhat #183993).</li> 8548 8549 <li>a memory-leak fix for <code>set_cursor_gcs()</code> in 8550 <a href="#xterm_208">patch #208</a> broke the <code>-cm</code> 8551 option (Redhat #182382).</li> 8552 </ul> 8553 8554 <h1><a name="xterm_209" id="xterm_209">Patch #209 - 2006/2/12 - 8555 XFree86 4.5.99.22</a></h1> 8556 8557 <ul> 8558 <li>remove <code>setf</code> and <code>setb</code> from 8559 <code>xterm-256color</code> terminfo entry to avoid issues with 8560 applications that ignore the ANSI strings (report by Emanuele 8561 Giaquinta).</li> 8562 8563 <li>remove obsolete references to "Xorg" to avoid confusion 8564 with "X.org" (prompted by David Dawes commit message for 8565 XFree86).</li> 8566 8567 <li>improve initial layout performance for the toolbar 8568 configuration by precalculating the height of the toolbar.</li> 8569 8570 <li>remove menu entry for "Enable Curses Emulation" (to make 8571 room for "Select To Clipboard").</li> 8572 8573 <li>add resource <code>selectToClipboard</code>, action 8574 <code>set-select</code> and a menu entry to allow users to 8575 switch between PRIMARY and CLIPBOARD for select/paste.</li> 8576 8577 <li>allow cursor to have the same color as foreground (text), 8578 since it is rendered as reverse (Debian #350664).</li> 8579 8580 <li>amend change for loading <code>utf8Fonts</code> resource 8581 from <a href="#xterm_204">patch #204</a> to allow an ISO-8859-1 8582 "normal" font to be combined with an ISO-10646 font if the 8583 latter is given via the <code>-fw</code> option or its 8584 corresponding resource value (prompted by comment in Novell 8585 #49305).</li> 8586 8587 <li>add <code>TIOCSCTTY</code> <code>ioctl()</code> ifdef'd for 8588 <code>__GNU__</code> to set the controlling terminal (Debian 8589 #348457).</li> 8590 8591 <li>add configure option <code>--disable-leaks</code>.</li> 8592 8593 <li>add a check in <code>Bell</code> to ensure that the VT100 8594 widget is realized, since it may be called by 8595 <code>xtermLoadFont</code> given an incorrect font resource 8596 (Redhat #180450).</li> 8597 8598 <li>improve initialization of wide-bold font by not using the 8599 derived value when it happens to have few glyphs (report by 8600 Mboso Sampson).</li> 8601 8602 <li>improve dynamic colors by not repainting the screen if only 8603 the cursor color changes (request by Bram Moolenaar).</li> 8604 8605 <li>fix menu initialization for tek4014 window broken in 8606 <a href="#xterm_206">patch #206</a>.</li> 8607 8608 <li>typo in manpage (Debian #351425).</li> 8609 8610 <li>correct loop logic in <code>dotext</code> to prevent an 8611 infinite loop if a wide character was just at the right margin 8612 when wrapping was disabled (report by Serge van den Boom).</li> 8613 8614 <li>initialize the saved-cursor data so a restore-cursor 8615 operation without a preceding save-cursor operation will not 8616 modify the foreground color.</li> 8617 8618 <li>add a new selection feature: regular expressions, and new 8619 resources which specify what happens on multiple mouse clicks: 8620 <code>on2Clicks</code>, <code>on3Clicks</code>, 8621 <code>on4Clicks</code> and <code>on5Clicks</code>.</li> 8622 8623 <li>revert the <code>XTerm.ad</code> change from <a href= 8624 "#xterm_208">patch #208</a> (Debian #348384).</li> 8625 8626 <li>fixes for the print-window to make it handle combining 8627 characters in UTF-8 mode.</li> 8628 8629 <li>add check to ensure that double-clicking to extend 8630 selection will not extend it into the scrollback area. This 8631 still allows users to scroll back and select text (Debian 8632 #347415).</li> 8633 8634 <li>add configure option <code>--with-tty-group</code> to help 8635 work around deficiencies in packager's build environment 8636 (Debian #349142).</li> 8637 8638 <li>fix typo in configure script option 8639 <code>--disable-narrowproto</code> (report by David 8640 Martínez Moreno).</li> 8641 8642 <li>amend CF_X_FREETYPE changes for <code>pkg-config</code> 8643 check to ensure that <code>Xft</code> is known to that tool 8644 (report and patch by Emanuele Giaquinta).</li> 8645 8646 <li>add an ifdef to allow <code>./configure 8647 --disable-active-icon</code> to work, broken by new code for 8648 testing memory leaks in <a href="#xterm_208">patch #208</a> 8649 (report by Brian Lindholm).</li> 8650 </ul> 8651 8652 <h1><a name="xterm_208" id="xterm_208">Patch #208 - 2006/1/3 - 8653 XFree86 4.5.99.19</a></h1> 8654 8655 <ul> 8656 <li>add <code>charClass</code> resource to 8657 <code>XTerm.ad</code> and <code>UXTerm.ad</code> which 8658 simplifies selecting URLs (prompted by Kirill Ponomarew).</li> 8659 8660 <li>modify install rule for <code>uxterm</code> to account for 8661 the <code>--program-prefix</code>, etc., options by invoking 8662 the transformed name of xterm rather than simply "xterm".</li> 8663 8664 <li>modify configure <code>--with-app-defaults</code> option to 8665 allow <code>--without-app-defaults</code>.</li> 8666 8667 <li>add configure <code>--with-symlink</code> option to make it 8668 simpler to install successive versions of <code>xterm</code> 8669 renamed using the <code>--program-prefix</code>, etc., options 8670 with a symbolic link pointing to the most recent.</li> 8671 8672 <li>make <code>-iconic</code> option work with toolbar 8673 configuration (Gentoo #113604).</li> 8674 8675 <li>suppress <code>lastlog</code> feature for 64-bit Solaris 8676 configuration since that platform provides only a 32-bit 8677 interface (report by Peter Bray).</li> 8678 8679 <li>fix memory reallocation for the "UTF-8" menu entry when 8680 xterm is started using the <code>+u8</code> option (reported by 8681 Jan Willem Stumpel).</li> 8682 8683 <li>add a configure check for the actual path of 8684 <code>luit</code>, to work around broken <code>imake</code> 8685 configurations.</li> 8686 8687 <li>add a configure check for <code>pkg-config</code> (Redhat 8688 Bugzilla #173541).</li> 8689 8690 <li>modify install-rule for <code>uxterm</code> to omit 8691 executable suffix, e.g., for Cygwin.</li> 8692 8693 <li>modify <code>sinstall.sh</code> to work around quirks in 8694 Cygwin configuration.</li> 8695 </ul> 8696 8697 <h1><a name="xterm_207" id="xterm_207">Patch #207 - 2005/11/13 - 8698 XFree86 4.5.99.16</a></h1> 8699 8700 <ul> 8701 <li>enable <code>lastlogx</code> support for NetBSD (was added, 8702 but not enabled in <a href="#xterm_186">patch #186</a>).</li> 8703 8704 <li>work around broken <code>lastlog.h</code> in glibc 2.3.5, 8705 which includes <code>utmp.h</code>.</li> 8706 8707 <li>revert part of recent XFree86 Imakefile change, restoring 8708 the <code>-I.</code> needed for <code>xmkmf</code> builds of 8709 xterm (XFree86 Bugzilla #1633, reports by Alexander Pohoyda, 8710 Matthieu Herrb).</li> 8711 8712 <li>change compiled-in default for <code>printerCommand</code> 8713 resource to an empty string. People who want to use the printer 8714 should be able to read the manual (Debian #311490).</li> 8715 8716 <li>modify <code>Imakefile</code> to work around old problems 8717 in <code>imake</code> configuration to allow test-builds using 8718 <code>xmkmf</code> on Linux. (This was not noticed since 8719 several releases had broken definitions relating to Xft which 8720 were harder to work around).</li> 8721 8722 <li>link <code>resize</code> for SCO platforms (Kean 8723 Johnston).</li> 8724 </ul> 8725 8726 <h1><a name="xterm_206" id="xterm_206">Patch #206 - 2005/11/3 - 8727 XFree86 4.5.99.15</a></h1> 8728 8729 <ul> 8730 <li>add configure <code>--with-app-defaults</code> option to 8731 allow app-defaults directory for install-rules to be 8732 customized.</li> 8733 8734 <li>remove default translations for 8735 <code>dabbrev-expand()</code> due to conflicts with existing 8736 keyboard arrangements.</li> 8737 8738 <li>remove redundant check for <code>_NET_WM_PID</code> (report 8739 by Emanuele Giaquinta).</li> 8740 8741 <li>set icon border width explicitly to work around fvwm 8742 problem with active icon resizing (report by Steve Morris, 8743 analysis by Dominik Vogt).</li> 8744 8745 <li>modify resource files to make the font-resources a little 8746 more specific, e.g., changing "*VT100*" to "*VT100.", to make 8747 the distinction between VT100.font and VT100.utf8Fonts.font 8748 sharper, in case a packager modifies one of those.</li> 8749 8750 <li>expanded comments in <code>UXTerm.ad</code> regarding the 8751 font resources (Debian #319179).</li> 8752 8753 <li>add <code>--enable-narrowproto</code> configure option to 8754 accommodate X.org "modular" build (report by Stephan Hermann, 8755 Gentoo #17220).</li> 8756 8757 <li>fix typo in xterm.man description of <code>+wf</code> 8758 (patch by Tobias Stoeckmann).</li> 8759 8760 <li>add <code>scrollBarBorder</code> resource (request by Floyd 8761 L Davidson).</li> 8762 8763 <li>modify <code>xterm-new</code> terminfo entry to use 8764 capabilities for shifted scroll forward/reverse as shifted 8765 cursor up/down.</li> 8766 8767 <li>correct updating of checkmark for toolbar entry in popup 8768 menu (report by Emanuele Giaquinta).</li> 8769 8770 <li>fix ifdef's to allow compiling with toolbar and without 8771 tek4014 (patch by Emanuele Giaquinta).</li> 8772 8773 <li>use <code>openpty()</code> for Darwin port (patch by 8774 Emanuele Giaquinta).</li> 8775 8776 <li>fix Gentoo #90697 a different way, postponing the logic in 8777 <code>SetupToolbar</code> until the toolbar is actually needed, 8778 i.e., the <code>+tb</code> option is handled as expected.</li> 8779 8780 <li>revert fix made in <a href="#xterm_203">patch #203</a> for 8781 Gentoo #90697. That introduced a problem with the control mouse 8782 click-popups, while most of the performance problems can be 8783 resolved by restricting the menu fonts (report by Emanuele 8784 Giaquinta).</li> 8785 8786 <li>fix a file-descriptor leak when calling 8787 <code>openpty()</code> (OpenBSD system/4561).</li> 8788 8789 <li>make a special case of resizing work like vt100: a hard 8790 reset also resets the 132/80 mode. The code to support this was 8791 present since X11R5, but not used because the corresponding 8792 initial state of the <code>-132</code> option was not 8793 saved.</li> 8794 8795 <li>restore window manager hints after 8796 <code>XtMakeResizeRequest()</code> calls. One instance from 8797 <a href="#xterm_205">patch #205</a> resulted in the window 8798 manager displaying pixels rather than than characters after 8799 selecting a different font size (FreeBSD ports/87424).</li> 8800 8801 <li>remove special case for Darwin in CF_XOPEN_SOURCE (Emanuele 8802 Giaquinta).</li> 8803 8804 <li>modify parsing of control sequence <code>CSI T</code> 8805 to allow scroll-down to be sent while mouse tracking is enabled 8806 (request by D Hugh Redelmeier).</li> 8807 8808 <li>correct termcap "me" (mode-end) string so it does not 8809 modify the alternate character set (report by Andrey 8810 Chernov).</li> 8811 8812 <li>correct size-comparison in HandleInterpret() broken in 8813 changes from <a href="#xterm_201">patch #201</a> to allocate 8814 input buffer (Debian #334317).</li> 8815 8816 <li>amend adjustments for scrollbar layout from <a href= 8817 "#xterm_204">patch #204</a> to make this apply only to the 8818 toolbar configuration. In the non-toolbar configuration, the 8819 resulting scrollbar was shifted by its borderwidth (report by 8820 Matthieu Herrb).</li> 8821 8822 <li>add select-cursor-extend() action.</li> 8823 8824 <li>fix some broken href's in xterm.log.html, and typo in the 8825 INSTALL file (report/patch by David Martínez 8826 Moreno).</li> 8827 8828 <li>modify <code>Imakefile</code> to use setgid mode for 8829 installing with Linux, OpenBSD and FreeBSD.</li> 8830 8831 <li>add configure --with-setuid and --with-reference options to 8832 allow packagers more flexibility in customizing install 8833 permissions.</li> 8834 8835 <li>generalize and make optional (configure --with-utmp-setgid) 8836 the change made for XFree86 Bugzilla #878 in <a href= 8837 "#xterm_205">patch #205</a> (FreeBSD bug report 8838 #ports/86663).</li> 8839 </ul> 8840 8841 <h1><a name="xterm_205" id="xterm_205">Patch #205 - 2005/9/18 - 8842 XFree86 4.5.99.12</a></h1> 8843 8844 <ul> 8845 <li>correct a typo in CF_FUNC_TGETENT introduced in <a href= 8846 "#xterm_198">patch #198</a> fix for Gentoo #69926.</li> 8847 8848 <li>implement logic in termcap query to process multiple 8849 parameters as documented in ctlseqs.ms</li> 8850 8851 <li>fix buffer size used for termcap query, which was not long 8852 enough for the terminfo "colors" name (patch by Bradd W. 8853 Szonye).</li> 8854 8855 <li>add configure option --enable-readline-mouse, which turns 8856 on the experimental OPT_READLINE code (patch by Ilya 8857 Zakharevich).</li> 8858 8859 <li>for FreeBSD, drop setuid privileges after startup (XFree86 8860 Bugzilla #878, report/patch by Alexander Pohoyda)</li> 8861 8862 <li>add menu entry (alt-esc) and corresponding action 8863 (alt-sends-esc) to toggle the <code>eightBitInput</code> 8864 resource setting.</li> 8865 8866 <li>generate configure script with autoconf 2.52 (patched) to 8867 use the feature therein which forces the script's locale to 8868 POSIX (Gentoo Bugzilla #105369).</li> 8869 8870 <li>modify computation of rows/columns on resize to avoid 8871 extending beyond the given limits, e.g., if resizing in 8872 response to a "maximize" in Gnome or KDE which do not use the 8873 window manager hints for this case (Debian #289123, Novell 8874 #61153).</li> 8875 8876 <li>modifications to work with z/OS 1.4 (Paul Giordano).</li> 8877 8878 <li>improve error-reporting when chown/chmod of the 8879 pseudo-terminal fails, e.g., if a copy of xterm which was 8880 designed to work with old-style pseudo-terminals is not 8881 installed setuid or setgid (report by Jeremy C. Reed).</li> 8882 8883 <li>patches from Emanuele Giaquinta: 8884 <ul> 8885 <li>ctlseqs.ms says that primary and secondary DA accept a 8886 nonzero parameter, which is incorrect. Also modify code to 8887 agree with this.</li> 8888 8889 <li>correct a comment in 88colres.pl</li> 8890 8891 <li>ctlseqs.ms says that the DEC Set/Reset control 8892 sequences for the backarrow key make it send DEL/BS, 8893 respectively, while it's the opposite.</li> 8894 8895 <li>update the menu entries for the metaSendsEscape, 8896 deleteIsDEL and numLock resources when changing them with 8897 the corresponding DEC Set/Reset control sequences.</li> 8898 </ul> 8899 </li> 8900 8901 <li>fixes for configure script: 8902 <ul> 8903 <li>add special case for QNX, defining _QNX_SOURCE.</li> 8904 8905 <li>check for preprocessors which do not perform -U and -D 8906 options in the given order.</li> 8907 8908 <li>improve macro to determine gcc version</li> 8909 8910 <li>improve check for Intel compiler and related warning 8911 options</li> 8912 </ul> 8913 </li> 8914 8915 <li>update config.guess, config.sub</li> 8916 8917 <li>improve fix from <a href="#xterm_198">patch #198</a> for 8918 <code>Cleanup()</code> by ensuring it is not called from the 8919 SIGCHLD handler (patch by Todd Miller (OpenBSD CVS)).</li> 8920 8921 <li>eliminate a retry for a better-matching bold font, to work 8922 around recent font server changes.</li> 8923 8924 <li>fixes for Novell #113277: 8925 <ul> 8926 <li>specify weight for wide font which may be derived from 8927 normal fontname.</li> 8928 8929 <li>cache the derived wide- and widebolt-fontnames.</li> 8930 </ul> 8931 </li> 8932 8933 <li>workaround for Gentoo Bugzilla #100728.</li> 8934 8935 <li>add menubar's border width to layout computation. Normally 8936 this is zero, but patterns such as 8937 <code>XTerm*borderWidth:1</code> would give poor layout for the 8938 toolbar configuration.</li> 8939 </ul> 8940 8941 <h1><a name="xterm_204" id="xterm_204">Patch #204 - 2005/8/4 - 8942 XFree86 4.5.99.9</a></h1> 8943 8944 <ul> 8945 <li>work around quirk in shell which allowed user to "run" 8946 uxterm script when there was no UTF-8 locale installed by 8947 entering "sh -x uxterm". Also popup an xmessage to show the 8948 problem for users who run this via a GUI (Debian #318513).</li> 8949 8950 <li>disallow changes to fonts, toolbar and scrollbar when the 8951 vt100 window is iconified, to simplify management of the active 8952 icon.</li> 8953 8954 <li>fixes to make <code>-geom</code> option work properly with 8955 the toolbar configuration (Gentoo #90717, Gentoo #91967).</li> 8956 8957 <li>minor improvements to scrollbar layout: ensure that the 8958 scrollbar border is zero if the vt100 border is zero.</li> 8959 8960 <li>improve initialization due to <code>utf8</code> resource by 8961 loading the <code>utf8Fonts</code> resource in the case where 8962 <code>locale</code> resource is false. Also in this case, do 8963 not disable switching UTF-8 mode on/off.</li> 8964 8965 <li>minor optimization of TrueType font-loading, loads italic 8966 font only when needed.</li> 8967 8968 <li>correct variable used to store temporary result from lookup 8969 of bold font, when initializing the wide-bold-font data and no 8970 immediate match is found by asking for a bold variant of the 8971 wide-font. The result was to use overstriking rather than the 8972 actual bold font (Debian #318162, patch by Eugene Konev).</li> 8973 8974 <li>add checks to ensure vt100 widget is realized when it might 8975 be updated via actions handled from a tek4014-only 8976 configuration.</li> 8977 </ul> 8978 8979 <h1><a name="xterm_203" id="xterm_203">Patch #203 - 2005/7/6 - 8980 XFree86 4.5.99.7</a></h1> 8981 8982 <ul> 8983 <li>modify initialization of <code>allowSendEvents</code> and 8984 <code>allowWindowOps</code> to prevent modification with the 8985 editres protocol.</li> 8986 8987 <li>fix compiler warning for NetBSD by including util.h in 8988 main.c (XFree86 Bugzilla #1596).</li> 8989 8990 <li>fix to build on Darwin 8.x, which no longer provides 8991 <code>setpgrp()</code> (patch by Min Sik Kim).</li> 8992 8993 <li>adapted fixes for Legend (SCO) from diffs attached to 8994 Freedesktop.Org Bugzilla #3180.</li> 8995 8996 <li>fix typo in xterm manpage description of <code>-ls</code> 8997 option (Freedesktop.Org Bugzilla #3543).</li> 8998 8999 <li>add support for interpreting the underline attribute as an 9000 italic font in Xft mode (patch by Chuck Blake).</li> 9001 9002 <li>improve initialization of toolbar so that individual 9003 pulldown menus are initialized on demand, as they are in the 9004 scenario where they are invoked as popup menus (Gentoo Bugzilla 9005 #90697).</li> 9006 9007 <li>fix logic in <code>find_utmp</code>, which did not reset 9008 result in <code>getutid()</code>, causing an infinite loop in 9009 some conditions (report by Emil Mikulic).</li> 9010 9011 <li>set the <code>_NET_WM_PID</code> property (Gentoo Bugzilla 9012 #91008).</li> 9013 9014 <li>modify ifdef's in ptyx.h and xterm_io.h to build with 9015 DragonFly (patch by Jeroen Ruigrok).</li> 9016 9017 <li>change default values for <code>minBufSize</code> and 9018 <code>maxBufSize</code> to 4096 and 32768 respectively so that 9019 the initial read request will match the value from before 9020 changes to use <code>sched_yield()</code>.</li> 9021 9022 <li>make paste of UTF-8 faster for Western character sets by 9023 checking range of incoming data (patch by Joe Allen).</li> 9024 9025 <li>add experimental option to allow applications to get or set 9026 the selection data as a BASE64 string (adapted from patch by 9027 Joe Allen).</li> 9028 9029 <li>fix an off-by-one error parsing <code>-S/nn</code> option 9030 (Debian #311438, report/fix by Peter Chubb).</li> 9031 9032 <li>fix an initialization bug from <a href="#xterm_201">patch 9033 #201</a> that broke logging (report by Rodney Thayer).</li> 9034 9035 <li>amend change to command-line processing in <a href= 9036 "#xterm_201">patch #201</a> to avoid conflict with 9037 <code>-e</code> option (report by Servatius Brandt).</li> 9038 9039 <li>suppress configure check for <code>_XOPEN_SOURCE</code> on 9040 darwin.</li> 9041 9042 <li>update config.guess, config.sub</li> 9043 </ul> 9044 9045 <h1><a name="xterm_202" id="xterm_202">Patch #202 - 2005/5/2 - 9046 XFree86 4.5.99.3</a></h1> 9047 9048 <ul> 9049 <li>add extended shift- and control-modifier cursor keys to 9050 "xterm+pcfkeys" terminfo entry to correspond to ncurses 9051 20050430 patch.</li> 9052 9053 <li>fix a rare case where text would be written with the wrong 9054 colors because output of scrolled text would reset the colors 9055 and the new text would be written with the same colors 9056 (report/testcase by Thomas Glanzmann).</li> 9057 9058 <li>rename <code>$CMD</code> variable in <code>plink.sh</code> 9059 because it is a reserved symbol in bash 3.00.16 (report by Ted 9060 Taylor).</li> 9061 9062 <li>add environment variables <code>$XTERM_SHELL</code> and 9063 <code>$XTERM_VERSION</code> (request by Zdenek Sekera).</li> 9064 9065 <li>corrected workaround for background color of menubar, which 9066 gave a too-broad expression, coloring the background of the 9067 VT100 widget unless overridden by another resource 9068 setting.</li> 9069 9070 <li>correct an error in the logic which decides when 9071 <code>sched_yield()</code> is run; it would occasionally hang 9072 when contending with other pseudo-terminal applications such as 9073 screen (report by Kirill Ponomarew).</li> 9074 9075 <li>modify initialization to decide whether to default to 9076 built-in <code>wcwidth()</code> versus system's version based 9077 on the starting locale and whether the system's version is poor 9078 quality (suggested by Bram Moolenaar).</li> 9079 9080 <li>update table for <code>mk_width()</code> from UnicodeData 9081 4.1.0 using Markus Kuhn's <code>uniset</code> script.</li> 9082 </ul> 9083 9084 <h1><a name="xterm_201" id="xterm_201">Patch #201 - 2005/4/21 - 9085 XFree86 4.5.99.2</a></h1> 9086 9087 <ul> 9088 <li>improve resource files to show how the menubar and popup 9089 menus can be colored (prompted by report by Joe Wells).</li> 9090 9091 <li>modify parsing of OSC (and SOS, etc), strings so their 9092 contents are not interpreted as UTF-8. This allows non-ASCII 9093 title strings to be set, provided that the window manager 9094 complies (report by Thomas Wolff).</li> 9095 9096 <li>improved some of the built-in line-drawing glyphs.</li> 9097 9098 <li>correct color of "box" character drawn for line-drawing 9099 glyph 1 (report by Nicolas George).</li> 9100 9101 <li>improve behavior when switching to UTF-8 mode after startup 9102 so xterm will check if the current fonts are already wide 9103 (ISO10646-1). If they are not, xterm will use the 9104 <code>utf8Fonts</code> subresource to load appropriate fonts 9105 (request by Bram Moolenaar).</li> 9106 9107 <li>modify logic for setting title-string so it applies to the 9108 current widget rather than the vt100 widget.</li> 9109 9110 <li>modify initialization for wide-bold fontname, to search for 9111 one if none is given (report by Michael Schroeder).</li> 9112 9113 <li>add resource <code>mkWidth</code> and command-line option 9114 <code>-mk_width</code> to control whether xterm uses the 9115 built-in version of wcwidth().</li> 9116 9117 <li>add resource settings for minimum/maximum input buffer 9118 size, and call to <code>sched_yield</code> to improve 9119 performance with newer Linux kernels (adapted from patch by 9120 Nicolas George).</li> 9121 9122 <li>correct computation of width for wide characters with the 9123 invisible attribute (report by Thomas Wolff).</li> 9124 9125 <li>modify interaction between <code>+u8</code> and 9126 <code>locale</code> resource to allow the command-line option 9127 to override the resource (requested by Thomas Wolff).</li> 9128 9129 <li>add a limit check for scrolling margins in a one-line 9130 screen, overlooked in fixes for <a href="#xterm_198">patch 9131 #198</a> (Debian #297430).</li> 9132 9133 <li>correct treatment of <code>iconBorderWidth</code> for 9134 resizing an active-icon, and its description in manpage (Debian 9135 #296592).</li> 9136 9137 <li>modify configure script <code>--disable-imake</code> to use 9138 the script's definitions anyway if it cannot detect imake 9139 (prompted by FreeBSD bug 77408).</li> 9140 9141 <li>ignore error in the I/O initialization that tries to set 9142 the tty to 7-bit input for the case where 9143 <code>eightBitInput</code> resource is false (Debian 9144 #298551).</li> 9145 9146 <li>modify command-processing to accept an optional parameter 9147 that tells xterm which shell program to use (request by Zdenek 9148 Sekera).</li> 9149 9150 <li>add simpler resource <code>keyboardType</code> which, when 9151 set, overrides the individual keyboard-type resources and 9152 eliminates the possibility of conflict between them.</li> 9153 9154 <li>add initialization for <code>scoFunctionKeys</code> 9155 resource (report by Rick K).</li> 9156 9157 <li>correct logic of <code>ReallocateBufOffsets()</code> which 9158 did not copy the content of the old screen buffer to the proper 9159 location, making a repaint clear after switching to 9160 wide-character mode (report by Bram Moolenaar):</li> 9161 9162 <li>implement the remaining pieces to make xterm allocate cells 9163 for wide-characters when the "UTF-8" menu entry is selected. 9164 Also, load the UTF-8 font when that menu entry is selected, or 9165 the escape sequence for UTF-8 mode is received (report by Bram 9166 Moolenaar):</li> 9167 9168 <li>add command-line options (<code>-tb</code>, 9169 <code>+tb</code>) and resource <code>toolBar</code> to allow 9170 menu/toolbar to disabled or enabled at startup (prompted by 9171 reports by Joe Wells).</li> 9172 9173 <li>correct typo in configure script's --enable-dec-locator 9174 option (report by Bram Moolenaar).</li> 9175 </ul> 9176 9177 <h1><a name="xterm_200" id="xterm_200">Patch #200 - 2005/2/6 - 9178 XFree86 4.4.99.23</a></h1> 9179 9180 <ul> 9181 <li>increase color pairs value for xterm-256color and 9182 xterm-88color to match ncurses, which has an experimental 9183 option to support this.</li> 9184 9185 <li>modify ifdef's to make AIX use termios rather than termio; 9186 the struct sizes for the two were not the same.</li> 9187 9188 <li>improve CF_WITH_IMAKE_CFLAGS configure macro script for 9189 OSMAJORVERSION and OSMINORVERSION values, e.g., for Tru64 and 9190 AIX.</li> 9191 9192 <li>modify ifdef to define USE_POSIX_TERMIOS for Darwin (patch 9193 by Min Sik Kim).</li> 9194 9195 <li>modify find_utmp() to initialize the whole utmpx struct 9196 (except ut_id), since that is needed for OSF1 4.0D to prevent 9197 an infinite loop on exit.</li> 9198 9199 <li>add configure check before adding -D_POSIX_SOURCE since 9200 some platforms predefine it, e.g., cygwin.</li> 9201 9202 <li>add simplified sed expressions in CF_IMAKE_CFLAGS configure 9203 script macro to ensure value for PROJECTROOT is quoted on 9204 Solaris, i.e., when nested <code>\(</code> and <code>\)</code> 9205 are not interpreted correctly.</li> 9206 9207 <li>correct DEC rectangle operations to reset state after 9208 completing the operations.</li> 9209 9210 <li>modify CASE_ST handling in charproc.c to ensure that the 9211 parse state is reset even if xterm is not currently processing 9212 an OSC or other string (patch by Johnny Billquist forwarded by 9213 Matthias Scheler, NetBSD xsrc/29003).</li> 9214 9215 <li>fix OS/2 build for innotek_libc (patch by David Yeo).</li> 9216 9217 <li>fix a regression from <a href="#xterm_197">patch #197</a> 9218 fix for Debian #277832 which disowned the selection if it was 9219 scrolled, e.g., by the user pressing return at the bottom of 9220 the screen (Debian #291787).</li> 9221 9222 <li>move the warning/exit for missing $DISPLAY into the error 9223 handler in case <code>-display</code> is given, and the connect 9224 fails for some other reason.</li> 9225 </ul> 9226 9227 <h1><a name="xterm_199" id="xterm_199">Patch #199 - 2005/1/17 - 9228 XFree86 4.4.99.22</a></h1> 9229 9230 <ul> 9231 <li>instead of setting <code>$DISPLAY</code>, check for the 9232 unset variable and warn/exit on this condition (comments by H 9233 Merijn Brand and Bernhard R Link).</li> 9234 9235 <li>fix a typo in Imakefile from <a href="#xterm_198">patch 9236 #198</a> (reports/patches by Stefan Dirsch, Mike Castle).</li> 9237 </ul> 9238 9239 <h1><a name="xterm_198" id="xterm_198">Patch #198 - 2005/1/13 - 9240 XFree86 4.4.99.21</a></h1> 9241 9242 <ul> 9243 <li>set <code>$DISPLAY</code> to ":0" if it is not set.</li> 9244 9245 <li>add <code>utmpDisplayId</code> resource to allow users to 9246 control whether the display identifier (display number and 9247 screen number) are retained in the connection information 9248 recorded in utmp (discussion with Edoardo Tirtarahardja).</li> 9249 9250 <li>add <code>bellOnReset</code> resource to allow users to 9251 disable bell which sounds on hard reset since <a href= 9252 "#xterm_183">patch #183</a> changes to DECSCL (discussion with 9253 Danek Duvall).</li> 9254 9255 <li>improve <code>$WINDOWID</code> for configuration with 9256 toolbar by making it refer to the top-level shell rather than 9257 the parent of the current window. For that case, the parent is 9258 a form widget, which does not have a name, which made the 9259 <code>$WINDOWID</code> not very useful as a parameter for 9260 <code>xwininfo</code> (suggested by Dave Bodenstab).</li> 9261 9262 <li>fix a typo in WhichVFont() macro from <a href= 9263 "#xterm_197">patch #197</a> changes which broke the 9264 --disable-active-icon configuration (report by Ralf S. 9265 Engelschall).</li> 9266 9267 <li>improve some limit checks (Gentoo Bugzilla #75604).</li> 9268 9269 <li>add --disable-setuid option to configure script (Gentoo 9270 Bugzilla #76543).</li> 9271 9272 <li>add --disable-full-tgetent option to configure script, 9273 allowing one to ignore a termcap library in favor of 9274 ncurses/curses (Gentoo Bugzilla #69926).</li> 9275 9276 <li>modify configure script to choose useful warning options 9277 for Intel version 8.0 compiler.</li> 9278 9279 <li>update config.guess, config.sub</li> 9280 9281 <li>make active-icon work properly when TrueType fonts are used 9282 (Debian #286068).</li> 9283 9284 <li>correct change from <a href="#xterm_157">patch #157</a> 9285 which uses getlogin() to check for an alias; the storage used 9286 for the related getpwuid() call was overwritten by the data 9287 used for comparison (patch by Per Hedeland).</li> 9288 9289 <li>correct case of SCS for character set 0 (line-drawing) to 9290 allow it to be selected into GR.</li> 9291 9292 <li>fix a file-descriptor leak (Redhat Bugzilla #139597).</li> 9293 9294 <li>modify <code>creat_as()</code> to only fork if xterm is 9295 actually running as setuid and/or setgid. This works around a 9296 Cygwin bug which hangs when logging is enabled and makes xterm 9297 a little faster for systems using interfaces such as utempter 9298 (report by Al Goodman).</li> 9299 9300 <li>modify <code>Cleanup()</code> to avoid operations such as X 9301 calls that might use unsafe functions when it is called by a 9302 signal handler (report by Michiel Boland).</li> 9303 9304 <li>fix bugs in <a href="#xterm_191">patch #191</a> and in SRM 9305 changes from <a href="#xterm_197">patch #197</a> that broke 9306 DECSET 38: switch to Tek4014 emulation (report by Dave 9307 Bodenstab).</li> 9308 9309 <li>fix for manpage escapes (Marc La France).</li> 9310 9311 <li>improve on IRIX-specific change for Imakefile in XFree86 9312 CVS versus resize linking against termcap library to reflect 9313 definitions for USE_TERMCAP in resize.c</li> 9314 </ul> 9315 9316 <h1><a name="xterm_197" id="xterm_197">Patch #197 - 2004/11/30 - 9317 XFree86 4.4.99.19</a></h1> 9318 9319 <ul> 9320 <li>modify configure script to remove empty "-DPROJECTROOT=" 9321 definition which resulted unusable values for luit's default 9322 path.</li> 9323 9324 <li>update precompose.c based on Unicode 4.0.1</li> 9325 9326 <li>several minor fixes based on Intel compiler warnings.</li> 9327 9328 <li>change default translations so a <code>BtnDown</code> which 9329 is not recognized is simply ignored rather than emitting a 9330 bell. That makes it less obtrusive when the user tries to use a 9331 mouse which provides more capabilities than the X mouse driver 9332 supports, e.g., one with a horizontal scroll wheel (Debian 9333 #265133).</li> 9334 9335 <li>note in xterm's manpage that <code>translations</code> is 9336 not specific to xterm (Debian #278897).</li> 9337 9338 <li>modify uxterm script to use locale program to verify if the 9339 derived locale is installed (Debian #246398).</li> 9340 9341 <li>correct font handling for active icon when in UTF-8 mode 9342 (report by Paolo Liberatore).</li> 9343 9344 <li>make active-icon and toolbar configurations work 9345 together.</li> 9346 9347 <li>modify the criteria for disowning primary selection. 9348 Previously, this happened anytime the cursor was moved before 9349 the end of the selection. That would ensure that any 9350 insert/delete of char or line, as well as scrolling, would 9351 disown the selection. The new criteria change this to checking 9352 if the operations would modify the data which is highlighted 9353 (Debian #277832).</li> 9354 9355 <li>reimplement <code>DECALN</code> with functions for vt420 9356 rectangles, fixes selection for this case.</li> 9357 9358 <li>implement vt420 rectangle operations.</li> 9359 9360 <li>add parsing, for debug/test of vt220 soft-fonts.</li> 9361 9362 <li>add menu entry, actions and escape sequence to allow 9363 enabling/disabling toolbars at runtime.</li> 9364 9365 <li>improve rendering for Xft, allow it to draw non-linedrawing 9366 characters such as "pi", which were drawn from internal tables 9367 with <a href="#xterm_180">patch #180</a> (Freedesktop.org 9368 Bugzilla #1260).</li> 9369 9370 <li>add configure option <code>--enable-mini-luit</code>, 9371 ifdef'd the mini-luit feature with 9372 <code>OPT_MINI_LUIT</code>.</li> 9373 9374 <li>add mini-luit feature, which supports Latin9 directly 9375 rather than via luit, provided that Unicode fonts are used 9376 (Freedesktop.org Bugzilla #1571, request by Stefan Dirsch, 9377 patch by Michael Schroeder).</li> 9378 9379 <li>for Linux, if IUTF8 is defined, e.g., on recent 2.6.x 9380 kernels, set the corresponding flag for the slave pty, to 9381 enable UTF-8 interpretation of backspace in cooked mode 9382 (Freedesktop.org Bugzilla #1578, request by Stefan 9383 Dirsch).</li> 9384 9385 <li>modify <code>faceSize</code> resource to use a 9386 floating-point internal value (adapted from patch by Sam 9387 Stephenson).</li> 9388 9389 <li>correct handling selection of tabs over cleared space in 9390 UTF-8 mode. In this special case, xterm represents the 9391 whitespace with a null rather than a space character (Debian 9392 #276447).</li> 9393 9394 <li>amend fix for infinite loop from <a href="#xterm_192">patch 9395 #192</a> to check if there is wrapped text to output in a 9396 following iteration (Debian #273202).</li> 9397 9398 <li>fixes ifdef'd with <code>__INTERIX</code> to allow building 9399 with Interix (Windows Services for UNIX) 3.5 using the xlibs 9400 libraries from freedesktop.org (patch by Min Sik Kim).</li> 9401 9402 <li>amend solution for Debian #252873, Debian #260471 from 9403 <a href="#xterm_194">patch #194</a> by making the cursor not 9404 explicitly colored if only the foreground color is set, and the 9405 cursor is on a blank space (Debian #275473).</li> 9406 9407 <li>correct logic for send/receive mode (SRM) with regard to 9408 control characters.</li> 9409 9410 <li>fix masking of invisible text in wide-character mode, which 9411 did not work for line-drawing characters.</li> 9412 9413 <li>incorporate CF_XOPEN_SOURCE into configure script, 9414 replacing CF_GNU_SOURCE.</li> 9415 </ul> 9416 9417 <h1><a name="xterm_196" id="xterm_196">Patch #196 - 2004/8/15 - 9418 XFree86 4.4.99.12</a></h1> 9419 9420 <ul> 9421 <li>add a special case to configure script to ignore NetBSD's 9422 <code>grantpt()</code> which was recently added (but not part 9423 of a release), until someone is able to ensure that xterm can 9424 use it (report by Min Sik Kim).</li> 9425 9426 <li>clear the buffer returned by getutid(). This fixes an 9427 infinite loop on some platforms introduced in <a href= 9428 "#xterm_193">patch #193</a> by Debian #256468 fix (report by 9429 David Ellement).</li> 9430 </ul> 9431 9432 <h1><a name="xterm_195" id="xterm_195">Patch #195 - 2004/8/8 - 9433 XFree86 4.4.99.11</a></h1> 9434 9435 <ul> 9436 <li>correct length used for blinking text, make the last column 9437 blink (patch by Alexander V Lukyanov).</li> 9438 9439 <li>start changes to make doublesize characters work with 9440 TrueType fonts (see <a href="#xterm_44">patch #44</a>).</li> 9441 9442 <li>trim leading/trailing blanks from color resources as done 9443 for other strings in <a href="#xterm_167">patch #167</a>.</li> 9444 9445 <li>fixes for <code>showBlinkAsBold</code> resource (report by 9446 Christoph Berg).</li> 9447 </ul> 9448 9449 <h1><a name="xterm_194" id="xterm_194">Patch #194 - 2004/7/27 - 9450 XFree86 4.4.99.11</a></h1> 9451 9452 <ul> 9453 <li>change clearing operations so foreground color attribute is 9454 not set. Usually this is benign, but in some cases when the 9455 cursor color is not set explicitly, the cursor would show this 9456 color (Debian #252873, Debian #260471).</li> 9457 9458 <li>add extra state (cursor-moved) to guard against deciding 9459 that the cursor did not require repainting after an indexing 9460 operation that leaves the cursor in the same location on the 9461 screen.</li> 9462 9463 <li>fix a case where a full-screen indexing operation would not 9464 restore the cursor-busy state.</li> 9465 9466 <li>fix a repainting bug introduced in <a href= 9467 "#xterm_180">patch #180</a>: when using a font lacking 9468 line-drawing characters, a repaint of the screen could skip 9469 horizontally an extra amount after filling in the missing 9470 character (reports by Nicolas George, Hans de Goede, Redhat 9471 Bugzilla #128341).</li> 9472 9473 <li>rename terminfo fragment "xterm-pc-fkeys" to 9474 "xterm+pcfkeys" for consistency with ncurses.</li> 9475 </ul> 9476 9477 <h1><a name="xterm_193" id="xterm_193">Patch #193 - 2004/7/19 - 9478 XFree86 4.4.99.10</a></h1> 9479 9480 <ul> 9481 <li>fix for wide-character selection from OpenBSD CVS 9482 (report/patch by Matthieu Herrb).</li> 9483 9484 <li>modify initialization and cleanup of utmp data to also 9485 compare the <code>ut_line</code> member (Debian #256468).</li> 9486 9487 <li>modify check on focus-change to ignore 9488 <code>FocusOut</code> events generated by 9489 <code>XGrabKeyboard</code>. This fixes a case where the text 9490 cursor would act as if focus were lost when selecting the 9491 "Secure Keyboard" menu option.</li> 9492 9493 <li>add <code>gen-pc-fkeys.pl</code> script, use that to 9494 generate terminfo fragment corresponding to the pc-style 9495 function keys.</li> 9496 9497 <li>fix a case where the checkmark by the "VT220 Keyboard" menu 9498 entry was not set on startup.</li> 9499 9500 <li>separated two methods for making the cursor blink (menu and 9501 escape sequence) by using the menu as the primary method and 9502 XOR'ing the state of the escape sequence against that.</li> 9503 9504 <li>modify logic for enabling blinking cursor via escape 9505 sequence as well as the related save/restore operations so this 9506 is only available if the <code>cursorBlink</code> resource was 9507 set on startup.</li> 9508 </ul> 9509 9510 <h1><a name="xterm_192" id="xterm_192">Patch #192 - 2004/7/12 - 9511 XFree86 4.4.99.9</a></h1> 9512 9513 <ul> 9514 <li>change resource settings for color4 and color12, add some 9515 discussion in <code>XTerm-col.ad</code> (Debian #241717).</li> 9516 9517 <li>add a note in xterm manpage discussing the difference 9518 between alt- and meta-keys, and the way the latter is used in 9519 the <code>eightBitInput</code> resource.</li> 9520 9521 <li>add a note in xterm manpage regarding possible conflict 9522 between resource settings for <code>xterm.vt100.font</code> and 9523 <code>xterm.vt100.utf8Fonts.font</code> (Debian #254650).</li> 9524 9525 <li>add compile-time customization of 9526 <code>backarrowKeyIsErase</code> and 9527 <code>ptyInitialErase</code> default resource values (adapted 9528 from OpenBSD CVS).</li> 9529 9530 <li>change parameter of <code>FIONREAD</code> 9531 <code>ioctl()</code> call from long to int (discussion on 9532 tech-x11@netbsd.org regarding LP64 by John Heasley and Matthias 9533 Scheler).</li> 9534 9535 <li>modify configure script options for Athena widgets to work 9536 as expected for "--without-Xaw3d", etc., (Gentoo Bugzilla 9537 #53455).</li> 9538 9539 <li>add case to uxterm to accommodate locales ending with 9540 "@euro", e.g., fr_FR.UTF-8@euro (Debian #255197, 9541 report/analysis by Matthieu Lagouge).</li> 9542 9543 <li>add special case for VT100 graphic's "box" character 9544 (discussion with Ben Armstrong).</li> 9545 9546 <li>add missing initialization for bitmap-font sizes needed to 9547 make fonts menu work with TrueType fonts (report by Ben 9548 Armstrong).</li> 9549 9550 <li>save the fontnames for bold fonts that are derived from 9551 normal fonts, or from the <code>boldFont</code> resource, so 9552 the same value is restored when switching with the VT Fonts 9553 menu (Debian #256086).</li> 9554 9555 <li>fix manpage preprocessing (Marc La France).</li> 9556 9557 <li>fix typo in manpage's description of character classes 9558 (Debian #257073).</li> 9559 9560 <li>modify terminfo to accommodate luit, which relies on G1 9561 being used via an ISO-2022 escape sequence (Debian #254316, 9562 analysis by Juliusz Chroboczek).</li> 9563 9564 <li>modify Makefile.in rule for ctlseqs.txt to work around 9565 groff SGR misfeature.</li> 9566 9567 <li>modify <code>XTerm.ad</code> to set <code>saveLines</code> 9568 default to 1024 (Redhat Bugzilla #127132).</li> 9569 9570 <li>add a limit-check in <code>dotext()</code> to prevent 9571 infinite loop in a corner case of UTF-8 configuration.</li> 9572 9573 <li>update config.guess, config.sub</li> 9574 </ul> 9575 9576 <h1><a name="xterm_191" id="xterm_191">Patch #191 - 2004/6/6 - 9577 XFree86 4.4.99.7</a></h1> 9578 9579 <ul> 9580 <li>correct options parsing for <code>-into</code> option so it 9581 can be combined with <code>-e</code> (Redhat Bugzilla #124518, 9582 report/patch by James Armstrong).</li> 9583 9584 <li>fix ifdef's for <code>OPT_COLOR_RES2</code> so that the 9585 fake resource table introduced in <a href="#xterm_188">patch 9586 #188</a> is not compiled if it is empty. This happened to work 9587 with gcc (report by Joel Konkle-Parker).</li> 9588 9589 <li>reorganize ptydata.c to use one input buffer shared between 9590 the VTxxx and tek4014 emulators. In the new scheme, UTF-8 9591 decoding is performed on characters as they are needed by the 9592 state machine rather than on buffers as they are read.</li> 9593 9594 <li>work around change in quoting of PROJECTROOT symbol when 9595 using configure script, from changes made in <a href= 9596 "#xterm_187">patch #187</a> for CF_IMAKE_CFLAGS (Gentoo 9597 Bugzilla #50982).</li> 9598 </ul> 9599 9600 <h1><a name="xterm_190" id="xterm_190">Patch #190 - 2004/5/25 - 9601 XFree86 4.4.99.6</a></h1> 9602 9603 <ul> 9604 <li>correct state for values in the range 128-159 after 9605 translating from UTF-8: this should be ignored unless the user 9606 overrides it with the <code>allowC1Printable</code> resource 9607 (reported by Simon Strandgaard).</li> 9608 9609 <li>add configure-script check for nl_langinfo(CODESET), use 9610 this to replace check of environment variables for UTF-8.</li> 9611 9612 <li>change Makefile.in rules for 256colres.h and 88colres.h so 9613 they are only made if they do not exist. The maintainer-clean 9614 rule will remove these files; they require perl to be 9615 made.</li> 9616 9617 <li>remove check in configure script --enable-toolbar that 9618 suppressed this option when building with Xaw7.</li> 9619 9620 <li>apply fixes to Tektronix widget used for VT100 widget to 9621 make toolbar work with Xaw7 (XFree86 4.x).</li> 9622 </ul> 9623 9624 <h1><a name="xterm_189" id="xterm_189">Patch #189 - 2004/5/16 - 9625 XFree86 4.4.99.6</a></h1> 9626 9627 <ul> 9628 <li>do not call xim_real_init() if <code>openIm</code> resource 9629 is false (Debian #249025).</li> 9630 9631 <li>minor improvements to built-in line-drawing.</li> 9632 9633 <li>fix a few portability issues with dynamic abbreviation 9634 support, i.e., did not compile on Tru64.</li> 9635 9636 <li>modify constraints in form used to layout toolbar, to work 9637 with newer Xaw in XFree86 4.x.</li> 9638 </ul> 9639 9640 <h1><a name="xterm_188" id="xterm_188">Patch #188 - 2004/5/12 - 9641 XFree86 4.4.99.6</a></h1> 9642 9643 <ul> 9644 <li>correct table entry for DEL in the ground state, which 9645 marked it as a printable character from <a href= 9646 "#xterm_171">patch #171</a> (report by D Hugh Redelmeier).</li> 9647 9648 <li>improve fix in <a href="#xterm_186">patch #186</a> for 9649 failure in xim_real_init() by adding a sleep.</li> 9650 9651 <li>fix a typo in os2main.c (XFree86 Bugzilla #1358, 9652 report/patch by Frank Giessler).</li> 9653 9654 <li>make escape sequence reporting dynamic colors consistent 9655 with the logic that sets it; choosing the opposite color when 9656 reverse video is set (XFree86 Bugzilla #1361, reported by Bradd 9657 W Szonye).</li> 9658 9659 <li>modify initialization of 256- and 88-colors so that colors 9660 beyond 16 are normally not X resources. This works around a 9661 hard-coded limit in Xt which breaks xterm when 256-colors and 9662 luit are both configured (report by Noah Friedman).</li> 9663 9664 <li>remove <code>ncv</code> from <code>xterm-256color</code> 9665 terminfo entry since it is no longer needed (report by Eli 9666 Zaretskii).</li> 9667 9668 <li>add "erase2" and "eol2" keywords to <code>ttyModes</code> 9669 resource, for recent/current FreeBSD.</li> 9670 9671 <li>improve ifdef's for utempter library to omit direct calls 9672 to <code>setutent()</code> or <code>getutent()</code> (adapted 9673 from patch by Christian Biere).</li> 9674 9675 <li>add dynamic abbreviation support like Emacs (patch by 9676 Tomasz Cholewo). This is ifdef'd with <code>OPT_DABBREV</code>, 9677 and enabled via the configure script 9678 <code>--enable-dabbrev</code> option.</li> 9679 9680 <li>fix problem responding to session management events, e.g., 9681 which would make logging out very slow (patch by Eddy De Greef, 9682 Debian #233883).</li> 9683 9684 <li>work around a newer bug in toolbar with XFree86 by forcing 9685 menus to be fully initialized at startup. In older versions of 9686 XFree86 and X11R6, it was possible to delay initialization of 9687 the menu contents until it was popped up. (The longstanding bug 9688 with XFree86 4.x layout for toolbar still exists, though).</li> 9689 9690 <li>modify <code>xtermAddInput</code> to work around core dump 9691 on IRIX64 when initializing scrollbar translations if toolbar 9692 is compiled-in.</li> 9693 9694 <li>fix some minor conflicts in the 2-character entry names in 9695 the termcap file.</li> 9696 </ul> 9697 9698 <h1><a name="xterm_187" id="xterm_187">Patch #187 - 2004/4/27 - 9699 XFree86 4.4.99.4</a></h1> 9700 9701 <ul> 9702 <li>change xterm version string to use 9703 <code>__vendorversion__</code> where that is available, and 9704 "XTerm" otherwise.</li> 9705 9706 <li>improve description of <code>utf8</code> resource in 9707 manpage (Debian #179407).</li> 9708 9709 <li>modify configure macros CF_IMAKE_CFLAGS and CF_ADD_CFLAGS 9710 to handle <code>-D</code> options that define string values, 9711 e.g., for <code>XVENDORNAME</code>.</li> 9712 9713 <li>modify configure macro CF_IMAKE_CFLAGS to allow (if 9714 <code>$PATH</code> is set accordingly) to use the 9715 <code>xmkmf</code> script within an X build tree.</li> 9716 9717 <li>add missing <code>#undef OPT_SESSION_MGT</code> to 9718 xtermcfg.hin to make the configure script's 9719 --disable-session-mgt option work.</li> 9720 9721 <li>update config.guess, config.sub</li> 9722 </ul> 9723 9724 <h1><a name="xterm_186" id="xterm_186">Patch #186 - 2004/4/18 - 9725 XFree86 4.4.99.4</a></h1> 9726 9727 <ul> 9728 <li>change reset on <code>DECSCL</code> to a soft-reset 9729 (appears some DEC manuals have errors).</li> 9730 9731 <li>add a section to ctlseqs.ms elaborating on normal/alternate 9732 screens.</li> 9733 9734 <li>modify initialization of Acolors[] so that any 9735 XtDefaultForeground or XtDefaultBackground values are 9736 translated as in the Tcolors[], to use the window's 9737 foreground/background colors. This affects the 9738 <code>colorBD</code> and similar resources which normally have 9739 no explicit color assigned.</li> 9740 9741 <li>modify initialization of Tektronix window so that control 9742 sequences setting its color before the window is popped up will 9743 apply to its initial colors.</li> 9744 9745 <li>add control sequence to set Tektronix window's 9746 text-cursor.</li> 9747 9748 <li>modify initialization of terminal colors, e.g., mouse 9749 pointer and text cursor, to treat 9750 <code>XtDefaultForeground</code> and 9751 <code>XtDefaultBackground</code> values as the actual 9752 foreground and background colors of the terminal rather than 9753 white and black (Debian #241717).</li> 9754 9755 <li>remove an incorrect comparison against 9756 <code>PTYCHARLEN</code> in parsing the <code>-S</code> option 9757 (report by Michael B Taylor).</li> 9758 9759 <li>minor restructuring of terminfo/termcap files, having noted 9760 some packager's customizations which caused the structure to be 9761 confused.</li> 9762 9763 <li>eliminate an isolated use of MIN/MAX in charproc.c</li> 9764 9765 <li>replace <code>XtExtdefaultfont</code> and 9766 <code>XtExtdefaultbackground</code> by their more familiar 9767 equivalents <code>XtDefaultFont</code> and 9768 <code>XtDefaultBackground</code>.</li> 9769 9770 <li>replace ifdef's using <code>SCO</code>, <code>sco</code> 9771 and <code>SCO325</code> with <code>__SCO__</code> (XFree86 9772 Bugzilla #1301, Kean Johnston). But ensure that it still builds 9773 on platforms where this symbol is not defined.</li> 9774 9775 <li>add <code>scoFunctionKeys</code> resource, to match 9776 manpage.</li> 9777 9778 <li>update manpage discussion of menus and related 9779 resources.</li> 9780 9781 <li>enable utmpx support for NetBSD 1.6C and newer (patch by 9782 Matthias Scheler).</li> 9783 9784 <li>add a note in the manpage discussing xterm's treatment of 9785 open file-descriptors (request by Dan Shearer).</li> 9786 9787 <li>modify <code>Help()</code> to make "xterm -h" write to 9788 standard output rather than standard error (patch by Bram 9789 Moolenaar).</li> 9790 9791 <li>check for type of failure in xim_real_init() to avoid 9792 looping when the problem is an unsupported input method rather 9793 than a failure to connect to the XIM server. Problem was 9794 introduced in <a href="#xterm_175">patch #175</a> (XFree86 9795 Bugzilla #1306).</li> 9796 9797 <li>modify <code>Imakefile</code> to remove dependency of 9798 "install" target on the <code>xterm</code> executable to make 9799 installs from tree without attempting to rebuild anything 9800 (commit by David Dawes, report/patch from Lee Olsen).</li> 9801 9802 <li>remove call to <code>ShowCursor</code> from 9803 <code>SetCursorBlink()</code> since that is redundant, and can 9804 cause display glitches if the cursor is already blinking 9805 (XFree86 Bugzilla #1158, patch/report by Andreas Schwab).</li> 9806 </ul> 9807 9808 <h1><a name="xterm_185" id="xterm_185">Patch #185 - 2004/3/3 - 9809 XFree86 4.4</a></h1> 9810 9811 <ul> 9812 <li>fix tcap-query logic for the backspace key (XFree86 9813 Bugzilla #1233, report/patch by Anton Kovalenko).</li> 9814 9815 <li>add test-scripts resize.pl and tcapquery.pl</li> 9816 9817 <li>add translation to ASCII of commonly-used characters that 9818 groff translates to Unicode, when the font in use does not 9819 provide the corresponding glyphs (Debian #219551).</li> 9820 9821 <li>modify RequestMaximize(), which performs maximize/restore 9822 via control sequences, to account for window-frame (patch by 9823 Jess Thrysoee).</li> 9824 9825 <li>improve pattern used in <code>uxterm</code> to check for 9826 UTF-8 locale, e.g., for HPUX (patch by H Merijn Brand).</li> 9827 9828 <li>add <code>-fd</code> option and resource 9829 <code>faceNameDoublesize</code> to specify double-wide fonts 9830 with Xft (adapted from patch by Zarick Lau).</li> 9831 9832 <li>change a couple of resource classes from "Boolean" to 9833 specific values: <code>freeBoldBox</code>, 9834 <code>forceBoxChars</code>.</li> 9835 9836 <li>add resource <code>showMissingGlyphs</code> to outline 9837 places on the screen where a font lacks the corresponding 9838 glyph.</li> 9839 9840 <li>add resource <code>showBlinkAsBold</code> to control 9841 whether blinking text should be shown as bold or actual 9842 blinking text.</li> 9843 9844 <li>improve logic in ShowCursor() to avoid repainting the 9845 cursor when it is already visible, e.g., in response to the 9846 DECTCEM escape sequence. This also addresses XFree86 Bugzilla 9847 #1158.</li> 9848 9849 <li>implement blinking text, using the timer for blinking 9850 cursor.</li> 9851 9852 <li>modify FreeType support to allow resizing the font, in the 9853 same ways the window can be resized if fixed fonts are used. 9854 The relative font sizes are derived from the fixed font 9855 sizes.</li> 9856 9857 <li>add menu items and corresponding actions for switching 9858 on/off the UTF-8 mode and Xft (TrueType) support.</li> 9859 9860 <li>add logic to handle switching UTF-8 mode on/off. It worked 9861 if the escape sequences were flushed, but if data was mixed in 9862 with the same write, some were not handled properly (report by 9863 Nicolas George).</li> 9864 9865 <li>modify to allow turning UTF-8 mode on/off via escape 9866 sequence even if <code>-wc</code> option was not given at 9867 startup (patch by Peter Berg Larsen).</li> 9868 9869 <li>amend fix for XFree86 Bugzilla #981, adjusting for 9870 savedlines value (report by Tim Adye).</li> 9871 9872 <li>fix a typo in computing relative font size (Jess 9873 Thrysoee).</li> 9874 </ul> 9875 9876 <h1><a name="xterm_184" id="xterm_184">Patch #184 - 2003/12/31 - 9877 XFree86 4.3.99.903</a></h1> 9878 9879 <ul> 9880 <li>improve configure-script checks for FreeType and related 9881 libraries, using <code>xft-config</code> or 9882 <code>freetype-config</code> scripts when available.</li> 9883 9884 <li>fix configure-script check for <code>SYSV</code> definition 9885 by ensuring whether <code>sys_errlist[]</code> is declared, and 9886 by modifying the test program to include 9887 <code>X11/Intrinsic.h</code> to check that <code>wchar_t</code> 9888 is declared consistently (report by H Merijn Brand).</li> 9889 </ul> 9890 9891 <h1><a name="xterm_183" id="xterm_183">Patch #183 - 2003/12/26 - 9892 XFree86 4.3.99.903</a></h1> 9893 9894 <ul> 9895 <li>correct logic for configurations that may attempt to open 9896 both old/new-style pseudoterminals. In this case, the old-style 9897 are preferred. Logic was broken in <a href="#xterm_145">patch 9898 #145</a> (XFree86 Bugzilla #997, report/patch by Kean 9899 Johnston).</li> 9900 9901 <li>modify handling of <code>eightBitInput</code> resource in 9902 UTF-8 mode to translate the value into UTF-8. Otherwise an 9903 illegal UTF-8 code is sent to the application (report by Bram 9904 Moolenaar).</li> 9905 9906 <li>modify <code>uxterm</code> script to interpret help and 9907 version options so xterm does not always create a window when 9908 the user requests this information (Debian #223926).</li> 9909 9910 <li>add a limit check to ScrnTstWrapped() (XFree86 Bugzilla 9911 #981).</li> 9912 9913 <li>modify DECSCL to perform a hard reset (RIS) as per DEC 9914 manuals. Extended DECSCL to accept parameters for vt4XX and 9915 vt5xx terminals.</li> 9916 9917 <li>correct logic for ANSI conformance level escape sequences, 9918 which were confused with DEC conformance level escape 9919 sequences.</li> 9920 9921 <li>correct state for vt52 shift-in/shift-out, which was not 9922 reset properly after <a href="#xterm_171">patch #171</a>.</li> 9923 9924 <li>correct handling of graphics characters for vt52 mode, 9925 which did not display line-drawing characters after G1 fix from 9926 <a href="#xterm_182">patch #182</a>.</li> 9927 9928 <li>fixes for configure script to work with current Cygwin 9929 headers and libraries.</li> 9930 9931 <li>modify <code>Imakefile</code> to put the current directory 9932 at the beginning of the include searchpath (patch by David 9933 Dawes).</li> 9934 </ul> 9935 9936 <h1><a name="xterm_182" id="xterm_182">Patch #182 - 2003/12/2 - 9937 XFree86 4.3.99.901</a></h1> 9938 9939 <ul> 9940 <li>correct logic for <code>metaSendsEscape</code> resource to 9941 allow for the meta-right key to be tested. Improve check for 9942 meta/alt modifiers by dropping the assumption that a keysym is 9943 associated with only one modifier, and by ignoring NoSymbol 9944 entries in the xmodmap data (XFree86 Bugzilla #924, patch by 9945 David Dawes).</li> 9946 9947 <li>correct wrapping logic for line-drawing characters written 9948 in non-UTF-8 mode of xterm build for wide-characters (XFree86 9949 Bugzilla #918, report/patch by Jürgen Keil).</li> 9950 9951 <li>improve manpage description of resources, in particular the 9952 <code>utf8Fonts</code> class (XFree86 Bugzilla #905).</li> 9953 9954 <li>add definitions to compile with glibc-based GNU/Hurd, 9955 GNU/KFreeBSD and GNU/KNetBSD (XFree86 Bugzilla #893).</li> 9956 9957 <li>compiler-warning fixes (patch by Christian Biere).</li> 9958 9959 <li>add README.i18n (Tomohiro Kubota).</li> 9960 9961 <li>correct initialization of G1 character set mapping, which 9962 used line-drawing set as a result of confusion between "DEC 9963 Supplemental Graphic" and "DEC Special Graphic" character sets 9964 (see <a href="#xterm_34">patch #34</a> regarding DECSTR).</li> 9965 9966 <li>correct ifdef in main.c for variable utret (patch by 9967 Bernhard Rosenkraenzer).</li> 9968 9969 <li>document in xterm's manpage how to use XFree86 ":unscaled" 9970 keyword to suppress scaling of bold fonts.</li> 9971 9972 <li>when deriving bold fontname from normal fontname, use the 9973 normal font's average width to avoid for example selecting 9974 7x13bold from an 8x13 normal font (Debian #107769).</li> 9975 </ul> 9976 9977 <h1><a name="xterm_181" id="xterm_181">Patch #181 - 2003/10/26 - 9978 XFree86 4.3.99.15</a></h1> 9979 9980 <ul> 9981 <li>implement <code>boldMode</code> for wide-character logic in 9982 <code>drawXtermText()</code> (report by Michael 9983 Schroeder).</li> 9984 9985 <li>modify <code>UXTerm.ad</code> resource file to include 9986 "XTerm-color" rather than "XTerm", in case the latter file 9987 contains no color resource definitions, e.g., after <a href= 9988 "#xterm_180">patch #180</a>.</li> 9989 9990 <li>add action <code>load-vt-fonts()</code> and configure 9991 option <code>--enable-load-vt-fonts</code> which allows users 9992 to define additional sets of VT-fonts which can be loaded at 9993 runtime.</li> 9994 9995 <li>add logic to wide-character support which attempts to load 9996 fonts specified by <code>utf8Fonts</code> subresources at 9997 startup. The subresources have the same names as the fonts 9998 which they replace, e.g., <code>font</code>, 9999 <code>font1</code>, etc., so that the ISO-10646-1 fonts can be 10000 specified in the <code>XTerm</code> app-defaults file (adapted 10001 from patch by Tomohiro Kubota).</li> 10002 10003 <li>improve Set Font escape string handling by making the 10004 relative settings apply to the size of the font, as in shift 10005 keypad plus/minus rather than the menu index.</li> 10006 10007 <li>simplify parameter passing for the <code>set-vt-font</code> 10008 action and related code.</li> 10009 10010 <li>cleanup some include-ordering, moving some recently-added 10011 hardcoded stuff into xterm.h where it will not interfere with 10012 the configure script.</li> 10013 10014 <li>modify <code>xtermAddInput()</code> (see note on 10015 augmentation in <a href="#xterm_158">patch #158</a>) to use the 10016 complete set of default keyboard translations so that one can 10017 use shifted pageup, wheel mouse, etc., while the mouse pointer 10018 is over the scrollbar. (Debian #178812).</li> 10019 10020 <li>make save/restore mode controls apply to show/blink cursor 10021 states.</li> 10022 10023 <li>add escape sequence to start/stop blinking cursor, which 10024 allows implementing <code>cvvis</code> terminfo capability 10025 (request by Nate Bargmann).</li> 10026 10027 <li>add <code>indp</code> and <code>rin</code> to terminfo 10028 entry.</li> 10029 10030 <li>fix an out-of-bounds array reference in ScrnRefresh() for 10031 wide characters (report by Dan Harnett, patch by Todd Miller). 10032 This bug dates from <a href="#xterm_141">patch #141</a>.</li> 10033 </ul> 10034 10035 <h1><a name="xterm_180" id="xterm_180">Patch #180 - 2003/10/12 - 10036 XFree86 4.3.99.15</a></h1> 10037 10038 <ul> 10039 <li>several fixes for rendering using Xft via option 10040 <code>-fa</code>: 10041 <ul> 10042 <li>translate Unicode values, i.e,. from UTF-8 output to 10043 xterm, for line-drawing to xterm's internal code, etc., 10044 since TrueType fonts generally do not have either set of 10045 line-drawing glyphs. xterm can draw these directly (report 10046 by Abigail Brady).</li> 10047 10048 <li>pass 16-bit values rather than 8-bit values to 10049 xtermXftDrawString() to allow for wide-characters.</li> 10050 10051 <li>remove spurious check for <code>colorBDMode</code> 10052 resource in logic that does bold fonts.</li> 10053 10054 <li>implement underlining.</li> 10055 </ul> 10056 </li> 10057 10058 <li>patches by Ilya Zakharevich: 10059 <ul> 10060 <li>improve drawXtermText() by making the recursive calls 10061 communicate through arguments, and not through 10062 saving/restoring global variables.</li> 10063 10064 <li>make double-width characters work with <code>-u8</code> 10065 option.</li> 10066 10067 <li>modify lookup of double-sized fonts by checking for a 10068 match ignoring x/y resolution if the first check 10069 fails.</li> 10070 </ul> 10071 </li> 10072 10073 <li>make height of TrueType fonts match ascent+descent (patch 10074 by Keith Packard).</li> 10075 10076 <li>correct configure-script check for imake $CFLAGS, which did 10077 not check properly if imake was not available.</li> 10078 10079 <li>correct install rule in Makefile.in for 10080 <code>uxterm</code>, which was attempting to strip the script 10081 (newsgroup posting by Fernan Aguero).</li> 10082 10083 <li>correct AF/AB strings in termcap for xterm-256color and 10084 xterm-88color entries (report by Josh Howard).</li> 10085 10086 <li>update wcwidth.c to incorporate changes from Markus Kuhn's 10087 2003-05-20 (Unicode 4.0) version of that file.</li> 10088 10089 <li>modify <code>scroll-back</code> and 10090 <code>scroll-forw</code> actions to accept an adjustment value, 10091 e.g., 10092 10093 <pre> 10094 <code>scroll-back(1, page-2)</code> 10095</pre>to scroll back by 2 lines less than a page (patch by Greg 10096Klanderman). 10097 </li> 10098 10099 <li>use color resource setting from Debian package for xterm 10100 VT100 widget, since the choice of blues provides better 10101 contrast.</li> 10102 10103 <li>remove color resources from <code>XTerm.ad</code>, leaving 10104 them only in <code>XTerm-col.ad</code> (prompted by Debian 10105 package for xterm).</li> 10106 10107 <li>correct configure script option --enable-pty-handshake 10108 (report by Paul Gilmartin).</li> 10109 10110 <li>add <code>visualBellDelay</code> resource to modify the 10111 length of time used for visual bell, for very slow displays or 10112 very fast computers (reports by Ingo van Lil and Doug 10113 Toppin).</li> 10114 10115 <li>correct logic for initializing dynamic highlight color 10116 (patch by Jess Thrysoee).</li> 10117 10118 <li>add a check for non-zero size in call to 10119 <code>XCopyArea()</code> to accommodate a Solaris bug.</li> 10120 10121 <li>correct typo in example for character classes in xterm 10122 manpage (Debian #198910).</li> 10123 10124 <li>link xterm with bind_on_load option on Darwin to work 10125 around a deadlock in the dynamic loader when a signal is 10126 received while the dynamic loader is looking up symbols 10127 (patches by Rob Braun, Torrey Lyons).</li> 10128 10129 <li>modify configure script to avoid using "head -1".</li> 10130 10131 <li>update config.guess, config.sub</li> 10132 10133 <li>modify ifdef's to work around inclusion of types FcChar32 10134 and XftCharSpec with FreeType 2.0 (see <a href= 10135 "#xterm_175">patch #175</a>).</li> 10136 10137 <li>modify the predictable version of the generated logfile 10138 name (see <a href="#xterm_171">patch #171</a>) to append the 10139 process-id rather than a random value.</li> 10140 10141 <li>resync with XFree86 CVS 10142 <ul> 10143 <li>Enable SCO function keys in xterm</li> 10144 10145 <li>Make Delete key send DEL by default on SCO in 10146 xterm</li> 10147 </ul> 10148 </li> 10149 </ul> 10150 10151 <h1><a name="xterm_179" id="xterm_179">Patch #179 - 2003/5/21 - 10152 XFree86 4.3.99.5</a></h1> 10153 10154 <ul> 10155 <li>modify ifdef's for WTMPX_FILE to allow building on cygwin 10156 again.</li> 10157 10158 <li>change the default of pty-handshaking configure option (and 10159 related default for imake) to assume this feature is 10160 needed.</li> 10161 10162 <li>add ifdef's so configure option for XawPlus library works 10163 (patch by Pavel Roskin).</li> 10164 10165 <li>add <code>$(MAIN_DEFINES)</code> to the variables checked 10166 by the configure script that may contain information set by 10167 imake. This allows xterm to build/run properly using the 10168 configure script on IRIX64.</li> 10169 10170 <li>add configure check for ".exe" suffix on cygwin.</li> 10171 </ul> 10172 10173 <h1><a name="xterm_178" id="xterm_178">Patch #178 - 2003/5/18 - 10174 XFree86 4.3.99.5</a></h1> 10175 10176 <ul> 10177 <li>modify default for configure 10178 <code>--enable-pty-handshake</code> option to enable it for 10179 Solaris (report by Nelson Beebe).</li> 10180 10181 <li>modify <code>in_put()</code> function to call 10182 <code>PreeditPosition()</code> only when the cursor's position 10183 has changed. This addresses report by Stefan Baums of high CPU 10184 usage while xterm with chinput are running in the background 10185 (patch by Yong Li).</li> 10186 10187 <li>improved explanation of <code>-ls</code> conflict with 10188 <code>-e</code> option in xterm manpage (adapted from comments 10189 by Henning Makholm).</li> 10190 10191 <li>correct comment in terminfo file regarding modifier used 10192 for <code>kDC</code> (Debian #189764, report by Henning 10193 Makholm).</li> 10194 10195 <li>correct/extend some of the keypad description in ctlseqs.ms 10196 (report by Henning Makholm).</li> 10197 10198 <li>correct keypad-mapping table in input.c so 10199 <code>XK_KP_Equal</code> works (report by Henning 10200 Makholm).</li> 10201 10202 <li>modified to work with CJK double-width (bi-width/monospace) 10203 fonts. They're similar to Roman Czbora and David Starner's 10204 gnuunifonts in that Latin letters and numbers have all the same 10205 width which is exactly the half of the width of East Asian 10206 characters. (patch by Jungshik Shin 10207 <jshin@mailaps.org>).</li> 10208 10209 <li>add configure option <code>--enable-broken-osc</code> and 10210 resource <code>brokenLinuxOSC</code> to accommodate scripts 10211 which do not distinguish between running in the Linux console 10212 and running in X. Linux console recognizes malformed control 10213 strings which start with an <code>OSC</code>, but are 10214 fixed-length, with no terminator.</li> 10215 10216 <li>add configure option <code>--enable-broken-st</code> and 10217 resource <code>brokenStringTerm</code> to allow user to revert 10218 one part of the parsing table corrections from <a href= 10219 "#xterm_171">patch #171</a>. (reports by Matthias Scheler and 10220 Kirill Ponomarew indicate that someone's network firmware sends 10221 an <code><escape>X</code>).</li> 10222 10223 <li>modify configure <code>--disable-imake</code> to provide 10224 values for <code>OSMAJORVERSION</code>, 10225 <code>OSMINORVERSION</code>, <code>FUNCPROTO</code> and 10226 <code>NARROWPROTO</code> (report by Heiko Schlichting).</li> 10227 10228 <li>correct <code>vttests/16colors.sh</code>, which omitted the 10229 <code>$SUF</code> variable in output strings (patch by Paul 10230 Gilmartin).</li> 10231 10232 <li>modify shell scripts in <code>vttests</code> directory to 10233 attempt to use named signals in the <code>trap</code> 10234 statement, making this portable to OS/390 (report by Paul 10235 Gilmartin). Tested on SunOS 4.1.4, which implements only 10236 numbers.</li> 10237 </ul> 10238 10239 <h1><a name="xterm_177" id="xterm_177">Patch #177 - 2003/3/23 - 10240 XFree86 4.3.0</a></h1> 10241 10242 <ul> 10243 <li>fix definition of <code>USE_HANDSHAKE</code>, must be 10244 numeric (reported by Jens Schleusener).</li> 10245 </ul> 10246 10247 <h1><a name="xterm_176" id="xterm_176">Patch #176 - 2003/3/22 - 10248 XFree86 4.3.0</a></h1> 10249 10250 <ul> 10251 <li>add configure option <code>--enable-pty-handshake</code> to 10252 allow one to compile-in support for the pty handshaking logic, 10253 and resource <code>ptyHandshake</code> to enable or disable it 10254 (suggested by Ian Collier).</li> 10255 10256 <li>restore <code>USE_HANDSHAKE</code> ifdef removed in 10257 <a href="#xterm_159">patch #159</a> to address Debian 10258 #39964.</li> 10259 10260 <li>move ifdef's for ttysize/winsize into xterm_io.h</li> 10261 10262 <li>simplify loop on <code>tgetent</code>, check if the 10263 successive entries in the lookup table are the same. That makes 10264 xterm do one less lookup if there is no "xterm" entry in the 10265 termcap file (report by Derek Martin).</li> 10266 10267 <li>correct manpage discussion of <code>$TERM</code> and 10268 <code>$TERMCAP</code> variables, which omitted the Tektronix 10269 emulation and a note of the final "dumb" fallback.</li> 10270 10271 <li>broaden ifdef for 10272 <code>XRegisterIMInstantiateCallback()</code> from <a href= 10273 "#xterm_175">patch #175</a> (XIM fix) to exclude non-XFree86 10274 (report by Nelson Beebe indicates this breaks for Solaris, IRIX 10275 and OSF/1).</li> 10276 10277 <li>correct resource-size for <code>iconFont</code> (this was 10278 added by X11R6.3).</li> 10279 10280 <li>improve configure check for XKB bell extension, to work 10281 around inconsistent implementation of this feature (reports by 10282 Nelson Beebe, Kriston Rehberg and David Ellement).</li> 10283 10284 <li>modify configure-check for <code>tty</code> group to be 10285 less strict in batch mode (report by Nelson Beebe).</li> 10286 10287 <li>modify to allow building with g++, to use its compiler 10288 warnings (suggested by Nelson Beebe).</li> 10289 10290 <li>modify <code>dec2ucs[]</code> table to reflect newer codes 10291 available for scanlines 1, 3, 7, 9 (report by Michael 10292 Schroeder).</li> 10293 10294 <li>add configure option for XawPlus library.</li> 10295 </ul> 10296 10297 <h1><a name="xterm_175" id="xterm_175">Patch #175 - 2003/3/9 - 10298 XFree86 4.3.0</a></h1> 10299 10300 <ul> 10301 <li>fix a SIGSEGV which could occur if xterm is connecting to 10302 XIM server, and the XIM server is destroyed (patch by Nam 10303 SungHyun).</li> 10304 10305 <li>modify to use built-in line-drawing characters for Xft 10306 fonts (patch by Andrew Tipton).</li> 10307 10308 <li>make menu reflect the state of the <code>tekInhibit</code> 10309 resource.</li> 10310 10311 <li>make <code>signalInhibit</code> resource work, i.e., 10312 disable the menu entries that would send signals to, or exit 10313 xterm. This was probably broken in X11R5 when logging was 10314 disabled (report by Sven Mascheck).</li> 10315 10316 <li>changed classes of <code>colorBDMode</code> and similar 10317 resources that override colors when a video attribute is set to 10318 <code>ColorAttrMode</code>, to make them distinct from 10319 <code>ColorMode</code>. This avoids an unexpected rendering of 10320 reverse video, for example (report by Paul Fox).</li> 10321 10322 <li>changed class of <code>veryBoldColors</code> to 10323 <code>VeryBoldColors</code>, since <code>ColorMode</code> is 10324 associated with boolean resources.</li> 10325 10326 <li>add option <code>-k8</code> and resource 10327 <code>allowC1Printable</code> to allow users of non-VTxxx 10328 character sets such as KOI-8 to treat the C1 control area 10329 (character codes 128-159) as printable rather than control 10330 characters.</li> 10331 10332 <li>add a null-pointer check for return-value of 10333 <code>ptsname()</code> in HPUX-specific code (report by David 10334 Ellement).</li> 10335 10336 <li>revise the ifdef's used for <code>XKB</code> bell support. 10337 The code was using a nonstandard call 10338 <code>XkbStdBell()</code>. Changed to use 10339 <code>XkbBell()</code> (based on patch by 10340 <derek@signalmarketing.com>).</li> 10341 10342 <li>add a null-pointer check in <code>xtermLoadFont()</code> in 10343 case there is no wide-bold font (Nam SungHyun).</li> 10344 10345 <li>change <code>Makefile.in</code> to use autoconf's 10346 <code>bindir</code>, <code>libdir</code> and 10347 <code>mandir</code> variables (report by Nam SungHyun).</li> 10348 10349 <li>add <code>le</code> to termcap <code>xterm-basic</code> 10350 entry. Though missing from older termcaps for xterm, some 10351 applications check for it (report by Matthias Buelow).</li> 10352 10353 <li>modify <code>uxterm</code> script to strip modifiers such 10354 as "@euro" from the locale setting before adding ".UTF-8" 10355 (Debian #179929).</li> 10356 10357 <li>modify the remaining places where tek4014 emulation uses 10358 <code>XDefineCursor()</code>, to make it work as originally 10359 implemented, e.g., when switching back to alpha mode. Added 10360 test-screen in vttest to test this feature properly.</li> 10361 </ul> 10362 10363 <h1><a name="xterm_174" id="xterm_174">Patch #174 - 2003/2/25 - 10364 XFree86 4.2.99.903</a></h1> 10365 10366 <ul> 10367 <li>work-around for XFree86 bug which made 10368 <code>XDefineCursor()</code> on a shell-window no longer work. 10369 The tek4014 emulation used this. Use the next lower window 10370 (report by Karl Rudolf Bauchspiess).</li> 10371 10372 <li>add a resource setting <code>allowWindowOps</code> to 10373 control whether the extended window operations should be 10374 allowed, e.g., resize, iconify, report window attributes. This 10375 is to accommodate people who are not capable of using a pager 10376 to view log-files.</li> 10377 </ul> 10378 10379 <h1><a name="xterm_173" id="xterm_173">Patch #173 - 2003/2/6 - 10380 XFree86 4.2.99.902</a></h1> 10381 10382 <ul> 10383 <li>reset mouse mode to normal on a full reset. This does not 10384 apply to mouse hilite tracking mode, of course (see 10385 ctlseqs.ms).</li> 10386 10387 <li>add a time-delay at the point where mouse hilite tracking 10388 mode choses to not handle X events, to avoid runaway CPU usage 10389 (report by D Hugh Redelmeier).</li> 10390 10391 <li>check for illegal character in DECUDK string, quit if 10392 detected.</li> 10393 </ul> 10394 10395 <h1><a name="xterm_172" id="xterm_172">Patch #172 - 2002/12/27 - 10396 XFree86 4.2.99.3</a></h1> 10397 10398 <ul> 10399 <li>fixes to make repainting of 256-color example work properly 10400 (reports by Abigail Brady and Scott A Crosby). 10401 <ul> 10402 <li>set flag in <code>AllocateAnsiColor()</code> to ensure 10403 the color is allocated once only.</li> 10404 10405 <li>fix check in <code>ScrnRefresh</code>, which was 10406 comparing background colors only if the ANSI foreground 10407 colors also were set.</li> 10408 </ul> 10409 </li> 10410 10411 <li>merge <code>Error()</code> calls and some 10412 <code>exit()</code> calls into <code>SysError()</code>, and 10413 change that to add the brief explanation for each error code 10414 which is provided in the manpage. Change a few 10415 <code>SysError()</code>, calls to avoid using code 1, to avoid 10416 confusion with exit status from places that do not use 10417 <code>SysError()</code>.</li> 10418 10419 <li>simplify logic used to open a debug logfile as the standard 10420 error.</li> 10421 10422 <li>modify the <code>-e</code> option so that if it fails, 10423 xterm will check if only one argument follows, e.g., it was 10424 quoted, and then retry using <code>sh -c</code>.</li> 10425 10426 <li>modify parsing of DECUDK string parameter to allow a comma 10427 between pairs of hexadecimal digits (Ray Neuman 10428 <raymond@one.com.au> reports that "real" terminals accept 10429 this; perhaps they simply ignore unexpected characters).</li> 10430 10431 <li>fix a few problems with the <code>$TERMCAP</code> string 10432 generated by <code>resize</code>: 10433 <ul> 10434 <li>for Bourne shell, add an <code>export</code> command. 10435 This was missing as far back as X11R5.</li> 10436 10437 <li>escape exclamation marks, used in xterm's reset 10438 string.</li> 10439 10440 <li>translate literal <code>\177\</code> to "^?".</li> 10441 </ul> 10442 </li> 10443 10444 <li>improve configure check for <code>tgetent()</code> to work 10445 when <code>$TERMCAP</code> has been set to a specific 10446 entry.</li> 10447 10448 <li>modify <code>minstall.sh</code> to use "%" rather than "@", 10449 to avoid problems with AFS (report by Zdenek Sekera).</li> 10450 10451 <li>list fatal error codes from <code>error.h</code> in the 10452 manpage, remove unused codes in <code>error.h</code>.</li> 10453 10454 <li>use more explicit wording for manpage list of color 10455 resources, since at least one user confused the generic names 10456 such as "black" with the names in rgb.txt (the latter are now 10457 used).</li> 10458 10459 <li>minor fix to description of 1003 mouse mode in ctlseqs.ms 10460 (Larry Riedel).</li> 10461 </ul> 10462 10463 <h1><a name="xterm_171" id="xterm_171">Patch #171 - 2002/12/12 - 10464 XFree86 4.2.99.3</a></h1> 10465 10466 <ul> 10467 <li>modify parser tables to improve detection of malformed 10468 control sequences, making xterm behave more like a real DEC 10469 terminal (patch by Paul Williams).</li> 10470 10471 <li>update comment in <code>input.c</code> to document 10472 <code>Meta</code> as a modifier for escape sequences (patch by 10473 D Roland Walker).</li> 10474 10475 <li>add ifdef'd code for logging option which adds the hostname 10476 and a timestamp to the generated logfile name. The ifdef's are 10477 setup with the configure script (patch by Nelson Beebe).</li> 10478 10479 <li>remove <code>xevents()</code> call from the end of 10480 <code>BlinkCursor()</code>, to fix an occasional problem which 10481 caused xterm to pause until a key was pressed. The reason for 10482 this was that there was no check to ensure that there really 10483 were events for <code>xevents()</code> to process. (patch by 10484 Semen A Ustimenko <semenu@FreeBSD.org>).</li> 10485 10486 <li>remove unused mode-params from <code>open()</code> calls 10487 that do not create a file.</li> 10488 10489 <li>modify configure script to put new items first on 10490 <code>$CPPFLAGS</code> and <code>$CFLAGS</code> to avoid 10491 conflict with environment's <em>-I</em> and <em>-D</em> 10492 options.</li> 10493 10494 <li>update config.guess, config.sub</li> 10495 10496 <li>resync with XFree86 CVS 10497 <ul> 10498 <li>fix va_args glitches for xterm/libfontconfig: 0 == 10499 (void*)0 isn't true for all platforms (Egbert Eich).</li> 10500 10501 <li>initialise ProgramName in xterm's main before 10502 referencing it (XFree86 #5473, Peter Valchev).</li> 10503 10504 <li>some cleanup of Imakefile ifdef's (Marc La 10505 France).</li> 10506 </ul> 10507 </li> 10508 </ul> 10509 10510 <h1><a name="xterm_170" id="xterm_170">Patch #170 - 2002/10/13 - 10511 XFree86 4.2.1</a></h1> 10512 10513 <ul> 10514 <li>correct an off-by-one allocating data for sorted help 10515 message.</li> 10516 10517 <li>modify configure script to check for Xpm library, on which 10518 XFree86 Xaw library depends.</li> 10519 10520 <li>update config.guess, config.sub</li> 10521 </ul> 10522 10523 <h1><a name="xterm_169" id="xterm_169">Patch #169 - 2002/10/5 - 10524 XFree86 4.2.1</a></h1> 10525 10526 <ul> 10527 <li>modify wording of some options in help message to make them 10528 use <code>-/+</code> consistently with respect to "on/off" or 10529 "off/on".</li> 10530 10531 <li>sort options list which is displayed in help- and 10532 syntax-messages at runtime to simplify maintenance.</li> 10533 10534 <li>remove support for Amoeba and Minix (Juliusz Chroboczek 10535 noted it was removed from XFree86 server; there have been no 10536 users since 1996).</li> 10537 10538 <li>add configure script option 10539 <code>--disable-session-mgt</code> to control whether the 10540 session management code should be compiled-in (request by H 10541 Merijn Brand).</li> 10542 10543 <li>ifdef'd the session-management changes with 10544 <code>OPT_SESSION_MGT</code>, to accommodate X11R5 which 10545 predates the related definitions.</li> 10546 10547 <li>fix <code>decode_keyvalue()</code>, which did not properly 10548 parse multiple settings as needed for the <code>ttyModes</code> 10549 resource, since it did not skip over the parsed data.</li> 10550 10551 <li>fix an option-parsing conflict between <code>-class</code> 10552 and <code>-cjk_width</code> (Nam SungHyun)</li> 10553 10554 <li>add a missing null in <code>XtVaSetValues()</code> call 10555 used in <code>Cleanup()</code> (Nam SungHyun)</li> 10556 </ul> 10557 10558 <h1><a name="xterm_168" id="xterm_168">Patch #168 - 2002/9/29 - 10559 XFree86 4.2.1</a></h1> 10560 10561 <ul> 10562 <li>improve data reported for control sequence that requests 10563 window position by taking into account the window decorations, 10564 e.g., border and title (patch by Jess Thrysoee 10565 <jess@thrysoee.dk>).</li> 10566 10567 <li>add <code>-cjk_width</code> and corresponding resource 10568 <code>cjkWidth</code> (patch by Jungshik Shin 10569 <jshin@mailaps.org>).</li> 10570 10571 <li>add <code>-into</code> option, for embedding xterm in a 10572 Tcl/Tk application (patch by George Peter Staplin 10573 <georgeps@xmission.com>).</li> 10574 10575 <li>add simple session management (XSM) client capabilities to 10576 xterm. So a session manager such as, e.g., xsm, should be able 10577 to respawn or kill xterms without the help of an SM proxy (like 10578 smproxy), which is a hack and almost always buggy (patch by 10579 David Madore).</li> 10580 10581 <li>fix conflict between ifdef's for 10582 <code>OPT_DEC_LOCATOR</code> and <code>OPT_READLINE</code> in 10583 button.c (reported by Ilya Zakharevich).</li> 10584 10585 <li>fix for inconsistent use of <code>struct utmp</code> versus 10586 <code>struct utmpx</code> introduced in <a href= 10587 "#xterm_167">patch #167</a> (patches by Paul Gilmartin, Marc La 10588 France).</li> 10589 10590 <li>modify logic for <code>metaSendsEscape</code> to allow it 10591 to work in a setup where the Meta-key is not recognized as a 10592 modifier by the key-translations logic (discussion of 10593 eightBitInput with H.J.Lu). Note however that Vincent 10594 Lefèvre reported this in January).</li> 10595 10596 <li>use null pointer values consistently, rather than literal 10597 "0", for ending variable-length argument lists, e.g., for 10598 <code>execlp()</code> (based on patch by Matthieu Herrb).</li> 10599 10600 <li>correct logic of <code>ChangeAnsiColorRequest()</code>, 10601 which would do a screen repaint after replying to a request for 10602 information.</li> 10603 10604 <li>improve scripts in vttests to work with systems whose 10605 shells support <code>echo -n</code> and have, as does Debian, 10606 an unrelated <code>print</code> utility.</li> 10607 10608 <li>add vttests/acolors.sh to demonstrate OSC 4, which queries 10609 or sets ANSI colors.</li> 10610 10611 <li>fixes for ctlseqs.ms (Pavel Roskin, Ilya Zakharevich).</li> 10612 10613 <li>typos in xterm manpage (Jens Schweikhardt)</li> 10614 10615 <li>remove a redundant GCC_UNUSED from InitPopup() (Nam 10616 SungHyun)</li> 10617 </ul> 10618 10619 <h1><a name="xterm_167" id="xterm_167">Patch #167 - 2002/8/24 - 10620 XFree86 4.2.0</a></h1> 10621 10622 <ul> 10623 <li>correct ifdef's for <code>USE_TERMCAP</code> to match 10624 cygwin configuration.</li> 10625 10626 <li>fix several places in ctlseqs.ms which had no boxes around 10627 the literal text (report by Ilya Zakharevich).</li> 10628 10629 <li>extend mouse support for readline, ifdef'd with 10630 OPT_READLINE (integrated patch from Ilya Zakharevich).</li> 10631 10632 <li>modify terminfo description to match default for 10633 <code>modifyCursorKeys</code> resource.</li> 10634 10635 <li>add <code>modifyCursorKeys</code> resource to control how 10636 the shift- and similar modifiers are used to make a cursor 10637 escape sequence. The default makes a modified escape sequence 10638 always start with CSI and puts the modifier as the second 10639 parameter, to avoid confusing applications that would interpret 10640 the first parameter as a repeat count. The original behavior 10641 can be obtained by setting the resource to 0 (newsgroup 10642 discussion with Stephen J Turnbull, Jeffrey Altman).</li> 10643 10644 <li>correct missing initializations for 10645 <code>appdefaultCursor</code> and <code>appdefaultKeypad</code> 10646 resources.</li> 10647 10648 <li>add configure option <code>--enable-luit</code> and ifdef'd 10649 the luit-related code with OPT_LUIT_PROG.</li> 10650 10651 <li>modify xterm to invoke luit (integrated patch by Tomohiro 10652 Kubota)</li> 10653 10654 <li>update wcwidth.c to match Markus Kuhn's 2002-05-18 10655 version.</li> 10656 10657 <li>correct limit-checking in <code>ComputeSelect()</code> to 10658 handle selections that extend off the visible area; rather than 10659 modify the parameters to <code>TrackText()</code>, use 10660 <code>ScrollSelection()</code> to update the highlighting 10661 limits. (reported by Yegappan Lakshmanan and Nelson Beebe, 10662 patch by Alexander V Lukyanov).</li> 10663 10664 <li>correct manpage description of <code>tiXtraScroll</code> 10665 resource (reported by Tony Finch).</li> 10666 10667 <li>changes from OpenBSD: 10668 <ul> 10669 <li>Make xterm setgid utmp to be able to update utmp even 10670 with root privileges revoked.</li> 10671 10672 <li>If not updating utmp, revoke group privileges totally 10673 too.</li> 10674 </ul> 10675 </li> 10676 10677 <li>changes from NetBSD: 10678 <ul> 10679 <li>Check that the return value from ttyslot() is greater 10680 than 0 before writing the utmp file. Fixes w's "w: Stale 10681 utmp entry: <user> <tty> <pty>" 10682 errors.</li> 10683 10684 <li>Use openpty() to deal with new pty naming scheme.</li> 10685 </ul> 10686 </li> 10687 10688 <li>add <code>print-redir</code> action and menu entry to allow 10689 user to switch terminal in/out of printer controller mode. It 10690 appears from the manual that a real vt220 would not switch back 10691 to normal mode, so another mechanism is used (addresses Debian 10692 #37517).</li> 10693 10694 <li>check if <code>printerCommand</code> resource string is 10695 empty, use this to allow user to disable printer function.</li> 10696 10697 <li>trim trailing blanks from resource strings.</li> 10698 10699 <li>check return value from <code>ptsname()</code>, which may 10700 return null for example if someone has changed the permissions 10701 of /dev/pts to zero (Debian #121899).</li> 10702 10703 <li>modify OS/2 version to use <code>__UNIXOS2__</code> 10704 definition rather than <code>__EMX__</code>, related cleanup 10705 (patch by Holger Veit).</li> 10706 10707 <li>used modified indent 2.0 (patch <a href= 10708 "ftp://ftp.invisible-island.net/gnu-patches/">20020428</a>) to 10709 reformat most of the C source files, to simplify 10710 maintenance.</li> 10711 10712 <li>fix a couple of places where there were leading tabs on 10713 symbol-definition lines in Imakefile (Marc La France from 10714 report by Tony Finch)</li> 10715 10716 <li>add imake variable (TraceXTerm) to allow building debug 10717 version (Egbert Eich).</li> 10718 </ul> 10719 10720 <h1><a name="xterm_166" id="xterm_166">Patch #166 - 2002/3/25 - 10721 XFree86 4.2.0</a></h1> 10722 10723 <ul> 10724 <li>correct a bug in selection: double clicking on a word which 10725 was partly scrolled off the screen may select that text (report 10726 by Vincent Lefèvre <vincent@vinc17.org>).</li> 10727 10728 <li>implement <code>veryBoldColors</code> resource to control 10729 whether the corresponding video attribute such as 10730 <code>bold</code> is displayed when using 10731 <code>colorBDMode</code>, etc. (request by Josh Howard 10732 <jrh@vicor-nb.com>).</li> 10733 10734 <li>define escape sequences for function keys F21-F35 (patch by 10735 Stephen P Wall).</li> 10736 10737 <li>change the colors for the 256-color model, making them less 10738 skewed toward black (patch by Stephen P Wall).</li> 10739 10740 <li>add <code>vt100Graphics</code> resource (see <a href= 10741 "#xterm_115">patch #115</a>, based on discussion with Glenn 10742 Maynard).</li> 10743 10744 <li>ifdef'd Xaw/Xaw3d/neXtaw includes separately to avoid 10745 potential incompatibilities between these flavors of Athena 10746 widgets.</li> 10747 10748 <li>add configure check for XFree86 4.x Xaw library, whose 10749 geometry management is broken, to avoid trying to use it for 10750 toolbar configuration.</li> 10751 10752 <li>updates to configure script from vile and lynx to allow 10753 configure.in to be compiled with autoconf 2.5x</li> 10754 10755 <li>add a check for null pointer return by 10756 <code>ptsname()</code> (newsgroup posting from Mike Silva 10757 <mikesilva@lucent.com>).</li> 10758 10759 <li>fill in a few details needed to allow UTF-8 mode to switch 10760 on/off after startup. This requires that <code>wideChars</code> 10761 resource be set. (based on comments in 4 Aug 2001 by Alexey 10762 Marinichev <lyosha@lyosha.2y.net>).</li> 10763 10764 <li>remove duplicate install rules that make directories, e.g., 10765 so installing manpage will not create app-defaults 10766 directory.</li> 10767 10768 <li>add comment in in <code>do_osc()</code>, reserving cases 30 10769 and 31 for for Konsole (request by Stephan Binner 10770 <Stephan.Binner@gmx.de>).</li> 10771 10772 <li>fixes for ctlseqs.ms and xterm.man (patch by Werner Lemberg 10773 <wl@gnu.org>).</li> 10774 10775 <li>add check for monochrome display, disabling colorMode in 10776 that case (fixes Debian #134130).</li> 10777 10778 <li>resync with XFree86 CVS 10779 <ul> 10780 <li>Fix some xterm build warnings on *BSD (patch by David 10781 Dawes).</li> 10782 10783 <li>Only use SA_RESTART in xterm when it's available (patch 10784 by Frank Liu).</li> 10785 10786 <li>Fix incorrect code in signal handlers in most of the 10787 clients, xterm and xdm not done yet (patch by Matthieu 10788 Herrb).</li> 10789 </ul> 10790 </li> 10791 </ul> 10792 10793 <h1><a name="xterm_165" id="xterm_165">Patch #165 - 2002/1/5 - 10794 XFree86 4.1.0</a></h1> 10795 10796 <ul> 10797 <li>modify <code>uxterm</code> script to strip encoding part 10798 from environment variable before adding ".UTF-8" (based on 10799 Debian #125947, but using a more portable solution).</li> 10800 10801 <li>add an assignment statement in VTInitialize() to make 10802 <code>awaitInput</code> resource work.</li> 10803 10804 <li>use new macros init_Bres(), etc., in VTInitialize() to add 10805 trace of the initialization of resources.</li> 10806 10807 <li>modify checks for $LC_ALL, related environment variables to 10808 ensure the resulting strings are nonempty (report by Markus 10809 Kuhn).</li> 10810 10811 <li>add an ifdef in charproc.c for num_ptrs variable in case 10812 all configure options are disabled.</li> 10813 10814 <li>modify definition of getXtermBackground() to avoid negative 10815 array index warning on Tru64 (report by Jeremie Petit).</li> 10816 10817 <li>improve fix from patch #165 (still Debian #117184, report 10818 by Matt Zimmerman <mdz@debian.org>)</li> 10819 10820 <li>correct install rule for uxterm in Makefile.in, to handle 10821 the case where building in a different directory than xterm's 10822 source (patch by Paul Gilmartin).</li> 10823 10824 <li>documented ANSI.SYS-style cursor save/restore escape 10825 sequences in ctlseqs.ms, which are in xterm since X11R5.</li> 10826 10827 <li>correct two entries in the default charClass table, which 10828 did not follow the manpage comment about the character number 10829 corresponding to the class (patch by Marc Bevand 10830 <bevand_m@epita.fr>).</li> 10831 10832 <li>fix a couple of typos in comments in the app-defaults files 10833 (David Krause <xfree86@davidkrause.com>).</li> 10834 10835 <li>resync with XFree86 CVS 10836 <ul> 10837 <li>update language of copyrights in some files to reflect 10838 the fact that they were reassigned from X Consortium to The 10839 Open Group in 1998. Note that this xterm source is derived 10840 from the 1996 version from X Consortium, does not 10841 incorporate changes made by X Consortium or The Open Group 10842 after that date, hence we do not add The Open Group's 1998 10843 copyright date to related files.</li> 10844 10845 <li>save/restore <code>errno</code> in signal catcher 10846 (patch by Matthieu Herrb).</li> 10847 10848 <li>modify UXTerm.ad's font5 resource so that xterm can 10849 display double width characters using a font distributed 10850 with XFree86 (Tomohiro Kubota).</li> 10851 </ul> 10852 </li> 10853 </ul> 10854 10855 <h1><a name="xterm_164" id="xterm_164">Patch #164 - 2001/11/13 - 10856 XFree86 4.1.0</a></h1> 10857 10858 <ul> 10859 <li>correct a case where <code>ptyInitialErase</code> and 10860 <code>backarrowKeyIsErase</code> resources combine to set 10861 <code>DECBKM</code> mode, but a <code>reset</code> command 10862 would not reset xterm to that state, making the erase character 10863 revert to ^H (Debian #117184)</li> 10864 </ul> 10865 10866 <h1><a name="xterm_163" id="xterm_163">Patch #163 - 2001/11/04 - 10867 XFree86 4.1.0</a></h1> 10868 10869 <ul> 10870 <li>correct ifdef's for <code>__QNX__</code> and 10871 <code>USE_SYSV_PGRP</code> in main.c call to 10872 <code>tcsetpgrp</code>, which broke bash behavior around 10873 <a href="#xterm_140">patch #140</a> (report/patch by Frank Liu 10874 <fliu@mail.vipstage.com>).</li> 10875 10876 <li>modify trace.c to fix missing definition of GCC_UNUSED for 10877 compilers other than gcc when configured for trace code 10878 (report/patch by Paul Gilmartin).</li> 10879 10880 <li>change format in TraceOptions() to use long rather than 10881 int, since the latter could lose precision on 64-bit machines 10882 (report/patch by Nelson Beebe).</li> 10883 10884 <li>modify xterm manual page and minstall.sh to allow imake 10885 rules to define location of app-defaults directory (Debian 10886 #87611).</li> 10887 10888 <li>review/update list of conflicting preprocessor symbols to 10889 remove from $CPPFLAGS at the end of the configure script. In 10890 particular, this allows one to configure xterm without the 10891 utempter library on Redhat 7.1 (report/patch by Adam 10892 Sulmicki).</li> 10893 </ul> 10894 10895 <h1><a name="xterm_162" id="xterm_162">Patch #162 - 2001/10/23 - 10896 XFree86 4.1.0</a></h1> 10897 10898 <ul> 10899 <li>correct logic that processes <code>-class</code> option, so 10900 that a following <code>-e</code> option is handled (Debian 10901 #116297).</li> 10902 10903 <li>improve options-decoding to allow <code>-version</code> and 10904 <code>-help</code> options to be combined (Debian 10905 #110226).</li> 10906 10907 <li>add a 10 millisecond delay in event loop when processing 10908 <code>-hold</code> option, to avoid using too much CPU time 10909 (Debian #116213).</li> 10910 10911 <li>prefix final program execution in <code>uxterm</code> with 10912 "exec" to avoid a useless shell hanging around (Christian 10913 Weisgerber).</li> 10914 </ul> 10915 10916 <h1><a name="xterm_161" id="xterm_161">Patch #161 - 2001/10/10 - 10917 XFree86 4.1.0</a></h1> 10918 10919 <ul> 10920 <li>modify logic that resets keypad application mode to avoid 10921 doing this if there is no modifier associated with the Num_Lock 10922 keysym (report by John E Davis <davis@space.mit.edu> and 10923 Alan W Irwin <irwin@beluga.phys.uvic.ca>).</li> 10924 10925 <li>add built-in translation for Control/KP_Separator to 10926 KP_Subtract, to accommodate users who wish to use xmodmap to 10927 reassign the top row of the numeric keypad.</li> 10928 10929 <li>correct Imakefile install-rule for <code>uxname</code> 10930 script (reported by Nam SungHyun <namsh@lge.com>).</li> 10931 10932 <li>resync with XFree86 CVS – correct typo in 10933 <code><ncurses/term.h></code> ifdef.</li> 10934 </ul> 10935 10936 <h1><a name="xterm_160" id="xterm_160">Patch #160 - 2001/10/7 - 10937 XFree86 4.1.0</a></h1> 10938 10939 <ul> 10940 <li>modify logic in main.c (see <a href="#xterm_145">patch 10941 #145</a>) to avoid generating the same identifier, for example, 10942 for /dev/tty1 and /dev/pts/1, which is used to denote an entry 10943 in the utmp file (Debian bug report #84676), A similar fix was 10944 also sent by Jerome Borsboom <borsboom@westbrabant.net> 10945 in May, but I overlooked it when reviewing bug reports.</li> 10946 10947 <li>add configure check for <code><ncurses/term.h></code> 10948 to get rid of hardcoded <code>__CYGWIN__</code> ifdef in 10949 resize.c 10950 <p>NOTE: The CYGWIN port should not be linking 10951 <code>resize</code> with ncurses. It appears that the only 10952 reason it is, is because both the ncurses and termcap ports 10953 on that platform are badly misconfigured (essential pieces 10954 have been removed, etc). Checking for 10955 <code><ncurses/term.h></code> does not hurt anything, 10956 since there are some correct installations that are set up 10957 that way.</p> 10958 </li> 10959 10960 <li>add a sample <code>uxterm</code> script, which uses the 10961 <code>UXTerm</code> application defaults for UTF-8 10962 environments.</li> 10963 10964 <li>undo change to xterm application defaults, since this 10965 introduced an unnecessary incompatibility. The intended 10966 functionality was already addressed by the <a href= 10967 "#xterm_141">UXTerm</a> app-defaults file.</li> 10968 10969 <li>resync with XFree86 CVS 10970 <ul> 10971 <li>Modified xterm app default to use LFD fontnames instead 10972 of old type (Michael Schroeder).</li> 10973 10974 <li>Fix xterm when XIM is disabled - caused a segfault 10975 (Tomohiro Kubota).</li> 10976 </ul> 10977 </li> 10978 </ul> 10979 10980 <h1><a name="xterm_159" id="xterm_159">Patch #159 - 2001/9/19 - 10981 XFree86 4.1.0</a></h1> 10982 10983 <ul> 10984 <li>remove an ifdef for <code>USE_HANDSHAKE</code> added in 10985 patch #158 from the second <code>TIOCSSIZE</code> ioctl call in 10986 the initialization code. Paul Gilmartin reports that for 10987 Solaris 2.6 (sparc), stty does not show that xterm sets rows 10988 and columns unless the second ioctl is executed.</li> 10989 10990 <li>correct treatment of empty parameter list for some OSC 10991 strings (report by Sami Farin <sfarin@ratol.fi>).</li> 10992 </ul> 10993 10994 <h1><a name="xterm_158" id="xterm_158">Patch #158 - 2001/9/8 - 10995 XFree86 4.1.0</a></h1> 10996 10997 <ul> 10998 <li>augment key translations for scrollbar widget to ensure 10999 that keystrokes intended for the text area are not lost if the 11000 mouse pointer happens to fall on the scrollbar. This can 11001 happen, for instance, if the user's <code>app-defaults</code> 11002 or <code>.Xdefaults</code> file contains a translations 11003 resource, though it may also happen through unrelated resource 11004 settings: probably a bug in libXt (reported by Paul Fox 11005 <pgf@foxharp.boston.ma.us> and Dmitry Yu. Bolkhovityanov 11006 <D.Yu.Bolkhovityanov@inp.nsk.su>).</li> 11007 11008 <li>widen ifdef's in xterm.h to define 11009 <code>__EXTENSIONS__</code> on Solaris, for compilers other 11010 than gcc. This was added along <code>_POSIX_C_SOURCE</code> 11011 with in <a href="#xterm_151">patch #151</a>, but is not 11012 sufficient since Sun's compiler does not define 11013 <code>__STDC__</code> by default (report by Matthias Scheler 11014 <tron@zhadum.de>).</li> 11015 11016 <li>modify xterm to obtain the closest matching color if an 11017 exact color is not available, e.g., on 8-bit displays (patch by 11018 Stephen P Wall)</li> 11019 11020 <li>implement "OverTheSpot" preedit type of XIM input (patch by 11021 Tomohiro Kubota): 11022 <ul> 11023 <li>This preedit type is a reasonable compromise between 11024 simpleness of implementation and usefulness. "Root" preedit 11025 type is easy to implement but not useful; "OnTheSpot" 11026 preedit type is the best in the point of view of user 11027 interface but very complex. And more, "OverTheSpot" is the 11028 preedit type which the most XIM servers support. Thus, to 11029 achieve reasonable usability, support of "OverTheSpot" 11030 preedit type is needed.</li> 11031 11032 <li>In "OverTheSpot" preedit type, the preedit 11033 (preconversion) string is displayed at the position of the 11034 cursor. On the other hand, it is XIM server's 11035 responsibility to display the preedit string. Thus, it is 11036 needed for XIM client (here XTerm) to inform the XIM server 11037 of the cursor position. And more, to achieve good visual 11038 proportion, preedit string must be written using proper 11039 font. Thus, it is XIM client's responsibility to inform the 11040 XIM server of the proper font. The font must be supplied by 11041 "fontset". Fontset is a set of fonts with charsets which 11042 are specified by the current locale. Since XTerm uses 11043 ISO10646 fonts regardless of the current locale, the fonts 11044 for XIM must be prepared separately. It is difficult to 11045 prepare fonts which are similar to XTerm font. Thus, my 11046 patch uses a simple way - the default font is "*" which 11047 matches every fonts and X library will automatically choose 11048 fonts with proper charsets. I added "-fx" command option 11049 and "ximFont" resource to override this default font 11050 setting.</li> 11051 11052 <li>changed the definition of "OverTheSpot" preedit type 11053 from XIMPreeditPosition|XIMStatusArea to 11054 XIMPreeditPosition|XIMStatusNothing. This matches the 11055 behavior of other programs such as Rxvt, Kterm, Gedit.</li> 11056 11057 <li>A tiny XIM bugfix is also included. By calling 11058 XSetLocaleModifiers() with parameter of "", it can consider 11059 XMODIFIERS environmental variable which is a standard way 11060 for users to specify XIM server to be used.</li> 11061 </ul> 11062 </li> 11063 11064 <li>adjust configure script to accommodate repackaging of 11065 keysym2ucs.c as include-file for xutf8.c (patch by Tomohiro 11066 Kubota).</li> 11067 11068 <li>add the <code>UXTerm</code> app-defaults file to makefile 11069 install rules (request by Juliusz Chroboczek).</li> 11070 11071 <li>correct logic in <code>get_termcap()</code>, which returned 11072 false if the <code>tgetent()</code> call indicated that xterm 11073 was linked with terminfo. Although the <code>$TERMCAP</code> 11074 variable cannot be adjusted in this case, xterm still needs 11075 information from this call to extract data to initialize the 11076 erase-mode when the <code>ptyInitialErase</code> resource is 11077 false.</li> 11078 11079 <li>modify <code>ScrollbarReverseVideo()</code> function to 11080 cache the original border color, so it can restore that when an 11081 application flashes the screen (Bugzilla #38872).</li> 11082 11083 <li>resync with XFree86 CVS 11084 <ul> 11085 <li>remove ifdef's for X_NOT_STDC_ENV (patch by David 11086 Dawes).</li> 11087 11088 <li>add Cygwin to special errno handling case in ptydata.c 11089 (Alan Hourihane)</li> 11090 11091 <li>set screen size earlier in initialization, to address a 11092 race with window manager resizing its clients (Keith 11093 Packard).</li> 11094 </ul> 11095 </li> 11096 </ul> 11097 11098 <h1><a name="xterm_157" id="xterm_157">Patch #157 - 2001/6/18 - 11099 XFree86 4.1.0</a></h1> 11100 11101 <ul> 11102 <li>clean up button.c and input.c (patch by Juliusz 11103 Chroboczek). The basic idea is to use a single set of APIs in 11104 the XTerm core, and put a set of workarounds in a separate 11105 file. As you will notice, this drastically simplifies parts of 11106 the code; in particular, the only remaining ifdefs related to 11107 the differences between Xutf8 and legacy systems are related to 11108 the selection provider logic. This defines two new files, 11109 xutf8.h and xutf8.c, provide some half-hearted but fully 11110 portable emulation for the three Xutf8* functions that XTerm 11111 uses. Putting these in a separate file will allow people to 11112 experiment with more complex versions without making the core 11113 of XTerm more difficult to maintain. The functionality of the 11114 emulation is as follows. 11115 <ul> 11116 <li>Xutf8TextListToTextProperty fully handles XStringstyle 11117 and XUTF8StringStyle. It will only generate STRING for 11118 XStdICCTextStyle, and will only generate Latin-1 in 11119 XCompoundTextStyle (but label it as COMPOUND_TEXT, as the 11120 spec requires). (I have hesitated to make this function 11121 fail for XStdICCTextStyle and XCompoundTextStyle; this 11122 might be a smart thing to do, in the hope that the 11123 selection requestor will try UTF8_STRING afterwards; 11124 opinions?)</li> 11125 11126 <li>Xutf8TextPropertyToTextList fully handles STRING and 11127 UTF8_STRING. It systematically fails for 11128 COMPOUND_TEXT.</li> 11129 11130 <li>Xutf8LookupString will properly handle single-keystroke 11131 input for the keysyms covered by Markus' keysym2ucs 11132 function. It will not handle either compose key input or 11133 external input methods.</li> 11134 </ul> 11135 </li> 11136 11137 <li>add an ifdef for <code>SunXK_F36</code>, used in 11138 <code>xtermcapKeycode()</code> (patch by Mark Waggoner 11139 <waggoner@ichips.intel.com>).</li> 11140 11141 <li>modify check for login name to try <code>getlogin()</code> 11142 and $LOGNAME, $USER environment variables to detect if the user 11143 has logged in under an alias, i.e., an account with the same 11144 user id but a different name (Debian bug report #70084).</li> 11145 11146 <li>add resource <code>tiXtraScroll</code>, which can be used 11147 to preserve the screen contents in the scrollback rather than 11148 erasing it when starting a fullscreen application such as 11149 <code>vi</code> (patch by Ken Martin 11150 <fletcher@catsreach.org>).</li> 11151 11152 <li>two patches by Denis Zaitsev <zzz@cd-club.ru>: 11153 <ul> 11154 <li>added <code>forceBoxChars</code> resource to control 11155 the "line-drawing characters" option.</li> 11156 11157 <li>added <code>freeBoldBox</code> resource, which, when 11158 set true, suppresses check in 11159 <code>same_font_size()</code>, so xterm does not attempt to 11160 ensure that the bold font is the same size as the normal 11161 font.</li> 11162 </ul> 11163 </li> 11164 11165 <li>change the color class for ANSI colors and similar ones 11166 such as bold-color, etc., to follow the convention that the 11167 classname is the instance name with a leading capital (e.g., 11168 <code>color0</code> and <code>Color0</code> rather than 11169 <code>color0</code> and <code>Foreground</code>). There was 11170 little use for Foreground as a class other than to create 11171 occasional confusion and bug reports, most recently by Nelson 11172 Beebe who reports that it disables colors in xterm but not on 11173 Linux, which is probably due to a difference in resource 11174 evaluation order. A configure script option 11175 (--disable-color-class) is provided for anyone who did use the 11176 older behavior.</li> 11177 11178 <li>fix a signal-handling bug. When running xterm with 11179 <code>ksh</code> or similar shell such as bash 2.05, xterm will 11180 hang and not respond to keystrokes after the user types 11181 <code>suspend</code>. Additionally the popup menus do not 11182 respond, so it is not possible to send SIGCONT to the shell. 11183 What is happening is that the shell is sending itself SIGSTOP, 11184 and it is being stopped. Per specification it also means that 11185 the operating system is sending SIGCHLD to parent to the bash 11186 (XTERM). Now the issue is that xterm assumes it cannot happen 11187 and it expects to receive SIGCHLD only upon 11188 <em>termination</em> of its children. This causes a deadlock 11189 with xterm waiting for the child to die, and the child waiting 11190 for SIGCONT. (report/patch by Adam Sulmicki), analysis/testing 11191 by Sven Mascheck 11192 <sven.mascheck@student.uni-ulm.de>).</li> 11193 11194 <li>correct some inconsistent checks for 11195 <code>XtReleaseGC()</code> calls in 11196 <code>xtermLoadFont()</code> (patch by Nam SungHyun 11197 <namsh@lge.com>).</li> 11198 11199 <li>updated wcwidth.c and keysym2ucs.c to versions dated 11200 2001/1/12 and 2001/4/18, respectively from 11201 http://www.cl.cam.ac.uk/~mgk25/ucs/</li> 11202 11203 <li>correction to change from <a href="#xterm_90">patch 11204 #90</a>, which was intended to reset the saved cursor position 11205 for normal/alternate screens on a soft reset, but actually 11206 wiped out all of the saved cursor information. Just reset the 11207 saved position for the current screen (report by Michael 11208 Schroeder).</li> 11209 11210 <li>modify ShowCursor() and HideCursor() so that if the cursor 11211 points to the second part of a wide character, make the 11212 show/hide operate on the first position of the wide character 11213 (patch by Sven Verdoolaege).</li> 11214 11215 <li>scrolling in the alternate screen just before switching 11216 back to the main screen can cause extra blank lines to be 11217 inserted into the scrollback buffer (patch by Paul Vojta 11218 <vojta@math.berkeley.edu>).</li> 11219 11220 <li>resync with XFree86 4.1.0: 11221 <ul> 11222 <li>Use TermcapLibrary as -lncurses instead of -ltermcap, 11223 fixes problem building xterm/resize on Cygwin/XFree86 11224 (Harold Hunt).</li> 11225 11226 <li>Install xterm.termcap and xterm.terminfo when 11227 installing xterm (Torrey T. Lyons).</li> 11228 11229 <li>Fix some build issues on Cygwin/XFree86 (Suhaib 11230 Siddiqi).</li> 11231 11232 <li>Define CBAUD, when it's missing in xterm, on LynxOS 11233 (Stuart Lissaman).</li> 11234 </ul> 11235 </li> 11236 </ul> 11237 11238 <h1><a name="xterm_156" id="xterm_156">Patch #156 - 2001/4/28 - 11239 XFree86 4.0.3</a></h1> 11240 11241 <ul> 11242 <li>change order of selection-target types to make 8-bit xterm 11243 prefer UTF8_STRING to COMPOUND_TEXT (patch by Juliusz 11244 Chroboczek).</li> 11245 11246 <li>document <code>-fa</code>, <code>-fs</code> command-line 11247 options and <code>faceName</code>, <code>faceSize</code> 11248 resources which are used by the freetype library support.</li> 11249 11250 <li>if configure script finds freetype libraries, but imake 11251 definitions do not have the XRENDERFONT definition, define it 11252 anyway.</li> 11253 11254 <li>modify configure script check for freetype libraries to 11255 include <code><Xlib.h></code>, since an older version of 11256 the related headers relies on this (patch by Adam 11257 Sulmicki).</li> 11258 </ul> 11259 11260 <h1><a name="xterm_155" id="xterm_155">Patch #155 - 2001/4/20 - 11261 XFree86 4.0.3</a></h1> 11262 11263 <ul> 11264 <li>correct return type of in_put() from <a href= 11265 "#xterm_155">patch #153</a> changes, which left it not wide 11266 enough for UTF-8 (patch by Bruno Haible).</li> 11267 </ul> 11268 11269 <h1><a name="xterm_154" id="xterm_154">Patch #154 - 2001/4/11 - 11270 XFree86 4.0.3</a></h1> 11271 11272 <ul> 11273 <li>undo check for return value from <code>pututline</code> 11274 (used for debugging) since that function does not return a 11275 value on Slackware 3.6.</li> 11276 11277 <li>correct length in ScreenWrite, when rendering invisible 11278 text (patch by Sven Verdoolaege <skimo@kotnet.org>).</li> 11279 11280 <li>fixes/improvements for the <code>i18nSelection</code> 11281 resource from patch #153, by Bruno Haible: 11282 <ul> 11283 <li>add missing initialization for 11284 <code>i18nSelection</code> resource.</li> 11285 11286 <li>split-out the non-ICCM aspect of the 11287 <code>i18nSelection</code> resource as a new resource, 11288 <code>brokenSelections</code>.</li> 11289 </ul> 11290 </li> 11291 11292 <li>add configure check for <code><time.h></code> and 11293 <code><sys/time.h></code>, to allow for Unixware 7, 11294 which requires both. If the configure script is not used, only 11295 <code><time.h></code> will be included as before (report 11296 by Thanh Ma).</li> 11297 11298 <li>fix redefinition of <code>dup2</code>, 11299 <code>getutent</code>, <code>getutid</code>, 11300 <code>getutline</code> and <code>sleep</code> functions on 11301 Unixware 7 (report by Thanh Ma 11302 <Thanh.Ma@casi-rusco.com>)</li> 11303 11304 <li>add a fall-back definition for <code>__hpux</code>, which 11305 is apparently not defined in some compilers on HPUX 11.0 11306 (reported by Clint Olsen).</li> 11307 11308 <li>change VAL_INITIAL_ERASE, which is used as a fallback for 11309 the <code>"kb"</code> termcap string to 8, since that matches 11310 the xterm terminal description (request by Alexander V 11311 Lukyanov).</li> 11312 11313 <li>correct an off-by-one in <code>ClearInLine</code>, which 11314 caused the erase-characters (ECH) control to display 11315 incorrectly (patch by Alexander V Lukyanov).</li> 11316 11317 <li>correct escape sequences shown in terminfo for shifted 11318 editing keys. The modifier code was for the control key rather 11319 than the shift key.</li> 11320 </ul> 11321 11322 <h1><a name="xterm_153" id="xterm_153">Patch #153 - 2001/3/29 - 11323 XFree86 4.0.3</a></h1> 11324 11325 <ul> 11326 <li>increase PTYCHARLEN to 8 for os390, add some debugging 11327 traces for UTMP functions (patch by Paul Gilmartin).</li> 11328 11329 <li>correct an misplaced brace in 11330 <code>SelectionReceived()</code> (patch by Bruno Haible).</li> 11331 11332 <li>correct an assignment dropped in 11333 <code>SelectionReceived()</code> which made it not compile for 11334 wide-characters combined with debug traces.</li> 11335 11336 <li>correct typo, clarify description of 88- and 256-color 11337 controls (report by Bram Moolenaar).</li> 11338 11339 <li>correct a typo in ctlseqs.ms which caused DEC Locator 11340 control sequences using single quote "'" display grave "`" 11341 instead (reported by Paul Williams, apparently in patch 11342 #114).</li> 11343 </ul> 11344 11345 <h1><a name="xterm_152" id="xterm_152">Patch #152 - 2001/3/13 - 11346 XFree86 4.0.2</a></h1> 11347 11348 <ul> 11349 <li>correct index in inner loop in <code>VTInitI18N()</code> 11350 from patch #151 changes, which resulted in infinite loop under 11351 some conditions (report/analysis by Paul Gilmartin).</li> 11352 11353 <li>remove spurious "%|" from terminfo sgr capabilities 11354 (report/analysis by Adam M Costello, Debian #89222).</li> 11355 11356 <li>add shell script to adjust list of dynamic libraries linked 11357 by <code>resize</code> when building with the standalone 11358 configure script. Otherwise it uses the same list as for xterm, 11359 which is excessive.</li> 11360 11361 <li>fix a few compiler warnings reported by the 20010305 gcc 11362 snapshot.</li> 11363 </ul> 11364 11365 <h1><a name="xterm_151" id="xterm_151">Patch #151 - 2001/3/10 - 11366 XFree86 4.0.2</a></h1> 11367 11368 <ul> 11369 <li>alter the behaviour of selections in XTerm (patch by 11370 Juliusz Chroboczek). It is believed to follow the ICCCM + 11371 UTF8_STRING to the letter, both in UTF-8 and in eight-bit mode. 11372 From his description: 11373 <ul> 11374 <li>When compiled against XFree86 4.0.2, the patched XTerm 11375 will make the selection available as COMPOUND_TEXT, STRING 11376 or UTF8_STRING in both modes. It will request selections in 11377 the following order: 11378 <p>UTF-8 mode: UTF8_STRING, TEXT, COMPOUND_TEXT, 11379 STRING.<br> 11380 eight-bit mode: TEXT, COMPOUND_TEXT, UTF8_STRING, 11381 STRING.</p> 11382 </li> 11383 11384 <li>When compiled against an earlier version of XFree86 (or 11385 compiled with OPT_UTF8_API=0), it will still obey the 11386 ICCCM, but will neither request nor provide UTF8_STRING in 11387 eight-bit mode, and neither TEXT nor COMPOUND_TEXT in UTF-8 11388 mode.</li> 11389 11390 <li>For compatibility with previous versions of XTerm, a 11391 resource <code>i18nSelections</code> is provided, please 11392 see the manpage for details. However, due to an unexpected 11393 combination of ICCCM extensions by various bits and pieces 11394 of the libraries, interacting with previous versions of 11395 XTerm will work in many locales even without this flag. 11396 (Please do not set this resource to true by default, as 11397 this would violate the ICCCM.)</li> 11398 </ul> 11399 </li> 11400 11401 <li>improved error checking/reporting in VTInitI18N(), ensuring 11402 that lack of input method styles is treated distinctly from a 11403 mismatch.</li> 11404 11405 <li>remove an incorrect ifdef from patch #141 which suppressed 11406 overstriking to simulate bold font when xterm was compiled to 11407 support wide characters (report/analysis by Adam M Costello 11408 <amc@cs.berkeley.edu>, Debian #76404, Debian 11409 #77575).</li> 11410 11411 <li>modify <code>RequestResize()</code> function to 11412 save/restore window manager hints. Its call to 11413 <code>XtMakeResizeRequest()</code> had the undesirable 11414 side-effect of clearing window manager hints, e.g., when 11415 switching to 132-columns via DECCOLM escape sequence. Window 11416 manager hints make it simple to resize xterm in terms of 11417 character cells rather than pixels (reports by Christian 11418 Weisgerber, Debian #79939). 11419 <p>This applies to the normal configuration. When built with 11420 toolbar support, the hints are applied to a different widget 11421 level (more work will be needed to make hints work with the 11422 toolbar).</p> 11423 </li> 11424 11425 <li>fix a redefinition warning for resize.c on OpenBSD (patch 11426 by Christian Weisgerber).</li> 11427 11428 <li>change resource corresponding to <code>-T</code> option to 11429 match Xt library's <code>-title</code>, i.e., 11430 <code>.title</code> rather than <code>*title</code> so the 11431 command-line options are interchangeable as documented (Debian 11432 bug report #68843).</li> 11433 11434 <li>add script used from autoconf'd makefile for installing 11435 manpages, since recent XFree86 changing the way section numbers 11436 are represented makes the install dependent on extra 11437 scripts.</li> 11438 11439 <li>add configure check for freetype libraries and configure 11440 option --disable-freetype to override this feature.</li> 11441 11442 <li>modify some configure script macros to avoid using 11443 changequote(), which has been rendered useless in the latest 11444 autoconf alpha 2.49c</li> 11445 11446 <li>update config.guess, config.sub to 2001-2-13</li> 11447 11448 <li>remove redundant/contradictory __CYGWIN__ definitions from 11449 resize.c</li> 11450 11451 <li>correct manpage typo introduced by X11R6.5 resync.</li> 11452 </ul> 11453 11454 <p>Changes from XFree86 4.0.2:</p> 11455 11456 <ul> 11457 <li>add definition of <code>_POSIX_C_SOURCE</code> for Solaris 11458 to make this compile with <code>gcc -ansi -pedantic</code> 11459 (report by <mark@zang.com>.</li> 11460 </ul> 11461 11462 <h1><a name="xterm_150" id="xterm_150">Patch #150 - 2000/12/29 - 11463 XFree86 4.0.2</a></h1> 11464 11465 <ul> 11466 <li>move the binding for shifted keypad plus/minus, which 11467 invokes the <code>larger-vt-font()</code> and 11468 <code>smaller-vt-font()</code> actions, respectively, into the 11469 translations resource (suggested by Marius Gedminas 11470 <mgedmin@puni.osf.lt>).</li> 11471 11472 <li>modify configure script to support the 11473 <code>--program-prefix</code>, <code>--program-suffix</code> 11474 and <code>--program-transform-name</code> options (request by 11475 Alison Winters <alison@mirrabooka.com>).</li> 11476 11477 <li>fixes for wide/combining characters (Robert Brady): 11478 <ul> 11479 <li>fix a scrolling / combining characters display 11480 anomaly</li> 11481 11482 <li>fix a problem with double-width characters where if the 11483 primary font had no box-drawing characters, the right hand 11484 half of double-width characters was erased (reported by Yao 11485 Zhang <yzhang@sharemedia.com>).</li> 11486 11487 <li>fix special case of null byte for key handling in UTF-8 11488 locales.</li> 11489 </ul> 11490 </li> 11491 11492 <li>modify logic that compares sizes of normal and bold fonts 11493 to be more forgiving of the font server's choice of bold font 11494 which must match the normal font's size. Now 11495 <code>same_font_size()</code> compares the height of the fonts 11496 rather than individually ascent and descent, and allows the 11497 bold font to be one pixel smaller than the normal font 11498 (addresses a report by Alan Citterman <alan@mticket.com>, 11499 who says that something in patches <a href= 11500 "#xterm_146">#146</a> to <a href="#xterm_148">#148</a> made 11501 xterm more likely to overstrike bold fonts, and indirectly 11502 Debian bug report #76404, which reports the opposite).</li> 11503 11504 <li>make configure script use $CFLAGS and $CPPFLAGS 11505 consistently, including removing a chunk from configure.in 11506 which attempted to save/restore $CPPFLAGS while processing 11507 value set by the --x-includes option, but lost values set in an 11508 intervening AC_CHECK_HEADERS. This change modifies macros 11509 CF_ADD_CFLAGS, CF_ANSI_CC_CHECK and CF_X_TOOLKIT, as well as 11510 removing variables IMAKE_CFLAGS and X_CFLAGS from the generated 11511 makefile (the AC_CHECK_HEADERS problem was reported by Albert 11512 Chin-A-Young <china@thewrittenword.com<).</li> 11513 11514 <li>correct a comparison in SELECTWORD case of ComputeSelect(), 11515 which resulted in a word-selection wrapping past the first 11516 column without checking the first column's character class 11517 (reported by Christian Lacunza 11518 <celacunza@netscape.net></li> 11519 11520 <li>correct a logic in UTF-8 mode for selecting double-width 11521 characters; a combining character was omitted (patch by Markus 11522 Kuhn).</li> 11523 11524 <li>add feature to pop (raise) window when a bell is received 11525 (patch by Gael Roualland 11526 <gael.roualland@dial.oleane.com>).</li> 11527 11528 <li>add __NetBSD__ and __OpenBSD__ to special-case in 11529 xterm_io.h for USE_POSIX_TERMIOS definition (patch by Christian 11530 Weisgerber).</li> 11531 11532 <li>move special-case HPUX include for <sys/bsdtty.h> to 11533 xterm_io.h to define TIOCSLTC, making HAS_LTCHARS defined for 11534 HPUX 10.20 (report by Bruno Betro).</li> 11535 </ul> 11536 11537 <h1><a name="xterm_149" id="xterm_149">Patch #149 - 2000/12/6 - 11538 XFree86 4.0.1h</a></h1> 11539 11540 <ul> 11541 <li>restructured includes for <code>termios.h</code>, 11542 <code>termio.h</code> and related definitions for main.c, 11543 os2main.c, screen.c and resize.c so they will share equivalent 11544 definitions in a new header <code>xterm_io.h</code>. This is 11545 intended to solve some problems mainly for HPUX which appear to 11546 arise from inconsistent definitions for SIGWINCH- and 11547 HAS_LTCHARS-related symbols (reports by Bruno Betro, Jeremie 11548 Petit and Clint Olsen).</li> 11549 11550 <li>improve usability of double-width fonts by allowing normal 11551 fonts to be given as double-width (from a patch by Fabrice 11552 Bellard <bellard@email.enst.fr>).</li> 11553 11554 <li>correct a few compiler warnings in TRACE() macros for 11555 signed/unsigned variable differences (reported by Clint 11556 Olsen).</li> 11557 11558 <li>make configure script use $CFLAGS and $CPPFLAGS more 11559 consistently, i.e., by using CF_ADD_CFLAGS in CF_ANSI_CC 11560 macro.</li> 11561 11562 <li>expanded description of environment variables in 11563 manual-page.</li> 11564 11565 <li>modify OPT_TCAP_QUERY feature to always return the termcap 11566 or terminfo capability string in the response, and to 11567 read/write the names in hexadecimal form to allow for the 11568 special case of termcap's <code>k;</code> name (patch by Bram 11569 Moolenaar).</li> 11570 11571 <li>add OPT_SAME_NAME and OPT_TCAP_QUERY to xtermcfg.hin, so 11572 the corresponding configure options work (patch by Bram 11573 Moolenaar).</li> 11574 11575 <li>resync with XFree86 4.0.1g: 11576 <ul> 11577 <li>Rewrite Xft library for Render extension/core text and 11578 font management Change xterm to use new interface (Keith 11579 Packard).</li> 11580 </ul> 11581 </li> 11582 </ul> 11583 11584 <h1><a name="xterm_148" id="xterm_148">Patch #148 - 2000/10/31 - 11585 XFree86 4.0.1d</a></h1> 11586 11587 <ul> 11588 <li>document logfile options in man-page.</li> 11589 11590 <li>correct spelling of <code>-samename</code> option in help 11591 message.</li> 11592 11593 <li>add configure script option 11594 <code>--enable-tcap-query</code> (request by Bram 11595 Moolenaar).</li> 11596 11597 <li>add a "Co" or "colors" entry to the OPT_TCAP_QUERY feature 11598 (patch by Bram Moolenaar).</li> 11599 11600 <li>patch by Kiyokazu Suto <suto@ks-and-ks.ne.jp>: 11601 <ul> 11602 <li>add support for bold font for double width characters. 11603 The font name may be specified with the command line option 11604 <code>-fwb</code> or with resource 11605 <code>wideBoldFont</code> (class 11606 <code>WideBoldFont</code>).</li> 11607 11608 <li>correct underlining of double width character string, 11609 which was drawn only half width.</li> 11610 11611 <li>correct binary search of precomposed character table, 11612 which may return wrong result when <code>int</code> is just 11613 32 bits.</li> 11614 </ul> 11615 </li> 11616 11617 <li>some changes to align terminfo with ncurses 5.2: 11618 <ul> 11619 <li>remove xtermm description, retaining xterm-mono since 11620 the former conflicts with ncurses.</li> 11621 11622 <li>modify initialization and reset strings to avoid 11623 putting the save/restore cursor operations bracketing 11624 changes to video attributes, since the changes could be 11625 lost when the cursor is restored. This affects xterm-r6 and 11626 xterm-8bit (the xterm-xfree86 entry uses the soft-reset 11627 feature which resets scrolling margins and origin mode 11628 without requiring us to save/restore the cursor 11629 position).</li> 11630 11631 <li>make a few entries explicitly inherit from 11632 xterm-xfree86 rather than xterm: xterm-rep, xterm-xmc, 11633 xterm-nrc</li> 11634 </ul> 11635 </li> 11636 11637 <li>ensure that sign-extension does not affect 11638 <code>ctype</code> macros by using <code>CharOf()</code> macro 11639 to coerce the parameter to an unsigned char.</li> 11640 11641 <li>resync with XFree86 4.0.1d: 11642 <ul> 11643 <li>Add primitive support in xterm for Xft based fonts 11644 (Keith Packard). The changes are ifdef'd with 11645 <code>-DXRENDERFONT</code>.</li> 11646 </ul> 11647 </li> 11648 </ul> 11649 11650 <h1><a name="xterm_147" id="xterm_147">Patch #147 - 2000/10/26 - 11651 XFree86 4.0.1c</a></h1> 11652 11653 <ul> 11654 <li>correct implementation of <code>ptyInitialErase</code>: the 11655 value assigned to <code>initial_erase</code> was for the 11656 control terminal, which is correct as far as it goes. But there 11657 was no following test for the pseudo-terminal's erase value, 11658 which would overwrite the default obtained from the control 11659 terminal (reported by Christian Weisgerber 11660 <naddy@mips.inka.de>).</li> 11661 11662 <li>modify check for printable-characters in OSC string to use 11663 xterm's ansi_table rather than isprint() macro, to isolate this 11664 check from locale settings. This fixes a problem using 8-bit 11665 characters to set the title (reported by Ricardas Cepas 11666 <rch@richard.eu.org>).</li> 11667 11668 <li>modify sample scripts to check for printf before print, 11669 since the latter is not as well standardized (e.g., on 11670 Linux).</li> 11671 11672 <li>updated config.sub, config.guess to reflect changes on 11673 subversions.gnu.org</li> 11674 </ul> 11675 11676 <h1><a name="xterm_146" id="xterm_146">Patch #146 - 2000/9/12 - 11677 XFree86 4.0.1c</a></h1> 11678 11679 <ul> 11680 <li>correct two instances overlooked from patch #141 which 11681 assumed UTF-8 mode without checking, causing a core dump in 11682 non-UTF-8 mode (one instance was reported by Tommi Virtanen 11683 <tv@debian.org>).</li> 11684 11685 <li>correct a problem selecting from the scrollback buffer in 11686 UTF-8 mode by changing remaining getXtermCell() calls to 11687 XTERM_CELL() as in the non-UTF-8 cases (report by Markus Kuhn, 11688 patch by Robert Brady).</li> 11689 </ul> 11690 11691 <h1><a name="xterm_145" id="xterm_145">Patch #145 - 2000/9/11 - 11692 XFree86 4.0.1c</a></h1> 11693 11694 <ul> 11695 <li>changes for UTF-8 configuration (Robert Brady): 11696 <ul> 11697 <li>doublewide characters don't lose their accents when the 11698 cursor moves onto or from them (a visual bug)</li> 11699 11700 <li>fix logic in addXtermCombining, which mean that if the 11701 low byte of a cell's first combining char was 0, a 11702 following combining char would go into combining slot 1, 11703 not 2.</li> 11704 11705 <li>modify logic for cut-buffers so UTF-8 data is first 11706 converted to Latin1.</li> 11707 11708 <li>collapse surrogates, 0xfffe, 0xffff to UCS_REPL.</li> 11709 11710 <li>modify to allow xterm to to show combining characters 11711 attached to doublewidth characters.</li> 11712 11713 <li>correct bug in linewrap with -u8 option (reported by 11714 Andreas Koenig <andreas.koenig@anima.de>).</li> 11715 </ul> 11716 </li> 11717 11718 <li>several changes to PTY logic (based on request by Tim Ryan 11719 <timryan@nortelnetworks.com>). 11720 <ul> 11721 <li>modify treatment of <code>-S</code> option to to make 11722 it work with Unix98 PTY's.</li> 11723 11724 <li>restore sense of IsPts flag in <code>get_pty()</code>, 11725 which was lost in Unix98 changes.</li> 11726 11727 <li>use new functions <code>my_pty_id()</code> and 11728 <code>my_pty_name()</code> to simplify/fix strings used for 11729 utmp, wtmp identifiers.</li> 11730 11731 <li>simplify <code>get_pty()</code> function, making it 11732 have a single return point so its inputs/outputs can be 11733 identified.</li> 11734 </ul> 11735 </li> 11736 11737 <li>update config.guess and config.sub and scripts to my 11738 20000819 patch, adding cases for OS/2 EMX.</li> 11739 11740 <li>add special case for os390 compiler options to configure 11741 script (patch by Paul Gilmartin)</li> 11742 11743 <li>fix some unused-variable compiler warnings (reported by 11744 Zdenek Sekera).</li> 11745 11746 <li>split-out some string functions into xstrings.c, to use 11747 them more consistently among main.c, os2main.c and 11748 resize.c</li> 11749 11750 <li>align termcap/terminfo files, adding entries to make them 11751 match. The termcap entries are necessarily less complete than 11752 the terminfo, to fit within 1023 character per entry.</li> 11753 11754 <li>add terminfo entry for xterm-sco (SCO function keys).</li> 11755 11756 <li>modify <code>same_font_name()</code> to properly handle 11757 wildcard introduced in <code>bold_font_name()</code>, making 11758 comparison for different fonts succeed when only the normal 11759 font is specified. This is needed to decide if 1-pixel offset 11760 should be used. (reported in a newsgroup by Bart Oldeman 11761 <enbeo@enbeo.resnet.bris.ac.uk>)</li> 11762 11763 <li>correct preprocessor line for OPT_WIDE_CHARS in 11764 drawXtermText() from patch #141 which resulted in overstriking 11765 for bold fonts not working.</li> 11766 11767 <li>correct Imakefile from 4.0.1c resync so UTF-8 modules are 11768 in UTF8SRC, UTF8OBJ lists, allowing build without UTF-8 11769 support.</li> 11770 </ul> 11771 11772 <h1><a name="xterm_144" id="xterm_144">Patch #144 - 2000/8/23 - 11773 XFree86 4.0.1b</a></h1> 11774 11775 <ul> 11776 <li>remove a spurious assignment in ScreenWrite() from Robert 11777 Brady's patch which set a null at the "end" of the buffer to be 11778 written. That made the autowrap feature write a blank in the 11779 first column for the non-UTF-8 configuration, rather than the 11780 actual character (reported by Alan Citterman 11781 <alan@mticket.com>).</li> 11782 </ul> 11783 11784 <h1><a name="xterm_143" id="xterm_143">Patch #143 - 2000/8/19 - 11785 XFree86 4.0.1b</a></h1> 11786 11787 <ul> 11788 <li>add a check to ensure that <code>-class</code> command-line 11789 option is not confused with <code>-c</code> (reported by Paul 11790 Townsend <aab@aab.cc.purdue.edu>).</li> 11791 </ul> 11792 11793 <h1><a name="xterm_142" id="xterm_142">Patch #142 - 2000/8/18 - 11794 XFree86 4.0.1b</a></h1> 11795 11796 <ul> 11797 <li>correction to precompose scripts, so 0061 + 0300 will now 11798 be really be displayed as 00C0 (patch by Robert Brady 11799 <robert@susu.org.uk>).</li> 11800 11801 <li>correct macro ClassSelects() in button.c, used to hide 11802 ifdef's for OPT_WIDE_CHARS in patch #141 (reported by Andreas 11803 Paul <paula@informatik.tu-muenchen.de>).</li> 11804 11805 <li>change wcwidth.h to include stddef.h rather than wchar.h, 11806 which is not present on OpenBSD and FreeBSD (reported by 11807 Christian Weisgerber and Bram Moolenaar).</li> 11808 11809 <li>newer config.sub and config.guess, from lynx 11810 2.8.4dev.7</li> 11811 </ul> 11812 11813 <h1><a name="xterm_141" id="xterm_141">Patch #141 - 2000/8/14 - 11814 XFree86 4.0.1b</a></h1> 11815 11816 <ul> 11817 <li>changes for doublewidth and combining characters, from 11818 http://www.ecs.soton.ac.uk/~rwb197/xterm/ (integrated patch by 11819 Robert Brady). In this context, doublewidth refers to 16-bit 11820 character sets which may have glyphs occupying two cells.</li> 11821 11822 <li>add command-line option <code>-class</code>, which allows 11823 one to override xterm's resource class. Also add resource file 11824 <code>UXTerm.ad</code>, which simplifies using xterm for both 11825 8-bit character sets and UTF-8.</li> 11826 11827 <li>fixes/improvements to OPT_TCAP_QUERY logic (patches by Bram 11828 Moolenaar, Stephen P Wall).</li> 11829 </ul> 11830 11831 <h1><a name="xterm_140" id="xterm_140">Patch #140 - 2000/7/23 - 11832 XFree86 4.0.1</a></h1> 11833 11834 <ul> 11835 <li>modify Makefile.in to circumvent GNU make's built-in suffix 11836 rule for ".sh" which confuses install.sh with the "make 11837 install" target (report/patch by Paul Gilmartin).</li> 11838 11839 <li>implement an experimental control sequence which an 11840 application may use to query the terminal to determine what 11841 sequence of characters it would send for a given function key. 11842 This is ifdef'd with OPT_TCAP_QUERY (request by Bram 11843 Moolenaar).</li> 11844 11845 <li>add /usr/local to search path in CF_X_ATHENA configure 11846 macro to build with Xaw3d on OpenBSD (patch by Christian 11847 Weisgerber).</li> 11848 11849 <li>add missing <code>#undef HAVE_TERMIO_C_ISPEED</code> to 11850 xtermcfg.hin, omitted in patch #133 fix for IRIX 6.5 baudrate 11851 (report by Alain Filbois <Alain.Filbois@loria.fr>).</li> 11852 11853 <li>correct a few errors in xterm.man: font in filename example 11854 for Tektronix emulation, and description of -nul/+nul 11855 command-line options (report by Eric Fischer 11856 <enf@pobox.com>).</li> 11857 11858 <li>update config.guess and config.sub, from tin and lynx.</li> 11859 </ul> 11860 11861 <h1><a name="xterm_139" id="xterm_139">Patch #139 - 2000/6/17 - 11862 XFree86 4.0d</a></h1> 11863 11864 <ul> 11865 <li>back out change to <code>-name</code> command-line option, 11866 restoring its original behavior (as noted by David Madore, the 11867 correct interpretation of this option is the application 11868 instance rather than the application class).</li> 11869 </ul> 11870 11871 <h1><a name="xterm_138" id="xterm_138">Patch #138 - 2000/6/15 - 11872 XFree86 4.0c</a></h1> 11873 11874 <ul> 11875 <li>workaround for fixed fonts which are generated from Unicode 11876 fonts: they omit glyphs for some xterm's less-used line-drawing 11877 characters, which caused xterm to set a flag telling it to use 11878 only its internal line-drawing characters. Do not set the flag 11879 (it can be set from the popup menu), and xterm will generate 11880 only the line-drawing glyphs which actually are missing.<br> 11881 Otherwise, when used for large fonts, xterm may generate a 11882 2-pixel wide line, which can leave dots on the screen.</li> 11883 11884 <li>restore first line of 256colres.pl, omitted in 4.0c 11885 diffs.</li> 11886 </ul> 11887 11888 <h1><a name="xterm_137" id="xterm_137">Patch #137 - 2000/6/10 - 11889 XFree86 4.0b</a></h1> 11890 11891 <ul> 11892 <li>make command-line <code>-name</code> option work as 11893 documented. Apparently this was lost in X11R5 when coding to 11894 use <code>XtAppInitialize</code>.</li> 11895 11896 <li>limit numeric parameters of control sequences to 65535 to 11897 simplify checks for numeric overflow.</li> 11898 11899 <li>change index into UDK list to unsigned to guard against 11900 numeric overflow making the index negative (Taneli Huuskonen 11901 <huuskone@cc.helsinki.fi>).</li> 11902 11903 <li>change <code>sun function-keys</code> resource name to 11904 <code>sunFunctionKeys</code> to work around redefinition of the 11905 token <code>sun</code> by xrdb on Solaris. Similarly, renamed 11906 resource <code>sun keyboard</code> to 11907 <code>sunKeyboard</code> (Stephen P Wall).</li> 11908 11909 <li>change similar resource names for HP and SCO to avoid 11910 potential conflict with xrdb symbols on other systems, as well 11911 as for consistency.</li> 11912 11913 <li>reorganized the install targets in the autoconf'd Makefile, 11914 adding install-app, install-bin, install-dirs and install-man. 11915 The app-defaults class can be overridden by setting the make 11916 variable 'CLASS', simplifying customization of xterm as a 11917 Unicode terminal, e.g., CLASS=UXTerm.</li> 11918 11919 <li>add limit checks to <code>ClearInLine()</code>, 11920 <code>ScrnInsertChar()</code>, <code>ScrnDeleteChar()</code> to 11921 correct potential out-of-bounds indexing (prompted by Debian 11922 bug report #64713, which reported a problem with ICH escape 11923 sequences).</li> 11924 11925 <li>updates to config.sub and config.guess Kevin Buettner 11926 <kev@primenet.com> for elf64_ia64 Bernd Kuemmerlen 11927 <bkuemmer@mevis.de> and MacOS X.</li> 11928 11929 <li>for os390, add check for errno set to ENODEV on failure to 11930 open /dev/tty when there is no controlling terminal (patch by 11931 Paul Gilmartin).</li> 11932 11933 <li>fixes for building on Digital Unix 4.0 and AIX 4.2 (patch 11934 from H Merijn Brand <h.m.brand@hccnet.nl>).</li> 11935 11936 <li>modify DECRQSS reply for DECSCL to additionally report if 11937 the terminal is set for 8-bit controls.</li> 11938 </ul> 11939 11940 <h1><a name="xterm_136" id="xterm_136">Patch #136 - 2000/6/3 - 11941 XFree86 4.0b</a></h1> 11942 11943 <ul> 11944 <li>add a resource (<code>limitResize</code>) limiting resizing 11945 via the CSI 4 t and CSI 8 t sequences.</li> 11946 11947 <li>ignore out-of-bounds resize requests, i.e., where 11948 sign-extension or truncation of the parameters would 11949 occur.</li> 11950 </ul> 11951 11952 <h1><a name="xterm_135" id="xterm_135">Patch #135 - 2000/5/29 - 11953 XFree86 4.0b</a></h1> 11954 11955 <ul> 11956 <li>remove code introduced in #134 which made some backgrounds 11957 bold.</li> 11958 11959 <li>minor correction to format of updated $TERMCAP when adding 11960 <code>kb</code> capability for <code>ptyInitialErase</code> 11961 logic.</li> 11962 11963 <li>improved test for SVR4 definition.</li> 11964 </ul> 11965 11966 <h1><a name="xterm_134" id="xterm_134">Patch #134 - 2000/5/28 - 11967 XFree86 4.0b</a></h1> 11968 11969 <ul> 11970 <li>update URL's and mailing addresses, moved to 11971 http://dickey.his.com and dickey@herndon4.his.com</li> 11972 11973 <li>correct missing quotes in CF_TTY_GROUP configure script 11974 macro in case the script is run in batch mode.</li> 11975 11976 <li>modify ownership-check of log file to ignore the group 11977 ownership. Otherwise xterm cannot create logfiles in 11978 directories with set-gid permissions.</li> 11979 11980 <li>simplify the logic that reads termcap data.</li> 11981 11982 <li>add fallback definition for B9600 in case line speed 11983 definition for 38400 is missing (report by Jack J Woehr 11984 <jwoehr@ibm.net>, for OpenBSD 2.6).</li> 11985 11986 <li>fix: Set highlightColor, and select a region containing the 11987 text cursor. If the window loses focus, the cursor becomes 11988 hollow, with the region inside the cursor being 11989 background/foreground, unlike the rest of the selection, which 11990 is foreground/highlight (patch by Ross Paterson 11991 <ross@soi.city.ac.uk>).</li> 11992 11993 <li>add configure script tests to define SVR4, SYSV and 11994 USE_POSIX_WAIT, which enables xterm to compile on Solaris 7 and 11995 SCO Openserver without imake, though there are still a few 11996 features for the latter which require <code>sco</code> to be 11997 predefined.</li> 11998 11999 <li>patches from Stephen P Wall: 12000 <ul> 12001 <li>add support for two Sun-specific function keys. These 12002 keys are labeled F11 and F12 on Sun Type 5 keyboards, but 12003 return SunXK_F36 and SunXK_F37. Support will only be 12004 compiled in if the header file <X11/Sunkeysym.h> 12005 exists and contains the appropriate symbol definitions. The 12006 keycodes for the DEC keycodes were arbitrary unused codes, 12007 but the ones for the Sun keycodes are what cmdtool and 12008 shelltool actually send.</li> 12009 12010 <li>add <code>colorRV</code> and <code>colorRVMode</code> 12011 resources to allow specifying a color to use for reverse 12012 video, similar to the existing UL, BD, and BL modes.</li> 12013 12014 <li>add <code>alwaysUseMods</code> resource, to override 12015 check if <code>alt</code> or <code>meta</code> modifiers 12016 are used in <code>translations</code> resource. Revamped 12017 the code to calculate the modifier value, and included Meta 12018 if alwaysUseMods is TRUE, using values 9-16.</li> 12019 </ul> 12020 </li> 12021 12022 <li>fixes for os390 (Paul Gilmartin): 12023 <ul> 12024 <li>regularize the definition of CONTROL() and remove an 12025 acknowledged "trial and error" table.</li> 12026 12027 <li>translate "^?" into A2E(0177) which is the EBCDIC "DEL" 12028 rather than plain 0177 which is the EBCDIC quotation 12029 mark.</li> 12030 12031 <li>modify <code>xtermMissingChar()</code> so that EBCDIC 12032 codes 128-159 are not rendered as blanks by X server 12033 running on Solaris, which sees those as control 12034 characters.</li> 12035 12036 <li>make debugging traces (configure --enable-trace) work 12037 properly with EBCDIC.</li> 12038 </ul> 12039 </li> 12040 </ul> 12041 12042 <h1><a name="xterm_133" id="xterm_133">Patch #133 - 2000/5/2 - 12043 XFree86 4.0a</a></h1> 12044 12045 <ul> 12046 <li>add substitutions in autoconf'd Makefile for CPPFLAGS, 12047 LDFLAGS and AWK (reported by Neil Bird).</li> 12048 12049 <li>correct uninitialized <code>childstat</code> variable from 12050 patch #131 in <code>creat_as()</code> function, which caused 12051 logging to not work on Solaris, whose <code>waitpid()</code> 12052 function does not initialize its parameter. Add check for EINTR 12053 on return from <code>waitpid()</code> as well (reported by Neil 12054 Bird <neil.bird@rdel.co.uk>).</li> 12055 12056 <li>remove a redundant check for working <code>setuid()</code> 12057 function introduced in patch #132. Greg Smith reports that this 12058 does not work as intended on os390.</li> 12059 12060 <li>change line speed from 9600bd to 38400bd, to accommodate 12061 people who mistakenly use $TERM set to <em>vt100</em>, to 12062 reduce the effect of padding associated with this terminal 12063 type.</li> 12064 12065 <li>add configure script check for IRIX 6.5's redefinition of 12066 baud rates associated with <code>struct termio</code>, to 12067 correct a situation where the baud rate was initialized to zero 12068 (reported by Andrew Isaacson <adi@lcse.umn.edu>).</li> 12069 12070 <li>remove unused configure script check for VDISABLE.</li> 12071 </ul> 12072 12073 <h1><a name="xterm_132" id="xterm_132">Patch #132 - 2000/4/11 - 12074 XFree86 4.0a</a></h1> 12075 12076 <ul> 12077 <li>undo an incorrect change from patch #113 caused the right 12078 scrollbar to be positioned incorrectly when re-enabling it 12079 (analysis by D Roland Walker).</li> 12080 12081 <li>add ctrlFKeys resource, replacing constant for adjusting 12082 control-F1 to control-F12 to VT220-style F10-F20. The resource 12083 changes the constant 12 to a default value of 10 (request by 12084 Jim Knoble <jmknoble@pobox.com>).</li> 12085 12086 <li>correct ifdef'ing for conflict between definitions in AIX's 12087 <sys/select.h> and <X11/Xpoll.h> (reported by Clint 12088 Olsen).</li> 12089 12090 <li>add checks for return-values of getutid(), initgroups() and 12091 setuid() in main.c, as well as modifying ifdef's for __osf__ to 12092 include tty-group and WTMP logic (adapted from patch by Paul 12093 Szabo <psz@maths.usyd.edu.au>)</li> 12094 12095 <li>modify resize.c to build and work on os390 (uses EBCDIC) 12096 (adapted from patch by Phil Sidler 12097 <Phil.Sidler@airborne.com>)</li> 12098 12099 <li>use Ires(), Bres() and Sres() macros to simplify resource 12100 list in charproc.c</li> 12101 12102 <li>resync with XFree86 4.0a: 12103 <ul> 12104 <li>correct a typo in os2main.c (Holger Veit, from 12105 4.0a).</li> 12106 </ul> 12107 </li> 12108 </ul> 12109 12110 <h1><a name="xterm_131" id="xterm_131">Patch #131 - 2000/3/3 - 12111 XFree86 3.9.18b</a></h1> 12112 12113 <ul> 12114 <li>improve logfile security (integrated patch by Branden 12115 Robinson) 12116 <ul> 12117 <li>make the <code>creat_as()</code> function more strict 12118 by using O_EXCL rather than O_APPEND.</li> 12119 12120 <li>fixes to make DEBUG ifdef's compile/run, including 12121 making the debug logfile more unique by appending a 12122 timestamp to its name.</li> 12123 12124 <li>include <term.h> in resize.c, to fix a 12125 missing-prototype warning.</li> 12126 </ul> 12127 </li> 12128 12129 <li>modified <code>creat_as()</code> a little more, retaining 12130 the ability to append to a logfile If the user specifies the 12131 name. Also, check if the opened file (which <a href= 12132 "#xterm_130">patch #130</a> ensures is owned by the effective 12133 user) is not writable by other users.</li> 12134 12135 <li>use <code>creat_as()</code> logic to make tek4014 12136 screen-copy more secure (noted by Branden Robinson).</li> 12137 12138 <li>ifdef'd some of Branden's changes to build/work on older 12139 machines.</li> 12140 12141 <li>correct missing initialization of the <code>.mode</code> 12142 flag in <code>ColorRes</code> struct, from patch #129. This 12143 worked on Linux because <code>malloc()</code> zeroes memory on 12144 that platform (reported by Christian Weisgerber).</li> 12145 12146 <li>modify logic for <code>deleteIsDEL</code> resource so it 12147 has internally 3 states: unspecified, true and false. If 12148 unspecified, the keyboard type determines whether the Delete 12149 key transmits <code><ESC>[3~</code> or <code>\177</code>, 12150 and the popup menu entry reflects the internal state. 12151 Otherwise, the popup menu entry overrides the keyboard type 12152 (suggested by Dr Werner Fink, to make it simpler to set 12153 resources that imitate the legacy X11R6 xterm).</li> 12154 </ul> 12155 12156 <h1><a name="xterm_130" id="xterm_130">Patch #130 - 2000/3/1 - 12157 XFree86 3.9.18a</a></h1> 12158 12159 <ul> 12160 <li>modify <code>scroll-forw()</code> and 12161 <code>scroll-back()</code> actions, adding a third parameter 12162 which will direct xterm to ignore the action when mouse 12163 reporting is enabled. This is needed for the wheel mouse to be 12164 used to report to the application rather than scroll the 12165 window.</li> 12166 12167 <li>add menu entry and action to allow disabling xterm's 12168 assumption that the current font contains line-drawing 12169 characters if the font cells 1-31 are nonempty. Some fonts may 12170 have other characters (reported by Bruno Betro 12171 <bruno@iami.mi.cnr.it>).</li> 12172 12173 <li>add a check in <code>creat_as()</code> to ensure that the 12174 user really owns the logfile that has been opened.</li> 12175 12176 <li>add logic to implement SCO function-keys. (This is really 12177 incomplete, since I intend to revisit this and make xterm able 12178 to emulate scoansi better than just the function-keys).</li> 12179 12180 <li>add configure script option --enable-sco-fkeys, minor 12181 related fixes (patch by Dr Werner Fink).</li> 12182 12183 <li>fix typos in ctlseqs.ms (reported by Bram Moolenaar)</li> 12184 12185 <li>fix typo in sinstall.sh default for $TST_PROG (reported by 12186 Paul Gilmartin <pg@sweng.stortek.com>)</li> 12187 </ul> 12188 12189 <h1><a name="xterm_129" id="xterm_129">Patch #129 - 2000/2/26 - 12190 XFree86 3.9.18a</a></h1> 12191 12192 <ul> 12193 <li>improve initialization of ANSI colors by delaying 12194 allocation until each color is first used.</li> 12195 12196 <li>remove ifdef that prevented colorBD/colorUL/colorBL 12197 resources from working when 256-color configuration was built 12198 (reported by Todd Larason).</li> 12199 12200 <li>fix some minor inconsistencies in terminfo (Debian 12201 #58530).</li> 12202 </ul> 12203 12204 <h1><a name="xterm_128" id="xterm_128">Patch #128 - 2000/2/17 - 12205 XFree86 3.9.18</a></h1> 12206 12207 <ul> 12208 <li>correct logic for <code>oldXtermFKeys</code> resource, 12209 fixes a core dump when attempting to set it from the 12210 command-line (reported by Dr Werner Fink).</li> 12211 12212 <li>correct ifdef for meta-sends-escap so configure 12213 --disable-num-lock builds.</li> 12214 </ul> 12215 12216 <h1><a name="xterm_127" id="xterm_127">Patch #127 - 2000/2/12 - 12217 XFree86 3.9.17e</a></h1> 12218 12219 <ul> 12220 <li>add resource, popup menu entry and control sequence to 12221 allow changing the Delete key to send either DEL or the 12222 VT220-style Remove escape sequence.</li> 12223 12224 <li>remove logic for metaSendsEscape that would allow xterm to 12225 send <code><ESC>[3~</code> before a function key that 12226 would begin with <code><ESC>[3~</code> (request by 12227 Christian Weisgerber).</li> 12228 12229 <li>add missing action and documentation for 12230 meta-sends-escape.</li> 12231 12232 <li>correct a few typos in ctlseqs.ms (incorrect code for Cyan 12233 color)</li> 12234 </ul> 12235 12236 <h1><a name="xterm_126" id="xterm_126">Patch #126 - 2000/2/8 - 12237 XFree86 3.9.17c</a></h1> 12238 12239 <ul> 12240 <li>ensure that xterm will automatically activate the UTF-8 12241 mode whenever the name of the locale environment variable 12242 suggests that a UTF-8 locale is in use (patch by Markus Kuhn). 12243 This will help that by simply setting LC_CTYPE an entire system 12244 can be switched over to UTF-8, without users having to remember 12245 the UTF-8 command line options ("-u8", etc.) of the various 12246 applications. Command line options and X resource entries can 12247 still be used to override this default choice.</li> 12248 12249 <li>add old function-keys control sequences and popup menu 12250 entry, for compatibility with legacy X11R6 xterm.</li> 12251 12252 <li>revert translation of editing keypad "Delete" key to legacy 12253 \177.</li> 12254 12255 <li>simplify the color-resource data expressions with macro 12256 COLOR_RES, for later use in restructuring color 12257 initialization.</li> 12258 12259 <li>change encoding of wheel mouse (buttons 4 and 5) to avoid 12260 conflict with legacy mouse modifiers (suggested by Bram 12261 Moolenaar).</li> 12262 </ul> 12263 12264 <h1><a name="xterm_125" id="xterm_125">Patch #125 - 2000/1/31 - 12265 XFree86 3.9.17c</a></h1> 12266 12267 <ul> 12268 <li>make this work on OpenVMS (integrated patch by David 12269 Mathog).</li> 12270 12271 <li>rename some functions, e.g., <code>Index</code> to 12272 <code>xtermIndex</code> so that ports such as VMS which link 12273 externals ignoring case will not have library conflicts 12274 (reported by David Mathog).</li> 12275 12276 <li>correct logic of <code>do_reversevideo()</code>, which did 12277 not update the corresponding popup menu check mark (reported by 12278 David Mathog, this was a detail overlooked in patch #94).</li> 12279 12280 <li>change TRACE macro so semicolon is not within definition, 12281 making <em>indent</em> and similar programs work better.</li> 12282 12283 <li>add <code>depend</code> rule to Makefile.in</li> 12284 12285 <li>modify logic of boldColors resource to suppress it if an 12286 extended color control has been used, e.g., for 88-color or 12287 256-color mode (patch by Todd Larason).</li> 12288 12289 <li>revise logic that handles menus and input translation for 12290 keyboard type so only one can be selected at a time.</li> 12291 12292 <li>restore kdch1=\177 for the Sun function-key type, and make 12293 the the Delete key send DEL (\177) if the oldXtermFKeys 12294 resource is set.</li> 12295 12296 <li>rephrase logic and ifdef's for POSIX VDISABLE to avoid 12297 preprocessor expression that will not compile on NetBSD/x86 12298 1.4.1 (reported by Takaaki Nomura 12299 <amadeus@yk.rim.or.jp>).</li> 12300 </ul> 12301 12302 <h1><a name="xterm_124" id="xterm_124">Patch #124 - 2000/1/27 - 12303 XFree86 3.9.17b</a></h1> 12304 12305 <ul> 12306 <li>change coding of editing keypad's "Delete" key to 12307 <escape>[3~, in the default (Sun/PC) keyboard mode. This 12308 makes the terminfo kdch1 capability independent of the coding 12309 of the backarrow key, which sends either backspace (8) or DEL 12310 (127). The reason for doing this (compatibility with the 12311 <em>screen</em> program) outweighs the choice of DEL (127) 12312 which was used in X11R5/X11R6 xterms. The <em>screen</em> 12313 program translates whatever matches kdch1 into 12314 <escape>[3~, even if it happens to be the stty erase 12315 character.</li> 12316 12317 <li>add encoding for control/?, to work around xmodmap or key 12318 translations which may confuse backspace and delete. A 12319 control/? will send DEL (127), and a control/H will of course 12320 send backspace (8).</li> 12321 12322 <li>add encoding for kcbt to <escape>[Z (fixes Debian 12323 #54840).</li> 12324 12325 <li>minor correction to logic that encodes Sun and DEC function 12326 keys to avoid sending an escape sequence if the key symbol is 12327 not found in xterm's lookup table.</li> 12328 12329 <li>simplify ifdef's in main.c for POSIX VDISABLE so the "^-" 12330 pattern is more likely to be implemented when <em>imake</em> 12331 configures xterm (fixes Debian #55105).</li> 12332 12333 <li>change manpage to make it clearer what codes are sent by 12334 the backarrow key.</li> 12335 </ul> 12336 12337 <h1><a name="xterm_123" id="xterm_123">Patch #123 - 2000/1/22 - 12338 XFree86 3.9.17a</a></h1> 12339 12340 <ul> 12341 <li>add a note reserving OSC 51 for use in Emacs shell (request 12342 by Rob Mayoff <mayoff@dqd.com>).</li> 12343 12344 <li>correct a missing backslash in xterm-vt220 termcap.</li> 12345 12346 <li>cleanup remaining quoted includes, preferring bracketed 12347 form.</li> 12348 12349 <li>minor configure-script macro updates from tin and 12350 vile.</li> 12351 12352 <li>add configure-script option for using utempter library, 12353 adapted from Redhat 6.1 patch for XFree86 3.3.5</li> 12354 12355 <li>resync with XFree86 3.9.17a: 12356 <ul> 12357 <li>correction to QNX support (Frank Guangxin Liu)</li> 12358 12359 <li>some cosmetic changes that did not correct any reported 12360 problems.</li> 12361 </ul> 12362 </li> 12363 </ul> 12364 12365 <h1><a name="xterm_122" id="xterm_122">Patch #122 - 1999/12/28 - 12366 XFree86 3.9.16f</a></h1> 12367 12368 <ul> 12369 <li>move the suggested wheel-mouse button translations into 12370 charproc.c to simplify customization. Correct some minor logic 12371 errors in the support for buttons 4 and 5, used for wheel mice 12372 (reported by Bram Moolenaar).</li> 12373 12374 <li>implement <em>metaSendsEscape</em> resource, with 12375 corresponding control sequence and menu entry. Like 12376 <em>eightBitInput</em>, this causes xterm to send ESC prefixing 12377 the given key, but applies to all keys and is independent of 12378 the 8-bit/7-bit terminal setting. (requests by Alexander V 12379 Lukyanov and Marc Feeley).</li> 12380 12381 <li>correct potential indexing with negative subscript in 12382 udk_lookup(), (reported by Ian Collier 12383 <Ian.Collier@comlab.ox.ac.uk>).</li> 12384 12385 <li>modify configure script that sets TERMINFO_DIR to use 12386 ${prefix} rather than /usr if the --prefix option was specified 12387 (request by Zdenek Sekera <zs@sgi.com>).</li> 12388 12389 <li>modify checks for repeat-character control sequence to test 12390 the character class against xterm's state table, rather than 12391 the isprint() macro (patch by Alexander V Lukyanov).</li> 12392 12393 <li>change several functions to macros to improve speed</li> 12394 12395 <li>two corrections to simulation of bold font via 12396 overstriking: 12397 <ul> 12398 <li>use clipping to avoid leaving trash at end of the text, 12399 and</li> 12400 12401 <li>add brackets so wide-character logic does not 12402 fall-through into the overstriking logic (reported by Marc 12403 Feeley <feeley@IRO.UMontreal.CA>)</li> 12404 </ul> 12405 </li> 12406 12407 <li>add several entries to termcap file to make it have the 12408 same set of aliases as the terminfo file.</li> 12409 12410 <li>scale the color values used for xterm-256color terminfo 12411 entry to 0..1000, as expected by ncurses.</li> 12412 12413 <li>change xterm-r6 terminfo definitions for F1-F4 to match 12414 program.</li> 12415 12416 <li>Add QNX/Neutrino support (Frank Guangxin Liu 12417 <frank@ctcqnx4.ctc.cummins.com>)</li> 12418 </ul> 12419 12420 <h1><a name="xterm_121" id="xterm_121">Patch #121 - 1999/11/14 - 12421 XFree86 3.9.16c</a></h1> 12422 12423 <ul> 12424 <li>change label on "Sun/PC Keyboard" popup menu entry to 12425 "VT220 Keyboard", since the checked state corresponds to VT220 12426 rather than Sun/PC.</li> 12427 12428 <li>add configure test CF_UTMP_UT_XSTATUS to handle the 12429 variants of utmp exit status (reports by Dave Ellement, Jeremie 12430 Petit, Tomas Vanhala).</li> 12431 12432 <li>amend treatment of ALT key (see <a href="#xterm_94">patch 12433 #94</a>) so that if ALT is used as a modifier in key 12434 translations, then no parameter will be sent in escape 12435 sequences for Sun/PC function keys (request by Dr Werner 12436 Fink).</li> 12437 12438 <li>modify default for OPT_I18N_SUPPORT to assume that 12439 <code>XtSetLanguageProc()</code> is available in X11R5. 12440 <p>Caveat: <code>XtSetLanguageProc()</code> was added fairly 12441 late in the X11R5 patches, and some vendors shipped buggy 12442 versions of this function (request by Tomas Vanhala).</p> 12443 </li> 12444 12445 <li>correct configure macro CF_SYSV_UTMP to test-link with 12446 functions consistent with the header, e.g., getutent() for 12447 utmp.h and getutxent() for utmpx.h (reported by Greg 12448 Smith).</li> 12449 12450 <li>modify terminfo entry for <code>xterm-xfree86</code> to 12451 reflect modifiers for shift and control (from a patch by 12452 Alexander V Lukyanov).</li> 12453 12454 <li>modify terminfo entry for <code>xterm-sun</code> to match 12455 the function-key definitions in ncurses. The pageup/pagedown 12456 and related function keys correspond to the Sun keyboard, which 12457 does not necessarily correspond with X's notion of those 12458 keys.</li> 12459 12460 <li>modify treatment of XK_Delete keysym so it transmits 12461 parameterized VT220-style <code><ESC>[3~</code> if 12462 modifiers (shift, control alt) are given (request by Alexander 12463 V Lukyanov).</li> 12464 12465 <li>corrected misspelled resource name in command-line option 12466 for HP function keys.</li> 12467 </ul> 12468 12469 <h1><a name="xterm_120" id="xterm_120">Patch #120 - 1999/10/28 - 12470 XFree86 3.9.16c</a></h1> 12471 12472 <ul> 12473 <li>refine the change to <code>SGR_Background()</code> in patch 12474 #119, by not flushing the pending scrolling operation if the 12475 background color is not actually changing. This combination 12476 occurs when using color-ls to display a long listing, since 12477 each line ends with an SGR0 which affects only the foreground 12478 color. The unnecessary flushing made it noticeably slower 12479 (reported by D Roland Walker <walker@pobox.com>).</li> 12480 12481 <li>remove obsolete documentation about modifiers which can be 12482 returned in mouse tracking mode, and modify logic to ignore 12483 modifiers other than the existing ones, e.g., NumLock (prompted 12484 by discussions with Christian Weisgerber and Brad Pepers 12485 <brad@linuxcanada.com>).</li> 12486 12487 <li>use free bit from obsolete shift-modifier coding of mouse 12488 tracking button events to encode buttons 4 and 5, e.g., for a 12489 wheel mouse (requests by Brad Pepers and Bram Moolenaar).</li> 12490 12491 <li>correct a place where the ptyInitialErase logic did not set 12492 the backarrowKey state, and modify it further to use tgetstr() 12493 rather than parse the termcap data returned from tgetent() so 12494 the ptyInitialErase logic will work when xterm is linked with a 12495 terminfo library (based on a patch by Dr Werner Fink 12496 <werner@suse.de>).</li> 12497 12498 <li>fix definition of HAVE_UTMP_UT_HOST for ISC configuration 12499 (patch by Michael Rohleder).</li> 12500 12501 <li>improve configure script's utmp tests (based on reports by 12502 Greg Smith for os390, and David Ellement for HPUX).</li> 12503 12504 <li>modify sinstall.sh to use uid=0 rather than 'root' to 12505 determine if the installer is privileged. This is needed on 12506 some systems since more than one account may be privileged 12507 (report by Greg Smith).</li> 12508 12509 <li>add an application resource, <code>messages</code> (and a 12510 corresponding -/+mesg option) which controls the initial 12511 permission on the terminal: if messages is set to true (the 12512 default), behavior is as without the patch; if it is set to 12513 false (as per -mesg), the terminal is opened in mode 0600, thus 12514 producing the effect of the <code>mesg n</code> command. This 12515 is useful for users who want to redirect all their messages to 12516 one particular xterm: it is more pleasant to do this with xterm 12517 resources than with explicit calls to the <code>mesg</code> 12518 program (patch, description by David Madore 12519 <david.madore@ens.fr>).</li> 12520 </ul> 12521 12522 <h1><a name="xterm_119" id="xterm_119">Patch #119 - 1999/10/16 - 12523 XFree86 3.9.16c</a></h1> 12524 12525 <ul> 12526 <li>add responses (DA and DSR) for DEC locator mode</li> 12527 12528 <li>add coding for ANSI color to DA response</li> 12529 12530 <li>implement UTF-8 translation for Media Copy (print) 12531 operations.</li> 12532 12533 <li>implement vt320 control sequences for Print Composed Main 12534 Display and for Print All Pages. The latter directs xterm to 12535 print the current screen as well as the scrollback buffer.</li> 12536 12537 <li>correct error in _GNU_SOURCE configure test, which left it 12538 always defined.</li> 12539 12540 <li>add more information, i.e., with strerror for some system 12541 calls in the main program which may fail due to insufficient 12542 permissions (prompted by a problem report for <code>-C</code> 12543 by Jeremie Petit <Jeremie.Petit@digital.com>).</li> 12544 12545 <li>add workaround for conflict between <X11/Xpoll.h> and 12546 <sys/select.h> on AIX 4.3 (Richard Griswold 12547 <griswold@acm.org>).</li> 12548 12549 <li>add configure script test to resolve conflict between 12550 between <X11/Xpoll.h> and <sys/select.h></li> 12551 12552 <li>modify translation of UTF-8 sequences to reject "overly 12553 long" variations (patch by Markus Kuhn).</li> 12554 12555 <li>remove <code>utf8controls</code> resource, since Markus' 12556 change removes the corresponding logic.</li> 12557 12558 <li>correct a case where colors were not rendered properly. 12559 This happened when an application inserted several lines, then 12560 changed colors. If this was done all in one write, then there 12561 would be no intervening refresh, and the new color was applied 12562 to the pending scrolling operation which was awaiting the next 12563 refresh (reported by Stephane Chazelas 12564 <Stephane_Chazelas@Raytheon.com>).</li> 12565 </ul> 12566 12567 <h1><a name="xterm_118" id="xterm_118">Patch #118 - 1999/10/5 - 12568 XFree86 3.9.16b</a></h1> 12569 12570 <ul> 12571 <li>refine configure test for utmp versus utmpx, to build on 12572 HP-UX 10.x (reported by David Ellement).</li> 12573 12574 <li>move the configure check for <code>const</code> after the 12575 check for ANSI C compiler options, since those may be required 12576 to make it work properly on HP-UX.</li> 12577 12578 <li>add configure test for defining 12579 <code>_GNU_SOURCE</code></li> 12580 12581 <li>correction to <em>-hold</em> option, ensure that if data is 12582 already in the output buffer that it will be displayed before 12583 closing the PTY.</li> 12584 12585 <li>move the configure checks for setuid install of xterm into 12586 a script to avoid installing it setuid'd to a non-root user 12587 (reported by Adam Sulmicki <adam@cfar.umd.edu>).</li> 12588 12589 <li>correct configure script's check for termcap.h to avoid 12590 using ncurses' version of it on systems that have a working 12591 <code>tgetent()</code> function. This is needed to make 12592 <code>resize</code> work properly.</li> 12593 12594 <li>fix some typography in ctlseqs.ms description of DEC 12595 locator events (reported by Stephen P Wall).</li> 12596 </ul> 12597 12598 <h1><a name="xterm_117" id="xterm_117">Patch #117 - 1999/9/29 - 12599 XFree86 3.9.16b</a></h1> 12600 12601 <ul> 12602 <li>change order of tests in configure script for utmp and 12603 utmpx to test utmpx first, to compile on Solaris (reported by 12604 Leena Heino <liinu@uta.fi> and Patrik Hagglund 12605 <patha@ida.liu.se>).</li> 12606 12607 <li>add a configure test for utmp.ut_xtime, needed for SCO 12608 Openserver, and for lastlog, needed for Redhat 6.0, to refine 12609 the utmp/utmpx auto-configure.</li> 12610 12611 <li>remove a spurious comma in an #undef (reported by David 12612 Green <greendjf@cvhp152.marconicomms.com> and David 12613 Ellement <ellement@sdd.hp.com> both on HP-UX, whose 12614 compiler does care about syntax).</li> 12615 12616 <li>change ifdef's using __CYGWIN32__ to __CYGWIN__ (reported 12617 by Suhaib M. Siddiqi <Ssiddiqi@InspirePharm.Com>, who is 12618 told that the next Cygnus release will drop that symbol in 12619 their next release).</li> 12620 12621 <li>minor cleanup of ifdef's for makeColorPair (patch by 12622 Stephen P Wall).</li> 12623 12624 <li>work around problem observed in XFree86 3.3.5 (patch by 12625 Alexander V Lukyanov, Redhat #5419). From the problem report: 12626 <blockquote> 12627 <p>xterm consumes cpu when selecting text with mouse 12628 (holding down left mouse button) and when a program working 12629 under the xterm outputs something to stdout.</p> 12630 12631 <p>Easy way to reproduce:<br> 12632 <code>while :; do echo aaa; sleep 1; done</code><br> 12633 (while this runs, select text and hold down left mouse 12634 button) watch cpu load.<br> 12635 release left mouse button - spinning stops.</p> 12636 </blockquote> 12637 </li> 12638 </ul> 12639 12640 <h1><a name="xterm_116" id="xterm_116">Patch #116 - 1999/9/25 - 12641 XFree86 3.9.16a</a></h1> 12642 12643 <ul> 12644 <li>modify warning if change-ownership of PTY fails; some 12645 configurations may not happen to have old-style pty's (reported 12646 by Bob Maynard).</li> 12647 12648 <li>improve check in configure script for group ownership of 12649 installed xterm; some platforms use the -g option of ls to 12650 toggle group off rather than on (reported by Greg Smith).</li> 12651 12652 <li>minor improvement to toolbar geometry, to make it not 12653 resizable. This still is not satisfactory (but is usable) since 12654 the toolbar overlaps the xterm widget if the window is resized 12655 to make it smaller. It appears that some work is needed for the 12656 xterm widget's geometry management to make it function 12657 properly.</li> 12658 12659 <li>implement configure script tests for utmp, tty group.</li> 12660 12661 <li>implement <em>-hold</em> option, allowing users to retain 12662 the window after a shell has exited (this is recently an FAQ, 12663 but prompted by a comment by Joachim Plaettner-Hochwarth 12664 <plaettner@aem.umn.edu> in comp.unix.programmer, that the 12665 IRIX winterm provides this option).</li> 12666 12667 <li>add support for DEC Locator control sequences for xterm 12668 (integrated patch by Stephen P Wall): 12669 12670 <pre> 12671 DECEFR, "Enable Filter Rectangle" 12672 DECELR, "Enable Locator Reports" 12673 DECSLE, "Select Locator Events" 12674 DECRQLP, "Request Locator Position" 12675</pre> 12676 <p>This allows the xterm mouse to be used with applications 12677 that use the DEC Locator sequences, such as VAX Tpu, or SMG$ 12678 based applications.</p> 12679 </li> 12680 12681 <li>improve print action (patch by Matthias Baake). From his 12682 notes, 12683 <ul> 12684 <li>Bug 1<br> 12685 Underlined text is preceded by ESC [0;2m . This should 12686 be ESC [0;4m , ESC [2m doesn't seem to have 12687 any effect. (print.c/send_SGR)</li> 12688 12689 <li>Bug 2<br> 12690 The check for the last non-empty column (while (last > 12691 0) ... in print.c/printLine) omits the rightmost column of 12692 the screen, the loop must start with last = 12693 screen->max_col+1 instead of last = 12694 screen->max_col.</li> 12695 12696 <li>Bug 3<br> 12697 Any attributes of the first character (and of all 12698 immediately following characters with the same attributes) 12699 are ignored. The variable attr (print.c/printLine) should 12700 be initialized with 0, not with *a & SGR_MASK.</li> 12701 </ul> 12702 </li> 12703 </ul> 12704 12705 <h1><a name="xterm_115" id="xterm_115">Patch #115 - 1999/9/18 - 12706 XFree86 3.9.16a</a></h1> 12707 12708 <ul> 12709 <li>integrated changes by Stephen P Wall to implement an 12710 88-color model for systems where 256-colors cannot be 12711 allocated.</li> 12712 12713 <li>when 256-color configuration is compiled, colored bold and 12714 underlining is not available; ifdef'd to avoid possible odd 12715 effects in this case (reported by Stephen P Wall).</li> 12716 12717 <li>add resource <em>cacheDoublesize</em>, to limit the caching 12718 of font information for double-sized characters. This addresses 12719 a problem reported by Aryeh Koenigsberg for X terminals with 12720 limited font memory.</li> 12721 12722 <li>modify treatment of line-drawing characters in UTF-8 mode 12723 so that the Unicode values are used rather than the C0 codes 12724 for storing the translated characters (request by Markus 12725 Kuhn).</li> 12726 </ul> 12727 12728 <h1><a name="xterm_114" id="xterm_114">Patch #114 - 1999/9/15 - 12729 XFree86 3.9.16</a></h1> 12730 12731 <ul> 12732 <li>add configure script checks for Athena headers and 12733 libraries under /usr/contrib to work on HPUX (reported by 12734 several people: David Nixon <djn@csc.liv.ac.uk> Aryeh 12735 Koenigsberg <aryeh.koenigsberg@telrad.co.il> Johannes 12736 Mähner <johanm@camline.com> Andrew Gaylard 12737 <andrew.gaylard@bsw.co.za>).</li> 12738 12739 <li>add check to configure script if xterm is installed setgid 12740 rather than setuid, since wtmp and utmp may be installed with 12741 group-writable permissions other than root (based on Debian bug 12742 report #7112 by Bo Branten <bosse@ing.umu.se>).</li> 12743 12744 <li>rewrote logic that removes data from termcap entry, e.g., 12745 for titeInhibit, to make it less likely to remove the wrong 12746 data.</li> 12747 12748 <li>correct logic which checks for missing characters used for 12749 line drawing. The 0 character was tested unnecessarily, leading 12750 to some inefficiency when rendering.</li> 12751 12752 <li>change termcap capability which is used as input or output 12753 of ptyInitialErase logic from <em>kD</em> to <em>kb</em>. 12754 Christian Weisgerber <naddy@mips.rhein-neckar.de> pointed 12755 out in effect that <em>kD</em> (in terminfo <em>kdch1</em>) 12756 should correspond to the control sequence for <em>dch1</em>, 12757 which deletes from the current position toward the right.</li> 12758 12759 <li>check for failure to change ownership of the PTY device and 12760 warn when xterm is running setuid'd to root. This was reported 12761 to happen on the FreeBSD/NetBSD/OpenBSD systems as a result of 12762 the chflags() call.</li> 12763 12764 <li>add xterm-noapp terminfo entry to illustate a nominally 12765 bash-compatible terminal description.</li> 12766 </ul> 12767 12768 <h1><a name="xterm_113" id="xterm_113">Patch #113 - 1999/8/15 - 12769 XFree86 3.9.15b</a></h1> 12770 12771 <p>Several fixes. The main one is a first draft of pulldown 12772 menus. It's not complete (I have some minor/annoying geometry 12773 problems to correct), but is usable. Once it's complete I plan to 12774 add a menu to support additional selections that won't fit on the 12775 current popup menus. Also, this fits into my longterm plan to 12776 allow configuring with Motif libraries.</p> 12777 12778 <ul> 12779 <li>correct error in input conversion for NRC mode (reported by 12780 Stefan Traby <stefan@sime.com>).</li> 12781 12782 <li>fix initialization of num_lock data in Misc struct (since 12783 those fields of the reference widget aren't initialized), and 12784 add logic to deal with XVision whose NumLock key does not 12785 transmit but does alter keypad state.</li> 12786 12787 <li>correct a missing return-value in get_pty(), for SCO</li> 12788 12789 <li>add E2A fix for backspace (patch by Greg Smith), i.e.,<br> 12790 #define VAL_INITIAL_ERASE A2E(127)</li> 12791 12792 <li>correct foreground color within cursor outline when the 12793 window is unfocused (reported by Stephane Chazelas).</li> 12794 12795 <li>corrected position of scrollbar set in ResizeScrollBar(), 12796 which left it positioned incorrectly if the right scrollbar 12797 were enabled from the popup menu but was not initially enabled. 12798 <p>I have noticed some additional problems with 12799 right-scrollbar on X11R5 which I will correct later.</p> 12800 </li> 12801 12802 <li>integrate changes by Jean-Claude Michot for QNX from 12803 XFree86 3.3.4c</li> 12804 12805 <li>add resources menuBar/MenuBar, menuHeight/MenuHeight for 12806 later use in toolbar geometry.</li> 12807 12808 <li>add configure option --enable-toolbar</li> 12809 12810 <li>add missing definition to make ziconbeep logic not 12811 compile-in when configure script disables it.</li> 12812 12813 <li>add configure-check for input-method support in X 12814 libraries</li> 12815 </ul> 12816 12817 <h1><a name="xterm_112" id="xterm_112">Patch #112 - 1999/7/17 - 12818 XFree86 3.9Pw</a></h1> 12819 12820 <ul> 12821 <li>add null-pointer check to FlushLog(), fixes a core dump 12822 when both -l and -lf options are used when xterm is configured 12823 with wide-character support.</li> 12824 12825 <li>remove "ISO" case for SD, which was due to a typographical 12826 error in ECMA-48 (reported by Paul Williams 12827 <paul@celigne.co.uk> for vttest).</li> 12828 12829 <li>add "FILES" section to manpage.</li> 12830 12831 <li>generate header file to initialize default resources for 12832 colors 16-255.</li> 12833 12834 <li>fixes for os390 (Greg Smith): 12835 <ul> 12836 <li>add README.os390</li> 12837 12838 <li>use the pty_search() function to find an available 12839 pty/tty pair.</li> 12840 12841 <li>move E2A() call out of getXtermCell() to SaveText() 12842 function so it will be available in all 12843 configurations.</li> 12844 </ul> 12845 </li> 12846 12847 <li>patches by Todd Larason: 12848 <ul> 12849 <li>enable SGR 48 5 in ISO color mode, not just 256 color 12850 mode</li> 12851 12852 <li>change configure's --disable-256-color option to 12853 --enable-256-color, to match its effect</li> 12854 12855 <li>fix OSC 4 xx ? (report ansi color) to report a string 12856 which can actually be used to set the color back</li> 12857 12858 <li>fix OSC 4 xx yy (change ansi color) to not allow 12859 setting colors > 15 in 16 color mode</li> 12860 12861 <li>simplify the COLOR_ settings a bit in ptyx.h, along 12862 with setting NUM_ANSI_COLORS needed for #1 and #4 12863 above</li> 12864 12865 <li>correct string-terminator code passed for reference to 12866 OSC responses; when in 7-bit mode, only the final byte of 12867 ST was seen.</li> 12868 12869 <li>Allow multiple color #;name pairs in OSC 4, and 12870 document changes to match.</li> 12871 </ul> 12872 </li> 12873 </ul> 12874 12875 <h1><a name="xterm_111" id="xterm_111">Patch #111 - 1999/7/10 - 12876 XFree86 3.9Pw</a></h1> 12877 12878 <ul> 12879 <li>add control sequences for specifying the RGB value of the 12880 ANSI colors, and for configuring with 256 colors (patch by Todd 12881 Larason <jtl@molehill.org>). I made the default 12882 configuration to 16-colors, because xterm uses the default 12883 color map (which has only 256 colors).</li> 12884 12885 <li>correct an error in DCS $ q m reporting for colors 8-15 12886 (Todd Larason).</li> 12887 12888 <li>add test/demo script for double size characters. Used this 12889 to test/correct display of double size characters that should 12890 wrap, underlined double size characters.</li> 12891 12892 <li>increased cache size for double size fonts to 8, to allow 12893 for both normal and bold fonts (discussion with Aryeh 12894 Koenigsberg <aryeh.koenigsberg@telrad.co.il>).</li> 12895 12896 <li>add fixes for port to OS390 aka MVS (integrated patch from 12897 Greg Smith <rys@epaibm.rtpnc.epa.gov>). OS390 uses EBCDIC 12898 rather than ASCII.</li> 12899 12900 <li>correct an off-by-one in binary search limits in 12901 keysym2ucs.c (Markus Kuhn).</li> 12902 12903 <li>implement logging for UTF-8 mode. The output is written in 12904 UTF-8 form.</li> 12905 </ul> 12906 12907 <h1><a name="xterm_110" id="xterm_110">Patch #110 - 1999/6/29 - 12908 XFree86 3.9Pu</a></h1> 12909 12910 <ul> 12911 <li>If colorMode is enabled by default, compile-in default 12912 resources to match the colors listed in XTerm-col.ad (this 12913 should fix a longstanding FAQ).</li> 12914 12915 <li>added new OSC 3 ; PROPNAME=VALUE ST 12916 escape sequence to set an arbitrary X property on the top level 12917 xterm X11 window. Omit "=VALUE" to delete the X property (patch 12918 by Greg Badros <gjb@cs.washington.edu>).</li> 12919 12920 <li>change internal flag used for <em>utf8controls</em> 12921 resource so we allow 31-bit range of characters (suggested by 12922 Thomas Wolff).</li> 12923 12924 <li>add check for 16-bit characters in OSC strings, change them 12925 to '?' (reported by Thomas Wolff).</li> 12926 12927 <li>modify logic of same_font_name() to avoid trying to 12928 interpret both parameters as wildcard patterns. That does not 12929 (cannot) work, and in some instances the font server will 12930 return unresolved wildcards for the normal or bold fontnames, 12931 making them match inadvertently, triggering the fallback 12932 overstrike logic (reported by Tim Adye).</li> 12933 </ul> 12934 12935 <h1><a name="xterm_109" id="xterm_109">Patch #109 - 1999/6/23 - 12936 XFree86 3.9Pt</a></h1> 12937 12938 <ul> 12939 <li>correct range-check from patch #108, which resulted in not 12940 being able to select from the scrollback buffer (reported by 12941 Tim Adye <T.J.Adye@rl.ac.uk>)</li> 12942 12943 <li>correct "no available ptys" problem with Cygwin B20.1 12944 (patch by Tim Adye).</li> 12945 12946 <li>modified install-ti rule in Makefile.in to allow override 12947 of the terminfo directory when doing a "make install", i.e., by 12948 assigning to TERMINFO_DIR (request by Zdenek Sekera 12949 <zs@sgi.com>).</li> 12950 12951 <li>added install-full rule to Makefile.in</li> 12952 12953 <li>resync mkdirs.sh and install.sh scripts against current 12954 autoconf</li> 12955 12956 <li>implement $(DESTDIR) in Makefile.in, making it simple to 12957 install xterm and associated files into a directory just for 12958 packaging a binary release (suggested by CaT 12959 <cat@zip.com.au>).</li> 12960 12961 <li>change IChar type to unsigned, rather than unsigned short, 12962 making room for a flag to keep with 16-bit characters to 12963 prevent them from being interpreted as C0 or C1 controls 12964 (reported by Thomas Wolff).</li> 12965 12966 <li>correct a typo from patch #107, incorrect array name, in 12967 the filterUTF8 function (patch by Bruno Haible 12968 <haible@ilog.fr>)</li> 12969 12970 <li>add <em>utf8controls</em> resource to specify whether xterm 12971 should interpret 16-bit characters unpacked from UTF-8 form as 12972 control characters if they happen to fall into that range. This 12973 behavior is left unspecified by the Unicode standard (request 12974 by Thomas Wolff).</li> 12975 12976 <li>modify handling of OSC to recover if application sends 12977 16-bit characters with codes above 255. We cannot display them 12978 as is, but translate out-of-range characters to a '?' (reported 12979 by Thomas Wolff).</li> 12980 </ul> 12981 12982 <h1><a name="xterm_108" id="xterm_108">Patch #108 - 1999/6/19 - 12983 XFree86 3.9Ps</a></h1> 12984 12985 <ul> 12986 <li>add a range-check to LastTextCol(), to guard against 12987 indexing before the beginning of the scrollback buffer. This 12988 appears to happen with certain fonts under X11R5 (reported by 12989 Stephane Chazelas <Stephane_Chazelas@Raytheon.com>).</li> 12990 12991 <li>implement resource <em>boldMode</em>, to allow disabling 12992 the simulation of bold fonts when the bold and normal fonts are 12993 not different (requested by Will Day 12994 <willday@rom.oit.gatech.edu>).</li> 12995 12996 <li>change the atom "UTF-8" to "UTF8_STRING", and fixes a few 12997 bugs in the UTF-8 selection (patch by Juliusz Chroboczek).</li> 12998 12999 <li>correct logic of binary-search in keysym2ucs.c (patch by 13000 Markus Kuhn).</li> 13001 13002 <li>add special interpretation of keysym codes above 0x1000000 13003 as the corresponding UCS value plus 0x1000000 (patch by Markus 13004 Kuhn).</li> 13005 </ul> 13006 13007 <h1><a name="xterm_107" id="xterm_107">Patch #107 - 1999/6/12 - 13008 XFree86 3.9Pq</a></h1> 13009 13010 <ul> 13011 <li>Two changes from Stephen P Wall. From his description: 13012 <blockquote> 13013 <p>The first change is simple - I added ESC[3J to erase the 13014 stored lines above the screen. That's what the changes to 13015 util.c and ctlseqs.ms are.</p> 13016 13017 <p>The second change is to get the blinking cursor working. 13018 I took out the cursorBlinkTime resource, and put in 13019 cursorBlink (Boolean), cursorOnTime (time cursor is on in 13020 msecs) and cursorOffTime, and added a cursorblink item to 13021 the vtMenu to enable/disable it.</p> 13022 </blockquote> 13023 </li> 13024 13025 <li>improve selection (integrated patch by Juliusz Chroboczek). 13026 From his description: 13027 <blockquote> 13028 <p>With this patch, selection conversion works 13029 properly:</p> 13030 13031 <pre> 13032 ISO 8859-1 xterm -> ISO 8859-1 xterm (transferred as STRING); 13033 ISO 8859-1 xterm -> UTF-8 xterm (transferred as STRING); 13034 UTF-8 xterm -> ISO 8859-1 xterm (transferred as STRING); 13035 UTF-8 xterm -> UTF-8 xterm (transferred as UTF-8). 13036</pre> 13037 <p>It will not work properly if one xterm is in, say, ISO 13038 8859-2. Actually, for this case xterm breaks the ICCCM 13039 routinely (sending ISO 8859-2 data as STRING), so I 13040 wouldn't worry too much about it. I have not changed the 13041 behaviour in eight-bit mode in any way.</p> 13042 </blockquote> 13043 </li> 13044 </ul> 13045 13046 <h1><a name="xterm_106" id="xterm_106">Patch #106 - 1999/6/9 - 13047 XFree86 3.9Pq</a></h1> 13048 13049 <ul> 13050 <li>remove duplicate fix for OpenBSD in resize.c</li> 13051 13052 <li>correct logic in ScreenWrite, which did not reset the high 13053 bytes of 16-bit characters when overwriting them with a 8-bit 13054 character string (reported by Thomas Wolff).</li> 13055 13056 <li>provide limited support for input of UTF-8 16-bit data by a 13057 lookup table (integrated patch by Markus Kuhn).</li> 13058 13059 <li>correct check in non_blank_line to ensure we're in 13060 wide-character mode before looking at the high bytes, for 13061 InsertChar.</li> 13062 </ul> 13063 13064 <h1><a name="xterm_105" id="xterm_105">Patch #105 - 1999/6/5 - 13065 XFree86 3.9Pp</a></h1> 13066 13067 <ul> 13068 <li>implement new resource <em>trimSelection</em>, which allows 13069 xterm to trim trailing blanks from selected lines. This does 13070 not affect the highlighting. (reported by several people using 13071 <em>mutt</em>, including Hans Morten Kind <edphk@uib.no>, 13072 Jeremy <jeremy@exit109.com> and (Michael Fuller 13073 <msf@mds.rmit.edu.au>).</li> 13074 13075 <li>include term.h in resize for OpenBSD (patch by Matthieu 13076 Herrb).</li> 13077 13078 <li>correct logic for UTF-8 in functions that hide and show the 13079 cursor; it was displaying a space whenever the low byte of the 13080 character at the cursor position was zero (reported by Thomas 13081 Wolff <Thomas.Wolff@icn.siemens.de>).</li> 13082 </ul> 13083 13084 <h1><a name="xterm_104" id="xterm_104">Patch #104 - 1999/5/30 - 13085 XFree86 3.9Pn</a></h1> 13086 13087 <p>This is a resync patch against XFree86 3.9Pn, reflecting 13088 changes which were submitted by Branden Robinson, who worked with 13089 Wichert Akkerman <wichert@cs.leidenuniv.nl> to set up 13090 ifdef's to handle GNU libc 2.1, and use getpt() which lets xterm 13091 avoid having to know the actual PTY name.</p> 13092 13093 <p>I have also added a few fixes for signed/unsigned mismatches, 13094 and corrected a problem in the configure script (the UTF-8 code 13095 was always configured since the Imakefile defines this).</p> 13096 13097 <h1><a name="xterm_103" id="xterm_103">Patch #103 - 1999/5/14 - 13098 XFree86 3.9Pm</a></h1> 13099 13100 <ul> 13101 <li>correct selection logic: I omitted an offset that accounts 13102 for the distance into the scrollback buffer when rewriting this 13103 for <a href="#xterm_101">patch #101</a>. Also fixed a similar 13104 problem for selecting double size characters from the 13105 scrollback buffer (first was reported by D Roland Walker 13106 <walker@pobox.com>).</li> 13107 13108 <li>improved support for Unix98 PTY's, using patch in Debian 13109 bug report #35650, by J.H.M. Dassen 13110 <jdassen@wi.leidenuniv.nl>. From the patch description: 13111 <blockquote> 13112 <ul> 13113 <li>No longer links xterm against libutil on a glibc2.1 13114 system. libutil is a compatibility library and should 13115 only be used when necessary. Rather than having get_pty() 13116 use openpty() from this compatibility library, use the 13117 real UNIX98 pty support in get_pty() (open()ing the 13118 master pty, through getpt() if available (glibc 13119 extension)). Use openpty() only under glibc2.0.</li> 13120 13121 <li>GNU libc2 is not Linux-specific; already it runs on 13122 the Hurd. It provides the UNIX98 pty functions (plus the 13123 getpt() extension), regardless of the underlying OS. 13124 Changed two constructs to look for GNU libc2 only, not 13125 GNU libc2 on Linux.</li> 13126 </ul> 13127 </blockquote> 13128 </li> 13129 13130 <li>improve font configuration, by checking if the user's 13131 resource settings for normal and bold fonts give the same font 13132 sizes (fixes problem reported by Peter Waltenberg 13133 <peterw@dascom.com>).</li> 13134 </ul> 13135 13136 <h1><a name="xterm_102" id="xterm_102">Patch #102 - 1999/5/12 - 13137 XFree86 3.9Pm</a></h1> 13138 13139 <ul> 13140 <li>revert change to openpty call in <a href="#xterm_101">patch 13141 #101</a>; this causes xterm to fail on DEC-Alpha OSF/1 4.0B 13142 (reported by H Merijn Brand).</li> 13143 13144 <li>modify print.c to move include of stdio.h after the 13145 autoconf'd xtermcfg.h since HP's ANSI C compiler otherwise sees 13146 inconsistent prototype for getopt, probably due to problem with 13147 const (reported by H Merijn Brand).</li> 13148 </ul> 13149 13150 <h1><a name="xterm_101" id="xterm_101">Patch #101 - 1999/5/10 - 13151 XFree86 3.9Pm</a></h1> 13152 13153 <ul> 13154 <li>moved includes and definitions for 'select' from data.h to 13155 xterm.h to fix problem introduced by prototype for getPtyData, 13156 part of UTF-8 changes (reported by Jens Schleusener 13157 <Jens.Schleusener@dlr.de>)</li> 13158 13159 <li>added "Meta <Btn2Down>:clear-saved-lines()" default 13160 translation (patch by H Merijn Brand)</li> 13161 13162 <li>fixes to configure script and ifdef's in main.c to build on 13163 a HP9000/D390 (hppa-2.0w) running HP-UX 11.00 (64 bit) with 13164 egcs 1.1.2 and HP's ANSI C compiler (patch by H Merijn Brand 13165 <PROCURA_BV@CompuServe.com>)</li> 13166 13167 <li>add more parentheses in ifdef's (patch by Bob 13168 Maynard).</li> 13169 13170 <li>eliminate conflicting definitions for USE_TERMINFO in 13171 resize.c (reported by Jeremy Buhler).</li> 13172 13173 <li>change openpty call to pass NULL rather than ttydev 13174 parameter, since that was used only to estimate the length of 13175 the corresponding data, and may not really be long enough 13176 (reported by Andreas Jaeger)</li> 13177 13178 <li>update description in xterm manpage for character class 13179 table, which said it handles only 7-bit codes.</li> 13180 13181 <li>correct a typo in ScrnDeleteChar() which made it not clear 13182 the high byte of wide-character data.</li> 13183 13184 <li>add logic to convert selection to UTF-8 form when 13185 appropriate. This makes select/paste "work", but further work 13186 is needed to make UTF-8 recognized as a locale in Xlib.</li> 13187 13188 <li>correct right-limit check when selecting double-width 13189 characters.</li> 13190 13191 <li>change default answerback response to an empty string.</li> 13192 </ul> 13193 13194 <h1><a name="xterm_100" id="xterm_100">Patch #100 - 1999/5/3 - 13195 XFree86 3.9Pl</a></h1> 13196 13197 <ul> 13198 <li>Correct a typo in the default resource value for 13199 backarrowKeyIsErase: it was always true (reported by Bram 13200 Moolenaar).</li> 13201 13202 <li>improve configure script's test if the installed xterm is 13203 setuid, in case that is a symbolic link.</li> 13204 13205 <li>correct "install-ti" rule in Makefile.in, by not setting a 13206 blank $TERMINFO value. That is interpreted as "." by ncurses' 13207 tic.</li> 13208 </ul> 13209 13210 <h1><a name="xterm_99" id="xterm_99">Patch #99 - 1999/5/2 - 13211 XFree86 3.9Pk</a></h1> 13212 13213 <ul> 13214 <li>correct logic that computes num_ptrs count of the number of 13215 indices into the screen buffer. This is the maximum of the 13216 colors and character-set indices; was incorrect in patch 13217 #97.</li> 13218 13219 <li>correct argument type for sigsetjmp, incidental change in 13220 patch #96's Unix88 PTY patch (reported by Bram Moolenaar).</li> 13221 13222 <li>correct description of secondary DA in ctlseqs.ms (reported 13223 by Bram Moolenaar).</li> 13224 13225 <li>decouple the backarrowKey and ptyInitialErase resources by 13226 adding a new resource backarrowKeyIsErase, to accommodate 13227 people using applications which have hardcoded tests for 13228 characters 8 and 127 rather than relying on the stty 13229 settings.</li> 13230 13231 <li>modify the UTF-8 decoder so that all possible illegal UTF-8 13232 sequences are properly represented by U+FFFD. This should be 13233 very helpful for developers of code that output UTF-8 strings 13234 for debugging. See the file utf-8-test.txt in 13235 http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz for a 13236 demonstration text that contains numerous illegal UTF-8 values. 13237 (patch by Markus Kuhn).</li> 13238 13239 <li>correct a place in ScrnRefresh where I was filling the high 13240 byte of a wide character with a space rather than a null 13241 (reported by Markus Kuhn).</li> 13242 </ul> 13243 13244 <h1><a name="xterm_98" id="xterm_98">Patch #98 - 1999/4/26 - 13245 XFree86 3.9Pk</a></h1> 13246 13247 <ul> 13248 <li>correct data manipulation in unparseputc(), broken for 13249 little-endian machines by patch #97's UTF-8 changes. This meant 13250 that keyboard input on SunOS did not work, though Linux i386 13251 was fine.</li> 13252 13253 <li>modify initialization for backarrowKey and logic for 13254 initial-erase to prevent the initial-erase from overriding an 13255 explicitly set backarrowKey resource (reported by Vikas 13256 Agnihotri).</li> 13257 13258 <li>add a missing null-pointer check in ScrnRefresh, for the 13259 wide-characters configuration.</li> 13260 </ul> 13261 13262 <h1><a name="xterm_97" id="xterm_97">Patch #97 - 1999/4/25 - 13263 XFree86 3.9Pk</a></h1> 13264 13265 <ul> 13266 <li>add configure script test for -lutil, needed for openpty 13267 call when configuring xterm for Glibc-2.1 and Unix98 PTY's 13268 (first reported by Martin Lorentz" 13269 <m.lorentz@w12.link-goe.de>).</li> 13270 13271 <li>completely parenthesize ifdef expressions for Glibc 13272 (suggested by Bob Maynard).</li> 13273 13274 <li>add initial-erase options (-ie, +ie) to help message 13275 (reported by Vikas Agnihotri).</li> 13276 13277 <li>remove duplicate definition of USE_USG_PTYS (reported by 13278 Jeremy Buhler).</li> 13279 13280 <li>change termcap <em>kD</em> and terminfo <em>kdch1</em> to a 13281 DEL (\177). I overlooked this when separating the styles of 13282 keyboard with the <em>sunKeyboard</em> resources in patch #94, 13283 so that it normally matches the value of the stty erase 13284 character: 13285 <ul> 13286 <li>Reported by Jae Gangemi 13287 <jgangemi@ccf.rutgers.edu>, this caused emacs to not 13288 process the DEL properly, combining it with succeeding 13289 characters.</li> 13290 13291 <li>This does not appear to be related to a problem which I 13292 have found with <em>screen</em>, which translates the stty 13293 erase into the termcap <em>kD</em> or terminfo 13294 <em>kdch1</em> value (depending on how it is linked) if the 13295 $TERMCAP variable is set when <em>screen</em> is 13296 invoked.</li> 13297 </ul> 13298 </li> 13299 13300 <li>add command-line options for enabling UTF-8 mode: -u8 and 13301 +u8. The more obvious -utf8 and +utf8 would conflict with 13302 xterm's -ut and +ut (utmp) options. The UTF-8 changes were 13303 requested by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. This 13304 patch does not complete UTF-8 implementation, but makes it 13305 usable, i.e., display and refresh work, and I am able to 13306 display the test cases which Markus provides. More work is 13307 needed to complete this feature: 13308 <ul> 13309 <li>the control sequences for switching in/out of UTF-8 13310 mode are partly implemented (don't use them). Similarly, 13311 the switching between vt100 and tek4014 emulations when 13312 UTF-8 mode is enabled will not work properly. 13313 <p>You must use the -u8 command line option to use this 13314 feature, as well as compile with the OPT_WIDE_CHARS 13315 definition.</p> 13316 </li> 13317 13318 <li>cut/paste only copies 8-bit characters.</li> 13319 13320 <li>logging is disabled in the wide-character 13321 configuration</li> 13322 13323 <li>printing only writes 8-bit characters.</li> 13324 13325 <li>input only does 8-bit characters. This is the area that 13326 I know least about.</li> 13327 </ul> 13328 </li> 13329 </ul> 13330 13331 <h1><a name="xterm_96" id="xterm_96">Patch #96 - 1999/4/19 - 13332 XFree86 3.9Pj</a></h1> 13333 13334 <ul> 13335 <li>modify Makefile.in to work with configure script's --srcdir 13336 option. (patch by Jeremy Buhler 13337 <jbuhler@cs.washington.edu>)</li> 13338 13339 <li>add checks for 'echo -n' equivalent for 8colors.sh and 13340 16colors.sh scripts (reported by Vikas Agnihotri).</li> 13341 13342 <li>improve logic that looks for bold fonts to allow for 13343 wildcards in the specification for normal fonts, and to ensure 13344 that if a bold font is specified as normal, that xterm will 13345 simulate a bold version of that using a one-pixel offset 13346 overstrike (reported by Henrik Harmsen 13347 <harmsen@erv.ericsson.se>).</li> 13348 13349 <li>correct horizontal spacing of double width line-drawing 13350 characters that xterm simulates.</li> 13351 13352 <li>improve support for Unix98 PTY's, using patch in Debian bug 13353 report #35650, by Topi Miettinen 13354 <Topi.Miettinen@medialab.sonera.fi>. Andreas Jaeger says 13355 this also corrects a permissions problem reported by 13356 cat@zip.net.au</li> 13357 13358 <li>modify initial-erase logic to ensure that 13359 <code>ttyModes</code> resource overrides it.</li> 13360 </ul> 13361 13362 <h1><a name="xterm_95" id="xterm_95">Patch #95 - 1999/4/5 - 13363 XFree86 3.9Ph</a></h1> 13364 13365 <ul> 13366 <li>modify primary DA response to allow a '1' parameter.</li> 13367 13368 <li>add printer and national replacement character sets to 13369 VT220 primary DA response.</li> 13370 13371 <li>document primary and secondary DA responses in 13372 ctlseqs.ms</li> 13373 13374 <li>use the patch number (e.g., 95) in the secondary DA 13375 response, providing user applications a means of determining 13376 the version of xterm for feature comparison (request by Bram 13377 Moolenaar).</li> 13378 13379 <li>make xterm respond to secondary DA when the decTerminalID 13380 is set for VT100.</li> 13381 13382 <li>limit user-defined keys (DECUDK) to VT220-style keyboard 13383 when sunKeyBoard resource is true.</li> 13384 13385 <li>modify ifdef's for Linux-2.2.x with Glibc-2.1 to work with 13386 Glibc-2.1 and no Unix98 PTY support (patch from Andreas Jaeger 13387 <aj@arthur.rhein-neckar.de>)</li> 13388 13389 <li>add optional feature (resource and command-line options) to 13390 make xterm use the PTY's sense of erase character on startup, 13391 rather than requiring it to be \177, or set the PTY's erase 13392 character to match xterm's configuration. Note that while 13393 $TERMCAP is modified to reflect the actual configuration, the 13394 terminfo kdch1 string is not (request by Dirk H Hohndel 13395 <hohndel@suse.de>)</li> 13396 13397 <li>improve scripts in vttests to work with newer shells that 13398 do not use 'echo -n'.</li> 13399 13400 <li>add fonts.sh example script</li> 13401 13402 <li>correct inequality in handling of "#1" font 13403 specification.</li> 13404 13405 <li>correct call to XGetWMNormalHints() used for computing 13406 maximum screen size; the size hints may not have been set.</li> 13407 13408 <li>begin implementation of support for wide-characters 13409 (configure option --enable-wide-chars defines OPT_WIDE_CHARS, 13410 invoke xterm with -wc option to activate this feature). This 13411 patch optionally widens internal data structures, invokes the 13412 16-bit text output rather than the 8-bit version and adds some 13413 tables.</li> 13414 </ul> 13415 13416 <h1><a name="xterm_94" id="xterm_94">Patch #94 - 1999/3/27 - 13417 XFree86 3.9Pf</a></h1> 13418 13419 <ul> 13420 <li>further fixes for terminfo: ka1, ka3, etc., differ between 13421 the default xterm-xfree86 and xterm-vt220 entries.</li> 13422 13423 <li>change default (with sunKeyboard resource false) behavior 13424 of the editing keypad "Delete" to send a 127, like xterm-r6. 13425 The VT220-style <code><ESC>[3~</code> is sent when 13426 sunKeyboard is true (reported by Tomas Vanhala).</li> 13427 13428 <li>add parameters to function keys to indicate if shift, 13429 control or alt are set. The codes are based on a description of 13430 a DEC VT510 with a PC keyboard, from Jeffrey Altman 13431 <jaltman@watsun.cc.columbia.edu>.</li> 13432 13433 <li>add control sequence 1035, set-num-lock action and num-lock 13434 menu entry to control the use of the NumLock and Alt keys for 13435 the Sun/PC and VT220 keyboard extensions.</li> 13436 13437 <li>implement DECSET/DECRST numeric keypad (DECNKM) mode.</li> 13438 13439 <li>modify terminfo and termcap to use recommended "X Window" 13440 or "X11" names rather than "X Windows" (reported by Tomas 13441 Vanhala).</li> 13442 13443 <li>suppress translation of shifted keypad "+" when sunKeyboard 13444 is true.</li> 13445 13446 <li>workaround unexpected behavior (perhaps bug) in 13447 XmbLookupString, which returns trash in the string buffer for 13448 numlock and control-key combined with keypad-keys.</li> 13449 13450 <li>modify ScrollBarReverseVideo() to keep scrollbar border 13451 visible when reverse video is toggled.</li> 13452 13453 <li>correct missing case for parameter 17 (set highlight color) 13454 in dynamic colors control sequences.</li> 13455 13456 <li>extend dynamic colors control sequences to allow users to 13457 determine the colors and font which are currently active.</li> 13458 13459 <li>minor tweak to OSC responses, to use BEL if the application 13460 used that to end the request, rather than ST. This works better 13461 with shell scripts, which may not handle an 13462 <code><ESC>backslash</code> very well.</li> 13463 13464 <li>separate menu settings for reverse video from that done 13465 under program control.</li> 13466 13467 <li>corrected ifdef's for menus, which did not allow tek4014 to 13468 be suppressed properly (reported by Clint Olsen).</li> 13469 13470 <li>changes for Linux-2.2.x with GLibc-2.1 and /dev/ptmx 13471 support (integrated patch from Pavel Roskin): 13472 <ul> 13473 <li>main.c and resize.c were using different rules to 13474 determine whether ATT should be defined (actually 13475 USE_USG_PTYS is more apt).</li> 13476 13477 <li>copy definitions from main.c to resize.c to prevent 13478 sys/stream.h and sys/ptem.h from inclusion when SYSV is not 13479 defined</li> 13480 13481 <li>define CNUL if not already defined like other 13482 variables.</li> 13483 13484 <li>/dev/tty does exist in Linux, but it doesn't mean, it 13485 should be used. Therefore EACCES is now an acceptable 13486 result.</li> 13487 13488 <li>ifdef'd several calls such as <code>ioctl (ptyfd, 13489 I_PUSH, "ptem")</code> to build on Linux (I_PUSH is not 13490 defined when sys/stropts.h is not included).</li> 13491 </ul> 13492 </li> 13493 13494 <li>initialize second "ltc" variable in main.c (reported by 13495 David Dawes).</li> 13496 13497 <li>provide definition for USE_USG_PTYS in screen.c</li> 13498 13499 <li>add resource-files to install rule in standalone 13500 Makefile.in</li> 13501 13502 <li>add sample scripts to illustrate titlebar controls, 13503 resizing and colors.</li> 13504 </ul> 13505 13506 <h1><a name="xterm_93" id="xterm_93">Patch #93 - 1999/3/14 - 13507 XFree86 3.9Pd</a></h1> 13508 13509 <p>Here are several fixes and minor enhancements. The chief ones 13510 are the fixes for NumLock mode and reverse video, since we had 13511 become used to working around the problems.</p> 13512 13513 <ul> 13514 <li>remove kfnd/kll/kslt strings from terminfo, because curses 13515 applications do not necessarily return khome/kend pairs 13516 (reported by Vikas Agnihotri).</li> 13517 13518 <li>implement NumLock resource which overrides the keyboard 13519 tables for the special case of keypad keys. This is a problem 13520 introduced in xterm by X11R6 changes, i.e., an ambiguity which 13521 in effect discarded vt100 keypad support.</li> 13522 13523 <li>modify Sun/PC keyboard mode to extend this (emulation of 13524 DEC vt100 keypad) to the remainder of the numeric keypad. Now, 13525 the default operating mode of xterm uses the keyboard tables 13526 as-is (except if the NumLock mode overrides), but provides good 13527 vt100 keypad compatibility if the Sun/PC keyboard menu item is 13528 checked.</li> 13529 13530 <li>separate command-line settings for reverse video from that 13531 done under program control. This is a problem which was 13532 introduced by X11R6. Though <em>correct</em>, most users are 13533 confused by allowing the reset command to undo the effect of 13534 the command-line <kbd>-rv</kbd> option.</li> 13535 13536 <li>add description of function keys, keypad and cursor keys to 13537 ctlseqs.ms</li> 13538 13539 <li>add terminfo entries for xterm-vt52, xterm-sun and 13540 xterm-hp</li> 13541 13542 <li>correct typo (missing case value) for DECSET 35, 13543 enable/disable shifted keypad action and a few compiler 13544 warnings (reported by Zdenek Sekera <zs@sgi.com>).</li> 13545 13546 <li>correct reporting of color values 8-15 in DECRQSS (reported 13547 by Vikas Agnihotri).</li> 13548 13549 <li>modify parsing of ttyModes resource to recognize "^-" as 13550 "undef" (requested by Tomas Vanhala).</li> 13551 13552 <li>integrate/extend changes to add iconify/maximize actions 13553 (from Edward S. Arthur <eda@ultranet.com>).</li> 13554 13555 <li>add control sequences for maximizing/restoring window, and 13556 for reporting maximum screen size.</li> 13557 13558 <li>add 'interpret' action, to support local function-key 13559 interpretation. Used properly, this makes most of the 13560 specialized actions of xterm redundant.</li> 13561 13562 <li>add control sequence private modes 1051, 1052 and 1052, for 13563 setting the Sun and HP function key modes, and for setting the 13564 Sun/PC keyboard mode.</li> 13565 13566 <li>add configure option --disable-maximize</li> 13567 13568 <li>add configure option --disable-num-lcok</li> 13569 13570 <li>extend descriptions of configure script options in 13571 INSTALL.</li> 13572 </ul> 13573 13574 <h1><a name="xterm_92" id="xterm_92">Patch #92 - 1999/2/5 - 13575 XFree86 3.9Nz</a></h1> 13576 13577 <ul> 13578 <li>increase buffer size for tgetent (i.e., termcap) to 1500. 13579 This fixes a problem where <em>screen</em> is built using 13580 ncurses or GNU termcap and <em>xterm</em> is built using the 13581 standard termcap interface. The former does not limit the 13582 termcap size, while the latter is assumed to be no longer than 13583 1023 characters. The <em>screen</em> program's termcap entry is 13584 about 1200 characters long.</li> 13585 13586 <li>change update_menu_item() to a function, to simplify 13587 debugging. This also reduces the executable by 4Kb.</li> 13588 13589 <li>add control sequences for DECSET 30, 1010, 1011 like rxvt 13590 (enable or disable some features that were only settable via 13591 resources or command line arguments).</li> 13592 13593 <li>add control sequence for DECSET 35, which enables/disables 13594 the shifted keypad functions.</li> 13595 13596 <li>add support for switching font sizes, by stepping through 13597 the font menu using shifted keypad plus and minus.</li> 13598 13599 <li>correct missing initialization of tekInhibit and tekSmall 13600 resources.</li> 13601 13602 <li>correct ifdef's in charproc.c for XtNgeometry and 13603 XtCGeometry (reported by Bram Moolenaar).</li> 13604 </ul> 13605 13606 <h1><a name="xterm_91" id="xterm_91">Patch #91 - 1999/1/21 - 13607 XFree86 3.9Nw</a></h1> 13608 13609 <ul> 13610 <li>Implement logic to translate input characters which are 13611 mapped when in vt220 National Replacement Character mode 13612 (requested by Tomas Vanhala).</li> 13613 13614 <li>Resync configure scripts with my patches to autoconf 13615 2.13</li> 13616 13617 <li>Change order of -lXmu and -lXext to accommodate cygwin32 13618 (reported by Vikas Agnihotri).</li> 13619 13620 <li>Add "-ti" option to set terminal emulation level from 13621 command line rather than via resource.</li> 13622 13623 <li>Simplify some of the preprocessor logic using #elif.</li> 13624 </ul> 13625 13626 <h1><a name="xterm_90" id="xterm_90">Patch #90 - 1998/12/13 - 13627 XFree86 3.9Nq</a></h1> 13628 13629 <p>This implements several small fixes and enhancements. The 13630 chief one implements fallback support for line drawing characters 13631 with fonts that do not include those characters. But I 13632 implemented that last.</p> 13633 13634 <ul> 13635 <li>If any of the glyphs in positions 0-31 (used by xterm to 13636 implement the VT100 alternate character set) are zero-sized 13637 (i.e., missing), xterm will reserve a normal space for the 13638 glyph when drawing. I implemented a simple stroke-drawing 13639 function to draw the line-drawing characters and a couple of 13640 the other (simpler) characters such as diamond. (This was 13641 suggested by Vikas Agnihotri).</li> 13642 13643 <li>Modify the computation of doublesize characters to work 13644 around font servers which shift the scaled characters up/down 13645 or do not give the correct width.</li> 13646 13647 <li>Add popup menu item and corresponding resource settings to 13648 disable the font-scaling logic for doublesize characters to 13649 work around (older) font servers which simply do not draw the 13650 fonts scaled to the size that they said they would. I see this 13651 problem on a SunOS system running X11R5; the X11R6 servers seem 13652 well behaved.</li> 13653 13654 <li>Implement new escape sequence, private mode 1049, which 13655 combines the switch to/from alternate screen mode with screen 13656 clearing and cursor save/restore. Unlike the existing escape 13657 sequence, this clears the alternate screen when switching to it 13658 rather than when switching to the normal screen, thus retaining 13659 the alternate screen contents for select/paste operations. 13660 <p>When I implemented the popup menu entry to toggle between 13661 the normal and alternate screens, I considered only pasting 13662 from the normal screen to the alternate; this improvement 13663 allows either direction.</p> 13664 </li> 13665 13666 <li>Changed the termcap and terminfo for xterm-xfree86 and 13667 xterm-8bit to use the new 1049 private mode.</li> 13668 13669 <li>Modify the logic which switches between normal and 13670 alternate screens so that the save/restore cursor operations 13671 apply only to the current screen. That means that applications 13672 which use the terminfo smcur/rmcur or termcap ti/te 13673 capabilities will restore the cursor to the original position 13674 on the normal screen rather than to the most recent place where 13675 a save-cursor operation was performed. 13676 <p>I note that a real VT100 terminal would not behave in this 13677 way, but it is a moot point since the VT100 does not 13678 implement alternate screen, and therefore the save/restore 13679 cursor sequence would not be used in this context. I reviewed 13680 the logic which switches between normal and alternate screens 13681 based on some recent newsgroup postings as well as a proposed 13682 patch in the Debian group which attempts to do this (the 13683 patch has a bug, however, so I did not use it).</p> 13684 </li> 13685 13686 <li>Add popup menu entry for toggling the titeInhibit 13687 resource.</li> 13688 13689 <li>Add new resource answerbackString, which overrides the 13690 default "xterm" returned by xterm when responding to an ENQ 13691 (control/E) character (request by Rajesh Vaidheeswarran 13692 <rv@fore.com>).</li> 13693 13694 <li>Add new resource keyboardDialect for setting the NRC 13695 display character set (request by Tomas Vanhala, who notes that 13696 I should add logic to translate the keyboard as well).</li> 13697 13698 <li>Add new command-line option and corresponding resources for 13699 making xterm generate escape sequences compatible with HP 13700 terminals. Like the existing Sun escape sequences, this is 13701 available as a popup menu item. It is enabled by the configure 13702 script with the option --enable-hp-fkeys (requested by Toni 13703 Mueller <sales@oeko.net>).</li> 13704 13705 <li>Add configure script option --disable-boxchars to disable 13706 the fallback support for line drawing characters.</li> 13707 13708 <li>Fix ifdef's for configure script --disable-ansi-color, and 13709 reviewed all configure options to ensure that all can be 13710 enabled/disabled appropriately.</li> 13711 13712 <li>Update config.guess and config.sub, from Lynx.</li> 13713 </ul> 13714 13715 <h1><a name="xterm_89" id="xterm_89">Patch #89 - 1998/11/20 - 13716 XFree86 3.9Nm</a></h1> 13717 13718 <p>This patch completes the implementation of double-sized 13719 character support for the VT100 emulation, and fixes a few minor 13720 bugs:</p> 13721 13722 <ul> 13723 <li>corrected the cursor position in HideCursor, which did not 13724 multiply the column by two when in doublesize mode. This bug, 13725 which did not appear in normal use, dates back to my original 13726 <a href="#xterm_44">changes</a> to partly implement 13727 double-sized characters. I noticed it when cat'ing a typescript 13728 from vttest's double-sized character test.</li> 13729 13730 <li>ensure that the current line is repainted when switching 13731 between single and double width characters.</li> 13732 13733 <li>reduce the number of bits used for double-sized character 13734 coding from 3 to 2, to make more room for soft-font codes.</li> 13735 13736 <li>copy newer ifdef's from the XFree86 3.3.3 release's main.c, 13737 which address details of glibc and powerpc.</li> 13738 13739 <li>moved definition of DECL_ERRNO in xterm.h to match XFree86 13740 3.3.3</li> 13741 13742 <li>modify <em>resize</em> to remove the ifdef on SVr4 that 13743 suppressed printing the script for $LINES and $COLUMNS. 13744 Solaris' resize utility does this; suppressing the behavior is 13745 unnecessary.</li> 13746 </ul> 13747 13748 <p>I tested the double-sized characters using vttest and the 13749 xfsft patch. These fonts worked reasonably well:</p> 13750 13751 <pre> 13752 -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1 13753 9x15 13754</pre> 13755 <p>The iso8859 font does not include box characters, of course, 13756 but looks good.</p> 13757 13758 <h1><a name="xterm_88" id="xterm_88">Patch #88 - 1998/10/31 - 13759 XFree86 3.9Nk and 3.3.2h</a></h1> 13760 13761 <p>This refines my <a href="#xterm_85">patch #85</a> by checking 13762 for a case where the font server returns a bold font that does 13763 not quite correspond to the normal font. When I asked for a bold 13764 version of the 6x12 font, the font server returned a near 13765 equivalent where the ascent and descent values did not match, 13766 causing xterm to leave lines across the display. This patch makes 13767 xterm reject that type of mismatch, falling back to the old font 13768 behavior.</p> 13769 13770 <h1><a name="xterm_87" id="xterm_87">Patch #87 - 1998/10/21 - 13771 XFree86 3.9Nj and 3.3.2f</a></h1> 13772 13773 <p>This corrects a problem reported by Stefan Dalibor. My table 13774 entries for the <em>printerExtent</em> and 13775 <em>printerFormFeed</em> resources used the wrong types for 13776 sizeof, causing the printer to not work properly on some 13777 platforms because the <em>printAttributes</em> resource was 13778 overwritten (e.g., Digital Unix with DEC Alpha).</p> 13779 13780 <p>I reviewed all of the resource table entries and fixed a 13781 potential problem with <em>resizeGravity</em>, which was typed as 13782 <em>int</em> rather than <em>XtGravity</em>.</p> 13783 13784 <h1><a name="xterm_86" id="xterm_86">Patch #86 - 1998/10/14 - 13785 XFree86 3.9Nj and 3.3.2e</a></h1> 13786 13787 <p>A small fix: when switching to/from the continuous mouse 13788 reporting mode, the event mask was incorrect if xterm was built 13789 under X11R5 because the original data was saved under an ifdef 13790 for active-icon.</p> 13791 13792 <h1><a name="xterm_85" id="xterm_85">Patch #85 - 1998/10/12 - 13793 XFree86 3.9Nj and 3.3.2e</a></h1> 13794 13795 <p>Some cleanup (I noticed the pixel droppings a few months ago 13796 after getting a new 17" monitor):</p> 13797 13798 <ul> 13799 <li>split-out the functions that load/reload fonts for xterm as 13800 new file fontutils.c to extend them to support automatic 13801 loading of bold font corresponding to the normal font. Adapted 13802 logic from EMU 1.3 for this purpose. This fixes most 13803 occurrences of pixel droppings from bold characters.</li> 13804 13805 <li>modified by renaming variables and adding casts to permit 13806 compile with g++.</li> 13807 13808 <li>modify headers so they can all be compiled without order 13809 dependencies, and use bracketed rather than quoting includes to 13810 allow compile from separate directory.</li> 13811 13812 <li>renamed xtermm terminfo entry to xterm-mono, to avoid 13813 conflict with Solaris entry now in ncurses.</li> 13814 </ul> 13815 13816 <h1><a name="xterm_84" id="xterm_84">Patch #84 - 1998/10/9 - 13817 XFree86 3.9Ni and 3.3.2e</a></h1> 13818 13819 <p>Several small fixes and enhancements, including a patch from 13820 Bjorn Helgaas:</p> 13821 13822 <ul> 13823 <li>correct initialization of TERMCAP environment variable, 13824 which was frequently set to garbage on non-Linux systems 13825 because "termcap" and "newtc" contained random data from the 13826 stack.</li> 13827 13828 <li>remove the LINEWRAPPED attribute from lines as they are 13829 cleared. Previously, the attribute was set but never 13830 cleared.</li> 13831 13832 <li>make word and line selections work even when lines are 13833 wrapped by xterm. Previously, selections were limited to one 13834 screen line.</li> 13835 </ul> 13836 13837 <p>as well as</p> 13838 13839 <ul> 13840 <li>modify logic for line-wrapping to reset the associated flag 13841 if the application deletes a character. This fixes a problem 13842 reported by Bjorn Helgaas where word/line selection would still 13843 wrap even after deleting characters from the first line.</li> 13844 13845 <li>add kll/kH capabilities to xterm-xfree86 entries in termcap 13846 and terminfo (request by Michael Schroeder).</li> 13847 13848 <li>shorten descriptions in termcap to make resolved entries 13849 all shorter than 1023 character limit.</li> 13850 13851 <li>use DECSTR control sequence to shorten initialization and 13852 reset strings in xterm-xfree86 termcap and terminfo.</li> 13853 13854 <li>use rmul/smul and rmir/smir in xterm-r5 terminfo to match 13855 termcap.</li> 13856 13857 <li>correct typos in initialization and reset strings in 13858 xterm-r5 termcap and terminfo.</li> 13859 13860 <li>disable special translations of key symbols (the backarrow 13861 key, the editing keypad and the keypad "+") when a modifier 13862 other than shift, control or numlock is used. This makes xterm 13863 handle the meta key as expected by people using emacs (reported 13864 by Pete Harlan <harlan@pointofchoice.com> in 13865 linux.debian.user newsgroup).</li> 13866 </ul> 13867 13868 <h1><a name="sync_83" id="sync_83">Resync #83 - 1998/10/7 - 13869 XFree86 3.3.2e</a></h1> 13870 13871 <p>Merge changes through <a href="#xterm_83">patch #83</a> with 13872 the 3.3.2e version.</p> 13873 13874 <p>This follows a change from XFree86 CVS which adds checks for 13875 non-null return from malloc (patch by Matthieu Herrb).</p> 13876 13877 <h1><a name="xterm_83" id="xterm_83">Patch #83 - 1998/8/25 - 13878 XFree86 3.9Nb</a></h1> 13879 13880 <p>Several small fixes and enhancements:</p> 13881 13882 <ul> 13883 <li>add configure test to infer if xterm should be installed 13884 setuid based on previously installed xterm (reported by Stephen 13885 Marley and Stefan Dalibor).</li> 13886 13887 <li>implement quasi-continuous mouse reporting (integrated 13888 patch by Jason Bacon).</li> 13889 13890 <li>correct control sequences transmitted by function keys F1 13891 to F4 when sunFunctionKeys resource is true (it was still using 13892 the VT100 control sequences).</li> 13893 13894 <li>modify handling of backarrow key so that the control 13895 modifier toggles the backspace/delete interpretation set by the 13896 backarrowKey resource.</li> 13897 13898 <li>limit the row and column values used to report mouse 13899 position.</li> 13900 </ul> 13901 13902 <p>From resync with XFree86 3.9Nb:</p> 13903 13904 <ul> 13905 <li>add support for the VSTATUS control character (patch by 13906 Robert Earl <rearl@teleport.com>).</li> 13907 </ul> 13908 13909 <h1><a name="xterm_82" id="xterm_82">Patch #82 - 1998/7/15 - 13910 XFree86 3.9Aj</a></h1> 13911 13912 <p>Bug fix for <a href="#xterm_81">patch #81</a>:</p> 13913 13914 <ul> 13915 <li>remove an #undef for NBBY, which caused compile problem on 13916 FreeBSD (reported by David Dawes).</li> 13917 </ul> 13918 13919 <h1><a name="xterm_81" id="xterm_81">Patch #81 - 1998/7/14 - 13920 XFree86 3.9Aj</a></h1> 13921 13922 <p>More bug fixes:</p> 13923 13924 <ul> 13925 <li>fix conflicting ifdef's for TIOCSLTC when building with 13926 Linux on AXP aka DEC Alpha (reported by Robin Cutshaw).</li> 13927 13928 <li>correction to patch #79, move assignment for 13929 *utptr->ut_user = 0; back into non-SVR4 ifdef in main.c, 13930 since this clobbers username on Solaris 2.5.1 (analysis by Will 13931 Day <willday@rom.oit.gatech.edu>).</li> 13932 13933 <li>corrected khome/kend in xterm-8bit terminfo 13934 description.</li> 13935 13936 <li>improve cursor color by making it always the reverse of 13937 fg/bg unless the cursorColor resource is set, i.e., to 13938 something other than the default foreground (reported by Vikas 13939 Agnihotri and Bram Moolenaar).</li> 13940 13941 <li>minor fixes for compiler warnings, including a syntax error 13942 in the AMOEBA ifdef's.</li> 13943 </ul> 13944 13945 <p>From resync with XFree86 3.9Aj:</p> 13946 13947 <ul> 13948 <li>correction to patch #73, supply missing #else for fallback 13949 definitions of size_t, time_t (Robin Cutshaw 13950 <robin@intercore.com>).</li> 13951 </ul> 13952 13953 <h1><a name="xterm_80" id="xterm_80">Patch #80 - 1998/6/29 - 13954 XFree86 3.9Ai</a></h1> 13955 13956 <p>This fixes a couple of items leftover or introduced by patch 13957 79:</p> 13958 13959 <ul> 13960 <li>take out the logic that suppresses editing-keypad in vt100 13961 mode (those keys are too valuable to give up for a fine point 13962 of emulation).</li> 13963 13964 <li>corrected a couple of places in terminfo where I missed 13965 using the vt220-style editing-keypad codes for Find/Select 13966 (mapped to Home/End).</li> 13967 13968 <li>checked termcap file against terminfo, fix several places 13969 where it was inconsistent.</li> 13970 </ul> 13971 13972 <h1><a name="xterm_79" id="xterm_79">Patch #79 - 1998/6/28 - 13973 XFree86 3.9Ai</a></h1> 13974 13975 <p>This patch fixes several small bugs:</p> 13976 13977 <ul> 13978 <li>use X_EXTRA_LIBS in standalone Makefile.in (patch by Tomas 13979 Vanhala).</li> 13980 13981 <li>add new resource 'oldXtermFKeys' which provides backward 13982 compatibility for F1-F4 control sequences with TOG's 13983 xterm.</li> 13984 13985 <li>determine the server's default foreground/background Pixel 13986 values, needed if the -flipPixels X server option is used 13987 (reported by David Dawes).</li> 13988 13989 <li>correct logic for F1-F4 function keys so that they generate 13990 VT100 compatible escape sequences in VT220 mode, since that is 13991 what the numeric keypad is supposed to do (reported by Ron 13992 Johnson, Jr. <ronjohn@communique.net>).</li> 13993 13994 <li>modify logic for editing keypad to work more like VT220: 13995 don't pass those codes in VT100-mode unless oldXtermFKeys mode 13996 is set.</li> 13997 13998 <li>correct an interaction with the editing-keypad logic that 13999 prevented backarrow key from sending a 127 for the delete key 14000 (the 'remove' escape sequence was being sent instead).</li> 14001 14002 <li>use return-value from getuid() rather than the parameter, 14003 to work on systems which do not update the latter (patch by 14004 Kevin Buhr <buhr@mozart.stat.wisc.edu>)</li> 14005 14006 <li>correct scrollbar border color when toggling to/from secure 14007 keyboard mode (patch by Jeff Uphoff 14008 <juphoff@tarsier.cv.nrao.edu>)</li> 14009 14010 <li>modifications to terminfo file: 14011 <ul> 14012 <li>rename description to xterm-xfree86, adding an entry 14013 'xterm' which is derived from xterm-xfree86 to simplify 14014 customization.</li> 14015 14016 <li>change string for kdch1 from \177 to \E[3~, to address 14017 complaints from Debian developers. (This applies to the key 14018 labeled "Delete", and does not affect the backarrow 14019 key).</li> 14020 14021 <li>add user-strings u6, u7, u8, u9 to entries to make them 14022 work with Daniel Weaver's "tack" program.</li> 14023 14024 <li>modify xterm-24, xterm-bold, xterm-boldso entries to 14025 disentangle them from explicit dependency upon 14026 xterm-xfree86.</li> 14027 14028 <li>add generic 'xterm-color' entry.</li> 14029 14030 <li>minor corrections to xterm-xfree86, xterm-8bit, 14031 xterm-r5 and xterm-r6 entries.</li> 14032 </ul> 14033 </li> 14034 </ul> 14035 14036 <h1><a name="xterm_78" id="xterm_78">Patch #78 - 1998/6/3 - 14037 XFree86 3.9Ah and 3.3.2</a></h1> 14038 14039 <p>Again, most of the bulk of this patch is for ANSI conversion. 14040 I used the IRIX compiler's -wlint option to find the remaining 14041 functions that use K&R syntax (since gcc does not do this 14042 properly). Also, I changed the logic in the print code slightly 14043 to close unwanted files before opening a pipe to the printer. 14044 This may help in some configurations where the line printer hangs 14045 until xterm closes the pipe.</p> 14046 14047 <h1><a name="xterm_77" id="xterm_77">Patch #77 - 1998/5/26 - 14048 XFree86 3.9Ah and 3.3.2</a></h1> 14049 14050 <p>Most of the bulk of this patch is to convert the extended C 14051 (K&R functions with prototypes) to ANSI. I verified that on 14052 Linux by comparing object files, to ensure that I did not, for 14053 example, interchange parameters in the function declarations.</p> 14054 14055 <p>The rest of the patch fixes several minor bugs, and adds a few 14056 features:</p> 14057 14058 <ul> 14059 <li>back-out my use of ncurses "captoinfo -f" option 14060 (if/then/else/endif) formatting, since ncurses did not 14061 correctly filter embedded newlines in terminfo capability 14062 strings until _after_ ncurses 4.1, thus corrupting 14063 setf/setb/sgr strings (reported by Darren Hiebert and 14064 others).</li> 14065 14066 <li>document SGR 8, 28 (invisible/visible), add corresponding 14067 capabilities to terminfo description. 14068 <p>I would also add the 'prot protected capability, but the 14069 control sequences for that would not be recognized or 14070 properly ignored by the older xterm programs.</p> 14071 </li> 14072 14073 <li>modify ChangeGroup to not suppress a null-resource, but 14074 treat it as an empty string (recommended by Stefan 14075 Dalibor).</li> 14076 14077 <li>add printerAutoClose resource to control whether printer is 14078 closed when going offline. More than one person reports 14079 problems (on Solaris 2.6 and Digital Unix 4.0) getting the 14080 printer to proceed unless xterm exits; I think that it is a 14081 problem flushing the pipe. Closing it ought to flush it.</li> 14082 14083 <li>adapt TOG fix-3 to in HandleKeymapChange and VTInitI18N 14084 (but adapt XtStackAlloc/XtStackFree for clarity, as well as 14085 fixing memory leak).</li> 14086 14087 <li>change calls on FillCurBackground to ClearCurBackground, in 14088 effect using XClearArea rather than XFillRectangle when 14089 clearing as a side-effect of scrolling and insertion (patch by 14090 Alexander V Lukyanov)</li> 14091 14092 <li>correct some places where insert/delete did not _move_ the 14093 color attributes, using memmove (patch by Alexander V Lukyanov 14094 <lav@long.yar.ru>)</li> 14095 14096 <li>add ifdef's for __CYGWIN32__, for port to cygnus version 14097 B19.1 (patch by Andrew Sumner 14098 <andrew_sumner@hotmail.com>).</li> 14099 14100 <li>remove #define for hpux that turned on USE_SYSV_ENVVARS, 14101 since this causes some applications (such as 'less') to get 14102 incorrect $LINES and $COLUMNS values (reported by Clint 14103 Olsen).</li> 14104 14105 <li>modify behavior for HP-UX, to set the "reserved" process 14106 group controls to _POSIX_VDISABLE so the TIOCSLTC ioctl does 14107 not produce an error (patch by Ben Yoshino 14108 <ben@wiliki.eng.hawaii.edu>).</li> 14109 14110 <li>correct length of underlining, reducing it by one pixel to 14111 avoid leaving a dot when the application does not clear the 14112 whole screen I noticed this only recently myself (and other 14113 people as well); it depends on the font chosen. A 6x10 font 14114 shows it, but the other fonts from XTerm.ad do not. I also see 14115 a similar problem with the emulation of bold fonts. (patch by 14116 Sergei Laskavy <Laskavy@cs.msu.su>).</li> 14117 14118 <li>add include for Xos.h to xterm.h, to ensure proper 14119 definitions (reported by Holger Veit).</li> 14120 14121 <li>update config.guess to recognize Unixware 2.1 and 7 (patch 14122 by Mike Hopkirk <hops@sco.com>).</li> 14123 </ul> 14124 14125 <h1><a name="xterm_76" id="xterm_76">Patch #76 - 1998/5/8 - 14126 XFree86 3.9Ah and 3.3.2</a></h1> 14127 14128 <p>A fix for the print-window function, and some minor 14129 cleanup:</p> 14130 14131 <ul> 14132 <li>modify logic that closes pipe in the print-window function 14133 to not use pclose, which does not work on all systems, since I 14134 did not open the pipe with popen (reported by Stefan 14135 Dalibor).</li> 14136 14137 <li>correct name of $(EXTRA_LOAD_FLAGS) imake variable 14138 (reported by Stefan Dalibor).</li> 14139 14140 <li>guard logic in ChangeGroup() function against null pointer 14141 (reported by Stefan Dalibor).</li> 14142 14143 <li>ensure that menu entry for toggling sunKeyboard resource is 14144 initialized (reported by Branden Robinson 14145 <branden@purdue.edu>).</li> 14146 14147 <li>gcc unused-variable warnings (reported by Bernd Ernesti 14148 <bernd@arresum.inka.de>)</li> 14149 14150 <li>rename global variable 'buffer' to 'VTbuffer'</li> 14151 </ul> 14152 14153 <h1><a name="xterm_75" id="xterm_75">Patch #75 - 1998/5/7 - 14154 XFree86 3.9Ah and 3.3.2</a></h1> 14155 14156 <p>This incorporates fixes from several people, as well as some 14157 improvements that I made based on feedback from users:</p> 14158 14159 <ul> 14160 <li>add option to standalone configure script, 14161 "--with-own-terminfo-dir", which causes xterm to pass a 14162 predefined value of $TERMINFO to the application. Also use this 14163 value in install rule "make install-ti", for the standalone 14164 configure script. (patch & feedback from Tor Lillqvist 14165 <tml@hemuli.tte.vtt.fi>)</li> 14166 14167 <li>change ifdef's for "hpux" to "__hpux" (patch by Tor 14168 Lillqvist). The imake configuration uses the former, but the 14169 latter is predefined by HP's compilers.</li> 14170 14171 <li>define USE_SYSV_ENVVARS for HP-UX, curses does not use 14172 $TERMCAP (patch by Tor Lillqvist).</li> 14173 14174 <li>on HP-UX, use the /dev/ptym/clone device to allocate PTY's. 14175 Works both on HP-UX 9 and 10. (patch by Tor Lillqvist).</li> 14176 14177 <li>modify configure script to obtain the $(EXTRA_LOADFLAGS) 14178 value from imake, needed for compiling under DEC OSF/1 14179 (reported by Stefan Dalibor)</li> 14180 14181 <li>modify print-window action so that the printer is closed 14182 after printing a window, unless the printer was already opened 14183 (i.e., by an application running in the window). This makes the 14184 printing complete without having to exit xterm, since not all 14185 systems treat fflush through a pipe very well (reported by 14186 Stefan Dalibor)</li> 14187 14188 <li>modify printing code so that the ^M's are not printed if 14189 the printAttribute resource is set to zero (request by Stefan 14190 Dalibor).</li> 14191 14192 <li>correct typo in xterm.man, for the default value of 14193 printAttribute (reported by Stefan Dalibor).</li> 14194 14195 <li>correct printing code so that the alternate character set 14196 is printed, like other attributes, with escape sequences.</li> 14197 14198 <li>correct termcap description, removing spurious 'm' 14199 character from the 'op' capability (reported by Greg Woods 14200 <woods@weird.com>).</li> 14201 14202 <li>correct trace code so that the initial timestamp is 14203 set.</li> 14204 14205 <li>correct/modify utmp data for the Linux glibc 2 14206 configuration, so that the ut_line member is set before using 14207 it to update wtmp (patch by Bill Nottingham 14208 <wen1@cec.wustl.edu>).</li> 14209 </ul> 14210 14211 <h1><a name="xterm_74" id="xterm_74">Patch #74 - 1998/4/27 - 14212 XFree86 3.9Ag and 3.3.2</a></h1> 14213 14214 <p>This corrects a couple of recent bugs and adds a new 14215 resource:</p> 14216 14217 <ul> 14218 <li>modify definition of TRACE_CHILD so that it does not 14219 conflict with ifdef's for USE_USG_PTYS in main.c (reported by 14220 Vikas Agnihotri <VikasA@att.com> and Stefan 14221 Dalibor).</li> 14222 14223 <li>correct ownership of file (actually pipe) written by the 14224 print controls. When undoing the setuid changes in patch #69, I 14225 overlooked this. Now xterm forks a process which resets setuid 14226 and routes the printer data as the real user.</li> 14227 14228 <li>add a new resource, "printAttributes", which controls 14229 whether color attributes (or any attributes) are sent to the 14230 printer.</li> 14231 </ul> 14232 14233 <h1><a name="xterm_73" id="xterm_73">Patch #73 - 1998/4/25 - 14234 XFree86 3.9Ag and 3.3.2</a></h1> 14235 14236 <p>This patch does the following:</p> 14237 14238 <ul> 14239 <li>implements a print-window facility for xterm. Though useful 14240 in itself, I added it as part of some debugging which I am 14241 doing. (Occasionally during an exposure event xterm fails to 14242 restore the proper colors for highlighted text, and printing 14243 the screen will show the internal states nicely). 14244 <p>The print facility now also displays the color 14245 information. (I will probably make this a resource).</p> 14246 </li> 14247 14248 <li>modified the xterm-16color terminfo description to use the 14249 setaf and setab strings, which is a little more efficient 14250 (requested by Stephen Marley).</li> 14251 14252 <li>reduced some clutter of the ifdef/includes (e.g., stdlib.h, 14253 unistd.h, errno) making the configure script test for these. 14254 <p>I removed the symbols Size_t and Time_t, since they no 14255 longer serve a useful purpose.</p> 14256 </li> 14257 14258 <li>added some debugging traces to show the initial screen 14259 size, and the success/failure of the ioctl calls pass handle 14260 window resizing events to the application (for Clint Olsen). 14261 <p>I also modified the trace code to produce two files since 14262 some of the information is produced by the child process. So 14263 now they are Trace-parent.out and Trace-child.out</p> 14264 </li> 14265 14266 <li>updated configure test for ANSI compiler options to handle 14267 a special case for HP-UX 10.x (reported by Clint Olsen).</li> 14268 </ul> 14269 14270 <h1><a name="xterm_72" id="xterm_72">Patch #72 - 1998/4/17 - 14271 XFree86 3.9Ag and 3.3.2</a></h1> 14272 14273 <p>This is a patch from Chris Siebenmann 14274 <cks@hawkwind.utcs.toronto.edu>, which I have cleaned up a 14275 little, and integrated into the configure script.</p> 14276 14277 <p>From his description:</p> 14278 14279 <blockquote> 14280 <p>This set of patches is the latest incarnation of patches 14281 originally written by Ian! D Allen, then of the University of 14282 Waterloo and now of who knows where; I have been carrying them 14283 forward from xterm to xterm ever since about X11R4. What they 14284 do is add an option so that when an iconified xterm receives 14285 output it prepends '*** ' to its icon title and (optionally) 14286 beeps the bell; deiconifying the xterm removes the '*** '. Over 14287 the years I've found this to be incredibly convenient for 14288 monitoring all sorts of low-activity things.</p> 14289 </blockquote> 14290 14291 <h1><a name="xterm_71" id="xterm_71">Patch #71 - 1998/4/12 - 14292 XFree86 3.9Ag and 3.3.2</a></h1> 14293 14294 <p>This patch is a slightly modified version of one by Richard 14295 Braakman, which prevents buffer overflow in the input-method and 14296 preedit-type parsing in xterm. I changed a couple of details to 14297 make the code more maintainable, and looked for similar things - 14298 copying into a fixed-size buffer (found none, though I did spot 14299 an unused variable).</p> 14300 14301 <h1><a name="xterm_70" id="xterm_70">Patch #70 - 1998/3/29 - 14302 XFree86 3.9Af and 3.3.2</a></h1> 14303 14304 <p>This patch corrects some minor bugs in xterm, and fills in 14305 some more details in the VT220 emulation:</p> 14306 14307 <ul> 14308 <li>modify Imakefile to use SpecialCObjectRule for menu and 14309 data modules, making xterm build properly if logging is enabled 14310 (patch by Scott Sewall <scott@iprg.nokia.com>).</li> 14311 14312 <li>restore "ich" capability to terminfo entries, since Michael 14313 Schroeder points out that "ich1" is the one which is the 14314 problem in Solaris vi.</li> 14315 14316 <li>correct color of cursor, which would disappear on 14317 inverse-video since the initialization did not compare the 14318 cursor color against both foreground and background (reported 14319 by Olivier Calle).</li> 14320 14321 <li>correct abbreviation-test for -version and -help options, 14322 making command-line option -vb work (reported by Stefan 14323 Dalibor).</li> 14324 14325 <li>correct a dependency between ifdef's for OPT_I18N_SUPPORT 14326 and OPT_INPUT_METHOD (reported by Stefan Dalibor).</li> 14327 14328 <li>split-out character-set translations as new module 14329 charsets.c, to implement VT220 national replacement character 14330 sets (a mode where some of the characters are displayed as 14331 specific European glyphs). This relies on xterm using an ISO 14332 8859-1 font (approach suggested by Kenneth R. Robinette 14333 <zkrr01@mailbox.neosoft.com>).</li> 14334 14335 <li>correct a missing increment, which made SS2 and SS3 14336 controls repeat the shifted character.</li> 14337 14338 <li>add xterm-nrc to terminfo to illustrate the VT220 national 14339 replacement character sets.</li> 14340 14341 <li>reformat terminfo using new ncurses tic option "-f", which 14342 makes if/then/else/endif expressions easier to read.</li> 14343 </ul> 14344 14345 <h1><a name="xterm_69" id="xterm_69">Patch #69 - 1998/3/16 - 14346 XFree86 3.9Ad and 3.3.2</a></h1> 14347 14348 <p>This corrects the problem in xterm with utmp, reported by 14349 Olivier Calle <olivier@tc.fluke.com> as well as some other 14350 people after the XFree86 3.3.2 release.</p> 14351 14352 <p>The error was introduced by my <a href="#xterm_53">patch 14353 #53</a> in XFree86 3.9r (October 1997).</p> 14354 14355 <p>The correction removes the reset of setuid/setgid before the 14356 main event loop, and solves the problem which I had worked around 14357 in a different manner: for some reason, the particular waitpid() 14358 call in creat_as() hangs, does not return when the child process 14359 exits. I changed the ifdef's to force the Linux configuration to 14360 use wait() instead. This call appears to work properly on other 14361 platforms such as SunOS and Solaris.</p> 14362 14363 <p>I also added tests in the standalone configure script to check 14364 for the existence of waitpid().</p> 14365 14366 <h1><a name="xterm_68" id="xterm_68">Patch #68 - 1998/3/4 - 14367 XFree86 3.9Ad and 3.3.1z</a></h1> 14368 14369 <p>This corrects another problem with the logic for 14370 highlightColor resource. As reported by David Dawes:</p> 14371 14372 <blockquote> 14373 <p>I've just noticed a problem with with the "inverse" control 14374 sequence (ESC[7m) with the 3.3.2 xterm. What it does is sets 14375 the background black, and the text the usual foreground colour 14376 rather than simply swapping the foreground/background.</p> 14377 </blockquote> 14378 14379 <p>This appears to be because when I added logic to check that 14380 the highlightColor was distinct from foreground and background 14381 colors, I did not add a further check to see that it was not 14382 black (I would make an explicit check for the resource not being 14383 set, but see nothing definite in the headers that would let me 14384 reference an explicitly-undefined Pixel value, though there are 14385 some implications in xpm.h). But this should work.</p> 14386 14387 <h1><a name="xterm_67" id="xterm_67">Patch #67 - 1998/2/23 - 14388 XFree86 3.9Ad and 3.3.1e</a></h1> 14389 14390 <p>This patch does the following:</p> 14391 14392 <ul> 14393 <li>improve test for highlightColor so that xterm does not 14394 attempt to use that unless it is different from the foreground 14395 and background colors (reported by Stefan Dalibor 14396 <Stefan.Dalibor@informatik.uni-erlangen.de>. 14397 <p>I could not reproduce this until I noticed that the -rev 14398 option exposed it nicely.</p> 14399 </li> 14400 14401 <li>remove ich and ich1 from xterm and xterm-8bit terminfo 14402 descriptions. SVr4 terminfo documents that you must not combine 14403 these with smir/rmir, but ncurses allows it, opening a hole. 14404 Solaris 2.6 vi does not work properly if it is using a terminfo 14405 description when these are combined, since it was written to 14406 accommodate old terminals that required it (reported by Stephen 14407 Marley).</li> 14408 14409 <li>restore 1-pixel overlap of scrollbar border with left edge 14410 of window (reported by Jim Burmeister 14411 <jimb@metrolink.com>).</li> 14412 14413 <li>add a configure option, --enable-logfile-exec, which allows 14414 the user to specify a pipe for logfile. This defines 14415 ALLOWLOGFILEEXEC.</li> 14416 14417 <li>makes the ALLOWLOGFILEEXEC code compile & run, if 14418 configured.</li> 14419 14420 <li>minor documentation nits.</li> 14421 </ul> 14422 14423 <h1><a name="xterm_66" id="xterm_66">Patch #66 - 1998/2/16 - 14424 XFree86 3.9Ad and 3.3.1d</a></h1> 14425 14426 <p>This fixes the problem reported with failure to build the 14427 <em>resize</em> program (BSDI, OSF/1) due to not having 14428 <termcap.h>, by changing the ifdef to one that would be set 14429 only if the file exists (not currently specified, except by the 14430 standalone configure script). We do not really need to include 14431 <termcap.h> to build, but only for a clean compile, since 14432 it may declare the tgetent() prototype. I also updated the 14433 man-page for <em>resize</em>, since I had recently noticed that 14434 it can be used to resize <em>xterm</em> using the "Sun" control 14435 sequences option.</p> 14436 14437 <h1><a name="xterm_65" id="xterm_65">Patch #65 - 1998/2/14 - 14438 XFree86 3.9Ad and 3.3.1c</a></h1> 14439 14440 <p>This is a small patch to xterm's 8-bit terminal description. I 14441 noticed while testing ncurses that I had specified the wrong 14442 (VT100-style) codes for the F1-F4. Xterm only uses VT220-style 14443 function keys in 8-bit mode.</p> 14444 14445 <h1><a name="xterm_64" id="xterm_64">Patch #64 - 1998/2/8 - 14446 XFree86 3.9Ad</a></h1> 14447 14448 <p>This fixes the following problems with xterm:</p> 14449 14450 <ul> 14451 <li>save/restore the ANSI foreground and background colors with 14452 the other visible attributes in the save-cursor and 14453 restore-cursor operations. This works around a problem with 14454 vim, which apparently assumed that switching between the normal 14455 and alternate screens resets the colors (reported by Jim Battle 14456 <jb@chromatic.com>). 14457 <p>It would be nice to implement save/restore cursor as a 14458 stack (and solve this type of problem completely), but that 14459 would lead to incompatibility with applications which assume 14460 they are running with a VT100 or VT220.</p> 14461 </li> 14462 14463 <li>corrects behavior of a restore-cursor operation which does 14464 not follow a save-cursor (it is supposed to set the character 14465 sets to a known initial state).</li> 14466 14467 <li>extends the sunKeyboard resource (and menu toggle) to 14468 modify the home, end and delete keys on a Sun or PC editing 14469 keypad, making them generate codes compatible with DEC VT220's 14470 Find, Select and Remove keys.</li> 14471 14472 <li>corrects a length in checking command-line options, which 14473 caused the "-help" message to not work when X was not 14474 running.</li> 14475 14476 <li>add some detail to the man-page (requested by Jason Bacon 14477 <acadix@execpc.com>)</li> 14478 14479 <li>modify the standalone configure script to ignore the broken 14480 nsl and socket libraries on IRIX 6.2 (the ones on 5.2 also are 14481 broken, so this change just widens the check for the system 14482 version number).</li> 14483 </ul> 14484 14485 <h1><a name="xterm_63" id="xterm_63">Patch #63 - 1998/2/5 - 14486 XFree86 3.9Ad</a></h1> 14487 14488 <p>This is another patch from Bjorn Helgaas 14489 <helgaas@rsn.hp.com>, which I've reviewed (and learned 14490 some). Following are his notes:</p> 14491 14492 <p>I poked around some more and finally got xterm-62 to build and 14493 run cleanly on HP-UX 10.20. Here are the patches. They look sort 14494 of ugly, so here's a little explanation:</p> 14495 14496 <ul> 14497 <li>aclocal.m4: Removed side effects from the AC_CACHE_VAL 14498 commands in CF_FUNC_TGETENT. Previously, LIBS was set inside 14499 AC_CACHE_VAL, which worked fine the first time configure was 14500 run, but failed if there were cached values.</li> 14501 14502 <li>aclocal.m4: Added temporary setting of LIBS before 14503 AC_TRY_LINK in CF_FUNC_TGETENT. Previously, the last value set 14504 by the AC_TRY_RUN loop was used, so only -lcurses was 14505 checked.</li> 14506 14507 <li>configure.in: Added temporary setting of CPPFLAGS before 14508 AC_CHECK_HEADERS for X11 files. Previously 14509 <X11/DECkeysym.h> and <X11/Xpoll.h> were found only 14510 if they were in the compiler's default include directories, 14511 even if `--x-includes=DIR' had been used or AC_PATH_XTRA had 14512 found them elsewhere.</li> 14513 </ul> 14514 14515 <p>The problem on HP-UX was that we were linking with -lcurses 14516 rather than -ltermcap due to the second bullet above, and 14517 apparently something in HP-UX curses is broken. This seems very 14518 strange, because the only thing used is tgetent, which should 14519 affect any tty/pty configuration, but I lost interest in tracking 14520 down the exact problem.</p> 14521 14522 <h1><a name="xterm_62" id="xterm_62">Patch #62 - 1998/1/23 - 14523 XFree86 3.9Ac</a></h1> 14524 14525 <p>This is a patch mostly by Bjorn Helgaas 14526 <helgaas@dhc.net> (I added the os2main.c change, and a 14527 little of the documentation). From Bjorn's description:</p> 14528 14529 <ul> 14530 <li>If you use the "-hc <color>" option or set the 14531 "highlightColor" resource, text is highlighted by changing only 14532 the background color, rather than using reverse video. I find 14533 this easier to read, especially when selecting multi-colored 14534 text, and it is similar to the way Netscape shows 14535 selections.</li> 14536 14537 <li>Most of the code changes are under "#if 14538 OPT_HIGHLIGHT_COLOR". The principal exception is in screen.c, 14539 where I added a couple calls to resetXtermGC(). This seems like 14540 it could be a bug even without the color highlighting changes 14541 (though I don't pretend to understand all the logic).</li> 14542 </ul> 14543 14544 <h1><a name="xterm_61" id="xterm_61">Patch #61 - 1998/1/17 - 14545 XFree86 3.9Ac</a></h1> 14546 14547 <p>This patch modifies the reset behavior of xterm slightly:</p> 14548 14549 <ul> 14550 <li>change the terminfo entry so that rs1 (one of the strings 14551 used by the 'reset' program) does a hard reset rather than 14552 switching character sets. This is more in accord with other 14553 terminal descriptions.</li> 14554 14555 <li>modifies the treatment of hard reset by the xterm program 14556 to reset the saved lines.</li> 14557 14558 <li>corrects hard reset by also resetting user-defined keys, 14559 i.e., DECUDK.</li> 14560 </ul> 14561 14562 <h1><a name="xterm_60" id="xterm_60">Patch #60 - 1998/1/10 - 14563 XFree86 3.9Ab</a></h1> 14564 14565 <p>This fixes some minor bugs and adds new functionality:</p> 14566 14567 <ul> 14568 <li>add support for blinking text. 14569 <ul> 14570 <li>This does not actually cause the text to flash, but 14571 text with the blink attribute can be displayed in color, 14572 using new resources colorBL and colorBLMode.</li> 14573 14574 <li>If colors are not used, the blinking text will be 14575 displayed as before (just like bold). The main purpose of 14576 this is to make applications work properly when they assume 14577 the emulator supports blinking text.</li> 14578 14579 <li>I did this by moving the per-cell LINEWRAPPED flag to a 14580 per-line flag, to make room for the new BLINK flag. There 14581 were no per-line flags, so this changes a lot of 14582 logic.</li> 14583 </ul> 14584 </li> 14585 14586 <li>corrected missing save-cursor logic in the handling of SGR 14587 1048 (the new control sequence I added in patch #54, 14588 1997/10/17). Reported by Darren Hiebert.</li> 14589 14590 <li>flush the output of the transparent printing after each 14591 line Reported by Tomas Vanhala 14592 <vanhala@ling.helsinki.fi>.</li> 14593 14594 <li>correct the modes that are affected by save/restore cursor 14595 by adding WRAPAROUND and PROTECTED.</li> 14596 14597 <li>corrected placement of one of the XSync calls that I added 14598 in patch #51, 1997/9/15, which had the side-effect of writing 14599 on the window border when the xterm was resizing from 132 to 80 14600 columns.</li> 14601 14602 <li>work around an incompatibility of the XKB definition used 14603 in xterm versus that symbol from IRIX 6.2's imake definitions 14604 (by adjusting the standalone configure script).</li> 14605 </ul> 14606 14607 <h1><a name="xterm_59" id="xterm_59">Patch #59 - 1998/1/5 - 14608 XFree86 3.9Ab</a></h1> 14609 14610 <p>My last patch has an off-by-one error in the comparison for 14611 argc. Douglas Kosovic <douglask@dstc.edu.au> showed me 14612 where (he got a core dump). Also, I think this explains Clint 14613 Olsen's problem, but the symptoms were more subtle (EINVAL for a 14614 system call if the -display option is omitted).</p> 14615 14616 <h1><a name="xterm_58" id="xterm_58">Patch #58 - 1998/1/3 - 14617 XFree86 3.9Ab</a></h1> 14618 14619 <p>This patch does the following:</p> 14620 14621 <ul> 14622 <li>implement logic to permit xterm to work with proportional 14623 fonts. 14624 <ul> 14625 <li>Thomas Wolff <Thomas.Wolff@sietec.de> requested 14626 this (but it isn't exactly what he's asking for - that's a 14627 more involved task).</li> 14628 14629 <li>I chose to do this by rendering the characters on a 14630 fixed pitch, because it would not be useful for existing 14631 applications to display varying numbers of characters on 14632 each line.</li> 14633 14634 <li>Except that this forces the display to be wider, it 14635 works reasonably well. A couple of special cases (reverse + 14636 colorBD, for example) do not display with proper colors, 14637 since the inter-character gaps are painted with the 14638 background.</li> 14639 </ul> 14640 </li> 14641 14642 <li>added a version number to the program (several people have 14643 requested this).</li> 14644 14645 <li>make the -version and -help options interpreted before the 14646 program attempts to open the display.</li> 14647 14648 <li>minor reorganization of the man-page (ordered the options, 14649 resources and translations alphabetically - and eliminated some 14650 duplication).</li> 14651 14652 <li>corrected a misspelled filename in Makefile.in, and added a 14653 lint rule.</li> 14654 14655 <li>updated the configure script to correct behavior when it 14656 cannot find imake, as well as to fix the IRIX+gcc build 14657 (conflict with /usr/include).</li> 14658 14659 <li>regenerated the configure script with a newer patch to 14660 autoconf that fixes a problem with environment space vs the 14661 configure --help message.</li> 14662 </ul> 14663 14664 <h1><a name="xterm_57" id="xterm_57">Patch #57 - 1997/12/26 - 14665 XFree86 3.9Aa</a></h1> 14666 14667 <p>This patch is mostly concerned with the standalone configure 14668 script; a few minor corrections are added:</p> 14669 14670 <ul> 14671 <li>add configure option --disable-tek4014, to allow xterm to 14672 be built without the tek4014 emulation.</li> 14673 14674 <li>add configure option --with-terminal-type, to allow xterm 14675 to be compiled with default $TERM value other than "xterm" 14676 (e.g., "xterm-16color") -- requested by Stephen Marley 14677 <stephen@memex.com>.</li> 14678 14679 <li>fix a typo in the configure --help message -- reported by 14680 Darren Hiebert <darren@hmi.com>.</li> 14681 14682 <li>review diffs between main.c and os2main.c, to make them 14683 more alike. (applies some minor bug-fixes to OS/2's 14684 version).</li> 14685 14686 <li>add missing quotes in memmove/bcopy configure test</li> 14687 </ul> 14688 14689 <h1><a name="xterm_56" id="xterm_56">Patch #56 - 1997/11/28 - 14690 XFree86 3.9x</a></h1> 14691 14692 <p>This patch is based on analysis by Arfst Ludwig 14693 <arfst@luxor.IN-Berlin.DE>, who reported:</p> 14694 14695 <blockquote> 14696 <p>Setting the following resources xterm (all current versions) 14697 receives a segmentation fault on <Btn2Up> after 14698 scrolling:</p> 14699 14700 <pre> 14701 *XTerm*VT100*translations: #override \ 14702 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\ 14703 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1)\n\ 14704 ~Shift<BtnUp>: select-end(PRIMARY, CUT_BUFFER0)\n\ 14705 Shift<BtnUp>: select-end(CLIPBOARD, CUT_BUFFER1) 14706</pre> 14707 <p>(The above resources intention is to be able to paste the 14708 latest selection even if the xterm was cleared.)</p> 14709 14710 <p>And here is how it works (and a fix!): The widget given to 14711 the action handler as first argument is not guaranteed to be a 14712 XtermWidget (it can be the ScrollbarWidget). Instead of 14713 accessing the widget's member directly XtDisplay gives the 14714 required pointer in a safe way.</p> 14715 </blockquote> 14716 14717 <p>I noticed that this was not the only instance (by reading the 14718 code, and testing with his example), and extended the solution to 14719 check the widget-class to ensure that it is indeed xterm's widget 14720 class before attempting to use it in the context of 14721 translations.</p> 14722 14723 <h1><a name="xterm_55" id="xterm_55">Patch #55 - 1997/11/25 - 14724 XFree86 3.9x</a></h1> 14725 14726 <p>This fixes the segmentation violation noted by Rogier Wolff 14727 about a month ago. He'd set xterm to 400 (rows) by 150 columns, 14728 which broke because there were limited buffers (200 rows) used 14729 for juggling data when adding or deleting lines and for switching 14730 between alternate and normal screens. I replaced this by an 14731 allocated buffer.</p> 14732 14733 <p>The bug is simple to test if you set titeInhibit false.</p> 14734 14735 <h1><a name="xterm_54" id="xterm_54">Patch #54 - 1997/10/17 - 14736 XFree86 3.9s</a></h1> 14737 14738 <p>This patch does the following:</p> 14739 14740 <ul> 14741 <li>correct a minor placement problem with the right 14742 scrollbar.</li> 14743 14744 <li>implement a new set of control sequences for switching 14745 between the normal and alternate VT100 screens. These work 14746 around the older sequences limitation that required 14747 modification of the runtime $TERMCAP to cooperate with the 14748 titeInhibit resource (that can't work with terminfo). I do this 14749 by moving all of the functionality of the rmcur terminfo 14750 capability into the control sequences.</li> 14751 14752 <li>implement the alternate-screen menu entry</li> 14753 </ul> 14754 14755 <h1><a name="xterm_53" id="xterm_53">Patch #53 - 1997/10/12 - 14756 XFree86 3.9r</a></h1> 14757 14758 <p>This patch adds a fix and implements a new feature (as well as 14759 some minor typos):</p> 14760 14761 <ul> 14762 <li>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a 14763 problem with the wait call with the logging option. It hung 14764 when the logfile was opened as a command-line option. I fixed 14765 this by moving the StartLogging() call down past the place 14766 where I'd reset the setuid mode. So the logfile is opened as 14767 the real user, without having to fork.</li> 14768 14769 <li>improve Rohleder's changes by renaming the command-line 14770 options and reducing the number of ifdef's.</li> 14771 14772 <li>implement right-scrollbars for xterm (patch by Michael 14773 Rohleder <michael.rohleder@stadt-frankfurt.de>).</li> 14774 </ul> 14775 14776 <h1><a name="xterm_52" id="xterm_52">Patch #52 - 1997/9/29 - 14777 XFree86 3.9q</a></h1> 14778 14779 <p>This patch addresses bugs and requests reported by</p> 14780 14781 <ul> 14782 <li>Bob Maynard <rmaynard@montana.com>,</li> 14783 14784 <li>Clint Olsen <olsenc@ichips.intel.com>,</li> 14785 14786 <li>JCHANDRA@Inf.COM (JCHANDRA),</li> 14787 14788 <li>Michael Schroeder 14789 <Michael.Schroeder@informatik.uni-erlangen.de>,</li> 14790 14791 <li>Pablo Ariel Kohan <pablo@memco.co.il></li> 14792 </ul> 14793 14794 <p>Some of the changes are interrelated (it was an unusually busy 14795 week).</p> 14796 14797 <ul> 14798 <li>change the default resource value for colorMode to true, 14799 matching the Xterm.ad file.</li> 14800 14801 <li>correct behavior of 'ech' control, making the default and 0 14802 parameters erase one character rather than to the end of line 14803 (reported by Michael Schroeder).</li> 14804 14805 <li>add resource boldColors, command-line options +pc and -pc 14806 and configure-script option to specify behavior of xterm's 14807 mapping bold colors 0 through 7 to colors 8 through 15. 14808 (request by Pablo Ariel Kohan).</li> 14809 14810 <li>add resource colorAttrMode to specify whether colorULMode 14811 and colorBDMode can override the ANSI colors (report by Clint 14812 Olsen).</li> 14813 14814 <li>correct a conflict between colorULMode/colorBDMode versus 14815 ANSI colors, where exposure events would occasionally pick up 14816 the former (e.g., colorBD) rather than ANSI colors. Testing the 14817 colorAttrMode made this apparent, though it has been in the 14818 code since 3.2A (<a href="#xterm_35">patch #35</a> in Jan 14819 1997).</li> 14820 14821 <li>correct two problems with the optional logging support. On 14822 Linux at least, the waitpid call in creat_as hangs when the 14823 logging is toggled from the popup menu. Also, the mktemp 14824 template has the wrong number of X's (since X11R5!). Fixed the 14825 waitpid problem by exploiting the fact that the setuid behavior 14826 is reset before the popup menus are available. (reported by 14827 Jayachandran C.).</li> 14828 14829 <li>add configure script options for building with the Xaw3d 14830 and neXtaw libraries.</li> 14831 14832 <li>correct CF_IMAKE_CFLAGS standalone configure script macro, 14833 so that it will pick up $(ALLDEFINES) rather than 14834 $(STD_DEFINES). This is needed to make scrollbars work on 14835 Linux, since that uses narrow prototypes. (reported by Bob 14836 Maynard).</li> 14837 14838 <li>various minor updates to configure-script macros.</li> 14839 </ul> 14840 14841 <h1><a name="xterm_51" id="xterm_51">Patch #51 - 1997/9/15 - 14842 XFree86 3.9p</a></h1> 14843 14844 <p>Most of this patch is related to the standalone configure 14845 script, though there are fixes/enhancements as well:</p> 14846 14847 <ul> 14848 <li>add a new resource sunKeyboard, with associated 14849 command-line option and menu-toggle that allows using a normal 14850 Sun or PC keyboard to generated the complete DEC-style function 14851 keys and keypad.</li> 14852 14853 <li>correct a reversed foreground/background test in the 14854 control sequence that replies with the current SGR 14855 settings.</li> 14856 14857 <li>correct, by invoking XSync, a display problem that caused 14858 the program to not properly update newly exposed areas when a 14859 font change or 80/132 resize request was not completely 14860 accepted.</li> 14861 14862 <li>restructured autoconf macros (I made a library of all of 14863 the macros across the complicated configure scripts I'm working 14864 on).</li> 14865 14866 <li>use the autoconf config.guess and config.sub scripts to 14867 better identify the host-os.</li> 14868 14869 <li>improve the configure script that uses 'imake' as a 14870 fallback for definitions.</li> 14871 14872 <li>correct several instances of unsigned/signed mixed 14873 expressions.</li> 14874 </ul> 14875 14876 <p>I've tested the configure script on Linux, SunOS 4.1.3, 14877 Solaris 2.5.1, IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but 14878 the last run properly as well).</p> 14879 14880 <h1><a name="xterm_50" id="xterm_50">Patch #50 - 1997/8/22 - 14881 XFree86 3.9m</a></h1> 14882 14883 <p>This is a collection of small fixes, and a couple of minor 14884 enhancements:</p> 14885 14886 <ul> 14887 <li>plug a security hole in the implementation of Media Copy 14888 (print) by invoking setuid just before the main loop.</li> 14889 14890 <li>add an ifdef'd include for <sys/termio.h> for HP-UX, 14891 which allows the program to process SIGWINCH events (this is a 14892 bug in X11R6.3)</li> 14893 14894 <li>add state-table entries for VT52 emulation to enter/exit 14895 keypad application mode.</li> 14896 14897 <li>disable the popup-menu entry for 8-bit controls when the 14898 terminal-id is less than 200 (e.g., VT52 or VT100).</li> 14899 14900 <li>ensure that the popup-menu entry for 8-bit controls is 14901 updated when the application enables/disables this mode, 14902 including the response to a full-reset.</li> 14903 14904 <li>implement VT300 DECBKM feature: set interpretation of the 14905 backarrow key to either backspace or delete. The initial 14906 setting is via resource; it can also be modified in the main 14907 popup menu.</li> 14908 14909 <li>implement VTxxx KAM (ISO AM), which allows a keyboard to be 14910 locked (i.e., the terminal discards input).</li> 14911 14912 <li>implement VTxxx SRM, which is used to control local echoing 14913 of input on the terminal.</li> 14914 14915 <li>add terminfo and termcap entries for xterm-8bit, a 14916 variation of the xterm description that uses 8-bit control 14917 characters.</li> 14918 14919 <li>add fallback definitions for Imakefile to allow it to work 14920 on some X11R5 systems that have no SpecialCObjectRule or 14921 ProgramTargetName macros.</li> 14922 14923 <li>add .c.o and .c.i rules to standalone Makefile.in</li> 14924 14925 <li>correct order of -lXmu and -lXext in standalone configure 14926 script.</li> 14927 14928 <li>add configure script options to allow selective disabling 14929 of active-icon, input-method and i18n code (mainly for users 14930 with X11R5 or an incomplete X11R6 configuration).</li> 14931 14932 <li>change menu-indices from #define's to enum values, thereby 14933 making it work better with the ifdef's for logging and 14934 active-icon (the X11R6.3 active-icon code is incorrectly 14935 ifdef'd; this corrects an error introduced by incorporating 14936 that code).</li> 14937 14938 <li>correct minor compile errors in the configuration where 14939 active-icon is not used.</li> 14940 14941 <li>add configure option to suppress echoing of long compiler 14942 commands</li> 14943 14944 <li>correct spelling of decTerminalID in configure script help 14945 message</li> 14946 14947 <li>use gcc __attribute__((unused)) to quiet warnings about 14948 unused parameters when compiling with -W (to make it simpler to 14949 find the real problems).</li> 14950 </ul> 14951 14952 <h1><a name="xterm_49" id="xterm_49">Patch #49 - 1997/8/10 - 14953 XFree86 3.9k</a></h1> 14954 14955 <p>This patch implements the VT100/VT220 Media Copy (i.e., 14956 print-screen) control sequences.</p> 14957 14958 <h1><a name="xterm_48" id="xterm_48">Patch #48 - 1997/7/26 - 14959 XFree86 3.9j</a></h1> 14960 14961 <p>This patch does the following (all but the first affect only 14962 the standalone configure script):</p> 14963 14964 <ul> 14965 <li>minor correction to positioning of underlines for small 14966 (e.g., 5x8) font size. 14967 <p>The existing behavior allowed underlines to be drawn 14968 outside the character-cell, so they weren't cleared properly 14969 under some circumstances.</p> 14970 </li> 14971 14972 <li>adds more special-case tokens to the standalone configure 14973 script's imake-option filter (e.g., "&&", since a "make 14974 -n main.o" on my IRIX system uses that shell construct).</li> 14975 14976 <li>adds a '--enable-logging' option for the standalone 14977 configure script.</li> 14978 14979 <li>adds check and ifdef's for the standalone configure script 14980 to allow for building on platforms with X11R6, which lacks 14981 Xpoll.h (introduced in X11R6.1).</li> 14982 </ul> 14983 14984 <h1><a name="xterm_47" id="xterm_47">Patch #47 - 1997/7/13 - 14985 XFree86 3.9i</a></h1> 14986 14987 <p>This patch does the following</p> 14988 14989 <ul> 14990 <li>corrects an indexing error in the doublesize character 14991 logic (button.c) that caused core dump (this was reported by J. 14992 Wunsch).</li> 14993 14994 <li>corrects the logic of ShowCursor when it is painting in a 14995 doublesize cell (charproc.c).</li> 14996 14997 <li>corrects, according to vttest, the behavior when switching 14998 to doublesize characters and back again (doublechr.c).</li> 14999 15000 <li>adds cbt (back_tab) to the terminfo description (this was 15001 something that I'd overlooked as applicable to curses 15002 optimization last summer).</li> 15003 15004 <li>corrects, for the standalone xmc test, the logic for 15005 disabling xmc.</li> 15006 </ul> 15007 15008 <h1><a name="xterm_46" id="xterm_46">Patch #46 - 1997/7/4 - 15009 XFree86 3.9h</a></h1> 15010 15011 <p>This is a patch to provide test-support for some work I'm 15012 doing on ncurses. It does not modify the normal configuration of 15013 xterm; the code is compiled if the standalone configure option 15014 "--enable-xmc-glitch" is specified.</p> 15015 15016 <h1><a name="xterm_45" id="xterm_45">Patch #45 - 1997/7/2 - 15017 XFree86 3.9h</a></h1> 15018 15019 <p>This fixes the problem reported with xterm's cursor color 15020 versus the background (the second chunk in this patch) and also 15021 removes some duplicate initialization of the cursor GC's. If the 15022 cursor color at startup is the same as the background, then xterm 15023 will use the reverse GC, ignoring the setting of the colorMode 15024 resource.</p> 15025 15026 <h1><a name="xterm_44" id="xterm_44">Patch #44 - 1997/6/22 - 15027 XFree86 3.9g</a></h1> 15028 15029 <p>This implements the first part of the VT100 doublesize 15030 characters for xterm, as well as fixing a handful of bugs:</p> 15031 15032 <ul> 15033 <li>the doublesize character support uses the normal font 15034 (using scaled fonts will be another patch) with blanks to 15035 simulate doublesize characters. This patch does most of the 15036 global changes that'll be required. I've hidden most of the 15037 details in macros and ifdef's so it's easy to configure out 15038 (part of the patch is a configure option for that 15039 purpose).</li> 15040 15041 <li>corrected limits in DeleteChar() function -- it's always 15042 ignored the size of the left border and scrollbar. I noticed 15043 this when working on the doublesize characters since the glitch 15044 was doubled in size (i.e., it wrapped some garbage around the 15045 right margin).</li> 15046 15047 <li>corrected 'memmove()' logic, for standalone builds (it 15048 referenced a malloc wrapper from my development library).</li> 15049 15050 <li>add a check for HideCursor() to prevent repeated screen 15051 updates (which can cause a spurious cursor glitch to appear, 15052 e.g., during scrolling). I noticed this with the 3.2A version 15053 (but only a few weeks ago, when I started working on this 15054 patch).</li> 15055 </ul> 15056 15057 <h1><a name="xterm_43" id="xterm_43">Patch #43 - 1997/6/10 - 15058 XFree86 3.9d</a></h1> 15059 15060 <p>Here's a fix for two problems:</p> 15061 15062 <ul> 15063 <li>modify handling of tgetent results in xterm and resize 15064 programs to make them tolerant of missing termcap file, or 15065 unknown terminal name. In this scheme, an explicit "-tn" option 15066 will succeed, overriding the fallback list.</li> 15067 15068 <li>a nit in the configure script (log extra information to 15069 help diagnose which case of the test-compile of tgetent was 15070 used).</li> 15071 </ul> 15072 15073 <h1><a name="xterm_42" id="xterm_42">Patch #42 - 1997/6/8 - 15074 XFree86 3.2Xl</a></h1> 15075 15076 <p>Bram Moolenaar reported that the cursor color changed 15077 unexpectedly while scrolling. The cause was that it used the same 15078 GC's as the logic that draws the ANSI colors. The bug only 15079 appears if the cursorColor resource isn't set, and has been 15080 present since the initial implementation early last year. (The 15081 same bug also appears in rxvt ;-). Here's a fix.</p> 15082 15083 <h1><a name="xterm_41" id="xterm_41">Patch #41 - 1997/5/28 - 15084 XFree86 3.2Xl</a></h1> 15085 15086 <p>Some nits found by Darren Hiebert (missing part of 15087 install-rule, incorrect assignment for --enable-color-mode 15088 option).</p> 15089 15090 <h1><a name="xterm_40" id="xterm_40">Patch #40 - 1997/5/26 - 15091 XFree86 3.2Xl</a></h1> 15092 15093 <p>Patch for the configure script's logic for obtaining imake 15094 predefined symbols.</p> 15095 15096 <h1><a name="xterm_39" id="xterm_39">Patch #39 - 1997/5/24 - 15097 XFree86 3.2Xl</a></h1> 15098 15099 <p>This patch does the following:</p> 15100 15101 <ul> 15102 <li>integrate the 16-color change for 'xterm'</li> 15103 15104 <li>minor fixes/clarification of tgetent in terminfo vs termcap 15105 to 'resize'</li> 15106 </ul> 15107 15108 <p>(both changes also modify the configure script)</p> 15109 15110 <h1><a name="xterm_38" id="xterm_38">Patch #38 - 1997/5/22 - 15111 XFree86 3.2Xh</a></h1> 15112 15113 <p>This implements a simple configuration script with autoconf 15114 (to which I'll add more options later). It does the 15115 following:</p> 15116 15117 <ul> 15118 <li>configures xterm to build with X11R5 (at least on SunOS 15119 4.1, Solaris 2.4, possibly IRIX - sorry network was down today, 15120 but I did test an earlier version yesterday).</li> 15121 15122 <li>enables/disables the configuration ifdef's for ANSI color 15123 and VT52 emulation.</li> 15124 </ul> 15125 15126 <p>It does not make tests for the things that imake does (that's 15127 another project), instead it uses a hybrid of the autoconf tests 15128 for libraries and adds imake's compiler options (which are 15129 necessary in some cases to get main.c to compile).</p> 15130 15131 <h1><a name="xterm_37" id="xterm_37">Patch #37 - 1997/5/7 - 15132 XFree86 3.9a</a></h1> 15133 15134 <p>This corrects a minor, but annoying error in the vt220 15135 emulation: the DECUDK is only supposed to be interpreted for 15136 _shifted_ function keys.</p> 15137 15138 <h1><a name="xterm_36" id="xterm_36">Patch #36 - 1997/1/16 - 15139 XFree86 3.2r</a></h1> 15140 15141 <p>This corrects something that I overlooked in patch #27 15142 (21-aug-1996), which is that when trimming the region to be 15143 repainted for the highlightSelection resource of xterm, I still 15144 have to paint the background past the highlighted region. This 15145 only happens when I first do a selection in a window that's 15146 partly off-screen, then move the window on-screen.</p> 15147 15148 <h1><a name="xterm_35" id="xterm_35">Patch #35 - 1997/1/7 - 15149 XFree86 3.2o</a></h1> 15150 15151 <p>This patch does the following:</p> 15152 15153 <ul> 15154 <li>combines the coding for foreground and background colors 15155 into a single byte, reducing the memory required to store 15156 saved-lines in color. (I'll take back that byte in a following 15157 patch to use to ensure the character-set, so there's no 15158 long-term decrease in memory use).</li> 15159 15160 <li>modifies the PF1-PF4 coding in termcap/terminfo. Because 15161 xterm is still by default emulating vt100, the function key 15162 codes are vt100-compatible (I overlooked this in patch #31). I 15163 also reformatted the whole terminfo file into a single-column, 15164 for consistency.</li> 15165 15166 <li>adds an interim xterm-vt220 description to accommodate the 15167 old and new styles of function-keys (though probably it'd be 15168 better to drop the old-style altogether).</li> 15169 </ul> 15170 15171 <h1><a name="xterm_34" id="xterm_34">Patch #34 - 1997/1/5 - 15172 XFree86 3.2o</a></h1> 15173 15174 <p>This patch does the following:</p> 15175 15176 <ul> 15177 <li>implement DECSTR (soft terminal reset). The biggest diff is 15178 due to adding another state table (note that there's only one 15179 useful state here, but it's only 256 bytes rather than 1k as it 15180 would have been before I reduced the size of state 15181 entries).</li> 15182 15183 <li>some minor tidying up (e.g., signed/unsigned use bitcpy, 15184 MODE_DECCKM, resetColor, resetCharsets). More is done in 15185 <a href="#xterm_35">patch #35</a>.</li> 15186 </ul> 15187 15188 <p>I got the description of DECSTR from a vt420 user's manual. 15189 I'll do some testing with vttest to ensure that there's nothing 15190 else to do than what was documented.</p> 15191 15192 <h1><a name="xterm_33" id="xterm_33">Patch #33 - 1996/11/24 - 15193 XFree86 3.2</a></h1> 15194 15195 <p>This adds to the reset-fix by Matthieu Herrb 15196 <Mathieu.Herrb@mipnet.fr> a small change to make xterm able 15197 to output 8-bit characters in VT100 mode. Applications that run 15198 on real VT100's don't do that anyway, and this feature should be 15199 removed sometime after finishing off the VT220 emulation (VT220's 15200 can do 8-bit characters). That would be a good time to change the 15201 default terminal-id to 220.</p> 15202 15203 <h1><a name="xterm_32" id="xterm_32">Patch #32 - 1996/11/21 - 15204 XFree86 3.2</a></h1> 15205 15206 <p>This implements the REP (repeat) control for xterm. That isn't 15207 part of the DEC VTxxx series, but is defined in ISO 6429. (Note 15208 that the base xterm terminal description is <em>not</em> changed 15209 -- I added a variant, "xterm-rep").</p> 15210 15211 <h1><a name="xterm_31" id="xterm_31">Patch #31 - 1996/11/16 - 15212 XFree86 3.2</a></h1> 15213 15214 <p>This implements vt52 emulation in xterm (ifdef'd so it can be 15215 removed). I've been using it for testing for the past month or 15216 so.</p> 15217 15218 <h1><a name="xterm_30" id="xterm_30">Patch #30 - 1996/11/16 - 15219 XFree86 3.2</a></h1> 15220 15221 <p>From bug-report by <auroux@clipper.ens.fr> (Denis 15222 Auroux), missing reset to ground state. I checked through the 15223 rest of <em>that</em> table and found another, in the 15224 unimplemented MC (screen print).</p> 15225 15226 <h1><a name="xterm_29" id="xterm_29">Patch #29 - 1996/9/15 - 15227 XFree86 3.1.2Gb</a></h1> 15228 15229 <p>This patch does the following:</p> 15230 15231 <ul> 15232 <li>corrects the restoration of color for bold/underline color 15233 mode</li> 15234 15235 <li>adds a resource 'decTerminalID' to control the reporting 15236 level of xterm (e.g., VT100, VT220).</li> 15237 15238 <li>uses the new resource to implement/correct the DA1, DA2 and 15239 DECRPTUI reports.</li> 15240 15241 <li>change valid-response code in DECRQSS from 0 to 1 (the 15242 manual says 0, but the VT420 terminal I've been testing on says 15243 1).</li> 15244 </ul> 15245 15246 <p>All of these changes are based on vttest 2.6</p> 15247 15248 <p>(Most of the volume in the patch is to add 2 more state tables 15249 for parsing the 2nd/3rd device-attribute controls).</p> 15250 15251 <h1><a name="xterm_28" id="xterm_28">Patch #28 - 1996/8/31 - 15252 XFree86 3.1.2F</a></h1> 15253 15254 <p>This patch corrects the following reported by Roland Rosenfeld 15255 <roland@spinnaker.rhein.de>:</p> 15256 15257 <ul> 15258 <li>handle SGR 22, 24 and 25 in combination with colorUL and 15259 colorBD resources. Also noted & fixed reset of colored 15260 underline/bold with SGR 0.</li> 15261 15262 <li>a typo in the termcap (missing '['), from 3.1.2Dj (my 15263 error)</li> 15264 </ul> 15265 15266 <p>Roland also complained that he couldn't use box characters 15267 with</p> 15268 15269 <pre> 15270 -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1 15271</pre> 15272 <p>but that's a known xterm limitation (the box characters must 15273 be part of the font, in the first 32 locations).</p> 15274 15275 <h1><a name="xterm_27" id="xterm_27">Patch #27 - 1996/8/21 - 15276 XFree86 3.1.2Ek</a></h1> 15277 15278 <p>This patch fixes one of my long-term gripes: xterm's selection 15279 doesn't clearly show what's being selected (as per David's 15280 request, it's controlled by a resource, which defaults to the 15281 older behavior).</p> 15282 15283 <h1><a name="xterm_26" id="xterm_26">Patch #26 - 1996/8/20 - 15284 XFree86 3.1.2Ei</a></h1> 15285 15286 <p>Here's a patch to fix a problem with xterm's cut/paste and 15287 another to modify the appearance of the highlighting while 15288 selecting. (The changes are independent, so you can see if the 15289 change to screen.c is desirable).</p> 15290 15291 <h1><a name="xterm_25" id="xterm_25">Patch #25 - 1996/8/18 - 15292 XFree86 3.1.2Ei</a></h1> 15293 15294 <p>Here's a correction for two minor bugs that I picked up in 15295 testing, plus some lint (from Solaris 2.5) where NULL was used 15296 incorrectly:</p> 15297 15298 <ul> 15299 <li>make the second alternate font the same as the first 15300 (that's what vt420 and dtterm do)</li> 15301 15302 <li>corrected DECSCL report when DECSCL hasn't been set (i.e., 15303 don't return a '60').</li> 15304 </ul> 15305 15306 <h1><a name="xterm_24" id="xterm_24">Patch #24 - 1996/8/11 - 15307 XFree86 3.1.2Ee</a></h1> 15308 15309 <p>This patch does several things. In effect, xterm can (I think) 15310 do a reasonably good job of emulating vt220 and vt320 terminals 15311 (as well as it was doing vt100, at any rate ;-).</p> 15312 15313 <p>It does NOT do:</p> 15314 15315 <ul> 15316 <li>soft fonts</li> 15317 15318 <li>rigel or sixel graphics</li> 15319 </ul> 15320 15321 <p>Anyway, I:</p> 15322 15323 <ul> 15324 <li>added ECH, CPL, CNL, SU, SD, CBT, CHT controls</li> 15325 15326 <li>added popup-menu for switching between DEC and Sun function 15327 keys. (corrected alignment err wrt logging entry at that 15328 point).</li> 15329 15330 <li>make xterm recognize both 8-bit and 7-bit controls 15331 (including popup menu for switching modes).</li> 15332 15333 <li>add user-definable function keys (aka DECUDK)</li> 15334 15335 <li>support concealed text</li> 15336 15337 <li>support protected text (both ISO compatible and DEC 15338 compatible - that's not the same thing, btw), with SPA, EPA, 15339 DECSCA, DECSED, DECSEL controls.</li> 15340 15341 <li>implement DECSCL.</li> 15342 </ul> 15343 15344 <p>I'll be continuing to test this patch for a while, but don't 15345 expect to add any new functionality (it passes all of the current 15346 tests I've built in vttest, but I need to make more tests)..</p> 15347 15348 <h1><a name="xterm_23" id="xterm_23">Patch #23 - 1996/7/31 - 15349 XFree86 3.1.2Ec</a></h1> 15350 15351 <p>This removes the blinking cursor I added last week (for 15352 performance reasons). Time-permitting, I'll revisit this after 15353 3.2 is released (there <em>will</em> be more work after XFree86 15354 3.2, I assume).</p> 15355 15356 <h1><a name="xterm_22" id="xterm_22">Patch #22 - 1996/7/26 - 15357 XFree86 3.1.2Ec</a></h1> 15358 15359 <p>I looked more closely at my "double-negative" and realized 15360 that I had been confused by the default color scheme (black on 15361 white) in combination with reverse video. However, I did see that 15362 the original_fg and original_bg data weren't really used - so I 15363 removed that logic.</p> 15364 15365 <p>Also:</p> 15366 15367 <ul> 15368 <li>during initialization, check if ANSI colors are set with 15369 non fg/bg values, disable color mode if not. This makes xterm 15370 tolerant of applications that allocate the whole color 15371 map.</li> 15372 15373 <li>implemented blinking cursor (default is <em>off</em>)</li> 15374 </ul> 15375 15376 <h1><a name="xterm_21" id="xterm_21">Patch #21 - 1996/7/24 - 15377 XFree86 3.1.2Ec</a></h1> 15378 15379 <p>This patch does the following:</p> 15380 15381 <ul> 15382 <li>fixes some minor typography in the control-sequences 15383 documentation (it didn't occur to me til I'd sent the last 15384 patch that I could use ghostview for previewing the troff 15385 output ;-)</li> 15386 15387 <li>adjusts the shell's background color in ReverseVideo so 15388 that flicker in resizing is reduced</li> 15389 15390 <li>adds an ifdef OPT_ISO_COLORS to allow configuring xterm 15391 without the ISO color support (saves a lot of memory)</li> 15392 15393 <li>used that ifdef to isolate/modify logic so that if the user 15394 doesn't have the colorMode enabled, then ISO color support is 15395 disabled (saving memory). 15396 <p>(If anyone needs numbers, I had savedLines set to 2000, 15397 and found a reduction from ~700k to ~400k of allocated 15398 memory, according to Purify).</p> 15399 </li> 15400 </ul> 15401 15402 <h1><a name="xterm_20" id="xterm_20">Patch #20 - 1996/7/24 - 15403 XFree86 3.1.2Ec</a></h1> 15404 15405 <p>This documents the changes in control sequences for window 15406 operations that I added in my previous patch. I'm testing another 15407 patch that allows the user to use less memory if colors aren't 15408 needed.</p> 15409 15410 <h1><a name="xterm_19" id="xterm_19">Patch #19 - 1996/7/21 - 15411 XFree86 3.1.2Ec</a></h1> 15412 15413 <p>This patch does the following:</p> 15414 15415 <ul> 15416 <li>fixes the core dump that I reported on IRIX 5.2 (in main.c) 15417 <p>(it's worth noting that this bug exists in X11R6.1, so I'd 15418 like to assume that someone's already submitted a fix to X 15419 Consortium...)</p> 15420 </li> 15421 15422 <li>change the interpretation of zero rows or columns in a 15423 resize-window request to use the root window's size (looking 15424 more carefully at dtterm, that seems to be what it does).</li> 15425 15426 <li>change some memmove calls to memcpy for slightly better 15427 performance. also, a couple of memset calls to bzero, since 15428 Quantify says bzero runs 20% faster, I assume because there's 15429 one less argument.</li> 15430 15431 <li>interpret character sets 1 and 2 (so that vttest gives a 15432 reasonable result) Both rxvt and dtterm do something 15433 equivalent.</li> 15434 15435 <li>fix a minor memory leak in the logic that retrieves the 15436 window or icon names (Purify found this for me while I ran 15437 vttest).</li> 15438 </ul> 15439 15440 <h1><a name="xterm_18" id="xterm_18">Patch #18 - 1996/7/18 - 15441 XFree86 3.1.2Ec</a></h1> 15442 15443 <p>This implements the following:</p> 15444 15445 <ul> 15446 <li>escape sequences that act like the CDE dtterm's window 15447 operations (though I have implemented the default width and 15448 height -- I've seen a rather buggy dtterm running that seems to 15449 treat width=0 or height=0 literally -- maybe that's a feature, 15450 not a bug?)</li> 15451 15452 <li>minor tweak to the screen-repainting when resizing (I still 15453 cannot entirely get rid of flicker).</li> 15454 15455 <li>still more fixes to terminfo & termcap (I corrected my 15456 error for the hpa code and added some other stuff by comparing 15457 to ncurses' description and rxvt's).</li> 15458 15459 <li>a tweak to the changes by Michael Rohleder for the color 15460 translation</li> 15461 15462 <li>re-order attribute codes to allow later implementation of 15463 protected fields (dtterm supposedly does this; it's probably 15464 more useful than blinking or invisible text -- that uses up all 15465 of the available bits without changing the attribute scheme 15466 radically).</li> 15467 </ul> 15468 15469 <h1><a name="xterm_17" id="xterm_17">Patch #17 - 1996/7/2 - 15470 XFree86 3.1.2Eb</a></h1> 15471 15472 <p>This patch implements for xterm several minor features from 15473 ISO 6429 which are useful for terminfo applications. The HPA and 15474 VPA control sequences allow cursor movement along a row or 15475 column, cutting down a little on the characters transmitted. The 15476 other codes allow resetting specific graphic rendition attributes 15477 without modifying the other attributes. (now if someone just had 15478 time to implement blinking cursors...)</p> 15479 15480 <h1><a name="xterm_16" id="xterm_16">Patch #16 - 1996/6/25 - 15481 XFree86 3.1.2Ea</a></h1> 15482 15483 <p>Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks 15484 ago that I'd missed some of the background coloring in xterm. I 15485 investigated, and found that while I'd picked up on the 15486 clear-to-bottom and clear-to-end-of-line operations, I'd 15487 overlooked the insert/delete lines. Just so I wouldn't overlook 15488 any more of these, I updated a copy of vttest to test ISO colors 15489 and bce (background color erase). This patch introduces a new 15490 function, ClearCurBackground, whose calls replace the direct 15491 XClearArea calls that I'd overlooked. (There's also a few 15492 compiler warnings fixed, etc ;-)</p> 15493 15494 <h1><a name="xterm_15" id="xterm_15">Patch #15 - 1996/5/29 - 15495 XFree86 3.1.2E</a></h1> 15496 15497 <p>This fixes the problem reported by David Dawes, by making the 15498 50msec select timeout for the Xaw3d arrow scrollbar a resource. 15499 (I made it a boolean for a variety of reasons -- to make it a 15500 number, you'd need an additional resource, to avoid breaking the 15501 logic).</p> 15502 15503 <h1><a name="xterm_14" id="xterm_14">Patch #14 - 1996/5/12 - 15504 XFree86 3.1.2Dj</a></h1> 15505 15506 <p>This patch brings the termcap and terminfo descriptions for 15507 xterm up to date. I made the following changes:</p> 15508 15509 <ul> 15510 <li>reformatted the terminfo description in a single-column 15511 (this is ok for terminfo, and will simplify future patches -- 15512 can't do that for termcap, since it would impact buffer 15513 requirements on some systems).</li> 15514 15515 <li>omitted obsolete features in termcap to save a little space 15516 (bs, pt)</li> 15517 15518 <li>added color capabilities to termcap (ut, Co, NC, op, AB, 15519 AF)</li> 15520 15521 <li>corrected some capabilities (vi, ve)</li> 15522 15523 <li>added 'st' (set tab)</li> 15524 15525 <li>reduced function keys in termcap for 'xterm' to 12 because 15526 color capabilities makes that description larger than 1023 15527 characters.</li> 15528 15529 <li>created new termcap name 'xtermm' (monochrome) to match the 15530 terminfo list, and make that description have 20 function 15531 keys.</li> 15532 15533 <li>added corresponding color capabilities to terminfo (bce, 15534 colors, pairs, op, ncv, setab, setaf)</li> 15535 15536 <li>corrected corresponding capabilities in terminfo (civis, 15537 cnorm, rmcup, smcup)</li> 15538 15539 <li>added capabilities (el1, hts)</li> 15540 15541 <li>in both, corrected home/end keys to match the code 15542 correction made by Thomas Mueller in 3.1.2Bk 15543 <p>=> (I'm still considering modifying the code & 15544 description to match the rxvt program).</p> 15545 </li> 15546 </ul> 15547 15548 <h1><a name="xterm_13" id="xterm_13">Patch #13 - 1996/4/23 - 15549 XFree86 3.1.2Df</a></h1> 15550 15551 <p>This corrects my earlier changes for colors - the inner border 15552 of the xterm was getting painted with the wrong color, since I'd 15553 moved the call to set the background into the logic that tracks 15554 SGR information.</p> 15555 15556 <h1><a name="xterm_12" id="xterm_12">Patch #12 - 1996/3/16 - 15557 XFree86 3.1.2Dc</a></h1> 15558 15559 <p>This corrects a memory leak in xterm that happens whenever one 15560 switches fonts.</p> 15561 15562 <h1><a name="xterm_11" id="xterm_11">Patch #11 - 1996/3/5 - 15563 XFree86 3.1.2Db</a></h1> 15564 15565 <p>This patch corrects the behavior of the ANSI colors in xterm 15566 when reverse video is used, as well as some other lesser 15567 sins:</p> 15568 15569 <ul> 15570 <li>button.c 15571 <ul> 15572 <li>(compiler warnings: shadowing of 'time', redundant 15573 cast)</li> 15574 </ul> 15575 </li> 15576 15577 <li>charproc.c 15578 <ul> 15579 <li>renamed screen.colors[] array to screen.Acolors[] to 15580 more easily distinguish the non-ANSI colors from the ANSI 15581 colors.</li> 15582 15583 <li>moved logic of SGR_Save() into VTInitialize, getting 15584 rid of local private variables original_fg and 15585 original_bg.</li> 15586 15587 <li>moved some logic into getXtermForeground and 15588 getXtermBackground from SGR_Foreground, SGR_Background, 15589 etc.</li> 15590 15591 <li>corrected misleading 'row' to 'col' in case for CUF, 15592 CUB sequences.</li> 15593 </ul> 15594 </li> 15595 15596 <li>ctlseqs.ms</li> 15597 15598 <li>xterm.man 15599 <ul> 15600 <li>(correct a misconception which I'd added that the 15601 color0 through color6 resource values apply to non-ANSI 15602 colors)</li> 15603 </ul> 15604 </li> 15605 15606 <li>ptyx.h 15607 <ul> 15608 <li>added original_fg, original_bg to TScreen 15609 structure.</li> 15610 </ul> 15611 </li> 15612 15613 <li>scrollbar.c 15614 <ul> 15615 <li>(compiler warnings: redundant cast)</li> 15616 </ul> 15617 </li> 15618 15619 <li>util.c 15620 <ul> 15621 <li>new functions getXtermForeground and getXtermBackground 15622 replace the macros GET_FG and GET_BG, with the added 15623 functionality of checking for the reverse-video status of 15624 xterm.</li> 15625 15626 <li>in ReverseVideo, swap the SGR foreground and background 15627 colors also.</li> 15628 </ul> 15629 </li> 15630 </ul> 15631 15632 <h1><a name="xterm_10" id="xterm_10">Patch #10 - 1996/2/14 - 15633 XFree86 3.1.2Cd</a></h1> 15634 15635 <p>I observed an occasional glitch in the xterm's color behavior; 15636 a clear to end of line would get a color that had been used in a 15637 program that supposedly reset colors. I traced this down to the 15638 way xterm was modifying colors of GC's on the fly; it didn't 15639 restore the original color of the GC, even though it would later 15640 be used in functions (such as ClearRight) that assumed (my error) 15641 that the GC would have the current foreground or background 15642 color.</p> 15643 15644 <p>I fixed this by resetting the GC's colors with a new function 15645 'resetXtermGC()', and direct calls on 15646 SGR_Foreground/SGR_Background, as appropriate and using a new 15647 function 'updatedXtermGC()' to encapsulate the logic that 15648 modifies the GC's color. (I also removed some commented-out code 15649 that was trying to do this -- the problem was a little more 15650 obscure).</p> 15651 15652 <h1><a name="xterm_09" id="xterm_09">Patch #9 - 1996/2/10 - 15653 XFree86 3.1.2Cb</a></h1> 15654 15655 <p>This patch fixes the remaining problems that I had making 15656 xterm run with x11r5, as well as a couple of other bugs. It 15657 follows my patch from yesterday, that added ifdef's for some of 15658 the input-method resources.</p> 15659 15660 <ul> 15661 <li>corrected ifdef's that suppress the input-method code 15662 (doesn't exist in my x11r5, and xterm works adequately without 15663 it).</li> 15664 15665 <li>corrected fallback definition for 'Select()' macro (oops: 15666 I'd copied the wrong text...)</li> 15667 15668 <li>moved the declarations for the fd_set variables to 15669 data.[ch]</li> 15670 15671 <li>corrected an ifdef in resize.c (sunos 4.x doesn't have 15672 termcap.h)</li> 15673 15674 <li>corrected (in main.c) some unused/orphaned variables.</li> 15675 </ul> 15676 15677 <h1><a name="xterm_08" id="xterm_08">Patch #8 - 1996/2/9 - 15678 XFree86 3.1.2Cb</a></h1> 15679 15680 <p>This is mostly a documentation patch for xterm. It describes 15681 the color control sequences in more detail, and documents some 15682 other features of xterm that aren't described elsewhere.</p> 15683 15684 <p>I've also added a couple of ifdef's to fix (part of) the 15685 problem that I'm working on (making the program work properly on 15686 x11r5, where I'm doing memory testing -- I have a "good" version 15687 from mid-January, but my resync version doesn't work properly on 15688 x11r5). I'm not done with <em>that</em> yet.</p> 15689 15690 <h1><a name="xterm_07" id="xterm_07">Patch #7 - 1996/1/28 - 15691 XFree86 3.1.2n</a></h1> 15692 15693 <p>I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF). I've 15694 got an S3 card.</p> 15695 15696 <p>This fixes the following in the 3.1.2n xterm:</p> 15697 15698 <ul> 15699 <li>initialize cur_foreground, cur_background in charproc.c 15700 (Purify told me they weren't initialized).</li> 15701 15702 <li>add interpretation of codes 39, 49, to reset background and 15703 foreground to default value (I'm told that ISO 6429 does this; 15704 but I don't have a written reference -- yet -- can anyone help 15705 here?). Anyway, rxvt does it, and it'll solve my remaining 15706 color management problems.</li> 15707 15708 <li>shadowing of 'time' in menu.c</li> 15709 15710 <li>'Cardinal' vs 'int' in scrollbar.c</li> 15711 15712 <li>several changes to permit compile with X11R5 (the system 15713 that I've got Purify on won't be upgraded to X11R6 for a long 15714 time).</li> 15715 </ul> 15716 15717 <p>I built this version (with a minor nit that I'll patch soon) 15718 on SunOS 4.1.3 so that I can test it some more with Purify.</p> 15719 15720 <p><em>btw</em>: the changes made in Xpoll.h won't work on some 15721 older systems, because fd_set isn't a defined type (I've got one 15722 machine at least that this applies to).</p> 15723 15724 <h1><a name="xterm_06" id="xterm_06">Patch #6 - 1996/1/8</a></h1> 15725 15726 <p>This patch does all of the SGR foreground/background fixes 15727 (i.e., clearing the screen after an SGR color is set causes that 15728 color to be used in the foreground and/or background). If the 15729 FG_COLOR and/or BG_COLOR flags aren't set, then the xterm 15730 foreground and background default to the window's values. This 15731 usage is consistent with various types of hardware (especially 15732 the IBM PC), and is also used in rxvt.</p> 15733 15734 <ul> 15735 <li>charproc.c: 15736 <ul> 15737 <li>add/use new macros GET_FG, GET_BG - n/c.</li> 15738 15739 <li>add/use new functions SGR_Foreground() and 15740 SGR_Background() to set corresponding colors in GC's, and 15741 to retain sense of "original" colors. 15742 <p>=> This makes redundant some of the corresponding 15743 logic in HideCursor to set the foreground and background, 15744 but I left it in since it <em>may</em> be fixing an 15745 unrelated requirement.</p> 15746 </li> 15747 15748 <li>set GC's in LoadNewFont() according to whether the SGR 15749 fg/bg colors are active. 15750 <p>=> This fixes some glitches in the accompanying 15751 resize, that leaves parts of the window in the original 15752 background color.</p> 15753 </li> 15754 </ul> 15755 </li> 15756 15757 <li>screen.c: 15758 <ul> 15759 <li>modified ClearBufRows() to use the SGR fg/bg colors if 15760 they're set.</li> 15761 15762 <li>added function ScrnClearLines(), used this to replace 15763 portions of ScrnInsertLine() and ScrnDeleteLine(). The new 15764 function uses the SGR fg/bg colors if they're set. 15765 <p>=> Otherwise, selection after an index or reverse 15766 index will paint the wrong colors.</p> 15767 </li> 15768 15769 <li>modified ScrnDeleteChar() and ScrnInsertChar() to use 15770 SGR fg/bg colors.</li> 15771 </ul> 15772 </li> 15773 15774 <li>util.c: 15775 <ul> 15776 <li>modified ClearRight() so that if either of the SGR 15777 fg/bg colors is set, we don't bzero the attributes and 15778 color arrays, but instead fill them with the appropriate 15779 codes.</li> 15780 15781 <li>modified ClearLeft to use SGR fg/bg colors.</li> 15782 </ul> 15783 </li> 15784 </ul> 15785 15786 <h1><a name="xterm_05" id="xterm_05">Patch #5 - 1996/1/7</a></h1> 15787 15788 <p>This patch modifies the object code, by replacing indexing 15789 expressions with temporary variables with the full indexing 15790 expression. At first glance, this seems inefficient (it did to me 15791 ;-), until remembering comments made in the compilers newsgroups 15792 that trying to "help" the compiler doesn't really work that well. 15793 A good optimizing compiler can do a better job than the 15794 programmer can. (There's a moral in the use of 'register' 15795 variables also, but I won't fix those...).</p> 15796 15797 <p>Anyway, the revised code generates a smaller object...</p> 15798 15799 <ul> 15800 <li>charproc.c: 15801 <ul> 15802 <li>recode index expressions in ShowCursor() and 15803 HideCursor() using SCRN_BUF_xxxxS macros - changes 15804 object.</li> 15805 15806 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15807 </ul> 15808 </li> 15809 15810 <li>ptyx.h: 15811 <ul> 15812 <li>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS 15813 macros, to pick up references to ScrnBuf data directly, and 15814 added MAX_PTRS symbol to pick up those '4' constants strewn 15815 about the code - n/c.</li> 15816 </ul> 15817 </li> 15818 15819 <li>screen.c: 15820 <ul> 15821 <li>recode index expressions in ScreenWrite() using 15822 SCRN_BUF_xxxxS macros - changes object.</li> 15823 15824 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15825 15826 <li>use macros BUF_CHARS, BUF_ATTRS - n/c.</li> 15827 15828 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15829 - n/c</li> 15830 </ul> 15831 </li> 15832 15833 <li>scrollbar.c: 15834 <ul> 15835 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15836 15837 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15838 - n/c</li> 15839 </ul> 15840 </li> 15841 </ul> 15842 15843 <h1><a name="xterm_04" id="xterm_04">Patch #4 - 1996/1/7</a></h1> 15844 15845 <p>When setting up for this phase, I saw that you'd corrected the 15846 bug that I found in ClearLeft. I decided to make this series of 15847 patches anyway, since readability never hurt (and there's the 15848 potential for finding another bug while reviewing this set).</p> 15849 15850 <ul> 15851 <li>button.c: 15852 <ul> 15853 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15854 </ul> 15855 </li> 15856 15857 <li>charproc.c: 15858 <ul> 15859 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15860 </ul> 15861 </li> 15862 15863 <li>ptyx.h: 15864 <ul> 15865 <li>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS, 15866 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four arrays 15867 that are derived from screen->buf.</li> 15868 </ul> 15869 </li> 15870 15871 <li>screen.c: 15872 <ul> 15873 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15874 </ul> 15875 </li> 15876 15877 <li>util.c: 15878 <ul> 15879 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15880 </ul> 15881 </li> 15882 </ul> 15883 15884 <h1><a name="xterm_03" id="xterm_03">Patch #3 - 1996/1/7</a></h1> 15885 15886 <p>This is my third (and final cleanup) patch for xterm. It gets 15887 rid of the unused stuff, and converts several functions to static 15888 (thereby reducing their scope).</p> 15889 15890 <p>At this point, the only compile warnings I've got (on Linux) 15891 are those about the select arguments (int vs fd_set type), and a 15892 missing declaration for waitpid. Those both are hard to get right 15893 without autoconfigure.</p> 15894 15895 <p>The next patches will address the functional changes...</p> 15896 15897 <ul> 15898 <li>Tekproc.c: 15899 <ul> 15900 <li>changed several functions to 'static' that aren't used 15901 outside this module -- changes object</li> 15902 </ul> 15903 </li> 15904 15905 <li>charproc.c: 15906 <ul> 15907 <li>changed several functions to 'static' that aren't used 15908 outside this module -- changes object</li> 15909 15910 <li>deleted unused function unparsefputs -- changes 15911 object.</li> 15912 </ul> 15913 </li> 15914 15915 <li>main.c: 15916 <ul> 15917 <li>changed several functions to 'static' that aren't used 15918 outside this module -- changes object</li> 15919 15920 <li>ifdef'd out unused function 'consolepr()' -- changes 15921 object</li> 15922 15923 <li>removed unused variable 'dummy_tio' -- changes 15924 object</li> 15925 15926 <li>moved variable 'discipline' to quiet unused-warning -- 15927 changes object</li> 15928 </ul> 15929 </li> 15930 15931 <li>main.h: 15932 <ul> 15933 <li>deleted unused definition of DEFBORDERWIDTH - n/c</li> 15934 </ul> 15935 </li> 15936 15937 <li>misc.c: 15938 <ul> 15939 <li>changed several functions to 'static' that aren't used 15940 outside this module -- changes object</li> 15941 15942 <li>provide dummy return statements for xerror and xioerror 15943 to quiet compiler warnings -- changes object</li> 15944 </ul> 15945 </li> 15946 15947 <li>ptyx.h: 15948 <ul> 15949 <li>change sbuf_address and abuf_address to 'Char *' - 15950 n/c</li> 15951 </ul> 15952 </li> 15953 15954 <li>resize.c: 15955 <ul> 15956 <li>changed several functions to 'static' that aren't used 15957 outside this module -- changes object</li> 15958 </ul> 15959 </li> 15960 15961 <li>screen.c: 15962 <ul> 15963 <li>remove unnecessary 'Char **' casts - n/c</li> 15964 </ul> 15965 </li> 15966 15967 <li>util.c: 15968 <ul> 15969 <li>changed several functions to 'static' that aren't used 15970 outside this module -- changes object</li> 15971 </ul> 15972 </li> 15973 </ul> 15974 15975 <h1><a name="xterm_02" id="xterm_02">Patch #2 - 1996/1/7</a></h1> 15976 15977 <p>This is my second patch to xterm. It corrects most of the gcc 15978 warnings (except for some that are due to X header files ;-). I 15979 compared objects to keep track of the changes that don't affect 15980 the object code (n/c) versus those that do.</p> 15981 15982 <p>At this point, I'm compiling (fairly) clean with gcc 15983 options</p> 15984 15985 <pre> 15986 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs 15987</pre> 15988 <p>(I also compiled with -Wshadow, but while that found some 15989 things that I wanted to find, there's far too many warnings from 15990 the X headers to be usable in this context).</p> 15991 15992 <p>The changes:</p> 15993 15994 <ul> 15995 <li>Tekproc.c: 15996 <ul> 15997 <li>parenthesized expression to avoid gcc warning -- 15998 n/c.</li> 15999 16000 <li>corrected nested-extern declaration for Bool 16001 waiting_for_initial_map; ourTopLevelShellArgs, and 16002 number_ourTopLevelShellArgs - n/c</li> 16003 </ul> 16004 </li> 16005 16006 <li>charproc.c: 16007 <ul> 16008 <li>corrected potentially-unintialized variables 'scstype', 16009 'xim', and 'input_style' -- changes object.</li> 16010 16011 <li>adjusted logic of VTparse so that gcc won't warn about 16012 setjmp clobbering parsestate -- changes object.</li> 16013 16014 <li>corrected initialization of 'scstype', which could have 16015 been clobbered by setjmp/longjmp - changes object.</li> 16016 16017 <li>corrected nested-extern declaration of 'term', 16018 'ProgramName' - n/c</li> 16019 </ul> 16020 </li> 16021 16022 <li>cursor.c: 16023 <ul> 16024 <li>corrected nested-extern declaration of 'term' -- 16025 n/c</li> 16026 16027 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 16028 - n/c</li> 16029 </ul> 16030 </li> 16031 16032 <li>input.c: 16033 <ul> 16034 <li>change interface of StringInput to assume size_t (i.e., 16035 unsigned) nbytes -- changes object.</li> 16036 16037 <li>change interface of funcvalue, and sunfuncvalue to use 16038 'KeySym' type instead of 'int' - changes object.</li> 16039 </ul> 16040 </li> 16041 16042 <li>main.c: 16043 <ul> 16044 <li>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h 16045 - n/c</li> 16046 16047 <li>corrected missing params of 'do_hangup()' -- changes 16048 object (note: the missing params were not used).</li> 16049 16050 <li>corrected missing param of 'Error()' -- changes 16051 object</li> 16052 16053 <li>corrected nested-extern 'environ' - n/c</li> 16054 16055 <li>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' 16056 so that gcc can see they won't be clobbered by the longjmp 16057 - changes object.</li> 16058 16059 <li>use Size_t type - n/c.</li> 16060 </ul> 16061 </li> 16062 16063 <li>menu.c: 16064 <ul> 16065 <li>removed redundant prototype for 'do_hangup()' -- 16066 n/c.</li> 16067 16068 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 16069 - n/c</li> 16070 </ul> 16071 </li> 16072 16073 <li>menu.h: 16074 <ul> 16075 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 16076 - n/c</li> 16077 </ul> 16078 </li> 16079 16080 <li>misc.c: 16081 <ul> 16082 <li>corrected definition of 'HandleFocusChange()' -- 16083 changes object</li> 16084 16085 <li>cast parameters in call to 'TekExpose()' -- n/c</li> 16086 16087 <li>corrected nested-extern declarations of 'term', 16088 'toplevel', ProgramName, and 'environ' -- n/c.</li> 16089 16090 <li>use Size_t type - n/c.</li> 16091 </ul> 16092 </li> 16093 16094 <li>proto.h: 16095 <ul> 16096 <li>moved definition of SIGNAL_T (and SIGNAL_RETURN) here 16097 from main.c, resize.c to allow use of this symbol in 16098 prototypes (mostly in xterm.h).</li> 16099 16100 <li>added definition 'Size_t' to use as corrected type for 16101 strncpy, malloc sizes - n/c.</li> 16102 </ul> 16103 </li> 16104 16105 <li>resize.c: 16106 <ul> 16107 <li>moved SIGNAL_T definition to proto.h -- n/c.</li> 16108 16109 <li>use Size_t type - n/c.</li> 16110 </ul> 16111 </li> 16112 16113 <li>screen.c: 16114 <ul> 16115 <li>use Size_t type - n/c.</li> 16116 </ul> 16117 </li> 16118 16119 <li>tabs.c: 16120 <ul> 16121 <li>corrected nested-extern declaration of 'term' -- 16122 n/c</li> 16123 </ul> 16124 </li> 16125 16126 <li>util.c: 16127 <ul> 16128 <li>corrected/supplied parameters to 'TekExpose()' -- 16129 changes object (note: 'TekExpose()' doesn't use its 16130 parameters).</li> 16131 16132 <li>corrected nested-extern declaration of 16133 'waiting_for_initial_map' -- n/c.</li> 16134 16135 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 16136 - n/c</li> 16137 </ul> 16138 </li> 16139 16140 <li>xterm.h: 16141 <ul> 16142 <li>prototype 'do_hangup()', 'HandleFocusChange()', 16143 'TekExpose()', 'Error()', 'Exit()' - forces changes in 16144 various places.</li> 16145 16146 <li>adjusted prototypes that pass 'Boolean' arguments to 16147 use 'int' (this is the "correct" ANSI approach to extended 16148 compiles; it's worth mentioning that gcc doesn't meet the 16149 ANSI spec here). I used gcc -Wconversion to find these, but 16150 there's a lot of unrelated warnings that are due to setting 16151 NARROWPROTO in the config - n/c.</li> 16152 16153 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 16154 - n/c</li> 16155 </ul> 16156 </li> 16157 </ul> 16158 16159 <h1><a name="xterm_01" id="xterm_01">Patch #1 - 1996/1/6</a></h1> 16160 16161 <p>This is my first cleanup patch for xterm. It addresses all of 16162 the gcc warnings for -Wall, -Wmissing-prototypes and 16163 -Wstrict-prototypes that I can change without modifying the 16164 object code. (I'm compiling this with gcc 2.7.0 for an aout 16165 target, which makes it simple to compare objects. When I do 16166 ELF-only, I've got a tool that compares that sort of thing as 16167 well).</p> 16168 16169 <p>Briefly, this patch adds (and uses) two header files in the 16170 xterm directory:</p> 16171 16172 <pre> 16173 proto.h 16174 xterm.h 16175</pre> 16176 <p>I expect this to be the biggest patch by far. However (barring 16177 a misplaced prototype), it shouldn't break anything, since the 16178 intent of the patch is to provide missing declarations.</p> 16179</body> 16180</html> 16181