xterm.log.html revision ae137402
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.2334 2021/06/08 00:41:48 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_368">Patch #368 - 2021/06/07</a></li> 74 75 <li><a href="#xterm_367">Patch #367 - 2021/03/26</a></li> 76 77 <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li> 78 79 <li><a href="#xterm_365">Patch #365 - 2021/02/03</a></li> 80 81 <li><a href="#xterm_364">Patch #364 - 2021/02/02</a></li> 82 83 <li><a href="#xterm_363">Patch #363 - 2020/12/26</a></li> 84 85 <li><a href="#xterm_362">Patch #362 - 2020/11/11</a></li> 86 87 <li><a href="#xterm_361">Patch #361 - 2020/10/14</a></li> 88 89 <li><a href="#xterm_360">Patch #360 - 2020/09/20</a></li> 90 91 <li><a href="#xterm_359">Patch #359 - 2020/08/17</a></li> 92 93 <li><a href="#xterm_358">Patch #358 - 2020/07/12</a></li> 94 95 <li><a href="#xterm_357">Patch #357 - 2020/07/05</a></li> 96 97 <li><a href="#xterm_356">Patch #356 - 2020/05/02</a></li> 98 99 <li><a href="#xterm_355">Patch #355 - 2020/05/01</a></li> 100 101 <li><a href="#xterm_354">Patch #354 - 2020/04/26</a></li> 102 103 <li><a href="#xterm_353">Patch #353 - 2020/02/01</a></li> 104 105 <li><a href="#xterm_352">Patch #352 - 2020/01/16</a></li> 106 107 <li><a href="#xterm_351">Patch #351 - 2019/11/17</a></li> 108 109 <li><a href="#xterm_350">Patch #350 - 2019/11/02</a></li> 110 111 <li><a href="#xterm_349">Patch #349 - 2019/09/22</a></li> 112 113 <li><a href="#xterm_348">Patch #348 - 2019/07/22</a></li> 114 115 <li><a href="#xterm_347">Patch #347 - 2019/06/30</a></li> 116 117 <li><a href="#xterm_346">Patch #346 - 2019/05/27</a></li> 118 119 <li><a href="#xterm_345">Patch #345 - 2019/05/14</a></li> 120 121 <li><a href="#xterm_344">Patch #344 - 2019/02/12</a></li> 122 123 <li><a href="#xterm_343">Patch #343 - 2019/01/13</a></li> 124 125 <li><a href="#xterm_342">Patch #342 - 2019/01/03</a></li> 126 127 <li><a href="#xterm_341">Patch #341 - 2018/12/24</a></li> 128 129 <li><a href="#xterm_340">Patch #340 - 2018/12/16</a></li> 130 131 <li><a href="#xterm_339">Patch #339 - 2018/12/12</a></li> 132 133 <li><a href="#xterm_338">Patch #338 - 2018/12/09</a></li> 134 135 <li><a href="#xterm_337">Patch #337 - 2018/09/21</a></li> 136 137 <li><a href="#xterm_336">Patch #336 - 2018/09/19</a></li> 138 139 <li><a href="#xterm_335">Patch #335 - 2018/08/14</a></li> 140 141 <li><a href="#xterm_334">Patch #334 - 2018/08/12</a></li> 142 143 <li><a href="#xterm_333">Patch #333 - 2018/05/03</a></li> 144 145 <li><a href="#xterm_332">Patch #332 - 2018/04/15</a></li> 146 147 <li><a href="#xterm_331">Patch #331 - 2017/12/30</a></li> 148 149 <li><a href="#xterm_330">Patch #330 - 2017/06/20</a></li> 150 151 <li><a href="#xterm_329">Patch #329 - 2017/06/12</a></li> 152 153 <li><a href="#xterm_328">Patch #328 - 2017/06/01</a></li> 154 155 <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> 156 157 <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> 158 159 <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> 160 161 <li><a href="#xterm_324">Patch #324 - 2016/03/10</a></li> 162 163 <li><a href="#xterm_323">Patch #323 - 2016/03/07</a></li> 164 165 <li><a href="#xterm_322">Patch #322 - 2016/01/02</a></li> 166 167 <li><a href="#xterm_321">Patch #321 - 2015/12/31</a></li> 168 169 <li><a href="#xterm_320">Patch #320 - 2015/08/28</a></li> 170 171 <li><a href="#xterm_319">Patch #319 - 2015/08/19</a></li> 172 173 <li><a href="#xterm_318">Patch #318 - 2015/04/12</a></li> 174 175 <li><a href="#xterm_317">Patch #317 - 2015/03/27</a></li> 176 177 <li><a href="#xterm_316">Patch #316 - 2015/03/07</a></li> 178 179 <li><a href="#xterm_315">Patch #315 - 2015/03/02</a></li> 180 181 <li><a href="#xterm_314">Patch #314 - 2014/12/28</a></li> 182 183 <li><a href="#xterm_313">Patch #313 - 2014/11/28</a></li> 184 185 <li><a href="#xterm_312">Patch #312 - 2014/09/28</a></li> 186 187 <li><a href="#xterm_311">Patch #311 - 2014/09/18</a></li> 188 189 <li><a href="#xterm_310">Patch #310 - 2014/07/25</a></li> 190 191 <li><a href="#xterm_309">Patch #309 - 2014/07/13</a></li> 192 193 <li><a href="#xterm_308">Patch #308 - 2014/06/19</a></li> 194 195 <li><a href="#xterm_307">Patch #307 - 2014/06/17</a></li> 196 197 <li><a href="#xterm_306">Patch #306 - 2014/06/03</a></li> 198 199 <li><a href="#xterm_305">Patch #305 - 2014/06/02</a></li> 200 201 <li><a href="#xterm_304">Patch #304 - 2014/05/03</a></li> 202 203 <li><a href="#xterm_303">Patch #303 - 2014/03/06</a></li> 204 205 <li><a href="#xterm_302">Patch #302 - 2014/03/02</a></li> 206 207 <li><a href="#xterm_301">Patch #301 - 2014/01/19</a></li> 208 209 <li><a href="#xterm_300">Patch #300 - 2013/12/03</a></li> 210 211 <li><a href="#xterm_299">Patch #299 - 2013/12/01</a></li> 212 213 <li><a href="#xterm_298">Patch #298 - 2013/11/27</a></li> 214 215 <li><a href="#xterm_297">Patch #297 - 2013/09/10</a></li> 216 217 <li><a href="#xterm_296">Patch #296 - 2013/07/10</a></li> 218 219 <li><a href="#xterm_295">Patch #295 - 2013/07/06</a></li> 220 221 <li><a href="#xterm_294">Patch #294 - 2013/07/05</a></li> 222 223 <li><a href="#xterm_293">Patch #293 - 2013/05/27</a></li> 224 225 <li><a href="#xterm_292">Patch #292 - 2013/04/25</a></li> 226 227 <li><a href="#xterm_291">Patch #291 - 2013/02/26</a></li> 228 229 <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li> 230 231 <li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li> 232 233 <li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li> 234 235 <li><a href="#xterm_287">Patch #287 - 2012/11/25</a></li> 236 237 <li><a href="#xterm_286">Patch #286 - 2012/10/29</a></li> 238 239 <li><a href="#xterm_285">Patch #285 - 2012/10/23</a></li> 240 241 <li><a href="#xterm_284">Patch #284 - 2012/10/14</a></li> 242 243 <li><a href="#xterm_283">Patch #283 - 2012/10/09</a></li> 244 245 <li><a href="#xterm_282">Patch #282 - 2012/09/28</a></li> 246 247 <li><a href="#xterm_281">Patch #281 - 2012/06/26</a></li> 248 249 <li><a href="#xterm_280">Patch #280 - 2012/06/24</a></li> 250 251 <li><a href="#xterm_279">Patch #279 - 2012/05/10</a></li> 252 253 <li><a href="#xterm_278">Patch #278 - 2012/01/18</a></li> 254 255 <li><a href="#xterm_277">Patch #277 - 2012/01/07</a></li> 256 257 <li><a href="#xterm_276">Patch #276 - 2011/10/10</a></li> 258 259 <li><a href="#xterm_275">Patch #275 - 2011/09/11</a></li> 260 261 <li><a href="#xterm_274">Patch #274 - 2011/09/05</a></li> 262 263 <li><a href="#xterm_273">Patch #273 - 2011/08/25</a></li> 264 265 <li><a href="#xterm_272">Patch #272 - 2011/08/24</a></li> 266 267 <li><a href="#xterm_271">Patch #271 - 2011/07/14</a></li> 268 269 <li><a href="#xterm_270">Patch #270 - 2011/04/26</a></li> 270 271 <li><a href="#xterm_269">Patch #269 - 2011/02/19</a></li> 272 273 <li><a href="#xterm_268">Patch #268 - 2011/02/10</a></li> 274 275 <li><a href="#xterm_267">Patch #267 - 2010/11/20</a></li> 276 277 <li><a href="#xterm_266">Patch #266 - 2010/10/24</a></li> 278 279 <li><a href="#xterm_265">Patch #265 - 2010/10/22</a></li> 280 281 <li><a href="#xterm_264">Patch #264 - 2010/10/14</a></li> 282 283 <li><a href="#xterm_263">Patch #263 - 2010/10/13</a></li> 284 285 <li><a href="#xterm_262">Patch #262 - 2010/8/30</a></li> 286 287 <li><a href="#xterm_261">Patch #261 - 2010/6/28</a></li> 288 289 <li><a href="#xterm_260">Patch #260 - 2010/6/20</a></li> 290 291 <li><a href="#xterm_259">Patch #259 - 2010/6/5</a></li> 292 293 <li><a href="#xterm_258">Patch #258 - 2010/5/1</a></li> 294 295 <li><a href="#xterm_257">Patch #257 - 2010/4/22</a></li> 296 297 <li><a href="#xterm_256">Patch #256 - 2010/3/6</a></li> 298 299 <li><a href="#xterm_255">Patch #255 - 2010/1/21</a></li> 300 301 <li><a href="#xterm_254">Patch #254 - 2010/1/6</a></li> 302 303 <li><a href="#xterm_253">Patch #253 - 2009/12/10</a></li> 304 305 <li><a href="#xterm_252">Patch #252 - 2009/12/7</a></li> 306 307 <li><a href="#xterm_251">Patch #251 - 2009/11/11</a></li> 308 309 <li><a href="#xterm_250">Patch #250 - 2009/10/13</a></li> 310 311 <li><a href="#xterm_249">Patch #249 - 2009/10/1</a></li> 312 313 <li><a href="#xterm_248">Patch #248 - 2009/9/11</a></li> 314 315 <li><a href="#xterm_247">Patch #247 - 2009/8/30</a></li> 316 317 <li><a href="#xterm_246">Patch #246 - 2009/8/16</a></li> 318 319 <li><a href="#xterm_245">Patch #245 - 2009/8/12</a></li> 320 321 <li><a href="#xterm_244">Patch #244 - 2009/8/9</a></li> 322 323 <li><a href="#xterm_243">Patch #243 - 2009/3/28</a></li> 324 325 <li><a href="#xterm_242">Patch #242 - 2009/2/15</a></li> 326 327 <li><a href="#xterm_241">Patch #241 - 2009/1/26</a></li> 328 329 <li><a href="#xterm_240">Patch #240 - 2009/1/25</a></li> 330 331 <li><a href="#xterm_239">Patch #239 - 2009/1/8</a></li> 332 333 <li><a href="#xterm_238">Patch #238 - 2008/12/30</a></li> 334 335 <li><a href="#xterm_237">Patch #237 - 2008/09/14</a></li> 336 337 <li><a href="#xterm_236">Patch #236 - 2008/07/27</a></li> 338 339 <li><a href="#xterm_235">Patch #235 - 2008/04/20</a></li> 340 341 <li><a href="#xterm_234">Patch #234 - 2008/03/02</a></li> 342 343 <li><a href="#xterm_233">Patch #233 - 2008/02/24</a></li> 344 345 <li><a href="#xterm_232">Patch #232 - 2008/01/30</a></li> 346 347 <li><a href="#xterm_231">Patch #231 - 2008/01/05</a></li> 348 349 <li><a href="#xterm_230">Patch #230 - 2007/12/31</a></li> 350 351 <li><a href="#xterm_229">Patch #229 - 2007/8/12</a></li> 352 353 <li><a href="#xterm_228">Patch #228 - 2007/7/22</a></li> 354 355 <li><a href="#xterm_227">Patch #227 - 2007/6/27</a></li> 356 357 <li><a href="#xterm_226">Patch #226 - 2007/6/17</a></li> 358 359 <li><a href="#xterm_225">Patch #225 - 2007/3/24</a></li> 360 361 <li><a href="#xterm_224">Patch #224 - 2007/2/11</a></li> 362 363 <li><a href="#xterm_223">Patch #223 - 2006/11/30</a></li> 364 365 <li><a href="#xterm_222">Patch #222 - 2006/10/17</a></li> 366 367 <li><a href="#xterm_221">Patch #221 - 2006/10/1</a></li> 368 369 <li><a href="#xterm_220">Patch #220 - 2006/9/10</a></li> 370 371 <li><a href="#xterm_219">Patch #219 - 2006/9/4</a></li> 372 373 <li><a href="#xterm_218">Patch #218 - 2006/8/27</a></li> 374 375 <li><a href="#xterm_217">Patch #217 - 2006/8/20</a></li> 376 377 <li><a href="#xterm_216">Patch #216 - 2006/8/3</a></li> 378 379 <li><a href="#xterm_215">Patch #215 - 2006/6/19 - XFree86 380 4.6.99.2</a></li> 381 382 <li><a href="#xterm_214">Patch #214 - 2006/6/18 - XFree86 383 4.6.99.2</a></li> 384 385 <li><a href="#xterm_213">Patch #213 - 2006/4/30 - XFree86 386 4.5.99.905</a></li> 387 388 <li><a href="#xterm_212">Patch #212 - 2006/4/9 - XFree86 389 4.5.99.904</a></li> 390 391 <li><a href="#xterm_211">Patch #211 - 2006/3/19 - XFree86 392 4.5.99.902</a></li> 393 394 <li><a href="#xterm_210">Patch #210 - 2006/3/12 - XFree86 395 4.5.99.902</a></li> 396 397 <li><a href="#xterm_209">Patch #209 - 2006/2/12 - XFree86 398 4.5.99.22</a></li> 399 400 <li><a href="#xterm_208">Patch #208 - 2006/1/3 - XFree86 401 4.5.99.19</a></li> 402 403 <li><a href="#xterm_207">Patch #207 - 2005/11/13 - XFree86 404 4.5.99.16</a></li> 405 406 <li><a href="#xterm_206">Patch #206 - 2005/11/3 - XFree86 407 4.5.99.15</a></li> 408 409 <li><a href="#xterm_205">Patch #205 - 2005/9/18 - XFree86 410 4.5.99.12</a></li> 411 412 <li><a href="#xterm_204">Patch #204 - 2005/8/4 - XFree86 413 4.5.99.9</a></li> 414 415 <li><a href="#xterm_203">Patch #203 - 2005/7/6 - XFree86 416 4.5.99.7</a></li> 417 418 <li><a href="#xterm_202">Patch #202 - 2005/5/2 - XFree86 419 4.5.99.3</a></li> 420 421 <li><a href="#xterm_201">Patch #201 - 2005/4/21 - XFree86 422 4.5.99.2</a></li> 423 424 <li><a href="#xterm_200">Patch #200 - 2005/2/6 - XFree86 425 4.4.99.23</a></li> 426 427 <li><a href="#xterm_199">Patch #199 - 2005/1/17 - XFree86 428 4.4.99.22</a></li> 429 430 <li><a href="#xterm_198">Patch #198 - 2005/1/13 - XFree86 431 4.4.99.21</a></li> 432 433 <li><a href="#xterm_197">Patch #197 - 2004/11/30 - XFree86 434 4.4.99.19</a></li> 435 436 <li><a href="#xterm_196">Patch #196 - 2004/8/15 - XFree86 437 4.4.99.12</a></li> 438 439 <li><a href="#xterm_195">Patch #195 - 2004/8/8 - XFree86 440 4.4.99.11</a></li> 441 442 <li><a href="#xterm_194">Patch #194 - 2004/7/27 - XFree86 443 4.4.99.11</a></li> 444 445 <li><a href="#xterm_193">Patch #193 - 2004/7/19 - XFree86 446 4.4.99.10</a></li> 447 448 <li><a href="#xterm_192">Patch #192 - 2004/7/12 - XFree86 449 4.4.99.9</a></li> 450 451 <li><a href="#xterm_191">Patch #191 - 2004/6/6 - XFree86 452 4.4.99.7</a></li> 453 454 <li><a href="#xterm_190">Patch #190 - 2004/5/25 - XFree86 455 4.4.99.6</a></li> 456 457 <li><a href="#xterm_189">Patch #189 - 2004/5/16 - XFree86 458 4.4.99.6</a></li> 459 460 <li><a href="#xterm_188">Patch #188 - 2004/5/12 - XFree86 461 4.4.99.6</a></li> 462 463 <li><a href="#xterm_187">Patch #187 - 2004/4/27 - XFree86 464 4.4.99.4</a></li> 465 466 <li><a href="#xterm_186">Patch #186 - 2004/4/18 - XFree86 467 4.4.99.4</a></li> 468 469 <li><a href="#xterm_185">Patch #185 - 2004/3/3 - XFree86 470 4.4</a></li> 471 472 <li><a href="#xterm_184">Patch #184 - 2003/12/31 - XFree86 473 4.3.99.903</a></li> 474 475 <li><a href="#xterm_183">Patch #183 - 2003/12/26 - XFree86 476 4.3.99.903</a></li> 477 478 <li><a href="#xterm_182">Patch #182 - 2003/12/2 - XFree86 479 4.3.99.901</a></li> 480 481 <li><a href="#xterm_181">Patch #181 - 2003/10/26 - XFree86 482 4.3.99.15</a></li> 483 484 <li><a href="#xterm_180">Patch #180 - 2003/10/12 - XFree86 485 4.3.99.15</a></li> 486 487 <li><a href="#xterm_179">Patch #179 - 2003/5/21 - XFree86 488 4.3.99.5</a></li> 489 490 <li><a href="#xterm_178">Patch #178 - 2003/5/18 - XFree86 491 4.3.99.5</a></li> 492 493 <li><a href="#xterm_177">Patch #177 - 2003/3/23 - XFree86 494 4.3.0</a></li> 495 496 <li><a href="#xterm_176">Patch #176 - 2003/3/22 - XFree86 497 4.3.0</a></li> 498 499 <li><a href="#xterm_175">Patch #175 - 2003/3/9 - XFree86 500 4.3.0</a></li> 501 502 <li><a href="#xterm_174">Patch #174 - 2003/2/25 - XFree86 503 4.2.99.903</a></li> 504 505 <li><a href="#xterm_173">Patch #173 - 2003/2/6 - XFree86 506 4.2.99.902</a></li> 507 508 <li><a href="#xterm_172">Patch #172 - 2002/12/27 - XFree86 509 4.2.99.3</a></li> 510 511 <li><a href="#xterm_171">Patch #171 - 2002/12/12 - XFree86 512 4.2.99.3</a></li> 513 514 <li><a href="#xterm_170">Patch #170 - 2002/10/13 - XFree86 515 4.2.1</a></li> 516 517 <li><a href="#xterm_169">Patch #169 - 2002/10/5 - XFree86 518 4.2.1</a></li> 519 520 <li><a href="#xterm_168">Patch #168 - 2002/9/29 - XFree86 521 4.2.1</a></li> 522 523 <li><a href="#xterm_167">Patch #167 - 2002/8/24 - XFree86 524 4.2.0</a></li> 525 526 <li><a href="#xterm_166">Patch #166 - 2002/3/25 - XFree86 527 4.2.0</a></li> 528 529 <li><a href="#xterm_165">Patch #165 - 2002/1/5 - XFree86 530 4.1.0</a></li> 531 532 <li><a href="#xterm_164">Patch #164 - 2001/11/13 - XFree86 533 4.1.0</a></li> 534 535 <li><a href="#xterm_163">Patch #163 - 2001/11/04 - XFree86 536 4.1.0</a></li> 537 538 <li><a href="#xterm_162">Patch #162 - 2001/10/23 - XFree86 539 4.1.0</a></li> 540 541 <li><a href="#xterm_161">Patch #161 - 2001/10/10 - XFree86 542 4.1.0</a></li> 543 544 <li><a href="#xterm_160">Patch #160 - 2001/10/7 - XFree86 545 4.1.0</a></li> 546 547 <li><a href="#xterm_159">Patch #159 - 2001/9/19 - XFree86 548 4.1.0</a></li> 549 550 <li><a href="#xterm_158">Patch #158 - 2001/9/8 - XFree86 551 4.1.0</a></li> 552 553 <li><a href="#xterm_157">Patch #157 - 2001/6/18 - XFree86 554 4.1.0</a></li> 555 556 <li><a href="#xterm_156">Patch #156 - 2001/4/28 - XFree86 557 4.0.3</a></li> 558 559 <li><a href="#xterm_155">Patch #155 - 2001/4/20 - XFree86 560 4.0.3</a></li> 561 562 <li><a href="#xterm_154">Patch #154 - 2001/4/11 - XFree86 563 4.0.3</a></li> 564 565 <li><a href="#xterm_153">Patch #153 - 2001/3/29 - XFree86 566 4.0.3</a></li> 567 568 <li><a href="#xterm_152">Patch #152 - 2001/3/13 - XFree86 569 4.0.2</a></li> 570 571 <li><a href="#xterm_151">Patch #151 - 2001/3/10 - XFree86 572 4.0.2</a></li> 573 574 <li><a href="#xterm_150">Patch #150 - 2000/12/29 - XFree86 575 4.0.2</a></li> 576 577 <li><a href="#xterm_149">Patch #149 - 2000/12/6 - XFree86 578 4.0.1h</a></li> 579 580 <li><a href="#xterm_148">Patch #148 - 2000/10/31 - XFree86 581 4.0.1d</a></li> 582 583 <li><a href="#xterm_147">Patch #147 - 2000/10/26 - XFree86 584 4.0.1c</a></li> 585 586 <li><a href="#xterm_146">Patch #146 - 2000/9/12 - XFree86 587 4.0.1c</a></li> 588 589 <li><a href="#xterm_145">Patch #145 - 2000/9/11 - XFree86 590 4.0.1c</a></li> 591 592 <li><a href="#xterm_144">Patch #144 - 2000/8/23 - XFree86 593 4.0.1b</a></li> 594 595 <li><a href="#xterm_143">Patch #143 - 2000/8/19 - XFree86 596 4.0.1b</a></li> 597 598 <li><a href="#xterm_142">Patch #142 - 2000/8/18 - XFree86 599 4.0.1b</a></li> 600 601 <li><a href="#xterm_141">Patch #141 - 2000/8/14 - XFree86 602 4.0.1b</a></li> 603 604 <li><a href="#xterm_140">Patch #140 - 2000/7/23 - XFree86 605 4.0.1</a></li> 606 607 <li><a href="#xterm_139">Patch #139 - 2000/6/17 - XFree86 608 4.0d</a></li> 609 610 <li><a href="#xterm_138">Patch #138 - 2000/6/15 - XFree86 611 4.0c</a></li> 612 613 <li><a href="#xterm_137">Patch #137 - 2000/6/10 - XFree86 614 4.0b</a></li> 615 616 <li><a href="#xterm_136">Patch #136 - 2000/6/3 - XFree86 617 4.0b</a></li> 618 619 <li><a href="#xterm_135">Patch #135 - 2000/5/29 - XFree86 620 4.0b</a></li> 621 622 <li><a href="#xterm_134">Patch #134 - 2000/5/28 - XFree86 623 4.0b</a></li> 624 625 <li><a href="#xterm_133">Patch #133 - 2000/5/2 - XFree86 626 4.0a</a></li> 627 628 <li><a href="#xterm_132">Patch #132 - 2000/4/11 - XFree86 629 4.0a</a></li> 630 631 <li><a href="#xterm_131">Patch #131 - 2000/3/3 - XFree86 632 3.9.18b</a></li> 633 634 <li><a href="#xterm_130">Patch #130 - 2000/3/1 - XFree86 635 3.9.18a</a></li> 636 637 <li><a href="#xterm_129">Patch #129 - 2000/2/26 - XFree86 638 3.9.18a</a></li> 639 640 <li><a href="#xterm_128">Patch #128 - 2000/2/17 - XFree86 641 3.9.18</a></li> 642 643 <li><a href="#xterm_127">Patch #127 - 2000/2/12 - XFree86 644 3.9.17e</a></li> 645 646 <li><a href="#xterm_126">Patch #126 - 2000/2/8 - XFree86 647 3.9.17c</a></li> 648 649 <li><a href="#xterm_125">Patch #125 - 2000/1/31 - XFree86 650 3.9.17c</a></li> 651 652 <li><a href="#xterm_124">Patch #124 - 2000/1/27 - XFree86 653 3.9.17b</a></li> 654 655 <li><a href="#xterm_123">Patch #123 - 2000/1/22 - XFree86 656 3.9.17a</a></li> 657 658 <li><a href="#xterm_122">Patch #122 - 1999/12/28 - XFree86 659 3.9.16f</a></li> 660 661 <li><a href="#xterm_121">Patch #121 - 1999/11/14 - XFree86 662 3.9.16c</a></li> 663 664 <li><a href="#xterm_120">Patch #120 - 1999/10/28 - XFree86 665 3.9.16c</a></li> 666 667 <li><a href="#xterm_119">Patch #119 - 1999/10/16 - XFree86 668 3.9.16c</a></li> 669 670 <li><a href="#xterm_118">Patch #118 - 1999/10/5 - XFree86 671 3.9.16b</a></li> 672 673 <li><a href="#xterm_117">Patch #117 - 1999/9/29 - XFree86 674 3.9.16b</a></li> 675 676 <li><a href="#xterm_116">Patch #116 - 1999/9/25 - XFree86 677 3.9.16a</a></li> 678 679 <li><a href="#xterm_115">Patch #115 - 1999/9/18 - XFree86 680 3.9.16a</a></li> 681 682 <li><a href="#xterm_114">Patch #114 - 1999/9/15 - XFree86 683 3.9.16</a></li> 684 685 <li><a href="#xterm_113">Patch #113 - 1999/8/15 - XFree86 686 3.9.15b</a></li> 687 688 <li><a href="#xterm_112">Patch #112 - 1999/7/17 - XFree86 689 3.9Pw</a></li> 690 691 <li><a href="#xterm_111">Patch #111 - 1999/7/10 - XFree86 692 3.9Pw</a></li> 693 694 <li><a href="#xterm_110">Patch #110 - 1999/6/29 - XFree86 695 3.9Pu</a></li> 696 697 <li><a href="#xterm_109">Patch #109 - 1999/6/23 - XFree86 698 3.9Pt</a></li> 699 700 <li><a href="#xterm_108">Patch #108 - 1999/6/19 - XFree86 701 3.9Ps</a></li> 702 703 <li><a href="#xterm_107">Patch #107 - 1999/6/12 - XFree86 704 3.9Pq</a></li> 705 706 <li><a href="#xterm_106">Patch #106 - 1999/6/9 - XFree86 707 3.9Pq</a></li> 708 709 <li><a href="#xterm_105">Patch #105 - 1999/6/5 - XFree86 710 3.9Pp</a></li> 711 712 <li><a href="#xterm_104">Patch #104 - 1999/5/30 - XFree86 713 3.9Pn</a></li> 714 715 <li><a href="#xterm_103">Patch #103 - 1999/5/14 - XFree86 716 3.9Pm</a></li> 717 718 <li><a href="#xterm_102">Patch #102 - 1999/5/12 - XFree86 719 3.9Pm</a></li> 720 721 <li><a href="#xterm_101">Patch #101 - 1999/5/10 - XFree86 722 3.9Pm</a></li> 723 724 <li><a href="#xterm_100">Patch #100 - 1999/5/3 - XFree86 725 3.9Pl</a></li> 726 727 <li><a href="#xterm_99">Patch #99 - 1999/5/2 - XFree86 728 3.9Pk</a></li> 729 730 <li><a href="#xterm_98">Patch #98 - 1999/4/26 - XFree86 731 3.9Pk</a></li> 732 733 <li><a href="#xterm_97">Patch #97 - 1999/4/25 - XFree86 734 3.9Pk</a></li> 735 736 <li><a href="#xterm_96">Patch #96 - 1999/4/19 - XFree86 737 3.9Pj</a></li> 738 739 <li><a href="#xterm_95">Patch #95 - 1999/4/5 - XFree86 740 3.9Ph</a></li> 741 742 <li><a href="#xterm_94">Patch #94 - 1999/3/27 - XFree86 743 3.9Pf</a></li> 744 745 <li><a href="#xterm_93">Patch #93 - 1999/3/14 - XFree86 746 3.9Pd</a></li> 747 748 <li><a href="#xterm_92">Patch #92 - 1999/2/5 - XFree86 749 3.9Nz</a></li> 750 751 <li><a href="#xterm_91">Patch #91 - 1999/1/21 - XFree86 752 3.9Nw</a></li> 753 754 <li><a href="#xterm_90">Patch #90 - 1998/12/13 - XFree86 755 3.9Nq</a></li> 756 757 <li><a href="#xterm_89">Patch #89 - 1998/11/20 - XFree86 758 3.9Nm</a></li> 759 760 <li><a href="#xterm_88">Patch #88 - 1998/10/31 - XFree86 3.9Nk 761 and 3.3.2h</a></li> 762 763 <li><a href="#xterm_87">Patch #87 - 1998/10/21 - XFree86 3.9Nj 764 and 3.3.2f</a></li> 765 766 <li><a href="#xterm_86">Patch #86 - 1998/10/14 - XFree86 3.9Nj 767 and 3.3.2e</a></li> 768 769 <li><a href="#xterm_85">Patch #85 - 1998/10/12 - XFree86 3.9Nj 770 and 3.3.2e</a></li> 771 772 <li><a href="#xterm_84">Patch #84 - 1998/10/9 - XFree86 3.9Ni 773 and 3.3.2e</a></li> 774 775 <li><a href="#sync_83">Resync #83 - 1998/10/7 - XFree86 776 3.3.2e</a></li> 777 778 <li><a href="#xterm_83">Patch #83 - 1998/8/25 - XFree86 779 3.9Nb</a></li> 780 781 <li><a href="#xterm_82">Patch #82 - 1998/7/15 - XFree86 782 3.9Aj</a></li> 783 784 <li><a href="#xterm_81">Patch #81 - 1998/7/14 - XFree86 785 3.9Aj</a></li> 786 787 <li><a href="#xterm_80">Patch #80 - 1998/6/29 - XFree86 788 3.9Ai</a></li> 789 790 <li><a href="#xterm_79">Patch #79 - 1998/6/28 - XFree86 791 3.9Ai</a></li> 792 793 <li><a href="#xterm_78">Patch #78 - 1998/6/3 - XFree86 3.9Ah 794 and 3.3.2</a></li> 795 796 <li><a href="#xterm_77">Patch #77 - 1998/5/26 - XFree86 3.9Ah 797 and 3.3.2</a></li> 798 799 <li><a href="#xterm_76">Patch #76 - 1998/5/8 - XFree86 3.9Ah 800 and 3.3.2</a></li> 801 802 <li><a href="#xterm_75">Patch #75 - 1998/5/7 - XFree86 3.9Ah 803 and 3.3.2</a></li> 804 805 <li><a href="#xterm_74">Patch #74 - 1998/4/27 - XFree86 3.9Ag 806 and 3.3.2</a></li> 807 808 <li><a href="#xterm_73">Patch #73 - 1998/4/25 - XFree86 3.9Ag 809 and 3.3.2</a></li> 810 811 <li><a href="#xterm_72">Patch #72 - 1998/4/17 - XFree86 3.9Ag 812 and 3.3.2</a></li> 813 814 <li><a href="#xterm_71">Patch #71 - 1998/4/12 - XFree86 3.9Ag 815 and 3.3.2</a></li> 816 817 <li><a href="#xterm_70">Patch #70 - 1998/3/29 - XFree86 3.9Af 818 and 3.3.2</a></li> 819 820 <li><a href="#xterm_69">Patch #69 - 1998/3/16 - XFree86 3.9Ad 821 and 3.3.2</a></li> 822 823 <li><a href="#xterm_68">Patch #68 - 1998/3/4 - XFree86 3.9Ad 824 and 3.3.1z</a></li> 825 826 <li><a href="#xterm_67">Patch #67 - 1998/2/23 - XFree86 3.9Ad 827 and 3.3.1e</a></li> 828 829 <li><a href="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad 830 and 3.3.1d</a></li> 831 832 <li><a href="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad 833 and 3.3.1c</a></li> 834 835 <li><a href="#xterm_64">Patch #64 - 1998/2/8 - XFree86 836 3.9Ad</a></li> 837 838 <li><a href="#xterm_63">Patch #63 - 1998/2/5 - XFree86 839 3.9Ad</a></li> 840 841 <li><a href="#xterm_62">Patch #62 - 1998/1/23 - XFree86 842 3.9Ac</a></li> 843 844 <li><a href="#xterm_61">Patch #61 - 1998/1/17 - XFree86 845 3.9Ac</a></li> 846 847 <li><a href="#xterm_60">Patch #60 - 1998/1/10 - XFree86 848 3.9Ab</a></li> 849 850 <li><a href="#xterm_59">Patch #59 - 1998/1/5 - XFree86 851 3.9Ab</a></li> 852 853 <li><a href="#xterm_58">Patch #58 - 1998/1/3 - XFree86 854 3.9Ab</a></li> 855 856 <li><a href="#xterm_57">Patch #57 - 1997/12/26 - XFree86 857 3.9Aa</a></li> 858 859 <li><a href="#xterm_56">Patch #56 - 1997/11/28 - XFree86 860 3.9x</a></li> 861 862 <li><a href="#xterm_55">Patch #55 - 1997/11/25 - XFree86 863 3.9x</a></li> 864 865 <li><a href="#xterm_54">Patch #54 - 1997/10/17 - XFree86 866 3.9s</a></li> 867 868 <li><a href="#xterm_53">Patch #53 - 1997/10/12 - XFree86 869 3.9r</a></li> 870 871 <li><a href="#xterm_52">Patch #52 - 1997/9/29 - XFree86 872 3.9q</a></li> 873 874 <li><a href="#xterm_51">Patch #51 - 1997/9/15 - XFree86 875 3.9p</a></li> 876 877 <li><a href="#xterm_50">Patch #50 - 1997/8/22 - XFree86 878 3.9m</a></li> 879 880 <li><a href="#xterm_49">Patch #49 - 1997/8/10 - XFree86 881 3.9k</a></li> 882 883 <li><a href="#xterm_48">Patch #48 - 1997/7/26 - XFree86 884 3.9j</a></li> 885 886 <li><a href="#xterm_47">Patch #47 - 1997/7/13 - XFree86 887 3.9i</a></li> 888 889 <li><a href="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</a></li> 890 891 <li><a href="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</a></li> 892 893 <li><a href="#xterm_44">Patch #44 - 1997/6/22 - XFree86 894 3.9g</a></li> 895 896 <li><a href="#xterm_43">Patch #43 - 1997/6/10 - XFree86 897 3.9d</a></li> 898 899 <li><a href="#xterm_42">Patch #42 - 1997/6/8 - XFree86 900 3.2Xl</a></li> 901 902 <li><a href="#xterm_41">Patch #41 - 1997/5/28 - XFree86 903 3.2Xl</a></li> 904 905 <li><a href="#xterm_40">Patch #40 - 1997/5/26 - XFree86 906 3.2Xl</a></li> 907 908 <li><a href="#xterm_39">Patch #39 - 1997/5/24 - XFree86 909 3.2Xl</a></li> 910 911 <li><a href="#xterm_38">Patch #38 - 1997/5/22 - XFree86 912 3.2Xh</a></li> 913 914 <li><a href="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</a></li> 915 916 <li><a href="#xterm_36">Patch #36 - 1997/1/16 - XFree86 917 3.2r</a></li> 918 919 <li><a href="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</a></li> 920 921 <li><a href="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</a></li> 922 923 <li><a href="#xterm_33">Patch #33 - 1996/11/24 - XFree86 924 3.2</a></li> 925 926 <li><a href="#xterm_32">Patch #32 - 1996/11/21 - XFree86 927 3.2</a></li> 928 929 <li><a href="#xterm_31">Patch #31 - 1996/11/16 - XFree86 930 3.2</a></li> 931 932 <li><a href="#xterm_30">Patch #30 - 1996/11/16 - XFree86 933 3.2</a></li> 934 935 <li><a href="#xterm_29">Patch #29 - 1996/9/15 - XFree86 936 3.1.2Gb</a></li> 937 938 <li><a href="#xterm_28">Patch #28 - 1996/8/31 - XFree86 939 3.1.2F</a></li> 940 941 <li><a href="#xterm_27">Patch #27 - 1996/8/21 - XFree86 942 3.1.2Ek</a></li> 943 944 <li><a href="#xterm_26">Patch #26 - 1996/8/20 - XFree86 945 3.1.2Ei</a></li> 946 947 <li><a href="#xterm_25">Patch #25 - 1996/8/18 - XFree86 948 3.1.2Ei</a></li> 949 950 <li><a href="#xterm_24">Patch #24 - 1996/8/11 - XFree86 951 3.1.2Ee</a></li> 952 953 <li><a href="#xterm_23">Patch #23 - 1996/7/31 - XFree86 954 3.1.2Ec</a></li> 955 956 <li><a href="#xterm_22">Patch #22 - 1996/7/26 - XFree86 957 3.1.2Ec</a></li> 958 959 <li><a href="#xterm_21">Patch #21 - 1996/7/24 - XFree86 960 3.1.2Ec</a></li> 961 962 <li><a href="#xterm_20">Patch #20 - 1996/7/24 - XFree86 963 3.1.2Ec</a></li> 964 965 <li><a href="#xterm_19">Patch #19 - 1996/7/21 - XFree86 966 3.1.2Ec</a></li> 967 968 <li><a href="#xterm_18">Patch #18 - 1996/7/18 - XFree86 969 3.1.2Ec</a></li> 970 971 <li><a href="#xterm_17">Patch #17 - 1996/7/2 - XFree86 972 3.1.2Eb</a></li> 973 974 <li><a href="#xterm_16">Patch #16 - 1996/6/25 - XFree86 975 3.1.2Ea</a></li> 976 977 <li><a href="#xterm_15">Patch #15 - 1996/5/29 - XFree86 978 3.1.2E</a></li> 979 980 <li><a href="#xterm_14">Patch #14 - 1996/5/12 - XFree86 981 3.1.2Dj</a></li> 982 983 <li><a href="#xterm_13">Patch #13 - 1996/4/23 - XFree86 984 3.1.2Df</a></li> 985 986 <li><a href="#xterm_12">Patch #12 - 1996/3/16 - XFree86 987 3.1.2Dc</a></li> 988 989 <li><a href="#xterm_11">Patch #11 - 1996/3/5 - XFree86 990 3.1.2Db</a></li> 991 992 <li><a href="#xterm_10">Patch #10 - 1996/2/14 - XFree86 993 3.1.2Cd</a></li> 994 995 <li><a href="#xterm_09">Patch #9 - 1996/2/10 - XFree86 996 3.1.2Cb</a></li> 997 998 <li><a href="#xterm_08">Patch #8 - 1996/2/9 - XFree86 999 3.1.2Cb</a></li> 1000 1001 <li><a href="#xterm_07">Patch #7 - 1996/1/28 - XFree86 1002 3.1.2n</a></li> 1003 1004 <li><a href="#xterm_06">Patch #6 - 1996/1/8</a></li> 1005 1006 <li><a href="#xterm_05">Patch #5 - 1996/1/7</a></li> 1007 1008 <li><a href="#xterm_04">Patch #4 - 1996/1/7</a></li> 1009 1010 <li><a href="#xterm_03">Patch #3 - 1996/1/7</a></li> 1011 1012 <li><a href="#xterm_02">Patch #2 - 1996/1/7</a></li> 1013 1014 <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> 1015 </ul> 1016 1017 <h1><a name="xterm_368" id="xterm_368">Patch #368 - 1018 2021/06/07</a></h1> 1019 1020 <ul> 1021 <li>add <code>DefaultOff</code> option to 1022 <code>RenderFont</code> resource, as part of the 1023 session-management feature.</li> 1024 1025 <li>add auto-scroll-lock feature (patch by add Stelios 1026 Bounanos).</li> 1027 1028 <li>update the window-size information returned via 1029 <code>TIOCGWINSZ</code> when rows/columns are unchanged but the 1030 font-size changes (report by Nick Black).</li> 1031 1032 <li>improve session-management feature by saving/restoring the 1033 font settings.</li> 1034 1035 <li>update config.guess, config.sub</li> 1036 </ul> 1037 1038 <h1><a name="xterm_367" id="xterm_367">Patch #367 - 1039 2021/03/26</a></h1> 1040 1041 <ul> 1042 <li>add <code>OSC 22</code> to allow programs to select 1043 different pointer cursor at runtime.</li> 1044 1045 <li>change configuration for <em>no-return</em> functions to 1046 use <code>_Noreturn</code> when it is available, because 1047 <code>clang --analyze</code> does not properly handle the gcc 1048 noreturn attribute.</li> 1049 1050 <li>add <code>cursorTheme</code> resource to provide a way to 1051 enable or disable the cursor theme feature.</li> 1052 1053 <li>modified <code>CopyWait</code> event retries to use shorter 1054 sleeps, to improve responsiveness (tmux #2556).</li> 1055 1056 <li>improve quoting/escaping in demo-scripts per 1057 shellcheck.</li> 1058 1059 <li>add <code>resizeByPixel</code> resource, to permit 1060 disabling window manager resizing-hints (patch by Tim 1061 Oehl).</li> 1062 1063 <li>corrected <code>printOptsImmediate</code> handling of 1064 alternate-screen (report by Abhijit Dasgupta).</li> 1065 1066 <li>update sample terminfo to more closely match ncurses.</li> 1067 1068 <li>add/improve limit-checks for Xlib calls (report by Roman 1069 Fiedler).</li> 1070 1071 <li>fix a typo in the help-message (report by Tomas 1072 Korbar).</li> 1073 </ul> 1074 1075 <h1><a name="xterm_366" id="xterm_366">Patch #366 - 1076 2021/02/10</a></h1> 1077 1078 <ul> 1079 <li>correct a compiler-warning fix in <a href= 1080 "#xterm_352">patch #352</a> which allowed sign-extension of 1081 coordinate values (report by "CismonX").</li> 1082 1083 <li>correct upper-limit for selection buffer, accounting for 1084 combining characters (report/testcase by Tavis Ormandy).</li> 1085 1086 <li>with <code>alwaysHighlight</code> true, xterm does not 1087 properly track focus. The <em>screen->select</em> 1088 <code>FOCUS</code> flag remains always on, which prevents 1089 <code>bellIsUrgent</code> from working, as the urgent 1090 <code>WM_HINT</code> flag is only set in 1091 <code>setXUrgency()</code> when the window is not focused. Fix 1092 this by updating <em>screen->select</em> in 1093 <code>unselectwindow()</code> regardless of the value of 1094 <code>always_highlight</code> (patch by Jiri Bohac).</li> 1095 1096 <li>improve fix for interaction between SRM and ENQ (report by 1097 Grant Taylor).</li> 1098 1099 <li>build-fix for <code>--with-Xaw3dxft</code>, needed when 1100 <code>--with-toolbar</code> is omitted (report by Jimmy Olgeni, 1101 Emanuel Haupt).</li> 1102 </ul> 1103 1104 <h1><a name="xterm_365" id="xterm_365">Patch #365 - 1105 2021/02/03</a></h1> 1106 1107 <ul> 1108 <li>amend fix for “word” selection in <a href= 1109 "#xterm_364">patch #364</a> to limit that to the 1110 <code>insert-selectable</code> <em>action</em>, which reads 1111 data from the screen. This restores the interactive behavior 1112 where double-clicking on a “word” would make 1113 subsequent selection extensions by words as well as suppressing 1114 some boundary-checks (report by David Wolfskill, FreeBSD 1115 #253225).</li> 1116 </ul> 1117 1118 <h1><a name="xterm_364" id="xterm_364">Patch #364 - 1119 2021/02/02</a></h1> 1120 1121 <ul> 1122 <li>add <code>-fc</code> option.</li> 1123 1124 <li>correct/improve limit-checks for SRM versus ENQ from 1125 <a href="#xterm_344">patch #344</a> (report by Tom 1126 Szilagyi).</li> 1127 1128 <li>enable <code>XftFont</code> resource in Xaw3dxft 1129 configuration (patch by Tavis Ormandy).</li> 1130 1131 <li>improve quoting/escaping in build-scripts per 1132 shellcheck.</li> 1133 1134 <li>add <code>libpcre2-posix</code> to the packages tested for 1135 <code>--with-pcre2</code> option, needed with Fedora (report by 1136 Tomas Korbar).</li> 1137 1138 <li>correct a typo in manual page, and note that 1139 <code>KeepClipboard</code> may not be compiled-in (report/patch 1140 by Sean C Farley).</li> 1141 1142 <li>corrected boundary-checks for “word” selection 1143 used in <code>on<em>N</em>Clicks</code> resources (report by 1144 Tavis Ormandy).</li> 1145 1146 <li>update to autoconf-2.52-20210101, to improve shellcheck 1147 warnings.</li> 1148 1149 <li>improve configure check for desktop categories.</li> 1150 </ul> 1151 1152 <h1><a name="xterm_363" id="xterm_363">Patch #363 - 1153 2020/12/26</a></h1> 1154 1155 <ul> 1156 <li>disable groff hyphenation in generated html when using 1157 man2html.</li> 1158 1159 <li>change SCS “<code>&4</code>” Cyrillic to 1160 non-NRCS, per VT520 manual.</li> 1161 1162 <li>amend fix for SCS in <a href="#xterm_198">patch #198</a> to 1163 remove <code>DEL</code> rather than converting it to a space 1164 (report by Thomas Wolff).</li> 1165 1166 <li>modify state transitions for selecting character sets to 1167 eliminate an ambiguity between the “A” used in 1168 VT220 versus VT320.</li> 1169 1170 <li>improve error recovery when selecting characters by 1171 resetting to US ASCII when no suitable encoding is found, e.g., 1172 attempting to use an NRCS sequence when NRCS is not 1173 enabled.</li> 1174 1175 <li>turn off hyphenation in “<code>.txt</code>” 1176 conversion, prompted by groff changes.</li> 1177 1178 <li>add VT5xx ISO Latin-2 (prompted by discussion with Thomas 1179 Wolff).</li> 1180 1181 <li>amend change from <a href="#xterm_361">patch #361</a> to 1182 event-handling in <code>CopyWait</code> to handle active-icon 1183 as a special case (Debian #975687).</li> 1184 1185 <li>add call to <code>loadColorTable</code> to get the visual 1186 information needed to decode BE RGBA32 color format (patch by 1187 Leandro Lupori).</li> 1188 1189 <li>modify the resource-parsing for 1190 <code>disallowedPasteControls</code> and similar lists of 1191 names/numbers to recognize “~;” (tilde) for 1192 cancelling a given name/number.</li> 1193 1194 <li>add ENQ, EOT and NUL to default for 1195 <code>disallowedPasteControls</code>.</li> 1196 1197 <li>change default for <code>disallowedPasteControls</code> to 1198 omit the tab character (suggested by Harald Dunkel).</li> 1199 1200 <li>fix swapped height/width in <code>regisScreenSize</code> 1201 and <code>maxGraphicSize</code> resources using "auto" value, 1202 from <a href="#xterm_314">patch #314</a> (report by Anton 1203 Lavrentiev)</li> 1204 1205 <li>revise <a href="#xterm_362">patch #362</a> change for 1206 shift-modifier versus mouse protocol and select/paste by adding 1207 resource <code>shiftEscape</code>, which can be enabled via a 1208 control sequence (prompted by discussion with Matthijs van 1209 Duin).</li> 1210 1211 <li>simplify/improve ifdef in trace code for using a separate 1212 set of files for each run of xterm.</li> 1213 1214 <li>add options <code>-r</code> and <code>-t</code> to 1215 <code>vttests/query-color.pl</code> to show the 6-digit RGB 1216 code and actual colors.</li> 1217 1218 <li>add <code>nel</code> to <code>xterm-basic</code> 1219 terminfo.</li> 1220 1221 <li>alter <code>vttests/modify-keys.pl</code> to omit HTML 1222 reference links to the modified-keys table where no keycode was 1223 available.</li> 1224 </ul> 1225 1226 <h1><a name="xterm_362" id="xterm_362">Patch #362 - 1227 2020/11/11</a></h1> 1228 1229 <ul> 1230 <li>cleanup of calls to <code>free</code>, removing checks for 1231 null (Walter Harms).</li> 1232 1233 <li>improved mouse-button reporting (prompted by discussion 1234 with Stephane Chazelas) 1235 <ul> 1236 <li>narrow the scope of the change for shift-key in 1237 <a href="#xterm_361">patch #361</a> to make it apply only 1238 when the <code>modifyOtherKeys</code> resource is set to 2 1239 (i.e., “program mode”). Also, when checking the 1240 shift-key, ignore modifiers other than shift, control and 1241 “meta”</li> 1242 1243 <li>use the alt/meta modifier information obtained in 1244 <code>VTInitModifiers</code> to replace a hard-coded 1245 <em>mod1</em> used to detect “Meta” for 1246 mouse-button responses.</li> 1247 </ul> 1248 </li> 1249 1250 <li>reduce <code>SIGWINCH</code>'s sent to the client by 1251 filtering out duplicates.</li> 1252 1253 <li>improve display when <code>scaleHeight</code> is greater 1254 than 1: 1255 <ul> 1256 <li>the text-cursor is vertically-centered on the current 1257 line, rather than only extending below the current line 1258 (report by Manu Chaturvedi).</li> 1259 1260 <li>the built-in line-drawing characters extend to the 1261 scaled cell-height.</li> 1262 </ul> 1263 </li> 1264 1265 <li>fill-in special case for motion-events to match the changes 1266 for shift-key in pointer-button events from <a href= 1267 "#xterm_361">patch #361</a>.</li> 1268 </ul> 1269 1270 <h1><a name="xterm_361" id="xterm_361">Patch #361 - 1271 2020/10/14</a></h1> 1272 1273 <ul> 1274 <li>treat the return value of <code>strerror</code> as readonly 1275 (patch by Philipp Klaus Krause).</li> 1276 1277 <li>modify event-handling in <code>CopyWait</code> to work 1278 around hanging while writing large amounts of text to an active 1279 icon and at the same time iconifying/deiconifying (report by 1280 Dave Kemper).</li> 1281 1282 <li>initialize double-buffer for active-icon window.</li> 1283 1284 <li>improve manual page description of scrollbar resources 1285 (report by Brian Lindholm).</li> 1286 1287 <li>correct ifdef for menu entry for active-icon, when 1288 initializing it with toolbar configuration.</li> 1289 1290 <li>add preprocessor option to makefile to set internal 1291 definition of pixmaps directory to match the 1292 install-configuration (FreeBSD #250036).</li> 1293 1294 <li>cleanup of calls to <code>free</code>, removing checks for 1295 null (Walter Harms).</li> 1296 1297 <li>add fallback actions <code>pointer-button</code> and 1298 <code>pointer-motion</code> which handle events for the mouse 1299 control-sequences protocol if the <em>select</em>-related 1300 translations are omitted with 1301 <code>*omitTranslation:select</code> (prompted by discussion 1302 with "Ergus")</li> 1303 1304 <li>amend rule for using shift-key to override mouse-protocol 1305 for select/paste to limit that feature to mouse-buttons which 1306 are actually bound to select/paste actions (prompted by 1307 discussion with "Ergus").</li> 1308 1309 <li>corrected mapping in special case for repainting wrap-marks 1310 when viewing the scrollback area.</li> 1311 1312 <li>use separate <em>GCs</em> for <code>showWrapMarks</code> 1313 feature, to work around cursor coloring change in <a href= 1314 "#xterm_345">patch #345</a> (report by Paulo Silva de 1315 Alíbano).</li> 1316 </ul> 1317 1318 <h1><a name="xterm_360" id="xterm_360">Patch #360 - 1319 2020/09/20</a></h1> 1320 1321 <ul> 1322 <li>mention <code>decGraphicsID</code> in 1323 <code>ctlseqs.ms</code> (suggested by Thomas Wolff).</li> 1324 1325 <li>modify pixel-coordinate mouse response to use as origin the 1326 VT100-window rather than the underlying widget, which includes 1327 the scrollbar (report by Thomas Wolff).</li> 1328 1329 <li>add configure option <code>--disable-print-graphics</code> 1330 (Ross Combs).</li> 1331 1332 <li>add <code>test_ptydata</code> to “make check” 1333 rule.</li> 1334 1335 <li>minor fixes for <code>ctlseqs.ms</code> (report by 1336 Jean-Marc Bourguet).</li> 1337 1338 <li>minor fixes for manpage style (report/patch by 1339 "a1346054").</li> 1340 1341 <li>correct cleanup from switch between italics/normal font in 1342 the show/hide cursor functions (report/testcase by Peter 1343 Fabinski).</li> 1344 1345 <li>integrated patch by Ross Combs: 1346 <ul> 1347 <li>internal renaming of GraphicsID symbols, for 1348 readability.</li> 1349 1350 <li>adjust logic for VT125, treating it as a ReGIS 1351 terminal.</li> 1352 </ul> 1353 </li> 1354 1355 <li>update configure macros, for compiler-warning fixes.</li> 1356 1357 <li>integrated patch by Ross Combs: 1358 <ul> 1359 <li>add control sequence modes for graphics printing.</li> 1360 1361 <li>improve conversion to bitmaps for TrueType fonts in 1362 ReGIS</li> 1363 1364 <li>add <code>font7</code> resource, for an 1365 “enormous” bitmap font.</li> 1366 1367 <li>do not reset graphics in a soft-reset.</li> 1368 1369 <li>add <code>pointerFont</code> resource, and 1370 <code>-pf</code> command-line option.</li> 1371 </ul> 1372 </li> 1373 1374 <li>improve typography of manual page (patch by Branden 1375 Robinson).</li> 1376 1377 <li>amend <a href="#xterm_359">patch #359</a> change to 1378 <code>df-install.in</code> to ignore a command-line assignment 1379 to <code>DESTDIR</code> if followed by an explicit 1380 <code>--dir</code> (report by Sven Joachim).</li> 1381 </ul> 1382 1383 <h1><a name="xterm_359" id="xterm_359">Patch #359 - 1384 2020/08/17</a></h1> 1385 1386 <ul> 1387 <li>add special case in <code>WriteText</code> to allow colors 1388 8-15 to override <code>colorBDMode</code> (patch by Ingo 1389 Brückl).</li> 1390 1391 <li>add <code>utf8Weblike</code> resource, to provide an 1392 alternate scheme for handling ill-formed UTF-8 sequences 1393 (adapted from patch by Dan Gohman).</li> 1394 1395 <li>improve computation for the number of lines needed to 1396 scroll-up a SIXEL graphic (report/patch by Ben Wong).</li> 1397 1398 <li>correct manpage description for default value of 1399 <code>disallowWindowOps</code> from changes in <a href= 1400 "#xterm_331">xterm #331</a> (patch by Ben Wong).</li> 1401 1402 <li>correct a loop starting-point in 1403 <code>refresh_graphics</code> from optimization in <a href= 1404 "#xterm_358">patch #358</a> changes (report by Ben Wong).</li> 1405 1406 <li>add a new mouse mode 1016, which uses the same format as 1407 mode 1006, but sends the mouse's position in pixels (suggested 1408 by Igor van den Hoven).</li> 1409 1410 <li>fix an issue from <a href="#xterm_338">patch #338</a> 1411 changes where only the first selection buffer specified in the 1412 request would be updated using OSC 52 (patch by Michael 1413 Gulick).</li> 1414 1415 <li>modify makefile/scripts to allow <code>DESTDIR</code> to 1416 prefix the target directory for desktop-file-install (report by 1417 Fred Heitkamp).</li> 1418 1419 <li>enable SIXEL feature by default.</li> 1420 1421 <li>update config.guess, config.sub</li> 1422 </ul> 1423 1424 <h1><a name="xterm_358" id="xterm_358">Patch #358 - 1425 2020/07/12</a></h1> 1426 1427 <ul> 1428 <li>correct logic for decodeTerminalID changes in <a href= 1429 "#xterm_357">patch #357</a> (report by "Chartreuse").</li> 1430 1431 <li>modify makefile to use <code>plink.sh</code> when linking 1432 test-programs, to fix build when using pcre (report by H Merijn 1433 Brand)</li> 1434 1435 <li>build-fix for test_ptydata program (patch by H Merijn 1436 Brand)</li> 1437 </ul> 1438 1439 <h1><a name="xterm_357" id="xterm_357">Patch #357 - 1440 2020/07/05</a></h1> 1441 1442 <ul> 1443 <li>several minor optimizations for the ReGIS and SIXEL 1444 features, improving performance by 10%.</li> 1445 1446 <li>add resource <code>decGraphicsID</code> to allow displaying 1447 graphics when the emulation level would ordinarily disallow 1448 this (prompted by discussion with Thomas Wolff).</li> 1449 1450 <li>add control sequences for fast switching of color palettes: 1451 <code>XTPUSHCOLORS</code>, <code>XTPOPCOLORS</code>, 1452 <code>XTREPORTCOLORS</code></li> 1453 1454 <li>amend change for soft-hyphen from <a href= 1455 "#xterm_328">patch #328</a> to avoid stripping 1456 replacement-characters which would be shown with malformed or 1457 overlong UTF-8 input.</li> 1458 1459 <li>corrected an error-handling case in 1460 <code>decodeUtf8</code>, matching a similar fix in <a href= 1461 "#xterm_268">patch #268</a> (report/patch by Dan Gohman).</li> 1462 1463 <li>add a test-driver for <code>ptydata.c</code></li> 1464 1465 <li>minor cleanup of macros (adapted from patch by Walter 1466 Harms).</li> 1467 1468 <li>fix some errata in <code>ctlseqs.ms</code> (report by 1469 Thomas Wolff).</li> 1470 1471 <li>allow immediate repaint-on-palette-changed if 1472 double-buffering is enabled.</li> 1473 1474 <li>deprecate codes 10/11 in sgr push controls, changing those 1475 to 30/31, to avoid confusion with sgr 10-19.</li> 1476 1477 <li>modify <code>SGR</code> parameter handling to stop if an 1478 unrecognized parameter is encountered, to guard against 1479 malformed or nonstandard sequences (report by Bram 1480 Moolenaar).</li> 1481 1482 <li>modify <code>DECERA</code> color for consistency with other 1483 erasures/clearing (report by Thomas Wolff).</li> 1484 1485 <li><code>ECH</code> should not be masked by 1486 <code>DECSCA</code> (report by Thomas Wolff).</li> 1487 1488 <li>extend <code>DECFRA</code> and <code>REP</code> to accept 1489 any “graphic” character rather than just Latin1, 1490 etc. (report by Thomas Wolff).</li> 1491 1492 <li>add <code>-C</code> option to 256colors2.pl and 1493 88colors2.pl, to demonstrate mixed semicolon/colon separators 1494 which are implied by ECMA-48.</li> 1495 1496 <li>update sample terminfo to reflect the documentation 1497 improvements.</li> 1498 1499 <li>update description of 88/256/direct color in 1500 <code>ctlseqs.ms</code> to point out that using semicolons is a 1501 deprecated legacy feature, and standard terminal applications 1502 should use colons (prompted by discussion with Bram 1503 Moolenaar).</li> 1504 1505 <li>modify configure-check for <code>tgetent</code> to 1506 conditionally include <code>termcap.h</code>, enabling 1507 configuration using <code>clang</code>'s pedantic-errors option 1508 (report by Dennis Clarke). See <a href= 1509 "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h3-Other-Compatibility"> 1510 <em>Other Compatibility</em></a> in ncurses' 1511 <em>curs_termcap(3X)</em>.</li> 1512 1513 <li>remove some unnecessary pointer checks (patch by Walter 1514 Harms).</li> 1515 1516 <li>accept terminal-id and add DA response for VT131, 1517 VT132.</li> 1518 </ul> 1519 1520 <h1><a name="xterm_356" id="xterm_356">Patch #356 - 1521 2020/05/02</a></h1> 1522 1523 <ul> 1524 <li>revise fix for Debian #954730, which interfered with wheel 1525 mouse events (report by Gabriele Balducci).</li> 1526 </ul> 1527 1528 <h1><a name="xterm_355" id="xterm_355">Patch #355 - 1529 2020/05/01</a></h1> 1530 1531 <ul> 1532 <li>revise fix for Debian #954730, which interfered with wheel 1533 mouse events (report by Henri Menke).</li> 1534 1535 <li>fix typos in documentation (reports by Stephen Hurd, Stefan 1536 Assmann).</li> 1537 1538 <li>add mapping for <code>decTerminalID</code> for 1539 “100” overlooked in <a href="#xterm_354">patch 1540 #354</a>.</li> 1541 1542 <li>update tables in wcwidth.c based on Unicode 13.0.0</li> 1543 1544 <li>build-fix for “make check” when building 1545 out-of-tree (report by Sven Joachim).</li> 1546 </ul> 1547 1548 <h1><a name="xterm_354" id="xterm_354">Patch #354 - 1549 2020/04/26</a></h1> 1550 1551 <ul> 1552 <li>work around performance problems of 1553 <code>XDrawImageString</code> and 1554 <code>XDrawImageString16</code> functions (Debian 1555 #954845).</li> 1556 1557 <li>add a control sequence which reports xterm's version (patch 1558 by Nicholas Marriott, mintty #881).</li> 1559 1560 <li>temporarily set numeric locale category to "C" when parsing 1561 resources, so that <code>scaleHeight</code> and 1562 <code>faceSize</code> settings do not depend on locale (Debian 1563 #820803).</li> 1564 1565 <li>improve DA/DA2 response by ensuring that the 1566 <code>decTerminalID</code> maps to one of the known 1567 identifiers, as well as providing DA2 response for VT241 and 1568 VT382.</li> 1569 1570 <li>terminfo improvements: 1571 <ul> 1572 <li>add (my) comments from ncurses which explain the keypad 1573 layouts.</li> 1574 1575 <li>add <code>vt52+keypad</code> from ncurses</li> 1576 1577 <li>use improved <code>xm</code> example for 1578 <code>xterm+x11mouse</code>, <code>xterm+sm+1006</code> 1579 from ncurses 6.2 terminfo.src</li> 1580 </ul> 1581 </li> 1582 1583 <li>two fixes for left/right wheel mouse event reporting 1584 (Debian #954730): 1585 <ul> 1586 <li>filter identical button-events</li> 1587 1588 <li>correct order of button-range versus protocol type (see 1589 <a href="#xterm_345">patch #345</a>)</li> 1590 </ul> 1591 </li> 1592 1593 <li>change “make check” makefile-rule to use 1594 test-drivers for charclass and wcwidth data.</li> 1595 1596 <li>quiet “did not find a usable <em>xxx</em> TrueType 1597 font” warnings by making <code>fontWarnings</code> apply 1598 to these messages (report by Jim Rees).</li> 1599 1600 <li>improve reinitialization of parameter list (report/testcase 1601 by James Holderness).</li> 1602 1603 <li>temporarily set numeric locale category to "C" when 1604 formatting SVG or XHTML screendumps, to make the radix 1605 separator used in RGB values consistent (adapted from patch by 1606 George Kouryachy).</li> 1607 1608 <li>add resource <code>forceXftHeight</code> to control whether 1609 workaround from Debian #880407 is used.</li> 1610 1611 <li>apply updated ascent/descent in workaround from Debian 1612 #880407 to fix a 1-pixel gap in built-in vertical lines 1613 (report/testcase by Stefan Assmann).</li> 1614 1615 <li>improve round-off of scaling for built-in line-drawing 1616 (prompted by discussion with Stefan Assmann).</li> 1617 1618 <li>adjust fonts in svg-icon files to accommodate reduced 1619 functionality of new pango (report/analysis by YOKOTA 1620 Hiroshi).</li> 1621 1622 <li>improve configure check for X Toolkit library.</li> 1623 1624 <li>correct Y-coordinate transformation in 1625 <code>ClearCurBackground</code>, overlooked in changes for 1626 <a href="#xterm_334">patch #334</a> (report/analysis by Chuck 1627 Silvers).</li> 1628 1629 <li>remove <code>--vendor</code> option from test-packages' 1630 install of desktop files; the feature is badly broken in 1631 <em>gnome-shell</em>.</li> 1632 1633 <li>modify <code>uxterm</code> to make it possible to select 1634 nonstandard locale <em>C.UTF-8</em>, e.g, if the user's locale 1635 is set to “C” (Debian #940626).</li> 1636 1637 <li>re-save/tweak “.svg” icon-files to work around 1638 breakage in toolset since the files were created in <a href= 1639 "#xterm_283">patch #283</a>.</li> 1640 </ul> 1641 1642 <h1><a name="xterm_353" id="xterm_353">Patch #353 - 1643 2020/02/01</a></h1> 1644 1645 <ul> 1646 <li>amend change in <a href="#xterm_352">patch #352</a> for 1647 button-events to fix a case where some followup events were not 1648 processed soon enough (report/patch by Jimmy Aguilar 1649 Mena).</li> 1650 1651 <li>handle <em>MappingNotify</em> X event, to improve recovery 1652 when switching keyboard configurations using 1653 <code>xkbcomp</code> (prompted by discussion with Frank Mosch, 1654 Debian #661295). There is more work needed here, possibly in 1655 the X libraries.</li> 1656 1657 <li>improve discussion of mouse-mode in <code>ctlseqs.ms</code> 1658 (suggested by Igor van den Hoven).</li> 1659 1660 <li>further improve checks for Xft <em>max-advance-width</em> 1661 to take into account fonts which use two cells for ambiguous 1662 width characters. Also improve the time used for these checks 1663 (reports by Yuri Pankov, Frank Mosch).</li> 1664 1665 <li>fix a few spelling errors reported by codespell (report by 1666 Jens Schleusener).</li> 1667 1668 <li>modify <code>run-tic.sh</code> to prefer development 1669 version of ncurses since changes to terminfo file in <a href= 1670 "#xterm_345">patch #345</a> rely upon bug-fixes in ncurses 1671 (prompted by discussion with Will Senn).</li> 1672 </ul> 1673 1674 <h1><a name="xterm_352" id="xterm_352">Patch #352 - 1675 2020/01/16</a></h1> 1676 1677 <ul> 1678 <li>adjust fontsize data to handle a minor inconsistency from 1679 recent Xft versions (Debian #880407, adapted from patch by 1680 Vincent Lefèvre).</li> 1681 1682 <li>add a table to the manual page description of 1683 <code>forceBoxChars</code> to alert the reader to the special 1684 characters aside from “line-drawing” which are 1685 drawn directly when this resource is set (Debian #931305).</li> 1686 1687 <li>improve <code>checkXft</code> logic which attempts to 1688 detect fonts whose <em>max-advance-width</em> is inconsistent 1689 with the actual glyph widths. For some fonts, it is necessary 1690 to check additional characters (report/analysis by Jan 1691 Engelhardt).</li> 1692 1693 <li>improve configure-checks for X headers and libraries on 1694 recent MacOS, which has moved those files under 1695 <code>/usr/X11</code>.</li> 1696 1697 <li>improve portability of iconify/deiconify feature by taking 1698 into account some window managers which manipulate the EWMH 1699 <code>_NET_WM_STATE</code> property, adding/removing 1700 <code>_NET_WM_STATE_HIDDEN</code> rather than actually 1701 <em>minimizing</em> the window (prompted by discussion with 1702 Jörg Breitbart).</li> 1703 1704 <li>improve workaround from <a href="#xterm_287">patch #287</a> 1705 for the <code>-iconic</code> option when configured with 1706 toolbar by postponing the extra request for minimizing the 1707 window to the end of menu-initialization.</li> 1708 1709 <li>modify <code>xevents</code> special-case for mouse-events 1710 to include button-events so that the meta key by itself can 1711 generate button-events (report/analysis by Mattias 1712 Engdegård).</li> 1713 1714 <li>amend SGR-stack change from <a href="#xterm_348">patch 1715 #348</a> to not associate bold attribute with background color 1716 (report by Nicholas Marriott).</li> 1717 1718 <li>fix copy/paste error in manual page (patch by Larry 1719 Hynes).</li> 1720 1721 <li>add definitions in <code>xterm_io.h</code> so that GNU/Hurd 1722 will use <code>posix_openpty</code> (patch by Samuel 1723 Thibault).</li> 1724 1725 <li>build-fix in debug-tracing, for <code>esctest</code>.</li> 1726 1727 <li>updated autoconf macros</li> 1728 1729 <li>update config.guess</li> 1730 </ul> 1731 1732 <h1><a name="xterm_351" id="xterm_351">Patch #351 - 1733 2019/11/17</a></h1> 1734 1735 <ul> 1736 <li>correct logic in <code>property_to_string</code> for 1737 deciding when to fallback from UTF-8 decoding to ISO-8859-1 1738 decoding, broken in <a href="#xterm_350">xterm #350</a> 1739 (FreeBSD #241961).</li> 1740 1741 <li>add <code>-report-icons</code> to help-message.</li> 1742 1743 <li>improved autoconf macros: 1744 <ul> 1745 <li><code>CF_ADD_LIBS</code>: the change to filter out 1746 duplicates caused this to append rather than prepend. 1747 revise to fix that.</li> 1748 1749 <li><code>CF_GCC_VERSION</code> and 1750 <code>CF_GCC_WARNINGS</code>: move checks to distinguish 1751 icc/clang from gcc from the macro which handles the 1752 --enable-warnings option, to make this work 1753 without-warnings for the inline-checks.</li> 1754 </ul> 1755 </li> 1756 1757 <li>update config.guess, config.sub</li> 1758 1759 <li>correct status in <code>XTGETXRES</code> replies when the 1760 resource was not found.</li> 1761 1762 <li>fix some gcc, cppcheck, clang and coverity warnings.</li> 1763 1764 <li>guard call to <code>RequestResize</code> from the 1765 struct-notify event handler to prevent recursion in the 1766 Xft+buffered workaround in some cases when doing manual 1767 resizing rather than resizing via escape sequences (reports by 1768 Stefan Assmann, Mike Thornburg).</li> 1769 1770 <li>amend the workaround for Xft+buffered blanking by moving 1771 the switch to bitmap-fonts to account for differences in font 1772 metrics between bitmap- and TrueType-fonts (report by Stefan 1773 Assmann).</li> 1774 1775 <li>improve the note on the <code>xterm-rep</code> terminfo 1776 entry (prompted by discussion with Sven Joachim).</li> 1777 </ul> 1778 1779 <h1><a name="xterm_350" id="xterm_350">Patch #350 - 1780 2019/11/02</a></h1> 1781 1782 <ul> 1783 <li>modify html/svg dump to not ignore zero'd/blank cells.</li> 1784 1785 <li>align terminfo file with ncurses, e.g., add 1786 <code>xterm+osc104</code> block.</li> 1787 1788 <li>improve discussion of <code>modifyOtherKeys</code> in 1789 manual page and in <code>ctlseqs.ms</code>.</li> 1790 1791 <li>add <code>vttests/modify-keys.pl</code> script to 1792 illustrate the <code>modifyOtherKeys</code> resource (prompted 1793 by discussion with Bram Moolenaar).</li> 1794 1795 <li>various improvements to <code>ctlseqs.ms</code>, as part of 1796 autogenerating links for the website.</li> 1797 1798 <li>update manual page default for <code>saveLines</code> 1799 resource default value (Branden Robinson, Debian #913815).</li> 1800 1801 <li>add command-line option <code>-report-xres</code> to show 1802 the values of the VT100 widget X resources when initialization 1803 is complete.</li> 1804 1805 <li>add a control sequence which, like tcap-query, allows an 1806 application to inspect most X resource settings of the VT100 1807 widget.</li> 1808 1809 <li>adjust some optional features to enable them in the imake 1810 configuration as they would be by default via the configure 1811 script.</li> 1812 1813 <li>add null-pointer checks to improve error recovery when 1814 bitmap fonts are missing or corrupt (report by Jonne 1815 Ransijn).</li> 1816 1817 <li>correct the condition for deleting the EWMH window-title 1818 property, i.e., if UTF-8 titles are disabled, rather than if an 1819 update to the EWHM property found no change (report by Sven 1820 Joachim).</li> 1821 1822 <li>build-fix for the case when configure 1823 <code>--enable-trace</code> is used without 1824 <code>--enable-warnings</code> (report by Sven Joachim).</li> 1825 1826 <li>fix a few minor bugs found with Coverity.</li> 1827 1828 <li>add a check in <code>property_to_string</code> to avoid 1829 translating <code>UTF8_STRING</code> or 1830 <code>COMPOUND_TEXT</code> into Latin-1 when UTF-8 encoding is 1831 active, e.g., when pushing onto the title-stack while switching 1832 to the alternate screen.</li> 1833 1834 <li>build-fix for the <code>--disable-doublechars</code> 1835 configure option (report by Brian Lindholm).</li> 1836 </ul> 1837 1838 <h1><a name="xterm_349" id="xterm_349">Patch #349 - 1839 2019/09/22</a></h1> 1840 1841 <ul> 1842 <li>add graphic context to support bold+italics (patch by Quinn 1843 Strahl).</li> 1844 1845 <li>document window properties in the manual page.</li> 1846 1847 <li>improve title-string feature: 1848 <ul> 1849 <li>if any of <code>allowC1Printable</code>, 1850 <code>utf8Title</code> or <code>titleModes</code> hint that 1851 an application might send a title-string encoded in UTF-8, 1852 check if that is the case, and if it is recodable into 1853 ISO-8859-1, use that for the ICCCM-style title.</li> 1854 1855 <li>check if the title given by a control sequence happens 1856 to be already encoded in UTF-8, to avoid double-encoding 1857 (FreeBSD #240393).</li> 1858 1859 <li>Make <code>sameName</code> resource work for the EWMH 1860 titles.</li> 1861 1862 <li>Modify menu-state of <code>utf8Title</code> to be 1863 consistent with the <code>utf8</code> source, i.e., setting 1864 the EWMH properties automatically when UTF-8 is 1865 active.</li> 1866 </ul> 1867 </li> 1868 1869 <li>reorganize text-drawing to make it possible to investigate 1870 using Xft to implement VT100-style double-sized characters. 1871 While doing this, made a workaround for apparent Xft bug which 1872 loses its drawable state when switching from 132 to 80 1873 columns.</li> 1874 1875 <li>improve font-warning messages by showing which are 1876 <em>derived</em> rather than directly from resource settings 1877 (suggested by Tomas Korbar). Also filter repeated font-warning 1878 messages, to accommodate broken X configurations.</li> 1879 1880 <li>fix an inconsistency between failure to load derived wide 1881 font versus failure to load derived wide-bold font (Redhat 1882 #1679790). That relies upon the “:unscaled” 1883 property which is broken in some distributions (however, recent 1884 Debian and the BSDs such as MacOS work).</li> 1885 1886 <li>updated autoconf-252 to check X11R7 include/lib directories 1887 found on some older configurations.</li> 1888 1889 <li>set a graphic-context for border when double-buffering is 1890 active; to prevent the border color from changing when 1891 switching to reverse-video.</li> 1892 1893 <li>build-fix for <code>--disable-ziconbeep</code>, which 1894 conflicted with the new double-buffer configuration (report by 1895 Brian Lindholm).</li> 1896 1897 <li>fix loop-limit for lookup of <code>fullscreen</code> 1898 resource broken in <a href="#xterm_347">xterm #347</a> (report 1899 by Scott Bertilson).</li> 1900 </ul> 1901 1902 <h1><a name="xterm_348" id="xterm_348">Patch #348 - 1903 2019/07/22</a></h1> 1904 1905 <ul> 1906 <li>update window-manager hints when exiting Tek4014 mode 1907 (Debian #932569, patch by Jonathan Irwin).</li> 1908 1909 <li>fix a misformatted printf in 1910 <code>report-sgr.pl</code>.</li> 1911 1912 <li>add configure check for termios types, to improve 1913 compiler-warnings.</li> 1914 1915 <li>ensure that when resetting margins, to also reset 1916 <code>DECLRMM</code>. This affects <code>DECCOLM</code>, 1917 <code>DECALN</code> (although DEC STD 070 mentions only 1918 top/bottom margins), and <code>DECSTR</code>.</li> 1919 1920 <li>corrected order of reset/move when setting 1921 <code>DECCOLM</code>, and make it more consistent by always 1922 resetting margins, rather than only when the mode is changed 1923 (report by James Holderness).</li> 1924 1925 <li>compile-in double-buffer support by default, changing the 1926 configure option to set the default resource value for 1927 <code>buffered</code> to true or false.</li> 1928 1929 <li>take in account the reverse-video state when computing the 1930 filler-color used when clearing the screen in double-buffering 1931 configuration.</li> 1932 1933 <li>correct logic for filtering scrollbar-updates when 1934 <code>buffered</code> resource is compiled-in but not enabled 1935 (report by Paul Lampert).</li> 1936 1937 <li>improve state saved/restored for cursor-save and SGR stack 1938 features.</li> 1939 1940 <li>improve description of 1006 and 1005 mouse modes, to avoid 1941 implying that they use character-parameters (report by Bryan 1942 Christ).</li> 1943 1944 <li>explain in <code>ctlseqs.ms</code> that some of the numeric 1945 keypad keys were xterm extensions rather than VT100/VT220 1946 terminal features (prompted by discussion with Thomas 1947 Wolff).</li> 1948 1949 <li>explain in <code>ctlseqs.ms</code> how the DEC windowing 1950 extension is supported by xterm.</li> 1951 1952 <li>add 28 rectangular editing to the primary response 1953 (suggested by Thomas Wolff).</li> 1954 1955 <li>fix a typo, improve wording in <code>ctlseqs.ms</code> 1956 (Thomas Wolff).</li> 1957 1958 <li>fix internal column-parameter when <code>SL</code> or 1959 <code>SR</code> is used with left/right margins (patch by 1960 Thomas Wolff).</li> 1961 1962 <li>fix off-by-one in VT52 graphics character mapping (patch by 1963 Thomas Wolff).</li> 1964 1965 <li>use <code>_X_UNUSED</code>, etc., when available as a 1966 fallback for <code>GCC_UNUSED</code>, etc., to reduce compiler 1967 warnings when building with <code><em>imake</em></code>.</li> 1968 1969 <li>update config.sub</li> 1970 </ul> 1971 1972 <h1><a name="xterm_347" id="xterm_347">Patch #347 - 1973 2019/06/30</a></h1> 1974 1975 <ul> 1976 <li>fix a few minor bugs found with Coverity.</li> 1977 1978 <li>improve double-buffering for scrollbars combined with 1979 scrolled text; add <code>bufferedFPS</code> resource to control 1980 the maximum rate of screen updates (report by Mike 1981 Thornburg).</li> 1982 1983 <li>improve fixes for <code>DECCRA</code> handling of 1984 double-width characters (patch by Martin Hostettler).</li> 1985 1986 <li>improve discussion of ECMA-48's typographical error for 1987 <code>SD</code> in <code>ctlseqs.ms</code> (prompted by report 1988 by Martin Hostettler).</li> 1989 1990 <li>correct off-by-one in parameter limit-check for 1991 <code>DECCRA</code> (report by Martin Hostettler).</li> 1992 1993 <li>modify <code>saveCellData</code> to handle case where 1994 double-width character is partially copied; that should be 1995 blanked (report/testcase by Thomas Wolff).</li> 1996 1997 <li>add resource <code>buffered</code> to allow 1998 enabling/disabling double-buffered mode.</li> 1999 2000 <li>two fixes for the double-buffer configuration, prompted by 2001 MacPorts' switch to double-buffering (patch by Mike Thornburg, 2002 MacPorts #58313): 2003 <ul> 2004 <li>ensure that the needSwap flag is set after drawing 2005 TrueType text</li> 2006 2007 <li>corrected the drawable-parameter used for the 2008 bar-cursor</li> 2009 </ul> 2010 </li> 2011 2012 <li>modify <code>ScrnRefresh</code> to ignore a case where the 2013 left/right halves of a double-width character have been set to 2014 different video attributes. The attribute to use is in the 2015 left-half (report/testcase by Thomas Wolff).</li> 2016 2017 <li>correct a limit-check for <code>DECCRA</code> in case the 2018 target lies off-screen (report/testcase by Thomas Wolff).</li> 2019 2020 <li>documentation errata (report by Thomas Wolff).</li> 2021 2022 <li>reset flags including wraparound and reverse-wrap when 2023 switching to VT52 mode, while noting that DEC's standard 2024 documentation leaves that behavior <em>undefined</em> (report 2025 by Thomas Wolff).</li> 2026 2027 <li>ensure that italic font is turned off on hard/soft resets 2028 (report by Martin Hostettler).</li> 2029 2030 <li>improve responsiveness to X events while processing HTML or 2031 SVG dumps (report by Martin Hostettler).</li> 2032 2033 <li>replace logic in <code>wcwidth.c</code> for detecting 2034 double-width characters with binary-search table generated 2035 using updated <code>uniset</code> (report by Robert Ross).</li> 2036 2037 <li>add test-driver for <code>wcwidth.c</code> to simplify 2038 comparison with system's <code>wcwidth</code>.</li> 2039 2040 <li>ensure that window-manager name comparisons work when 2041 active-icon is enabled, since <code><em>CSI</em>13t</code> uses 2042 the window-manager name (report by Glenn Golden, Arch 2043 #62818).</li> 2044 2045 <li>trim a stray “experimental” in one of the 2046 comments about the tcap-query feature, which has been a 2047 supported feature since 2008 (see <a href="#xterm_238">patch 2048 #238</a>).</li> 2049 </ul> 2050 2051 <h1><a name="xterm_346" id="xterm_346">Patch #346 - 2052 2019/05/27</a></h1> 2053 2054 <ul> 2055 <li>update description of the “default” setting for 2056 the <code>renderFont</code> resource to match the behavior in 2057 <a href="#xterm_261">patch #261</a> (Debian #862042).</li> 2058 2059 <li>account for <code>internalBorder</code> in 2060 <code>useBorderClipping</code> (report by Robert Ross).</li> 2061 2062 <li>update table of unknown-width characters in wcwidth.c based 2063 on Unicode 12.1.0 (prompted by discussion with Robert 2064 Ross).</li> 2065 2066 <li>improve description of DECSCL versus S7C1T and S8C1T in 2067 <code>ctlseqs.ms</code>.</li> 2068 2069 <li>improve consistency between <code><em>CSI</em>3t</code> and 2070 <code><em>CSI</em>13t</code>, accounting for differences 2071 between some window managers' handling of EMWH extents (report 2072 by Bram Moolenaar).</li> 2073 2074 <li>fix a sign-extension when reporting offscreen window 2075 position (report by Bram Moolenaar).</li> 2076 </ul> 2077 2078 <h1><a name="xterm_345" id="xterm_345">Patch #345 - 2079 2019/05/14</a></h1> 2080 2081 <ul> 2082 <li>updated FreeBSD test-package from recent /usr/ports 2083 scripts.</li> 2084 2085 <li>workaround in <code>run-tic.sh</code> for HPUX, whose 2086 <code>mktemp</code> prints the name of a temporary directory 2087 without creating it.</li> 2088 2089 <li>add left/right margin capabilities to terminfo, since the 2090 default terminal emulation is VT420 (suggested by Thomas 2091 Wolff).</li> 2092 2093 <li>modify treatment of <code>reverseVideo</code> for dynamic 2094 colors to make text foreground/background consistent with the 2095 cursor color (prompted by discussion with Ben Wong, lsix 2096 #20).</li> 2097 2098 <li>modify button-handling to make SGR button-release distinct 2099 from button-press for button-codes starting with 8 (patch by 2100 Mikulas Patocka).</li> 2101 2102 <li>add aliases for the sgr push/pop controls to work around 2103 language limitations of C# (request by Dan Thompson).</li> 2104 2105 <li>correct a typo in <code>setDirectFG</code>, which could 2106 cause setting of indexed-color after a direct-color to be 2107 ignored.</li> 2108 2109 <li>add resource <code>useBorderClipping</code> as an 2110 alternative to <code>useClipping</code> (request by Robert 2111 Ross).</li> 2112 2113 <li>improve logic for displaying xterm's built-in line-drawing 2114 characters vs missing glyphs, e.g., for U+2409 to U+240D (patch 2115 by Robert Ross).</li> 2116 2117 <li>add <code>vttests/sgrPushPop2.pl</code> to illustrate how 2118 selective pushes work, as well as to demonstrate push/pop of 2119 the various color types supported by xterm.</li> 2120 2121 <li>fix a special case in <code>XTPOPSGR</code> where 2122 direct-colors were not checked as a dependency of 2123 indexed-colors, contrary to documentation.</li> 2124 2125 <li>reduce buffer-flushes for <code>OSC 4</code> and 2126 <code>OSC 5</code> color-queries, as well as in the 2127 queries for dynamic colors.<br> 2128 <strong>Note:</strong> this change makes the reply for 2129 <code>OSC 5</code> use the “5” in the 2130 response; formerly it was mapped to ”4” after 2131 adding the maximum number of colors.</li> 2132 2133 <li>modify <code>vttests/query-color.pl</code> to demonstrate 2134 multiple queries in one request.</li> 2135 2136 <li>update tables of combining and unknown-width characters in 2137 wcwidth.c based on Unicode 12.0.0.</li> 2138 2139 <li>modify response for <code>OSC 5</code> to be 2140 consistent with documentation.</li> 2141 2142 <li>add <code>vttests/query-dynamic.pl</code></li> 2143 2144 <li>modify <code>vttests/query-color.pl</code> to accept bold, 2145 underline, etc., keywords to decide whether to use 2146 <code>OSC 5</code> rather than 2147 <code>OSC 4</code>.</li> 2148 2149 <li>modify cursor coloring to avoid a case where the cursor 2150 matched the foreground color while the text was displayed in 2151 reverse-video (report by Nuno Silva).</li> 2152 2153 <li>fix an inconsistency in X10 mouse responses from <a href= 2154 "#xterm_342">patch #342</a> changes; the legacy protocol 2155 supports only buttons 1-3.</li> 2156 2157 <li>reduce the number of buffer-flushes for tcap-query 2158 batches.</li> 2159 2160 <li>modify <code>tcapquery.pl</code> to demonstrate batch 2161 queries with <code>-q</code> option.</li> 2162 2163 <li>increase response-buffer size, and make it configurable as 2164 <code>limitResponse</code> (prompted by discussion with Stephen 2165 P Wall).</li> 2166 2167 <li>modified configure script: 2168 <ul> 2169 <li>check/workaround for non-POSIX manipulation of 2170 predefined symbols</li> 2171 2172 <li>check for updated X Toolkit, which uses 2173 <code>const</code>.</li> 2174 </ul> 2175 </li> 2176 2177 <li>update config.guess, config.sub</li> 2178 2179 <li>provide for secondary-selection, overlooked in <a href= 2180 "#xterm_338">patch #338</a> (report by Emile LeBlanc).</li> 2181 2182 <li>documentation errata (patch by Larry Hynes).</li> 2183 2184 <li>improve pointer-checks in <code>Tekproc.c</code></li> 2185 2186 <li>revise solution for Debian #919475, to allow for 2187 struct-notify events occurring as a side-effect of toggling 2188 to/from full-screen mode.</li> 2189 2190 <li>window's border-size was incorrectly added to position when 2191 maximizing window (report by Gary Langshaw).</li> 2192 </ul> 2193 2194 <h1><a name="xterm_344" id="xterm_344">Patch #344 - 2195 2019/02/12</a></h1> 2196 2197 <ul> 2198 <li>add ASCII escape to default for 2199 <code>disallowedPasteControls</code> (prompted by discussion 2200 with Martin Hostettler).</li> 2201 2202 <li>fix typo in <code>ctlseqs.ms</code> (Robert Ross).</li> 2203 2204 <li>implement DEC Cyrillic NRCS (based on screenshots of vttest 2205 provided by Markus Schmidt).</li> 2206 2207 <li>correct control returning sixel geometry maximum versus 2208 actual size (patch by Ben Wong).</li> 2209 2210 <li>improve manual page for <code>resize</code> to clarify that 2211 <code>resize</code> does not execute the shell commands which 2212 it generates for setting environment variables.</li> 2213 2214 <li>improve memory-management for parser, to handle response 2215 strings that might occur with <code>ENQ</code> or when 2216 <code>SRM</code> mode is active (patch by Martin 2217 Hostettler).</li> 2218 2219 <li>change <code>Comment</code> text in uxterm's desktop file 2220 to work around a limitation of GNOME's GIO application 2221 (<a href="https://gitlab.gnome.org/GNOME/gnome-shell/issues/940#note_427334">issue 2222 #940</a>). The <a href= 2223 "https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-search"> 2224 documentation</a> reads: 2225 <blockquote> 2226 <p>Searches desktop files for ones that match 2227 <em><code>search_string</code></em>.</p> 2228 2229 <p>The return value is an array of <em>strv</em>s. Each 2230 <em>strv</em> contains a list of applications that matched 2231 search_string with an equal score. The outer list is sorted 2232 by score so that the first <em>strv</em> contains the 2233 best-matching applications, and so on. The algorithm for 2234 determining matches is undefined and may change at any 2235 time.</p> 2236 </blockquote> 2237 </li> 2238 2239 <li>a check of <code>zIconBeep</code> resource was removed in 2240 double-buffer fix in <a href="#xterm_334">patch #334</a>. That 2241 is used to decide whether to handle struct-notify events. When 2242 xterm does handle the events, it may negotiate a new 2243 window-size with the window manager. In that case, the 2244 <code>limitResize</code> resource setting limited the new 2245 window-size to the screen-size. Amended that by eliminating the 2246 limit for this special case when double-buffer is configured, 2247 and restoring the check for <code>zIconBeep</code> when 2248 double-buffer is not configured (Debian #919475).</li> 2249 2250 <li>disallow recursion which could happen if a user configures 2251 the <code>answerbackString</code> resource with the 2252 <code>ENQ</code> code and experiments with that code when 2253 <code>SRM</code> is enabled (report by by Martin 2254 Hostettler).</li> 2255 2256 <li>add remaining credits in <code>COPYING</code> file.</li> 2257 2258 <li>modify <code>run-tic.sh</code> to check if it is using an 2259 older version of ncurses which does not support large terminal 2260 descriptions, and if so, remove a non-essential feature to keep 2261 within the 4096-byte legacy limit.</li> 2262 </ul> 2263 2264 <h1><a name="xterm_343" id="xterm_343">Patch #343 - 2265 2019/01/13</a></h1> 2266 2267 <ul> 2268 <li>modify <code>run-tic.sh</code> to prefer ncurses6 over 2269 ncurses5, when available.</li> 2270 2271 <li>add <code>COPYING</code> file, and dummy "check" makefile 2272 rule for testing Arch packages.</li> 2273 2274 <li>add/update package scripts for FreeBSD and NetBSD, for 2275 testing.</li> 2276 2277 <li>update tables of combining and ambiguous-width characters 2278 in wcwidth.c based on Unicode 11.0.0.</li> 2279 2280 <li>modify <code>xterm-new</code> sample terminfo entry to 2281 correspond to ncurses 6.1, using the SGR 1006 mouse 2282 protocol.</li> 2283 2284 <li>improve manual page discussion of selection ownership 2285 versus highlighting (prompted by discussion with Martin 2286 Hostettler).</li> 2287 2288 <li>restore/repair <code>keepClipboard</code> feature which was 2289 broken by changes in <a href="#xterm_338">patch #338</a> 2290 (report by Martin Hostettler).</li> 2291 2292 <li>improve documentation for <code>deleteIsDEL</code> 2293 resource.</li> 2294 2295 <li>modify DECRQM response for private mode 1037 to account for 2296 cases where the resource <code>deleteIsDEL</code> is initially 2297 neither true nor false, but dependent upon the keyboard type 2298 (report/analysis by Martin Hostettler).</li> 2299 2300 <li>clear pointers for pattern/fontset after destroying their 2301 data when switching facename with an escape sequence (report by 2302 Robert Ross).</li> 2303 2304 <li>modify logic for TrueType fallback fonts to match the 2305 sort-order used by <code>fc-match</code> (report by Robert 2306 Ross).</li> 2307 2308 <li>add resource setting <code>limitFontsets</code> which can 2309 be used to limit or disable the new TrueType fontset feature 2310 (request by Robert Ross).</li> 2311 </ul> 2312 2313 <h1><a name="xterm_342" id="xterm_342">Patch #342 - 2314 2019/01/03</a></h1> 2315 2316 <ul> 2317 <li>limit mouse-button events to 11 buttons in the original 2318 protocol, and 15 in the extended mouse-protocol (patch by 2319 Martin Hostettler).</li> 2320 2321 <li>correct calculation for buttons past 11 in 2322 <code>mouse-codes</code> sample script (patch by Martin 2323 Hostettler).</li> 2324 2325 <li>disable a supplementary check added in <a href= 2326 "#xterm_341">patch #341</a> which interferes with using 2327 fontconfig to select different-sized bitmap fonts (Arch 2328 #61237).</li> 2329 </ul> 2330 2331 <h1><a name="xterm_341" id="xterm_341">Patch #341 - 2332 2018/12/24</a></h1> 2333 2334 <ul> 2335 <li>add options to <code>mouse-codes</code> script to 2336 demonstrate that the encoding used for mouse events limits 2337 button numbers to 11.</li> 2338 2339 <li>allow mouse button numbers up to 11 using an offset of 128 2340 for button numbers 8-11 rather than the offset of 64 used for 2341 wheel-mouse, etc., buttons 4-7 in <a href="#xterm_338">patch 2342 #338</a> (adapted from patch by Martin Hostettler).</li> 2343 2344 <li>correct off-by-one right-margin checks for double-width 2345 character adjustments in DECERA/DECFRA (patch by Martin 2346 Hostettler).</li> 2347 2348 <li>allocated size of selection buffer was not reset when 2349 freeing the buffer in <a href="#xterm_338">patch #338</a> 2350 (report/analysis by Stefan Assmann).</li> 2351 2352 <li>modify the initial pattern passed to fontconfig to disallow 2353 color bitmap fonts.</li> 2354 2355 <li>improve error recovery for a case where fontconfig ignores 2356 the requested pattern due to override in the user's font 2357 configuration (report/testcase by Stefan Assmann).</li> 2358 </ul> 2359 2360 <h1><a name="xterm_340" id="xterm_340">Patch #340 - 2361 2018/12/16</a></h1> 2362 2363 <ul> 2364 <li>suppress a spurious warning about fontsets when 2365 initializing menus for the toolbar configuration.</li> 2366 2367 <li>fix some strict compiler warnings.</li> 2368 2369 <li>improve checks for TrueType font, to help with the case of 2370 color bitmap fonts, which fontconfig misrepresents (Arch Linux 2371 #58706).</li> 2372 </ul> 2373 2374 <h1><a name="xterm_339" id="xterm_339">Patch #339 - 2375 2018/12/12</a></h1> 2376 2377 <ul> 2378 <li>modify <code>CF_GNU_SOURCE</code> macro to treat 2379 <em>newlib</em> as similar to <em>glibc</em>, fixing a problem 2380 with the configure checks for pseudoterminals in Cygwin 2381 overlooked in <a href="#xterm_334">patch #334</a> updates for 2382 configure-macros.</li> 2383 </ul> 2384 2385 <h1><a name="xterm_338" id="xterm_338">Patch #338 - 2386 2018/12/09</a></h1> 2387 2388 <ul> 2389 <li>ignore <code>$TERMINFO</code> in the configure script if it 2390 is set to a non-directory value.</li> 2391 2392 <li>updated configure macros: 2393 <ul> 2394 <li><code>CF_WITH_PCRE2</code>, modified to work with 2395 Debian's (mis-numbered) pcre3 package.</li> 2396 2397 <li><code>CF_CC_ENV_FLAGS</code> , report preprocessor 2398 options in <code>CFLAGS</code></li> 2399 2400 <li><code>CF_LD_RPATH_OPT</code> , suppress check if 2401 <code>--disable-rpath</code> option was given.</li> 2402 2403 <li><code>CF_XOPEN_SOURCE</code>, add case for 2404 midnightbsd</li> 2405 </ul> 2406 </li> 2407 2408 <li>update config.guess, config.sub</li> 2409 2410 <li>add a check to ensure that the filename parameter passed to 2411 <code>XpmReadFileToPixmap</code> is actually a file, since that 2412 function does not check (report by Ben Nott).</li> 2413 2414 <li>amend solution for Debian #758633 to ensure that replies 2415 for bracketed paste are not sent while processing a selection 2416 for <code>exec-formatted</code> (Debian #913237).</li> 2417 2418 <li>improve adjustments/clearing for double-width characters in 2419 <code>DECERA</code>, <code>DECFRA</code>, 2420 <code>DECSERA</code>.</li> 2421 2422 <li>improve adjustments/clearing for double-width characters 2423 when doing vertical scrolling within left/right margins (patch 2424 by Martin Hostettler).</li> 2425 2426 <li>modify wcwidth to encode a few spacing combining marks as 2427 regular combining characters.</li> 2428 2429 <li>change compiled-in default for <code>saveLines</code> to 2430 match the resource-file changed in <a href="#xterm_192">patch 2431 #192</a> (Debian #913815).</li> 2432 2433 <li>change default <code>faceSize</code> to 8.0, to simplify 2434 switching back/forth between bitmap fonts and TrueType. This 2435 was originally (mis)set to 14.0 in <a href="#xterm_148">patch 2436 #148</a>.</li> 2437 2438 <li>add fallback support in Xft configuration for missing 2439 glyphs (prompted by discussion with Mike Burns).</li> 2440 2441 <li>fix a problem with using direct-colors for the background 2442 color when clearing/scrolling (report by Nicholas 2443 Marriott).</li> 2444 2445 <li>add a "sources" rule for the makefile's generated 2446 source.</li> 2447 2448 <li>add a short explanation in <code>ctlseqs.ms</code> 2449 discussing the differences in error-recovery for malformed 2450 sequences versus unimplemented features, and amend one case for 2451 consistency (prompted by discussion with Martin 2452 Hostettler).</li> 2453 2454 <li>adjusted ifdef's so that the paste64 configure option does 2455 not automatically enable the readline-mouse configure 2456 option.</li> 2457 2458 <li>revert the change which prevented concurrent ownership of 2459 different selection targets, and instead modify selection 2460 storage so that different concurrent requests for different 2461 selection targets will be stored/retrieved independently 2462 (Debian #901249).</li> 2463 2464 <li>remove a check which prevented returning button-codes past 2465 the documented 4/5 for wheel mouse, and add a script 2466 <code>mouse-codes</code> which makes a report showing the 2467 various mouse codes for different button/modifier combinations 2468 (discussion with Přemysl Janouch).</li> 2469 2470 <li>improve display and checksum for DEC Special Graphics by 2471 mapping 0x5f to 0.</li> 2472 2473 <li>add a null-pointer check for table-ending in the 2474 extended-boolean resource-handling (report by Felix von 2475 Leitner).</li> 2476 2477 <li>remove stray <code>]</code>'s from INSTALL-file (Larry 2478 Hynes).</li> 2479 </ul> 2480 2481 <h1><a name="xterm_337" id="xterm_337">Patch #337 - 2482 2018/09/21</a></h1> 2483 2484 <ul> 2485 <li>regenerated configure script (report by Sven Joachim).</li> 2486 2487 <li>revise/improve fix for scrolling in margins 2488 (report/analysis by Martin Hostettler):</li> 2489 2490 <li>amend change to default-translations "select" subset to 2491 ensure that specific key-press actions are listed before 2492 generic key-press actions (reports by H Merijn Brand, Sven 2493 Joachim).</li> 2494 </ul> 2495 2496 <h1><a name="xterm_336" id="xterm_336">Patch #336 - 2497 2018/09/19</a></h1> 2498 2499 <ul> 2500 <li>ensure that only one of PRIMARY and CLIPBOARD is owned by 2501 xterm at a given time (Debian #901249).</li> 2502 2503 <li>documentation fixes (report by Lars Krueger): 2504 <ul> 2505 <li>document <code>SL</code> and <code>SR</code>.</li> 2506 2507 <li>document <code>DECRPTUI</code>, change number of digits 2508 to match VT420.</li> 2509 </ul> 2510 </li> 2511 2512 <li>revise <code>omitTranslation</code> resource, e.g., 2513 splitting “default” into several more useful 2514 categories.</li> 2515 2516 <li>modify mask-logic to permit <em>control-</em> and 2517 <em>meta-</em> modifiers to be used in mouse protocol.</li> 2518 2519 <li>several fixes for parsing/state (report/testcases by Martin 2520 Hostettler): 2521 <ul> 2522 <li>remove an old/unimplemented entry for xterm-title from 2523 state table.</li> 2524 2525 <li>save/restore wrap-flag when scrolling, to fix an 2526 inconsistency between jump-scrolling and 2527 normal-scrolling.</li> 2528 2529 <li>improve a special case of wrapping where the cursor 2530 starts beyond the right-margin, and wraps at the terminal's 2531 last-column before the settable-margins can take 2532 effect.</li> 2533 2534 <li>if origin mode is set, adjust a restored cursor column 2535 relative to the left margin.</li> 2536 2537 <li>when scrolling a line within left/right margins, 2538 correct order of the fixups needed when a double-width 2539 character crosses the margin boundary.</li> 2540 </ul> 2541 </li> 2542 2543 <li>review/fix a few cases where the parsing state was not 2544 reset after completing a control sequence (prompted by report 2545 by Martin Hostettler).</li> 2546 2547 <li>disallow <code>XTCHECKSUM</code> if the corresponding 2548 window-ops "SetChecksum" is unset.</li> 2549 2550 <li>add <code>print-vt-chars.pl</code> script to illustrate the 2551 NRCS and codepages supported by xterm.</li> 2552 2553 <li>add <code>other-sgr.sh</code> script to demonstrate the 2554 non-VT100 video attributes implemented in <a href= 2555 "#xterm_305">patch #305</a>, and added a summary of their 2556 introduction in ECMA-48 to the control sequences document.</li> 2557 2558 <li>add <code>tabs</code> and <code>-tabs</code> keywords to 2559 <code>ttyModes</code> resource to simplify workaround for 2560 terminal drivers which are not aware of UTF-8 (FreeBSD 2561 #229682).</li> 2562 2563 <li>add VT5xx NRCS 7-bit Turkish and DEC Turkish.</li> 2564 2565 <li>add VT5xx NRCS 7-bit Hebrew and DEC Hebrew.</li> 2566 2567 <li>add VT5xx NRCS 7-bit Greek and DEC Greek.</li> 2568 2569 <li>correct a few post-VT220 codepages to make them display 2570 without setting the NRCS state.</li> 2571 2572 <li>extend <code>vt100Graphics</code> resource to include other 2573 character-sets such as the VT500 codepages in UTF-8 mode.</li> 2574 2575 <li>add some VT5xx codepages to help with the discussion of 2576 96-character sets: <em>ISO Greek Supplemental</em>, <em>ISO 2577 Hebrew Supplemental</em>, <em>ISO Latin–5 2578 Supplemental</em>, and <em>ISO Latin–Cyrillic</em>.</li> 2579 2580 <li>improve description of the VT300-controls for designating 2581 character sets, and fix a typo which indicated that some were 2582 used for 94-character sets (prompted by discussion with Lars 2583 Krueger).</li> 2584 2585 <li>add private control <code>XTCHECKSUM</code> for modifying 2586 <code>checksumExtension</code>.</li> 2587 2588 <li>factor out xterm's <code>DECRQCRA</code> checksum 2589 extensions as a resource setting 2590 <code>checksumExtension</code>.</li> 2591 2592 <li>revise calculation of checksum for <code>DECRQCRA</code> to 2593 match DEC's terminals (using screenshots of vttest provided by 2594 Markus Schmidt).</li> 2595 2596 <li>restore a fix for memory-checksum setup of 2597 <code>DECCKSR</code> from <a href="#xterm_315">patch #315</a> 2598 incorrectly reverted in <a href="#xterm_334">patch #334</a> as 2599 part of fix for <code>DECRQCRA</code>.</li> 2600 </ul> 2601 2602 <h1><a name="xterm_335" id="xterm_335">Patch #335 - 2603 2018/08/14</a></h1> 2604 2605 <ul> 2606 <li>add <code>colorInnerBorder</code> resource to make a change 2607 from <a href="#xterm_334">patch #334</a> configurable (reports 2608 by H Merijn Brand, Gabriele Balducci).</li> 2609 </ul> 2610 2611 <h1><a name="xterm_334" id="xterm_334">Patch #334 - 2612 2018/08/12</a></h1> 2613 2614 <ul> 2615 <li>modify <code>Imakefile</code> to reflect the fact that 2616 NetBSD no longer has a working termcap emulation.</li> 2617 2618 <li>add resource-setting <code>validShells</code> which can be 2619 used to augment the system's <code>/etc/shell</code> (prompted 2620 by discussion with Paul Lampert).</li> 2621 2622 <li>stifle some useless warnings from lintian in 2623 test-packages.</li> 2624 2625 <li>add the ncurses extension “RGB” to the 2626 responses for the termcap-query feature.</li> 2627 2628 <li>improved getopts-handling in sample scripts.</li> 2629 2630 <li>fix some warnings from gcc8 and clang --analyze.</li> 2631 2632 <li>update note about incorrect documentation for 2633 <code>DECRQSS</code> to include VT525 (report by Markus 2634 Schmidt).</li> 2635 2636 <li>correct check for default-values in rectangular parsing; a 2637 zero counts as a missing or default parameter (report/testcase 2638 by Markus Schmidt).</li> 2639 2640 <li>correct some ranges in the <code>ambiguous[]</code> table 2641 in wcwidth (adapted from patch by KUGA Tsutomu).</li> 2642 2643 <li>fix a special case with faint video attribute incorrectly 2644 combined with default color.</li> 2645 2646 <li>add private control <code>XTREPORTSGR</code> for reporting 2647 video-attributes and color on a rectangle, and script 2648 <code>report-sgr.pl</code> to demonstrate it.</li> 2649 2650 <li>modify some of the markup in <code>ctlseqs.ms</code> to 2651 work around groff's reassignment of ASCII punctuation 2652 characters as documented in <em>groff_char(7)</em>.</li> 2653 2654 <li>treat ECMA-48 SGR 6 the same as SGR 5.</li> 2655 2656 <li>add private controls <code>XTPUSHSGR</code> and 2657 <code>XTPOPSGR</code> for saving/restoring the current 2658 video-attributes on a stack (adapted from patch by Dan 2659 Thompson).</li> 2660 2661 <li>modify <code>DECRPM</code> response for logging enable to 2662 indicate its state even when enabling/disabling it is not 2663 allowed.</li> 2664 2665 <li>implement <code>DECSNLS</code></li> 2666 2667 <li>implement <code>DECRSPS</code></li> 2668 2669 <li>improve fill-color for double-buffer configuration, which 2670 was sharing a graphic context with the cursor.</li> 2671 2672 <li>fix a couple of cases where double-sized VT100 characters 2673 were not clipped, seen in Joe Smith's <a href= 2674 "http://www.inwap.com/pdp10/#Tymnet">VT100 torture 2675 test</a>.</li> 2676 2677 <li>color the inner border using the same 2678 <code>borderColor</code> as the outer border, rather than 2679 filling with the VT100's default background.</li> 2680 2681 <li>change encoding of “THANKS” to UTF-8.</li> 2682 2683 <li>modify handling of <code>DECELR</code> to recognize 2684 <code>MotionNotify</code> events again, amending a check for 2685 <code>allowMouseOps</code> which limited that to button-events 2686 in <a href="#xterm_328">patch #328</a> (Olaf Rogalsky).</li> 2687 2688 <li>fix some screen-painting problems with left/right margins 2689 when using insert-line or delete-line (report/testcase by 2690 Martin Hostettler). also fix similar case with 2691 index/reverse-index.</li> 2692 2693 <li>several minor performance improvements using macros, e.g., 2694 inline checks for character width.</li> 2695 2696 <li>add <code>DECSCPP</code> and <code>DECSLPP</code> to 2697 <code>DECRQSS</code>.</li> 2698 2699 <li>implement <code>DECSCPP</code>.</li> 2700 2701 <li>implement <code>DECCIR</code> and <code>DECTABSR</code> 2702 presentation reports.</li> 2703 2704 <li>modify checksum computation for <code>DECRQCRA</code> to 2705 treat uninitialized cells as blanks rather than nulls.</li> 2706 2707 <li>drop custom-entity from HTML-dump, use UTF-8 for &nbsp; 2708 (Debian #902381).</li> 2709 2710 <li>modify display of non-BMP characters when using bitmap 2711 fonts to show a null/empty box rather than the replacement 2712 character which was used in cleanup changes for <a href= 2713 "#xterm_233">patch #233</a> (report by Christian 2714 Weisgerber).</li> 2715 2716 <li>when setting up clipping rectangle for Xft, allow for the 2717 case where xterm is only displaying a combining character, 2718 where the base was already written (report by Joshua 2719 Crowgey).</li> 2720 2721 <li>allow reset Xft's state if switching font-sizes when 2722 double-buffering is used.</li> 2723 2724 <li>fix repainting, e.g., on resize, when double-buffering is 2725 used with Xft (patch by Daniel Colascione).</li> 2726 2727 <li>correct some interchanged pairs of symbols in 2728 <code>unicode/keysym.map</code> (Brad Town).</li> 2729 2730 <li>improve configure macros CF_GCC_WARNINGS, CF_GNU_SOURCE, 2731 CF_POSIX_C_SOURCE, CF_TRY_XOPEN_SOURCE, CF_XOPEN_SOURCE, 2732 CF_X_ATHENA_CPPFLAGS.</li> 2733 2734 <li>modify <code>logFile</code> resource to interpret 2735 “<code>-</code>” as the standard output (adapted 2736 patch by Colum Paget).</li> 2737 2738 <li>improve documentation of Tek4014 menu options; fix a case 2739 where the Tek4014 window was not displayed before switching 2740 modes.</li> 2741 2742 <li>re-correct parameter for <em>pid</em> used for DECCKSR, 2743 DECRQCSR (see <a href="#xterm_315">xterm #315</a>).</li> 2744 2745 <li>hard/soft reset now resets the cursor-blinking state that 2746 may have been set via escape sequences; the cursor-blinking 2747 menu-entry feature is unmodified (report by Matthieu 2748 Herrb).</li> 2749 2750 <li>update config.guess, config.sub</li> 2751 </ul> 2752 2753 <h1><a name="xterm_333" id="xterm_333">Patch #333 - 2754 2018/05/03</a></h1> 2755 2756 <ul> 2757 <li>ensure that i18n is enabled if input-method is 2758 enabled.</li> 2759 2760 <li>modify logic for pre-edit to update spot-location while the 2761 cursor is invisible (Kakoune #1940).</li> 2762 2763 <li>change default icon to newer one, "mini.xterm".</li> 2764 2765 <li>install a complete set of icons, to simplify post-install 2766 customization.</li> 2767 2768 <li>add resource <code>disallowedPasteControls</code> to extend 2769 filtering of control characters from pastes.</li> 2770 2771 <li>add <code>print-on-error</code> action-hook, and document 2772 action-hooks for dump-html, dump-svg.</li> 2773 2774 <li>provide action-hook for <code>print-immediate</code>, which 2775 was available only as a menu-item (report by Rastislav 2776 Barlik).</li> 2777 2778 <li>continue to improve notes in <code>ctlseqs.ms</code> which 2779 mention where various controls originated.</li> 2780 2781 <li>add case to accept ECMA-48's bogus <code>SD</code>, but 2782 document the issue in <code>ctlseqs.ms</code>.</li> 2783 2784 <li>add control sequence for loading XPM-icon file, using the 2785 analogous control sequence from shelltool/dtterm.</li> 2786 2787 <li>add <code>-report-icons</code> option, to report on 2788 XPM-icon and title-bar updates.</li> 2789 2790 <li>correct a discrepancy between locator-reports for VT220 vs 2791 VT330.</li> 2792 2793 <li>add window-ops control sequences to complement existing 2794 ones for reporting window-position and text-area size with 2795 reports for text-area position and window-size.</li> 2796 2797 <li>display vt52 graphics mode characters.</li> 2798 2799 <li>correct case-statement for window-ops 10, overlooked since 2800 some window managers equate vertical-maximize and 2801 horizontal-maximize window hints with full-screen 2802 maximize.</li> 2803 </ul> 2804 2805 <h1><a name="xterm_332" id="xterm_332">Patch #332 - 2806 2018/04/15</a></h1> 2807 2808 <ul> 2809 <li>add a <code>GetChecksum</code> item to 2810 <code>disallowedWindowOps</code></li> 2811 2812 <li>improve notes in <code>ctlseqs.ms</code> which mention 2813 where various controls originated.</li> 2814 2815 <li>add control sequences for querying the X display size and 2816 the character size, both in pixels to help eliminate some of 2817 the constants in <code>esctest</code>.</li> 2818 2819 <li>fixes prompted by review of George Nachman's 2820 <code>esctest</code> script: 2821 <ul> 2822 <li>add a null-pointer check and a limit-check in 2823 <code>xtermCheckRect</code>.</li> 2824 2825 <li>correct limit-check for right-margin when processing 2826 autowrapping if xterm is not built for 2827 wide-characters.</li> 2828 2829 <li>repair logic in <code>RIS</code> to reset 132-column 2830 mode when an escape sequence is used to enable 2831 80/132-column switching.</li> 2832 2833 <li>correct array-limit for EWMH working state.</li> 2834 2835 <li>further improve limit-checks versus assert's (see 2836 <a href="#xterm_315">patch #315</a>).</li> 2837 2838 <li>correct order of check-margins and move-to-left margin 2839 for <code>DL</code> and <code>IL</code>.</li> 2840 2841 <li>modify reverse-wrap to pay attention to top/bottom 2842 margins as it has done for left/right margins since 2843 <a href="#xterm_279">patch #279</a>.</li> 2844 2845 <li>modify behavior of <code>DECFI</code> and 2846 <code>DECBI</code> to not index the screen at the 2847 left/right edge of the display unless those happen to be 2848 the left/right margins.</li> 2849 2850 <li>add case for VT320 DSR response for keyboard 2851 status.</li> 2852 </ul> 2853 </li> 2854 2855 <li>improve check for valid shell path using 2856 <code>getusershell</code> and <code>endusershell</code> if 2857 available, in case <code>/etc/shells</code> does not exist 2858 (suggested by Rainer Orth).</li> 2859 2860 <li>modified configure checks for groff and man2html, to use 2861 the latter by default, but allowing mandoc as a partial 2862 replacement for former.</li> 2863 2864 <li>revisited the inconsistent copyright notices mentioned in 2865 <a href="#xterm_165">patch #165</a>, and eliminate the issue as 2866 mentioned in this <a href= 2867 "https://invisible-island.net/personal/copyrights.html">copyright 2868 discussion</a>.</li> 2869 2870 <li>fix typo in this change-log (report by Sven Joachim)</li> 2871 2872 <li>update config.guess, config.sub</li> 2873 </ul> 2874 2875 <h1><a name="xterm_331" id="xterm_331">Patch #331 - 2876 2017/12/30</a></h1> 2877 2878 <ul> 2879 <li>add workaround for improper grayscale adjustments made in 2880 FreeType library, exposed by changes to rounding in 2.8.1, 2881 which shows up as a gap in line-drawing characters (Debian 2882 #880407).</li> 2883 2884 <li>improve a special case where a non-Unicode font's 2885 line-drawing characters were not used, when specifying it via 2886 the <code>utf8Fonts</code> resource, e.g., 2887 <blockquote> 2888 <pre> 2889 -fs 15 \ 2890 -xrm '*VT100.font:12x24' \ 2891 -xrm '*VT100.boldFont:12x24' \ 2892 -xrm '*VT100.utf8Fonts.font: 12x24' \ 2893 -xrm '*VT100.utf8Fonts.boldFont: 12x24' \ 2894</pre> 2895 </blockquote> 2896 </li> 2897 2898 <li>replace constant 10msec delay for next X event with new 2899 resource <code>nextEventDelay</code>, and reduce that to 1msec 2900 to accommodate faster machines than used when 2901 <code>-hold</code> was implemented in <a href= 2902 "#xterm_116">1999</a> (Debian #877628).</li> 2903 2904 <li>add <code>scroll-to</code> action, which simplifies binding 2905 a key to scroll to the beginning or end of the saved-lines 2906 (Debian #880120).</li> 2907 2908 <li>add building blocks for alternate screen and/or title-stack 2909 features in the <code>terminfo</code> file.</li> 2910 2911 <li>improve calculations for cell-data size.</li> 2912 2913 <li>change configure script to enable XHTML/SVG screen dumps by 2914 default.</li> 2915 2916 <li>change configure script to enable 256-colors by 2917 default.</li> 2918 2919 <li>update config.guess, config.sub</li> 2920 2921 <li>change configure script option for 2922 <code>--with-man2html</code> to use improved script by 2923 default.</li> 2924 2925 <li>add case for private mode 1044 in DECRQM, to report the 2926 keepClipboard resource setting and corresponding menu 2927 entry.</li> 2928 2929 <li>fix an inconsistency between private mode 12 (the AT&T 2930 610 cursor blink) and <code>DECSCUSR</code>: the former relied 2931 on having the <code>cursorBlink</code> resource set initially 2932 to enable the escape sequence, while the latter does not.</li> 2933 2934 <li>add private modes 13 and 14, as well as resource 2935 <code>cursorBlinkXOR</code> to allow better control over the 2936 cursor-blinking state (discussion with Bram Moolenaar).</li> 2937 2938 <li>modify the html and svg screen dumps to support direct 2939 color</li> 2940 2941 <li>modify media copy (screen-printing) to support the same SGR 2942 codes as <code>DECRQSS</code>, including 88/256 indexed color 2943 as well as direct color.</li> 2944 2945 <li>improve options-parsing for query-status.pl script.</li> 2946 2947 <li>modify parsing of <code>SGR</code> direct-color control 2948 making <em>color space identitier</em> optional. The 2949 corresponding <code>DECRQSS</code> reply always returns an 2950 empty (default) field for the identifier.</li> 2951 2952 <li>add wide-attributes to <code>DECRQSS</code> reply for 2953 <code>SGR</code>.</li> 2954 2955 <li>add private mode 1046 to help with scripting 2956 applications.</li> 2957 2958 <li>correct expression used for readline-flags in DECRQM; to 2959 test the current flag rather than information <em>stacked</em> 2960 within the same variable.</li> 2961 2962 <li>correct typo in <code>ctlseqs.ms</code> reference to 2963 ISO-8613-6 (patch by Mike Frysinger).</li> 2964 2965 <li>fix lintian warning for test-package.</li> 2966 2967 <li>fix typo in <code>DECRQSS</code> for <code>SGR</code> 48, 2968 which printed the foreground value for colors past 15. Also use 2969 colon delimiter for codes 38/48 in response (report by Paul 2970 LeoNerd Evans).</li> 2971 2972 <li>improve workaround for Debian #542434 by using the font's 2973 maximum width when no ISO-8859-1 glyphs are provided (Debian 2974 #879936).</li> 2975 2976 <li>work around a special case of <em>Xft</em>'s mismanagement 2977 of its cached data by adding a check before the 2978 <code>-report-fonts</code> option to ensure that it does not 2979 use an <code>XftPattern</code> which may have been freed during 2980 a call to <code>XftFontOpenPattern</code>.</li> 2981 2982 <li>improve manual page description of <code>regex</code> 2983 option for <code>on<em>X</em>Clicks</code> resources (report by 2984 Lukas Mai).</li> 2985 2986 <li>add <code>directColor</code> resource.</li> 2987 2988 <li>additional manpage macro cleanup (Branden Robinson, Debian 2989 #880551).</li> 2990 2991 <li>add optional support for direct-colors (adapted from patch 2992 by anonymous “Nibby Nebbulous”).</li> 2993 2994 <li>improve legacy/NRC character set mapping (patch by Thomas 2995 Wolff), e.g., 2996 <ul> 2997 <li>enable alternate NRC set designators for French and 2998 French Canadian, ‘9’ and ‘f’ 2999 respectively, as documented in ctlseqs. (‘9’ is 3000 documented for VT510, ‘f’ is a Kermit 3001 feature).</li> 3002 3003 <li>correct the Unicode value in the <em>DEC Technical</em> 3004 table to show capital delta.</li> 3005 3006 <li>referring to 3007 <blockquote> 3008 <p><a href= 3009 "http://vt100.net/docs/vt220-rm/table2-3b.html">http://vt100.net/docs/vt220-rm/table2-3b.html</a><br> 3010 3011 <a href= 3012 "http://vt100.net/docs/vt320-uu/appendixe.html">http://vt100.net/docs/vt320-uu/appendixe.html</a></p> 3013 </blockquote> 3014 3015 <p>add entries for the <em>DEC Supplemental Graphics</em> 3016 table to display 0x28/0xa8 as ¤ and 0x5d/0xdd as 3017 Ÿ.</p> 3018 </li> 3019 3020 <li>referring to 3021 <blockquote> 3022 <p><a href= 3023 "http://www.vt100.net/charsets/technical.html">http://www.vt100.net/charsets/technical.html</a></p> 3024 </blockquote> 3025 3026 <p>alter the Unicode values used for 0x2b through 0x2c to 3027 use <em>curly braces</em> to work with the 3028 “middle” parts displayed with 0x2f and 3029 0x30.</p> 3030 </li> 3031 3032 <li>modify the VT220 “Supplemental” table, 3033 giving a hint that it was probably meant to be 3034 “Supplemental Graphics” and is the same as 3035 VT320's table.</li> 3036 </ul> 3037 </li> 3038 3039 <li>quiet a few font-warnings when a derived fontname cannot be 3040 opened, overlooked in refactoring of font resources in <a href= 3041 "#xterm_328">patch #328</a> (initially reported on <a href= 3042 "https://cygwin.com/ml/cygwin/2017-06/msg00255.html">Cygwin 3043 mailing list</a>, with <a href= 3044 "https://cygwin.com/ml/cygwin/2017-07/msg00216.html">followup</a>).</li> 3045 3046 <li>correct error response for <code>DECRQSS</code> broken in 3047 cleanup of Coverity reports in <a href="#xterm_288">patch 3048 #288</a> (reports by Bram Moolenaar and IWAMOTO Kouichi).</li> 3049 3050 <li>improve <code>DECRPM</code> responses by returning <em>mode 3051 not recognized</em> for modes which may not be settable due to 3052 the selected <code>decTerminalID</code> resource (report by 3053 IWAMOTO Kouichi).</li> 3054 3055 <li>correct logic for <code>print-immediate</code> action, and 3056 enable corresponding menu entry (patch by Lauri 3057 Tirkkonen).</li> 3058 3059 <li>add configure option <code>--with-pcre2</code> (patch by 3060 David Michael).</li> 3061 3062 <li>fix a misspelled subsection title in ctlseqs.ms and add a 3063 note regarding blink which was rendered as bold in X11R6. 3064 Blinking text was implemented in <a href="#xterm_60">Patch 3065 #60</a>.</li> 3066 3067 <li>fix typos in <code>xterm.man</code> (patches by Sven 3068 Joachim, Larry Hynes).</li> 3069 3070 <li>fix typography in <code>xterm.man</code> (patch by Bjarni 3071 Ingi Gislason, Debian #869248).</li> 3072 3073 <li>fix typo in <code>INSTALL</code> (Larry Hynes).</li> 3074 3075 <li>add <code>xterm-direct</code> terminal description based on 3076 changes introduced in <a href="#xterm_277">patch #277</a>, and 3077 relying upon ncurses <code><strong>RGB</strong></code> 3078 extension.</li> 3079 3080 <li>modify <code>xterm-new</code> terminal description to use 3081 ECMA-48 <code>REP</code>, reflecting its use in xterm since 3082 <a href="#xterm_32">patch #32</a> (1996).</li> 3083 3084 <li>clarify comment in ctlseqs.ms regarding blink: it has been 3085 part of xterm since <a href="#xterm_60">patch #60</a> 3086 (1998).</li> 3087 3088 <li>update ftp URLs in documentation.</li> 3089 </ul> 3090 3091 <h1><a name="xterm_330" id="xterm_330">Patch #330 - 3092 2017/06/20</a></h1> 3093 3094 <ul> 3095 <li>updates for ReGIS (Ross Combs): 3096 <ul> 3097 <li>remove redundant text command error check which broke 3098 <code>T(B)</code> and <code>T(E)</code>.</li> 3099 3100 <li>retain the loading alphabet number across multiple 3101 “L” commands.</li> 3102 3103 <li>add <code>S(T)</code> delay handler.</li> 3104 3105 <li>fix some color handling error messages.</li> 3106 3107 <li>add stubbed-out macrograph handling.</li> 3108 3109 <li>use <code>fragment_remaining()</code> and 3110 <code>fragment_consumed()</code> instead of manually 3111 checking position / length in various places.</li> 3112 3113 <li>rename some local variables in string / extent / option 3114 parsing</li> 3115 3116 <li>wrap some long lines.</li> 3117 3118 <li>move macrograph command handling out of the 3119 top-level.</li> 3120 </ul> 3121 </li> 3122 3123 <li>add a summary of the italic fonts loaded to 3124 <code>-report-fonts</code> option.</li> 3125 3126 <li>modify the font-lookup for italics to allow for 3127 “<code>-i-</code>” if no match is found with slant 3128 “<code>-o-</code>” (prompted by patch by Ben 3129 Wong).</li> 3130 3131 <li>change default values for <code>mkSamplePass</code> and 3132 <code>mkSampleSize</code> to reflect generally-improved locale 3133 support in various operating systems (FreeBSD #219800).</li> 3134 3135 <li>modify <code>wcwidth.c</code> to return -1 for non-Unicode 3136 values, and adjust a couple of blocks to better match 3137 assumptions about ambiguous-width characters in other 3138 implementations. Also modify <code>wcwidth.c</code> to support 3139 configurable soft-hyphen, so there is no drawback to using this 3140 version rather than a system <code>wcwidth</code>.</li> 3141 3142 <li>amend change made in <a href="#xterm_328">patch #328</a> 3143 for cursor-visibility to handle case where an application is 3144 updating the reverse-video state (FreeBSD #219800).</li> 3145 3146 <li>update tables of combining and ambiguous-width characters 3147 in wcwidth.c based on Unicode 10.0.0.</li> 3148 3149 <li>build-fix for <code>--enable-sixel-graphics</code> without 3150 <code>--enable-regis-graphics</code> (reports by Sven Joachim, 3151 FreeBSD #219945).</li> 3152 </ul> 3153 3154 <h1><a name="xterm_329" id="xterm_329">Patch #329 - 3155 2017/06/12</a></h1> 3156 3157 <ul> 3158 <li>add control sequences for reading the Sixel and ReGIS 3159 graphics sizes (suggested by Ben Wong).</li> 3160 3161 <li>add a workaround for <code>wcwidth</code> returning -1 for 3162 characters which should have been printable (FreeBSD 3163 #219800).</li> 3164 3165 <li>fix a bug in font initialization from <a href= 3166 "#xterm_328">patch #328</a> (FreeBSD #219800).</li> 3167 3168 <li>fix a special case in <code>HideCursor</code> which 3169 assigned a bold font to the slot used for normal font in 3170 changes for italics in <a href="#xterm_307">patch #307</a> 3171 (Debian #858304).</li> 3172 3173 <li>updates for ReGIS (Ross Combs): 3174 <ul> 3175 <li>Strings specified with no command are used as 3176 "comments". Print these in the log when tracing.</li> 3177 3178 <li>Catch attempts to use "alternate display" mode (AKA 3179 "blink") from the GIGI, but do not implement it.</li> 3180 3181 <li>The <code>T(M)</code> command should only multiply the 3182 height by 10, not 20.</li> 3183 3184 <li>Make the <code>S(E)</code> command reset more state 3185 than just the screen contents.</li> 3186 3187 <li>Remove two rotation variables which were only being 3188 printed.</li> 3189 3190 <li>Numerous minor fixes and comment updates in the 3191 <code>R</code> command.</li> 3192 3193 <li>Unknown <code>R</code> command option names trigger an 3194 empty response.</li> 3195 3196 <li>Fix the output position after printing rotated text (it 3197 was missing the the sign before).</li> 3198 3199 <li>Fix the position change with pixelvectors and rotated 3200 text (the rotation transform was not being applied).</li> 3201 3202 <li>Update the <em>TODO</em> list and remove a verification 3203 <em>FIXME</em> (slanted text positioning is correct as 3204 is).</li> 3205 3206 <li>Emulate the approximately 1.4x enlargement for text 3207 which isn't rotated at right angles.</li> 3208 3209 <li>Only update the color planes specified in the plane 3210 mask (the <code>W</code> command's <code>F</code> 3211 option).</li> 3212 </ul> 3213 </li> 3214 3215 <li>fix a bug introduced by the changes to font information in 3216 <a href="#xterm_328">patch #328</a>. When processing the 3217 "checkfont" option of the <code>locale</code> resource, the 3218 program referred to the <em>request</em> data, to an array 3219 which was only allocated in the <em>new/result</em> widget 3220 (report by H Merijn Brand).</li> 3221 3222 <li>fix a missing assignment initialization to make the 3223 <code>utf8</code> resource control whether escape sequences to 3224 enable/disable UTF-8 mode are allowed.</li> 3225 </ul> 3226 3227 <h1><a name="xterm_328" id="xterm_328">Patch #328 - 3228 2017/06/01</a></h1> 3229 3230 <ul> 3231 <li>revise parser for <code>charClass</code> resource, making 3232 these improvements: 3233 <ul> 3234 <li>accept octal and hexadecimal values</li> 3235 3236 <li>allow embedded whitespace</li> 3237 3238 <li>allow the class after colon to be optional, e.g., to 3239 clear class settings for a range of characters.</li> 3240 </ul> 3241 </li> 3242 3243 <li>add command-line option 3244 <code>-report-charclass</code>.</li> 3245 3246 <li>fix most lintian warnings about test-package</li> 3247 3248 <li>add <code>eraseSavedLines</code> resource.</li> 3249 3250 <li>document <code>DECSED 3</code> in 3251 <code>ctlseqs.ms</code> (report by Ben Longmans).</li> 3252 3253 <li>improve integration between configure-events and updates 3254 for reported screensize, in particular when switching between 3255 vt100 and tek4014 modes.</li> 3256 3257 <li>modify selection-highlighting of reverse-video text to keep 3258 that distinct, e.g., by reversing the selection foreground and 3259 background colors as one would expect. This fixes a "useless" 3260 case in the description of 3261 <code>highlightColorMode</code>.</li> 3262 3263 <li>improve fix for Debian #759734, addressing a case where 3264 non-colored cursor would be invisible against reverse-video 3265 (see <a href="#xterm_311">patch #311</a>).</li> 3266 3267 <li>updates for ReGIS (Ross Combs): 3268 <ul> 3269 <li>the "H" option of the "T" command should multiply by 3270 10, not 20.</li> 3271 3272 <li>display unknown glyphs as a solid block.</li> 3273 3274 <li>given a succession of text-direction options, use the 3275 last.</li> 3276 3277 <li>fix the direction of ReGIS slanted text so that 3278 negative values produce oblique output .</li> 3279 3280 <li>fix the ReGIS text direction option to only rotate 3281 characters when no following size option is used.</li> 3282 </ul> 3283 </li> 3284 3285 <li>update terminfo to better match corresponding entries in 3286 ncurses, e.g., <code>u8</code> pattern to match the VT220, 3287 VT420, etc., primary responses, as well as adding 3288 <code>smxx</code> and <code>rmxx</code>.</li> 3289 3290 <li>fixes from Jörg Sommer: 3291 <ul> 3292 <li>corrected a trace-message regarding maximum 3293 graphics-size; it used the similar ReGIS maximum size which 3294 might not be configured.</li> 3295 3296 <li>in <code>do_select_regex</code>, clear selection if 3297 there is no match. If the regex does not match anything 3298 around the cursor, the selection returned must be empty, 3299 otherwise the whole line is treated as a match. This way 3300 the command defined by <code>exec-selectable</code> will 3301 not be executed if there is no match.</li> 3302 3303 <li>modify limit in <code>do_select_regex</code> to include 3304 the character at the cursor in the match, making it easier 3305 to type something and then hit the key to trigger 3306 <code>exec-selectable</code>.</li> 3307 3308 <li>If <code>exec-selectable</code> or 3309 <code>insert-selection</code> is triggered by a mouse 3310 button click, the position of the mouse pointer should be 3311 used. This makes it easier to address any position on the 3312 window and it makes it possible to use the mouse, e.g., for 3313 applications such as mutt where you cannot move the 3314 cursor.</li> 3315 </ul> 3316 </li> 3317 3318 <li>modify <code>DECRC</code> to save/restore xterm's 3319 last-column flag used to control wrapping behavior rather than 3320 manipulating <code>DECAWM</code> (report/analysis by Mattias 3321 Engdegård).</li> 3322 3323 <li>add configure option <code>--enable-terminfo-env</code> to 3324 use the value set by <code>--with-own-terminfo</code> for the 3325 <code>$TERMINFO</code> environment variable. That variable was 3326 set automatically for HPUX, but would be useful in other 3327 systems, e.g., for Solaris (request by Jeff Wieland).</li> 3328 3329 <li>fix a race condition when setting up a signal handler to 3330 timeout if opening <code>/dev/tty</code> hangs (patch by Tobias 3331 Stoeckmann).</li> 3332 3333 <li>review/cleanup resources which were not in the manual page 3334 (report by Maxwell Anselm): 3335 <ul> 3336 <li>add manual page description as needed.</li> 3337 3338 <li>drop resource name for <code>menuBar</code>, as 3339 unnecessary.</li> 3340 3341 <li>modify fallback numeric value for 3342 <code>regisScreenSize</code> resource to match that for 3343 <code>maxGraphicSize</code>.</li> 3344 </ul> 3345 </li> 3346 3347 <li>updated configure macros <code>CF_ADD_CFLAGS</code>, 3348 <code>CF_CC_ENV_FLAGS</code>, <code>CF_GNU_SOURCE</code>, 3349 <code>CF_MATH_LIB</code>, and <code>CF_XOPEN_SOURCE</code> from 3350 other program-changes.</li> 3351 3352 <li>update config.guess, config.sub</li> 3353 3354 <li>change “maximum screensize” assumed by 3355 <code>resize</code> to 9999x9999, to accommodate people using 3356 the <em><code>Unreadable</code></em> font.</li> 3357 3358 <li>drop <code>Utility</code> from default value of 3359 <code>--with-desktop-category</code> (Debian #780176).</li> 3360 3361 <li>widen the configure script pattern used for finding related 3362 ".desktop" files, including “Terminal”</li> 3363 3364 <li>several minor improvements to font utility functions: 3365 <ul> 3366 <li>provide for later modification to implement font-sets 3367 by parsing the font resources as comma-separated 3368 lists.</li> 3369 3370 <li>parse <code>-fn</code> and <code>-fa</code> similarly, 3371 using “x:” and “xft:” prefixes for 3372 font name/family strings to distinguish between XLFD and 3373 Xft font specifications.</li> 3374 3375 <li>use loops to iterate over font classes</li> 3376 3377 <li>use getters/setters for font data to allow for 3378 on-demand lookups.</li> 3379 3380 <li>make the debugging trace for missing glyph less verbose 3381 since that interferes with the <code>-report-fonts</code> 3382 option.</li> 3383 3384 <li>refactor <code>xtermLoadFont</code> to make it clearer 3385 how some fonts are derived from others, e.g., bold, 3386 wide.</li> 3387 3388 <li>make the triggering and suppressing of font-warnings 3389 more consistent by storing the last state in the 3390 widget.</li> 3391 3392 <li>reduce font-warnings by checking for repeated 3393 warnings.</li> 3394 </ul> 3395 </li> 3396 3397 <li>add <code>vttests/query-status.pl</code></li> 3398 3399 <li>add <code>vttests/closest-rgb</code></li> 3400 3401 <li>add special case for displaying soft-hyphen if it happens 3402 to fall at the right margin, and omitting similar case such as 3403 the BIDI markers, where a zero-width character is neither a 3404 control character nor a combining character (Debian 3405 #844325).</li> 3406 3407 <li>modify logic for <code>OSC 52</code>, <em>manipulate 3408 selection data</em>, to update the selection-time to include 3409 the latest X events. This fixes some cases where the selection 3410 was invalid, e.g., after an event due to focus-follows-mouse 3411 (report/testcase by Stephane Chauveau).</li> 3412 3413 <li>revise macro <code>CastMallocN</code> as new macro 3414 <code>TextAlloc</code> to make explicit use of 3415 <code>sizeof(char)</code> (prompted by patch by Cade 3416 Foster).</li> 3417 3418 <li>add <em>“Mouse Ops”</em> menu entry and related 3419 resources to allow runtime disabling/enabling of the mouse 3420 protocol escape sequences (discussion with Bob Proulx).</li> 3421 3422 <li>improve discussion of mouse actions versus protocol in the 3423 manual (discussion with Bob Proulx).</li> 3424 3425 <li>improve discussion of environment variables in the manual, 3426 pointing out where some features (such as termcap and the 3427 System5 <code>COLUMNS</code> and <code>LINES</code> variables) 3428 are used rarely, mainly to support legacy applications.</li> 3429 3430 <li>add examples of <code>translations</code> resource for 3431 select/paste, and for font-size changes to the manual.</li> 3432 3433 <li>minor reordering of some entries in <code>ctlseqs.ms</code> 3434 for consistency (report by Arran Ubels).</li> 3435 3436 <li>add <code>-s</code> option to <code>256colors2.pl</code> 3437 and <code>88colors2.pl</code>, to demonstrate modifying the 3438 “system” colors 0–15.</li> 3439 3440 <li>omit <code>XFT_SPACING</code> property from call to <code> 3441 XftPatternBuild</code>, to work around a bug in 3442 <em>fontconfig</em> for handling Google Go fonts, whose names 3443 sort in an order not expected by <em>fontconfig</em>, causing 3444 the request for a monospaced font to return <em>italics</em>, 3445 e.g., 3446 <blockquote> 3447 <pre> 3448$ fc-match 'Go Mono:spacing=monospace' 3449Go-Mono-Italic.ttf: "Go Mono" "Italic" 3450(report by Giacomo Boffi on <a href= 3451"http://unix.stackexchange.com/questions/324941/xterm-displays-an-italic-face-instead-of-regular">Stackoverflow</a>). 3452 3453</pre> 3454 </blockquote> 3455 </li> 3456 3457 <li>modify <code>minstall.in</code> to improve a workaround 3458 added to the manual page in <a href="#xterm_182">patch #182</a> 3459 to avoid having the C preprocessor used in the imake 3460 configuration strip out the comments in the character classes 3461 section (reports by Ted Unangst, Anthony J Bentley).</li> 3462 </ul> 3463 3464 <h1><a name="xterm_327" id="xterm_327">Patch #327 - 3465 2016/10/07</a></h1> 3466 3467 <ul> 3468 <li>add a check in the function which handles end-of-line 3469 wrapping to ensure that C1 controls are allocated one column 3470 when <code>allowC1Printable</code> is set (Debian 3471 #738794).</li> 3472 3473 <li>use consistent error-checking after <code>strtol</code> 3474 calls, fixes a case where a query with OSC 6 did not ensure 3475 there was a valid color number (report by Alex Smith).</li> 3476 3477 <li>add <code>-baudrate</code> option, for testing 3478 ncurses.</li> 3479 3480 <li>always generate the <code>CASE_<em>xxx</em></code> symbols 3481 in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part 3482 of a change to improve debug-logging. This makes the build 3483 always depend upon <code>awk</code>.</li> 3484 3485 <li>modify <code>allowC1Printable</code> to disallow codes 3486 160-254 as being equivalent to codes 32-126 when parsing escape 3487 sequences (Debian #839220).</li> 3488 3489 <li>amend fix from <a href="#xterm_326">patch #326</a> for 3490 TrueType fonts to exclude the hidden character used for 3491 double-width cells (report by Grady Martin).</li> 3492 3493 <li>fix a typo in <code>ctlseqs.ms</code></li> 3494 </ul> 3495 3496 <h1><a name="xterm_326" id="xterm_326">Patch #326 - 3497 2016/09/25</a></h1> 3498 3499 <ul> 3500 <li>updated appdata file (report by Richard Hughes).</li> 3501 3502 <li>improve discussion of the different terminal emulations 3503 provided by xterm in the manual page.</li> 3504 3505 <li>add examples of setting the icon title with/without the 3506 window title in the manual (Debian #833984).</li> 3507 3508 <li>correct a limit-check when using a numeric value for 3509 extended Booleans e.g., <code>*fullscreen:3</code> rather than 3510 a name such as <code>*fullscreen:never</code>.</li> 3511 3512 <li>add action <code>allow-bold-fonts</code></li> 3513 3514 <li>improved formatting fixes for manual page, using script to 3515 find mismatches in spelling of resources, actions and menu 3516 entries.</li> 3517 3518 <li>improve documentation of logging resources.</li> 3519 3520 <li>fix a special case of flickering cursor by adding 3521 <code>GraphicsExpose</code> to the list of event types that 3522 should not trigger making the mouse cursor visible (patch by 3523 Joe Peterson).</li> 3524 3525 <li>correct initialization of line-drawing in VT52-mode, 3526 overlooked in changes for <a href="#xterm_297">patch #297</a> 3527 (report/patch by Ben Wiley Sittler).</li> 3528 3529 <li>minor clarification of form-feed versus line-feed in 3530 <code>ctlseqs.ms</code> (suggested by David Kemper).</li> 3531 3532 <li>amend fix for Debian #738794 to restore a check for missing 3533 characters which are <em>not</em> combining characters. Also 3534 fill in a corresponding special case for TrueType fonts (Debian 3535 #827905).</li> 3536 </ul> 3537 3538 <h1><a name="xterm_325" id="xterm_325">Patch #325 - 3539 2016/06/05</a></h1> 3540 3541 <ul> 3542 <li>improve manual page discussion of function keys (discussion 3543 with Ross Combs).</li> 3544 3545 <li>further improve fix for Debian #545220 in <a href= 3546 "#xterm_248">patch #248</a>, to avoid conflict with combining 3547 characters (Debian #738794).</li> 3548 3549 <li>improve <code>-hold</code> option to avoid 100% CPU usage 3550 with NetBSD after closing the shell, which makes subsequent 3551 checks for X input events fail (prompted by patch by Pierre 3552 Pronchery).</li> 3553 3554 <li>review <code>#ifdef</code> statements, listed those which 3555 do not have a configure option in 3556 <code>xtermcfg.hin</code>.</li> 3557 3558 <li>fixed one case where the menu sensistivity for 3559 <em>Print-All Immediately</em> and <em>Print-All on Error</em> 3560 was not properly ifdef'd.</li> 3561 3562 <li>modify terminfo entries for 16-, 88- and 256-color to reset 3563 palette with <code>rs1</code> capability.</li> 3564 3565 <li>accept <code>legacy</code> value of <code>-kt</code> as 3566 synonym for the <code>oldXtermFKeys</code> resource, and extend 3567 the full-reset logic to use the keyboard type set via 3568 <code>-kt</code>.</li> 3569 3570 <li>modify <code>ioctl</code> calls for <code>I_PUSH</code> to 3571 first check if the module has been added, using 3572 <code>I_FIND</code>. This is needed for newer Solaris libraries 3573 with c11 support (adapted from patch by Alan Coopersmith).</li> 3574 3575 <li>add check in <code>getXtermCombining</code> to ensure that 3576 combining characters were allocated (report by Tor 3577 Andersson).</li> 3578 3579 <li>add configure option <code>--without-xinerama</code> to 3580 allow suppressing the extension (Gentoo #580936).</li> 3581 3582 <li>update keysym2ucs.c based on Unicode 9.0</li> 3583 3584 <li>fixed most <code>cppcheck --enable=all</code> warnings, 3585 including for style (prompted by report by David Binderman). 3586 There was one bug-fix: 3587 <ul> 3588 <li>RGB least-squares computation in 3589 <code>allocateClosestRGB</code> used only one ordinate</li> 3590 </ul> 3591 </li> 3592 3593 <li>add <code>cppcheck</code> to lint-like programs in 3594 configure script and makefile.</li> 3595 3596 <li>fix some const correctness issues and point out an array 3597 lifetime issue (Ross Combs).</li> 3598 3599 <li>updates for SIXEL and ReGIS (Ross Combs): 3600 <ul> 3601 <li>Sixel drawing should still happen after an error if 3602 some commands have been processed</li> 3603 3604 <li>Tiny steps toward reporting ReGIS input</li> 3605 </ul> 3606 </li> 3607 </ul> 3608 3609 <h1><a name="xterm_324" id="xterm_324">Patch #324 - 3610 2016/03/10</a></h1> 3611 3612 <ul> 3613 <li>updated configure macro <code>CF_LD_RPATH_OPT</code> from 3614 ncurses changes.</li> 3615 3616 <li>provide alternate fix for Juha Nurmela's report by turning 3617 on POSIX signals if <code>_POSIX_C_SOURCE</code> is at least 3618 one. This is done to improve the behavior if a direct child 3619 process receives a <code>STOP</code> signal.</li> 3620 3621 <li>revert change to <code>CF_POSIX_C_SOURCE</code> from 3622 <a href="#xterm_323">patch #323</a> (reports by Ashish Shukla, 3623 Christian Weisgerber).</li> 3624 </ul> 3625 3626 <h1><a name="xterm_323" id="xterm_323">Patch #323 - 3627 2016/03/07</a></h1> 3628 3629 <ul> 3630 <li>updated appdata and desktop files to add keywords (report 3631 by Richard Hughes).</li> 3632 3633 <li>modify configure macro <code>CF_POSIX_C_SOURCE</code> to 3634 accommodate some systems, e.g., FreeBSD, which have separated 3635 their implementation specific preprocessor symbols from the 3636 POSIX ones, requiring both to be defined (report by Juha 3637 Nurmela).</li> 3638 3639 <li>change the directory to the current working dir of the 3640 child process in exec-formatted and exec-selectable actions 3641 (patch by Alexander Pohoyda).</li> 3642 3643 <li>correct typo in xterm.man (patch by Larry Hynes).</li> 3644 3645 <li>correct typo in ctlseqs.ms (report by Shriramana 3646 Sharma).</li> 3647 3648 <li>add feature to support XHTML and SVG screen dumps (patch by 3649 Jens Schweikhardt).</li> 3650 3651 <li>correct response to DECRQSS when terminal id is less than 3652 400 (patch by Iwamoto Kouichi).</li> 3653 </ul> 3654 3655 <h1><a name="xterm_322" id="xterm_322">Patch #322 - 3656 2016/01/02</a></h1> 3657 3658 <ul> 3659 <li>fix regression due to incorrect fix for compiler warning 3660 when allocating storage for <code>/etc/shells</code> (reports 3661 by Ashish Shukla, Debian #809646).</li> 3662 </ul> 3663 3664 <h1><a name="xterm_321" id="xterm_321">Patch #321 - 3665 2015/12/31</a></h1> 3666 3667 <ul> 3668 <li>add resource <code>keepClipboard</code>, escape sequence 3669 and action <code>keep-clipboard</code>.</li> 3670 3671 <li>add optional feature to capture text copied to clipboard at 3672 the time of copying rather than at the time the clipboard 3673 contents are requested for pasting (patch by Milan 3674 Mehner).</li> 3675 3676 <li>improve a special case where the <code>-e</code> option was 3677 used to pass a single-quoted command via <code>luit</code>, by 3678 wrapping it in a “sh -c” (report by Keith 3679 Hedger).</li> 3680 3681 <li>minor fix for type-cleanliness when allocating storage for 3682 <code>/etc/shells</code> (Tobias Stoeckmann).</li> 3683 3684 <li>fix a typo in manual page (Dan Church).</li> 3685 3686 <li>fix minor file-descriptor leak; after calling 3687 <code>openpty</code>, the slave's file descriptor is not needed 3688 (report by Juha Nurmela).</li> 3689 3690 <li>editorial change to ctlseqs.ms (report by David 3691 Gomboc).</li> 3692 3693 <li>minor updates for autoconf macros.</li> 3694 3695 <li>update config.guess, config.sub</li> 3696 </ul> 3697 3698 <h1><a name="xterm_320" id="xterm_320">Patch #320 - 3699 2015/08/28</a></h1> 3700 3701 <ul> 3702 <li>correct documentation for <code>%t</code> format (report by 3703 Martin Tournoij).</li> 3704 3705 <li>add <code>%R</code> for consistency to 3706 <code>exec-formatted()</code> and 3707 <code>insert-formatted()</code> actions.</li> 3708 3709 <li>add <code>%r</code> format to <code>exec-formatted()</code> 3710 and <code>insert-formatted()</code> actions (patch by Martin 3711 Tournoij).</li> 3712 3713 <li>Amend fix for Debian #794201 (report forwarded from 3714 Christian Jachmann by Emanuel Haupt, Debian #797008).</li> 3715 </ul> 3716 3717 <h1><a name="xterm_319" id="xterm_319">Patch #319 - 3718 2015/08/19</a></h1> 3719 3720 <ul> 3721 <li>add a section to <code>ctlseqs.ms</code> discussing control 3722 sequences and ECMA-48, to explain why C1 controls do not occur 3723 in the decoded characters from UTF-8 byte streams (prompted by 3724 discussion with Poul-Henning Kamp).</li> 3725 3726 <li>modify check for cursor-theme from <a href= 3727 "#xterm_301">patch #301</a> to also check if the resource 3728 <code>Xcursor.theme</code> is set to a nonempty value before 3729 fallback to xterm's own dummy theme (request by Robert 3730 Kloefkorn).</li> 3731 3732 <li>explain in <code>ctlseqs.ms</code> that some keys which 3733 normally send SS3-prefixes are changed to CSI-prefixes if 3734 key-modifiers are passed as parameters (report by George 3735 Nachman).</li> 3736 3737 <li>correct double-free of font information when multiple 3738 problems are found, particularly for the wide fonts loaded via 3739 the <code>-wc</code> option (report/testcase by Nelson 3740 Beebe).</li> 3741 3742 <li>make configure option <code>--enable-builtin-xpms</code> 3743 actually work (report by William Bulley).</li> 3744 3745 <li>correct combination of <code>-ls</code> and <code>-e</code> 3746 options for utempter configuration (Debian #794201).</li> 3747 3748 <li>NetBSD build-fix for OPT_RENDERFONT versus OPT_SHIFT_FONTS 3749 (patch by Matthew Green, forwarded by Thomas Klausner).</li> 3750 3751 <li>fix a few minor bugs found with Coverity.</li> 3752 3753 <li>update pixelvector handling (Ross Combs): 3754 <ul> 3755 <li>split pixel-based and coord-based functions with common 3756 parts factored out to a "raw" function</li> 3757 3758 <li>add a "step" variant which loads a single PV digit</li> 3759 </ul> 3760 </li> 3761 3762 <li>make the graphic dirty upon resize or clear, fixing some 3763 missing refreshes (patch by Ross Combs)</li> 3764 3765 <li>fixes scrolling to use user coordinates and move in the 3766 correct direction (patch by Ross Combs)</li> 3767 3768 <li>several fixes/improvements for ReGIS whitespace and 3769 page-handling (patch by Ross Combs).</li> 3770 </ul> 3771 3772 <h1><a name="xterm_318" id="xterm_318">Patch #318 - 3773 2015/04/12</a></h1> 3774 3775 <ul> 3776 <li>rename new(er) configure option 3777 <code>--enable-initial-erase</code> to 3778 <code>--enable-pty-erase</code>, since that conflicted with an 3779 existing option (report by Jens Schweikhardt).</li> 3780 3781 <li>fix cut/paste error in <code>--with-builtin-xpms</code> 3782 configure option (reports by Jens Schweikhardt, Ross 3783 Combs).</li> 3784 3785 <li>fix minor formatting issue in xterm manual (report by Jens 3786 Schweikhardt).</li> 3787 3788 <li>eliminate unnecessary "#(vi" markers in autoconf macros by 3789 using "(" to begin case-statement cases (suggested by Jens 3790 Schweikhardt).</li> 3791 3792 <li>minor fixes to improve <code>const</code> usage (Ross 3793 Combs).</li> 3794 </ul> 3795 3796 <h1><a name="xterm_317" id="xterm_317">Patch #317 - 3797 2015/03/27</a></h1> 3798 3799 <ul> 3800 <li>adapt example for <code>exec-formatted</code> from <a href= 3801 "http://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html"> 3802 Lukáš Zapletal's</a> webpage to manual (Debian 3803 #780008).</li> 3804 3805 <li>add a short usage section to the xterm manual, including 3806 notes on setting the window title (Debian #742477).</li> 3807 3808 <li>revise a change made to <code>ICH</code> in <a href= 3809 "#xterm_314">patch #314</a> to address limit-checks 3810 (reports/testcases by Zoltán Kéri and Joe 3811 Peterson, also reported by Christian Weisgerber).</li> 3812 </ul> 3813 3814 <h1><a name="xterm_316" id="xterm_316">Patch #316 - 3815 2015/03/07</a></h1> 3816 3817 <ul> 3818 <li>revert change to make <code>DCH</code> honor top/bottom 3819 scrolling margins. For the record, both the VT420 and VT520 3820 reference manuals incorrectly state that <em>"DCH has no effect 3821 outside the scrolling margins."</em></li> 3822 3823 <li>fix regression in <code>DCH</code> introduced in adjustment 3824 for limit-check in <a href="#xterm_314">patch #315</a> 3825 (report/testcase by Zoltán Kéri, also reported by 3826 Christian Weisgerber).</li> 3827 3828 <li>correct default value for configure option 3829 <code>--enable-initial-erase</code>; it should be "False", but 3830 in <a href="#xterm_315">patch #315</a> it was "Maybe", which 3831 differed from default set in <a href="#xterm_192">patch 3832 #192</a>.</li> 3833 </ul> 3834 3835 <h1><a name="xterm_315" id="xterm_315">Patch #315 - 3836 2015/03/02</a></h1> 3837 3838 <ul> 3839 <li>change default for <code>--enable-narrowproto</code> for 3840 Cygwin to "no" to better match contemporary configurations 3841 (report by Jens Schweikhardt, prompted by <a href= 3842 "http://stackoverflow.com/questions/28137618/what-is-a-narrow-prototype-and-why-would-i-need-one/28334574?noredirect=1#comment45022128_28334574"> 3843 discussion</a>).</li> 3844 3845 <li>provide <code>OSC 106</code> as an alternative to 3846 <code>OSC 6</code>, avoiding conflict with one of 3847 Terminal.app's undocumented escape sequences (report by Egmont 3848 Koblinger).</li> 3849 3850 <li>fix an off-by-one in comparison when autowrap and 3851 left/right margins are combined (report by George 3852 Nachman).</li> 3853 3854 <li>modify <code>DECBI</code> and <code>DECFI</code> to work 3855 outside the left/right margins, since the vague VT520 reference 3856 manual could support that interpretation (suggested by George 3857 Nachman).</li> 3858 3859 <li>correct response for <code>DECSCUSR</code> in 3860 <code>DECRQSS</code> (report/analysis by George Nachman).</li> 3861 3862 <li>add <code>DECSLRM</code> to list for <code>DECRQSS</code> 3863 in ctlseqs.ms (report by George Nachman).</li> 3864 3865 <li>improve limit-checks versus assert's in the debugging 3866 version (reports by George Nachman).</li> 3867 3868 <li>correct a problem with multiple writes to the right-margin 3869 when autowrap is turned off (report by George Nachman, also 3870 reported in Gnome #744819 by Ulf Magnusson).</li> 3871 3872 <li>modify <code>DCH</code> to honor top/bottom and left/right 3873 margins (report by George Nachman).</li> 3874 3875 <li>correct off-by-one in comparison so that <code>DL</code> 3876 honors left/right margins (report by George Nachman).</li> 3877 3878 <li>correct logic of <code>DECSCL</code>, which always set 3879 8-bit controls as a side-effect (report by George 3880 Nachman).</li> 3881 3882 <li>correct loop limit for <code>DECSED 1</code>, when 3883 <code>DECSCA</code> is enabled (report by George Nachman).</li> 3884 3885 <li>fix a entry in csi_table for “<code>$</code>”, 3886 needed for <code><em>CSI</em> [ $ z</code> 3887 (report by George Nachman).</li> 3888 3889 <li>remove restriction from <a href="#xterm_279">patch #279</a> 3890 changes on <code>DECIC</code> and <code>DECDC</code> to 3891 left-right mode (report by George Nachman).</li> 3892 3893 <li>correct PID value returned in response to DECRQCRA 3894 (report/analysis by George Nachman).</li> 3895 3896 <li>fix an ifdef'ing problem, where 3897 <code>--disable-dec-locator</code> would turn off logic needed 3898 for <code>DECIC</code> and <code>DECDC</code> (report by George 3899 Nachman).</li> 3900 3901 <li>correct order of parameters in report for 3902 <code><em>CSI</em> 1 9 t</code>, which gives the 3903 screensize in characters (report by George Nachman).</li> 3904 3905 <li>add null pointer checks for a case in DECCRA where part of 3906 the target rectangle lies outside the screen limits (report by 3907 George Nachman).</li> 3908 3909 <li>remove extra "6" for selective erase from DA1 response 3910 (report by George Nachman).</li> 3911 3912 <li>support Xinerama screen specification in geometry parsing 3913 (patch by Nicolas George).</li> 3914 3915 <li>add configure option <code>--enable-initial-erase</code> to 3916 set <code>ptyInitialErase</code> consistently with manpage, as 3917 well as adding a table in manpage to clarify the relationship 3918 between the resources related to the backarrow key (Debian 3919 #775952).</li> 3920 3921 <li>add configure <code>--enable-builtin-xpms</code> to 3922 simplify compiling-in the icons introduced in <a href= 3923 "#xterm_284">patch #284</a> (prompted by discussion with 3924 William Bulley).</li> 3925 3926 <li>fix/improve autoconf macros: 3927 <ul> 3928 <li>CF_WITH_APP_DEFAULTS, add paths for OSX</li> 3929 3930 <li>CF_WITH_MAN2HTML, configure option "--with-man2html" 3931 provides "man2html" as alternative to groff's man/html 3932 conversion</li> 3933 </ul> 3934 </li> 3935 3936 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 3937 </ul> 3938 3939 <h1><a name="xterm_314" id="xterm_314">Patch #314 - 3940 2014/12/28</a></h1> 3941 3942 <ul> 3943 <li>fix a minor bug in the termcap-specific version of 3944 <code>resize</code> when the lines or columns values are at the 3945 very end of an incomplete termcap string (prompted by coverity 3946 report).</li> 3947 3948 <li>improve paste64 feature (report by Olaf Rogalsky) 3949 <ul> 3950 <li>fix “<code>p</code>;” command in 3951 <code>paste64.pl</code> example.</li> 3952 3953 <li>modify <code>_OwnSelection</code> to allow the paste64 3954 control to cause primary/clipboard selections to be 3955 disowned and cleared.</li> 3956 3957 <li>omit an extra "=" used in padding, to make the base64 3958 response a multiple of four characters.</li> 3959 3960 <li>modify <code>_ConvertSelectionHelper</code> to not stop 3961 converting on embedded nulls in the primary or clipboard 3962 selection. That makes the behavior consistent with 3963 cut-buffers. Nulls are not passed on to the application 3964 because they are used for separators in the X library calls 3965 that convert <code>XTextProperty</code> values.</li> 3966 </ul> 3967 </li> 3968 3969 <li>add configure option <code>--with-man2html</code> to allow 3970 an alternative to groff's man/html conversion.</li> 3971 3972 <li>review and modify resource-settings which can be set via 3973 control sequences, etc: 3974 <ul> 3975 <li>add <code>OSC 6</code>, to enable/disable colors 3976 set via <code>OSC 5</code>, without changing the color 3977 assignments (prompted by patch by Ingo Brückl).</li> 3978 3979 <li>add command-line option <code>-itc</code> for 3980 italics.</li> 3981 3982 <li>add <code>colorIT</code> and <code>colorITMode</code> 3983 for italics, like <code>colorBD</code>, etc.</li> 3984 3985 <li>guard <code>allowPasteControls</code> against 3986 modification by <code>editres</code>.</li> 3987 </ul> 3988 </li> 3989 3990 <li>change <code>passedPty</code> from fixed-length to 3991 allocated to ensure that it is long enough to hold the 3992 <code>-S</code> option value (report by Ben Longbons).</li> 3993 3994 <li>improve ReGIS graphics initialization (Ross Combs): 3995 <ul> 3996 <li>add a new string resource to set the default ReGIS 3997 font.</li> 3998 3999 <li>fix a caching problem where the font name wasn't taken 4000 into consideration when looking up cached metrics.</li> 4001 4002 <li>enables use of fractional values in coordinates (which 4003 in turn allows setting the coordinates to something like 4004 [0,1][1,0])</li> 4005 4006 <li>doubles the minimum ReGIS graphic to 200x200</li> 4007 4008 <li>set the default ReGIS image size to "auto"</li> 4009 4010 <li>fix some swapped width/height parameters in TRACE 4011 messages</li> 4012 4013 <li>add support for scaling and mirrored coordinate systems 4014 to the screen address command</li> 4015 4016 <li>sets a minimum ReGIS graphics size of 100x100 -- 4017 smaller address ranges will be scaled up</li> 4018 4019 <li>reset the image if either the width or height is zero 4020 (which should happen together or not at all, but switching 4021 the logic gets rid of some parentheses)</li> 4022 4023 <li>adds support for alternate screen coordinates (just 4024 offsets, not inverted coordinates or scaling)</li> 4025 4026 <li>keeps the graphics state across ReGIS calls unless P1 4027 or P3 entry codes are used</li> 4028 4029 <li>changes loops to continue after parsing whitespace to 4030 allow trailing whitespace</li> 4031 4032 <li>fixes some incorrect character casts</li> 4033 </ul> 4034 </li> 4035 </ul> 4036 4037 <h1><a name="xterm_313" id="xterm_313">Patch #313 - 4038 2014/11/28</a></h1> 4039 4040 <ul> 4041 <li>add <code>regisScreenSize</code> resource setting to allow 4042 custom screensizes for ReGIS graphics (prompted by discussion 4043 with Scott Froebe).</li> 4044 4045 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 4046 4047 <li>improve ReGIS font-handling (Ross Combs): 4048 <ul> 4049 <li>remove "random junk" generation for unknown 4050 characters</li> 4051 4052 <li>add xterm extension to load user glyphs for alphabet 4053 0</li> 4054 4055 <li>add xterm extension to specify loading an alphabet from 4056 a font by name</li> 4057 4058 <li>fix bug with use of empty alphabet slots which caused 4059 slot 0 to be clobbered</li> 4060 4061 <li>update/clarify ReGIS-related comments</li> 4062 4063 <li>add DECprint extension for printing/clearing the screen 4064 (only clearing is performed)</li> 4065 </ul> 4066 </li> 4067 4068 <li>improve ReGIS colorspec conversion (Ross Combs): 4069 <ul> 4070 <li>avoid some floating point math for colorspace 4071 conversion</li> 4072 4073 <li>move two copies of colorspec parsing to a single 4074 function</li> 4075 4076 <li>change colorspec parsing to handle components being out 4077 of order or with spaces and commas between them</li> 4078 4079 <li>add support for an extension where RGB components can 4080 be given instead of HLS</li> 4081 </ul> 4082 </li> 4083 4084 <li>improve use of const, e.g., for the <code>LineData</code> 4085 pointers (patch by Ross Combs).</li> 4086 4087 <li>clip of graphics that overlap the scrollback buffer and alt 4088 screen (patch by Ross Combs).</li> 4089 4090 <li>amend change to focus-change events in <a href= 4091 "#xterm_287">patch #287</a> to limit it to suppressing the 4092 reset of the urgency-hint, because some useful 4093 <code>FocusOut</code> events were lost (report by Joe 4094 Peterson).</li> 4095 4096 <li>modify dpkg build-script to configure xterm-dev as an 4097 <code>x-terminal-emulator</code> alternative.</li> 4098 4099 <li>extend the <code>--with-xterm-symlink</code> feature to 4100 make symbolic links for the other programs and scripts.</li> 4101 4102 <li>minor fix to <code>vttests/resize.pl</code> to avoid 4103 undefined variable when receiving broken/missing response, 4104 e.g., from mrxvt.</li> 4105 4106 <li>change the way that ReGIS graphics are refreshed (patch by 4107 Ross Combs): 4108 <ul> 4109 <li>it pre-composes any overlapping graphics to avoid 4110 unnecessary and flickering draws</li> 4111 4112 <li>it adds a three-dimensional lookup table for RGB -> 4113 pixel values and uses this across all graphics</li> 4114 4115 <li>it draws in line segments when there is a run of the 4116 same color</li> 4117 4118 <li>in cases where there are no transparent parts, it uses 4119 an XImage to draw</li> 4120 4121 <li>it hooks into the double-buffering support if it is 4122 enabled (though this doesn't seem to get rid of all 4123 flicker).</li> 4124 </ul> 4125 This has the effect of reducing flicker and speeding up 4126 redraws. 4127 </li> 4128 </ul> 4129 4130 <h1><a name="xterm_312" id="xterm_312">Patch #312 - 4131 2014/09/28</a></h1> 4132 4133 <ul> 4134 <li>undo change to <code>do_select_regex()</code> in <a href= 4135 "#xterm_311">patch #311</a> (reports by H Merijn Brand, 4136 Sven-Haegar Koch, Debian #762978).</li> 4137 </ul> 4138 4139 <h1><a name="xterm_311" id="xterm_311">Patch #311 - 4140 2014/09/18</a></h1> 4141 4142 <ul> 4143 <li>mention <code>xclip</code> in manpage as an alternative 4144 workaround for copying clipboard data, noting that 4145 <code>selectToClipboard</code> (see <a href="#xterm_209">patch 4146 #209</a>) is the recommended approach (Debian #639094).</li> 4147 4148 <li>correct comparison in do_select_regex() of working position 4149 against starting column.</li> 4150 4151 <li>correct initialization for regular-expression feature of 4152 <code>exec-selectable</code> and <code>insert-selectable</code> 4153 actions (Debian #758633).</li> 4154 4155 <li>modify logic for <code>exec-formatted</code> and 4156 <code>insert-formatted</code> actions to ensure that the 4157 formatting occurs just after the selection is received (Debian 4158 #758633).</li> 4159 4160 <li>account for state of reverse-video in special case of 4161 cursor coloring (Debian #759734).</li> 4162 4163 <li>fix a sign-extension problem in ReGIS support, as well as 4164 correcting a case where ignored-characters were not really 4165 ignored (patch by Ross Combs).</li> 4166 4167 <li>Enable the "Escape Sequence" menu entry when an OSC 50 4168 is received. Also disable it if the escape sequence specifies 4169 no font (Debian #760208).</li> 4170 4171 <li>improve fix for the <code>fontsel</code> menu entry from 4172 <a href="#xterm_304">patch #304</a>: because the recovery used 4173 the "current font", it would fail if one first selected a valid 4174 font, then an invalid font (Debian #760207).</li> 4175 4176 <li>correct an off-by-one in limit-check for 4177 <code>ScrnLimitChar</code> function (report by Egmont 4178 Koblinger).</li> 4179 </ul> 4180 4181 <h1><a name="xterm_310" id="xterm_310">Patch #310 - 4182 2014/07/25</a></h1> 4183 4184 <ul> 4185 <li>update package/freebsd files based on xterm #309 port.</li> 4186 4187 <li>adapt changes from Minux3.2 which ported <a href= 4188 "#xterm_197">xterm #197</a>, to allow building on that platform 4189 both using <code>imake</code> as well as using the configure 4190 script.</li> 4191 4192 <li>update precompose.c based on Unicode 7.0</li> 4193 4194 <li>build-fix for <code>--with-Xaw3dxft</code> option (report 4195 by Emanuel Haupt).</li> 4196 </ul> 4197 4198 <h1><a name="xterm_309" id="xterm_309">Patch #309 - 4199 2014/07/13</a></h1> 4200 4201 <ul> 4202 <li>modify configure script to work around debris left by 4203 XQuartz upgrades.</li> 4204 4205 <li>modify test-package scripts to enable ReGIS graphics.</li> 4206 4207 <li>improvements/additions to ReGIS graphics, e.g., drawing 4208 text (Ross Combs).</li> 4209 4210 <li>add <code>--with-Xaw3dxft</code>, to link with Xaw 3d xft 4211 library (Stephen P Wall).</li> 4212 4213 <li>amend reset for cursor-shape to take into account 4214 <code>cursorUnderline</code> resource (report by Christian 4215 Weisgerber).</li> 4216 4217 <li>update config.guess, config.sub</li> 4218 </ul> 4219 4220 <h1><a name="xterm_308" id="xterm_308">Patch #308 - 4221 2014/06/19</a></h1> 4222 4223 <ul> 4224 <li>corrected font used for clipping double-width bitmap fonts 4225 from <a href="#xterm_307">patch #307</a> changes to work around 4226 mis-scaled fonts (Debian #752947).</li> 4227 4228 <li>improve wording of a warning message.</li> 4229 </ul> 4230 4231 <h1><a name="xterm_307" id="xterm_307">Patch #307 - 4232 2014/06/17</a></h1> 4233 4234 <ul> 4235 <li>fill background for top/bottom parts of 4236 double-width/double-height characters, to cover occasional gaps 4237 due to bitmap font-scaling (report by Egmont Koblinger).</li> 4238 4239 <li>amend resets for keyboard-type, pointer-mode and 4240 title-modes from <a href="#xterm_305">xterm #305</a> changes to 4241 account for resource settings (Debian #751351).</li> 4242 4243 <li>modify <em>printAttributes</em> feature to include new SGR 4244 codes.</li> 4245 4246 <li>modify cursor show/hide logic to work with italic 4247 fonts.</li> 4248 4249 <li>do clipping and filling for a case with bitmap-fonts and 4250 italics when the font server returns only a "close" match 4251 (report/testcase by Egmont Koblinger).</li> 4252 4253 <li>adjust loop comparison for underlining to display 4254 underlines on 5x8 font as in <a href="#xterm_304">patch 4255 #304</a> (Debian #750733).</li> 4256 4257 <li>amend fix for Freedesktop #15979 (Debian #750733).</li> 4258 4259 <li>amend xterm.appdata.xml, making it validate with current 4260 schema.</li> 4261 </ul> 4262 4263 <h1><a name="xterm_306" id="xterm_306">Patch #306 - 4264 2014/06/03</a></h1> 4265 4266 <ul> 4267 <li>fixes for display-errors in new SGR codes (report by Egmont 4268 Koblinger).</li> 4269 </ul> 4270 4271 <h1><a name="xterm_305" id="xterm_305">Patch #305 - 4272 2014/06/02</a></h1> 4273 4274 <ul> 4275 <li>add <code>xterm.appdata.xml</code> (request by Richard 4276 Hughes). By the way, none of the <em>released</em> validators 4277 yet handle <code><licence></code> tags (or 4278 <code><metadata_license></code>, etc).</li> 4279 4280 <li>fix memory leaks in bitmap font-name caching.</li> 4281 4282 <li>other changes to hard-reset behavior: 4283 <ul> 4284 <li>reset keyboard-type on hard-reset.</li> 4285 4286 <li>reset pointer-mode (<code>pointerMode</code>) on 4287 hard-reset</li> 4288 4289 <li>reset title-modes (<code>titleModes</code>) on 4290 hard-reset</li> 4291 4292 <li>reset cursor-shape on hard or soft-reset</li> 4293 4294 <li>reset LEDs on hard-reset.</li> 4295 4296 <li>reset DECSACE on hard-reset.</li> 4297 </ul> 4298 </li> 4299 4300 <li>reset bracketed-paste mode on hard-reset (suggested by 4301 Egmont Koblinger).</li> 4302 4303 <li>modify UTF-8 decoder to account for 4304 <code>allowC1Printable</code> resource.</li> 4305 4306 <li>revise <code>getXftColor</code> to ensure that its sequence 4307 number will not overflow in long-running sessions.</li> 4308 4309 <li>minor fix to selection to prevent hidden character from 4310 being returned in selection data (report by Egmont 4311 Koblinger).</li> 4312 4313 <li>add <code>-sh</code> to help-message.</li> 4314 4315 <li>amend check for incomplete fonts to always decide that a 4316 character is missing if the font lacks per-character metrics 4317 (prompted by Freedesktop #15979).</li> 4318 4319 <li>minor reorganization to implement “filler” SGR 4320 features. There are no established applications which rely upon 4321 these; some people find them amusing. 4322 <ul> 4323 <li>separate bits used to manage drawing state from 4324 attribute-bits.</li> 4325 4326 <li>implement SGR codes 2, 3, 9, 21 and their corresponding 4327 resets.</li> 4328 4329 <li>add configure option <code>--disable-wide-attrs</code> 4330 to disable the feature.</li> 4331 </ul> 4332 </li> 4333 4334 <li>additional changes for ReGIS support (Ross Combs): 4335 <ul> 4336 <li>fix some arc drawing bugs and add support for pattern 4337 shading.</li> 4338 </ul> 4339 </li> 4340 </ul> 4341 4342 <h1><a name="xterm_304" id="xterm_304">Patch #304 - 4343 2014/05/03</a></h1> 4344 4345 <ul> 4346 <li>add debugging check for parsing table entries, fixed a few 4347 inconsistencies.</li> 4348 4349 <li>handle utmp/utmpx strings consistently with new function 4350 that null-pads unused locations.</li> 4351 4352 <li>build-fix for imake configuration with FreeBSD 9 and later, 4353 to account for replacing <code>utmp</code> with 4354 <code>utmpx</code>.</li> 4355 4356 <li>improve handling of the <code>fontsel</code> 4357 (font-selection) menu item: 4358 <ul> 4359 <li>initialize the menu entry differently if the toolbar 4360 configuration is used, i.e., enabling it without attempting 4361 to use the current selection as a font name. Because of the 4362 way in which the toolbar is setup, this attempt usually 4363 failed, and would result in a warning.</li> 4364 4365 <li>if the menu action fails, e.g., no font can be loaded 4366 for the given selected name, then recover by resuming with 4367 the current font. Before, the recovery went to the default 4368 font. That was done to work around missing bitmap font in 4369 <a href="#xterm_276">patch #276</a>.</li> 4370 </ul> 4371 </li> 4372 4373 <li>document OSC 119 in the control sequences listing 4374 (report by Egmont Koblinger).</li> 4375 4376 <li>modify special handling of <code>XF86Paste</code> or 4377 <code>SunPaste</code> keysyms (see <a href="#xterm_227">patch 4378 #227</a>) to use the standard shift/lock modifiers in case 4379 those are, for example, used in level 3 in an XKB file (patch 4380 by Matthieu Herrb).</li> 4381 4382 <li>configure macro updates: 4383 <ul> 4384 <li>drop the <code>-no-gcc</code> option from 4385 CF_INTEL_COMPILER</li> 4386 4387 <li>modify CF_XOPEN_SOURCE to suppress the check for 4388 defining _XOPEN_SOURCE on Solaris</li> 4389 </ul> 4390 </li> 4391 4392 <li>reduce bss storage used for ReGIS/Sixel modules, as well as 4393 cleanup storage usage in other modules.</li> 4394 4395 <li>initial changes for ReGIS support (Ross Combs): 4396 <ul> 4397 <li>document control-sequences</li> 4398 4399 <li>separate ifdef's for sixel and color-register 4400 features</li> 4401 4402 <li>add configuration for VT382</li> 4403 </ul> 4404 </li> 4405 </ul> 4406 4407 <h1><a name="xterm_303" id="xterm_303">Patch #303 - 4408 2014/03/06</a></h1> 4409 4410 <ul> 4411 <li>improve check for <code>/etc/shells</code> to allow its 4412 entries to be symbolic links.</li> 4413 4414 <li>fix a regression in <a href="#xterm_302">patch #302</a> 4415 fixes relating to interaction of <code>SHELL</code> and 4416 <code>XTERM_SHELL</code> variables (Debian #740919).</li> 4417 4418 <li>improve manpage discussion of use of 4419 <code>/etc/shells</code> for validating the <code>SHELL</code> 4420 environment variable.</li> 4421 4422 <li>further improve the approximation for color map by ignoring 4423 bits which would not be applied by the rgb masks for the 4424 current visual (report by Joe Peterson).</li> 4425 4426 <li>add <code>-report-colors</code> to usage-message (report by 4427 Joe Peterson).</li> 4428 </ul> 4429 4430 <h1><a name="xterm_302" id="xterm_302">Patch #302 - 4431 2014/03/02</a></h1> 4432 4433 <ul> 4434 <li>amend approximation for color map introduced in <a href= 4435 "#xterm_277">patch #277</a> to make that apply only to 4436 <code>TrueColor</code> (adapted from patch by Joe 4437 Peterson).</li> 4438 4439 <li>add <code>-report-colors</code> option, to show colors as 4440 they are allocated.</li> 4441 4442 <li>fix some gcc <code>-Wcast-qual</code> warnings.</li> 4443 4444 <li>correct app-defaults location for CentOS-4 in 4445 xterm.spec</li> 4446 4447 <li>improve check in <code>minstall.sh</code> for X manpage's 4448 section number; add sample dependencies for the relevant 4449 documentation package to packaging test-scripts (prompted by 4450 Novell #779474).</li> 4451 4452 <li>modify sample build-scripts for dpkg and rpm to ensure that 4453 <code>vttests</code> scripts are uncompressed and 4454 executable.</li> 4455 4456 <li>modify Perl scripts in <code>vttests</code> to use 4457 <code>env</code> to find Perl rather than relying on 4458 <code>/usr/bin/perl</code> This makes the sample scripts usable 4459 with NetBSD and other systems using <em>pkgsrc</em>.</li> 4460 4461 <li>amend check from <a href="#xterm_301">patch #301</a> for 4462 valid shell to permit existing <code>SHELL</code> value to 4463 specify the shell; clarify the behavior in the manpage (report 4464 by Emmanuel Thomé).</li> 4465 4466 <li>amend change to wide-character processing from <a href= 4467 "#xterm_257">patch #257</a> to allow switching to/from UTF-8 4468 encoding if the <code>utf8</code> resource was not set to 4469 “always” (report by Honza Maly).</li> 4470 4471 <li>fix incorrect free from <a href="#xterm_301">patch #301</a> 4472 changes, if explicit program without <code>-e</code> option is 4473 a valid shell (patch by Romain Francoise).</li> 4474 </ul> 4475 4476 <h1><a name="xterm_301" id="xterm_301">Patch #301 - 4477 2014/01/19</a></h1> 4478 4479 <ul> 4480 <li>OSC 104 and 105 did not accept parameter to reset a 4481 specific color (patch by Egmont Koblinger).</li> 4482 4483 <li>add configure check for <code>initgroups</code>, and use 4484 that function to complement its use of <code>setgid</code> 4485 (prompted by patch by Miroslav Lichvar).</li> 4486 4487 <li>improve manpage description of scrollbar translations 4488 versus the vt100 translations (Debian #723573).</li> 4489 4490 <li>add a few paragraphs to manpage explaining the implications 4491 of xterm's reliance on X Toolkit for command-line parsing.</li> 4492 4493 <li>modify cursor-theme logic to check if the environment 4494 variable <code>XCURSOR_THEME</code> is set to a nonempty value 4495 before constructing a dummy them (prompted by similar check 4496 added in OpenBSD CVS).</li> 4497 4498 <li>add check for a case where TrueType bold font is missing a 4499 glyph where the non-bold font has it. Temporarily switch to the 4500 non-bold font to draw the glyph (report by David 4501 Demelier).</li> 4502 4503 <li>minor documentation fixes for ctlseqs.ms</li> 4504 4505 <li>only set <code>SHELL</code> environment variable to 4506 programs found in <code>/etc/shells</code> (prompted by 4507 patch/report by Al Poole).</li> 4508 4509 <li>build-fix, when <code>--disable-wide-chars</code> 4510 <code>--disable-boxchar</code> is used (prompted by patch by 4511 Andrey Panov).</li> 4512 </ul> 4513 4514 <h1><a name="xterm_300" id="xterm_300">Patch #300 - 4515 2013/12/03</a></h1> 4516 4517 <ul> 4518 <li>amend workaround for <code>Xcursor</code> library from 4519 <a href="#xterm_298">patch #298</a>; the suggested solution for 4520 Debian #466704 fell afoul of a bug in <code>Xcursor</code> 4521 which treated an empty value for <code>Inherits=</code> as a 4522 valid theme—and resulted in a stack overflow due to 4523 unbounded recursion. Certain environments such as XFCE4 exposed 4524 the bug. A related report in Debian #531679 was closed without 4525 following the recommendation to limit stack recursion in this 4526 library (reported by Sergey V Dyatko, Debian #731269).</li> 4527 </ul> 4528 4529 <h1><a name="xterm_299" id="xterm_299">Patch #299 - 4530 2013/12/01</a></h1> 4531 4532 <ul> 4533 <li>fix regression in line-drawing from <a href= 4534 "#xterm_297">patch #297</a> changes for NRCS exposed by change 4535 to <code>assumeAllChars</code> resource in <a href= 4536 "#xterm_298">patch #298</a> (report by Markus Waldeck).</li> 4537 </ul> 4538 4539 <h1><a name="xterm_298" id="xterm_298">Patch #298 - 4540 2013/11/27</a></h1> 4541 4542 <ul> 4543 <li>quiet a warning about ambiguity when <code>-h</code> 4544 command-line option is parsed, since <code>-help</code> is used 4545 rather than the options mentioned in the message. This warning 4546 was caused by fixes in <a href="#xterm_272">patch 4547 #272</a>.</li> 4548 4549 <li>remove an extra check for keypad-mode which interfered with 4550 the <a href="#xterm_280">patch #280</a> 4551 <code>modifyKeyboard</code> feature for the numeric keypad 4552 (report by David Conners).</li> 4553 4554 <li>change default for <code>assumeAllChars</code> resource 4555 (Debian #725682). There are unresolved issues with Terminus 4556 fonts, e.g., Debian #722017.</li> 4557 4558 <li>add <code>-report-fonts</code> command-line option and 4559 <code>reportFonts</code> resource to optionally report the 4560 fonts which are loaded, and their metrics such as the number of 4561 missing glyphs.</li> 4562 4563 <li>work around <code>Xcursor</code> library to make 4564 <code>pointerColor</code> resource work as documented (Debian 4565 #466704, analysis by Vincent Lefèvre).</li> 4566 4567 <li>amend change from <a href="#xterm_297">patch #297</a> for 4568 ASCII-equivalents to ensure that missing characters which 4569 happen to be double-width are padded to the expected number of 4570 columns. Also, correct the choice between normal/wide Xft fonts 4571 used when checking for missing characters (reported by WU Yue, 4572 Debian #728949, Gentoo #491334).</li> 4573 4574 <li>modify sixel-graphics drawing to account for scrollbar 4575 width (report by Mario Edelmann).</li> 4576 4577 <li>fix remaining issue with <code>DECNRCM</code>; the British 4578 character set was confused with ISO Latin-1 (report by Hayaki 4579 Saito).</li> 4580 4581 <li>build-fix for <code>--disable-boxchars</code> configure 4582 option.</li> 4583 4584 <li>updated configure macros, from ongoing work on lynx and 4585 ncurses.</li> 4586 4587 <li>update config.guess, config.sub</li> 4588 </ul> 4589 4590 <h1><a name="xterm_297" id="xterm_297">Patch #297 - 4591 2013/09/10</a></h1> 4592 4593 <ul> 4594 <li>modify check for missing cells in bitmap font to work 4595 around terminus 10646 encoding, which is mostly missing, add 4596 <code>assumeAllChars</code> resource to provide the older 4597 behavior.</li> 4598 4599 <li>modify macros used to check for missing cells in bitmap 4600 fonts to pick up a long-overlooked improvement made to xfd in 4601 XFree86.</li> 4602 4603 <li>improve workaround for groff versus ASCII-equivalents; 4604 <a href="#xterm_185">patch #185</a> had overlooked Xft 4605 configuration (reported by anonymous user on Arch Linux 4606 forum).</li> 4607 4608 <li>review/extend <code>DECNRCM</code> support (prompted by 4609 report by Hayaki Saito asking about the two "A" codes). 4610 <ul> 4611 <li>make pasting of DECNRCM data work by translating the 4612 pasted data into the selected encoding.</li> 4613 4614 <li>limit mode changes to VT220 and up.</li> 4615 4616 <li>ignore SCS for National Replacement Characters if 4617 <code>DECNRCM</code> is not set.</li> 4618 4619 <li>add tables and logic to decode SCS controls ending with 4620 "%" and one additional character. This expects the parsing 4621 of SCS to VT320.</li> 4622 4623 <li>also added parsing for SCS of DEC Supplemental and DEC 4624 Technical, which are for VT2xx and VT3xx respectively.</li> 4625 4626 <li>implement VT220 Multinational character set "GR" aka 4627 "DEC Supplemental Graphic".</li> 4628 4629 <li>DEC Technical character set based on <a href= 4630 "http://www.vt100.net/charsets/technical.html">vt100.net 4631 description</a>.</li> 4632 4633 <li>implement Portuguese NRC.</li> 4634 4635 <li>provide for temporarily switching to/from NRC mode from 4636 UTF-8 mode when <code>DECNRCM</code> is set or reset.</li> 4637 </ul> 4638 </li> 4639 4640 <li>minor fix to assert's found while testing examples from 4641 <a href="https://gist.github.com/ttdoda">ttdoda's 4642 slrm-test1.txt</a>.</li> 4643 4644 <li>modify <code>DECLRMM</code> to not update the cursor 4645 position (report by Iwamoto Kouichi forwarded by Hayaki 4646 Saito).</li> 4647 4648 <li>modify cursor-position report to take origin-mode into 4649 account (report by Hayaki Saito, see also <a href= 4650 "https://github.com/gnachman/iTerm2/pull/129">iTerm2 pull 4651 request 129</a>).</li> 4652 4653 <li>correct off-by-one comparison in when handling 4654 carriage-return at left margin (patch by Iwamoto Kouichi, 4655 forwarded by Hayaki Saito).</li> 4656 4657 <li>improve handling of <code>faceName</code> resource when a 4658 "size=" property is embedded in it, by using that size to 4659 replace the default <code>faceSize</code> resource. This lets 4660 xterm honor the other faceSize resources (report by Jens 4661 Schweikhardt).</li> 4662 4663 <li>improve OSC 52 selection-data by setting its timestamp 4664 to correspond to the most-recent event received by xterm, to 4665 ensure that calls to <code>XtOwnSelect</code> succeed even if 4666 the selection is manipulated solely through the keyboard 4667 (prompted by patch by Richard Tollerton).</li> 4668 4669 <li>change configure-script defaults for "luit" and 4670 "wide-chars" options to match the values used in the imake 4671 configuration, to lessen user surprise if they are accustomed 4672 to building xterm using imake(report by Andries E 4673 Brouwer).</li> 4674 4675 <li>improve the imake-related configuration's check if xterm is 4676 started in a locale that uses UTF-8 encoding. Before, this 4677 checked the locale settings only for "UTF-8", now it checks 4678 ignoring case for "UTF-8" and "UTF-8" (report by Andries E 4679 Brouwer).</li> 4680 </ul> 4681 4682 <h1><a name="xterm_296" id="xterm_296">Patch #296 - 4683 2013/07/10</a></h1> 4684 4685 <ul> 4686 <li>improve experimental sixel feature (Ross Combs).</li> 4687 4688 <li>modify delimiter in configure macro used to add a library 4689 after a given library to avoid confusion with <code>-Wl</code> 4690 pass-through options to linker (NetBSD #48031).</li> 4691 4692 <li>fix quoting in expression used to trim extra libraries from 4693 <a href="#xterm_295">patch #295</a> changes (report by Thomas 4694 Klausner).</li> 4695 </ul> 4696 4697 <h1><a name="xterm_295" id="xterm_295">Patch #295 - 4698 2013/07/06</a></h1> 4699 4700 <ul> 4701 <li>adjust order of libraries to work around incomplete symbol 4702 resolution when using <code>--as-needed</code> option 4703 (ArchLinux #36047).</li> 4704 4705 <li>minor fix for <code>plink.sh</code>, for IRIX64.</li> 4706 </ul> 4707 4708 <h1><a name="xterm_294" id="xterm_294">Patch #294 - 4709 2013/07/05</a></h1> 4710 4711 <ul> 4712 <li>add note in ctlseqs.ms for CPR response pointing out a 4713 potential point of confusion with the string sent by a modified 4714 F1 key (suggested by Bram Moolenaar).</li> 4715 4716 <li>improve <code>plink.sh</code> by checking if the linker 4717 supports the <code>--as-needed</code> option (suggested by 4718 David Philippi).</li> 4719 4720 <li>improve clearing for private mode 1049 when switching to 4721 the alternate screen (Debian #711758).</li> 4722 4723 <li>amend fix from <a href="#xterm_292">patch #292</a> by 4724 removing now-unneeded chunk which introduced problem in 4725 selection (Debian #714527).</li> 4726 4727 <li>add definition to optionally override compiled-in class for 4728 xterm from makefile, needed for test-packages.</li> 4729 4730 <li>add configure option 4731 <code>--enable-sixel-graphics</code></li> 4732 4733 <li>add experimental support for sixel graphics (Ross 4734 Combs).</li> 4735 </ul> 4736 4737 <h1><a name="xterm_293" id="xterm_293">Patch #293 - 4738 2013/05/27</a></h1> 4739 4740 <ul> 4741 <li>modify sample xterm.spec to use newer icon</li> 4742 4743 <li>add configure option <code>--with-icon-symlink</code> to 4744 work around systems which map icon requests for to a single 4745 "xterm" icon, but neglect to install the icon needed for window 4746 decorations (report by H Merijn Brand).</li> 4747 4748 <li>improve parameterizing of sample xterm.spec</li> 4749 4750 <li>amend fix for printer from <a href="#xterm_280">patch 4751 #280</a>, removing a reset of the signal handler for 4752 <code>SIGCHLD</code> (report by Joe Julian).</li> 4753 4754 <li>set environment variable <code>XTERM_FILTER</code> if a 4755 locale-filter is used.</li> 4756 4757 <li>enable <code>DEBUG</code> logic when 4758 <code>--enable-trace</code> configure option is given.</li> 4759 4760 <li>improve description of <code>initialFont</code>, 4761 <code>set-vt-font</code> and <code>set-tex-text</code> in 4762 manpage (Debian #707899).</li> 4763 4764 <li>fix regression from <a href="#xterm_292">patch #292</a>; 4765 selecting a word that ended at the right margin without 4766 wrapping would not select the last cell (report by Christian 4767 Weisgerber).</li> 4768 </ul> 4769 4770 <h1><a name="xterm_292" id="xterm_292">Patch #292 - 4771 2013/04/25</a></h1> 4772 4773 <ul> 4774 <li>add limit-check when double-click selects a word; if the 4775 saved-lines were scrolled back and the word selected wrapped at 4776 the screen's lower right corner, an assertion was triggered 4777 (patch by Taketo Kabe).</li> 4778 4779 <li>correct limit-check in <code>unsaveEditBufLines</code>, 4780 fixing a case where enlarging the terminal size could show a 4781 blank line where there actually is available text (patch by 4782 Bertram Felgenhauer).</li> 4783 4784 <li>add <code>PasteControls</code> feature to 4785 <code>allowWindowOps</code> which by default disallows pasting 4786 control characters other than formatting such as carriage 4787 return (discussion with Hayaki Saito).</li> 4788 4789 <li>fix typo in ctlseqs.ms for DECRQM response (patch by 4790 Emanuele Giaquinta).</li> 4791 4792 <li>update default shown in configure <code>--help</code> 4793 message for <code>--with-terminal-id</code> option (patch by 4794 Andres Perera).</li> 4795 4796 <li>rename script/preprocessor variables used for substituting 4797 the <code>backarrowKey</code> default value for consistency 4798 (patch by Andres Perera).</li> 4799 4800 <li>set umask to 077 before creating debugging-trace 4801 files.</li> 4802 4803 <li>add configure option <code>--disable-openpty</code> to 4804 control whether openpty() may be used in preference to 4805 posix_openpt().</li> 4806 4807 <li>improve workaround from <a href="#xterm_279">patch #279</a> 4808 for BSD systems which do not complete initialization until both 4809 sides of the pseudoterminal are opened, by preferring openpty() 4810 function over posix_openpt() when available (report by 4811 Christian Weisgerber).</li> 4812 </ul> 4813 4814 <h1><a name="xterm_291" id="xterm_291">Patch #291 - 4815 2013/02/26</a></h1> 4816 4817 <ul> 4818 <li>add validity check for xterm widget parameter to 4819 <code>AlternateScroll</code> function, needed to handle wheel 4820 mouse events in the scrollbar area since <a href= 4821 "#xterm_282">patch #282</a> changes which introduced 4822 <code>alternateScroll</code> feature (Redhat #874327).</li> 4823 </ul> 4824 4825 <h1><a name="xterm_290" id="xterm_290">Patch #290 - 4826 2013/02/12</a></h1> 4827 4828 <ul> 4829 <li>revert of <a href="#xterm_282">patch #282</a> change was 4830 incomplete (report by Jim Reisert).</li> 4831 4832 <li>fix typo in manpage (report by Vincent 4833 Lefèvre).</li> 4834 </ul> 4835 4836 <h1><a name="xterm_289" id="xterm_289">Patch #289 - 4837 2013/02/08</a></h1> 4838 4839 <ul> 4840 <li>revert the <a href="#xterm_282">patch #282</a> change which 4841 restored "lost" text after shrinking/growing the screen size. 4842 If the screen was updated between the two resizing operations, 4843 unexpected text might be shown at the end (report/testcase by 4844 Joe Peterson).</li> 4845 4846 <li>reverse the arrow-keys sent for 4847 <code>alternateScroll</code> to match the usage in browsers 4848 (suggested by Dieter Roelants).</li> 4849 4850 <li>modify mouse reports to consistently indicate motion events 4851 whether or not a button is pressed. Old behavior (since 4852 <a href="#xterm_127">patch #127</a> modified encoding for wheel 4853 mouse) showed only that the button was released if no button 4854 had been pressed (report by Andy Koppe).</li> 4855 4856 <li>correct and improve behavior for SGR 1006 mouse protocol on 4857 button release in any-event mode. Initial implementation in 4858 <a href="#xterm_277">patch #277</a> left internal state showing 4859 the last button pressed when reporting motion events. It now 4860 keeps track of all buttons which have been pressed and 4861 released, showing the lowest remaining button by number in the 4862 response (reports by Hayaki Saito, Andy Koppe).</li> 4863 4864 <li>fix inconsistency between <code>TermColors</code> and 4865 <code>OscTextColors</code> enums which interchanged values for 4866 tektronix cursor color and highlight foreground in control 4867 sequences in <a href="#xterm_225">patch #225</a> (report/patch 4868 by Peder Stray).</li> 4869 4870 <li>fix inconsistent use of noreturn-attribute in 4871 <code>Exit</code> function which interfered with clang 4872 --analyze.</li> 4873 4874 <li>remove incorrect <code>free</code> used in computation of 4875 <code>XTERM_SHELL</code> variable, from Coverity fixes in 4876 <a href="#xterm_288">patch #288</a> (FreeBSD #175782).</li> 4877 4878 <li>add <code>--with-valgrind</code> option to configure script 4879 for consistency with my other programs.</li> 4880 4881 <li>update table of ambiguous width characters in wcwidth.c 4882 based on Unicode 6.2.0</li> 4883 4884 <li>update table of combining characters in wcwidth.c based on 4885 Unicode 6.2.0</li> 4886 4887 <li>update precompose.c based on Unicode 6.2.0</li> 4888 </ul> 4889 4890 <h1><a name="xterm_288" id="xterm_288">Patch #288 - 4891 2013/01/09</a></h1> 4892 4893 <ul> 4894 <li>fix a special case in <code>ShowCursor</code> where the 4895 foreground and background colors of the current position are 4896 the same. In that case, choose the further of the window's 4897 foreground and background colors for the cursor color.</li> 4898 4899 <li>modify <code>alternateScroll</code> feature added in 4900 <a href="#xterm_282">patch #282</a> to use either 4901 <code>CSI</code> or <code>SS3</code> according to the cursor 4902 keys application mode setting, to simplify using it in vi, etc. 4903 (suggested by Dietar Roelants).</li> 4904 4905 <li>revise manpage for <code>resize</code> to clarify the 4906 changes which <code>resize</code> may make to the terminal 4907 settings as well as to the terminal itself.</li> 4908 4909 <li>remove code such as <code>struct ttysize</code>, used for 4910 SunOS 3 and 4.</li> 4911 4912 <li>modify configure script and makefile to check for 4913 <code>groff</code> and suppress groff-specific rules if groff 4914 is not found.</li> 4915 4916 <li>modify ctlseqs.ms and makefile to work around bugs in 4917 <code>grohtml</code> which cause ".png" files to be truncated 4918 when producing html documentation.</li> 4919 4920 <li>modify suffix rules for "make docs" to make the names of 4921 the generated ".png" files predictable, helping to work around 4922 longstanding problems with this feature of groff—none of 4923 its releases work for <em>all</em> of xterm's tables..</li> 4924 4925 <li>correct typo in ctlseqs.ms for DECIC and DECDC; the 4926 character preceding the final "<code>~</code>" is an ASCII 4927 single-quote "<code>'</code>" rather than a space (report by 4928 Paul LeoNerd Evans).</li> 4929 4930 <li>update CF_GCC_VERSION macro, handling both Debian and 4931 Darwin.</li> 4932 4933 <li>improve configure script checks for the 4934 <code>--with-desktop-category</code> option. After <a href= 4935 "#xterm_280">patch #280</a> changes, if no value was given for 4936 this option, and no existing desktop files found for 4937 comparison, the incorrect "auto" value was passed into the 4938 generated desktop file (report by Julien Cristau).</li> 4939 4940 <li>modify sample build-scripts to disable check for 4941 <code>imake</code> due to code-rot in Xorg.</li> 4942 4943 <li>add <code>-v</code> command-line option to 4944 <code>resize</code>, reporting the same version string as 4945 <code>xterm</code> and the two shell-wrappers.</li> 4946 4947 <li>make name-transformation apply to other occurrences of 4948 <code>resize</code>, other manpages.</li> 4949 4950 <li>special-case the name-transformation in xterm's manpage in 4951 the NAME section so that the result works with 4952 <code>makewhatis</code> (report by Julien Cristau).</li> 4953 4954 <li>modify install-rules for manpages to put each program's 4955 respective transformed name into the header rather than 4956 xterm's.</li> 4957 4958 <li>remove deprecated files: proto.h, os2main.c</li> 4959 4960 <li>minor fixes based on Coverity scan, including: 4961 <ul> 4962 <li>correct caching of Atom value for the font menu's 4963 "Selection" entry.</li> 4964 4965 <li>ensure that utmp/utmpx calls do not depend upon 4966 trailing nulls in the <code>ut_id</code> and 4967 <code>ut_line</code> values.</li> 4968 </ul> 4969 </li> 4970 </ul> 4971 4972 <h1><a name="xterm_287" id="xterm_287">Patch #287 - 4973 2012/11/25</a></h1> 4974 4975 <ul> 4976 <li>fix a case where in_put() loop could continue when it has 4977 found an X event rather than the pty, causing the pty-read to 4978 be delayed (patch by Balazs Kezes).</li> 4979 4980 <li>add option to <code>pointerMode</code> resource and 4981 corresponding control sequences to allow text-cursor to remain 4982 hidden if the pointer leaves/enters the window via accelerator 4983 keys. Ordinary motion within the window restores the pointer 4984 (prompted by patch by Balazs Kezes).</li> 4985 4986 <li>remove special case of modifiers for the 4987 <code>Mode_switch</code> and <code>XK_ISO_Level3_Shift</code> 4988 from <a href="#xterm_223">patch #223</a>. Verified that the 4989 conflict which this was intended to resolve does not happen for 4990 normal compose- or modeswitch-handling (prompted by patch by 4991 Balazs Kezes, Debian #638694).</li> 4992 4993 <li>modify the handling of focus-change events to ignore those 4994 whose detail is <code>NotifyPointer</code>, since those are 4995 sent in addition to focus-change events directed to the old/new 4996 windows having focus. In particular, this prevents the 4997 urgency-hint from being reset inadvertently (prompted by patch 4998 by Balazs Kezes).</li> 4999 5000 <li>modify description of <code>iconName</code> in manpage to 5001 make it clearer that this resource does not specify the 5002 filename of an icon (discussion with Ian Collier).</li> 5003 5004 <li>modify <code>iconHint</code> resource to allow suppressing 5005 the built-in icon by setting this to "none" (discussion with 5006 Ian Collier).</li> 5007 5008 <li>make <code>-iconic</code> option work with the toolbar 5009 configuration.</li> 5010 5011 <li>correct initialization of window manager hints used to set 5012 the icon-pixmap. That detail from <a href="#xterm_282">patch 5013 #282</a> overwrote state used to control the 5014 <code>-iconic</code> command-line option (report by Ian 5015 Collier).</li> 5016 5017 <li>fix paste64 feature for the case where the selection comes 5018 from the current terminal. The selection callback can happen 5019 after the reply is partly built, making it necessary to flush 5020 the reply-buffer to keep things in the proper order (report by 5021 Ailin Nemui).</li> 5022 5023 <li>reject command-line options which are longer than the 5024 options in xterm's table, to avoid mismatches (Redhat 5025 #875305).</li> 5026 5027 <li>correct attribution for <a href="#xterm_282">patch #282</a> 5028 changes.</li> 5029 </ul> 5030 5031 <h1><a name="xterm_286" id="xterm_286">Patch #286 - 5032 2012/10/29</a></h1> 5033 5034 <ul> 5035 <li>fix <code>minstall.in</code> to work with "make docs" rule, 5036 so that patch number appears in the corresponding generated 5037 documentation.</li> 5038 5039 <li>modify <code>minstall.in</code> to keep the name shown in 5040 the heading consistent with any renaming, e.g., for 5041 test-builds.</li> 5042 5043 <li>check for misconfigured <code>printerCommand</code> 5044 resource on the first use, warn and disable it if it does not 5045 specify an executable command (Debian #691642).</li> 5046 5047 <li>improve check for window-manager name needed to establish 5048 usable default for activeIcon resource. This works around a 5049 scenario where <code>gdm</code> does incomplete cleanup, 5050 leaving window properties that refer to windows which no longer 5051 exist (Redhat #869959).</li> 5052 </ul> 5053 5054 <h1><a name="xterm_285" id="xterm_285">Patch #285 - 5055 2012/10/23</a></h1> 5056 5057 <ul> 5058 <li>add/adapt FreeBSD ports files for test-building.</li> 5059 5060 <li>modify <code>minstall.sh</code> to use the patch-number and 5061 date in the manpage footer.</li> 5062 5063 <li>add check for failure to allocate the fg/bg colors at 5064 startup, e.g., misconfiguration. Work around by setting both to 5065 the default colors (suggested by Scott Bertilson).</li> 5066 5067 <li>amend change for <a href="#xterm_280">patch #280</a> which 5068 added <code>modifyKeyboard</code>, to make 5069 <code>modifyOtherKeys</code> work (report by Ailin Nemui).</li> 5070 5071 <li>add <code>query-colors.pl</code> example for 5072 OSC 4.</li> 5073 5074 <li>correct mis-applied fix for minstall.sh (report by Miroslav 5075 Lichvar).</li> 5076 </ul> 5077 5078 <h1><a name="xterm_284" id="xterm_284">Patch #284 - 5079 2012/10/14</a></h1> 5080 5081 <ul> 5082 <li>amend configurability changes for icons from <a href= 5083 "#xterm_283">patch #283</a>, moving the new functionality to 5084 the <code>iconHint</code> resource to avoid conflict with 5085 existing uses of the <code>iconName</code> resource in the 5086 <code>Shell</code> widget (report by Emanuel Haupt).</li> 5087 5088 <li>fix documentation errata reported by Miroslav Lichvar: 5089 <ul> 5090 <li>correct manpage default for <code>allowTcapOps</code> 5091 (see <a href="#xterm_243">patch #243</a></li> 5092 5093 <li>modify documentation for configure 5094 <code>--enable-backarrow-key</code> to match the script 5095 (see <a href="#xterm_280">patch #280</a>).</li> 5096 5097 <li>fix typo in <code>minstall.sh</code> in <a href= 5098 "#xterm_283">patch #283</a>, which made the leading-cap 5099 "Xterm" become "xterm" (patch by Miroslav).</li> 5100 </ul> 5101 </li> 5102 5103 <li>fix two typos in configure.in from <a href= 5104 "#xterm_283">patch #283</a> changes; one broke the 5105 <code>--regex</code> configure option (report by H Merijn 5106 Brand).</li> 5107 </ul> 5108 5109 <h1><a name="xterm_283" id="xterm_283">Patch #283 - 5110 2012/10/09</a></h1> 5111 5112 <ul> 5113 <li>modify makefile and script to generate appropriate renaming 5114 s/xterm/xterm-dev/ for test-package's manpage.</li> 5115 5116 <li>improve makefile rules for installing/uninstalling pixmap 5117 files, to include the newer mini- and filled- variants.</li> 5118 5119 <li>clarify change in manpage regarding <a href= 5120 "#xterm_282">patch #282</a> change to always set a 5121 window-decoration icon, even if <code>iconName</code> is not 5122 set.</li> 5123 5124 <li>add a fourth flavor of window-decoration icons, 5125 "filled-xterm" for a monochrome xterm with filled 5126 interior.</li> 5127 5128 <li>use shape-mask to improve contrast of the window-decoration 5129 icons.</li> 5130 5131 <li>minor changes to icon colors to improve contrast on 5132 bright-mud backgrounds.</li> 5133 5134 <li>drop configure checks for memmove versus bcopy, and 5135 strerror function; all currently tested platforms support 5136 these.</li> 5137 5138 <li>cleanup configure macros, as done in byacc 20121003.</li> 5139 5140 <li>improve configurability of the built-in icon selectable via 5141 the <code>iconName</code> resource.</li> 5142 5143 <li>update config.guess, config.sub</li> 5144 </ul> 5145 5146 <h1><a name="xterm_282" id="xterm_282">Patch #282 - 5147 2012/09/28</a></h1> 5148 5149 <ul> 5150 <li>improve configure check for 5151 <code>XkbKeycodeToKeysym</code>, fixing a regression on some 5152 older systems in the <a href="#xterm_280">patch #280</a> 5153 changes.</li> 5154 5155 <li>add clarification in manpage for 5156 <code>alwaysBoldMode</code> and <code>veryBoldColors</code> 5157 resources (prompted by Derek Martin question about using the 5158 former with TrueType fonts).</li> 5159 5160 <li>add <code>alternateScroll</code> resource and corresponding 5161 control sequences which modify the <code>scroll-forw</code> and 5162 <code>scroll-back</code> actions: when the alternate screen is 5163 displayed, wheel mouse up/down will send cursor keys (Debian 5164 #683942).</li> 5165 5166 <li>improve rendering for the case when a Unicode character is 5167 absent in the bold font but present in the normal font by 5168 temporarily falling back to the normal font (Debian #359006, 5169 Debian #408666).</li> 5170 5171 <li>provide configure option 5172 <code>--enable-double-buffer</code> and ifdef's to allow 5173 comparisons with/without double-buffering. The default uses 5174 normal buffering.</li> 5175 5176 <li>add feature to optionally scroll current page before 5177 clearing, controlled by resource setting 5178 <code>cdXtraScroll</code> (prompted by patch by Balazs 5179 Kezes):</li> 5180 5181 <li>integrated patches from Arch Linux forum posting (patches 5182 by Balazs Kezes): 5183 <ul> 5184 <li>modify reallocation limit of line-data when resizing 5185 screen so that "lost" text will be restored if the screen 5186 is first shrunk and then grown.</li> 5187 5188 <li>modify output to use double-buffering to reduce 5189 flicker.</li> 5190 </ul> 5191 </li> 5192 5193 <li>modify <code>scroll-lock</code> action to handle 5194 on/off/toggle keywords like other actions. Previously the 5195 optional parameter was interpreted as an integer.</li> 5196 5197 <li>extend <code>DECSCUSR</code> to provide a way to set the 5198 cursor to a vertical bar (patch by Paul Bolle).</li> 5199 5200 <li>add <code>-8</code>, <code>-c</code>, <code>-d</code> and 5201 <code>-u</code> options to <code>88colors2.pl</code> and 5202 <code>256colors2.pl</code> scripts. No current terminal 5203 emulator recognizes C1 controls while handling UTF-8 5204 encoding—see notes in <a href="#xterm_119">patch #119</a> 5205 and <a href="#xterm_109">patch #109</a> regarding 5206 <code>utf8controls</code>—but the <code>-u</code> and 5207 <code>-8</code> options are useful for demonstrating this 5208 point.</li> 5209 5210 <li>improve speed when changing color palettes using OSC 5211 controls by deferring repaint while followup controls might be 5212 additional color palette changes.</li> 5213 5214 <li>modify <code>SGR 38</code> and 5215 <code>SGR 48</code> to accept RGB index, matching the 5216 closest entry in xterm's palette.</li> 5217 5218 <li>extend <code>SGR 38</code> and 5219 <code>SGR 48</code> to accept colon as parameter separator 5220 (request by Paul LeoNerd Evans).</li> 5221 5222 <li>modify <code>fullscreen</code> action to allow it to toggle 5223 the full-screen mode rather than only set or unset it (prompted 5224 by Eeri Kask's suggestion to support 5225 <code>_NET_WM_TOGGLE</code>). This implementation does not yet 5226 use <code>_NET_WM_TOGGLE</code>.</li> 5227 5228 <li>add support for <code>_NET_WM_STATE_MAXIMIZED_VERT</code> 5229 and <code>_NET_WM_STATE_MAXIMIZED_HORZ</code> EWMH properties 5230 (suggested by Eeri Kask).</li> 5231 5232 <li>make fullscreen mode work with the tek4014 window. This 5233 change makes only the currently active window to be changed to 5234 fullscreen rather than changing both windows.</li> 5235 5236 <li>modify <code>TekClear</code> function to discard pending 5237 output before clearing the tek4014 display (patch by Kevin 5238 Ryde).</li> 5239 5240 <li>fix <code>deleteIsDEL</code> feature, broken in <a href= 5241 "#xterm_280">patch #280</a> changes (report by Mike Thornburg, 5242 forwarded by Jeremy Huddleston).</li> 5243 5244 <li>fix a special case of wrapping double-width characters 5245 (report/test-case by Ken Winstein).</li> 5246 5247 <li>add <code>E3</code> extended capability to 5248 <code>xterm-basic</code> to match ncurses <a href= 5249 "https://invisible-island.net/ncurses/NEWS.html#t20120728">20120728</a> 5250 patch.</li> 5251 5252 <li>fix incorrect transformation of row-parameter for 5253 <code>ClearCurBackground</code> in <a href="#xterm_279">patch 5254 #279</a> which caused incorrect painting in some scrolling 5255 scenarios (report by Chuck Silvers).</li> 5256 5257 <li>fix typo in manpage description of <code>+maximized</code> 5258 option (Paul Maier).</li> 5259 5260 <li>change default for configure option 5261 <code>--with-xpm</code>, turning it on unless requested 5262 otherwise.</li> 5263 5264 <li>add configure option <code>--with-icon-name</code> which 5265 can be used to override the default icon used in 5266 icon-themes.</li> 5267 5268 <li>extend <code>activeIcon</code> resource to provide 5269 <code>default</code> value which tells xterm to determine the 5270 window manager's name and automatically enable the feature for 5271 fvwm and window maker. The explicit true/false values can be 5272 used to override this behavior.</li> 5273 5274 <li>add "mini" xterm icon, which scales better than the 5275 standard xterm icon, e.g., for the gnome/kde "panel" 5276 feature.</li> 5277 5278 <li>extend <code>iconName</code> resource to search for icon 5279 named according to resource value and use that if found. If not 5280 found, use compiled-in pixmap. Both set the WM_ICON_NAME 5281 property which is used by various window managers, usually for 5282 window decoration.</li> 5283 5284 <li>updated autoconf patch, adding support for --datarootdir, 5285 which changes the default location of manpages.</li> 5286 5287 <li>further improved autoconf macros for configuring icons, 5288 from vile 9.8h</li> 5289 </ul> 5290 5291 <h1><a name="xterm_281" id="xterm_281">Patch #281 - 5292 2012/06/26</a></h1> 5293 5294 <ul> 5295 <li>remove "$(srcdir)/" from install-icon rule to fix builds 5296 when --srcdir configuration option is used.</li> 5297 5298 <li>fix for configure script's search for icon file when it is 5299 not found in the current directory, e.g., when building out of 5300 tree (patch by Thierry Reding).</li> 5301 5302 <li>undo the XK_Home / XK_End change from <a href= 5303 "#xterm_280">patch #280</a> which broke the non-VT220 keyboard 5304 for those keys (report by H Merijn Brand).</li> 5305 </ul> 5306 5307 <h1><a name="xterm_280" id="xterm_280">Patch #280 - 5308 2012/06/24</a></h1> 5309 5310 <ul> 5311 <li>add configure check to work around warning from 5312 desktop-file-install for "Encoding", noting that it emits 5313 deprecation warnings without providing its version 5314 information.</li> 5315 5316 <li>add configure option <code>--with-icon-theme</code> to tell 5317 xterm whether to install into an icon theme, defaulting to 5318 "hicolor" (Redhat #755206, Redhat #799614 and Redhat 5319 #804279).</li> 5320 5321 <li>change <code>--with-icondir</code> to look for "icons" 5322 directory rather than "pixmaps" by default. Add new option 5323 <code>--with-pixmapdir</code> to allow these two uses to be 5324 installed concurrently.</li> 5325 5326 <li>modify configure options <code>--with-app-defaults</code> 5327 and <code>--with-icondir</code> to accept "auto" as value to 5328 look for existing directory from well-known locations.</li> 5329 5330 <li>add missing codes for secondary DA response which tell the 5331 type of terminal as in the primary DA response.</li> 5332 5333 <li>update primary DA response for VT420 to include user 5334 windows and horizontal scrolling.</li> 5335 5336 <li>add <code>modifyKeyboard</code> resource to support 5337 keypad-modifier changes per request by Thomas Wolff.</li> 5338 5339 <li>add XK_Home / XK_End to editing-keypad checks</li> 5340 5341 <li>add back-tab key <code>kB</code> to termcap entries to 5342 match the terminfo.</li> 5343 5344 <li>update terminfo to match corresponding entries in ncurses, 5345 e.g., add <code>XT</code> and adjust <code>sgr</code> string 5346 for xterm-bold entry.</li> 5347 5348 <li>add configure options to predefine the most commonly 5349 customized resources for terminal-settings, use those to 5350 substitute into the manpage the corresponding compiled-in 5351 values: <code>altSendsEscape</code>, <code>backarrowKey</code>, 5352 <code>backarrowKeyIsErase</code>, <code>deleteIsDEL</code>, 5353 <code>metaSendsEscape</code> (Redhat #819588).</li> 5354 5355 <li>change default emulation level to VT420 (discussion with 5356 Ailin Nemui).</li> 5357 5358 <li>improve logic for DECSCL; <a href="#xterm_279">patch 5359 279</a> partly enforced limitation of this to higher-level 5360 emulations. This patch finishes that change.</li> 5361 5362 <li>improve check for base of combining characters, preventing 5363 combination when cursor movement has intervened. Mosh's webpage 5364 gives two different examples of this, with other causes 5365 ascribed to the behavior.</li> 5366 5367 <li>modify IL/DL to set cursor to first column on row for 5368 better VT102/VT220 compatibility (prompted by code review of 5369 mosh).</li> 5370 5371 <li>separate state-table entries for DECSC/DECRC from the 5372 ANSI.SYS save/restore cursor, since the latter conflicts with 5373 DECSLRM when DECLRMM is enabled since <a href= 5374 "#xterm_279">patch #279</a> (report/analysis by Ailin 5375 Nemui).</li> 5376 5377 <li>fixes to avoid using <code>SIGCHLD</code> handler of main 5378 program in printer's subprocess (report by Joe Julian).</li> 5379 5380 <li>correct restore-parameter for mouse-modes from <a href= 5381 "#xterm_279">patch #279</a> changes.</li> 5382 5383 <li>add null-pointer checks to input-method caching added in 5384 <a href="#xterm_277">patch #277</a> to fix a problem in the 5385 exposure code, when deselecting a window (report by Kriston 5386 Rehberg).</li> 5387 5388 <li>unset <code>DESKTOP_STARTUP_ID</code> environment variable 5389 to lessen confusion on the part of GTK applications which use 5390 the variable without checking it (report by John Little).</li> 5391 </ul> 5392 5393 <h1><a name="xterm_279" id="xterm_279">Patch #279 - 5394 2012/05/10</a></h1> 5395 5396 <ul> 5397 <li>fill in missing cases in the save/restore modes feature 5398 (report by Thomas Wolff).</li> 5399 5400 <li>add check to ensure that combining characters are 5401 precomposed in the order given (report/analysis by Andries E 5402 Brouwer).</li> 5403 5404 <li>improve workability check for posix_openpt(), to take into 5405 account BSD systems which do not complete initialization until 5406 both sides of the pseudoterminal are opened (report by 5407 Christian Weisgerber).</li> 5408 5409 <li>amend fix for Debian #650291 in <a href="#xterm_277">patch 5410 #277</a> changes to account for different data returned by 5411 vnc4server (Debian #670638).</li> 5412 5413 <li>add check in DECCRA operation to make copies of blinking 5414 text also blink by updating a line-level flag.</li> 5415 5416 <li>modify rectangle operations to work with DECOM.</li> 5417 5418 <li>modify DECSERA to use the current protected state rather 5419 than preserving it.</li> 5420 5421 <li>add <code>precompose</code> resource to allow storing 5422 character data in Normalized Form D as described in <a href= 5423 "http://unicode.org/reports/tr15/">http://unicode.org/reports/tr15/</a> 5424 (report/discussion with Andries E Brouwer).</li> 5425 5426 <li>modify CBT, other ISO-6429 controls which are used by VT520 5427 to work with DECOM.</li> 5428 5429 <li>add HPR and VPR controls, ISO 6429 cursor movement used in 5430 VT520.</li> 5431 5432 <li>remove "linux" restriction for IUTF8 ifdef in main.c 5433 (prompted by Matthew Dempsky posting on 5434 mailing.openbsd.tech).</li> 5435 5436 <li>implement the remaining VT420-level device status 5437 reports.</li> 5438 5439 <li>change DECXCPR to return page 1, rather than 0.</li> 5440 5441 <li>improve VT-level checks on reporting functions, such as 5442 DECXCPR.</li> 5443 5444 <li>change limit on <code>decTerminalID</code> to 525.</li> 5445 5446 <li>fixes to improve vttest vt52 screen when running as a 5447 VT420: 5448 <ul> 5449 <li>add checks for some VT2xx and up controls for 5450 consistency: DECSCL, S1C8T, S1C7T.</li> 5451 5452 <li>modify DECRQSS return for DECSCL to only return that 5453 when running as VT2xx and up.</li> 5454 5455 <li>when exiting from VT52-mode, resume in VT100 level 5456 rather than the level before starting VT52-mode.</li> 5457 </ul> 5458 </li> 5459 5460 <li>implement DECLRMM, DECSLRMM and DECNCSM (prompted by 5461 discussions with Ailin Nemui and Paul LeoNerd Evans). This 5462 modifies several controls to obey top/bottom and left/right 5463 margins.</li> 5464 5465 <li>correct macro definition used for testing modes used in 5466 ANSI/DEC request-mode controls introduced in <a href= 5467 "#xterm_262">patch #262</a>.</li> 5468 5469 <li>modify <code>x_getlogin</code> to check $LOGNAME and $USER 5470 before fallback to <code>getlogin</code>, so that user's choice 5471 for these variables can be carried forward to the xterm process 5472 (Debian #611487).</li> 5473 5474 <li>document DECSCUSR response for DECRQSS in ctlseqs.ms</li> 5475 5476 <li>add <code>zIconTitleFormat</code> resource to allow 5477 customizing the "*** " prefixed to the icon title when the 5478 <code>zIconBeep</code> feature is activated (request by Thomas 5479 Adam).</li> 5480 5481 <li>modify DECSCUSR to update the same internal variable as 5482 RM/SM 12, and document in manpage the two variables used for 5483 controlling blinking cursor (report by Paul LeoNerd 5484 Evans).</li> 5485 5486 <li>correct response data for DECSCUSR in reply for DECRQSS 5487 response, which had inverted the blink-value (reports by Ailin 5488 Nemui, Paul LeoNerd Evans).</li> 5489 5490 <li>add a null-pointer check in <code>OkPasswd</code> macro to 5491 fix a problem in <code>resize</code> with Fedora 17 and a 5492 serial console (report/patch by Daniel Drake).</li> 5493 5494 <li>add workaround for Mac OS X, which loses the window size of 5495 a pseudo-terminal when the tty device is opened 5496 (report/analysis by Egmont Koblinger).</li> 5497 5498 <li>updated configure check for workable 5499 <code>posix_openpt</code> versus <code>grantpt</code>, from 5500 <code>luit</code> fixes.</li> 5501 5502 <li>modify DECIC/DECDC/DECBI/DECFI implemented in <a href= 5503 "#xterm_277">patch #277</a> to enable them only in VT4xx mode 5504 and up (report by Ailin Nemui).</li> 5505 5506 <li>update config.guess, config.sub</li> 5507 </ul> 5508 5509 <h1><a name="xterm_278" id="xterm_278">Patch #278 - 5510 2012/01/18</a></h1> 5511 5512 <ul> 5513 <li>correct initialization for <code>eightBitMeta</code> 5514 resource (FreeBSD #164101).</li> 5515 5516 <li>make special check for Darwin 9 (and lower) to <em>not</em> 5517 use <code>posix_openpt</code> (report by Christian Ebert).</li> 5518 5519 <li>minor fixes (adding ".ne" directives) to reduce the cases 5520 where groff's utility for generating images for tables dumps 5521 core. Most versions of groff (I've found 1.19.2 to be the most 5522 stable) dump core when attempting to report that there are too 5523 few lines on a page for a table to be shown.</li> 5524 </ul> 5525 5526 <h1><a name="xterm_277" id="xterm_277">Patch #277 - 5527 2012/01/07</a></h1> 5528 5529 <ul> 5530 <li>remove special case for ISC pseudo-terminals which attempts 5531 to open the pty in two different ways.</li> 5532 5533 <li>move call to <code>grantpt</code> before asking utempter to 5534 add a record, to work with kFreeBSD which does not update the 5535 terminal's ownership until this point (Debian #652907).</li> 5536 5537 <li>document limitation of XIM interface in manpage (Debian 5538 #230787).</li> 5539 5540 <li>cleanup error reporting with new xtermWarning 5541 function.</li> 5542 5543 <li>add configure option <code>--disable-selection-ops</code> 5544 to make the new actions optional.</li> 5545 5546 <li>add four new actions for making the selection or data 5547 directly copied from the screen (prompted by discussion in 5548 Debian #637001, as well as report by Arjen van Tol): 5549 <ul> 5550 <li>exec-formatted</li> 5551 5552 <li>exec-selectable</li> 5553 5554 <li>insert-formatted</li> 5555 5556 <li>insert-selectable</li> 5557 </ul> 5558 </li> 5559 5560 <li>add <code>visualBellLine</code> resource to allow 5561 <code>visualBell</code> to flash only the current line 5562 (prompted by patch by Gertjan Halkes).</li> 5563 5564 <li>add <code>eightBitMeta</code> resource to control the 5565 features which modify or interpret the eighth bit of a key when 5566 the meta modifier key is pressed (prompted by Debian 5567 #326200).</li> 5568 5569 <li>improve discussion of <code>eightBitInput</code> in the 5570 manpage (prompted by Debian #326200).</li> 5571 5572 <li>correct logic for <code>alt-sends-escape</code> action, 5573 overlooked when implementing <code>altSendsEscape</code> 5574 resource, which still used <code>eightBitInput</code> resource 5575 value.</li> 5576 5577 <li>add a workaround for <code>XAllocColor()</code>, which does 5578 not actually allocate "a read-only colormap entry corresponding 5579 to the closest RGB value supported by the hardware", but rather 5580 a rough approximation (Debian #650291).</li> 5581 5582 <li>undo parameter checks for <code>RequestResize()</code> 5583 added in <a href="#xterm_251">patch #251</a> and amended in 5584 <a href="#xterm_270">patch #270</a>, because zeros also are 5585 special cases (report by John S Urban).</li> 5586 5587 <li>modify some test-scripts to use <code>/bin/echo</code> 5588 rather than the shell's possibly-builtin <code>echo</code>, to 5589 work around broken configuration on Mac OS X, i.e., neither 5590 honoring the option nor flagging an error.</li> 5591 5592 <li>add SGR 1006, as a better technical solution than SGR 1015: 5593 <ul> 5594 <li>the responses will not be confused with line-deletion 5595 and scrolling controls.</li> 5596 5597 <li>the button encoding is a little simpler, since it does 5598 not add an unnecessary 32 because the integer parameter 5599 does not have to be represented as a printable 5600 character.</li> 5601 5602 <li>the control responses for pressing and releasing a 5603 mouse button differ, allowing an application to tell which 5604 button was released.</li> 5605 </ul> 5606 5607 <p>Besides these improvements, in discussion, it was noted 5608 that urxvt's implementation of 1005 is incorrect, relying 5609 upon a locale that provides UTF-8 encoding. In contrast, 5610 vttest demonstrates a correct decoding, independent of 5611 locale.</p> 5612 </li> 5613 5614 <li>add support for urxvt SGR 1015 to address shortcoming of 5615 SGR 1005 with luit (patch by Egmont Koblinger).</li> 5616 5617 <li>add ISO and DEC controls useful for left/right 5618 scrolling.</li> 5619 5620 <li>add some changes for OpenBSD and MirBSD (adapted from patch 5621 by Thorsten Glaser): 5622 <ul> 5623 <li>disable search for non-Unix96 ptys.</li> 5624 5625 <li>fix a gcc warning in 5626 <code>timestamp_filename</code></li> 5627 5628 <li>modify <code>Imakefile</code> to install xterm setgid 5629 to utmp.</li> 5630 </ul> 5631 </li> 5632 5633 <li>add/use/prefer <code>posix_openpt()</code> for opening 5634 pseudo-terminal.</li> 5635 5636 <li>modify special errno handling case in ptydata.c from 5637 <a href="#xterm_158">patch #158</a> to allow for the 5638 possibility that any platform may have special cases where 5639 "/dev/tty" is absent. For example, this can happen in a FreeBSD 5640 jail (patch by David Wolfskill).</li> 5641 5642 <li>add keyboard logic to map shift-tab into XK_ISO_Left_Tab, 5643 which is usually, not always, done by the X keyboard 5644 configuration.</li> 5645 5646 <li>portability fixes for some configure macros: 5647 <code>CF_XOPEN_SOURCE</code></li> 5648 </ul> 5649 5650 <h1><a name="xterm_276" id="xterm_276">Patch #276 - 5651 2011/10/10</a></h1> 5652 5653 <ul> 5654 <li>modify clipping limits for TrueType fonts to account for 5655 the <code>scaleHeight</code> resource setting, to work around 5656 another problem due to recent FreeType changes. In this case, 5657 the <code>DejaVu Sans Mono</code> set to pixelsize=13.5 is 5658 truncated because the font descent is reduced by FreeType to 5659 match an incorrect height metric (report by Adam Lee).</li> 5660 5661 <li>improve recovery when bitmap fonts are not installed, e.g., 5662 so that switching font-sizes works for TrueType fonts.</li> 5663 5664 <li>modify lookup for <code>XTERM_SHELL</code> feature to allow 5665 relative pathnames.</li> 5666 5667 <li>modify abbreviation disambiguation check for command-line 5668 parameters to account for <code>-geometry</code>, whose 5669 parameter may begin with "+" or "-" (report by Scott 5670 Bertilson).</li> 5671 </ul> 5672 5673 <h1><a name="xterm_275" id="xterm_275">Patch #275 - 5674 2011/09/11</a></h1> 5675 5676 <ul> 5677 <li>add <code>ash</code>, <code>zsh</code> to known shells for 5678 <code>resize</code>.</li> 5679 5680 <li>modify <code>resize</code> to reuse the logic from 5681 <code>xterm</code> which determines the actual logon-user's 5682 shell if <code>$SHELL</code> is not set.</li> 5683 5684 <li>revert the <code>unsetenv("SHELL")</code> added in <a href= 5685 "#xterm_272">patch #272</a>.</li> 5686 5687 <li>an <code>unsetenv("SHELL")</code> added in <a href= 5688 "#xterm_272">patch #272</a> to help ensure that 5689 <code>luit</code> would get the user's shell consistently did 5690 not work as expected for cases where multiple names are in the 5691 password-file for a given uid. That was because changes in 5692 <a href="#xterm_157">patch #157</a> to handle this situation 5693 did not take into account that repeated calls to 5694 <code>getpwnam</code> and <code>getpwuid</code> return a 5695 pointer to the same static buffer. Fixed the older logic to 5696 work as intended, by ensuring that the passwd-data from each 5697 call is stored separately (report by Paul Keusemann).</li> 5698 5699 <li>adjust ifdef's for <code>putenv</code> and 5700 <code>unsetenv</code> in case only one of those is provided on 5701 a given platform.</li> 5702 5703 <li>correct comparison used in <code>ExposeContains</code> 5704 macro from <a href="#xterm_274">patch #274</a> changes, to 5705 handle window-dragging (patch by Todd Eigenschink).</li> 5706 </ul> 5707 5708 <h1><a name="xterm_274" id="xterm_274">Patch #274 - 5709 2011/09/05</a></h1> 5710 5711 <ul> 5712 <li>portability fixes for cygwin: do not define 5713 <code>SVR4</code>, and work around nonstandard header 5714 location.</li> 5715 5716 <li>ifdef'd use of <code>unsetenv</code> from <a href= 5717 "#xterm_273">patch #273</a> changes to work with Solaris 9 5718 (report by Waldemar Rachwal).</li> 5719 5720 <li>modify logic for <code>XtAppPending</code> to merge 5721 adjacent <code>Expose</code> and <code>ConfigureNotify</code> 5722 events which are redundant (report by Edward McGuire).</li> 5723 5724 <li>fix an unneeded warning message when <code>-r</code> option 5725 is given.</li> 5726 5727 <li>remove a few redundant entries from table used for helping 5728 abbreviation-checking of command-line options, makes 5729 <code>-geom</code> work again after <a href="#xterm_272">patch 5730 #272</a> changes as an abbreviation of 5731 <code>-geometry</code>.</li> 5732 5733 <li>add <code>scaleHeight</code> resource and command-line 5734 option <code>-sh</code> as workaround for some 5735 font-configurations broken by changes in FreeType 2.4.6 (report 5736 by Miroslav Hodak).</li> 5737 5738 <li>portability fixes for some configure macros: 5739 <code>CF_FUNC_TGETENT</code>, <code>CF_XOPEN_SOURCE</code>, 5740 <code>CF_X_ATHENA_LIBS</code>.</li> 5741 5742 <li>add configure option <code>--with-freetype-config</code> to 5743 improve selection over the plethora of configuration options 5744 which freetype has so far provided.</li> 5745 5746 <li>build-fix for configure <code>--enable-load-vt-fonts</code> 5747 when <code>--enable-widec</code> is not specified.</li> 5748 5749 <li>build-fixes for suppressing various features, needed after 5750 changes in patches 270, 271 and 272 (report by Brian 5751 Lindholm)</li> 5752 </ul> 5753 5754 <h1><a name="xterm_273" id="xterm_273">Patch #273 - 5755 2011/08/25</a></h1> 5756 5757 <ul> 5758 <li>build-fix for out-of-tree "make docs" rule.</li> 5759 5760 <li>correct a typo in <code>x_strdup</code>, from <a href= 5761 "#xterm_198">patch #198</a> changes.</li> 5762 5763 <li>correct initialization for <code>-e</code> option, broken 5764 in <a href="#xterm_272">patch #272</a> changes (report by 5765 Gabriele Balducci).</li> 5766 5767 <li>build-fix for out-of-tree builds to address 5768 <code>minstall</code> script changes in <a href= 5769 "#xterm_272">patch #272</a> (patch by Thierry Reding).</li> 5770 </ul> 5771 5772 <h1><a name="xterm_272" id="xterm_272">Patch #272 - 5773 2011/08/24</a></h1> 5774 5775 <ul> 5776 <li>document limitation of <code>Gtk</code> in connection with 5777 xterm's <code>-into</code> option, in the manpage (Ubuntu 5778 #806969).</li> 5779 5780 <li>improve <code>-into</code> by checking for and using the 5781 size of the window within which xterm is embedded, overriding 5782 other clues.</li> 5783 5784 <li>modify logic for <code>localeFilter</code> resource to 5785 allow that to include command-line options of luit.</li> 5786 5787 <li>improve <code>-into</code> by checking for invalid 5788 window-id, and allowing hexadecimal/decimal/octal values.</li> 5789 5790 <li>improve <code>keepSelection</code>, adding the case where 5791 the highlighting is cleared, overlooked in <a href= 5792 "#xterm_230">patch #230</a> (patch by Marco Peereboom).</li> 5793 5794 <li>improve command-line parsing to make abbreviate options 5795 work consistently across xterm-specific versus standard X 5796 toolkit options, and report cases where an abbreviated option 5797 happens to be ambiguous. In particular, <code>-d</code> now 5798 works as an abbreviation for <code>-display</code>.</li> 5799 5800 <li>fix regression in command-line parsing introduced in 5801 <a href="#xterm_271">patch #271</a> changes for Debian #629358, 5802 (Debian #637910).</li> 5803 5804 <li>split-out new termcap/terminfo building block 5805 <code>xterm+kbs</code> for configurability.</li> 5806 5807 <li>modify <code>terminfo</code> file to reflect changes in 5808 ncurses for <code>xterm-16color</code> and 5809 <code>xterm-256color</code>.</li> 5810 5811 <li>modify <code>minstall.sh</code>, etc., to reflect the 5812 default default class, <code>$TERM</code> and 5813 <code>decTerminalID</code> values.</li> 5814 5815 <li>reword <code>resize</code> manpage to reflect the fact that 5816 <code>$TERMCAP</code> is not set on all systems (patch by Alan 5817 Coopersmith).</li> 5818 5819 <li>work around combined Xaw6/Xaw7 package in DragonFlyBSD 5820 which omits the usual symbolic link to the preferred library 5821 name.</li> 5822 5823 <li>further improve build-fix for termcap systems by checking 5824 for some which are only partial implementations, e.g., termcap 5825 2.08 in CentOS 5.2</li> 5826 </ul> 5827 5828 <h1><a name="xterm_271" id="xterm_271">Patch #271 - 5829 2011/07/14</a></h1> 5830 5831 <ul> 5832 <li>omit permissions adjustments to pty on exit except for 5833 pre-Unix98 ptys, since modern implementations handle this 5834 (report by Sean C Farley).</li> 5835 5836 <li>modify logic for switching fonts between UTF-8 and 5837 non-UTF-8 encoding to not merge the derivable bold-, wide- and 5838 widebold values from the VT100 fonts. Also suppress warning 5839 when not using UTF-8 fonts if wide- and widebold-fonts cannot 5840 be derived or otherwise loaded (report by Werner 5841 Scheinast).</li> 5842 5843 <li>modify menu-creation to suppress entries which will never 5844 be used in the current configuration, rather than simply 5845 disabling them.</li> 5846 5847 <li>add resource <code>printModeImmediate</code> and menu item 5848 to allow print of screen plus saved lines to a file.</li> 5849 5850 <li>add menu item to allow runtime enable/disable of the 5851 <code>printFileOnXError</code> feature.</li> 5852 5853 <li>append a timestamp to filename used in 5854 <code>printFileOnXError</code> feature, and restrict its 5855 permissions (request by Vincent Lefèvre).</li> 5856 5857 <li>add a check when cancelling cursor-blinking, in case the 5858 cursor is blinked off. Fix so that the cursor is repainted 5859 without waiting for other events, e.g., keypress (report by 5860 Ailin Nemui).</li> 5861 5862 <li>add configure <code>--with-app-class</code> option, to 5863 simplify building "xterm-dev" packages with filenames that do 5864 not conflict with conventional "xterm" packages.</li> 5865 5866 <li>corrected logic flow for DECSCL, which prevented the 5867 updated operating level from being reported via DECRQSS (report 5868 by Ailin Nemui).</li> 5869 5870 <li>corrected default for <code>brokenStringTerm</code> 5871 resource to match manpage.</li> 5872 5873 <li>add vttests/dynamic.pl</li> 5874 5875 <li>add runtime check for locale not supported by X libraries, 5876 and fallback to XA_STRING in this case (request by Bryan 5877 Henderson).</li> 5878 5879 <li>fix a special case in configure script after no FreeType 5880 libraries are found. The script was proceeding to check for a 5881 usable configuration.</li> 5882 5883 <li>add <code>xterm+tmux</code> building block to terminfo 5884 (adapted from changes proposed by Ailin Nemui and Nicholas 5885 Marriott).</li> 5886 5887 <li>improve discussion of <code>faceName</code> resource in 5888 manpage (adapted from suggestions by Jens Schweikhardt).</li> 5889 5890 <li>correct mapping of shifted up/down cursor-keys in termcap 5891 function-keys mode, i.e., resource 5892 <code>tcapFunctionKeys</code> (patch by Gertjan Halkes).</li> 5893 5894 <li>update AIX case in <code>CF_XOPEN_SOURCE</code> configure 5895 macro to add release 7.x.</li> 5896 5897 <li>modify ifdef's in <code>xterm_io.h</code> for 5898 <code>__hpux</code> to force that to use the hacked SYSV 5899 support in that file. This fixes a problem with a non-blocking 5900 socket call (patch by Paul Lampert).</li> 5901 5902 <li>improve filtering of desktop category scanning, to exclude 5903 XFCE.</li> 5904 5905 <li>modify configure script to work with systems that have both 5906 ncurses (or other terminfo) as well as a real termcap library, 5907 e.g., Slackware (report by Andrew Watts).</li> 5908 5909 <li>modify configure script to work around special case where 5910 user's environment adds compiler flags to the <code>CC</code> 5911 variable (prompted by report by Paul Lampert).</li> 5912 5913 <li>amend change for Debian #110226 so that "-h" or "-v" 5914 options cause an exit, rather than simply printing to stdout 5915 while the window is displayed (Debian #629358).</li> 5916 5917 <li>add response for <code>DECRQSS</code> which gives the 5918 setting for <code>DECSCUSR</code>.</li> 5919 5920 <li>modify AllocateTermColor() to handle 5921 <code>XtDefaultForeground</code> and 5922 <code>XtDefaultBackground</code>, which are not recognized by 5923 <code>XParseColor</code>. For example, this fixes the use of 5924 OSC 112 when no explicit cursor color was set (report by 5925 Ailin Nemui).</li> 5926 5927 <li>handle special-case of <code>KeyPress</code> translated to 5928 <code>popup-menu</code> action (Ubuntu #756273).</li> 5929 </ul> 5930 5931 <h1><a name="xterm_270" id="xterm_270">Patch #270 - 5932 2011/04/26</a></h1> 5933 5934 <ul> 5935 <li>build-fix, e.g., for using <code>imake</code> on platforms 5936 which use the termcap library.</li> 5937 5938 <li>modify <code>utf8</code> resource to accept a name.</li> 5939 5940 <li>mention default for <code>fontWarnings</code> in manpage 5941 (report by Werner Scheinast).</li> 5942 5943 <li>split "UTF-8" menu entry into "UTF-8 Encoding" and "UTF-8 5944 Fonts" (prompted by discussion with Werner Scheinast).</li> 5945 5946 <li>gray-out font-menu entries when a font fails to load, e.g., 5947 a bitmap font is not installed.</li> 5948 5949 <li>improve behavior when there is no app-defaults file: 5950 <ul> 5951 <li>set the <code>toolBar</code> resource to false</li> 5952 5953 <li>gray-out the font menu entries where no resource is 5954 found.</li> 5955 </ul> 5956 </li> 5957 5958 <li>add configure option <code>--with-desktop-category</code> 5959 to allow customization of the ".desktop" files.</li> 5960 5961 <li>build-fix for the <code>install-desktop</code> 5962 makefile-rule, when the source/build directories differ (patch 5963 by Loïc Minier).</li> 5964 5965 <li>add menu entry and corresponding resource which can be used 5966 to suppress all bold-fonts (discussion with Jan 5967 Engelhardt).</li> 5968 5969 <li>make internal line-size value consistent with allocated 5970 sizes of character and related arrays to ensure that bulk 5971 copying of line data, e.g., in scrolling, accounts for the 5972 padding used for pointer alignment (adapted from patch by 5973 Rajesh Mandalemula, also reported by Ali Bahar).</li> 5974 5975 <li>widen ifdef for screen-resizing logic from <a href= 5976 "#xterm_176">patch #176</a> changes to send 5977 <code>SIGWINCH</code> to process group to include any system 5978 supporting <code>ioctl(*,TIOCGPGRP,*)</code> (prompted by 5979 linux-specific patch in OpenSUSE rpm package).</li> 5980 5981 <li>add <code>printModeOnXError</code> and 5982 <code>printFileOnXError</code> resources, which allow the user 5983 to specify that xterm will write the contents of its screen to 5984 a file if it is exiting due to an X error (Debian 5985 #280457).</li> 5986 5987 <li>restore logic that made reverse-video apply to the 5988 scrollbar's foreground/background, broken in <a href= 5989 "#xterm_158">patch #158</a> (report by Bryan Ischo).</li> 5990 5991 <li>amend some of the window operations parameter-checks added 5992 in <a href="#xterm_251">patch #251</a> for the push/pop title 5993 feature, to allow the parameters used for window resizing to be 5994 -1's, which makes the corresponding values ignored rather than 5995 using the window's maximum width/height (report by Noah 5996 Friedman).</li> 5997 5998 <li>correct order of initialization for 5999 <code>translations</code> vs <code>fullscreen</code> resources 6000 to enable a special case which omits the Alt-Enter translation 6001 when <code>fullscreen</code> is disabled (Debian #612978).</li> 6002 6003 <li>update config.guess, config.sub</li> 6004 </ul> 6005 6006 <h1><a name="xterm_269" id="xterm_269">Patch #269 - 6007 2011/02/19</a></h1> 6008 6009 <ul> 6010 <li>build-fixes for <code>imake</code> (report by Heiko 6011 Berges).</li> 6012 6013 <li>modify autoconf macro CF_PKG_CONFIG to work with 6014 cross-compile environments (patch by Thierry Reding).</li> 6015 6016 <li>modify <code>MapToColorMode()</code> to favor bold over 6017 underline, matching the precedence used before <a href= 6018 "#xterm_252">patch #252</a> (report/analysis by Nicolas 6019 George).</li> 6020 6021 <li>add <code>omitTranslation</code> resource, which can be 6022 used to suppress the default translations for these features: 6023 <ul> 6024 <li>fullscreen</li> 6025 6026 <li>scroll-lock</li> 6027 6028 <li>shift-fonts</li> 6029 6030 <li>wheel-mouse</li> 6031 </ul> 6032 </li> 6033 6034 <li>make the fullscreen feature configurable (Debian #612978) 6035 <ul> 6036 <li>add it to the configurable list 6037 <code>disallowedWindowOps</code>.</li> 6038 6039 <li>add command-line option <code>-fullscreen</code> to 6040 allow the feature to be enabled at startup.</li> 6041 6042 <li>add resource <code>fullscreen</code> to control whether 6043 the feature is active or may be enabled.</li> 6044 </ul> 6045 </li> 6046 6047 <li>modify <code>probe_netwm_fullscreen_capability</code> for 6048 64-bit machines. Contrary to <code>XGetWindowProperty</code> 6049 manpage, that function returns 32-bit data packed as 6050 <code>long</code>'s.</li> 6051 6052 <li>eliminate copy of <code>name</code> resource, which was 6053 otherwise used only to give the terminal-description name for 6054 the tcap-query feature. Use the actual <code>$TERM</code> value 6055 instead, as derived from <code>termName</code> resource, 6056 etc.</li> 6057 6058 <li>eliminate an old inconsistency with error messages, some 6059 used the <code>-name</code> option, while others used 6060 <code>argv[0]</code>. The latter is now used consistently.</li> 6061 6062 <li>improve configure check for rpath-hack, to improve builds 6063 on systems where gcc will not search /usr/local/lib, etc.</li> 6064 6065 <li>build-fix for Xaw3d configuration (report by H Merijn 6066 Brand).</li> 6067 6068 <li>update config.guess, config.sub</li> 6069 </ul> 6070 6071 <h1><a name="xterm_268" id="xterm_268">Patch #268 - 6072 2011/02/10</a></h1> 6073 6074 <ul> 6075 <li>fix an inconsistency of the "Enable Reverse Video" checkbox 6076 in the VT Options menu. This also removes a special case added 6077 in <a href="#xterm_217">patch #217</a> which limited the effect 6078 of the <code>reverseVideo</code> resource (Debian 6079 #603808).</li> 6080 6081 <li>amend decoding of misformed UTF-8 sequences to avoid 6082 absorbing valid characters as documented in Unicode 6.0 section 6083 3.9 (report by Keith Winstein).</li> 6084 6085 <li>do not set urgency hint when window already has focus 6086 (patch by Dimitrios Christidis).</li> 6087 6088 <li>amend extended mouse-coordinate mode from <a href= 6089 "#xterm_262">patch #262</a> changes to include the <em>Cb</em> 6090 button-code, which also may be greater than 127 (report by 6091 Ailin Nemui).</li> 6092 6093 <li>ensure that underline-cursor is visible when an application 6094 happens to set the background color (report by Christian 6095 Weisgerber).</li> 6096 6097 <li>add feature for <a href= 6098 "http://www.davidsimmons.com/soft/xtermhacks/xterm-fullscreen.patch"> 6099 full-screen toggling</a> using either Alt-Enter or a menu 6100 selection (integrated patch by Dave Simmons).</li> 6101 6102 <li>add missing logic to handle reallocation of FIFO index for 6103 the "UTF-8" menu entry (report by David Holland, NetBSD 6104 #44344).</li> 6105 6106 <li>add makefile rules <code>docs-ctlseqs</code>, 6107 <code>docs-xterm</code>, etc.</li> 6108 6109 <li>correct typo in description of DECRPM in control sequences 6110 document (report by Ailin Nemui).</li> 6111 </ul> 6112 6113 <h1><a name="xterm_267" id="xterm_267">Patch #267 - 6114 2010/11/20</a></h1> 6115 6116 <ul> 6117 <li>minor formatting changes to ctlseqs.ms to simplify a script 6118 which extracts the feature information. See the results in 6119 <a href= 6120 "https://invisible-island.net/xterm/xterm.faq.html#compare_versions"> 6121 Comparing versions, by counting controls</a> in the xterm 6122 FAQ.</li> 6123 6124 <li>add <code>docs-clean</code> makefile rule.</li> 6125 6126 <li>add <code>copy-selection</code> action (request by Timo 6127 Juhani Lindfors, Debian #588785).</li> 6128 6129 <li>trim leading/trailing blanks from string used for 6130 "Selection" font-menu data.</li> 6131 6132 <li>trim leading/trailing blanks from color resource 6133 values.</li> 6134 6135 <li>configure script improvements: 6136 <ul> 6137 <li>add workaround for removal of X11 dependency from Xt's 6138 package file (report by Robert Hooker).</li> 6139 6140 <li>add workaround for removal of fontconfig dependency 6141 from Xft's package file (report by Jeremy Huddleston).</li> 6142 6143 <li>add workaround for removal of Xmu dependency from Xaw's 6144 package file (report by Jeremy Huddleston).</li> 6145 6146 <li>improve workaround in <code>CF_X_TOOLKIT</code> macro, 6147 checking for other possible packages where Xt's 6148 dependencies may be given.</li> 6149 6150 <li>prefer <code>${name:=value}</code> to 6151 <code>${name-value}</code>, since recent bash changes break 6152 legacy support for that feature.</li> 6153 </ul> 6154 </li> 6155 </ul> 6156 6157 <h1><a name="xterm_266" id="xterm_266">Patch #266 - 6158 2010/10/24</a></h1> 6159 6160 <ul> 6161 <li>add rpm and dpkg scripts, for testing.</li> 6162 6163 <li>more fixes for Debian #600707 (report by Cyril 6164 Brulebois).</li> 6165 </ul> 6166 6167 <h1><a name="xterm_265" id="xterm_265">Patch #265 - 6168 2010/10/22</a></h1> 6169 6170 <ul> 6171 <li>fix a regression in fontname logic from <a href= 6172 "#xterm_263">patch #263</a> changes (Debian #600707, reported 6173 by Vincent Lefèvre).</li> 6174 6175 <li>revert modification of any-event/any-button protocol from 6176 <a href="#xterm_263">patch #263</a> changes. It interferes with 6177 selection using a shifted mouse button (reports by Neil Bird, 6178 Bram Moolenaar).</li> 6179 </ul> 6180 6181 <h1><a name="xterm_264" id="xterm_264">Patch #264 - 6182 2010/10/14</a></h1> 6183 6184 <ul> 6185 <li>replace a null-pointer check with check for empty string in 6186 <code>xtermOpenFont</code>, to eliminate a warning message from 6187 <a href="#xterm_263">patch #263</a> changes.</li> 6188 6189 <li>build-fix for <a href="#xterm_263">patch #263</a> when 6190 toolbar is not configured (patch by Chris Clayton) (reports by 6191 Robby Workman, David Wood).</li> 6192 </ul> 6193 6194 <h1><a name="xterm_263" id="xterm_263">Patch #263 - 6195 2010/10/13</a></h1> 6196 6197 <ul> 6198 <li>corrected initialization of "misc" resource values, to 6199 ensure that xterm has allocated a copy of strings which may not 6200 have been malloc'd by the X library (Debian #600129).</li> 6201 6202 <li>modify handling of any-event/any-button mouse protocol; it 6203 now is active with any combination of key-modifiers.</li> 6204 6205 <li>add debugging feature <code>showWrapMarks</code>, which 6206 marks lines which xterm knows are wrapped, showing where a 6207 double-click will select past the end of a line.</li> 6208 6209 <li>build-fix to address change in include-guards for 6210 <code>Xlib.h</code> in ongoing Xorg edits (patch by Jeremy 6211 Huddleston).</li> 6212 6213 <li>improve <code>pointerMode</code> by continuing to watch for 6214 motion events after mouse tracking is disabled if the pointer 6215 is hidden (Debian #594856).</li> 6216 6217 <li>further extend initialization for active-icon font to check 6218 if the font was not loaded successfully, to retry with 6219 <code>font1</code>, or as even (if TrueType fonts are used) to 6220 use a TrueType font. The retries are to help with cases as in 6221 <a href="#xterm_241">patch #241</a> where the bitmap fonts are 6222 not available.</li> 6223 6224 <li>fix special case of active-icon used when TrueType font is 6225 specified for the xterm window, from <a href="#xterm_261">patch 6226 #261</a> change. In that case, the default font's size was used 6227 for layout of the active icon's window (Debian #591265).</li> 6228 </ul> 6229 6230 <h1><a name="xterm_262" id="xterm_262">Patch #262 - 2010/8/30</a></h1> 6231 6232 <ul> 6233 <li>fix a case where changing the cursor color via escape 6234 sequences did not immediately update the screen (report by 6235 Andreas Wagner).</li> 6236 6237 <li>implement ANSI and DEC request-mode control sequences. The 6238 latter includes the xterm-specific private modes such as the 6239 mouse mode. The feature is ifdef'd with the rectangle 6240 operations since its decoding overlaps that feature.</li> 6241 6242 <li>correct typo in ctlseqs.ms for response of OSC 21 (patch by 6243 Kevin Schoedel).</li> 6244 6245 <li>improve discussion of mouse tracking in ctlseqs.ms</li> 6246 6247 <li>increase an array limit used in reporting mouse events 6248 (report by Ryan Johnson).</li> 6249 6250 <li>add extended mouse-coordinates mode, allowing up to 6251 2015x2015 windows, using UTF-8 encoding (patch by Ryan 6252 Johnson).</li> 6253 6254 <li>modify manpage hyphens to conform with <a href= 6255 "http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html"> 6256 Debian</a>.</li> 6257 </ul> 6258 6259 <h1><a name="xterm_261" id="xterm_261">Patch #261 - 2010/6/28</a></h1> 6260 6261 <ul> 6262 <li>fix regression in <code>renderFont</code> logic, from 6263 <a href="#xterm_260">patch #260</a> changes (report by Joseph 6264 Quinsey).</li> 6265 </ul> 6266 6267 <h1><a name="xterm_260" id="xterm_260">Patch #260 - 2010/6/20</a></h1> 6268 6269 <ul> 6270 <li>modify <code>plink.sh</code> to work around problem linking 6271 to recent PCRE libraries.</li> 6272 6273 <li>extend <code>renderFont</code> resource to allow deferred 6274 switch to TrueType fonts without affecting existing resource 6275 settings (Debian #585620).</li> 6276 6277 <li>modify configure macro CF_X_TOOLKIT to work around omission 6278 of ICE library from ".pc" file (report by Miroslav 6279 Lichvar).</li> 6280 6281 <li>change configure script default for 6282 <code>--enable-broken-st</code> i.e., the 6283 <code>brokenStringTerm</code> feature) to normally enable it. 6284 If the corresponding resource is enabled, this feature 6285 eliminates an apparent freeze of xterm when sending mis-encoded 6286 data to the screen (Debian #584801).</li> 6287 6288 <li>document in manpage some actions which were overlooked: 6289 <ul> 6290 <li>readline-button</li> 6291 6292 <li>scroll-lock</li> 6293 6294 <li>set-8-bit-control</li> 6295 </ul> 6296 </li> 6297 6298 <li>undo a change to limit-check in <code>ScrnRefresh</code> in 6299 <a href="#xterm_257">patch #257</a>, which broke 6300 <code>fastScroll</code> feature (Debian #584841).</li> 6301 6302 <li>modify handling of <code>brokenLinuxOSC</code> and 6303 <code>brokenStringTerm</code> to also sound the bell.</li> 6304 6305 <li>add control/D and control/Q to controls which will cause 6306 early exit from control string per 6307 <code>brokenStringTerm</code> resource.</li> 6308 6309 <li>improve documentation of <code>brokenStringTerm</code> 6310 resource in manpage.</li> 6311 </ul> 6312 6313 <h1><a name="xterm_259" id="xterm_259">Patch #259 - 2010/6/5</a></h1> 6314 6315 <ul> 6316 <li>modify configure check for <a href= 6317 "https://invisible-island.net/luit/">luit</a> to include new 6318 aliases for the program (<code>xterm-filter</code> and 6319 <code>bluit</code>).</li> 6320 6321 <li>add workaround in <code>xtermClearLEDs()</code> to account 6322 for Xkb's override, making vttest's LED demo reset the scroll 6323 lock.</li> 6324 6325 <li>filter out client-message events when deciding whether to 6326 hide cursor, e.g., when using SCIM (patch/report by anonymous 6327 user).</li> 6328 6329 <li>improve description of <code>-bd</code> option in manpage 6330 (report by Guy Daniel Clotilde).</li> 6331 6332 <li>modify configure checks for PCRE and other libraries to use 6333 <code>pkg-config</code>, if available.</li> 6334 6335 <li>amend change from <a href="#xterm_252">patch #252</a>, to 6336 take <code>veryColorColors</code> resource into account when 6337 checking <code>colorBDMode</code> resource for TrueType fonts 6338 (report by anonymous user).</li> 6339 6340 <li>add <code>vttests/query-fonts.pl</code> script for 6341 demonstrating the <code>OSC 50</code> font query.</li> 6342 6343 <li>improve manpage discussion of Scroll Lock feature.</li> 6344 6345 <li>improve configure macros CF_GCC_VERSION and 6346 CF_GCC_WARNINGS.</li> 6347 6348 <li>fix warnings for "clang --analyze".</li> 6349 6350 <li>change default for <code>allowScrollLock</code> resource to 6351 <code>false</code>, noting that the supposedly unused key has 6352 been useful for various rebindings (Debian #580946).</li> 6353 </ul> 6354 6355 <h1><a name="xterm_258" id="xterm_258">Patch #258 - 2010/5/1</a></h1> 6356 6357 <ul> 6358 <li>add pointer-checks in <code>ScrnRefresh</code> to fix a 6359 case in rapid scrolling where an empty record is fetched from 6360 the scrollback FIFO.</li> 6361 </ul> 6362 6363 <h1><a name="xterm_257" id="xterm_257">Patch #257 - 2010/4/22</a></h1> 6364 6365 <ul> 6366 <li>correct ctlseqs.ms description of OSC 17 and OSC 19 (patch 6367 by Emanuele Giaquinta).</li> 6368 6369 <li>corrected logic for <code>menuLocale</code> resource; the 6370 <code>setlocale</code> function returns the original locale 6371 only when querying.</li> 6372 6373 <li>improve filtering of translations resource, narrowing the 6374 scope of the <code>alwaysUseMods</code> to address only the 6375 translations that would cause a key to be sent to the host 6376 (report by Andrew Gaylard).</li> 6377 6378 <li>change default value of <code>menuLocale</code> resource to 6379 "C", to work around longstanding <a href= 6380 "https://invisible-island.net/xterm/xterm.faq.html#slow_menus">Xorg 6381 bug</a>.</li> 6382 6383 <li>modify handling of <code>scrollKey</code> feature to ignore 6384 XON/XOFF keys.</li> 6385 6386 <li>implement scroll-lock feature.</li> 6387 6388 <li>revise memory allocation in UTF8toLatin1() to fix an 6389 out-of-bounds index (Mandriva #54531).</li> 6390 6391 <li>compute value for first wide-character rather than assuming 6392 it is 256, fixes problem with <code>-cjk_width</code> 6393 introduced in patches <a href="#xterm_242">242</a> and <a href= 6394 "#xterm_249">249</a> (report by Thomas Wolff).</li> 6395 6396 <li>improve configure script: 6397 <ul> 6398 <li>corrected check for <code>_XOPEN_SOURCE</code> for 6399 OpenSolaris.</li> 6400 6401 <li>when possible, add rpath option for libraries in 6402 unusual places</li> 6403 6404 <li>add configure option <code>--disable-rpath-hack</code> 6405 to control whether the rpath option can be added.</li> 6406 </ul> 6407 </li> 6408 6409 <li>modify <code>AllocateTermColor()</code> to separate 6410 initialization from control sequences, fixing problem from 6411 <a href="#xterm_254">patch #254</a> changes where enabling 6412 <code>allowSendEvents</code> resource prevents setting cursor 6413 color on command-line (Debian #572928).</li> 6414 6415 <li>amend logic from <a href="#xterm_185">patch #185</a> to not 6416 reallocate cell-array if processing 6417 <code>ESC % G</code> to switch from UTF-8 if already 6418 in ISO-8859-1 character set (report by Michael Koehne).</li> 6419 6420 <li>fix to avoid calling <code>XmuInternStrings()</code> with 6421 zero count (report by Johan Bockgård).</li> 6422 6423 <li>fix build when --disable-ansi-color configure option is 6424 used.</li> 6425 6426 <li>fix build when neither OPT_TCAP_QUERY or OPT_TCAP_FKEYS is 6427 defined (patch by Matthieu Herrb)</li> 6428 </ul> 6429 6430 <h1><a name="xterm_256" id="xterm_256">Patch #256 - 2010/3/6</a></h1> 6431 6432 <ul> 6433 <li>add TerminalEmulator to desktop category files.</li> 6434 6435 <li>modify <code>sinstall.sh</code> to ignore the "." appended 6436 to permissions by selinux.</li> 6437 6438 <li>change app-defaults organization, installing UXTerm-color 6439 and KOI8XTerm-color for consistent behavior regarding 6440 <code>customization: color</code> (prompted by discussion 6441 in Ubuntu #421261).</li> 6442 6443 <li>fix typo in <code>minstall.sh</code> from <a href= 6444 "#xterm_255">patch #255</a> changes, and add case for 6445 <code>/var/run</code> needed for full path of utmp (report by 6446 Julien Cristau).</li> 6447 6448 <li>minor fix to xterm manpage, remove a comment stating that 6449 margin bell can be changed via the VT Options menu. That was 6450 replaced in <a href="#xterm_225">patch #225</a></li> 6451 6452 <li>add a "docs" rule to makefile.</li> 6453 6454 <li>fix initialization of Atom used for <code>XkbBell</code> 6455 feature from <a href="#xterm_243">patch 243</a> changes. Unlike 6456 the other calls to <code>XInternAtom()</code>, in this case the 6457 flag telling X to create the Atom was unset (patch by Chris 6458 Adams).</li> 6459 </ul> 6460 6461 <h1><a name="xterm_255" id="xterm_255">Patch #255 - 2010/1/21</a></h1> 6462 6463 <ul> 6464 <li>rename <code>install.sh</code> to <code>install-sh</code> 6465 in case suffix-rules might interfere.</li> 6466 6467 <li>extend range for <code>convertToUTF8</code> function to 6468 full 31-bits, to use with printing, etc.</li> 6469 6470 <li>improve manpage by checking for actual locations of 6471 utmp/wtmp files (Debian #562640).</li> 6472 6473 <li>modify configure macro CF_XOPEN_SOURCE to remove -D's 6474 before adding the same name rather than relying on -U's, to 6475 reduce redefinition warnings for some platforms that have 6476 conflicting definitions in headers.</li> 6477 6478 <li>correct logic used to switch to alternate screen using 6479 FIFO-lines configuration (Debian #565772).</li> 6480 6481 <li>update config.guess, config.sub</li> 6482 </ul> 6483 6484 <h1><a name="xterm_254" id="xterm_254">Patch #254 - 2010/1/6</a></h1> 6485 6486 <ul> 6487 <li>add a configure-check to eliminate <code>install-ti</code> 6488 rule from Makefile when the system has no tic (terminfo 6489 compiler) program. This lets one use the 6490 <code>install-full</code> rule more consistently.</li> 6491 6492 <li>amend change to WriteText() function in <a href= 6493 "#xterm_252">patch #252</a> to take into account the 6494 <code>colorAttrMode</code> resource (report by Krzysztof 6495 Kotlenga).</li> 6496 6497 <li>document <code>titleModes</code> resource in manpage, added 6498 in <a href="#xterm_252">patch #252</a>.</li> 6499 6500 <li>modify tcap-query table entries for shifted up/down cursor 6501 keys to match ncurses convention.</li> 6502 6503 <li>improve lookup of termcap-query data, allowing for 6504 duplicate keycodes versus missing entries.</li> 6505 6506 <li>add control sequence which can be used to modify the 6507 terminal data used for the termcap-keyboard.</li> 6508 6509 <li>improve portability of tcap-query feature, using terminfo 6510 functions in preference to termcap on systems having 6511 terminfo.</li> 6512 6513 <li>improve font-setting/querying control 6514 (<code>OSC 50</code>): 6515 <ul> 6516 <li>when TrueType font is selected, the TrueType 6517 <code>faceName</code> will be set, rather than the bitmap 6518 font.</li> 6519 6520 <li>when TrueType font is selected, querying returns the 6521 name of the TrueType font.</li> 6522 6523 <li>querying a font recognizes the relative-font convention 6524 that setting a font could use.</li> 6525 </ul> 6526 </li> 6527 6528 <li>add menu-entry for allowColorOps.</li> 6529 6530 <li>add new resources for fine-tuning menu entries: 6531 <code>allowColorOps</code>, <code>disallowedColorOps</code>, 6532 <code>disallowedFontOps</code> and 6533 <code>disallowedTcapOps</code>.</li> 6534 6535 <li>correct logic for disabling the "TrueType Fonts" menu item; 6536 it was not ensuring that the <code>faceName</code> resource 6537 value was non-empty.</li> 6538 6539 <li>implement VT520-style controls <code>DECSMBV</code> and 6540 <code>DECSWBV</code> for setting the margin- and warning-bell 6541 volume.</li> 6542 6543 <li>fix a minor error from <a href="#xterm_243">patch #243</a> 6544 which made the zIconBeep feature use a minor-error tone rather 6545 than an informational tone.</li> 6546 6547 <li>add a null-pointer check for the case where 6548 <code>renderFont</code> resource is true, but 6549 <code>faceName</code> resource is unset, used in logic to strip 6550 "xft:" prefix from <a href="#xterm_251">patch #251</a> changes 6551 (patch by Michael Riepe).</li> 6552 6553 <li>add special case to configure CF_XOPEN_SOURCE macro to use 6554 extensions on Darwin (patch by Dennis Preiser).</li> 6555 6556 <li>improve configure checks for regular expressions header and 6557 library</li> 6558 6559 <li>update config.guess, config.sub</li> 6560 </ul> 6561 6562 <h1><a name="xterm_253" id="xterm_253">Patch #253 - 6563 2009/12/10</a></h1> 6564 6565 <ul> 6566 <li>add a null-pointer check in <code>getPrinterFlags()</code> 6567 per changes in <a href="#xterm_252">patch #252</a>.</li> 6568 6569 <li>add a null-pointer check, needed in UTF-8 mode for Xft 6570 fonts after changes in <a href="#xterm_252">patch #252</a> 6571 (patch by Alan Coopersmith).</li> 6572 6573 <li>correct size when clearing struct for tek4014 (patch by 6574 Jochen Voss).</li> 6575 6576 <li>parenthesize expression in <code>MoreRows</code> macro, 6577 fixing a limit check added in <a href="#xterm_251">patch 6578 #251</a> (Debian #560039).</li> 6579 </ul> 6580 6581 <h1><a name="xterm_252" id="xterm_252">Patch #252 - 2009/12/7</a></h1> 6582 6583 <ul> 6584 <li>modify title-querying logic to support retrieval of titles 6585 encoded using UTF-8.</li> 6586 6587 <li>add new "title-modes" control sequence for controlling 6588 whether window/icon titles can be set or queried using UTF-8, 6589 optionally encoded in a hexadecimal string.</li> 6590 6591 <li>use <code>mkdir -p</code> rather than 6592 <code>mkdirs.sh</code> (prompted by discussion of mawk by 6593 Aleksey Cheusov).</li> 6594 6595 <li>add appropriate copyright/license notices to the bulk of 6596 files lacking same, and modify to use identical terms in others 6597 which used different wording. The main exceptions are the files 6598 contributed by Markus Kuhn, who appears to prefer public domain 6599 distribution, noting that I have modified/improved several of 6600 these without changing the terms of distribution (request by 6601 Jari Aalto).</li> 6602 6603 <li>add control sequences for resetting the "dynamic" colors to 6604 their default values.</li> 6605 6606 <li>add control sequences for resetting the "special" colors to 6607 their default values.</li> 6608 6609 <li>add control sequences for setting the "special" colors such 6610 as <code>colorBD</code> (bold).</li> 6611 6612 <li>add overlooked case for setting highlight foreground color 6613 with the dynamic-colors control.</li> 6614 6615 <li>add <code>OSC 104</code>, for resetting ANSI/16/88/256 6616 colors to default.</li> 6617 6618 <li>reset ANSI/16/88/256 colors to default in soft/hard reset 6619 functions.</li> 6620 6621 <li>strip "xft:" prefix from <code>faceName</code> and 6622 <code>faceNameDoublesize</code> resource values,</li> 6623 6624 <li>add <code>DECSCUSR</code> (discussion with Andy 6625 Koppe).</li> 6626 6627 <li>add check/warning on failure to load font, to see if the 6628 name looks like an Xft pattern rather than XLFD. This can 6629 happen if someone happens to modify their X resource settings 6630 for programs that read data from xterm's namespace.</li> 6631 6632 <li>modify handling of <code>print</code> and 6633 <code>print-everything</code> actions to allow the various 6634 printer flags to be overridden by supplying parameters.</li> 6635 6636 <li>add resource <code>printerNewLine</code> (request by Ovidiu 6637 Gheorghioiu).</li> 6638 6639 <li>minor cleanup, finish using <code>TScreenOf()</code> and 6640 <code>TekScreenOf()</code> macros introduced in <a href= 6641 "#xterm_224">patch #224</a>.</li> 6642 6643 <li>improve checks in ShowCursor/HideCursor to get the 6644 background color, particularly when 6645 <code>highlightReverse</code> resource is used (reports by Jan 6646 Engelhardt, Christian Weisgerber).</li> 6647 6648 <li>correct <code>checkVeryBoldAttr</code> to omit comparison 6649 of foreground color to special color values used for 6650 <code>color<XX></code> resources (report by Jan 6651 Engelhardt).</li> 6652 6653 <li>make <code>colorBDMode</code> and <code>colorULMode</code> 6654 resources work with TrueType configuration (report by Jan 6655 Engelhardt).</li> 6656 </ul> 6657 6658 <h1><a name="xterm_251" id="xterm_251">Patch #251 - 6659 2009/11/11</a></h1> 6660 6661 <ul> 6662 <li>add window-ops controls to push/pop icon and/or window 6663 labels on a stack.</li> 6664 6665 <li>minor fixes to align termcap file with terminfo.</li> 6666 6667 <li>add resource <code>disallowedWindowOps</code>, to allow 6668 fine-tuning of features to suppress with the 6669 <code>allowWindowOps</code> resource (prompted by discussion 6670 with Bram Moolenaar).</li> 6671 6672 <li>add makefile rules for resize-manpage to pdf, etc.</li> 6673 6674 <li>further improve limit-checks in select/paste (Mandriva 6675 #54531).</li> 6676 </ul> 6677 6678 <h1><a name="xterm_250" id="xterm_250">Patch #250 - 6679 2009/10/13</a></h1> 6680 6681 <ul> 6682 <li>add check and error-message for fonts that have no 6683 printable values in the ISO-8859-1 range (Debian #542434).</li> 6684 6685 <li>some compiler-warning cleanup, in particular workaround for 6686 defective implementation of gcc's attribute warn_unused_result 6687 (report by Bram Moolenaar).</li> 6688 6689 <li>improve estimate of single-column width for packed TrueType 6690 fonts by ignoring extents for codes 127 and 159.</li> 6691 6692 <li>improve line-drawing for TrueType fonts which happen to 6693 have defined glyphs which are <em>not</em> line-drawing in 6694 0..31 by assuming they're not, and just checking the existence 6695 of the Unicode codepoints. This makes it more likely that the 6696 user can override a misconfigured font using the "Line-Drawing 6697 Characters" menu entry.</li> 6698 6699 <li>limit minimum cell-width for packed font to maximum-advance 6700 reported by Xft. Some fonts are wider than that, even in the 6701 Latin-1 range (Debian #550497).</li> 6702 6703 <li>add list of direct-contributors in "THANKS" file.</li> 6704 6705 <li>stylistic changes to this file to help scripted extraction 6706 of list of contributors.</li> 6707 6708 <li>correct off-by-one in <code>okPosition</code> fix from 6709 <a href="#xterm_249">patch #249</a> limit-checks which 6710 prevented double-click selection on the bottom line of the 6711 screen (reports by Rajeev V. Pillai, Debian #550368).</li> 6712 6713 <li>add <code>-q</code> option to 6714 <code>vttests/256colors2.pl</code> and 6715 <code>vttests/88colors2.pl</code> to demonstrate bulk 6716 initialization of color palette.</li> 6717 6718 <li>improve the workaround from patch #188 by enabling 6719 resources for the 88-color model.</li> 6720 6721 <li>document in xterm manpage the limited availability of 6722 resources <code>color16</code> to <code>color255</code> as 6723 noted in <a href="#xterm_188">patch #188</a> (Ubuntu 6724 #438850).</li> 6725 </ul> 6726 6727 <h1><a name="xterm_249" id="xterm_249">Patch #249 - 2009/10/1</a></h1> 6728 6729 <ul> 6730 <li>change default for <code>allowWindowOps</code> resource to 6731 false. 6732 <!-- on the other hand, gnome-terminal, pterm and rxvt-unicode 6733 leave most of the related functionality enabled ;-) --></li> 6734 6735 <li>add limit-checks for result of visual_width() function, 6736 needed from <a href="#xterm_242">patch #242</a> and exposed by 6737 #244 changes (Debian #548321).</li> 6738 6739 <li>improve limit-checks in select/paste.</li> 6740 6741 <li>fix a remaining bug from <a href="#xterm_230">patch 6742 #230</a> changes for displaying multi-column characters in a 6743 proportional font (report by Chris Jones).</li> 6744 6745 <li>add new resource forcePackedFont and menu entry "Packed 6746 Font" to control whether to use the font's minimum (default) or 6747 maximum width when those differ. The workaround which xterm 6748 uses to accommodate proportional fonts is not necessary with 6749 certain fonts such as unifont which happen to store a mixture 6750 of multicolumn glyphs (report by Chris Jones).</li> 6751 6752 <li>fix an (old) bug which did not restart the timer for 6753 blinking text if the only blinking text was temporarily 6754 scrolled out of view, e.g., using the scrollbar.</li> 6755 6756 <li>fix an (old) flaw in the delete-line operation where the 6757 text which is scrolled into view while the display is scrolled 6758 up was not repainted.</li> 6759 6760 <li>improve delete-line and insert-line operations, retaining 6761 selection when the selection does not intersect the 6762 deleted/inserted lines.</li> 6763 6764 <li>fix an (old) off-by-one error when an application cleared 6765 above the cursor position while the display was scrolled up, 6766 that would leave an extra line of text uncleared.</li> 6767 6768 <li>fix a similar problem where the double-size attribute would 6769 not be reset when clearing the screen while the display was 6770 scrolled up.</li> 6771 6772 <li>fix an indexing error which would occur if an application 6773 cleared a line while the display was scrolled up and was also 6774 in UTF-8 mode (Redhat #524503). The error was from <a href= 6775 "#xterm_228">patch #228</a> but more visible after changes from 6776 <a href="#xterm_244">patch #244</a>.</li> 6777 </ul> 6778 6779 <h1><a name="xterm_248" id="xterm_248">Patch #248 - 2009/9/11</a></h1> 6780 6781 <ul> 6782 <li>fix an overlooked adjustment for selecting double-width 6783 characters in the narrow-character configuration.</li> 6784 6785 <li>eliminate uses of <code>XTERM_CELL</code> and 6786 <code>XTERM_CELLC</code> where an appropriate 6787 <code>LineData</code> pointer is available.</li> 6788 6789 <li>correct expression in <code>okScrnRow</code> macro, making 6790 selections give the length of lines below the visible screen 6791 (report by Stuart Henderson).</li> 6792 6793 <li>correct logic used to improve performance of missing-glyph 6794 check, which did not handle line-drawing characters (Debian 6795 #545220).</li> 6796 </ul> 6797 6798 <h1><a name="xterm_247" id="xterm_247">Patch #247 - 2009/8/30</a></h1> 6799 6800 <ul> 6801 <li>add ifdef's and check for openpty() on DragonFly (patch by 6802 Alex Hornung).</li> 6803 6804 <li>correct calculation for size of line's data block, which 6805 was sometimes off-by-one when configured using 6806 <code>--enable-16bit-chars</code> (report by H Merijn 6807 Brand).</li> 6808 6809 <li>fix indexing error in print-everything feature from 6810 <a href="#xterm_246">patch #246</a> (patch by Ovidiu 6811 Gheorghioiu).</li> 6812 </ul> 6813 6814 <h1><a name="xterm_246" id="xterm_246">Patch #246 - 2009/8/16</a></h1> 6815 6816 <ul> 6817 <li>remove obsolete logic for saving/restoring wrapping flags, 6818 which did not work on 64-bit platform. Wrapping flags (stored 6819 in the line-index) are now copied with line-data (Debian 6820 #541160).</li> 6821 6822 <li>modify comments in app-defaults files to avoid problem with 6823 C preprocessor used by <code>xrdb</code> (Debian #541603).</li> 6824 6825 <li>restore special case in <code>makeColorPair</code>, needed 6826 for <code>colorBDMode</code> resource (Debian #541089).</li> 6827 6828 <li>correct <code>SetLineFlags()</code> macro, broken in 6829 <a href="#xterm_244">patch #244</a> when recoding to avoid 6830 gcc-specific bitfields (Debian #541236).</li> 6831 6832 <li>modify initialization of screen buffers to ensure that 6833 pointers align to int-boundaries. This fixes a problem 6834 introduced in <a href="#xterm_244">patch #244</a> where the 6835 color- and character-arrays (stored after the video-attributes 6836 in each row) might be misaligned (report by Rajeev V 6837 Pillai).</li> 6838 6839 <li>add limit-check in <code>ScrnRefresh</code> for handling 6840 saved-lines from the circular buffer which are repainted on a 6841 screen whose width has increased. To improve performance, 6842 circular buffer entries are not resized (report by Rajeev V 6843 Pillai).</li> 6844 6845 <li>correct type for <code>CellColor</code> (a late change in 6846 <a href="#xterm_244">patch #244</a> to avoid gcc-specifc enums 6847 made that unsigned rather than unsigned short, for the 6848 256-color option).</li> 6849 6850 <li>fix typo in configure option --enable-16bit-chars (report 6851 by Rajeev V. Pillai).</li> 6852 </ul> 6853 6854 <h1><a name="xterm_245" id="xterm_245">Patch #245 - 2009/8/12</a></h1> 6855 6856 <ul> 6857 <li>correct a special case in saving FIFO-lines from <a href= 6858 "#xterm_244">patch #244</a>. If the screen was shrunk, xterm 6859 used the wrong amount for copying to FIFO-lines, and then used 6860 this amount to adjust the current row on the screen. That was 6861 both a visible defect (Debian #541109) as well as a potential 6862 addressing error (Debian #541132, Debian #541160, and Debian 6863 #541236).</li> 6864 6865 <li>add clarification in xterm manual about the various 6866 <code>allow<em>XXX</em>Ops</code> resources, which are disabled 6867 when the <code>allowSendEvents</code> resource is active (patch 6868 by Julien Cristau, Debian #531597).</li> 6869 </ul> 6870 6871 <h1><a name="xterm_244" id="xterm_244">Patch #244 - 2009/8/9</a></h1> 6872 6873 <ul> 6874 <li>refactored storage of saved-lines, providing a configure 6875 option to manage them as a FIFO (actually a circular buffer), 6876 improving performance. Added configure option 6877 <code>--enable-fifo-lines</code> to enable/disable the new 6878 feature (it is enabled by default).</li> 6879 6880 <li>added <code>fastScroll</code> resource, to amuse people who 6881 measure terminal emulator performance by <code>cat</code>'ing 6882 large files to the screen.</li> 6883 6884 <li>modify check in <code>readPtyData</code> from return values 6885 to provide exit on zero-bytes read from pty for FreeBSD, or 6886 eliminate high-CPU in "xterm-hold" processing (discussion with 6887 Ulrich Spoerlein, FreeBSD ports/136686). The check was 6888 originally modified to combine negative/zero values in 6889 XFree86-3.1.2E, 1996/05/06.</li> 6890 6891 <li>add configure option <code>--enable-16bit-chars</code> to 6892 provide wide-characters with 16-bits (rather than the default 6893 32-bits).</li> 6894 6895 <li>add <code>retryInputMethod</code> resource to allow 6896 configuring out the retries xterm uses to connect to 6897 non-responsive XIM server, to work around defective X 6898 configurations as noted in <a href= 6899 "http://mail-index.netbsd.org/tech-x11/2009/06/07/msg000511.html"> 6900 NetBSD mailing list</a>.</li> 6901 6902 <li>make regular-expression selection work for VT100 6903 double-sized characters.</li> 6904 6905 <li>improve layout when drawing missing characters in a 6906 proportional font, e.g., as boxes, to take into account whether 6907 they are double-width (report by Guilbert Stabilo on 6908 comp.unix.shell).</li> 6909 6910 <li>add capability for keypad-center (kb2/KA2) to termcap entry 6911 for xterm-new, as well as xterm-8bit, xterm-sun and xterm-vt220 6912 (FreeBSD conf/136336).</li> 6913 6914 <li>change default for <code>keepSelection</code> resource to 6915 true (prompted by discussion with David Muir Sharnoff).</li> 6916 6917 <li>remove a limit-check in ptydata.c, allowing Unicode values 6918 past 64k to be displayed using TrueType fonts (Debian 6919 #458432).</li> 6920 6921 <li>remove a vt52-specific ifdef to allow mapping F1-F4 to 6922 PF1-PF4 when vt52 support is not compiled (report by Olaf 6923 'Rhialto' Seibert).</li> 6924 6925 <li>save/restore line-wrapping flags when converting from 6926 ISO-8859-1 encoding to UTF-8 encoding, as well as when resizing 6927 screen.</li> 6928 6929 <li>remove extra adjustment of position in fix for Debian 6930 #418324.</li> 6931 6932 <li>modify default check for <code>mkWidth</code> resource to 6933 check for line-drawing characters, which are categorized as 6934 double-width in Solaris 10 (report by Sebastian Kayser).</li> 6935 6936 <li>add "print-everything" action (patch by Ovidiu 6937 Gheorghioiu).</li> 6938 6939 <li>start refactoring scrollback data using new getLineData() 6940 function.</li> 6941 6942 <li>demote recent change to Debian #252873 fix to experimental, 6943 ifdef'd out as <code>EXP_BOGUS_FG</code> (Debian #522141).</li> 6944 6945 <li>work around groff mapping of ASCII quotes using macros 6946 (requested by Reuben Thomas based on Colin Watson advice, fixes 6947 Debian #378700).</li> 6948 6949 <li>correct symbol used for default of 6950 <code>allowWindowOps</code> which was 6951 <code>DEF_ALLOW_FONT</code> rather than 6952 <code>DEF_ALLOW_WINDOW</code> (report by Matthieu Herrb).</li> 6953 6954 <li>amend fix for tek4014 from <a href="#xterm_243">patch 6955 #243</a> to make it only apply to the Tek Options menu.</li> 6956 </ul> 6957 6958 <h1><a name="xterm_243" id="xterm_243">Patch #243 - 2009/3/28</a></h1> 6959 6960 <ul> 6961 <li>revert change to default for <code>allowTcapOps</code> 6962 (request by Bram Moolenaar).</li> 6963 6964 <li>reallocate result returned by <code>xtermEnvLocale()</code> 6965 to avoid reference to freed memory after handling 6966 <code>menuLocale</code> resource.</li> 6967 6968 <li>fix an old (X11R5) bug in tek4014 for switching 6969 fontsizes.</li> 6970 6971 <li>add resource <code>defaultString</code> to make 6972 configurable the use of "#" when pastes of UTF-8 text fail due 6973 to limitations in the current locale settings.</li> 6974 6975 <li>make the set of selection target Atom's configurable by two 6976 new resources <code>eightBitSelectTypes</code> and 6977 <code>utf8SelectTypes</code>, e.g., to use the 6978 <code>TEXT</code> Atom in preference to 6979 <code>UTF8_STRING</code> (discussion with Stanislav Sedov 6980 regarding koi8rxterm and the FreeBSD port).</li> 6981 6982 <li>modify handling of <code>TARGETS</code> Atom by making it 6983 return exactly the set of targets as those which xterm is 6984 currently providing.</li> 6985 6986 <li>set <code>MANPAGER</code> and <code>PAGER</code> explicitly 6987 to /bin/cat in <code>minstall.sh</code> to work around 6988 /etc/man.conf's with those variables already set (report by 6989 Марьясин 6990 Семён).</li> 6991 6992 <li>improve error-checking of tcap-query parser.</li> 6993 6994 <li>add check for keyboard <code>tcap</code>), which ensures 6995 that terminal descriptions containing the same string for 6996 shifted/unshifted keys will be seen by tcap-query as only the 6997 unshifted key. (This would only happen with an incorrect 6998 terminal description).</li> 6999 7000 <li>fix conversion for input event-state to modifier-parameter 7001 which made tcap-query feature not work with 7002 <code>tcapFunctionKeys</code> (keyboard type 7003 <code>tcap</code>).</li> 7004 7005 <li>add "DEF_ALLOW_<em>XXX</em>" definitions to main.h to allow 7006 overriding the default compiled-in values for 7007 "allow<em>xxx</em>" resources.</li> 7008 7009 <li>remove check on bell-percentage added in <a href= 7010 "#xterm_242">patch #242</a>, which disallowed zero/negative 7011 values (Redhat Bugzilla #487829).</li> 7012 </ul> 7013 7014 <h1><a name="xterm_242" id="xterm_242">Patch #242 - 2009/2/15</a></h1> 7015 7016 <ul> 7017 <li>fix configure check for <code>XkbBell</code> and provide 7018 appropriate parameter for it.</li> 7019 7020 <li>fix a caching problem with double-size fonts versus reverse 7021 video that could cause core dump.</li> 7022 7023 <li>repair double-size fonts from workaround used in <a href= 7024 "#xterm_240">patch #240</a>.</li> 7025 7026 <li>add new section to the VT Fonts menu which allows enabling 7027 or disabling the font, termcap (tcap-query), title and window 7028 operations.</li> 7029 7030 <li>add <code>fontWarnings</code> resource, to control whether 7031 to show warnings on failure to load a font.</li> 7032 7033 <li>improve warnings for unloadable fonts introduced in 7034 <a href="#xterm_240">patch #240</a> by limiting those to the 7035 cases where a font would be specified directly by a resource 7036 setting rather than a derived fontname.</li> 7037 7038 <li>further amend fix for Debian #252873 from <a href= 7039 "#xterm_197">patch #197</a> to treat a blank cell which does 7040 not have both foreground and background colored as a 7041 non-colored cell. This improves a special case where the cursor 7042 is on a blank cell which had foreground color scrolled in 7043 (report by Miroslav Lichvar). 7044 <p>Also add the same logic when hiding cursor, so the outline 7045 matches the in-focus cursor.</p> 7046 </li> 7047 7048 <li>modify internals to reduce places PAIRED_CHARS() is used, 7049 making WriteText() and ScrnWriteText() accept IChar array, as 7050 well as providing a wrapper for drawXtermText().</li> 7051 7052 <li>change default XIM font from "*" to "fixed" to improve 7053 startup time in zh_CN.UTF-8 locale (Mike Fabian, SuSE Bugzilla 7054 #464930).</li> 7055 7056 <li>typo in #240 log (Slava Semushin)</li> 7057 </ul> 7058 7059 <h1><a name="xterm_241" id="xterm_241">Patch #241 - 2009/1/26</a></h1> 7060 7061 <ul> 7062 <li>improve checks for missing bitmap fonts, fallback to 7063 "fixed" as needed to work around broken font-packages (report 7064 by Jacek Luczak).</li> 7065 7066 <li>fix breakage from <a href="#xterm_240">patch #240</a> 7067 changes for <code>xtermAddInput()</code> (patches by Jeff Chua, 7068 Julien Cristau).</li> 7069 </ul> 7070 7071 <h1><a name="xterm_240" id="xterm_240">Patch #240 - 2009/1/25</a></h1> 7072 7073 <ul> 7074 <li>use <code>plink.sh</code> for linking xterm (suggested by 7075 Larry Doolittle).</li> 7076 7077 <li>add resource descriptions for input method to xterm 7078 manpage.</li> 7079 7080 <li>update configure script; consistently append to $CFLAGS 7081 rather than prepend.</li> 7082 7083 <li>add <code>install-scripts</code> rule to makefile, to allow 7084 koi8rxterm and uxterm scripts to be altered independently of 7085 <code>install-bin</code></li> 7086 7087 <li>add <code>-maximized</code> command-line option and 7088 corresponding resource (prompted by alt.os.linux newsgroup 7089 comment).</li> 7090 7091 <li>modify translations of scrollbar widget using 7092 <code>xtermAddInput()</code> (see <a href="#xterm_181">patch 7093 #181</a>) to accept the actions that the vt100 widget accepts, 7094 such as shift-insert to perform a paste operation (request by 7095 Martin Zwickel).</li> 7096 7097 <li>change default for <code>allowTcapsOps</code> resource to 7098 false, since it causes unexpected behavior for vim users with 7099 <code>AltGr</code>.</li> 7100 7101 <li>update config.guess, config.sub</li> 7102 </ul> 7103 7104 <h1><a name="xterm_239" id="xterm_239">Patch #239 - 2009/1/8</a></h1> 7105 7106 <ul> 7107 <li>correct a cast in input.c, which broke translation of 7108 numeric keypad codes to pageup, pagedown, etc., on 64-bit 7109 platform (Debian #511138, report by Larry Doolittle).</li> 7110 </ul> 7111 7112 <h1><a name="xterm_238" id="xterm_238">Patch #238 - 7113 2008/12/30</a></h1> 7114 7115 <ul> 7116 <li>update configure macro CF_XOPEN_SOURCE for AIX 6.x and Mint 7117 platforms.</li> 7118 7119 <li>reset the screen wrapping-flag at the end of 7120 <code>ClearRight</code> to fix an occasional case where the 7121 last character of a scrolled and wrapped line would be cleared 7122 (patch by Joe Peterson).</li> 7123 7124 <li>modify to use POSIX coding for comparing resource settings 7125 such as <code>locale</code>, to work with locales such as 7126 Turkish (report by M Vefa Bicakci).</li> 7127 7128 <li>turn on configure <code>paste64</code> feature by default 7129 (request by Jean-Philippe Bernardy). It is runtime 7130 enabled/disabled with <code>allowWindowOps</code>.</li> 7131 7132 <li>turn on configure <code>tcap-query</code> feature by 7133 default, add resource <code>allowTcapOps</code> to make this 7134 runtime enabled/disabled.</li> 7135 7136 <li>make <code>OSC 3</code> (change X property, from <a href= 7137 "#xterm_110">patch #110</a>) subject to 7138 <code>allowWindowOps</code> resource.</li> 7139 7140 <li>make VT220 <code>DSR</code> responses inactive in 7141 VT100-mode.</li> 7142 7143 <li>make <code>DECUDK</code> feature inactive in 7144 VT100-mode.</li> 7145 7146 <li>respond to incorrectly formatted <code>DECRQSS</code> with 7147 a cancel.</li> 7148 7149 <li>add <code>allowFontOps</code> resource to allow the 7150 fontsize-switching and font query/set control sequences to be 7151 enabled/disabled (prompted by Debian #510030).</li> 7152 7153 <li>some code cleanup based on gcc 4.x 7154 <code>-Wconversion</code> warnings in button.c and 7155 charproc.c</li> 7156 7157 <li>modify <code>tcap-query</code> feature to not return data 7158 for shifted cursor-keys when the keyboard type is set to vt220, 7159 since returning the same string for shifted/unshifted keys may 7160 confuse some applications (Gentoo #212546).</li> 7161 </ul> 7162 7163 <h1><a name="xterm_237" id="xterm_237">Patch #237 - 7164 2008/09/14</a></h1> 7165 7166 <ul> 7167 <li>improve usability of TrueType fonts by making the font-size 7168 switching for shifted keypad plus/minus use the 7169 <code>faceSize</code> resources to determine the order of fonts 7170 (when TrueType fonts are used) rather than the bitmap fonts, 7171 since their sizes may not be in the same order (report by H 7172 Merijn Brand)</li> 7173 7174 <li>remove an optimization of <code>ConfigureNotify</code> 7175 events from <a href="#xterm_236">patch #236</a> which seems to 7176 interfere with passing <code>SIGWINCH</code> to applications 7177 (Gentoo #233836).</li> 7178 7179 <li>modify handling of <code>altSendsEscape</code> to reset the 7180 <code>eightBitInput</code> mode, like 7181 <code>metaSendsEscape</code> (patch by Ted Phelps).</li> 7182 7183 <li>add feature to show the text-cursor as an underline rather 7184 than a box, plus command-line options <code>-uc</code> and 7185 <code>+uc</code> and resource <code>cursorUnderLine</code> to 7186 control the feature (patch by Paul Lampert).</li> 7187 7188 <li>update config.guess, config.sub</li> 7189 </ul> 7190 7191 <h1><a name="xterm_236" id="xterm_236">Patch #236 - 7192 2008/07/27</a></h1> 7193 7194 <ul> 7195 <li>correct memory reallocation when handling a paste of UTF-8 7196 text from <a href="#xterm_225">patch #225</a> changes 7197 (report/patch by Max Mikhanosha).</li> 7198 7199 <li>correct allocation of temporary buffer in 7200 <code>xtermFindShell</code> in case the user's 7201 <code>$PATH</code> contains no ":" (report/analysis by Victor 7202 Stinner, Freedesktop.Org Bugzilla #16790).</li> 7203 7204 <li>modify CF_XOPEN_SOURCE to add case for DragonFly BSD, to 7205 fix new compile problem exposed by fix for fd_mask (patch by 7206 Hasso Tepper).</li> 7207 7208 <li>add configure-check for ncurses 7209 <code>use_extended_names</code>, (report by Martin 7210 Mokrejs).</li> 7211 7212 <li>correct computation for toolbar height; layout manager 7213 already takes into account <code>borderWidth</code> 7214 resource.</li> 7215 7216 <li>implement VT320-style SCS (select character set) for ISO 7217 Latin-1 supplemental.</li> 7218 7219 <li>fixes for vt100-style character sets in UTF-8 mode (Ubuntu 7220 #230919).</li> 7221 7222 <li>fix to make <code>luit</code> work with xterm's 7223 <code>-ls</code> option (report/patch by Marius Tolzmann).</li> 7224 7225 <li>update config.guess, config.sub</li> 7226 </ul> 7227 7228 <h1><a name="xterm_235" id="xterm_235">Patch #235 - 7229 2008/04/20</a></h1> 7230 7231 <ul> 7232 <li>add control sequences for some of the recent resource/menu 7233 settings: 7234 <ul> 7235 <li><code>altSendsEscape</code> (private mode 1039)</li> 7236 7237 <li><code>keepSelection</code> (private mode 1040)</li> 7238 7239 <li><code>selectToClipboard</code> (private mode 1041)</li> 7240 7241 <li><code>bellIsUrgent</code> (private mode 1042)</li> 7242 7243 <li><code>popOnBell</code> (private mode 1043)</li> 7244 </ul> 7245 </li> 7246 7247 <li>add resource <code>formatOtherKeys</code> to provide an 7248 alternate escape sequence format for the 7249 <code>modifyOtherKeys</code> resource (request by Paul LeoNerd 7250 Evans).</li> 7251 7252 <li>adjust saved-cursor position if the window is resized while 7253 displaying the alternate screen (Novell #196880, Debian 7254 #383384).</li> 7255 7256 <li>improve pointer-checks to fix a bug exposed by resizing 7257 during initialization under StumpWM window manager (Fedora 7258 Bugzilla #437928).</li> 7259 7260 <li>modify <code>unselectwindow()</code> to ensure that the 7261 mouse pointer is not hidden after xterm loses focus (report by 7262 Jeremy Huddleston).</li> 7263 7264 <li>add special check for fd_mask on Mac OS X (report by Jeremy 7265 Huddleston).</li> 7266 7267 <li>add <code>dylib</code> to autoconf's suffix list used for 7268 checking the result from <code>xmkmf</code>, to work with Mac 7269 OS X (report by Jeremy Huddleston).</li> 7270 7271 <li>correct initialization of bold- and wide-, wide-bold fonts 7272 which may be set via the <code>utf8Fonts</code> subresource 7273 (Debian #347790).</li> 7274 </ul> 7275 7276 <h1><a name="xterm_234" id="xterm_234">Patch #234 - 7277 2008/03/02</a></h1> 7278 7279 <ul> 7280 <li>modify <code>sinstall.sh</code> to use POSIX locale to 7281 bypass GNU ls changes to date-format.</li> 7282 7283 <li>improved/refined changes for closing bitmap font (patch by 7284 Andrea Odetti).</li> 7285 7286 <li>improve resize computation for situations where the 7287 negotiation fails, by invoking the xterm widget's core-class 7288 resize method (Debian #365602, patch by Jim Paris).</li> 7289 7290 <li>restore initialization of terminal's <code>VMIN</code> and 7291 <code>VTIME</code> settings, from <a href="#xterm_232">patch 7292 #232</a> changes (patch by Matthieu Herrb).</li> 7293 </ul> 7294 7295 <h1><a name="xterm_233" id="xterm_233">Patch #233 - 7296 2008/02/24</a></h1> 7297 7298 <ul> 7299 <li>add configure check for <code>ttydefaults.h</code>, include 7300 if needed, e.g., for systems where defining 7301 <code>_POSIX_C_SOURCE</code>, etc., prevents it from being 7302 included via <code>termios.h</code> (prompted by comments by 7303 Robert Delius Royar and Jeremy Huddleston).</li> 7304 7305 <li>bug-fixes for bugs.opensolaris.org (patches from Alan 7306 Coopersmith) 7307 <dl> 7308 <dt>4029911</dt> 7309 7310 <dd>fix a typo in manpage</dd> 7311 7312 <dt>4045962</dt> 7313 7314 <dd>xterm doesn't properly set ut_syslen</dd> 7315 7316 <dt>4192572</dt> 7317 7318 <dd>left-left-right misinterpreted as triple click</dd> 7319 </dl> 7320 </li> 7321 7322 <li>minor optimization to tab-initialization (patch by 7323 Németh Márton).</li> 7324 7325 <li>fix a case where an incorrect font was freed during 7326 initialization from <a href="#xterm_232">patch #232</a> changes 7327 (patch by Andrea Odetti).</li> 7328 7329 <li>improve comparison used in <code>SameFont</code> function 7330 for GC-caching (Julien Cristau).</li> 7331 7332 <li>correct macro name used for default <code>CKILL</code> 7333 definition to work with Mac OS X (report by Jeremy 7334 Huddleston).</li> 7335 </ul> 7336 7337 <h1><a name="xterm_232" id="xterm_232">Patch #232 - 7338 2008/01/30</a></h1> 7339 7340 <ul> 7341 <li>corrected logic in a font-cache used for reverse-video 7342 (Debian #404079).</li> 7343 7344 <li>add control sequence to alter <code>pointerMode</code> at 7345 runtime.</li> 7346 7347 <li>add limit-checks for rectangle operation parameters (report 7348 by Martin Pirker).</li> 7349 7350 <li>modify <code>minstall.sh</code> to suppress 7351 <code>$MANPAGER</code> and <code>$PAGER</code> environment 7352 variables, which may interfere with redirecting output of 7353 <code>man</code> to a shell variable (report/patch by Zdenek 7354 Sekera).</li> 7355 7356 <li>do not try to hide mouse pointer in the tek4014 window, 7357 fixes broken "-t" option at startup from <a href= 7358 "#xterm_230">patch #230</a> changes (report by Robert K. 7359 Nelson).</li> 7360 7361 <li>correct datatype used when drawing tek4014 data using xterm 7362 compiled for wide-characters, on big-endian machines (reports 7363 by Jeremy Huddleston, Harald Hanche-Olsen, Martin Costabel, 7364 Merle Reinhart).</li> 7365 7366 <li>modify to cache the font-names along with the bitmap font 7367 data, to improve comparison of fonts.</li> 7368 7369 <li>modify to allow building with configure options 7370 <code>--disable-ansi-color</code> and 7371 <code>--disable-leaks</code> (Debian #459817, report/patch by 7372 Németh Márton).</li> 7373 7374 <li>modify to allow building with configure options 7375 <code>--enable-wide-chars</code> and 7376 <code>--disable-c1-print</code> (Debian #459816, report/patch 7377 by Németh Márton).</li> 7378 7379 <li>add <code>pointerMode</code> resource to control whether 7380 and when the pointer cursor is hidden as the user types.</li> 7381 7382 <li>simplify initialization of ttyMode- and related characters 7383 using a table.</li> 7384 7385 <li>modify initialization-logic for stty values that correspond 7386 to ltchars structure and the BSD TIOCSLTC ioctl (susp, dsusp, 7387 rprnt flush, werase, lnext). These were reset to constants for 7388 both termios and legacy interfaces immediately after asking the 7389 system for the existing values since X11R6.1, rather than using 7390 them to provide inherited values. While the legacy interface 7391 has some constraints, e.g., on HPUX, the POSIX or termios 7392 interface should not. Your shell may reset these anyway 7393 (prompted by patch by Ed Schouten).</li> 7394 7395 <li>improve logic for hiding/displaying pointer-cursor (report 7396 by Mark Brukhartz).</li> 7397 7398 <li>add limit-checks to tabs.c, increase maximum column for 7399 setting tab-stops from 320 to 1024 (report by Németh 7400 Márton).</li> 7401 7402 <li>correct length, i.e., number of types of selection targets, 7403 computed by <code>ConvertSelection()</code> when not handling 7404 wide characters for the <code>XA_TARGETS()</code> case. This 7405 leaves an extra Atom on the end of the list which is not 7406 handled by <a href= 7407 "http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6322854">Java 7408 applications</a>. The problem was introduced in <a href= 7409 "#xterm_151">patch #151</a> (report by David Wood).</li> 7410 </ul> 7411 7412 <h1><a name="xterm_231" id="xterm_231">Patch #231 - 7413 2008/01/05</a></h1> 7414 7415 <ul> 7416 <li>undo change to <code>getXtermCell()</code> from patch #230 7417 using <code>PACK_PAIR</code> macro (Debian #459014, analysis by 7418 Caetano Jimenez Carezzato).</li> 7419 7420 <li>minor documentation fixes (patch by Slava Semushin)</li> 7421 7422 <li>add makefile actions to install KOI8RXTerm app-defaults 7423 file (patch by Julien Cristau).</li> 7424 </ul> 7425 7426 <h1><a name="xterm_230" id="xterm_230">Patch #230 - 7427 2007/12/31</a></h1> 7428 7429 <ul> 7430 <li>add <code>quietGrab</code> resource, which when true, 7431 suppresses cursor repainting when <code>NotifyGrab</code> and 7432 <code>NotifyUngrab</code> event types are received during 7433 change of focus (request by Nicolas George).</li> 7434 7435 <li>do not treat Unicode BIDI control characters as combining 7436 characters (Debian #457634).</li> 7437 7438 <li>add <code>koi8rxterm</code>, from Debian.</li> 7439 7440 <li>add manpage for <code>uxterm</code>, from Debian (Ubuntu 7441 #128136, Debian #438645)</li> 7442 7443 <li>remove ".xpm" suffixes from Icon filenames in desktop files 7444 since it confuses some lookups following the <a href= 7445 "http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html"> 7446 Icon Theme Specification</a> (report by Slava Semushin)</li> 7447 7448 <li>correct width-calculation used for adjusting proportional 7449 fonts, to work with wide-characters (Debian #441354).</li> 7450 7451 <li>fixes/improvements for double-size characters: 7452 <ul> 7453 <li>correct old clipping calculation which used total 7454 height of glyphs where ascent was needed.</li> 7455 7456 <li>if bold font is unavailable, fall back to normal 7457 font</li> 7458 7459 <li>adjust to "work" with Xft (which does not support 7460 double-width single-height characters).</li> 7461 7462 <li>restore reset of doublesize for a line when it is 7463 cleared, broken in <a href="#xterm_228">patch 7464 #228</a>.</li> 7465 </ul> 7466 </li> 7467 7468 <li>modify logic for <code>forceBoxChars</code> resource when 7469 using TrueType fonts to be consistent with bitmap fonts</li> 7470 7471 <li>modify logic for <code>forceBoxChars</code> resource to 7472 make the "Line-Drawing Characters" menu entry use xterm's 7473 line-drawing characters even asked to draw wide line-drawing 7474 characters which are available in the font.</li> 7475 7476 <li>modify rectangle-support functions to preserve colors when 7477 filling/erasing to match WRQ Reflection behavior (request by 7478 Enzo Toscano).</li> 7479 7480 <li>add getopt-parsing to tcapquery.pl, including feature to 7481 test the extended cursor/editing keys.</li> 7482 7483 <li>make missing double-width glyphs display as double-width 7484 (Debian #456236).</li> 7485 7486 <li>change <code>tcap-fkeys</code> and <code>rectangles</code> 7487 configure options to enable them by default.</li> 7488 7489 <li>hide the mouse pointer while user is typing (request by 7490 Rodolfo Borges).</li> 7491 7492 <li>extend configure options <code>--enable-tcap-query</code> 7493 and <code>--enable-tcap-fkeys</code> to send cursor- and 7494 editing-keypad keys modified according to the keyboard (or 7495 termcap) selection for shift, alt, control, meta.</li> 7496 7497 <li>modify <code>kdch1</code> in termcap, e.g., 7498 <code>xterm-r6</code> to match the terminfo file.</li> 7499 7500 <li>add <code>-hm</code> option to turn 7501 <code>highlightColorMode</code> on or off.</li> 7502 7503 <li>add <code>highlightColorMode</code> resource to separate 7504 the new (since <a href="#xterm_225">patch #225</a>) 7505 highlighting with both text- and background-colors (prompted by 7506 report/example by Thomas Wolff).</li> 7507 7508 <li>add <em>Keep Selection</em> menu entry to turn the 7509 <code>keepSelection</code> resource on/off at runtime.</li> 7510 7511 <li>add <code>keepSelection</code> resource, which when 7512 enabled, tells xterm to retain the X selection even after it 7513 stops highlighting it (patch by Sergey Vlasov).</li> 7514 7515 <li>extend the <code>CSI > n</code> sequence to 7516 allow disabling all types of modified-keys that the 7517 <code>CSI > m</code> sequence affects.</li> 7518 7519 <li>move include for <code><xtermcap.h></code> in 7520 <code>resize.c</code> to avoid redefinition of 7521 <code>termios</code> structure on OpenSolaris (report by Rahul 7522 Gopinathan Nair).</li> 7523 7524 <li>extend terminfo building blocks for modified editing keys 7525 to include all six keys.</li> 7526 7527 <li>synchronize terminfo with ncurses (report by Stephane 7528 Chazelas) 7529 <ul> 7530 <li>equate <code>xterm-xfree86</code> and 7531 <code>xterm-xf86-v44</code>.</li> 7532 7533 <li>add ncurses extensions OTbs, AX, for termcap 7534 conversions.</li> 7535 7536 <li>make old/legacy entries such as <code>xterm-24</code>, 7537 <code>xterm-65</code> and aliases <code>xterms</code>, 7538 <code>vs100</code> inherit from 7539 <code>xterm-old</code>.</li> 7540 7541 <li>make <code>xterm-r5</code> and <code>xterm-r6</code> 7542 the same, ignoring historical errors in X Consortium's 7543 version.</li> 7544 </ul> 7545 </li> 7546 7547 <li>fix an ifdef in logic for selecting regular expressions 7548 while in a narrow-character locale (Debian #449227).</li> 7549 </ul> 7550 7551 <h1><a name="xterm_229" id="xterm_229">Patch #229 - 2007/8/12</a></h1> 7552 7553 <ul> 7554 <li>override locale in minstall.sh; change in <a href= 7555 "#xterm_226">patch #226</a> does not work in UTF-8 locale 7556 (report by Zdenek Sekera).</li> 7557 7558 <li>undo an incorrect fix for a memory leak in <a href= 7559 "#xterm_209">patch #209</a> (Debian #435858).</li> 7560 </ul> 7561 7562 <h1><a name="xterm_228" id="xterm_228">Patch #228 - 2007/7/22</a></h1> 7563 7564 <ul> 7565 <li>modify configure script to permit combining 7566 <code>--with-utempter</code> and <code>--enable-setuid</code>, 7567 e.g., for using xterm with the utempter library on FreeBSD 7568 (report by Andriy Gapon).</li> 7569 7570 <li>modify "Quit" menu entry to override the <code>-hold</code> 7571 command-line option.</li> 7572 7573 <li>add a check in the startup error-reporting to avoid writing 7574 to pipe when it has not been opened. In that case, report 7575 errors directly to the standard error.</li> 7576 7577 <li>add OPT_READLINE definition to xtermcfg.hin, overlooked in 7578 <a href="#xterm_205">patch #205</a> (report by Kalle Olavi 7579 Niemitalo).</li> 7580 7581 <li>modify <code>88colors2.pl</code> and 7582 <code>256colors2.pl</code>, adding <code>-r</code> option to 7583 reverse the palettes for the extended colors.</li> 7584 7585 <li>check for partial overwrite or deletion of multi-column 7586 characters in several cases, e.g., insert-character, 7587 delete-character, etc., and fill the remainder of the cells 7588 used by the multi-column characters affected with blanks.</li> 7589 7590 <li>correct character-class codes in wide-character mode for 7591 characters 215, 247 (see also <a href="#xterm_165">patch 7592 #165</a>).</li> 7593 7594 <li>fix missing assignment for UTF-8 parsing in widget 7595 initialization (Debian #403360).</li> 7596 7597 <li>correct index expression used to set line-wrapping flag, 7598 making selection from scrollback work consistently (Debian 7599 #430121, report by Vincent Lefèvre).</li> 7600 7601 <li>amend changes to handshake in <a href="#xterm_226">patch 7602 #226</a> to accommodate Solaris, which relies on the extra 7603 setting of the terminal size after I/O initialization. Do this 7604 by adding new resource <code>ptySttySize</code>, which is false 7605 for Linux and MacOS X, i.e., true for for Solaris and other 7606 SVR4 platforms, as well as FreeBSD (reports by David Wood, 7607 Renato Botelho).</li> 7608 7609 <li>check for X events after cursor-left, and carriage return, 7610 consistent with indexing operations (comments by Vegard Nossum 7611 and Ingo Molnar on a mailing-list).</li> 7612 7613 <li>initialize the <code>.keyboard</code> structure, needed for 7614 some platforms (such as Solaris) after <a href= 7615 "#xterm_227">patch #227</a> fixes for keysyms (patch by David 7616 Wood).</li> 7617 7618 <li>update config.guess, config.sub</li> 7619 </ul> 7620 7621 <h1><a name="xterm_227" id="xterm_227">Patch #227 - 2007/6/27</a></h1> 7622 7623 <ul> 7624 <li>exclude the Intel compiler from the extra gcc warning 7625 options added in <a href="#xterm_226">patch #226</a>.</li> 7626 7627 <li>modify change for Debian #422521 from <a href= 7628 "#xterm_226">patch #226</a> to work with configurations where 7629 the X server does not recognize the <code>XF86Paste</code> or 7630 <code>SunPaste</code> keysyms (report by Paolo Pumilia).</li> 7631 7632 <li>fix incorrect free in fix for "Selection" menu entry in 7633 <a href="#xterm_226">patch #226</a>.</li> 7634 </ul> 7635 7636 <h1><a name="xterm_226" id="xterm_226">Patch #226 - 2007/6/17</a></h1> 7637 7638 <ul> 7639 <li>add configure check to use 7640 <code>-Wno-unknown-pragmas</code> for Solaris, and a few other 7641 new gcc warning options to address regressions in its warning 7642 options.</li> 7643 7644 <li>add sample desktop and icon files, along with configure 7645 options for manipulating them.</li> 7646 7647 <li>fix an infinite loop when showing a 2-column character in a 7648 1-column screen (Debian #426863).</li> 7649 7650 <li>add <code>XF86Paste</code> and <code>SunPaste</code> to the 7651 default translations (Debian #422521, patch by Bernhard R 7652 Link).</li> 7653 7654 <li>update wcwidth.c (partly based on/prompted by mailing list 7655 comment).</li> 7656 7657 <li>update/improve keysym2ucs.c based on Unicode 5.0.1d3 and 7658 Xorg 7.1 keysymdef.h file.</li> 7659 7660 <li>improve <code>gen-pc-fkeys.pl</code>, making it show all of 7661 the building-block terminfo entries used by xterm.</li> 7662 7663 <li>correct strings used for modifiers applied to F1-F4 in 7664 xterm+pcf1 terminfo entry.</li> 7665 7666 <li>improve session management by adding the ICE connection 7667 number to the <code>select</code> call rather than waking up 7668 once per second (patch by Miroslav Lichvar).</li> 7669 7670 <li>add environment variable <code>$XTERM_LOCALE</code> to help 7671 with shell initialization, e.g., to set a specific locale for 7672 xterm on systems where a global locale is set in the shell 7673 startup scripts.</li> 7674 7675 <li>add resource settings <code>mkSampleSize</code> and 7676 <code>mkSamplePass</code> to modify the <code>mkWidth</code> 7677 added in <a href="#xterm_201">patch #201</a>. In <a href= 7678 "#xterm_202">patch #202</a>, xterm would also check if the 7679 system's <code>wcwidth</code> matched its built-in tables "well 7680 enough" to be used when <code>mkWidth</code> was false, and if 7681 not would use the built-in tables anyway. These resources allow 7682 the user to customize the decision (prompted by comments by 7683 Emanuele Giaquinta)</li> 7684 7685 <li>modify logic which resets/updates the screensize on the 7686 child process side of the pseudo-terminal to do this only if a 7687 successful handshake was received, e.g., as determined by the 7688 <code>waitForMap</code> resource (prompted by reports by 7689 Emanuele Giaquinta and Bernhard R Link, but see also <a href= 7690 "#xterm_177">patch #177</a> and <a href="#xterm_159">patch 7691 #159</a>.</li> 7692 7693 <li>improve permissions logic when closing pseudo-terminal 7694 (Debian #12261, patch by Nathanael Nerode, analysis by Richard 7695 Braakman).</li> 7696 7697 <li>add resource <code>highlightReverse</code> which controls 7698 whether xterm will allow selection highlighting to hide 7699 reverse-video or use the older behavior which inverts the 7700 foreground and background colors when selected text with 7701 reverse-video attribute (report by Adam M Costello, comments by 7702 Victor Vaile).</li> 7703 7704 <li>restore a special case for cursor-color in 7705 <code>ReverseVideo()</code> lost in rewrite for <a href= 7706 "#xterm_224">patch #224</a> (report by Adam Sulmicki).</li> 7707 7708 <li>correct initialization for menu entry for 7709 <code>bellIsUrgent</code> (patch by Emanuele Giaquinta).</li> 7710 7711 <li>correct length of underlining for double-width Xft fonts 7712 (report by Shidai Liu "Leo").</li> 7713 7714 <li>correct clipping for double-width Xft fonts (report by 7715 Shidai Liu "Leo").</li> 7716 7717 <li>modify initialization for <code>italicULMode</code> to 7718 avoid <code>XftPatternBuild</code> reusing bold attributes 7719 (report by Shidai Liu "Leo").</li> 7720 7721 <li>add a check in case someone tries to call the 7722 <code>popup-menu()</code> action on a menu which is not 7723 initialized (Debian #426364).</li> 7724 7725 <li>improve CF_IMAKE_CFLAGS to work with Solaris sed (report by 7726 Peter Bray).</li> 7727 7728 <li>improve guess for X's manpage section in 7729 <code>minstall.sh</code>, (prompted by comment by Miroslav 7730 Lichvar).</li> 7731 7732 <li>modify <code>minstall.sh</code> to handle manpage patch 7733 with more than one dot (patch by Miroslav Lichvar).</li> 7734 7735 <li>fix configure message for --disable-setgid option (patch by 7736 Miroslav Lichvar).</li> 7737 7738 <li>add <code>allowTitleOps</code> resource to allow users to 7739 prevent the title- and icon-names from changing (request by 7740 John Bashinski).</li> 7741 7742 <li>fix "spawn-new-terminal" action, for the case where no 7743 parameter is passed to the action (patch by Daniel 7744 Colascione).</li> 7745 7746 <li>fix error-checking on internal font switching for 7747 "Selection" menu entry (Debian #421523).</li> 7748 7749 <li>amend select/paste change from <a href="#xterm_225">patch 7750 #225</a> by limiting it to non-UTF-8/non-KOI8-R encoding 7751 (Debian #420974).</li> 7752 7753 <li>add workaround for groff ".URL" codes which are not present 7754 in some commonly-used bitmap fonts (Debian #418324).</li> 7755 </ul> 7756 7757 <h1><a name="xterm_225" id="xterm_225">Patch #225 - 2007/3/24</a></h1> 7758 7759 <ul> 7760 <li>add <code>useClipping</code> resource to allow clipping to 7761 be disabled.</li> 7762 7763 <li>use <code>XftDrawSetClipRectangles</code> to work around 7764 Xft pixel-trash (report by Reuben Thomas).</li> 7765 7766 <li>add configure option <code>--enable-tcap-fkeys</code>, and 7767 resource <code>tcapFunctionKeys</code>, which can be used to 7768 tell xterm to use function-key definitions from the termcap (or 7769 terminfo) which it uses to set $TERM on startup.</li> 7770 7771 <li>add resources <code>altIsNotMeta</code> and 7772 <code>altSendsEscape</code> to allow one to use Alt-keys like 7773 the meta-key even if they are bound to different keycodes 7774 (prompted by discussion with Daniel Jacobowitz).</li> 7775 7776 <li>revert a change from <a href="#xterm_216">patch #216</a> 7777 that unnecessarily made the meta modifier override the 7778 <code>eightBitInput</code> resource if the alt- and 7779 meta-modifiers happened to overlap (report/patch by Daniel 7780 Jacobowitz).</li> 7781 7782 <li>correct associated font for active icon for colored text 7783 (broken in <a href="#xterm_224">patch #224</a>).</li> 7784 7785 <li>correct ifdef's for Darwin (patch by Emanuele 7786 Giaquinta).</li> 7787 7788 <li>add <code>highlightTextColor</code> resource, and options 7789 <code>-selfg</code>, <code>-selbg</code> like <code>xwsh</code> 7790 (adapted from patch by Victor Vaile).</li> 7791 7792 <li>revise <code>find_closest_color()</code> function to 7793 address concern about borrowing from <code>Tcl/Tk</code> 7794 (request by Dan McNichol).</li> 7795 7796 <li>add "spawn-new-terminal" action, which can be assigned to 7797 key translation, allowing one to spawn a new copy of xterm 7798 using the current process's working directory (adapted from 7799 patch by Daniel Colascione).</li> 7800 7801 <li>improve select/paste between UTF-8 and Latin1 xterms by 7802 adapting the translations from <a href="#xterm_185">patch 7803 #185</a>. Extend that to include Unicode fullwidth forms 7804 FF00-FF5E. Also modify select/paste of DEC line-drawing 7805 characters in Latin1 mode to use ASCII characters.</li> 7806 7807 <li>add "Enable Bell Urgency" to VT Options menu, removed 7808 "Enable Margin Bell".</li> 7809 7810 <li>add <code>bellIsUrgent</code> resource to control whether 7811 the Urgency hint is set/reset.</li> 7812 7813 <li>modify to set Urgency window manager hint on bell, reset it 7814 on Focus-In event (patch by Emanuele Giaquinta).</li> 7815 7816 <li>add <code>--disable-setgid</code> configure option (request 7817 by Miroslav Lichvar).</li> 7818 7819 <li>fix a possible infinite loop in last change to 7820 <code>dabbrev-expand()</code> (patch by Emanuele 7821 Giaquinta).</li> 7822 7823 <li>modify initialization to set the pty erase value if the 7824 <code>erase</code> is set in the <code>ttyModes</code> 7825 resource. This overrides the <code>ptyInitialErase</code> 7826 setting (request by Lluís Batlle i Rossell).</li> 7827 7828 <li>add <code>initialFont</code> resource to xterm widget, like 7829 tek-widget (Debian #299669).</li> 7830 7831 <li>amend change to <code>boldMode</code> from <a href= 7832 "#xterm_223">patch #223</a> for Debian #347790. As noted in 7833 Debian #412599, that made xterm no longer match the documented 7834 behavior. Add new resource <code>alwaysBoldMode</code> to allow 7835 overriding the comparison between normal/bold fonts when 7836 deciding whether to use overstriking to simulate bold 7837 fonts.</li> 7838 7839 <li>restore background color in ClearCurBackground(), omitted 7840 in changes for <a href="#xterm_223">patch #223</a> (report by 7841 Miroslav Lichvar).</li> 7842 7843 <li>correct logic for repainting double-width TrueType 7844 characters (prompted by test-case for Novell #246573).</li> 7845 7846 <li>add a check to avoid trying to repeat a multibyte character 7847 (report by Sami Farin).</li> 7848 7849 <li>modify parameter to <code>XftNameParse()</code> to select 7850 wide face-name as needed, to make <code>-fd</code> option work 7851 (patch by Mike Fabian, Novell #246573).</li> 7852 7853 <li>correct logic for mouse highlight tracking's abort 7854 sequence, broken in a restructuring modification from <a href= 7855 "#xterm_224">patch #224</a> (report by Thomas Wolff).</li> 7856 7857 <li>revert the simplification of blinking cursor, since that 7858 broke the xor'ing introduced in <a href="#xterm_193">patch 7859 #193</a> (report by Thomas Wolff).</li> 7860 </ul> 7861 7862 <h1><a name="xterm_224" id="xterm_224">Patch #224 - 2007/2/11</a></h1> 7863 7864 <ul> 7865 <li>simplify code for set/reset mode for blinking cursor (patch 7866 by Emanuele Giaquinta).</li> 7867 7868 <li>modify <code>dabbrev-expand()</code> to restart after the 7869 last match (patch by Emanuele Giaquinta).</li> 7870 7871 <li>add control sequences for enabling/disabling focus in/out 7872 event reporting (request by Bram Moolenaar).</li> 7873 7874 <li>improve startup performance of menus by adding resource 7875 setting <code>menuLocale</code> which can be set to override 7876 X's lengthy initialization of fontsets - which are seldom used 7877 for the <code>Xaw</code> popup menus (adapted from patch by 7878 Dave Coffin).</li> 7879 7880 <li>modify <code>do_precomposition()</code> function and 7881 <code>make-precompose.sh</code> to handle 21-bit codes vs the 7882 16-bit codes those were written for, and fix a few mis-sorted 7883 codes (patch by Thomas Wolff).</li> 7884 7885 <li>handle special case in <code>-cjk_width</code> which 7886 unexpectedly caused a character's width to change when a 7887 combining character (patch by Thomas Wolff)</li> 7888 7889 <li>fix build for GNU/KFreeBSD (Debian #40111).</li> 7890 7891 <li>consolidate GC creation/updating into a single module to 7892 reduce GC manipulation (prompted by Debian #389476, though a 7893 complete fix would involve optimizing the scrolling 7894 behavior).</li> 7895 7896 <li>fix ifdef of xtermCellWidth(), which broke for a case 7897 without TrueType and without wide-character support (report by 7898 Martin Pirker).</li> 7899 7900 <li>undo a comparison in 7901 <code>handle_translated_exposure</code> which did not work due 7902 to X server optimization. That caused the inner border to be 7903 repainted with unexpected colors when handling a repaint, e.g., 7904 after switching to/from another workspace (Debian #401726, 7905 Redhat Bugzilla #223027).</li> 7906 7907 <li>allow <code>-cr</code> option to override cursor color when 7908 <code>-ah</code> option is used (Debian #406502).</li> 7909 7910 <li>add a note in xterm's manpage explaining that the 7911 <code>-bw</code> (or <code>-w</code>) option is only used by 7912 the window manager, if at all (Debian #405043).</li> 7913 7914 <li>make <code>Selection</code> of <code>VT Fonts</code> 7915 work with <code>selectToClipboard</code> resource.</li> 7916 7917 <li>correct length calculation for <code>Selection</code> entry 7918 of <code>VT Fonts</code> menu, broken since it ignored the 7919 actual selection length since X11R4.</li> 7920 7921 <li>fixes for fontsize changes with <code>-fa</code> option 7922 (Redhat Bugzilla #222340).</li> 7923 </ul> 7924 7925 <h1><a name="xterm_223" id="xterm_223">Patch #223 - 7926 2006/11/30</a></h1> 7927 7928 <ul> 7929 <li>add <code>--enable-rectangles</code> configure option 7930 (request by Martin Pirker).</li> 7931 7932 <li>correct default value for <code>--with-symlink</code> 7933 configure option.</li> 7934 7935 <li>fixes configure script macros that use 7936 <code>$X_EXTRA_LIBS</code>.</li> 7937 7938 <li>modify configure script to provide support for pre-package 7939 config versions of Xft aka "FreeType".</li> 7940 7941 <li>add the Xaw scrollbar translations resource to the xterm 7942 manpage, add an example showing how to change the mouse button 7943 assignments (Debian #382225).</li> 7944 7945 <li>amend a change from <a href="#xterm_216">patch #216</a>, 7946 which omitted modifiers for control, meta, etc., if they were 7947 mixed with any other modifiers. The intent of the change was to 7948 avoid confusion with <code>XK_Mode_switch</code> and 7949 <code>XK_ISO_Level3_Shift</code>; the check is now done 7950 explicitly (report by Daniel Jacobowitz).</li> 7951 7952 <li>interpret a negative value for 7953 <code>modifyCursorKeys</code> or 7954 <code>modifyFunctionKeys</code> resources to disable the 7955 respective features (prompted by Novell #220728).</li> 7956 7957 <li>amend cell-width computation for FreeType from <a href= 7958 "#xterm_217">patch #217</a>, which did not work for VT100 7959 line-drawing characters (Debian #399638, Gentoo #147111).</li> 7960 7961 <li>amend a change from <a href="#xterm_216">patch #216</a>, 7962 which made alt-modifier on a cursor-key send a modifier 7963 parameter (Novell #220728).</li> 7964 7965 <li>correct an off-by-one that made DECCRA not work 7966 (report/patch by Martin Pirker).</li> 7967 7968 <li>revert an optimization in SGR_Foreground() and 7969 SGR_Background from <a href="#xterm_209">patch #209</a> (Debian 7970 #347722, analysis by Pierre Lombard).</li> 7971 7972 <li>fix for <code>boldMode</code> (Debian #347790, patch by Tim 7973 Pope).</li> 7974 7975 <li>amend fix for <code>-iconic</code> in <a href= 7976 "#xterm_208">patch #208</a>, which broke the positioning part 7977 of <code>-geom</code> with toolbar configuration.</li> 7978 7979 <li>fix to prevent indexing error in regular expressions (patch 7980 by Dennis Schneider).</li> 7981 7982 <li>fixes to make the <code>internalBorder</code> area not 7983 change color due to reverseVideo and/or related exposure 7984 events. The latter was a very old bug exposed in <a href= 7985 "#xterm_196">patch #196</a> (report by Neil Hoggarth, also 7986 Debian #397624).</li> 7987 </ul> 7988 7989 <h1><a name="xterm_222" id="xterm_222">Patch #222 - 7990 2006/10/17</a></h1> 7991 7992 <ul> 7993 <li>minor optimization for recoloring cursor via dynamic 7994 colors.</li> 7995 7996 <li>fix a bug caused by restructuring of tek4014 widget (report 7997 by Paul Schenkeveld)</li> 7998 </ul> 7999 8000 <h1><a name="xterm_221" id="xterm_221">Patch #221 - 2006/10/1</a></h1> 8001 8002 <ul> 8003 <li>fix for regular expressions: the code which converted the 8004 column offset within a line did not check properly for the end 8005 of a line, and if allowed to match the whole line, would select 8006 the beginning of the following line. If the following line were 8007 empty, in turn it would select from the next, etc. (report by 8008 Sean Reifschneider).</li> 8009 8010 <li>minor optimization of color allocation to avoid repainting 8011 the screen if the corresponding color had not been 8012 allocated.</li> 8013 8014 <li>fixes for vttests/256colors.pl (report by Egmont 8015 Koblinger).</li> 8016 8017 <li>add terminfo building block entries for modifiers of the 8018 6-key editing keypad.</li> 8019 8020 <li>fix for initialization of tek4014 which broke on QNX 8021 6.1</li> 8022 </ul> 8023 8024 <h1><a name="xterm_220" id="xterm_220">Patch #220 - 2006/9/10</a></h1> 8025 8026 <ul> 8027 <li>make "xterm -t -iconic" work as expected, i.e., start in 8028 tek4014 mode, but iconified.</li> 8029 </ul> 8030 8031 <h1><a name="xterm_219" id="xterm_219">Patch #219 - 2006/9/4</a></h1> 8032 8033 <ul> 8034 <li>some internal restructuring to separate data for vt100 and 8035 tek4014 widgets.</li> 8036 8037 <li>fix a few cases where form-events would be seen by the 8038 vt100 widget when built with the toolbar configuration.</li> 8039 </ul> 8040 8041 <h1><a name="xterm_218" id="xterm_218">Patch #218 - 2006/8/27</a></h1> 8042 8043 <ul> 8044 <li>change behavior when encountering an illegal character in a 8045 title string. Rather than reject the string, translate illegal 8046 characters into "?" and use the string (requested by Thomas 8047 Wolff).</li> 8048 8049 <li>improve checks for nonprinting characters in title strings 8050 (report by Samuel Thibault).</li> 8051 8052 <li>correct typo in menu labels, changing 8053 <code>print-redirect</code> to <code>print-redir</code>, making 8054 it follow the manpage and match the usage for the actions table 8055 (report by Samuel Thibault).</li> 8056 8057 <li>correct a typo that prevents building with some older 8058 systems such as Solaris 2.6 (report by Julian Bridle).</li> 8059 </ul> 8060 8061 <h1><a name="xterm_217" id="xterm_217">Patch #217 - 2006/8/20</a></h1> 8062 8063 <ul> 8064 <li>minor improvements to FreeType font layout and 8065 drawing.</li> 8066 8067 <li>add a check in the ptyInitialErase logic to ensure that the 8068 termcap was read (Redhat Bugzilla #201246).</li> 8069 8070 <li>limit changes for reverse-video from <a href= 8071 "#xterm_216">patch #216</a> to cases where the reverse-video 8072 command-line option is used (report by Zdenek Sekera).</li> 8073 8074 <li>correct bitmap-derived pointsizes for TrueType fonts; they 8075 should be proportional to the square root of the area of the 8076 bitmap fonts.</li> 8077 8078 <li>add resources to specify pointsize of TrueType fonts 8079 (request by Reuben Thomas).</li> 8080 8081 <li>improve install of terminfo by filtering out harmless 8082 messages related to extended capabilities. At the same time, 8083 use ncurses tic to compile the extended capabilities if 8084 possible (report by Zdenek Sekera).</li> 8085 8086 <li>update "xterm+pcfkeys" terminfo entry to correspond to 8087 <a href="#xterm_216">patch #216</a>.</li> 8088 </ul> 8089 8090 <h1><a name="xterm_216" id="xterm_216">Patch #216 - 2006/8/3</a></h1> 8091 8092 <ul> 8093 <li>improve handling of <code>ConfigureNotify</code> events by 8094 checking if there are further events in the queue which 8095 obsolete the current one (adapted from rxvt 2.7.5). Only the 8096 normal normal (non-toolbar) configuration is addressed in this 8097 patch.</li> 8098 8099 <li>several changes to terminfo: 8100 <ul> 8101 <li>incorporate some minor changes from ncurses to help 8102 keep these synchronized: 8103 <dl> 8104 <dt>2005-02-26</dt> 8105 8106 <dd>modify sgr/sgr0 in xterm-new to improve tgetent's 8107 derived "me".</dd> 8108 8109 <dt>2006-02-18</dt> 8110 8111 <dd>remove ncv flag from xterm-16color</dd> 8112 8113 <dt>2006-06-24</dt> 8114 8115 <dd>improve xterm-256color by combining the 16-color 8116 setaf/setab strings with SGR 48, and cancelling the 8117 setf/setb strings.</dd> 8118 </dl> 8119 </li> 8120 8121 <li>use extended function-key definitions for xterm-sun, 8122 xterm-sco entries.</li> 8123 8124 <li>add terminfo building-blocks corresponding to the 8125 <code>modifyFunctionKeys</code> and 8126 <code>modifyCursorKeys</code> resources.</li> 8127 </ul> 8128 </li> 8129 8130 <li>ifdef'd Sun function-key feature to make it optional, like 8131 HP and SCO.</li> 8132 8133 <li>extend table for termcap-query feature through F63, and 8134 updated tcapquery.pl to match.</li> 8135 8136 <li>modify logic for function-key input processing to allow 8137 function key numbers which are constructed by control- and 8138 shift-modifiers to extend beyond X's hardcoded limit of 8139 35.</li> 8140 8141 <li>add control sequence to set or reset the 8142 <code>eightBitInput</code> resource.</li> 8143 8144 <li>change default resource <code>modifyFunctionKeys</code> to 8145 2 to avoid sending SS3 with parameters (report by Kalle Olavi 8146 Niemitalo).</li> 8147 8148 <li>add control sequences for setting and resetting the values 8149 of the <code>modifyCursorKeys</code>, 8150 <code>modifyFunctionKeys</code> and 8151 <code>modifyOtherKeys</code> resources.</li> 8152 8153 <li>add <code>modifyFunctionKeys</code> resource like 8154 <code>modifyCursorKeys</code>. Setting this to zero allows one 8155 to use the control- and shift-modifiers to construct function 8156 key strings, for terminals using many function keys, e.g., for 8157 <code>xterm-sun</code> or <code>xterm-sco</code>.</li> 8158 8159 <li>modify screen responses and function-key logic to reduce 8160 the number of writes made, to make it less likely that an 8161 application would read only part of a function-key in a read 8162 operation (suggested by John E Urbanczyk).</li> 8163 8164 <li>add <code>combiningChars</code> resource, which allows the 8165 user to specify the maximum number of combining characters that 8166 xterm will store for each cell in wide-character mode (prompted 8167 by request by Markus Kuhn to increase the limit from 2).</li> 8168 8169 <li>improve logic in <code>metaSendsEscape</code> in case the 8170 Alt- and Meta-keys are mapped to different modifiers. That 8171 allows one to use the Alt-key for shifting in the 8172 <code>eightBitInput</code> and use a Meta-key modifier to 8173 prefix the result with an <code><ESC></code>.</li> 8174 8175 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8176 from modifying codes where <code>eightBitInput</code> or 8177 <code>metaSendsEscape</code> are set (request by Dan 8178 Nicolaescu).</li> 8179 8180 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8181 from changing the user input when other modifiers such as AltGr 8182 are used (report by Thomas Wolff).</li> 8183 8184 <li>extend <code>modifyCursorKeys</code> to include the numeric 8185 keypad when in application mode.</li> 8186 8187 <li>improve <code>-reverse</code> (<code>-rv</code>) option 8188 (patch by Jason Vas Dias, Redhat #189161).</li> 8189 8190 <li>workaround for color resources on Fedora-5 which made the 8191 toolbar colors inconsistent.</li> 8192 8193 <li>corrected calls used for <code>--disable-setuid</code> 8194 option, add debugging traces to help diagnose this area.</li> 8195 8196 <li>modify configure script to ensure that 8197 <code>USE_UTMP_SETGID</code> is defined only if the check for 8198 POSIX saved-ids succeeds, or corresponds to one of the BSD 8199 systems known to have a workable <code>setegid</code> 8200 function.</li> 8201 8202 <li>extend configure check for POSIX saved-ids to include BSD 8203 systems</li> 8204 8205 <li>modify CF_SYSV configure macro to work with gcc on HPUX 8206 10.20, whose broken <code><term.h></code> relies on 8207 including <code><termios.h></code>.</li> 8208 8209 <li>change order of setuid/setgid ifdef checks in Imakefile to 8210 make it simpler to produce a setgid install, allowing the 8211 latter to override the former (prompted by an XFree86 8212 commit).</li> 8213 8214 <li>adapt a fix for setgid support from subsequent XFree86 8215 changes (patch by Emanuele Giaquinta).</li> 8216 8217 <li>further improve setgid support (patches by Emanuele 8218 Giaquinta).</li> 8219 </ul> 8220 8221 <h1><a name="xterm_215" id="xterm_215">Patch #215 - 2006/6/19 - 8222 XFree86 4.6.99.2</a></h1> 8223 8224 <ul> 8225 <li>improve setgid support by exploiting the saved-ids feature 8226 on which it relies (patch by Emanuele Giaquinta).</li> 8227 8228 <li>make the <code>modifyOtherKeys</code> resource disabled by 8229 default since the intermediate setting altered some common 8230 bindings (report by Emanuele Giaquinta).</li> 8231 </ul> 8232 8233 <h1><a name="xterm_214" id="xterm_214">Patch #214 - 2006/6/18 - 8234 XFree86 4.6.99.2</a></h1> 8235 8236 <ul> 8237 <li>modify makefile rule for ctlseqs.txt to strip 8238 backspace/overstrikes, and add a copy of ctlseqs.txt to the 8239 source tarballs (requests by Bram Moolenaar, Emanuele 8240 Giaquinta).</li> 8241 8242 <li>add <code>modifyOtherKeys</code> resource, analogous to the 8243 <code>modifyCursorKeys</code> resource. This applies to keys 8244 that normally would transmit nothing when a given modifier is 8245 applied (request by Dan Nicolaescu).</li> 8246 8247 <li>add <code>default</code> to the acceptable values for the 8248 <code>keyboardType</code> resource, allowing the 8249 <code>-kt</code> command-line option to override app-defaults 8250 resource settings of <code>sunKeyboard</code>, etc.</li> 8251 8252 <li>correct ifdef's for <code>XkbBell()</code> which used the 8253 header file but not the corresponding function in <a href= 8254 "#xterm_175">patch #175</a> (report by Zach Beane).</li> 8255 8256 <li>add xterm manpage to the <code>--with-symlink</code> 8257 logic.</li> 8258 8259 <li>regenerated configure script to omit some debugging 8260 artifacts of the SIGWINCH test.</li> 8261 8262 <li>fix <code>install-man</code> rule in 8263 <code>Makefile.in</code> to avoid including the 8264 <code>$(DESTDIR)</code> value in substitutions made on the 8265 manpages (patch by Emanuele Giaquinta).</li> 8266 8267 <li>improved fix for cursor deallocation (Redhat #186935, patch 8268 by Jason Vas Dias).</li> 8269 8270 <li>improve checks for setuid/setgid operation to accommodate 8271 limited resource management in some kernels (Gentoo 8272 #193238).</li> 8273 8274 <li>update config.guess, config.sub</li> 8275 </ul> 8276 8277 <h1><a name="xterm_213" id="xterm_213">Patch #213 - 2006/4/30 - 8278 XFree86 4.5.99.905</a></h1> 8279 8280 <ul> 8281 <li>minor optimization to cell layout; will use that to 8282 simplify some logic and allow for more than two combining 8283 characters in another patch.</li> 8284 8285 <li>add <code>utf8Latin1</code> resource to make optional the 8286 feature from <a href="#xterm_209">patch #209</a> which allowed 8287 ISO-8859-1 fonts to be used in cases where a wide font was 8288 given. This would only work for the special case where the user 8289 normally used Latin-1 and wanted some wide characters (report 8290 by Rostislav Krasny).</li> 8291 8292 <li>add <code>utf8Title</code> resource to manpage (Novell 8293 #52655).</li> 8294 8295 <li>fix typo in table entry for <code>utf8Title</code> resource 8296 which made it treated as an integer rather than boolean (patch 8297 by Mike Fabian, Novell #52655).</li> 8298 </ul> 8299 8300 <h1><a name="xterm_212" id="xterm_212">Patch #212 - 2006/4/9 - 8301 XFree86 4.5.99.904</a></h1> 8302 8303 <ul> 8304 <li>improve description of <code>forceBoxChars</code> in 8305 manpage (discussion with Joe Wells).</li> 8306 8307 <li>set checkmark for "Select To Clipboard" menu entry on 8308 startup, from resource setting.</li> 8309 8310 <li>update manpage to note that 8311 <code>*customization:color</code> is not needed, though it is 8312 useful (Redhat #188034).</li> 8313 8314 <li>add underscore to sample pattern for URL in 8315 <code>XTerm.ad</code> (Redhat #188037).</li> 8316 8317 <li>modify install rule for manpage to use the configured 8318 app-defaults directory (Redhat #188031).</li> 8319 8320 <li>add checks in <code>releaseCursorGCs()</code> to ensure 8321 GC's are distinct, needed since memory leak changes for 8322 <a href="#xterm_208">patch #208</a> (Redhat #186935, patch by 8323 Jason Vas Dias).</li> 8324 8325 <li>modify <code>Imakefile</code> definitions to allow 8326 <code>imake</code> to set <code>InstallXtermSetGID</code>. Add 8327 symbol <code>InstGidFlags</code>.</li> 8328 8329 <li>add configure script check to ensure that SIGWINCH if 8330 defined even when headers undefine this as a side-effect of 8331 <code>_POSIX_C_SOURCE</code>, etc.</li> 8332 8333 <li>resync with XFree86 CVS 8334 <ul> 8335 <li>ifdef-out chmod of terminal device for OS/2 (XFree86 8336 #1663, Frank Giessler).</li> 8337 8338 <li>move new <code>Imakefile</code> chunk which defines 8339 <code>$(CSGIDFLAGS)</code> before DEFINES, e.g., for IRIX64 8340 (Marc La France).</li> 8341 </ul> 8342 </li> 8343 </ul> 8344 8345 <h1><a name="xterm_211" id="xterm_211">Patch #211 - 2006/3/19 - 8346 XFree86 4.5.99.902</a></h1> 8347 8348 <ul> 8349 <li>modify prefix/suffix transformation in makefile to make 8350 <code>uxterm</code> install properly on Cygwin.</li> 8351 8352 <li>restore the sizeof-comparison for <code>struct 8353 lastlog</code> added in <a href="#xterm_208">patch #208</a>, 8354 rendered (mostly) obsolete in <a href="#xterm_210">patch 8355 #210</a>, since an imake configuration can still turn that code 8356 on (prompted by comment by David Dawes).</li> 8357 8358 <li>remove feature for <code>FreeBSDArchitecture</code> from 8359 <code>Imakefile</code> which would install xterm using the 8360 <code>utmp</code> group since a standard FreeBSD system has no 8361 such group, though it would support this configuration. FreeBSD 8362 packager uses the <code>configure</code> script, which can make 8363 the appropriate check (prompted by comment by David 8364 Dawes).</li> 8365 8366 <li>fixes for gcc redefinition warnings when built using imake 8367 (reports by David Dawes, Marc La France).</li> 8368 </ul> 8369 8370 <h1><a name="xterm_210" id="xterm_210">Patch #210 - 2006/3/12 - 8371 XFree86 4.5.99.902</a></h1> 8372 8373 <ul> 8374 <li>add configure check for workaround in <a href= 8375 "#xterm_208">patch #208</a> for Solaris' inconsistent support 8376 for struct lastlog to quiet compiler warnings (prompted by 8377 David Dawes commit message for XFree86).</li> 8378 8379 <li>fixes for BASE64 selection manipulation, e.g., ensure that 8380 the string terminator is written after cut-buffer data (report 8381 by Joe Allen).</li> 8382 8383 <li>add vttests/paste64.pl script to test experimental option 8384 for setting/getting selection data.</li> 8385 8386 <li>add some error-checking in fontutils.c (prompted by David 8387 Dawes commit message for XFree86).</li> 8388 8389 <li>change xterm manpage to show the actual color resource 8390 names <code>XtDefaultForeground</code> and 8391 <code>XtDefaultBackground</code> rather than black and white 8392 (prompted by discussion with Emanuele Giaquinta).</li> 8393 8394 <li>add <code>utf8Title</code> resource and menu entry, 8395 allowing the user to control whether title strings are 8396 interpreted as ISO-8859-1 or UTF-8 encoding (Novell #52655, 8397 Novell #113206).</li> 8398 8399 <li>change order of ifdef's for utempter versus platforms in 8400 <code>Imakefile</code> to ensure a proper value for 8401 <code>InstallXtermSetGID</code> (prompted by Marc La France 8402 commit message for XFree86).</li> 8403 8404 <li>update the cursor GCs when menu entry for reverse video is 8405 toggled. (Redhat #183993).</li> 8406 8407 <li>a memory-leak fix for <code>set_cursor_gcs()</code> in 8408 <a href="#xterm_208">patch #208</a> broke the <code>-cm</code> 8409 option (Redhat #182382).</li> 8410 </ul> 8411 8412 <h1><a name="xterm_209" id="xterm_209">Patch #209 - 2006/2/12 - 8413 XFree86 4.5.99.22</a></h1> 8414 8415 <ul> 8416 <li>remove <code>setf</code> and <code>setb</code> from 8417 <code>xterm-256color</code> terminfo entry to avoid issues with 8418 applications that ignore the ANSI strings (report by Emanuele 8419 Giaquinta).</li> 8420 8421 <li>remove obsolete references to "Xorg" to avoid confusion 8422 with "X.org" (prompted by David Dawes commit message for 8423 XFree86).</li> 8424 8425 <li>improve initial layout performance for the toolbar 8426 configuration by precalculating the height of the toolbar.</li> 8427 8428 <li>remove menu entry for "Enable Curses Emulation" (to make 8429 room for "Select To Clipboard").</li> 8430 8431 <li>add resource <code>selectToClipboard</code>, action 8432 <code>set-select</code> and a menu entry to allow users to 8433 switch between PRIMARY and CLIPBOARD for select/paste.</li> 8434 8435 <li>allow cursor to have the same color as foreground (text), 8436 since it is rendered as reverse (Debian #350664).</li> 8437 8438 <li>amend change for loading <code>utf8Fonts</code> resource 8439 from <a href="#xterm_204">patch #204</a> to allow an ISO-8859-1 8440 "normal" font to be combined with an ISO-10646 font if the 8441 latter is given via the <code>-fw</code> option or its 8442 corresponding resource value (prompted by comment in Novell 8443 #49305).</li> 8444 8445 <li>add <code>TIOCSCTTY</code> <code>ioctl()</code> ifdef'd for 8446 <code>__GNU__</code> to set the controlling terminal (Debian 8447 #348457).</li> 8448 8449 <li>add configure option <code>--disable-leaks</code>.</li> 8450 8451 <li>add a check in <code>Bell</code> to ensure that the VT100 8452 widget is realized, since it may be called by 8453 <code>xtermLoadFont</code> given an incorrect font resource 8454 (Redhat #180450).</li> 8455 8456 <li>improve initialization of wide-bold font by not using the 8457 derived value when it happens to have few glyphs (report by 8458 Mboso Sampson).</li> 8459 8460 <li>improve dynamic colors by not repainting the screen if only 8461 the cursor color changes (request by Bram Moolenaar).</li> 8462 8463 <li>fix menu initialization for tek4014 window broken in 8464 <a href="#xterm_206">patch #206</a>.</li> 8465 8466 <li>typo in manpage (Debian #351425).</li> 8467 8468 <li>correct loop logic in <code>dotext</code> to prevent an 8469 infinite loop if a wide character was just at the right margin 8470 when wrapping was disabled (report by Serge van den Boom).</li> 8471 8472 <li>initialize the saved-cursor data so a restore-cursor 8473 operation without a preceding save-cursor operation will not 8474 modify the foreground color.</li> 8475 8476 <li>add a new selection feature: regular expressions, and new 8477 resources which specify what happens on multiple mouse clicks: 8478 <code>on2Clicks</code>, <code>on3Clicks</code>, 8479 <code>on4Clicks</code> and <code>on5Clicks</code>.</li> 8480 8481 <li>revert the <code>XTerm.ad</code> change from <a href= 8482 "#xterm_208">patch #208</a> (Debian #348384).</li> 8483 8484 <li>fixes for the print-window to make it handle combining 8485 characters in UTF-8 mode.</li> 8486 8487 <li>add check to ensure that double-clicking to extend 8488 selection will not extend it into the scrollback area. This 8489 still allows users to scroll back and select text (Debian 8490 #347415).</li> 8491 8492 <li>add configure option <code>--with-tty-group</code> to help 8493 work around deficiencies in packager's build environment 8494 (Debian #349142).</li> 8495 8496 <li>fix typo in configure script option 8497 <code>--disable-narrowproto</code> (report by David 8498 Martínez Moreno).</li> 8499 8500 <li>amend CF_X_FREETYPE changes for <code>pkg-config</code> 8501 check to ensure that <code>Xft</code> is known to that tool 8502 (report and patch by Emanuele Giaquinta).</li> 8503 8504 <li>add an ifdef to allow <code>./configure 8505 --disable-active-icon</code> to work, broken by new code for 8506 testing memory leaks in <a href="#xterm_208">patch #208</a> 8507 (report by Brian Lindholm).</li> 8508 </ul> 8509 8510 <h1><a name="xterm_208" id="xterm_208">Patch #208 - 2006/1/3 - 8511 XFree86 4.5.99.19</a></h1> 8512 8513 <ul> 8514 <li>add <code>charClass</code> resource to 8515 <code>XTerm.ad</code> and <code>UXTerm.ad</code> which 8516 simplifies selecting URLs (prompted by Kirill Ponomarew).</li> 8517 8518 <li>modify install rule for <code>uxterm</code> to account for 8519 the <code>--program-prefix</code>, etc., options by invoking 8520 the transformed name of xterm rather than simply "xterm".</li> 8521 8522 <li>modify configure <code>--with-app-defaults</code> option to 8523 allow <code>--without-app-defaults</code>.</li> 8524 8525 <li>add configure <code>--with-symlink</code> option to make it 8526 simpler to install successive versions of <code>xterm</code> 8527 renamed using the <code>--program-prefix</code>, etc., options 8528 with a symbolic link pointing to the most recent.</li> 8529 8530 <li>make <code>-iconic</code> option work with toolbar 8531 configuration (Gentoo #113604).</li> 8532 8533 <li>suppress <code>lastlog</code> feature for 64-bit Solaris 8534 configuration since that platform provides only a 32-bit 8535 interface (report by Peter Bray).</li> 8536 8537 <li>fix memory reallocation for the "UTF-8" menu entry when 8538 xterm is started using the <code>+u8</code> option (reported by 8539 Jan Willem Stumpel).</li> 8540 8541 <li>add a configure check for the actual path of 8542 <code>luit</code>, to work around broken <code>imake</code> 8543 configurations.</li> 8544 8545 <li>add a configure check for <code>pkg-config</code> (Redhat 8546 Bugzilla #173541).</li> 8547 8548 <li>modify install-rule for <code>uxterm</code> to omit 8549 executable suffix, e.g., for Cygwin.</li> 8550 8551 <li>modify <code>sinstall.sh</code> to work around quirks in 8552 Cygwin configuration.</li> 8553 </ul> 8554 8555 <h1><a name="xterm_207" id="xterm_207">Patch #207 - 2005/11/13 - 8556 XFree86 4.5.99.16</a></h1> 8557 8558 <ul> 8559 <li>enable <code>lastlogx</code> support for NetBSD (was added, 8560 but not enabled in <a href="#xterm_186">patch #186</a>).</li> 8561 8562 <li>work around broken <code>lastlog.h</code> in glibc 2.3.5, 8563 which includes <code>utmp.h</code>.</li> 8564 8565 <li>revert part of recent XFree86 Imakefile change, restoring 8566 the <code>-I.</code> needed for <code>xmkmf</code> builds of 8567 xterm (XFree86 Bugzilla #1633, reports by Alexander Pohoyda, 8568 Matthieu Herrb).</li> 8569 8570 <li>change compiled-in default for <code>printerCommand</code> 8571 resource to an empty string. People who want to use the printer 8572 should be able to read the manual (Debian #311490).</li> 8573 8574 <li>modify <code>Imakefile</code> to work around old problems 8575 in <code>imake</code> configuration to allow test-builds using 8576 <code>xmkmf</code> on Linux. (This was not noticed since 8577 several releases had broken definitions relating to Xft which 8578 were harder to work around).</li> 8579 8580 <li>link <code>resize</code> for SCO platforms (Kean 8581 Johnston).</li> 8582 </ul> 8583 8584 <h1><a name="xterm_206" id="xterm_206">Patch #206 - 2005/11/3 - 8585 XFree86 4.5.99.15</a></h1> 8586 8587 <ul> 8588 <li>add configure <code>--with-app-defaults</code> option to 8589 allow app-defaults directory for install-rules to be 8590 customized.</li> 8591 8592 <li>remove default translations for 8593 <code>dabbrev-expand()</code> due to conflicts with existing 8594 keyboard arrangements.</li> 8595 8596 <li>remove redundant check for <code>_NET_WM_PID</code> (report 8597 by Emanuele Giaquinta).</li> 8598 8599 <li>set icon border width explicitly to work around fvwm 8600 problem with active icon resizing (report by Steve Morris, 8601 analysis by Dominik Vogt).</li> 8602 8603 <li>modify resource files to make the font-resources a little 8604 more specific, e.g., changing "*VT100*" to "*VT100.", to make 8605 the distinction between VT100.font and VT100.utf8Fonts.font 8606 sharper, in case a packager modifies one of those.</li> 8607 8608 <li>expanded comments in <code>UXTerm.ad</code> regarding the 8609 font resources (Debian #319179).</li> 8610 8611 <li>add <code>--enable-narrowproto</code> configure option to 8612 accommodate X.org "modular" build (report by Stephan Hermann, 8613 Gentoo #17220).</li> 8614 8615 <li>fix typo in xterm.man description of <code>+wf</code> 8616 (patch by Tobias Stoeckmann).</li> 8617 8618 <li>add <code>scrollBarBorder</code> resource (request by Floyd 8619 L Davidson).</li> 8620 8621 <li>modify <code>xterm-new</code> terminfo entry to use 8622 capabilities for shifted scroll forward/reverse as shifted 8623 cursor up/down.</li> 8624 8625 <li>correct updating of checkmark for toolbar entry in popup 8626 menu (report by Emanuele Giaquinta).</li> 8627 8628 <li>fix ifdef's to allow compiling with toolbar and without 8629 tek4014 (patch by Emanuele Giaquinta).</li> 8630 8631 <li>use <code>openpty()</code> for Darwin port (patch by 8632 Emanuele Giaquinta).</li> 8633 8634 <li>fix Gentoo #90697 a different way, postponing the logic in 8635 <code>SetupToolbar</code> until the toolbar is actually needed, 8636 i.e., the <code>+tb</code> option is handled as expected.</li> 8637 8638 <li>revert fix made in <a href="#xterm_203">patch #203</a> for 8639 Gentoo #90697. That introduced a problem with the control mouse 8640 click-popups, while most of the performance problems can be 8641 resolved by restricting the menu fonts (report by Emanuele 8642 Giaquinta).</li> 8643 8644 <li>fix a file-descriptor leak when calling 8645 <code>openpty()</code> (OpenBSD system/4561).</li> 8646 8647 <li>make a special case of resizing work like vt100: a hard 8648 reset also resets the 132/80 mode. The code to support this was 8649 present since X11R5, but not used because the corresponding 8650 initial state of the <code>-132</code> option was not 8651 saved.</li> 8652 8653 <li>restore window manager hints after 8654 <code>XtMakeResizeRequest()</code> calls. One instance from 8655 <a href="#xterm_205">patch #205</a> resulted in the window 8656 manager displaying pixels rather than than characters after 8657 selecting a different font size (FreeBSD ports/87424).</li> 8658 8659 <li>remove special case for Darwin in CF_XOPEN_SOURCE (Emanuele 8660 Giaquinta).</li> 8661 8662 <li>modify parsing of control sequence <code>CSI T</code> 8663 to allow scroll-down to be sent while mouse tracking is enabled 8664 (request by D Hugh Redelmeier).</li> 8665 8666 <li>correct termcap "me" (mode-end) string so it does not 8667 modify the alternate character set (report by Andrey 8668 Chernov).</li> 8669 8670 <li>correct size-comparison in HandleInterpret() broken in 8671 changes from <a href="#xterm_201">patch #201</a> to allocate 8672 input buffer (Debian #334317).</li> 8673 8674 <li>amend adjustments for scrollbar layout from <a href= 8675 "#xterm_204">patch #204</a> to make this apply only to the 8676 toolbar configuration. In the non-toolbar configuration, the 8677 resulting scrollbar was shifted by its borderwidth (report by 8678 Matthieu Herrb).</li> 8679 8680 <li>add select-cursor-extend() action.</li> 8681 8682 <li>fix some broken href's in xterm.log.html, and typo in the 8683 INSTALL file (report/patch by David Martínez 8684 Moreno).</li> 8685 8686 <li>modify <code>Imakefile</code> to use setgid mode for 8687 installing with Linux, OpenBSD and FreeBSD.</li> 8688 8689 <li>add configure --with-setuid and --with-reference options to 8690 allow packagers more flexibility in customizing install 8691 permissions.</li> 8692 8693 <li>generalize and make optional (configure --with-utmp-setgid) 8694 the change made for XFree86 Bugzilla #878 in <a href= 8695 "#xterm_205">patch #205</a> (FreeBSD bug report 8696 #ports/86663).</li> 8697 </ul> 8698 8699 <h1><a name="xterm_205" id="xterm_205">Patch #205 - 2005/9/18 - 8700 XFree86 4.5.99.12</a></h1> 8701 8702 <ul> 8703 <li>correct a typo in CF_FUNC_TGETENT introduced in <a href= 8704 "#xterm_198">patch #198</a> fix for Gentoo #69926.</li> 8705 8706 <li>implement logic in termcap query to process multiple 8707 parameters as documented in ctlseqs.ms</li> 8708 8709 <li>fix buffer size used for termcap query, which was not long 8710 enough for the terminfo "colors" name (patch by Bradd W. 8711 Szonye).</li> 8712 8713 <li>add configure option --enable-readline-mouse, which turns 8714 on the experimental OPT_READLINE code (patch by Ilya 8715 Zakharevich).</li> 8716 8717 <li>for FreeBSD, drop setuid privileges after startup (XFree86 8718 Bugzilla #878, report/patch by Alexander Pohoyda)</li> 8719 8720 <li>add menu entry (alt-esc) and corresponding action 8721 (alt-sends-esc) to toggle the <code>eightBitInput</code> 8722 resource setting.</li> 8723 8724 <li>generate configure script with autoconf 2.52 (patched) to 8725 use the feature therein which forces the script's locale to 8726 POSIX (Gentoo Bugzilla #105369).</li> 8727 8728 <li>modify computation of rows/columns on resize to avoid 8729 extending beyond the given limits, e.g., if resizing in 8730 response to a "maximize" in Gnome or KDE which do not use the 8731 window manager hints for this case (Debian #289123, Novell 8732 #61153).</li> 8733 8734 <li>modifications to work with z/OS 1.4 (Paul Giordano).</li> 8735 8736 <li>improve error-reporting when chown/chmod of the 8737 pseudo-terminal fails, e.g., if a copy of xterm which was 8738 designed to work with old-style pseudo-terminals is not 8739 installed setuid or setgid (report by Jeremy C. Reed).</li> 8740 8741 <li>patches from Emanuele Giaquinta: 8742 <ul> 8743 <li>ctlseqs.ms says that primary and secondary DA accept a 8744 nonzero parameter, which is incorrect. Also modify code to 8745 agree with this.</li> 8746 8747 <li>correct a comment in 88colres.pl</li> 8748 8749 <li>ctlseqs.ms says that the DEC Set/Reset control 8750 sequences for the backarrow key make it send DEL/BS, 8751 respectively, while it's the opposite.</li> 8752 8753 <li>update the menu entries for the metaSendsEscape, 8754 deleteIsDEL and numLock resources when changing them with 8755 the corresponding DEC Set/Reset control sequences.</li> 8756 </ul> 8757 </li> 8758 8759 <li>fixes for configure script: 8760 <ul> 8761 <li>add special case for QNX, defining _QNX_SOURCE.</li> 8762 8763 <li>check for preprocessors which do not perform -U and -D 8764 options in the given order.</li> 8765 8766 <li>improve macro to determine gcc version</li> 8767 8768 <li>improve check for Intel compiler and related warning 8769 options</li> 8770 </ul> 8771 </li> 8772 8773 <li>update config.guess, config.sub</li> 8774 8775 <li>improve fix from <a href="#xterm_198">patch #198</a> for 8776 <code>Cleanup()</code> by ensuring it is not called from the 8777 SIGCHLD handler (patch by Todd Miller (OpenBSD CVS)).</li> 8778 8779 <li>eliminate a retry for a better-matching bold font, to work 8780 around recent font server changes.</li> 8781 8782 <li>fixes for Novell #113277: 8783 <ul> 8784 <li>specify weight for wide font which may be derived from 8785 normal fontname.</li> 8786 8787 <li>cache the derived wide- and widebolt-fontnames.</li> 8788 </ul> 8789 </li> 8790 8791 <li>workaround for Gentoo Bugzilla #100728.</li> 8792 8793 <li>add menubar's border width to layout computation. Normally 8794 this is zero, but patterns such as 8795 <code>XTerm*borderWidth:1</code> would give poor layout for the 8796 toolbar configuration.</li> 8797 </ul> 8798 8799 <h1><a name="xterm_204" id="xterm_204">Patch #204 - 2005/8/4 - 8800 XFree86 4.5.99.9</a></h1> 8801 8802 <ul> 8803 <li>work around quirk in shell which allowed user to "run" 8804 uxterm script when there was no UTF-8 locale installed by 8805 entering "sh -x uxterm". Also popup an xmessage to show the 8806 problem for users who run this via a GUI (Debian #318513).</li> 8807 8808 <li>disallow changes to fonts, toolbar and scrollbar when the 8809 vt100 window is iconified, to simplify management of the active 8810 icon.</li> 8811 8812 <li>fixes to make <code>-geom</code> option work properly with 8813 the toolbar configuration (Gentoo #90717, Gentoo #91967).</li> 8814 8815 <li>minor improvements to scrollbar layout: ensure that the 8816 scrollbar border is zero if the vt100 border is zero.</li> 8817 8818 <li>improve initialization due to <code>utf8</code> resource by 8819 loading the <code>utf8Fonts</code> resource in the case where 8820 <code>locale</code> resource is false. Also in this case, do 8821 not disable switching UTF-8 mode on/off.</li> 8822 8823 <li>minor optimization of TrueType font-loading, loads italic 8824 font only when needed.</li> 8825 8826 <li>correct variable used to store temporary result from lookup 8827 of bold font, when initializing the wide-bold-font data and no 8828 immediate match is found by asking for a bold variant of the 8829 wide-font. The result was to use overstriking rather than the 8830 actual bold font (Debian #318162, patch by Eugene Konev).</li> 8831 8832 <li>add checks to ensure vt100 widget is realized when it might 8833 be updated via actions handled from a tek4014-only 8834 configuration.</li> 8835 </ul> 8836 8837 <h1><a name="xterm_203" id="xterm_203">Patch #203 - 2005/7/6 - 8838 XFree86 4.5.99.7</a></h1> 8839 8840 <ul> 8841 <li>modify initialization of <code>allowSendEvents</code> and 8842 <code>allowWindowOps</code> to prevent modification with the 8843 editres protocol.</li> 8844 8845 <li>fix compiler warning for NetBSD by including util.h in 8846 main.c (XFree86 Bugzilla #1596).</li> 8847 8848 <li>fix to build on Darwin 8.x, which no longer provides 8849 <code>setpgrp()</code> (patch by Min Sik Kim).</li> 8850 8851 <li>adapted fixes for Legend (SCO) from diffs attached to 8852 Freedesktop.Org Bugzilla #3180.</li> 8853 8854 <li>fix typo in xterm manpage description of <code>-ls</code> 8855 option (Freedesktop.Org Bugzilla #3543).</li> 8856 8857 <li>add support for interpreting the underline attribute as an 8858 italic font in Xft mode (patch by Chuck Blake).</li> 8859 8860 <li>improve initialization of toolbar so that individual 8861 pulldown menus are initialized on demand, as they are in the 8862 scenario where they are invoked as popup menus (Gentoo Bugzilla 8863 #90697).</li> 8864 8865 <li>fix logic in <code>find_utmp</code>, which did not reset 8866 result in <code>getutid()</code>, causing an infinite loop in 8867 some conditions (report by Emil Mikulic).</li> 8868 8869 <li>set the <code>_NET_WM_PID</code> property (Gentoo Bugzilla 8870 #91008).</li> 8871 8872 <li>modify ifdef's in ptyx.h and xterm_io.h to build with 8873 DragonFly (patch by Jeroen Ruigrok).</li> 8874 8875 <li>change default values for <code>minBufSize</code> and 8876 <code>maxBufSize</code> to 4096 and 32768 respectively so that 8877 the initial read request will match the value from before 8878 changes to use <code>sched_yield()</code>.</li> 8879 8880 <li>make paste of UTF-8 faster for Western character sets by 8881 checking range of incoming data (patch by Joe Allen).</li> 8882 8883 <li>add experimental option to allow applications to get or set 8884 the selection data as a BASE64 string (adapted from patch by 8885 Joe Allen).</li> 8886 8887 <li>fix an off-by-one error parsing <code>-S/nn</code> option 8888 (Debian #311438, report/fix by Peter Chubb).</li> 8889 8890 <li>fix an initialization bug from <a href="#xterm_201">patch 8891 #201</a> that broke logging (report by Rodney Thayer).</li> 8892 8893 <li>amend change to command-line processing in <a href= 8894 "#xterm_201">patch #201</a> to avoid conflict with 8895 <code>-e</code> option (report by Servatius Brandt).</li> 8896 8897 <li>suppress configure check for <code>_XOPEN_SOURCE</code> on 8898 darwin.</li> 8899 8900 <li>update config.guess, config.sub</li> 8901 </ul> 8902 8903 <h1><a name="xterm_202" id="xterm_202">Patch #202 - 2005/5/2 - 8904 XFree86 4.5.99.3</a></h1> 8905 8906 <ul> 8907 <li>add extended shift- and control-modifier cursor keys to 8908 "xterm+pcfkeys" terminfo entry to correspond to ncurses 8909 20050430 patch.</li> 8910 8911 <li>fix a rare case where text would be written with the wrong 8912 colors because output of scrolled text would reset the colors 8913 and the new text would be written with the same colors 8914 (report/testcase by Thomas Glanzmann).</li> 8915 8916 <li>rename <code>$CMD</code> variable in <code>plink.sh</code> 8917 because it is a reserved symbol in bash 3.00.16 (report by Ted 8918 Taylor).</li> 8919 8920 <li>add environment variables <code>$XTERM_SHELL</code> and 8921 <code>$XTERM_VERSION</code> (request by Zdenek Sekera).</li> 8922 8923 <li>corrected workaround for background color of menubar, which 8924 gave a too-broad expression, coloring the background of the 8925 VT100 widget unless overridden by another resource 8926 setting.</li> 8927 8928 <li>correct an error in the logic which decides when 8929 <code>sched_yield()</code> is run; it would occasionally hang 8930 when contending with other pseudo-terminal applications such as 8931 screen (report by Kirill Ponomarew).</li> 8932 8933 <li>modify initialization to decide whether to default to 8934 built-in <code>wcwidth()</code> versus system's version based 8935 on the starting locale and whether the system's version is poor 8936 quality (suggested by Bram Moolenaar).</li> 8937 8938 <li>update table for <code>mk_width()</code> from UnicodeData 8939 4.1.0 using Markus Kuhn's <code>uniset</code> script.</li> 8940 </ul> 8941 8942 <h1><a name="xterm_201" id="xterm_201">Patch #201 - 2005/4/21 - 8943 XFree86 4.5.99.2</a></h1> 8944 8945 <ul> 8946 <li>improve resource files to show how the menubar and popup 8947 menus can be colored (prompted by report by Joe Wells).</li> 8948 8949 <li>modify parsing of OSC (and SOS, etc), strings so their 8950 contents are not interpreted as UTF-8. This allows non-ASCII 8951 title strings to be set, provided that the window manager 8952 complies (report by Thomas Wolff).</li> 8953 8954 <li>improved some of the built-in line-drawing glyphs.</li> 8955 8956 <li>correct color of "box" character drawn for line-drawing 8957 glyph 1 (report by Nicolas George).</li> 8958 8959 <li>improve behavior when switching to UTF-8 mode after startup 8960 so xterm will check if the current fonts are already wide 8961 (ISO10646-1). If they are not, xterm will use the 8962 <code>utf8Fonts</code> subresource to load appropriate fonts 8963 (request by Bram Moolenaar).</li> 8964 8965 <li>modify logic for setting title-string so it applies to the 8966 current widget rather than the vt100 widget.</li> 8967 8968 <li>modify initialization for wide-bold fontname, to search for 8969 one if none is given (report by Michael Schroeder).</li> 8970 8971 <li>add resource <code>mkWidth</code> and command-line option 8972 <code>-mk_width</code> to control whether xterm uses the 8973 built-in version of wcwidth().</li> 8974 8975 <li>add resource settings for minimum/maximum input buffer 8976 size, and call to <code>sched_yield</code> to improve 8977 performance with newer Linux kernels (adapted from patch by 8978 Nicolas George).</li> 8979 8980 <li>correct computation of width for wide characters with the 8981 invisible attribute (report by Thomas Wolff).</li> 8982 8983 <li>modify interaction between <code>+u8</code> and 8984 <code>locale</code> resource to allow the command-line option 8985 to override the resource (requested by Thomas Wolff).</li> 8986 8987 <li>add a limit check for scrolling margins in a one-line 8988 screen, overlooked in fixes for <a href="#xterm_198">patch 8989 #198</a> (Debian #297430).</li> 8990 8991 <li>correct treatment of <code>iconBorderWidth</code> for 8992 resizing an active-icon, and its description in manpage (Debian 8993 #296592).</li> 8994 8995 <li>modify configure script <code>--disable-imake</code> to use 8996 the script's definitions anyway if it cannot detect imake 8997 (prompted by FreeBSD bug 77408).</li> 8998 8999 <li>ignore error in the I/O initialization that tries to set 9000 the tty to 7-bit input for the case where 9001 <code>eightBitInput</code> resource is false (Debian 9002 #298551).</li> 9003 9004 <li>modify command-processing to accept an optional parameter 9005 that tells xterm which shell program to use (request by Zdenek 9006 Sekera).</li> 9007 9008 <li>add simpler resource <code>keyboardType</code> which, when 9009 set, overrides the individual keyboard-type resources and 9010 eliminates the possibility of conflict between them.</li> 9011 9012 <li>add initialization for <code>scoFunctionKeys</code> 9013 resource (report by Rick K).</li> 9014 9015 <li>correct logic of <code>ReallocateBufOffsets()</code> which 9016 did not copy the content of the old screen buffer to the proper 9017 location, making a repaint clear after switching to 9018 wide-character mode (report by Bram Moolenaar):</li> 9019 9020 <li>implement the remaining pieces to make xterm allocate cells 9021 for wide-characters when the "UTF-8" menu entry is selected. 9022 Also, load the UTF-8 font when that menu entry is selected, or 9023 the escape sequence for UTF-8 mode is received (report by Bram 9024 Moolenaar):</li> 9025 9026 <li>add command-line options (<code>-tb</code>, 9027 <code>+tb</code>) and resource <code>toolBar</code> to allow 9028 menu/toolbar to disabled or enabled at startup (prompted by 9029 reports by Joe Wells).</li> 9030 9031 <li>correct typo in configure script's --enable-dec-locator 9032 option (report by Bram Moolenaar).</li> 9033 </ul> 9034 9035 <h1><a name="xterm_200" id="xterm_200">Patch #200 - 2005/2/6 - 9036 XFree86 4.4.99.23</a></h1> 9037 9038 <ul> 9039 <li>increase color pairs value for xterm-256color and 9040 xterm-88color to match ncurses, which has an experimental 9041 option to support this.</li> 9042 9043 <li>modify ifdef's to make AIX use termios rather than termio; 9044 the struct sizes for the two were not the same.</li> 9045 9046 <li>improve CF_WITH_IMAKE_CFLAGS configure macro script for 9047 OSMAJORVERSION and OSMINORVERSION values, e.g., for Tru64 and 9048 AIX.</li> 9049 9050 <li>modify ifdef to define USE_POSIX_TERMIOS for Darwin (patch 9051 by Min Sik Kim).</li> 9052 9053 <li>modify find_utmp() to initialize the whole utmpx struct 9054 (except ut_id), since that is needed for OSF1 4.0D to prevent 9055 an infinite loop on exit.</li> 9056 9057 <li>add configure check before adding -D_POSIX_SOURCE since 9058 some platforms predefine it, e.g., cygwin.</li> 9059 9060 <li>add simplified sed expressions in CF_IMAKE_CFLAGS configure 9061 script macro to ensure value for PROJECTROOT is quoted on 9062 Solaris, i.e., when nested <code>\(</code> and <code>\)</code> 9063 are not interpreted correctly.</li> 9064 9065 <li>correct DEC rectangle operations to reset state after 9066 completing the operations.</li> 9067 9068 <li>modify CASE_ST handling in charproc.c to ensure that the 9069 parse state is reset even if xterm is not currently processing 9070 an OSC or other string (patch by Johnny Billquist forwarded by 9071 Matthias Scheler, NetBSD xsrc/29003).</li> 9072 9073 <li>fix OS/2 build for innotek_libc (patch by David Yeo).</li> 9074 9075 <li>fix a regression from <a href="#xterm_197">patch #197</a> 9076 fix for Debian #277832 which disowned the selection if it was 9077 scrolled, e.g., by the user pressing return at the bottom of 9078 the screen (Debian #291787).</li> 9079 9080 <li>move the warning/exit for missing $DISPLAY into the error 9081 handler in case <code>-display</code> is given, and the connect 9082 fails for some other reason.</li> 9083 </ul> 9084 9085 <h1><a name="xterm_199" id="xterm_199">Patch #199 - 2005/1/17 - 9086 XFree86 4.4.99.22</a></h1> 9087 9088 <ul> 9089 <li>instead of setting <code>$DISPLAY</code>, check for the 9090 unset variable and warn/exit on this condition (comments by H 9091 Merijn Brand and Bernhard R Link).</li> 9092 9093 <li>fix a typo in Imakefile from <a href="#xterm_198">patch 9094 #198</a> (reports/patches by Stefan Dirsch, Mike Castle).</li> 9095 </ul> 9096 9097 <h1><a name="xterm_198" id="xterm_198">Patch #198 - 2005/1/13 - 9098 XFree86 4.4.99.21</a></h1> 9099 9100 <ul> 9101 <li>set <code>$DISPLAY</code> to ":0" if it is not set.</li> 9102 9103 <li>add <code>utmpDisplayId</code> resource to allow users to 9104 control whether the display identifier (display number and 9105 screen number) are retained in the connection information 9106 recorded in utmp (discussion with Edoardo Tirtarahardja).</li> 9107 9108 <li>add <code>bellOnReset</code> resource to allow users to 9109 disable bell which sounds on hard reset since <a href= 9110 "#xterm_183">patch #183</a> changes to DECSCL (discussion with 9111 Danek Duvall).</li> 9112 9113 <li>improve <code>$WINDOWID</code> for configuration with 9114 toolbar by making it refer to the top-level shell rather than 9115 the parent of the current window. For that case, the parent is 9116 a form widget, which does not have a name, which made the 9117 <code>$WINDOWID</code> not very useful as a parameter for 9118 <code>xwininfo</code> (suggested by Dave Bodenstab).</li> 9119 9120 <li>fix a typo in WhichVFont() macro from <a href= 9121 "#xterm_197">patch #197</a> changes which broke the 9122 --disable-active-icon configuration (report by Ralf S. 9123 Engelschall).</li> 9124 9125 <li>improve some limit checks (Gentoo Bugzilla #75604).</li> 9126 9127 <li>add --disable-setuid option to configure script (Gentoo 9128 Bugzilla #76543).</li> 9129 9130 <li>add --disable-full-tgetent option to configure script, 9131 allowing one to ignore a termcap library in favor of 9132 ncurses/curses (Gentoo Bugzilla #69926).</li> 9133 9134 <li>modify configure script to choose useful warning options 9135 for Intel version 8.0 compiler.</li> 9136 9137 <li>update config.guess, config.sub</li> 9138 9139 <li>make active-icon work properly when TrueType fonts are used 9140 (Debian #286068).</li> 9141 9142 <li>correct change from <a href="#xterm_157">patch #157</a> 9143 which uses getlogin() to check for an alias; the storage used 9144 for the related getpwuid() call was overwritten by the data 9145 used for comparison (patch by Per Hedeland).</li> 9146 9147 <li>correct case of SCS for character set 0 (line-drawing) to 9148 allow it to be selected into GR.</li> 9149 9150 <li>fix a file-descriptor leak (Redhat Bugzilla #139597).</li> 9151 9152 <li>modify <code>creat_as()</code> to only fork if xterm is 9153 actually running as setuid and/or setgid. This works around a 9154 Cygwin bug which hangs when logging is enabled and makes xterm 9155 a little faster for systems using interfaces such as utempter 9156 (report by Al Goodman).</li> 9157 9158 <li>modify <code>Cleanup()</code> to avoid operations such as X 9159 calls that might use unsafe functions when it is called by a 9160 signal handler (report by Michiel Boland).</li> 9161 9162 <li>fix bugs in <a href="#xterm_191">patch #191</a> and in SRM 9163 changes from <a href="#xterm_197">patch #197</a> that broke 9164 DECSET 38: switch to Tek4014 emulation (report by Dave 9165 Bodenstab).</li> 9166 9167 <li>fix for manpage escapes (Marc La France).</li> 9168 9169 <li>improve on IRIX-specific change for Imakefile in XFree86 9170 CVS versus resize linking against termcap library to reflect 9171 definitions for USE_TERMCAP in resize.c</li> 9172 </ul> 9173 9174 <h1><a name="xterm_197" id="xterm_197">Patch #197 - 2004/11/30 - 9175 XFree86 4.4.99.19</a></h1> 9176 9177 <ul> 9178 <li>modify configure script to remove empty "-DPROJECTROOT=" 9179 definition which resulted unusable values for luit's default 9180 path.</li> 9181 9182 <li>update precompose.c based on Unicode 4.0.1</li> 9183 9184 <li>several minor fixes based on Intel compiler warnings.</li> 9185 9186 <li>change default translations so a <code>BtnDown</code> which 9187 is not recognized is simply ignored rather than emitting a 9188 bell. That makes it less obtrusive when the user tries to use a 9189 mouse which provides more capabilities than the X mouse driver 9190 supports, e.g., one with a horizontal scroll wheel (Debian 9191 #265133).</li> 9192 9193 <li>note in xterm's manpage that <code>translations</code> is 9194 not specific to xterm (Debian #278897).</li> 9195 9196 <li>modify uxterm script to use locale program to verify if the 9197 derived locale is installed (Debian #246398).</li> 9198 9199 <li>correct font handling for active icon when in UTF-8 mode 9200 (report by Paolo Liberatore).</li> 9201 9202 <li>make active-icon and toolbar configurations work 9203 together.</li> 9204 9205 <li>modify the criteria for disowning primary selection. 9206 Previously, this happened anytime the cursor was moved before 9207 the end of the selection. That would ensure that any 9208 insert/delete of char or line, as well as scrolling, would 9209 disown the selection. The new criteria change this to checking 9210 if the operations would modify the data which is highlighted 9211 (Debian #277832).</li> 9212 9213 <li>reimplement <code>DECALN</code> with functions for vt420 9214 rectangles, fixes selection for this case.</li> 9215 9216 <li>implement vt420 rectangle operations.</li> 9217 9218 <li>add parsing, for debug/test of vt220 soft-fonts.</li> 9219 9220 <li>add menu entry, actions and escape sequence to allow 9221 enabling/disabling toolbars at runtime.</li> 9222 9223 <li>improve rendering for Xft, allow it to draw non-linedrawing 9224 characters such as "pi", which were drawn from internal tables 9225 with <a href="#xterm_180">patch #180</a> (Freedesktop.org 9226 Bugzilla #1260).</li> 9227 9228 <li>add configure option <code>--enable-mini-luit</code>, 9229 ifdef'd the mini-luit feature with 9230 <code>OPT_MINI_LUIT</code>.</li> 9231 9232 <li>add mini-luit feature, which supports Latin9 directly 9233 rather than via luit, provided that Unicode fonts are used 9234 (Freedesktop.org Bugzilla #1571, request by Stefan Dirsch, 9235 patch by Michael Schroeder).</li> 9236 9237 <li>for Linux, if IUTF8 is defined, e.g., on recent 2.6.x 9238 kernels, set the corresponding flag for the slave pty, to 9239 enable UTF-8 interpretation of backspace in cooked mode 9240 (Freedesktop.org Bugzilla #1578, request by Stefan 9241 Dirsch).</li> 9242 9243 <li>modify <code>faceSize</code> resource to use a 9244 floating-point internal value (adapted from patch by Sam 9245 Stephenson).</li> 9246 9247 <li>correct handling selection of tabs over cleared space in 9248 UTF-8 mode. In this special case, xterm represents the 9249 whitespace with a null rather than a space character (Debian 9250 #276447).</li> 9251 9252 <li>amend fix for infinite loop from <a href="#xterm_192">patch 9253 #192</a> to check if there is wrapped text to output in a 9254 following iteration (Debian #273202).</li> 9255 9256 <li>fixes ifdef'd with <code>__INTERIX</code> to allow building 9257 with Interix (Windows Services for UNIX) 3.5 using the xlibs 9258 libraries from freedesktop.org (patch by Min Sik Kim).</li> 9259 9260 <li>amend solution for Debian #252873, Debian #260471 from 9261 <a href="#xterm_194">patch #194</a> by making the cursor not 9262 explicitly colored if only the foreground color is set, and the 9263 cursor is on a blank space (Debian #275473).</li> 9264 9265 <li>correct logic for send/receive mode (SRM) with regard to 9266 control characters.</li> 9267 9268 <li>fix masking of invisible text in wide-character mode, which 9269 did not work for line-drawing characters.</li> 9270 9271 <li>incorporate CF_XOPEN_SOURCE into configure script, 9272 replacing CF_GNU_SOURCE.</li> 9273 </ul> 9274 9275 <h1><a name="xterm_196" id="xterm_196">Patch #196 - 2004/8/15 - 9276 XFree86 4.4.99.12</a></h1> 9277 9278 <ul> 9279 <li>add a special case to configure script to ignore NetBSD's 9280 <code>grantpt()</code> which was recently added (but not part 9281 of a release), until someone is able to ensure that xterm can 9282 use it (report by Min Sik Kim).</li> 9283 9284 <li>clear the buffer returned by getutid(). This fixes an 9285 infinite loop on some platforms introduced in <a href= 9286 "#xterm_193">patch #193</a> by Debian #256468 fix (report by 9287 David Ellement).</li> 9288 </ul> 9289 9290 <h1><a name="xterm_195" id="xterm_195">Patch #195 - 2004/8/8 - 9291 XFree86 4.4.99.11</a></h1> 9292 9293 <ul> 9294 <li>correct length used for blinking text, make the last column 9295 blink (patch by Alexander V Lukyanov).</li> 9296 9297 <li>start changes to make doublesize characters work with 9298 TrueType fonts (see <a href="#xterm_44">patch #44</a>).</li> 9299 9300 <li>trim leading/trailing blanks from color resources as done 9301 for other strings in <a href="#xterm_167">patch #167</a>.</li> 9302 9303 <li>fixes for <code>showBlinkAsBold</code> resource (report by 9304 Christoph Berg).</li> 9305 </ul> 9306 9307 <h1><a name="xterm_194" id="xterm_194">Patch #194 - 2004/7/27 - 9308 XFree86 4.4.99.11</a></h1> 9309 9310 <ul> 9311 <li>change clearing operations so foreground color attribute is 9312 not set. Usually this is benign, but in some cases when the 9313 cursor color is not set explicitly, the cursor would show this 9314 color (Debian #252873, Debian #260471).</li> 9315 9316 <li>add extra state (cursor-moved) to guard against deciding 9317 that the cursor did not require repainting after an indexing 9318 operation that leaves the cursor in the same location on the 9319 screen.</li> 9320 9321 <li>fix a case where a full-screen indexing operation would not 9322 restore the cursor-busy state.</li> 9323 9324 <li>fix a repainting bug introduced in <a href= 9325 "#xterm_180">patch #180</a>: when using a font lacking 9326 line-drawing characters, a repaint of the screen could skip 9327 horizontally an extra amount after filling in the missing 9328 character (reports by Nicolas George, Hans de Goede, Redhat 9329 Bugzilla #128341).</li> 9330 9331 <li>rename terminfo fragment "xterm-pc-fkeys" to 9332 "xterm+pcfkeys" for consistency with ncurses.</li> 9333 </ul> 9334 9335 <h1><a name="xterm_193" id="xterm_193">Patch #193 - 2004/7/19 - 9336 XFree86 4.4.99.10</a></h1> 9337 9338 <ul> 9339 <li>fix for wide-character selection from OpenBSD CVS 9340 (report/patch by Matthieu Herrb).</li> 9341 9342 <li>modify initialization and cleanup of utmp data to also 9343 compare the <code>ut_line</code> member (Debian #256468).</li> 9344 9345 <li>modify check on focus-change to ignore 9346 <code>FocusOut</code> events generated by 9347 <code>XGrabKeyboard</code>. This fixes a case where the text 9348 cursor would act as if focus were lost when selecting the 9349 "Secure Keyboard" menu option.</li> 9350 9351 <li>add <code>gen-pc-fkeys.pl</code> script, use that to 9352 generate terminfo fragment corresponding to the pc-style 9353 function keys.</li> 9354 9355 <li>fix a case where the checkmark by the "VT220 Keyboard" menu 9356 entry was not set on startup.</li> 9357 9358 <li>separated two methods for making the cursor blink (menu and 9359 escape sequence) by using the menu as the primary method and 9360 XOR'ing the state of the escape sequence against that.</li> 9361 9362 <li>modify logic for enabling blinking cursor via escape 9363 sequence as well as the related save/restore operations so this 9364 is only available if the <code>cursorBlink</code> resource was 9365 set on startup.</li> 9366 </ul> 9367 9368 <h1><a name="xterm_192" id="xterm_192">Patch #192 - 2004/7/12 - 9369 XFree86 4.4.99.9</a></h1> 9370 9371 <ul> 9372 <li>change resource settings for color4 and color12, add some 9373 discussion in <code>XTerm-col.ad</code> (Debian #241717).</li> 9374 9375 <li>add a note in xterm manpage discussing the difference 9376 between alt- and meta-keys, and the way the latter is used in 9377 the <code>eightBitInput</code> resource.</li> 9378 9379 <li>add a note in xterm manpage regarding possible conflict 9380 between resource settings for <code>xterm.vt100.font</code> and 9381 <code>xterm.vt100.utf8Fonts.font</code> (Debian #254650).</li> 9382 9383 <li>add compile-time customization of 9384 <code>backarrowKeyIsErase</code> and 9385 <code>ptyInitialErase</code> default resource values (adapted 9386 from OpenBSD CVS).</li> 9387 9388 <li>change parameter of <code>FIONREAD</code> 9389 <code>ioctl()</code> call from long to int (discussion on 9390 tech-x11@netbsd.org regarding LP64 by John Heasley and Matthias 9391 Scheler).</li> 9392 9393 <li>modify configure script options for Athena widgets to work 9394 as expected for "--without-Xaw3d", etc., (Gentoo Bugzilla 9395 #53455).</li> 9396 9397 <li>add case to uxterm to accommodate locales ending with 9398 "@euro", e.g., fr_FR.UTF-8@euro (Debian #255197, 9399 report/analysis by Matthieu Lagouge).</li> 9400 9401 <li>add special case for VT100 graphic's "box" character 9402 (discussion with Ben Armstrong).</li> 9403 9404 <li>add missing initialization for bitmap-font sizes needed to 9405 make fonts menu work with TrueType fonts (report by Ben 9406 Armstrong).</li> 9407 9408 <li>save the fontnames for bold fonts that are derived from 9409 normal fonts, or from the <code>boldFont</code> resource, so 9410 the same value is restored when switching with the VT Fonts 9411 menu (Debian #256086).</li> 9412 9413 <li>fix manpage preprocessing (Marc La France).</li> 9414 9415 <li>fix typo in manpage's description of character classes 9416 (Debian #257073).</li> 9417 9418 <li>modify terminfo to accommodate luit, which relies on G1 9419 being used via an ISO-2022 escape sequence (Debian #254316, 9420 analysis by Juliusz Chroboczek).</li> 9421 9422 <li>modify Makefile.in rule for ctlseqs.txt to work around 9423 groff SGR misfeature.</li> 9424 9425 <li>modify <code>XTerm.ad</code> to set <code>saveLines</code> 9426 default to 1024 (Redhat Bugzilla #127132).</li> 9427 9428 <li>add a limit-check in <code>dotext()</code> to prevent 9429 infinite loop in a corner case of UTF-8 configuration.</li> 9430 9431 <li>update config.guess, config.sub</li> 9432 </ul> 9433 9434 <h1><a name="xterm_191" id="xterm_191">Patch #191 - 2004/6/6 - 9435 XFree86 4.4.99.7</a></h1> 9436 9437 <ul> 9438 <li>correct options parsing for <code>-into</code> option so it 9439 can be combined with <code>-e</code> (Redhat Bugzilla #124518, 9440 report/patch by James Armstrong).</li> 9441 9442 <li>fix ifdef's for <code>OPT_COLOR_RES2</code> so that the 9443 fake resource table introduced in <a href="#xterm_188">patch 9444 #188</a> is not compiled if it is empty. This happened to work 9445 with gcc (report by Joel Konkle-Parker).</li> 9446 9447 <li>reorganize ptydata.c to use one input buffer shared between 9448 the VTxxx and tek4014 emulators. In the new scheme, UTF-8 9449 decoding is performed on characters as they are needed by the 9450 state machine rather than on buffers as they are read.</li> 9451 9452 <li>work around change in quoting of PROJECTROOT symbol when 9453 using configure script, from changes made in <a href= 9454 "#xterm_187">patch #187</a> for CF_IMAKE_CFLAGS (Gentoo 9455 Bugzilla #50982).</li> 9456 </ul> 9457 9458 <h1><a name="xterm_190" id="xterm_190">Patch #190 - 2004/5/25 - 9459 XFree86 4.4.99.6</a></h1> 9460 9461 <ul> 9462 <li>correct state for values in the range 128-159 after 9463 translating from UTF-8: this should be ignored unless the user 9464 overrides it with the <code>allowC1Printable</code> resource 9465 (reported by Simon Strandgaard).</li> 9466 9467 <li>add configure-script check for nl_langinfo(CODESET), use 9468 this to replace check of environment variables for UTF-8.</li> 9469 9470 <li>change Makefile.in rules for 256colres.h and 88colres.h so 9471 they are only made if they do not exist. The maintainer-clean 9472 rule will remove these files; they require perl to be 9473 made.</li> 9474 9475 <li>remove check in configure script --enable-toolbar that 9476 suppressed this option when building with Xaw7.</li> 9477 9478 <li>apply fixes to Tektronix widget used for VT100 widget to 9479 make toolbar work with Xaw7 (XFree86 4.x).</li> 9480 </ul> 9481 9482 <h1><a name="xterm_189" id="xterm_189">Patch #189 - 2004/5/16 - 9483 XFree86 4.4.99.6</a></h1> 9484 9485 <ul> 9486 <li>do not call xim_real_init() if <code>openIm</code> resource 9487 is false (Debian #249025).</li> 9488 9489 <li>minor improvements to built-in line-drawing.</li> 9490 9491 <li>fix a few portability issues with dynamic abbreviation 9492 support, i.e., did not compile on Tru64.</li> 9493 9494 <li>modify constraints in form used to layout toolbar, to work 9495 with newer Xaw in XFree86 4.x.</li> 9496 </ul> 9497 9498 <h1><a name="xterm_188" id="xterm_188">Patch #188 - 2004/5/12 - 9499 XFree86 4.4.99.6</a></h1> 9500 9501 <ul> 9502 <li>correct table entry for DEL in the ground state, which 9503 marked it as a printable character from <a href= 9504 "#xterm_171">patch #171</a> (report by D Hugh Redelmeier).</li> 9505 9506 <li>improve fix in <a href="#xterm_186">patch #186</a> for 9507 failure in xim_real_init() by adding a sleep.</li> 9508 9509 <li>fix a typo in os2main.c (XFree86 Bugzilla #1358, 9510 report/patch by Frank Giessler).</li> 9511 9512 <li>make escape sequence reporting dynamic colors consistent 9513 with the logic that sets it; choosing the opposite color when 9514 reverse video is set (XFree86 Bugzilla #1361, reported by Bradd 9515 W Szonye).</li> 9516 9517 <li>modify initialization of 256- and 88-colors so that colors 9518 beyond 16 are normally not X resources. This works around a 9519 hard-coded limit in Xt which breaks xterm when 256-colors and 9520 luit are both configured (report by Noah Friedman).</li> 9521 9522 <li>remove <code>ncv</code> from <code>xterm-256color</code> 9523 terminfo entry since it is no longer needed (report by Eli 9524 Zaretskii).</li> 9525 9526 <li>add "erase2" and "eol2" keywords to <code>ttyModes</code> 9527 resource, for recent/current FreeBSD.</li> 9528 9529 <li>improve ifdef's for utempter library to omit direct calls 9530 to <code>setutent()</code> or <code>getutent()</code> (adapted 9531 from patch by Christian Biere).</li> 9532 9533 <li>add dynamic abbreviation support like Emacs (patch by 9534 Tomasz Cholewo). This is ifdef'd with <code>OPT_DABBREV</code>, 9535 and enabled via the configure script 9536 <code>--enable-dabbrev</code> option.</li> 9537 9538 <li>fix problem responding to session management events, e.g., 9539 which would make logging out very slow (patch by Eddy De Greef, 9540 Debian #233883).</li> 9541 9542 <li>work around a newer bug in toolbar with XFree86 by forcing 9543 menus to be fully initialized at startup. In older versions of 9544 XFree86 and X11R6, it was possible to delay initialization of 9545 the menu contents until it was popped up. (The longstanding bug 9546 with XFree86 4.x layout for toolbar still exists, though).</li> 9547 9548 <li>modify <code>xtermAddInput</code> to work around core dump 9549 on IRIX64 when initializing scrollbar translations if toolbar 9550 is compiled-in.</li> 9551 9552 <li>fix some minor conflicts in the 2-character entry names in 9553 the termcap file.</li> 9554 </ul> 9555 9556 <h1><a name="xterm_187" id="xterm_187">Patch #187 - 2004/4/27 - 9557 XFree86 4.4.99.4</a></h1> 9558 9559 <ul> 9560 <li>change xterm version string to use 9561 <code>__vendorversion__</code> where that is available, and 9562 "XTerm" otherwise.</li> 9563 9564 <li>improve description of <code>utf8</code> resource in 9565 manpage (Debian #179407).</li> 9566 9567 <li>modify configure macros CF_IMAKE_CFLAGS and CF_ADD_CFLAGS 9568 to handle <code>-D</code> options that define string values, 9569 e.g., for <code>XVENDORNAME</code>.</li> 9570 9571 <li>modify configure macro CF_IMAKE_CFLAGS to allow (if 9572 <code>$PATH</code> is set accordingly) to use the 9573 <code>xmkmf</code> script within an X build tree.</li> 9574 9575 <li>add missing <code>#undef OPT_SESSION_MGT</code> to 9576 xtermcfg.hin to make the configure script's 9577 --disable-session-mgt option work.</li> 9578 9579 <li>update config.guess, config.sub</li> 9580 </ul> 9581 9582 <h1><a name="xterm_186" id="xterm_186">Patch #186 - 2004/4/18 - 9583 XFree86 4.4.99.4</a></h1> 9584 9585 <ul> 9586 <li>change reset on <code>DECSCL</code> to a soft-reset 9587 (appears some DEC manuals have errors).</li> 9588 9589 <li>add a section to ctlseqs.ms elaborating on normal/alternate 9590 screens.</li> 9591 9592 <li>modify initialization of Acolors[] so that any 9593 XtDefaultForeground or XtDefaultBackground values are 9594 translated as in the Tcolors[], to use the window's 9595 foreground/background colors. This affects the 9596 <code>colorBD</code> and similar resources which normally have 9597 no explicit color assigned.</li> 9598 9599 <li>modify initialization of Tektronix window so that control 9600 sequences setting its color before the window is popped up will 9601 apply to its initial colors.</li> 9602 9603 <li>add control sequence to set Tektronix window's 9604 text-cursor.</li> 9605 9606 <li>modify initialization of terminal colors, e.g., mouse 9607 pointer and text cursor, to treat 9608 <code>XtDefaultForeground</code> and 9609 <code>XtDefaultBackground</code> values as the actual 9610 foreground and background colors of the terminal rather than 9611 white and black (Debian #241717).</li> 9612 9613 <li>remove an incorrect comparison against 9614 <code>PTYCHARLEN</code> in parsing the <code>-S</code> option 9615 (report by Michael B Taylor).</li> 9616 9617 <li>minor restructuring of terminfo/termcap files, having noted 9618 some packager's customizations which caused the structure to be 9619 confused.</li> 9620 9621 <li>eliminate an isolated use of MIN/MAX in charproc.c</li> 9622 9623 <li>replace <code>XtExtdefaultfont</code> and 9624 <code>XtExtdefaultbackground</code> by their more familiar 9625 equivalents <code>XtDefaultFont</code> and 9626 <code>XtDefaultBackground</code>.</li> 9627 9628 <li>replace ifdef's using <code>SCO</code>, <code>sco</code> 9629 and <code>SCO325</code> with <code>__SCO__</code> (XFree86 9630 Bugzilla #1301, Kean Johnston). But ensure that it still builds 9631 on platforms where this symbol is not defined.</li> 9632 9633 <li>add <code>scoFunctionKeys</code> resource, to match 9634 manpage.</li> 9635 9636 <li>update manpage discussion of menus and related 9637 resources.</li> 9638 9639 <li>enable utmpx support for NetBSD 1.6C and newer (patch by 9640 Matthias Scheler).</li> 9641 9642 <li>add a note in the manpage discussing xterm's treatment of 9643 open file-descriptors (request by Dan Shearer).</li> 9644 9645 <li>modify <code>Help()</code> to make "xterm -h" write to 9646 standard output rather than standard error (patch by Bram 9647 Moolenaar).</li> 9648 9649 <li>check for type of failure in xim_real_init() to avoid 9650 looping when the problem is an unsupported input method rather 9651 than a failure to connect to the XIM server. Problem was 9652 introduced in <a href="#xterm_175">patch #175</a> (XFree86 9653 Bugzilla #1306).</li> 9654 9655 <li>modify <code>Imakefile</code> to remove dependency of 9656 "install" target on the <code>xterm</code> executable to make 9657 installs from tree without attempting to rebuild anything 9658 (commit by David Dawes, report/patch from Lee Olsen).</li> 9659 9660 <li>remove call to <code>ShowCursor</code> from 9661 <code>SetCursorBlink()</code> since that is redundant, and can 9662 cause display glitches if the cursor is already blinking 9663 (XFree86 Bugzilla #1158, patch/report by Andreas Schwab).</li> 9664 </ul> 9665 9666 <h1><a name="xterm_185" id="xterm_185">Patch #185 - 2004/3/3 - 9667 XFree86 4.4</a></h1> 9668 9669 <ul> 9670 <li>fix tcap-query logic for the backspace key (XFree86 9671 Bugzilla #1233, report/patch by Anton Kovalenko).</li> 9672 9673 <li>add test-scripts resize.pl and tcapquery.pl</li> 9674 9675 <li>add translation to ASCII of commonly-used characters that 9676 groff translates to Unicode, when the font in use does not 9677 provide the corresponding glyphs (Debian #219551).</li> 9678 9679 <li>modify RequestMaximize(), which performs maximize/restore 9680 via control sequences, to account for window-frame (patch by 9681 Jess Thrysoee).</li> 9682 9683 <li>improve pattern used in <code>uxterm</code> to check for 9684 UTF-8 locale, e.g., for HPUX (patch by H Merijn Brand).</li> 9685 9686 <li>add <code>-fd</code> option and resource 9687 <code>faceNameDoublesize</code> to specify double-wide fonts 9688 with Xft (adapted from patch by Zarick Lau).</li> 9689 9690 <li>change a couple of resource classes from "Boolean" to 9691 specific values: <code>freeBoldBox</code>, 9692 <code>forceBoxChars</code>.</li> 9693 9694 <li>add resource <code>showMissingGlyphs</code> to outline 9695 places on the screen where a font lacks the corresponding 9696 glyph.</li> 9697 9698 <li>add resource <code>showBlinkAsBold</code> to control 9699 whether blinking text should be shown as bold or actual 9700 blinking text.</li> 9701 9702 <li>improve logic in ShowCursor() to avoid repainting the 9703 cursor when it is already visible, e.g., in response to the 9704 DECTCEM escape sequence. This also addresses XFree86 Bugzilla 9705 #1158.</li> 9706 9707 <li>implement blinking text, using the timer for blinking 9708 cursor.</li> 9709 9710 <li>modify FreeType support to allow resizing the font, in the 9711 same ways the window can be resized if fixed fonts are used. 9712 The relative font sizes are derived from the fixed font 9713 sizes.</li> 9714 9715 <li>add menu items and corresponding actions for switching 9716 on/off the UTF-8 mode and Xft (TrueType) support.</li> 9717 9718 <li>add logic to handle switching UTF-8 mode on/off. It worked 9719 if the escape sequences were flushed, but if data was mixed in 9720 with the same write, some were not handled properly (report by 9721 Nicolas George).</li> 9722 9723 <li>modify to allow turning UTF-8 mode on/off via escape 9724 sequence even if <code>-wc</code> option was not given at 9725 startup (patch by Peter Berg Larsen).</li> 9726 9727 <li>amend fix for XFree86 Bugzilla #981, adjusting for 9728 savedlines value (report by Tim Adye).</li> 9729 9730 <li>fix a typo in computing relative font size (Jess 9731 Thrysoee).</li> 9732 </ul> 9733 9734 <h1><a name="xterm_184" id="xterm_184">Patch #184 - 2003/12/31 - 9735 XFree86 4.3.99.903</a></h1> 9736 9737 <ul> 9738 <li>improve configure-script checks for FreeType and related 9739 libraries, using <code>xft-config</code> or 9740 <code>freetype-config</code> scripts when available.</li> 9741 9742 <li>fix configure-script check for <code>SYSV</code> definition 9743 by ensuring whether <code>sys_errlist[]</code> is declared, and 9744 by modifying the test program to include 9745 <code>X11/Intrinsic.h</code> to check that <code>wchar_t</code> 9746 is declared consistently (report by H Merijn Brand).</li> 9747 </ul> 9748 9749 <h1><a name="xterm_183" id="xterm_183">Patch #183 - 2003/12/26 - 9750 XFree86 4.3.99.903</a></h1> 9751 9752 <ul> 9753 <li>correct logic for configurations that may attempt to open 9754 both old/new-style pseudoterminals. In this case, the old-style 9755 are preferred. Logic was broken in <a href="#xterm_145">patch 9756 #145</a> (XFree86 Bugzilla #997, report/patch by Kean 9757 Johnston).</li> 9758 9759 <li>modify handling of <code>eightBitInput</code> resource in 9760 UTF-8 mode to translate the value into UTF-8. Otherwise an 9761 illegal UTF-8 code is sent to the application (report by Bram 9762 Moolenaar).</li> 9763 9764 <li>modify <code>uxterm</code> script to interpret help and 9765 version options so xterm does not always create a window when 9766 the user requests this information (Debian #223926).</li> 9767 9768 <li>add a limit check to ScrnTstWrapped() (XFree86 Bugzilla 9769 #981).</li> 9770 9771 <li>modify DECSCL to perform a hard reset (RIS) as per DEC 9772 manuals. Extended DECSCL to accept parameters for vt4XX and 9773 vt5xx terminals.</li> 9774 9775 <li>correct logic for ANSI conformance level escape sequences, 9776 which were confused with DEC conformance level escape 9777 sequences.</li> 9778 9779 <li>correct state for vt52 shift-in/shift-out, which was not 9780 reset properly after <a href="#xterm_171">patch #171</a>.</li> 9781 9782 <li>correct handling of graphics characters for vt52 mode, 9783 which did not display line-drawing characters after G1 fix from 9784 <a href="#xterm_182">patch #182</a>.</li> 9785 9786 <li>fixes for configure script to work with current Cygwin 9787 headers and libraries.</li> 9788 9789 <li>modify <code>Imakefile</code> to put the current directory 9790 at the beginning of the include searchpath (patch by David 9791 Dawes).</li> 9792 </ul> 9793 9794 <h1><a name="xterm_182" id="xterm_182">Patch #182 - 2003/12/2 - 9795 XFree86 4.3.99.901</a></h1> 9796 9797 <ul> 9798 <li>correct logic for <code>metaSendsEscape</code> resource to 9799 allow for the meta-right key to be tested. Improve check for 9800 meta/alt modifiers by dropping the assumption that a keysym is 9801 associated with only one modifier, and by ignoring NoSymbol 9802 entries in the xmodmap data (XFree86 Bugzilla #924, patch by 9803 David Dawes).</li> 9804 9805 <li>correct wrapping logic for line-drawing characters written 9806 in non-UTF-8 mode of xterm build for wide-characters (XFree86 9807 Bugzilla #918, report/patch by Jürgen Keil).</li> 9808 9809 <li>improve manpage description of resources, in particular the 9810 <code>utf8Fonts</code> class (XFree86 Bugzilla #905).</li> 9811 9812 <li>add definitions to compile with glibc-based GNU/Hurd, 9813 GNU/KFreeBSD and GNU/KNetBSD (XFree86 Bugzilla #893).</li> 9814 9815 <li>compiler-warning fixes (patch by Christian Biere).</li> 9816 9817 <li>add README.i18n (Tomohiro Kubota).</li> 9818 9819 <li>correct initialization of G1 character set mapping, which 9820 used line-drawing set as a result of confusion between "DEC 9821 Supplemental Graphic" and "DEC Special Graphic" character sets 9822 (see <a href="#xterm_34">patch #34</a> regarding DECSTR).</li> 9823 9824 <li>correct ifdef in main.c for variable utret (patch by 9825 Bernhard Rosenkraenzer).</li> 9826 9827 <li>document in xterm's manpage how to use XFree86 ":unscaled" 9828 keyword to suppress scaling of bold fonts.</li> 9829 9830 <li>when deriving bold fontname from normal fontname, use the 9831 normal font's average width to avoid for example selecting 9832 7x13bold from an 8x13 normal font (Debian #107769).</li> 9833 </ul> 9834 9835 <h1><a name="xterm_181" id="xterm_181">Patch #181 - 2003/10/26 - 9836 XFree86 4.3.99.15</a></h1> 9837 9838 <ul> 9839 <li>implement <code>boldMode</code> for wide-character logic in 9840 <code>drawXtermText()</code> (report by Michael 9841 Schroeder).</li> 9842 9843 <li>modify <code>UXTerm.ad</code> resource file to include 9844 "XTerm-color" rather than "XTerm", in case the latter file 9845 contains no color resource definitions, e.g., after <a href= 9846 "#xterm_180">patch #180</a>.</li> 9847 9848 <li>add action <code>load-vt-fonts()</code> and configure 9849 option <code>--enable-load-vt-fonts</code> which allows users 9850 to define additional sets of VT-fonts which can be loaded at 9851 runtime.</li> 9852 9853 <li>add logic to wide-character support which attempts to load 9854 fonts specified by <code>utf8Fonts</code> subresources at 9855 startup. The subresources have the same names as the fonts 9856 which they replace, e.g., <code>font</code>, 9857 <code>font1</code>, etc., so that the ISO-10646-1 fonts can be 9858 specified in the <code>XTerm</code> app-defaults file (adapted 9859 from patch by Tomohiro Kubota).</li> 9860 9861 <li>improve Set Font escape string handling by making the 9862 relative settings apply to the size of the font, as in shift 9863 keypad plus/minus rather than the menu index.</li> 9864 9865 <li>simplify parameter passing for the <code>set-vt-font</code> 9866 action and related code.</li> 9867 9868 <li>cleanup some include-ordering, moving some recently-added 9869 hardcoded stuff into xterm.h where it will not interfere with 9870 the configure script.</li> 9871 9872 <li>modify <code>xtermAddInput()</code> (see note on 9873 augmentation in <a href="#xterm_158">patch #158</a>) to use the 9874 complete set of default keyboard translations so that one can 9875 use shifted pageup, wheel mouse, etc., while the mouse pointer 9876 is over the scrollbar. (Debian #178812).</li> 9877 9878 <li>make save/restore mode controls apply to show/blink cursor 9879 states.</li> 9880 9881 <li>add escape sequence to start/stop blinking cursor, which 9882 allows implementing <code>cvvis</code> terminfo capability 9883 (request by Nate Bargmann).</li> 9884 9885 <li>add <code>indp</code> and <code>rin</code> to terminfo 9886 entry.</li> 9887 9888 <li>fix an out-of-bounds array reference in ScrnRefresh() for 9889 wide characters (report by Dan Harnett, patch by Todd Miller). 9890 This bug dates from <a href="#xterm_141">patch #141</a>.</li> 9891 </ul> 9892 9893 <h1><a name="xterm_180" id="xterm_180">Patch #180 - 2003/10/12 - 9894 XFree86 4.3.99.15</a></h1> 9895 9896 <ul> 9897 <li>several fixes for rendering using Xft via option 9898 <code>-fa</code>: 9899 <ul> 9900 <li>translate Unicode values, i.e,. from UTF-8 output to 9901 xterm, for line-drawing to xterm's internal code, etc., 9902 since TrueType fonts generally do not have either set of 9903 line-drawing glyphs. xterm can draw these directly (report 9904 by Abigail Brady).</li> 9905 9906 <li>pass 16-bit values rather than 8-bit values to 9907 xtermXftDrawString() to allow for wide-characters.</li> 9908 9909 <li>remove spurious check for <code>colorBDMode</code> 9910 resource in logic that does bold fonts.</li> 9911 9912 <li>implement underlining.</li> 9913 </ul> 9914 </li> 9915 9916 <li>patches by Ilya Zakharevich: 9917 <ul> 9918 <li>improve drawXtermText() by making the recursive calls 9919 communicate through arguments, and not through 9920 saving/restoring global variables.</li> 9921 9922 <li>make double-width characters work with <code>-u8</code> 9923 option.</li> 9924 9925 <li>modify lookup of double-sized fonts by checking for a 9926 match ignoring x/y resolution if the first check 9927 fails.</li> 9928 </ul> 9929 </li> 9930 9931 <li>make height of TrueType fonts match ascent+descent (patch 9932 by Keith Packard).</li> 9933 9934 <li>correct configure-script check for imake $CFLAGS, which did 9935 not check properly if imake was not available.</li> 9936 9937 <li>correct install rule in Makefile.in for 9938 <code>uxterm</code>, which was attempting to strip the script 9939 (newsgroup posting by Fernan Aguero).</li> 9940 9941 <li>correct AF/AB strings in termcap for xterm-256color and 9942 xterm-88color entries (report by Josh Howard).</li> 9943 9944 <li>update wcwidth.c to incorporate changes from Markus Kuhn's 9945 2003-05-20 (Unicode 4.0) version of that file.</li> 9946 9947 <li>modify <code>scroll-back</code> and 9948 <code>scroll-forw</code> actions to accept an adjustment value, 9949 e.g., 9950 9951 <pre> 9952 <code>scroll-back(1, page-2)</code> 9953</pre>to scroll back by 2 lines less than a page (patch by Greg 9954Klanderman). 9955 </li> 9956 9957 <li>use color resource setting from Debian package for xterm 9958 VT100 widget, since the choice of blues provides better 9959 contrast.</li> 9960 9961 <li>remove color resources from <code>XTerm.ad</code>, leaving 9962 them only in <code>XTerm-col.ad</code> (prompted by Debian 9963 package for xterm).</li> 9964 9965 <li>correct configure script option --enable-pty-handshake 9966 (report by Paul Gilmartin).</li> 9967 9968 <li>add <code>visualBellDelay</code> resource to modify the 9969 length of time used for visual bell, for very slow displays or 9970 very fast computers (reports by Ingo van Lil and Doug 9971 Toppin).</li> 9972 9973 <li>correct logic for initializing dynamic highlight color 9974 (patch by Jess Thrysoee).</li> 9975 9976 <li>add a check for non-zero size in call to 9977 <code>XCopyArea()</code> to accommodate a Solaris bug.</li> 9978 9979 <li>correct typo in example for character classes in xterm 9980 manpage (Debian #198910).</li> 9981 9982 <li>link xterm with bind_on_load option on Darwin to work 9983 around a deadlock in the dynamic loader when a signal is 9984 received while the dynamic loader is looking up symbols 9985 (patches by Rob Braun, Torrey Lyons).</li> 9986 9987 <li>modify configure script to avoid using "head -1".</li> 9988 9989 <li>update config.guess, config.sub</li> 9990 9991 <li>modify ifdef's to work around inclusion of types FcChar32 9992 and XftCharSpec with FreeType 2.0 (see <a href= 9993 "#xterm_175">patch #175</a>).</li> 9994 9995 <li>modify the predictable version of the generated logfile 9996 name (see <a href="#xterm_171">patch #171</a>) to append the 9997 process-id rather than a random value.</li> 9998 9999 <li>resync with XFree86 CVS 10000 <ul> 10001 <li>Enable SCO function keys in xterm</li> 10002 10003 <li>Make Delete key send DEL by default on SCO in 10004 xterm</li> 10005 </ul> 10006 </li> 10007 </ul> 10008 10009 <h1><a name="xterm_179" id="xterm_179">Patch #179 - 2003/5/21 - 10010 XFree86 4.3.99.5</a></h1> 10011 10012 <ul> 10013 <li>modify ifdef's for WTMPX_FILE to allow building on cygwin 10014 again.</li> 10015 10016 <li>change the default of pty-handshaking configure option (and 10017 related default for imake) to assume this feature is 10018 needed.</li> 10019 10020 <li>add ifdef's so configure option for XawPlus library works 10021 (patch by Pavel Roskin).</li> 10022 10023 <li>add <code>$(MAIN_DEFINES)</code> to the variables checked 10024 by the configure script that may contain information set by 10025 imake. This allows xterm to build/run properly using the 10026 configure script on IRIX64.</li> 10027 10028 <li>add configure check for ".exe" suffix on cygwin.</li> 10029 </ul> 10030 10031 <h1><a name="xterm_178" id="xterm_178">Patch #178 - 2003/5/18 - 10032 XFree86 4.3.99.5</a></h1> 10033 10034 <ul> 10035 <li>modify default for configure 10036 <code>--enable-pty-handshake</code> option to enable it for 10037 Solaris (report by Nelson Beebe).</li> 10038 10039 <li>modify <code>in_put()</code> function to call 10040 <code>PreeditPosition()</code> only when the cursor's position 10041 has changed. This addresses report by Stefan Baums of high CPU 10042 usage while xterm with chinput are running in the background 10043 (patch by Yong Li).</li> 10044 10045 <li>improved explanation of <code>-ls</code> conflict with 10046 <code>-e</code> option in xterm manpage (adapted from comments 10047 by Henning Makholm).</li> 10048 10049 <li>correct comment in terminfo file regarding modifier used 10050 for <code>kDC</code> (Debian #189764, report by Henning 10051 Makholm).</li> 10052 10053 <li>correct/extend some of the keypad description in ctlseqs.ms 10054 (report by Henning Makholm).</li> 10055 10056 <li>correct keypad-mapping table in input.c so 10057 <code>XK_KP_Equal</code> works (report by Henning 10058 Makholm).</li> 10059 10060 <li>modified to work with CJK double-width (bi-width/monospace) 10061 fonts. They're similar to Roman Czbora and David Starner's 10062 gnuunifonts in that Latin letters and numbers have all the same 10063 width which is exactly the half of the width of East Asian 10064 characters. (patch by Jungshik Shin 10065 <jshin@mailaps.org>).</li> 10066 10067 <li>add configure option <code>--enable-broken-osc</code> and 10068 resource <code>brokenLinuxOSC</code> to accommodate scripts 10069 which do not distinguish between running in the Linux console 10070 and running in X. Linux console recognizes malformed control 10071 strings which start with an <code>OSC</code>, but are 10072 fixed-length, with no terminator.</li> 10073 10074 <li>add configure option <code>--enable-broken-st</code> and 10075 resource <code>brokenStringTerm</code> to allow user to revert 10076 one part of the parsing table corrections from <a href= 10077 "#xterm_171">patch #171</a>. (reports by Matthias Scheler and 10078 Kirill Ponomarew indicate that someone's network firmware sends 10079 an <code><escape>X</code>).</li> 10080 10081 <li>modify configure <code>--disable-imake</code> to provide 10082 values for <code>OSMAJORVERSION</code>, 10083 <code>OSMINORVERSION</code>, <code>FUNCPROTO</code> and 10084 <code>NARROWPROTO</code> (report by Heiko Schlichting).</li> 10085 10086 <li>correct <code>vttests/16colors.sh</code>, which omitted the 10087 <code>$SUF</code> variable in output strings (patch by Paul 10088 Gilmartin).</li> 10089 10090 <li>modify shell scripts in <code>vttests</code> directory to 10091 attempt to use named signals in the <code>trap</code> 10092 statement, making this portable to OS/390 (report by Paul 10093 Gilmartin). Tested on SunOS 4.1.4, which implements only 10094 numbers.</li> 10095 </ul> 10096 10097 <h1><a name="xterm_177" id="xterm_177">Patch #177 - 2003/3/23 - 10098 XFree86 4.3.0</a></h1> 10099 10100 <ul> 10101 <li>fix definition of <code>USE_HANDSHAKE</code>, must be 10102 numeric (reported by Jens Schleusener).</li> 10103 </ul> 10104 10105 <h1><a name="xterm_176" id="xterm_176">Patch #176 - 2003/3/22 - 10106 XFree86 4.3.0</a></h1> 10107 10108 <ul> 10109 <li>add configure option <code>--enable-pty-handshake</code> to 10110 allow one to compile-in support for the pty handshaking logic, 10111 and resource <code>ptyHandshake</code> to enable or disable it 10112 (suggested by Ian Collier).</li> 10113 10114 <li>restore <code>USE_HANDSHAKE</code> ifdef removed in 10115 <a href="#xterm_159">patch #159</a> to address Debian 10116 #39964.</li> 10117 10118 <li>move ifdef's for ttysize/winsize into xterm_io.h</li> 10119 10120 <li>simplify loop on <code>tgetent</code>, check if the 10121 successive entries in the lookup table are the same. That makes 10122 xterm do one less lookup if there is no "xterm" entry in the 10123 termcap file (report by Derek Martin).</li> 10124 10125 <li>correct manpage discussion of <code>$TERM</code> and 10126 <code>$TERMCAP</code> variables, which omitted the Tektronix 10127 emulation and a note of the final "dumb" fallback.</li> 10128 10129 <li>broaden ifdef for 10130 <code>XRegisterIMInstantiateCallback()</code> from <a href= 10131 "#xterm_175">patch #175</a> (XIM fix) to exclude non-XFree86 10132 (report by Nelson Beebe indicates this breaks for Solaris, IRIX 10133 and OSF/1).</li> 10134 10135 <li>correct resource-size for <code>iconFont</code> (this was 10136 added by X11R6.3).</li> 10137 10138 <li>improve configure check for XKB bell extension, to work 10139 around inconsistent implementation of this feature (reports by 10140 Nelson Beebe, Kriston Rehberg and David Ellement).</li> 10141 10142 <li>modify configure-check for <code>tty</code> group to be 10143 less strict in batch mode (report by Nelson Beebe).</li> 10144 10145 <li>modify to allow building with g++, to use its compiler 10146 warnings (suggested by Nelson Beebe).</li> 10147 10148 <li>modify <code>dec2ucs[]</code> table to reflect newer codes 10149 available for scanlines 1, 3, 7, 9 (report by Michael 10150 Schroeder).</li> 10151 10152 <li>add configure option for XawPlus library.</li> 10153 </ul> 10154 10155 <h1><a name="xterm_175" id="xterm_175">Patch #175 - 2003/3/9 - 10156 XFree86 4.3.0</a></h1> 10157 10158 <ul> 10159 <li>fix a SIGSEGV which could occur if xterm is connecting to 10160 XIM server, and the XIM server is destroyed (patch by Nam 10161 SungHyun).</li> 10162 10163 <li>modify to use built-in line-drawing characters for Xft 10164 fonts (patch by Andrew Tipton).</li> 10165 10166 <li>make menu reflect the state of the <code>tekInhibit</code> 10167 resource.</li> 10168 10169 <li>make <code>signalInhibit</code> resource work, i.e., 10170 disable the menu entries that would send signals to, or exit 10171 xterm. This was probably broken in X11R5 when logging was 10172 disabled (report by Sven Mascheck).</li> 10173 10174 <li>changed classes of <code>colorBDMode</code> and similar 10175 resources that override colors when a video attribute is set to 10176 <code>ColorAttrMode</code>, to make them distinct from 10177 <code>ColorMode</code>. This avoids an unexpected rendering of 10178 reverse video, for example (report by Paul Fox).</li> 10179 10180 <li>changed class of <code>veryBoldColors</code> to 10181 <code>VeryBoldColors</code>, since <code>ColorMode</code> is 10182 associated with boolean resources.</li> 10183 10184 <li>add option <code>-k8</code> and resource 10185 <code>allowC1Printable</code> to allow users of non-VTxxx 10186 character sets such as KOI-8 to treat the C1 control area 10187 (character codes 128-159) as printable rather than control 10188 characters.</li> 10189 10190 <li>add a null-pointer check for return-value of 10191 <code>ptsname()</code> in HPUX-specific code (report by David 10192 Ellement).</li> 10193 10194 <li>revise the ifdef's used for <code>XKB</code> bell support. 10195 The code was using a nonstandard call 10196 <code>XkbStdBell()</code>. Changed to use 10197 <code>XkbBell()</code> (based on patch by 10198 <derek@signalmarketing.com>).</li> 10199 10200 <li>add a null-pointer check in <code>xtermLoadFont()</code> in 10201 case there is no wide-bold font (Nam SungHyun).</li> 10202 10203 <li>change <code>Makefile.in</code> to use autoconf's 10204 <code>bindir</code>, <code>libdir</code> and 10205 <code>mandir</code> variables (report by Nam SungHyun).</li> 10206 10207 <li>add <code>le</code> to termcap <code>xterm-basic</code> 10208 entry. Though missing from older termcaps for xterm, some 10209 applications check for it (report by Matthias Buelow).</li> 10210 10211 <li>modify <code>uxterm</code> script to strip modifiers such 10212 as "@euro" from the locale setting before adding ".UTF-8" 10213 (Debian #179929).</li> 10214 10215 <li>modify the remaining places where tek4014 emulation uses 10216 <code>XDefineCursor()</code>, to make it work as originally 10217 implemented, e.g., when switching back to alpha mode. Added 10218 test-screen in vttest to test this feature properly.</li> 10219 </ul> 10220 10221 <h1><a name="xterm_174" id="xterm_174">Patch #174 - 2003/2/25 - 10222 XFree86 4.2.99.903</a></h1> 10223 10224 <ul> 10225 <li>work-around for XFree86 bug which made 10226 <code>XDefineCursor()</code> on a shell-window no longer work. 10227 The tek4014 emulation used this. Use the next lower window 10228 (report by Karl Rudolf Bauchspiess).</li> 10229 10230 <li>add a resource setting <code>allowWindowOps</code> to 10231 control whether the extended window operations should be 10232 allowed, e.g., resize, iconify, report window attributes. This 10233 is to accommodate people who are not capable of using a pager 10234 to view log-files.</li> 10235 </ul> 10236 10237 <h1><a name="xterm_173" id="xterm_173">Patch #173 - 2003/2/6 - 10238 XFree86 4.2.99.902</a></h1> 10239 10240 <ul> 10241 <li>reset mouse mode to normal on a full reset. This does not 10242 apply to mouse hilite tracking mode, of course (see 10243 ctlseqs.ms).</li> 10244 10245 <li>add a time-delay at the point where mouse hilite tracking 10246 mode choses to not handle X events, to avoid runaway CPU usage 10247 (report by D Hugh Redelmeier).</li> 10248 10249 <li>check for illegal character in DECUDK string, quit if 10250 detected.</li> 10251 </ul> 10252 10253 <h1><a name="xterm_172" id="xterm_172">Patch #172 - 2002/12/27 - 10254 XFree86 4.2.99.3</a></h1> 10255 10256 <ul> 10257 <li>fixes to make repainting of 256-color example work properly 10258 (reports by Abigail Brady and Scott A Crosby). 10259 <ul> 10260 <li>set flag in <code>AllocateAnsiColor()</code> to ensure 10261 the color is allocated once only.</li> 10262 10263 <li>fix check in <code>ScrnRefresh</code>, which was 10264 comparing background colors only if the ANSI foreground 10265 colors also were set.</li> 10266 </ul> 10267 </li> 10268 10269 <li>merge <code>Error()</code> calls and some 10270 <code>exit()</code> calls into <code>SysError()</code>, and 10271 change that to add the brief explanation for each error code 10272 which is provided in the manpage. Change a few 10273 <code>SysError()</code>, calls to avoid using code 1, to avoid 10274 confusion with exit status from places that do not use 10275 <code>SysError()</code>.</li> 10276 10277 <li>simplify logic used to open a debug logfile as the standard 10278 error.</li> 10279 10280 <li>modify the <code>-e</code> option so that if it fails, 10281 xterm will check if only one argument follows, e.g., it was 10282 quoted, and then retry using <code>sh -c</code>.</li> 10283 10284 <li>modify parsing of DECUDK string parameter to allow a comma 10285 between pairs of hexadecimal digits (Ray Neuman 10286 <raymond@one.com.au> reports that "real" terminals accept 10287 this; perhaps they simply ignore unexpected characters).</li> 10288 10289 <li>fix a few problems with the <code>$TERMCAP</code> string 10290 generated by <code>resize</code>: 10291 <ul> 10292 <li>for Bourne shell, add an <code>export</code> command. 10293 This was missing as far back as X11R5.</li> 10294 10295 <li>escape exclamation marks, used in xterm's reset 10296 string.</li> 10297 10298 <li>translate literal <code>\177\</code> to "^?".</li> 10299 </ul> 10300 </li> 10301 10302 <li>improve configure check for <code>tgetent()</code> to work 10303 when <code>$TERMCAP</code> has been set to a specific 10304 entry.</li> 10305 10306 <li>modify <code>minstall.sh</code> to use "%" rather than "@", 10307 to avoid problems with AFS (report by Zdenek Sekera).</li> 10308 10309 <li>list fatal error codes from <code>error.h</code> in the 10310 manpage, remove unused codes in <code>error.h</code>.</li> 10311 10312 <li>use more explicit wording for manpage list of color 10313 resources, since at least one user confused the generic names 10314 such as "black" with the names in rgb.txt (the latter are now 10315 used).</li> 10316 10317 <li>minor fix to description of 1003 mouse mode in ctlseqs.ms 10318 (Larry Riedel).</li> 10319 </ul> 10320 10321 <h1><a name="xterm_171" id="xterm_171">Patch #171 - 2002/12/12 - 10322 XFree86 4.2.99.3</a></h1> 10323 10324 <ul> 10325 <li>modify parser tables to improve detection of malformed 10326 control sequences, making xterm behave more like a real DEC 10327 terminal (patch by Paul Williams).</li> 10328 10329 <li>update comment in <code>input.c</code> to document 10330 <code>Meta</code> as a modifier for escape sequences (patch by 10331 D Roland Walker).</li> 10332 10333 <li>add ifdef'd code for logging option which adds the hostname 10334 and a timestamp to the generated logfile name. The ifdef's are 10335 setup with the configure script (patch by Nelson Beebe).</li> 10336 10337 <li>remove <code>xevents()</code> call from the end of 10338 <code>BlinkCursor()</code>, to fix an occasional problem which 10339 caused xterm to pause until a key was pressed. The reason for 10340 this was that there was no check to ensure that there really 10341 were events for <code>xevents()</code> to process. (patch by 10342 Semen A Ustimenko <semenu@FreeBSD.org>).</li> 10343 10344 <li>remove unused mode-params from <code>open()</code> calls 10345 that do not create a file.</li> 10346 10347 <li>modify configure script to put new items first on 10348 <code>$CPPFLAGS</code> and <code>$CFLAGS</code> to avoid 10349 conflict with environment's <em>-I</em> and <em>-D</em> 10350 options.</li> 10351 10352 <li>update config.guess, config.sub</li> 10353 10354 <li>resync with XFree86 CVS 10355 <ul> 10356 <li>fix va_args glitches for xterm/libfontconfig: 0 == 10357 (void*)0 isn't true for all platforms (Egbert Eich).</li> 10358 10359 <li>initialise ProgramName in xterm's main before 10360 referencing it (XFree86 #5473, Peter Valchev).</li> 10361 10362 <li>some cleanup of Imakefile ifdef's (Marc La 10363 France).</li> 10364 </ul> 10365 </li> 10366 </ul> 10367 10368 <h1><a name="xterm_170" id="xterm_170">Patch #170 - 2002/10/13 - 10369 XFree86 4.2.1</a></h1> 10370 10371 <ul> 10372 <li>correct an off-by-one allocating data for sorted help 10373 message.</li> 10374 10375 <li>modify configure script to check for Xpm library, on which 10376 XFree86 Xaw library depends.</li> 10377 10378 <li>update config.guess, config.sub</li> 10379 </ul> 10380 10381 <h1><a name="xterm_169" id="xterm_169">Patch #169 - 2002/10/5 - 10382 XFree86 4.2.1</a></h1> 10383 10384 <ul> 10385 <li>modify wording of some options in help message to make them 10386 use <code>-/+</code> consistently with respect to "on/off" or 10387 "off/on".</li> 10388 10389 <li>sort options list which is displayed in help- and 10390 syntax-messages at runtime to simplify maintenance.</li> 10391 10392 <li>remove support for Amoeba and Minix (Juliusz Chroboczek 10393 noted it was removed from XFree86 server; there have been no 10394 users since 1996).</li> 10395 10396 <li>add configure script option 10397 <code>--disable-session-mgt</code> to control whether the 10398 session management code should be compiled-in (request by H 10399 Merijn Brand).</li> 10400 10401 <li>ifdef'd the session-management changes with 10402 <code>OPT_SESSION_MGT</code>, to accommodate X11R5 which 10403 predates the related definitions.</li> 10404 10405 <li>fix <code>decode_keyvalue()</code>, which did not properly 10406 parse multiple settings as needed for the <code>ttyModes</code> 10407 resource, since it did not skip over the parsed data.</li> 10408 10409 <li>fix an option-parsing conflict between <code>-class</code> 10410 and <code>-cjk_width</code> (Nam SungHyun)</li> 10411 10412 <li>add a missing null in <code>XtVaSetValues()</code> call 10413 used in <code>Cleanup()</code> (Nam SungHyun)</li> 10414 </ul> 10415 10416 <h1><a name="xterm_168" id="xterm_168">Patch #168 - 2002/9/29 - 10417 XFree86 4.2.1</a></h1> 10418 10419 <ul> 10420 <li>improve data reported for control sequence that requests 10421 window position by taking into account the window decorations, 10422 e.g., border and title (patch by Jess Thrysoee 10423 <jess@thrysoee.dk>).</li> 10424 10425 <li>add <code>-cjk_width</code> and corresponding resource 10426 <code>cjkWidth</code> (patch by Jungshik Shin 10427 <jshin@mailaps.org>).</li> 10428 10429 <li>add <code>-into</code> option, for embedding xterm in a 10430 Tcl/Tk application (patch by George Peter Staplin 10431 <georgeps@xmission.com>).</li> 10432 10433 <li>add simple session management (XSM) client capabilities to 10434 xterm. So a session manager such as, e.g., xsm, should be able 10435 to respawn or kill xterms without the help of an SM proxy (like 10436 smproxy), which is a hack and almost always buggy (patch by 10437 David Madore).</li> 10438 10439 <li>fix conflict between ifdef's for 10440 <code>OPT_DEC_LOCATOR</code> and <code>OPT_READLINE</code> in 10441 button.c (reported by Ilya Zakharevich).</li> 10442 10443 <li>fix for inconsistent use of <code>struct utmp</code> versus 10444 <code>struct utmpx</code> introduced in <a href= 10445 "#xterm_167">patch #167</a> (patches by Paul Gilmartin, Marc La 10446 France).</li> 10447 10448 <li>modify logic for <code>metaSendsEscape</code> to allow it 10449 to work in a setup where the Meta-key is not recognized as a 10450 modifier by the key-translations logic (discussion of 10451 eightBitInput with H.J.Lu). Note however that Vincent 10452 Lefèvre reported this in January).</li> 10453 10454 <li>use null pointer values consistently, rather than literal 10455 "0", for ending variable-length argument lists, e.g., for 10456 <code>execlp()</code> (based on patch by Matthieu Herrb).</li> 10457 10458 <li>correct logic of <code>ChangeAnsiColorRequest()</code>, 10459 which would do a screen repaint after replying to a request for 10460 information.</li> 10461 10462 <li>improve scripts in vttests to work with systems whose 10463 shells support <code>echo -n</code> and have, as does Debian, 10464 an unrelated <code>print</code> utility.</li> 10465 10466 <li>add vttests/acolors.sh to demonstrate OSC 4, which queries 10467 or sets ANSI colors.</li> 10468 10469 <li>fixes for ctlseqs.ms (Pavel Roskin, Ilya Zakharevich).</li> 10470 10471 <li>typos in xterm manpage (Jens Schweikhardt)</li> 10472 10473 <li>remove a redundant GCC_UNUSED from InitPopup() (Nam 10474 SungHyun)</li> 10475 </ul> 10476 10477 <h1><a name="xterm_167" id="xterm_167">Patch #167 - 2002/8/24 - 10478 XFree86 4.2.0</a></h1> 10479 10480 <ul> 10481 <li>correct ifdef's for <code>USE_TERMCAP</code> to match 10482 cygwin configuration.</li> 10483 10484 <li>fix several places in ctlseqs.ms which had no boxes around 10485 the literal text (report by Ilya Zakharevich).</li> 10486 10487 <li>extend mouse support for readline, ifdef'd with 10488 OPT_READLINE (integrated patch from Ilya Zakharevich).</li> 10489 10490 <li>modify terminfo description to match default for 10491 <code>modifyCursorKeys</code> resource.</li> 10492 10493 <li>add <code>modifyCursorKeys</code> resource to control how 10494 the shift- and similar modifiers are used to make a cursor 10495 escape sequence. The default makes a modified escape sequence 10496 always start with CSI and puts the modifier as the second 10497 parameter, to avoid confusing applications that would interpret 10498 the first parameter as a repeat count. The original behavior 10499 can be obtained by setting the resource to 0 (newsgroup 10500 discussion with Stephen J Turnbull, Jeffrey Altman).</li> 10501 10502 <li>correct missing initializations for 10503 <code>appdefaultCursor</code> and <code>appdefaultKeypad</code> 10504 resources.</li> 10505 10506 <li>add configure option <code>--enable-luit</code> and ifdef'd 10507 the luit-related code with OPT_LUIT_PROG.</li> 10508 10509 <li>modify xterm to invoke luit (integrated patch by Tomohiro 10510 Kubota)</li> 10511 10512 <li>update wcwidth.c to match Markus Kuhn's 2002-05-18 10513 version.</li> 10514 10515 <li>correct limit-checking in <code>ComputeSelect()</code> to 10516 handle selections that extend off the visible area; rather than 10517 modify the parameters to <code>TrackText()</code>, use 10518 <code>ScrollSelection()</code> to update the highlighting 10519 limits. (reported by Yegappan Lakshmanan and Nelson Beebe, 10520 patch by Alexander V Lukyanov).</li> 10521 10522 <li>correct manpage description of <code>tiXtraScroll</code> 10523 resource (reported by Tony Finch).</li> 10524 10525 <li>changes from OpenBSD: 10526 <ul> 10527 <li>Make xterm setgid utmp to be able to update utmp even 10528 with root privileges revoked.</li> 10529 10530 <li>If not updating utmp, revoke group privileges totally 10531 too.</li> 10532 </ul> 10533 </li> 10534 10535 <li>changes from NetBSD: 10536 <ul> 10537 <li>Check that the return value from ttyslot() is greater 10538 than 0 before writing the utmp file. Fixes w's "w: Stale 10539 utmp entry: <user> <tty> <pty>" 10540 errors.</li> 10541 10542 <li>Use openpty() to deal with new pty naming scheme.</li> 10543 </ul> 10544 </li> 10545 10546 <li>add <code>print-redir</code> action and menu entry to allow 10547 user to switch terminal in/out of printer controller mode. It 10548 appears from the manual that a real vt220 would not switch back 10549 to normal mode, so another mechanism is used (addresses Debian 10550 #37517).</li> 10551 10552 <li>check if <code>printerCommand</code> resource string is 10553 empty, use this to allow user to disable printer function.</li> 10554 10555 <li>trim trailing blanks from resource strings.</li> 10556 10557 <li>check return value from <code>ptsname()</code>, which may 10558 return null for example if someone has changed the permissions 10559 of /dev/pts to zero (Debian #121899).</li> 10560 10561 <li>modify OS/2 version to use <code>__UNIXOS2__</code> 10562 definition rather than <code>__EMX__</code>, related cleanup 10563 (patch by Holger Veit).</li> 10564 10565 <li>used modified indent 2.0 (patch <a href= 10566 "ftp://ftp.invisible-island.net/gnu-patches/">20020428</a>) to 10567 reformat most of the C source files, to simplify 10568 maintenance.</li> 10569 10570 <li>fix a couple of places where there were leading tabs on 10571 symbol-definition lines in Imakefile (Marc La France from 10572 report by Tony Finch)</li> 10573 10574 <li>add imake variable (TraceXTerm) to allow building debug 10575 version (Egbert Eich).</li> 10576 </ul> 10577 10578 <h1><a name="xterm_166" id="xterm_166">Patch #166 - 2002/3/25 - 10579 XFree86 4.2.0</a></h1> 10580 10581 <ul> 10582 <li>correct a bug in selection: double clicking on a word which 10583 was partly scrolled off the screen may select that text (report 10584 by Vincent Lefèvre <vincent@vinc17.org>).</li> 10585 10586 <li>implement <code>veryBoldColors</code> resource to control 10587 whether the corresponding video attribute such as 10588 <code>bold</code> is displayed when using 10589 <code>colorBDMode</code>, etc. (request by Josh Howard 10590 <jrh@vicor-nb.com>).</li> 10591 10592 <li>define escape sequences for function keys F21-F35 (patch by 10593 Stephen P Wall).</li> 10594 10595 <li>change the colors for the 256-color model, making them less 10596 skewed toward black (patch by Stephen P Wall).</li> 10597 10598 <li>add <code>vt100Graphics</code> resource (see <a href= 10599 "#xterm_115">patch #115</a>, based on discussion with Glenn 10600 Maynard).</li> 10601 10602 <li>ifdef'd Xaw/Xaw3d/neXtaw includes separately to avoid 10603 potential incompatibilities between these flavors of Athena 10604 widgets.</li> 10605 10606 <li>add configure check for XFree86 4.x Xaw library, whose 10607 geometry management is broken, to avoid trying to use it for 10608 toolbar configuration.</li> 10609 10610 <li>updates to configure script from vile and lynx to allow 10611 configure.in to be compiled with autoconf 2.5x</li> 10612 10613 <li>add a check for null pointer return by 10614 <code>ptsname()</code> (newsgroup posting from Mike Silva 10615 <mikesilva@lucent.com>).</li> 10616 10617 <li>fill in a few details needed to allow UTF-8 mode to switch 10618 on/off after startup. This requires that <code>wideChars</code> 10619 resource be set. (based on comments in 4 Aug 2001 by Alexey 10620 Marinichev <lyosha@lyosha.2y.net>).</li> 10621 10622 <li>remove duplicate install rules that make directories, e.g., 10623 so installing manpage will not create app-defaults 10624 directory.</li> 10625 10626 <li>add comment in in <code>do_osc()</code>, reserving cases 30 10627 and 31 for for Konsole (request by Stephan Binner 10628 <Stephan.Binner@gmx.de>).</li> 10629 10630 <li>fixes for ctlseqs.ms and xterm.man (patch by Werner Lemberg 10631 <wl@gnu.org>).</li> 10632 10633 <li>add check for monochrome display, disabling colorMode in 10634 that case (fixes Debian #134130).</li> 10635 10636 <li>resync with XFree86 CVS 10637 <ul> 10638 <li>Fix some xterm build warnings on *BSD (patch by David 10639 Dawes).</li> 10640 10641 <li>Only use SA_RESTART in xterm when it's available (patch 10642 by Frank Liu).</li> 10643 10644 <li>Fix incorrect code in signal handlers in most of the 10645 clients, xterm and xdm not done yet (patch by Matthieu 10646 Herrb).</li> 10647 </ul> 10648 </li> 10649 </ul> 10650 10651 <h1><a name="xterm_165" id="xterm_165">Patch #165 - 2002/1/5 - 10652 XFree86 4.1.0</a></h1> 10653 10654 <ul> 10655 <li>modify <code>uxterm</code> script to strip encoding part 10656 from environment variable before adding ".UTF-8" (based on 10657 Debian #125947, but using a more portable solution).</li> 10658 10659 <li>add an assignment statement in VTInitialize() to make 10660 <code>awaitInput</code> resource work.</li> 10661 10662 <li>use new macros init_Bres(), etc., in VTInitialize() to add 10663 trace of the initialization of resources.</li> 10664 10665 <li>modify checks for $LC_ALL, related environment variables to 10666 ensure the resulting strings are nonempty (report by Markus 10667 Kuhn).</li> 10668 10669 <li>add an ifdef in charproc.c for num_ptrs variable in case 10670 all configure options are disabled.</li> 10671 10672 <li>modify definition of getXtermBackground() to avoid negative 10673 array index warning on Tru64 (report by Jeremie Petit).</li> 10674 10675 <li>improve fix from patch #165 (still Debian #117184, report 10676 by Matt Zimmerman <mdz@debian.org>)</li> 10677 10678 <li>correct install rule for uxterm in Makefile.in, to handle 10679 the case where building in a different directory than xterm's 10680 source (patch by Paul Gilmartin).</li> 10681 10682 <li>documented ANSI.SYS-style cursor save/restore escape 10683 sequences in ctlseqs.ms, which are in xterm since X11R5.</li> 10684 10685 <li>correct two entries in the default charClass table, which 10686 did not follow the manpage comment about the character number 10687 corresponding to the class (patch by Marc Bevand 10688 <bevand_m@epita.fr>).</li> 10689 10690 <li>fix a couple of typos in comments in the app-defaults files 10691 (David Krause <xfree86@davidkrause.com>).</li> 10692 10693 <li>resync with XFree86 CVS 10694 <ul> 10695 <li>update language of copyrights in some files to reflect 10696 the fact that they were reassigned from X Consortium to The 10697 Open Group in 1998. Note that this xterm source is derived 10698 from the 1996 version from X Consortium, does not 10699 incorporate changes made by X Consortium or The Open Group 10700 after that date, hence we do not add The Open Group's 1998 10701 copyright date to related files.</li> 10702 10703 <li>save/restore <code>errno</code> in signal catcher 10704 (patch by Matthieu Herrb).</li> 10705 10706 <li>modify UXTerm.ad's font5 resource so that xterm can 10707 display double width characters using a font distributed 10708 with XFree86 (Tomohiro Kubota).</li> 10709 </ul> 10710 </li> 10711 </ul> 10712 10713 <h1><a name="xterm_164" id="xterm_164">Patch #164 - 2001/11/13 - 10714 XFree86 4.1.0</a></h1> 10715 10716 <ul> 10717 <li>correct a case where <code>ptyInitialErase</code> and 10718 <code>backarrowKeyIsErase</code> resources combine to set 10719 <code>DECBKM</code> mode, but a <code>reset</code> command 10720 would not reset xterm to that state, making the erase character 10721 revert to ^H (Debian #117184)</li> 10722 </ul> 10723 10724 <h1><a name="xterm_163" id="xterm_163">Patch #163 - 2001/11/04 - 10725 XFree86 4.1.0</a></h1> 10726 10727 <ul> 10728 <li>correct ifdef's for <code>__QNX__</code> and 10729 <code>USE_SYSV_PGRP</code> in main.c call to 10730 <code>tcsetpgrp</code>, which broke bash behavior around 10731 <a href="#xterm_140">patch #140</a> (report/patch by Frank Liu 10732 <fliu@mail.vipstage.com>).</li> 10733 10734 <li>modify trace.c to fix missing definition of GCC_UNUSED for 10735 compilers other than gcc when configured for trace code 10736 (report/patch by Paul Gilmartin).</li> 10737 10738 <li>change format in TraceOptions() to use long rather than 10739 int, since the latter could lose precision on 64-bit machines 10740 (report/patch by Nelson Beebe).</li> 10741 10742 <li>modify xterm manual page and minstall.sh to allow imake 10743 rules to define location of app-defaults directory (Debian 10744 #87611).</li> 10745 10746 <li>review/update list of conflicting preprocessor symbols to 10747 remove from $CPPFLAGS at the end of the configure script. In 10748 particular, this allows one to configure xterm without the 10749 utempter library on Redhat 7.1 (report/patch by Adam 10750 Sulmicki).</li> 10751 </ul> 10752 10753 <h1><a name="xterm_162" id="xterm_162">Patch #162 - 2001/10/23 - 10754 XFree86 4.1.0</a></h1> 10755 10756 <ul> 10757 <li>correct logic that processes <code>-class</code> option, so 10758 that a following <code>-e</code> option is handled (Debian 10759 #116297).</li> 10760 10761 <li>improve options-decoding to allow <code>-version</code> and 10762 <code>-help</code> options to be combined (Debian 10763 #110226).</li> 10764 10765 <li>add a 10 millisecond delay in event loop when processing 10766 <code>-hold</code> option, to avoid using too much CPU time 10767 (Debian #116213).</li> 10768 10769 <li>prefix final program execution in <code>uxterm</code> with 10770 "exec" to avoid a useless shell hanging around (Christian 10771 Weisgerber).</li> 10772 </ul> 10773 10774 <h1><a name="xterm_161" id="xterm_161">Patch #161 - 2001/10/10 - 10775 XFree86 4.1.0</a></h1> 10776 10777 <ul> 10778 <li>modify logic that resets keypad application mode to avoid 10779 doing this if there is no modifier associated with the Num_Lock 10780 keysym (report by John E Davis <davis@space.mit.edu> and 10781 Alan W Irwin <irwin@beluga.phys.uvic.ca>).</li> 10782 10783 <li>add built-in translation for Control/KP_Separator to 10784 KP_Subtract, to accommodate users who wish to use xmodmap to 10785 reassign the top row of the numeric keypad.</li> 10786 10787 <li>correct Imakefile install-rule for <code>uxname</code> 10788 script (reported by Nam SungHyun <namsh@lge.com>).</li> 10789 10790 <li>resync with XFree86 CVS – correct typo in 10791 <code><ncurses/term.h></code> ifdef.</li> 10792 </ul> 10793 10794 <h1><a name="xterm_160" id="xterm_160">Patch #160 - 2001/10/7 - 10795 XFree86 4.1.0</a></h1> 10796 10797 <ul> 10798 <li>modify logic in main.c (see <a href="#xterm_145">patch 10799 #145</a>) to avoid generating the same identifier, for example, 10800 for /dev/tty1 and /dev/pts/1, which is used to denote an entry 10801 in the utmp file (Debian bug report #84676), A similar fix was 10802 also sent by Jerome Borsboom <borsboom@westbrabant.net> 10803 in May, but I overlooked it when reviewing bug reports.</li> 10804 10805 <li>add configure check for <code><ncurses/term.h></code> 10806 to get rid of hardcoded <code>__CYGWIN__</code> ifdef in 10807 resize.c 10808 <p>NOTE: The CYGWIN port should not be linking 10809 <code>resize</code> with ncurses. It appears that the only 10810 reason it is, is because both the ncurses and termcap ports 10811 on that platform are badly misconfigured (essential pieces 10812 have been removed, etc). Checking for 10813 <code><ncurses/term.h></code> does not hurt anything, 10814 since there are some correct installations that are set up 10815 that way.</p> 10816 </li> 10817 10818 <li>add a sample <code>uxterm</code> script, which uses the 10819 <code>UXTerm</code> application defaults for UTF-8 10820 environments.</li> 10821 10822 <li>undo change to xterm application defaults, since this 10823 introduced an unnecessary incompatibility. The intended 10824 functionality was already addressed by the <a href= 10825 "#xterm_141">UXTerm</a> app-defaults file.</li> 10826 10827 <li>resync with XFree86 CVS 10828 <ul> 10829 <li>Modified xterm app default to use LFD fontnames instead 10830 of old type (Michael Schroeder).</li> 10831 10832 <li>Fix xterm when XIM is disabled - caused a segfault 10833 (Tomohiro Kubota).</li> 10834 </ul> 10835 </li> 10836 </ul> 10837 10838 <h1><a name="xterm_159" id="xterm_159">Patch #159 - 2001/9/19 - 10839 XFree86 4.1.0</a></h1> 10840 10841 <ul> 10842 <li>remove an ifdef for <code>USE_HANDSHAKE</code> added in 10843 patch #158 from the second <code>TIOCSSIZE</code> ioctl call in 10844 the initialization code. Paul Gilmartin reports that for 10845 Solaris 2.6 (sparc), stty does not show that xterm sets rows 10846 and columns unless the second ioctl is executed.</li> 10847 10848 <li>correct treatment of empty parameter list for some OSC 10849 strings (report by Sami Farin <sfarin@ratol.fi>).</li> 10850 </ul> 10851 10852 <h1><a name="xterm_158" id="xterm_158">Patch #158 - 2001/9/8 - 10853 XFree86 4.1.0</a></h1> 10854 10855 <ul> 10856 <li>augment key translations for scrollbar widget to ensure 10857 that keystrokes intended for the text area are not lost if the 10858 mouse pointer happens to fall on the scrollbar. This can 10859 happen, for instance, if the user's <code>app-defaults</code> 10860 or <code>.Xdefaults</code> file contains a translations 10861 resource, though it may also happen through unrelated resource 10862 settings: probably a bug in libXt (reported by Paul Fox 10863 <pgf@foxharp.boston.ma.us> and Dmitry Yu. Bolkhovityanov 10864 <D.Yu.Bolkhovityanov@inp.nsk.su>).</li> 10865 10866 <li>widen ifdef's in xterm.h to define 10867 <code>__EXTENSIONS__</code> on Solaris, for compilers other 10868 than gcc. This was added along <code>_POSIX_C_SOURCE</code> 10869 with in <a href="#xterm_151">patch #151</a>, but is not 10870 sufficient since Sun's compiler does not define 10871 <code>__STDC__</code> by default (report by Matthias Scheler 10872 <tron@zhadum.de>).</li> 10873 10874 <li>modify xterm to obtain the closest matching color if an 10875 exact color is not available, e.g., on 8-bit displays (patch by 10876 Stephen P Wall)</li> 10877 10878 <li>implement "OverTheSpot" preedit type of XIM input (patch by 10879 Tomohiro Kubota): 10880 <ul> 10881 <li>This preedit type is a reasonable compromise between 10882 simpleness of implementation and usefulness. "Root" preedit 10883 type is easy to implement but not useful; "OnTheSpot" 10884 preedit type is the best in the point of view of user 10885 interface but very complex. And more, "OverTheSpot" is the 10886 preedit type which the most XIM servers support. Thus, to 10887 achieve reasonable usability, support of "OverTheSpot" 10888 preedit type is needed.</li> 10889 10890 <li>In "OverTheSpot" preedit type, the preedit 10891 (preconversion) string is displayed at the position of the 10892 cursor. On the other hand, it is XIM server's 10893 responsibility to display the preedit string. Thus, it is 10894 needed for XIM client (here XTerm) to inform the XIM server 10895 of the cursor position. And more, to achieve good visual 10896 proportion, preedit string must be written using proper 10897 font. Thus, it is XIM client's responsibility to inform the 10898 XIM server of the proper font. The font must be supplied by 10899 "fontset". Fontset is a set of fonts with charsets which 10900 are specified by the current locale. Since XTerm uses 10901 ISO10646 fonts regardless of the current locale, the fonts 10902 for XIM must be prepared separately. It is difficult to 10903 prepare fonts which are similar to XTerm font. Thus, my 10904 patch uses a simple way - the default font is "*" which 10905 matches every fonts and X library will automatically choose 10906 fonts with proper charsets. I added "-fx" command option 10907 and "ximFont" resource to override this default font 10908 setting.</li> 10909 10910 <li>changed the definition of "OverTheSpot" preedit type 10911 from XIMPreeditPosition|XIMStatusArea to 10912 XIMPreeditPosition|XIMStatusNothing. This matches the 10913 behavior of other programs such as Rxvt, Kterm, Gedit.</li> 10914 10915 <li>A tiny XIM bugfix is also included. By calling 10916 XSetLocaleModifiers() with parameter of "", it can consider 10917 XMODIFIERS environmental variable which is a standard way 10918 for users to specify XIM server to be used.</li> 10919 </ul> 10920 </li> 10921 10922 <li>adjust configure script to accommodate repackaging of 10923 keysym2ucs.c as include-file for xutf8.c (patch by Tomohiro 10924 Kubota).</li> 10925 10926 <li>add the <code>UXTerm</code> app-defaults file to makefile 10927 install rules (request by Juliusz Chroboczek).</li> 10928 10929 <li>correct logic in <code>get_termcap()</code>, which returned 10930 false if the <code>tgetent()</code> call indicated that xterm 10931 was linked with terminfo. Although the <code>$TERMCAP</code> 10932 variable cannot be adjusted in this case, xterm still needs 10933 information from this call to extract data to initialize the 10934 erase-mode when the <code>ptyInitialErase</code> resource is 10935 false.</li> 10936 10937 <li>modify <code>ScrollbarReverseVideo()</code> function to 10938 cache the original border color, so it can restore that when an 10939 application flashes the screen (Bugzilla #38872).</li> 10940 10941 <li>resync with XFree86 CVS 10942 <ul> 10943 <li>remove ifdef's for X_NOT_STDC_ENV (patch by David 10944 Dawes).</li> 10945 10946 <li>add Cygwin to special errno handling case in ptydata.c 10947 (Alan Hourihane)</li> 10948 10949 <li>set screen size earlier in initialization, to address a 10950 race with window manager resizing its clients (Keith 10951 Packard).</li> 10952 </ul> 10953 </li> 10954 </ul> 10955 10956 <h1><a name="xterm_157" id="xterm_157">Patch #157 - 2001/6/18 - 10957 XFree86 4.1.0</a></h1> 10958 10959 <ul> 10960 <li>clean up button.c and input.c (patch by Juliusz 10961 Chroboczek). The basic idea is to use a single set of APIs in 10962 the XTerm core, and put a set of workarounds in a separate 10963 file. As you will notice, this drastically simplifies parts of 10964 the code; in particular, the only remaining ifdefs related to 10965 the differences between Xutf8 and legacy systems are related to 10966 the selection provider logic. This defines two new files, 10967 xutf8.h and xutf8.c, provide some half-hearted but fully 10968 portable emulation for the three Xutf8* functions that XTerm 10969 uses. Putting these in a separate file will allow people to 10970 experiment with more complex versions without making the core 10971 of XTerm more difficult to maintain. The functionality of the 10972 emulation is as follows. 10973 <ul> 10974 <li>Xutf8TextListToTextProperty fully handles XStringstyle 10975 and XUTF8StringStyle. It will only generate STRING for 10976 XStdICCTextStyle, and will only generate Latin-1 in 10977 XCompoundTextStyle (but label it as COMPOUND_TEXT, as the 10978 spec requires). (I have hesitated to make this function 10979 fail for XStdICCTextStyle and XCompoundTextStyle; this 10980 might be a smart thing to do, in the hope that the 10981 selection requestor will try UTF8_STRING afterwards; 10982 opinions?)</li> 10983 10984 <li>Xutf8TextPropertyToTextList fully handles STRING and 10985 UTF8_STRING. It systematically fails for 10986 COMPOUND_TEXT.</li> 10987 10988 <li>Xutf8LookupString will properly handle single-keystroke 10989 input for the keysyms covered by Markus' keysym2ucs 10990 function. It will not handle either compose key input or 10991 external input methods.</li> 10992 </ul> 10993 </li> 10994 10995 <li>add an ifdef for <code>SunXK_F36</code>, used in 10996 <code>xtermcapKeycode()</code> (patch by Mark Waggoner 10997 <waggoner@ichips.intel.com>).</li> 10998 10999 <li>modify check for login name to try <code>getlogin()</code> 11000 and $LOGNAME, $USER environment variables to detect if the user 11001 has logged in under an alias, i.e., an account with the same 11002 user id but a different name (Debian bug report #70084).</li> 11003 11004 <li>add resource <code>tiXtraScroll</code>, which can be used 11005 to preserve the screen contents in the scrollback rather than 11006 erasing it when starting a fullscreen application such as 11007 <code>vi</code> (patch by Ken Martin 11008 <fletcher@catsreach.org>).</li> 11009 11010 <li>two patches by Denis Zaitsev <zzz@cd-club.ru>: 11011 <ul> 11012 <li>added <code>forceBoxChars</code> resource to control 11013 the "line-drawing characters" option.</li> 11014 11015 <li>added <code>freeBoldBox</code> resource, which, when 11016 set true, suppresses check in 11017 <code>same_font_size()</code>, so xterm does not attempt to 11018 ensure that the bold font is the same size as the normal 11019 font.</li> 11020 </ul> 11021 </li> 11022 11023 <li>change the color class for ANSI colors and similar ones 11024 such as bold-color, etc., to follow the convention that the 11025 classname is the instance name with a leading capital (e.g., 11026 <code>color0</code> and <code>Color0</code> rather than 11027 <code>color0</code> and <code>Foreground</code>). There was 11028 little use for Foreground as a class other than to create 11029 occasional confusion and bug reports, most recently by Nelson 11030 Beebe who reports that it disables colors in xterm but not on 11031 Linux, which is probably due to a difference in resource 11032 evaluation order. A configure script option 11033 (--disable-color-class) is provided for anyone who did use the 11034 older behavior.</li> 11035 11036 <li>fix a signal-handling bug. When running xterm with 11037 <code>ksh</code> or similar shell such as bash 2.05, xterm will 11038 hang and not respond to keystrokes after the user types 11039 <code>suspend</code>. Additionally the popup menus do not 11040 respond, so it is not possible to send SIGCONT to the shell. 11041 What is happening is that the shell is sending itself SIGSTOP, 11042 and it is being stopped. Per specification it also means that 11043 the operating system is sending SIGCHLD to parent to the bash 11044 (XTERM). Now the issue is that xterm assumes it cannot happen 11045 and it expects to receive SIGCHLD only upon 11046 <em>termination</em> of its children. This causes a deadlock 11047 with xterm waiting for the child to die, and the child waiting 11048 for SIGCONT. (report/patch by Adam Sulmicki), analysis/testing 11049 by Sven Mascheck 11050 <sven.mascheck@student.uni-ulm.de>).</li> 11051 11052 <li>correct some inconsistent checks for 11053 <code>XtReleaseGC()</code> calls in 11054 <code>xtermLoadFont()</code> (patch by Nam SungHyun 11055 <namsh@lge.com>).</li> 11056 11057 <li>updated wcwidth.c and keysym2ucs.c to versions dated 11058 2001/1/12 and 2001/4/18, respectively from 11059 http://www.cl.cam.ac.uk/~mgk25/ucs/</li> 11060 11061 <li>correction to change from <a href="#xterm_90">patch 11062 #90</a>, which was intended to reset the saved cursor position 11063 for normal/alternate screens on a soft reset, but actually 11064 wiped out all of the saved cursor information. Just reset the 11065 saved position for the current screen (report by Michael 11066 Schroeder).</li> 11067 11068 <li>modify ShowCursor() and HideCursor() so that if the cursor 11069 points to the second part of a wide character, make the 11070 show/hide operate on the first position of the wide character 11071 (patch by Sven Verdoolaege).</li> 11072 11073 <li>scrolling in the alternate screen just before switching 11074 back to the main screen can cause extra blank lines to be 11075 inserted into the scrollback buffer (patch by Paul Vojta 11076 <vojta@math.berkeley.edu>).</li> 11077 11078 <li>resync with XFree86 4.1.0: 11079 <ul> 11080 <li>Use TermcapLibrary as -lncurses instead of -ltermcap, 11081 fixes problem building xterm/resize on Cygwin/XFree86 11082 (Harold Hunt).</li> 11083 11084 <li>Install xterm.termcap and xterm.terminfo when 11085 installing xterm (Torrey T. Lyons).</li> 11086 11087 <li>Fix some build issues on Cygwin/XFree86 (Suhaib 11088 Siddiqi).</li> 11089 11090 <li>Define CBAUD, when it's missing in xterm, on LynxOS 11091 (Stuart Lissaman).</li> 11092 </ul> 11093 </li> 11094 </ul> 11095 11096 <h1><a name="xterm_156" id="xterm_156">Patch #156 - 2001/4/28 - 11097 XFree86 4.0.3</a></h1> 11098 11099 <ul> 11100 <li>change order of selection-target types to make 8-bit xterm 11101 prefer UTF8_STRING to COMPOUND_TEXT (patch by Juliusz 11102 Chroboczek).</li> 11103 11104 <li>document <code>-fa</code>, <code>-fs</code> command-line 11105 options and <code>faceName</code>, <code>faceSize</code> 11106 resources which are used by the freetype library support.</li> 11107 11108 <li>if configure script finds freetype libraries, but imake 11109 definitions do not have the XRENDERFONT definition, define it 11110 anyway.</li> 11111 11112 <li>modify configure script check for freetype libraries to 11113 include <code><Xlib.h></code>, since an older version of 11114 the related headers relies on this (patch by Adam 11115 Sulmicki).</li> 11116 </ul> 11117 11118 <h1><a name="xterm_155" id="xterm_155">Patch #155 - 2001/4/20 - 11119 XFree86 4.0.3</a></h1> 11120 11121 <ul> 11122 <li>correct return type of in_put() from <a href= 11123 "#xterm_155">patch #153</a> changes, which left it not wide 11124 enough for UTF-8 (patch by Bruno Haible).</li> 11125 </ul> 11126 11127 <h1><a name="xterm_154" id="xterm_154">Patch #154 - 2001/4/11 - 11128 XFree86 4.0.3</a></h1> 11129 11130 <ul> 11131 <li>undo check for return value from <code>pututline</code> 11132 (used for debugging) since that function does not return a 11133 value on Slackware 3.6.</li> 11134 11135 <li>correct length in ScreenWrite, when rendering invisible 11136 text (patch by Sven Verdoolaege <skimo@kotnet.org>).</li> 11137 11138 <li>fixes/improvements for the <code>i18nSelection</code> 11139 resource from patch #153, by Bruno Haible: 11140 <ul> 11141 <li>add missing initialization for 11142 <code>i18nSelection</code> resource.</li> 11143 11144 <li>split-out the non-ICCM aspect of the 11145 <code>i18nSelection</code> resource as a new resource, 11146 <code>brokenSelections</code>.</li> 11147 </ul> 11148 </li> 11149 11150 <li>add configure check for <code><time.h></code> and 11151 <code><sys/time.h></code>, to allow for Unixware 7, 11152 which requires both. If the configure script is not used, only 11153 <code><time.h></code> will be included as before (report 11154 by Thanh Ma).</li> 11155 11156 <li>fix redefinition of <code>dup2</code>, 11157 <code>getutent</code>, <code>getutid</code>, 11158 <code>getutline</code> and <code>sleep</code> functions on 11159 Unixware 7 (report by Thanh Ma 11160 <Thanh.Ma@casi-rusco.com>)</li> 11161 11162 <li>add a fall-back definition for <code>__hpux</code>, which 11163 is apparently not defined in some compilers on HPUX 11.0 11164 (reported by Clint Olsen).</li> 11165 11166 <li>change VAL_INITIAL_ERASE, which is used as a fallback for 11167 the <code>"kb"</code> termcap string to 8, since that matches 11168 the xterm terminal description (request by Alexander V 11169 Lukyanov).</li> 11170 11171 <li>correct an off-by-one in <code>ClearInLine</code>, which 11172 caused the erase-characters (ECH) control to display 11173 incorrectly (patch by Alexander V Lukyanov).</li> 11174 11175 <li>correct escape sequences shown in terminfo for shifted 11176 editing keys. The modifier code was for the control key rather 11177 than the shift key.</li> 11178 </ul> 11179 11180 <h1><a name="xterm_153" id="xterm_153">Patch #153 - 2001/3/29 - 11181 XFree86 4.0.3</a></h1> 11182 11183 <ul> 11184 <li>increase PTYCHARLEN to 8 for os390, add some debugging 11185 traces for UTMP functions (patch by Paul Gilmartin).</li> 11186 11187 <li>correct an misplaced brace in 11188 <code>SelectionReceived()</code> (patch by Bruno Haible).</li> 11189 11190 <li>correct an assignment dropped in 11191 <code>SelectionReceived()</code> which made it not compile for 11192 wide-characters combined with debug traces.</li> 11193 11194 <li>correct typo, clarify description of 88- and 256-color 11195 controls (report by Bram Moolenaar).</li> 11196 11197 <li>correct a typo in ctlseqs.ms which caused DEC Locator 11198 control sequences using single quote "'" display grave "`" 11199 instead (reported by Paul Williams, apparently in patch 11200 #114).</li> 11201 </ul> 11202 11203 <h1><a name="xterm_152" id="xterm_152">Patch #152 - 2001/3/13 - 11204 XFree86 4.0.2</a></h1> 11205 11206 <ul> 11207 <li>correct index in inner loop in <code>VTInitI18N()</code> 11208 from patch #151 changes, which resulted in infinite loop under 11209 some conditions (report/analysis by Paul Gilmartin).</li> 11210 11211 <li>remove spurious "%|" from terminfo sgr capabilities 11212 (report/analysis by Adam M Costello, Debian #89222).</li> 11213 11214 <li>add shell script to adjust list of dynamic libraries linked 11215 by <code>resize</code> when building with the standalone 11216 configure script. Otherwise it uses the same list as for xterm, 11217 which is excessive.</li> 11218 11219 <li>fix a few compiler warnings reported by the 20010305 gcc 11220 snapshot.</li> 11221 </ul> 11222 11223 <h1><a name="xterm_151" id="xterm_151">Patch #151 - 2001/3/10 - 11224 XFree86 4.0.2</a></h1> 11225 11226 <ul> 11227 <li>alter the behaviour of selections in XTerm (patch by 11228 Juliusz Chroboczek). It is believed to follow the ICCCM + 11229 UTF8_STRING to the letter, both in UTF-8 and in eight-bit mode. 11230 From his description: 11231 <ul> 11232 <li>When compiled against XFree86 4.0.2, the patched XTerm 11233 will make the selection available as COMPOUND_TEXT, STRING 11234 or UTF8_STRING in both modes. It will request selections in 11235 the following order: 11236 <p>UTF-8 mode: UTF8_STRING, TEXT, COMPOUND_TEXT, 11237 STRING.<br> 11238 eight-bit mode: TEXT, COMPOUND_TEXT, UTF8_STRING, 11239 STRING.</p> 11240 </li> 11241 11242 <li>When compiled against an earlier version of XFree86 (or 11243 compiled with OPT_UTF8_API=0), it will still obey the 11244 ICCCM, but will neither request nor provide UTF8_STRING in 11245 eight-bit mode, and neither TEXT nor COMPOUND_TEXT in UTF-8 11246 mode.</li> 11247 11248 <li>For compatibility with previous versions of XTerm, a 11249 resource <code>i18nSelections</code> is provided, please 11250 see the manpage for details. However, due to an unexpected 11251 combination of ICCCM extensions by various bits and pieces 11252 of the libraries, interacting with previous versions of 11253 XTerm will work in many locales even without this flag. 11254 (Please do not set this resource to true by default, as 11255 this would violate the ICCCM.)</li> 11256 </ul> 11257 </li> 11258 11259 <li>improved error checking/reporting in VTInitI18N(), ensuring 11260 that lack of input method styles is treated distinctly from a 11261 mismatch.</li> 11262 11263 <li>remove an incorrect ifdef from patch #141 which suppressed 11264 overstriking to simulate bold font when xterm was compiled to 11265 support wide characters (report/analysis by Adam M Costello 11266 <amc@cs.berkeley.edu>, Debian #76404, Debian 11267 #77575).</li> 11268 11269 <li>modify <code>RequestResize()</code> function to 11270 save/restore window manager hints. Its call to 11271 <code>XtMakeResizeRequest()</code> had the undesirable 11272 side-effect of clearing window manager hints, e.g., when 11273 switching to 132-columns via DECCOLM escape sequence. Window 11274 manager hints make it simple to resize xterm in terms of 11275 character cells rather than pixels (reports by Christian 11276 Weisgerber, Debian #79939). 11277 <p>This applies to the normal configuration. When built with 11278 toolbar support, the hints are applied to a different widget 11279 level (more work will be needed to make hints work with the 11280 toolbar).</p> 11281 </li> 11282 11283 <li>fix a redefinition warning for resize.c on OpenBSD (patch 11284 by Christian Weisgerber).</li> 11285 11286 <li>change resource corresponding to <code>-T</code> option to 11287 match Xt library's <code>-title</code>, i.e., 11288 <code>.title</code> rather than <code>*title</code> so the 11289 command-line options are interchangeable as documented (Debian 11290 bug report #68843).</li> 11291 11292 <li>add script used from autoconf'd makefile for installing 11293 manpages, since recent XFree86 changing the way section numbers 11294 are represented makes the install dependent on extra 11295 scripts.</li> 11296 11297 <li>add configure check for freetype libraries and configure 11298 option --disable-freetype to override this feature.</li> 11299 11300 <li>modify some configure script macros to avoid using 11301 changequote(), which has been rendered useless in the latest 11302 autoconf alpha 2.49c</li> 11303 11304 <li>update config.guess, config.sub to 2001-2-13</li> 11305 11306 <li>remove redundant/contradictory __CYGWIN__ definitions from 11307 resize.c</li> 11308 11309 <li>correct manpage typo introduced by X11R6.5 resync.</li> 11310 </ul> 11311 11312 <p>Changes from XFree86 4.0.2:</p> 11313 11314 <ul> 11315 <li>add definition of <code>_POSIX_C_SOURCE</code> for Solaris 11316 to make this compile with <code>gcc -ansi -pedantic</code> 11317 (report by <mark@zang.com>.</li> 11318 </ul> 11319 11320 <h1><a name="xterm_150" id="xterm_150">Patch #150 - 2000/12/29 - 11321 XFree86 4.0.2</a></h1> 11322 11323 <ul> 11324 <li>move the binding for shifted keypad plus/minus, which 11325 invokes the <code>larger-vt-font()</code> and 11326 <code>smaller-vt-font()</code> actions, respectively, into the 11327 translations resource (suggested by Marius Gedminas 11328 <mgedmin@puni.osf.lt>).</li> 11329 11330 <li>modify configure script to support the 11331 <code>--program-prefix</code>, <code>--program-suffix</code> 11332 and <code>--program-transform-name</code> options (request by 11333 Alison Winters <alison@mirrabooka.com>).</li> 11334 11335 <li>fixes for wide/combining characters (Robert Brady): 11336 <ul> 11337 <li>fix a scrolling / combining characters display 11338 anomaly</li> 11339 11340 <li>fix a problem with double-width characters where if the 11341 primary font had no box-drawing characters, the right hand 11342 half of double-width characters was erased (reported by Yao 11343 Zhang <yzhang@sharemedia.com>).</li> 11344 11345 <li>fix special case of null byte for key handling in UTF-8 11346 locales.</li> 11347 </ul> 11348 </li> 11349 11350 <li>modify logic that compares sizes of normal and bold fonts 11351 to be more forgiving of the font server's choice of bold font 11352 which must match the normal font's size. Now 11353 <code>same_font_size()</code> compares the height of the fonts 11354 rather than individually ascent and descent, and allows the 11355 bold font to be one pixel smaller than the normal font 11356 (addresses a report by Alan Citterman <alan@mticket.com>, 11357 who says that something in patches #146 to #148 made xterm more 11358 likely to overstrike bold fonts, and indirectly Debian bug 11359 report #76404, which reports the opposite).</li> 11360 11361 <li>make configure script use $CFLAGS and $CPPFLAGS 11362 consistently, including removing a chunk from configure.in 11363 which attempted to save/restore $CPPFLAGS while processing 11364 value set by the --x-includes option, but lost values set in an 11365 intervening AC_CHECK_HEADERS. This change modifies macros 11366 CF_ADD_CFLAGS, CF_ANSI_CC_CHECK and CF_X_TOOLKIT, as well as 11367 removing variables IMAKE_CFLAGS and X_CFLAGS from the generated 11368 makefile (the AC_CHECK_HEADERS problem was reported by Albert 11369 Chin-A-Young <china@thewrittenword.com<).</li> 11370 11371 <li>correct a comparison in SELECTWORD case of ComputeSelect(), 11372 which resulted in a word-selection wrapping past the first 11373 column without checking the first column's character class 11374 (reported by Christian Lacunza 11375 <celacunza@netscape.net></li> 11376 11377 <li>correct a logic in UTF-8 mode for selecting double-width 11378 characters; a combining character was omitted (patch by Markus 11379 Kuhn).</li> 11380 11381 <li>add feature to pop (raise) window when a bell is received 11382 (patch by Gael Roualland 11383 <gael.roualland@dial.oleane.com>).</li> 11384 11385 <li>add __NetBSD__ and __OpenBSD__ to special-case in 11386 xterm_io.h for USE_POSIX_TERMIOS definition (patch by Christian 11387 Weisgerber).</li> 11388 11389 <li>move special-case HPUX include for <sys/bsdtty.h> to 11390 xterm_io.h to define TIOCSLTC, making HAS_LTCHARS defined for 11391 HPUX 10.20 (report by Bruno Betro).</li> 11392 </ul> 11393 11394 <h1><a name="xterm_149" id="xterm_149">Patch #149 - 2000/12/6 - 11395 XFree86 4.0.1h</a></h1> 11396 11397 <ul> 11398 <li>restructured includes for <code>termios.h</code>, 11399 <code>termio.h</code> and related definitions for main.c, 11400 os2main.c, screen.c and resize.c so they will share equivalent 11401 definitions in a new header <code>xterm_io.h</code>. This is 11402 intended to solve some problems mainly for HPUX which appear to 11403 arise from inconsistent definitions for SIGWINCH- and 11404 HAS_LTCHARS-related symbols (reports by Bruno Betro, Jeremie 11405 Petit and Clint Olsen).</li> 11406 11407 <li>improve usability of double-width fonts by allowing normal 11408 fonts to be given as double-width (from a patch by Fabrice 11409 Bellard <bellard@email.enst.fr>).</li> 11410 11411 <li>correct a few compiler warnings in TRACE() macros for 11412 signed/unsigned variable differences (reported by Clint 11413 Olsen).</li> 11414 11415 <li>make configure script use $CFLAGS and $CPPFLAGS more 11416 consistently, i.e., by using CF_ADD_CFLAGS in CF_ANSI_CC 11417 macro.</li> 11418 11419 <li>expanded description of environment variables in 11420 manual-page.</li> 11421 11422 <li>modify OPT_TCAP_QUERY feature to always return the termcap 11423 or terminfo capability string in the response, and to 11424 read/write the names in hexadecimal form to allow for the 11425 special case of termcap's <code>k;</code> name (patch by Bram 11426 Moolenaar).</li> 11427 11428 <li>add OPT_SAME_NAME and OPT_TCAP_QUERY to xtermcfg.hin, so 11429 the corresponding configure options work (patch by Bram 11430 Moolenaar).</li> 11431 11432 <li>resync with XFree86 4.0.1g: 11433 <ul> 11434 <li>Rewrite Xft library for Render extension/core text and 11435 font management Change xterm to use new interface (Keith 11436 Packard).</li> 11437 </ul> 11438 </li> 11439 </ul> 11440 11441 <h1><a name="xterm_148" id="xterm_148">Patch #148 - 2000/10/31 - 11442 XFree86 4.0.1d</a></h1> 11443 11444 <ul> 11445 <li>document logfile options in man-page.</li> 11446 11447 <li>correct spelling of <code>-samename</code> option in help 11448 message.</li> 11449 11450 <li>add configure script option 11451 <code>--enable-tcap-query</code> (request by Bram 11452 Moolenaar).</li> 11453 11454 <li>add a "Co" or "colors" entry to the OPT_TCAP_QUERY feature 11455 (patch by Bram Moolenaar).</li> 11456 11457 <li>patch by Kiyokazu Suto <suto@ks-and-ks.ne.jp>: 11458 <ul> 11459 <li>add support for bold font for double width characters. 11460 The font name may be specified with the command line option 11461 <code>-fwb</code> or with resource 11462 <code>wideBoldFont</code> (class 11463 <code>WideBoldFont</code>).</li> 11464 11465 <li>correct underlining of double width character string, 11466 which was drawn only half width.</li> 11467 11468 <li>correct binary search of precomposed character table, 11469 which may return wrong result when <code>int</code> is just 11470 32 bits.</li> 11471 </ul> 11472 </li> 11473 11474 <li>some changes to align terminfo with ncurses 5.2: 11475 <ul> 11476 <li>remove xtermm description, retaining xterm-mono since 11477 the former conflicts with ncurses.</li> 11478 11479 <li>modify initialization and reset strings to avoid 11480 putting the save/restore cursor operations bracketing 11481 changes to video attributes, since the changes could be 11482 lost when the cursor is restored. This affects xterm-r6 and 11483 xterm-8bit (the xterm-xfree86 entry uses the soft-reset 11484 feature which resets scrolling margins and origin mode 11485 without requiring us to save/restore the cursor 11486 position).</li> 11487 11488 <li>make a few entries explicitly inherit from 11489 xterm-xfree86 rather than xterm: xterm-rep, xterm-xmc, 11490 xterm-nrc</li> 11491 </ul> 11492 </li> 11493 11494 <li>ensure that sign-extension does not affect 11495 <code>ctype</code> macros by using <code>CharOf()</code> macro 11496 to coerce the parameter to an unsigned char.</li> 11497 11498 <li>resync with XFree86 4.0.1d: 11499 <ul> 11500 <li>Add primitive support in xterm for Xft based fonts 11501 (Keith Packard). The changes are ifdef'd with 11502 <code>-DXRENDERFONT</code>.</li> 11503 </ul> 11504 </li> 11505 </ul> 11506 11507 <h1><a name="xterm_147" id="xterm_147">Patch #147 - 2000/10/26 - 11508 XFree86 4.0.1c</a></h1> 11509 11510 <ul> 11511 <li>correct implementation of <code>ptyInitialErase</code>: the 11512 value assigned to <code>initial_erase</code> was for the 11513 control terminal, which is correct as far as it goes. But there 11514 was no following test for the pseudo-terminal's erase value, 11515 which would overwrite the default obtained from the control 11516 terminal (reported by Christian Weisgerber 11517 <naddy@mips.inka.de>).</li> 11518 11519 <li>modify check for printable-characters in OSC string to use 11520 xterm's ansi_table rather than isprint() macro, to isolate this 11521 check from locale settings. This fixes a problem using 8-bit 11522 characters to set the title (reported by Ricardas Cepas 11523 <rch@richard.eu.org>).</li> 11524 11525 <li>modify sample scripts to check for printf before print, 11526 since the latter is not as well standardized (e.g., on 11527 Linux).</li> 11528 11529 <li>updated config.sub, config.guess to reflect changes on 11530 subversions.gnu.org</li> 11531 </ul> 11532 11533 <h1><a name="xterm_146" id="xterm_146">Patch #146 - 2000/9/12 - 11534 XFree86 4.0.1c</a></h1> 11535 11536 <ul> 11537 <li>correct two instances overlooked from patch #141 which 11538 assumed UTF-8 mode without checking, causing a core dump in 11539 non-UTF-8 mode (one instance was reported by Tommi Virtanen 11540 <tv@debian.org>).</li> 11541 11542 <li>correct a problem selecting from the scrollback buffer in 11543 UTF-8 mode by changing remaining getXtermCell() calls to 11544 XTERM_CELL() as in the non-UTF-8 cases (report by Markus Kuhn, 11545 patch by Robert Brady).</li> 11546 </ul> 11547 11548 <h1><a name="xterm_145" id="xterm_145">Patch #145 - 2000/9/11 - 11549 XFree86 4.0.1c</a></h1> 11550 11551 <ul> 11552 <li>changes for UTF-8 configuration (Robert Brady): 11553 <ul> 11554 <li>doublewide characters don't lose their accents when the 11555 cursor moves onto or from them (a visual bug)</li> 11556 11557 <li>fix logic in addXtermCombining, which mean that if the 11558 low byte of a cell's first combining char was 0, a 11559 following combining char would go into combining slot 1, 11560 not 2.</li> 11561 11562 <li>modify logic for cut-buffers so UTF-8 data is first 11563 converted to Latin1.</li> 11564 11565 <li>collapse surrogates, 0xfffe, 0xffff to UCS_REPL.</li> 11566 11567 <li>modify to allow xterm to to show combining characters 11568 attached to doublewidth characters.</li> 11569 11570 <li>correct bug in linewrap with -u8 option (reported by 11571 Andreas Koenig <andreas.koenig@anima.de>).</li> 11572 </ul> 11573 </li> 11574 11575 <li>several changes to PTY logic (based on request by Tim Ryan 11576 <timryan@nortelnetworks.com>). 11577 <ul> 11578 <li>modify treatment of <code>-S</code> option to to make 11579 it work with Unix98 PTY's.</li> 11580 11581 <li>restore sense of IsPts flag in <code>get_pty()</code>, 11582 which was lost in Unix98 changes.</li> 11583 11584 <li>use new functions <code>my_pty_id()</code> and 11585 <code>my_pty_name()</code> to simplify/fix strings used for 11586 utmp, wtmp identifiers.</li> 11587 11588 <li>simplify <code>get_pty()</code> function, making it 11589 have a single return point so its inputs/outputs can be 11590 identified.</li> 11591 </ul> 11592 </li> 11593 11594 <li>update config.guess and config.sub and scripts to my 11595 20000819 patch, adding cases for OS/2 EMX.</li> 11596 11597 <li>add special case for os390 compiler options to configure 11598 script (patch by Paul Gilmartin)</li> 11599 11600 <li>fix some unused-variable compiler warnings (reported by 11601 Zdenek Sekera).</li> 11602 11603 <li>split-out some string functions into xstrings.c, to use 11604 them more consistently among main.c, os2main.c and 11605 resize.c</li> 11606 11607 <li>align termcap/terminfo files, adding entries to make them 11608 match. The termcap entries are necessarily less complete than 11609 the terminfo, to fit within 1023 character per entry.</li> 11610 11611 <li>add terminfo entry for xterm-sco (SCO function keys).</li> 11612 11613 <li>modify <code>same_font_name()</code> to properly handle 11614 wildcard introduced in <code>bold_font_name()</code>, making 11615 comparison for different fonts succeed when only the normal 11616 font is specified. This is needed to decide if 1-pixel offset 11617 should be used. (reported in a newsgroup by Bart Oldeman 11618 <enbeo@enbeo.resnet.bris.ac.uk>)</li> 11619 11620 <li>correct preprocessor line for OPT_WIDE_CHARS in 11621 drawXtermText() from patch #141 which resulted in overstriking 11622 for bold fonts not working.</li> 11623 11624 <li>correct Imakefile from 4.0.1c resync so UTF-8 modules are 11625 in UTF8SRC, UTF8OBJ lists, allowing build without UTF-8 11626 support.</li> 11627 </ul> 11628 11629 <h1><a name="xterm_144" id="xterm_144">Patch #144 - 2000/8/23 - 11630 XFree86 4.0.1b</a></h1> 11631 11632 <ul> 11633 <li>remove a spurious assignment in ScreenWrite() from Robert 11634 Brady's patch which set a null at the "end" of the buffer to be 11635 written. That made the autowrap feature write a blank in the 11636 first column for the non-UTF-8 configuration, rather than the 11637 actual character (reported by Alan Citterman 11638 <alan@mticket.com>).</li> 11639 </ul> 11640 11641 <h1><a name="xterm_143" id="xterm_143">Patch #143 - 2000/8/19 - 11642 XFree86 4.0.1b</a></h1> 11643 11644 <ul> 11645 <li>add a check to ensure that <code>-class</code> command-line 11646 option is not confused with <code>-c</code> (reported by Paul 11647 Townsend <aab@aab.cc.purdue.edu>).</li> 11648 </ul> 11649 11650 <h1><a name="xterm_142" id="xterm_142">Patch #142 - 2000/8/18 - 11651 XFree86 4.0.1b</a></h1> 11652 11653 <ul> 11654 <li>correction to precompose scripts, so 0061 + 0300 will now 11655 be really be displayed as 00C0 (patch by Robert Brady 11656 <robert@susu.org.uk>).</li> 11657 11658 <li>correct macro ClassSelects() in button.c, used to hide 11659 ifdef's for OPT_WIDE_CHARS in patch #141 (reported by Andreas 11660 Paul <paula@informatik.tu-muenchen.de>).</li> 11661 11662 <li>change wcwidth.h to include stddef.h rather than wchar.h, 11663 which is not present on OpenBSD and FreeBSD (reported by 11664 Christian Weisgerber and Bram Moolenaar).</li> 11665 11666 <li>newer config.sub and config.guess, from lynx 11667 2.8.4dev.7</li> 11668 </ul> 11669 11670 <h1><a name="xterm_141" id="xterm_141">Patch #141 - 2000/8/14 - 11671 XFree86 4.0.1b</a></h1> 11672 11673 <ul> 11674 <li>changes for doublewidth and combining characters, from 11675 http://www.ecs.soton.ac.uk/~rwb197/xterm/ (integrated patch by 11676 Robert Brady). In this context, doublewidth refers to 16-bit 11677 character sets which may have glyphs occupying two cells.</li> 11678 11679 <li>add command-line option <code>-class</code>, which allows 11680 one to override xterm's resource class. Also add resource file 11681 <code>UXTerm.ad</code>, which simplifies using xterm for both 11682 8-bit character sets and UTF-8.</li> 11683 11684 <li>fixes/improvements to OPT_TCAP_QUERY logic (patches by Bram 11685 Moolenaar, Stephen P Wall).</li> 11686 </ul> 11687 11688 <h1><a name="xterm_140" id="xterm_140">Patch #140 - 2000/7/23 - 11689 XFree86 4.0.1</a></h1> 11690 11691 <ul> 11692 <li>modify Makefile.in to circumvent GNU make's built-in suffix 11693 rule for ".sh" which confuses install.sh with the "make 11694 install" target (report/patch by Paul Gilmartin).</li> 11695 11696 <li>implement an experimental control sequence which an 11697 application may use to query the terminal to determine what 11698 sequence of characters it would send for a given function key. 11699 This is ifdef'd with OPT_TCAP_QUERY (request by Bram 11700 Moolenaar).</li> 11701 11702 <li>add /usr/local to search path in CF_X_ATHENA configure 11703 macro to build with Xaw3d on OpenBSD (patch by Christian 11704 Weisgerber).</li> 11705 11706 <li>add missing <code>#undef HAVE_TERMIO_C_ISPEED</code> to 11707 xtermcfg.hin, omitted in patch #133 fix for IRIX 6.5 baudrate 11708 (report by Alain Filbois <Alain.Filbois@loria.fr>).</li> 11709 11710 <li>correct a few errors in xterm.man: font in filename example 11711 for Tektronix emulation, and description of -nul/+nul 11712 command-line options (report by Eric Fischer 11713 <enf@pobox.com>).</li> 11714 11715 <li>update config.guess and config.sub, from tin and lynx.</li> 11716 </ul> 11717 11718 <h1><a name="xterm_139" id="xterm_139">Patch #139 - 2000/6/17 - 11719 XFree86 4.0d</a></h1> 11720 11721 <ul> 11722 <li>back out change to <code>-name</code> command-line option, 11723 restoring its original behavior (as noted by David Madore, the 11724 correct interpretation of this option is the application 11725 instance rather than the application class).</li> 11726 </ul> 11727 11728 <h1><a name="xterm_138" id="xterm_138">Patch #138 - 2000/6/15 - 11729 XFree86 4.0c</a></h1> 11730 11731 <ul> 11732 <li>workaround for fixed fonts which are generated from Unicode 11733 fonts: they omit glyphs for some xterm's less-used line-drawing 11734 characters, which caused xterm to set a flag telling it to use 11735 only its internal line-drawing characters. Do not set the flag 11736 (it can be set from the popup menu), and xterm will generate 11737 only the line-drawing glyphs which actually are missing.<br> 11738 Otherwise, when used for large fonts, xterm may generate a 11739 2-pixel wide line, which can leave dots on the screen.</li> 11740 11741 <li>restore first line of 256colres.pl, omitted in 4.0c 11742 diffs.</li> 11743 </ul> 11744 11745 <h1><a name="xterm_137" id="xterm_137">Patch #137 - 2000/6/10 - 11746 XFree86 4.0b</a></h1> 11747 11748 <ul> 11749 <li>make command-line <code>-name</code> option work as 11750 documented. Apparently this was lost in X11R5 when coding to 11751 use <code>XtAppInitialize</code>.</li> 11752 11753 <li>limit numeric parameters of control sequences to 65535 to 11754 simplify checks for numeric overflow.</li> 11755 11756 <li>change index into UDK list to unsigned to guard against 11757 numeric overflow making the index negative (Taneli Huuskonen 11758 <huuskone@cc.helsinki.fi>).</li> 11759 11760 <li>change <code>sun function-keys</code> resource name to 11761 <code>sunFunctionKeys</code> to work around redefinition of the 11762 token <code>sun</code> by xrdb on Solaris. Similarly, renamed 11763 resource <code>sun keyboard</code> to 11764 <code>sunKeyboard</code> (Stephen P Wall).</li> 11765 11766 <li>change similar resource names for HP and SCO to avoid 11767 potential conflict with xrdb symbols on other systems, as well 11768 as for consistency.</li> 11769 11770 <li>reorganized the install targets in the autoconf'd Makefile, 11771 adding install-app, install-bin, install-dirs and install-man. 11772 The app-defaults class can be overridden by setting the make 11773 variable 'CLASS', simplifying customization of xterm as a 11774 Unicode terminal, e.g., CLASS=UXTerm.</li> 11775 11776 <li>add limit checks to <code>ClearInLine()</code>, 11777 <code>ScrnInsertChar()</code>, <code>ScrnDeleteChar()</code> to 11778 correct potential out-of-bounds indexing (prompted by Debian 11779 bug report #64713, which reported a problem with ICH escape 11780 sequences).</li> 11781 11782 <li>updates to config.sub and config.guess Kevin Buettner 11783 <kev@primenet.com> for elf64_ia64 Bernd Kuemmerlen 11784 <bkuemmer@mevis.de> and MacOS X.</li> 11785 11786 <li>for os390, add check for errno set to ENODEV on failure to 11787 open /dev/tty when there is no controlling terminal (patch by 11788 Paul Gilmartin).</li> 11789 11790 <li>fixes for building on Digital Unix 4.0 and AIX 4.2 (patch 11791 from H Merijn Brand <h.m.brand@hccnet.nl>).</li> 11792 11793 <li>modify DECRQSS reply for DECSCL to additionally report if 11794 the terminal is set for 8-bit controls.</li> 11795 </ul> 11796 11797 <h1><a name="xterm_136" id="xterm_136">Patch #136 - 2000/6/3 - 11798 XFree86 4.0b</a></h1> 11799 11800 <ul> 11801 <li>add a resource (<code>limitResize</code>) limiting resizing 11802 via the CSI 4 t and CSI 8 t sequences.</li> 11803 11804 <li>ignore out-of-bounds resize requests, i.e., where 11805 sign-extension or truncation of the parameters would 11806 occur.</li> 11807 </ul> 11808 11809 <h1><a name="xterm_135" id="xterm_135">Patch #135 - 2000/5/29 - 11810 XFree86 4.0b</a></h1> 11811 11812 <ul> 11813 <li>remove code introduced in #134 which made some backgrounds 11814 bold.</li> 11815 11816 <li>minor correction to format of updated $TERMCAP when adding 11817 <code>kb</code> capability for <code>ptyInitialErase</code> 11818 logic.</li> 11819 11820 <li>improved test for SVR4 definition.</li> 11821 </ul> 11822 11823 <h1><a name="xterm_134" id="xterm_134">Patch #134 - 2000/5/28 - 11824 XFree86 4.0b</a></h1> 11825 11826 <ul> 11827 <li>update URL's and mailing addresses, moved to 11828 http://dickey.his.com and dickey@herndon4.his.com</li> 11829 11830 <li>correct missing quotes in CF_TTY_GROUP configure script 11831 macro in case the script is run in batch mode.</li> 11832 11833 <li>modify ownership-check of log file to ignore the group 11834 ownership. Otherwise xterm cannot create logfiles in 11835 directories with set-gid permissions.</li> 11836 11837 <li>simplify the logic that reads termcap data.</li> 11838 11839 <li>add fallback definition for B9600 in case line speed 11840 definition for 38400 is missing (report by Jack J Woehr 11841 <jwoehr@ibm.net>, for OpenBSD 2.6).</li> 11842 11843 <li>fix: Set highlightColor, and select a region containing the 11844 text cursor. If the window loses focus, the cursor becomes 11845 hollow, with the region inside the cursor being 11846 background/foreground, unlike the rest of the selection, which 11847 is foreground/highlight (patch by Ross Paterson 11848 <ross@soi.city.ac.uk>).</li> 11849 11850 <li>add configure script tests to define SVR4, SYSV and 11851 USE_POSIX_WAIT, which enables xterm to compile on Solaris 7 and 11852 SCO Openserver without imake, though there are still a few 11853 features for the latter which require <code>sco</code> to be 11854 predefined.</li> 11855 11856 <li>patches from Stephen P Wall: 11857 <ul> 11858 <li>add support for two Sun-specific function keys. These 11859 keys are labeled F11 and F12 on Sun Type 5 keyboards, but 11860 return SunXK_F36 and SunXK_F37. Support will only be 11861 compiled in if the header file <X11/Sunkeysym.h> 11862 exists and contains the appropriate symbol definitions. The 11863 keycodes for the DEC keycodes were arbitrary unused codes, 11864 but the ones for the Sun keycodes are what cmdtool and 11865 shelltool actually send.</li> 11866 11867 <li>add <code>colorRV</code> and <code>colorRVMode</code> 11868 resources to allow specifying a color to use for reverse 11869 video, similar to the existing UL, BD, and BL modes.</li> 11870 11871 <li>add <code>alwaysUseMods</code> resource, to override 11872 check if <code>alt</code> or <code>meta</code> modifiers 11873 are used in <code>translations</code> resource. Revamped 11874 the code to calculate the modifier value, and included Meta 11875 if alwaysUseMods is TRUE, using values 9-16.</li> 11876 </ul> 11877 </li> 11878 11879 <li>fixes for os390 (Paul Gilmartin): 11880 <ul> 11881 <li>regularize the definition of CONTROL() and remove an 11882 acknowledged "trial and error" table.</li> 11883 11884 <li>translate "^?" into A2E(0177) which is the EBCDIC "DEL" 11885 rather than plain 0177 which is the EBCDIC quotation 11886 mark.</li> 11887 11888 <li>modify <code>xtermMissingChar()</code> so that EBCDIC 11889 codes 128-159 are not rendered as blanks by X server 11890 running on Solaris, which sees those as control 11891 characters.</li> 11892 11893 <li>make debugging traces (configure --enable-trace) work 11894 properly with EBCDIC.</li> 11895 </ul> 11896 </li> 11897 </ul> 11898 11899 <h1><a name="xterm_133" id="xterm_133">Patch #133 - 2000/5/2 - 11900 XFree86 4.0a</a></h1> 11901 11902 <ul> 11903 <li>add substitutions in autoconf'd Makefile for CPPFLAGS, 11904 LDFLAGS and AWK (reported by Neil Bird).</li> 11905 11906 <li>correct uninitialized <code>childstat</code> variable from 11907 patch #131 in <code>creat_as()</code> function, which caused 11908 logging to not work on Solaris, whose <code>waitpid()</code> 11909 function does not initialize its parameter. Add check for EINTR 11910 on return from <code>waitpid()</code> as well (reported by Neil 11911 Bird <neil.bird@rdel.co.uk>).</li> 11912 11913 <li>remove a redundant check for working <code>setuid()</code> 11914 function introduced in patch #132. Greg Smith reports that this 11915 does not work as intended on os390.</li> 11916 11917 <li>change line speed from 9600bd to 38400bd, to accommodate 11918 people who mistakenly use $TERM set to <em>vt100</em>, to 11919 reduce the effect of padding associated with this terminal 11920 type.</li> 11921 11922 <li>add configure script check for IRIX 6.5's redefinition of 11923 baud rates associated with <code>struct termio</code>, to 11924 correct a situation where the baud rate was initialized to zero 11925 (reported by Andrew Isaacson <adi@lcse.umn.edu>).</li> 11926 11927 <li>remove unused configure script check for VDISABLE.</li> 11928 </ul> 11929 11930 <h1><a name="xterm_132" id="xterm_132">Patch #132 - 2000/4/11 - 11931 XFree86 4.0a</a></h1> 11932 11933 <ul> 11934 <li>undo an incorrect change from patch #113 caused the right 11935 scrollbar to be positioned incorrectly when re-enabling it 11936 (analysis by D Roland Walker).</li> 11937 11938 <li>add ctrlFKeys resource, replacing constant for adjusting 11939 control-F1 to control-F12 to VT220-style F10-F20. The resource 11940 changes the constant 12 to a default value of 10 (request by 11941 Jim Knoble <jmknoble@pobox.com>).</li> 11942 11943 <li>correct ifdef'ing for conflict between definitions in AIX's 11944 <sys/select.h> and <X11/Xpoll.h> (reported by Clint 11945 Olsen).</li> 11946 11947 <li>add checks for return-values of getutid(), initgroups() and 11948 setuid() in main.c, as well as modifying ifdef's for __osf__ to 11949 include tty-group and WTMP logic (adapted from patch by Paul 11950 Szabo <psz@maths.usyd.edu.au>)</li> 11951 11952 <li>modify resize.c to build and work on os390 (uses EBCDIC) 11953 (adapted from patch by Phil Sidler 11954 <Phil.Sidler@airborne.com>)</li> 11955 11956 <li>use Ires(), Bres() and Sres() macros to simplify resource 11957 list in charproc.c</li> 11958 11959 <li>resync with XFree86 4.0a: 11960 <ul> 11961 <li>correct a typo in os2main.c (Holger Veit, from 11962 4.0a).</li> 11963 </ul> 11964 </li> 11965 </ul> 11966 11967 <h1><a name="xterm_131" id="xterm_131">Patch #131 - 2000/3/3 - 11968 XFree86 3.9.18b</a></h1> 11969 11970 <ul> 11971 <li>improve logfile security (integrated patch by Branden 11972 Robinson) 11973 <ul> 11974 <li>make the <code>creat_as()</code> function more strict 11975 by using O_EXCL rather than O_APPEND.</li> 11976 11977 <li>fixes to make DEBUG ifdef's compile/run, including 11978 making the debug logfile more unique by appending a 11979 timestamp to its name.</li> 11980 11981 <li>include <term.h> in resize.c, to fix a 11982 missing-prototype warning.</li> 11983 </ul> 11984 </li> 11985 11986 <li>modified <code>creat_as()</code> a little more, retaining 11987 the ability to append to a logfile If the user specifies the 11988 name. Also, check if the opened file (which patch #130 ensures 11989 is owned by the effective user) is not writable by other 11990 users.</li> 11991 11992 <li>use <code>creat_as()</code> logic to make tek4014 11993 screen-copy more secure (noted by Branden Robinson).</li> 11994 11995 <li>ifdef'd some of Branden's changes to build/work on older 11996 machines.</li> 11997 11998 <li>correct missing initialization of the <code>.mode</code> 11999 flag in <code>ColorRes</code> struct, from patch #129. This 12000 worked on Linux because <code>malloc()</code> zeroes memory on 12001 that platform (reported by Christian Weisgerber).</li> 12002 12003 <li>modify logic for <code>deleteIsDEL</code> resource so it 12004 has internally 3 states: unspecified, true and false. If 12005 unspecified, the keyboard type determines whether the Delete 12006 key transmits <code><ESC>[3~</code> or <code>\177</code>, 12007 and the popup menu entry reflects the internal state. 12008 Otherwise, the popup menu entry overrides the keyboard type 12009 (suggested by Dr Werner Fink, to make it simpler to set 12010 resources that imitate the legacy X11R6 xterm).</li> 12011 </ul> 12012 12013 <h1><a name="xterm_130" id="xterm_130">Patch #130 - 2000/3/1 - 12014 XFree86 3.9.18a</a></h1> 12015 12016 <ul> 12017 <li>modify <code>scroll-forw()</code> and 12018 <code>scroll-back()</code> actions, adding a third parameter 12019 which will direct xterm to ignore the action when mouse 12020 reporting is enabled. This is needed for the wheel mouse to be 12021 used to report to the application rather than scroll the 12022 window.</li> 12023 12024 <li>add menu entry and action to allow disabling xterm's 12025 assumption that the current font contains line-drawing 12026 characters if the font cells 1-31 are nonempty. Some fonts may 12027 have other characters (reported by Bruno Betro 12028 <bruno@iami.mi.cnr.it>).</li> 12029 12030 <li>add a check in <code>creat_as()</code> to ensure that the 12031 user really owns the logfile that has been opened.</li> 12032 12033 <li>add logic to implement SCO function-keys. (This is really 12034 incomplete, since I intend to revisit this and make xterm able 12035 to emulate scoansi better than just the function-keys).</li> 12036 12037 <li>add configure script option --enable-sco-fkeys, minor 12038 related fixes (patch by Dr Werner Fink).</li> 12039 12040 <li>fix typos in ctlseqs.ms (reported by Bram Moolenaar)</li> 12041 12042 <li>fix typo in sinstall.sh default for $TST_PROG (reported by 12043 Paul Gilmartin <pg@sweng.stortek.com>)</li> 12044 </ul> 12045 12046 <h1><a name="xterm_129" id="xterm_129">Patch #129 - 2000/2/26 - 12047 XFree86 3.9.18a</a></h1> 12048 12049 <ul> 12050 <li>improve initialization of ANSI colors by delaying 12051 allocation until each color is first used.</li> 12052 12053 <li>remove ifdef that prevented colorBD/colorUL/colorBL 12054 resources from working when 256-color configuration was built 12055 (reported by Todd Larason).</li> 12056 12057 <li>fix some minor inconsistencies in terminfo (Debian 12058 #58530).</li> 12059 </ul> 12060 12061 <h1><a name="xterm_128" id="xterm_128">Patch #128 - 2000/2/17 - 12062 XFree86 3.9.18</a></h1> 12063 12064 <ul> 12065 <li>correct logic for <code>oldXtermFKeys</code> resource, 12066 fixes a core dump when attempting to set it from the 12067 command-line (reported by Dr Werner Fink).</li> 12068 12069 <li>correct ifdef for meta-sends-escap so configure 12070 --disable-num-lock builds.</li> 12071 </ul> 12072 12073 <h1><a name="xterm_127" id="xterm_127">Patch #127 - 2000/2/12 - 12074 XFree86 3.9.17e</a></h1> 12075 12076 <ul> 12077 <li>add resource, popup menu entry and control sequence to 12078 allow changing the Delete key to send either DEL or the 12079 VT220-style Remove escape sequence.</li> 12080 12081 <li>remove logic for metaSendsEscape that would allow xterm to 12082 send <code><ESC>[3~</code> before a function key that 12083 would begin with <code><ESC>[3~</code> (request by 12084 Christian Weisgerber).</li> 12085 12086 <li>add missing action and documentation for 12087 meta-sends-escape.</li> 12088 12089 <li>correct a few typos in ctlseqs.ms (incorrect code for Cyan 12090 color)</li> 12091 </ul> 12092 12093 <h1><a name="xterm_126" id="xterm_126">Patch #126 - 2000/2/8 - 12094 XFree86 3.9.17c</a></h1> 12095 12096 <ul> 12097 <li>ensure that xterm will automatically activate the UTF-8 12098 mode whenever the name of the locale environment variable 12099 suggests that a UTF-8 locale is in use (patch by Markus Kuhn). 12100 This will help that by simply setting LC_CTYPE an entire system 12101 can be switched over to UTF-8, without users having to remember 12102 the UTF-8 command line options ("-u8", etc.) of the various 12103 applications. Command line options and X resource entries can 12104 still be used to override this default choice.</li> 12105 12106 <li>add old function-keys control sequences and popup menu 12107 entry, for compatibility with legacy X11R6 xterm.</li> 12108 12109 <li>revert translation of editing keypad "Delete" key to legacy 12110 \177.</li> 12111 12112 <li>simplify the color-resource data expressions with macro 12113 COLOR_RES, for later use in restructuring color 12114 initialization.</li> 12115 12116 <li>change encoding of wheel mouse (buttons 4 and 5) to avoid 12117 conflict with legacy mouse modifiers (suggested by Bram 12118 Moolenaar).</li> 12119 </ul> 12120 12121 <h1><a name="xterm_125" id="xterm_125">Patch #125 - 2000/1/31 - 12122 XFree86 3.9.17c</a></h1> 12123 12124 <ul> 12125 <li>make this work on OpenVMS (integrated patch by David 12126 Mathog).</li> 12127 12128 <li>rename some functions, e.g., <code>Index</code> to 12129 <code>xtermIndex</code> so that ports such as VMS which link 12130 externals ignoring case will not have library conflicts 12131 (reported by David Mathog).</li> 12132 12133 <li>correct logic of <code>do_reversevideo()</code>, which did 12134 not update the corresponding popup menu check mark (reported by 12135 David Mathog, this was a detail overlooked in patch #94).</li> 12136 12137 <li>change TRACE macro so semicolon is not within definition, 12138 making <em>indent</em> and similar programs work better.</li> 12139 12140 <li>add <code>depend</code> rule to Makefile.in</li> 12141 12142 <li>modify logic of boldColors resource to suppress it if an 12143 extended color control has been used, e.g., for 88-color or 12144 256-color mode (patch by Todd Larason).</li> 12145 12146 <li>revise logic that handles menus and input translation for 12147 keyboard type so only one can be selected at a time.</li> 12148 12149 <li>restore kdch1=\177 for the Sun function-key type, and make 12150 the the Delete key send DEL (\177) if the oldXtermFKeys 12151 resource is set.</li> 12152 12153 <li>rephrase logic and ifdef's for POSIX VDISABLE to avoid 12154 preprocessor expression that will not compile on NetBSD/x86 12155 1.4.1 (reported by Takaaki Nomura 12156 <amadeus@yk.rim.or.jp>).</li> 12157 </ul> 12158 12159 <h1><a name="xterm_124" id="xterm_124">Patch #124 - 2000/1/27 - 12160 XFree86 3.9.17b</a></h1> 12161 12162 <ul> 12163 <li>change coding of editing keypad's "Delete" key to 12164 <escape>[3~, in the default (Sun/PC) keyboard mode. This 12165 makes the terminfo kdch1 capability independent of the coding 12166 of the backarrow key, which sends either backspace (8) or DEL 12167 (127). The reason for doing this (compatibility with the 12168 <em>screen</em> program) outweighs the choice of DEL (127) 12169 which was used in X11R5/X11R6 xterms. The <em>screen</em> 12170 program translates whatever matches kdch1 into 12171 <escape>[3~, even if it happens to be the stty erase 12172 character.</li> 12173 12174 <li>add encoding for control/?, to work around xmodmap or key 12175 translations which may confuse backspace and delete. A 12176 control/? will send DEL (127), and a control/H will of course 12177 send backspace (8).</li> 12178 12179 <li>add encoding for kcbt to <escape>[Z (fixes Debian 12180 #54840).</li> 12181 12182 <li>minor correction to logic that encodes Sun and DEC function 12183 keys to avoid sending an escape sequence if the key symbol is 12184 not found in xterm's lookup table.</li> 12185 12186 <li>simplify ifdef's in main.c for POSIX VDISABLE so the "^-" 12187 pattern is more likely to be implemented when <em>imake</em> 12188 configures xterm (fixes Debian #55105).</li> 12189 12190 <li>change manpage to make it clearer what codes are sent by 12191 the backarrow key.</li> 12192 </ul> 12193 12194 <h1><a name="xterm_123" id="xterm_123">Patch #123 - 2000/1/22 - 12195 XFree86 3.9.17a</a></h1> 12196 12197 <ul> 12198 <li>add a note reserving OSC 51 for use in Emacs shell (request 12199 by Rob Mayoff <mayoff@dqd.com>).</li> 12200 12201 <li>correct a missing backslash in xterm-vt220 termcap.</li> 12202 12203 <li>cleanup remaining quoted includes, preferring bracketed 12204 form.</li> 12205 12206 <li>minor configure-script macro updates from tin and 12207 vile.</li> 12208 12209 <li>add configure-script option for using utempter library, 12210 adapted from Redhat 6.1 patch for XFree86 3.3.5</li> 12211 12212 <li>resync with XFree86 3.9.17a: 12213 <ul> 12214 <li>correction to QNX support (Frank Guangxin Liu)</li> 12215 12216 <li>some cosmetic changes that did not correct any reported 12217 problems.</li> 12218 </ul> 12219 </li> 12220 </ul> 12221 12222 <h1><a name="xterm_122" id="xterm_122">Patch #122 - 1999/12/28 - 12223 XFree86 3.9.16f</a></h1> 12224 12225 <ul> 12226 <li>move the suggested wheel-mouse button translations into 12227 charproc.c to simplify customization. Correct some minor logic 12228 errors in the support for buttons 4 and 5, used for wheel mice 12229 (reported by Bram Moolenaar).</li> 12230 12231 <li>implement <em>metaSendsEscape</em> resource, with 12232 corresponding control sequence and menu entry. Like 12233 <em>eightBitInput</em>, this causes xterm to send ESC prefixing 12234 the given key, but applies to all keys and is independent of 12235 the 8-bit/7-bit terminal setting. (requests by Alexander V 12236 Lukyanov and Marc Feeley).</li> 12237 12238 <li>correct potential indexing with negative subscript in 12239 udk_lookup(), (reported by Ian Collier 12240 <Ian.Collier@comlab.ox.ac.uk>).</li> 12241 12242 <li>modify configure script that sets TERMINFO_DIR to use 12243 ${prefix} rather than /usr if the --prefix option was specified 12244 (request by Zdenek Sekera <zs@sgi.com>).</li> 12245 12246 <li>modify checks for repeat-character control sequence to test 12247 the character class against xterm's state table, rather than 12248 the isprint() macro (patch by Alexander V Lukyanov).</li> 12249 12250 <li>change several functions to macros to improve speed</li> 12251 12252 <li>two corrections to simulation of bold font via 12253 overstriking: 12254 <ul> 12255 <li>use clipping to avoid leaving trash at end of the text, 12256 and</li> 12257 12258 <li>add brackets so wide-character logic does not 12259 fall-through into the overstriking logic (reported by Marc 12260 Feeley <feeley@IRO.UMontreal.CA>)</li> 12261 </ul> 12262 </li> 12263 12264 <li>add several entries to termcap file to make it have the 12265 same set of aliases as the terminfo file.</li> 12266 12267 <li>scale the color values used for xterm-256color terminfo 12268 entry to 0..1000, as expected by ncurses.</li> 12269 12270 <li>change xterm-r6 terminfo definitions for F1-F4 to match 12271 program.</li> 12272 12273 <li>Add QNX/Neutrino support (Frank Guangxin Liu 12274 <frank@ctcqnx4.ctc.cummins.com>)</li> 12275 </ul> 12276 12277 <h1><a name="xterm_121" id="xterm_121">Patch #121 - 1999/11/14 - 12278 XFree86 3.9.16c</a></h1> 12279 12280 <ul> 12281 <li>change label on "Sun/PC Keyboard" popup menu entry to 12282 "VT220 Keyboard", since the checked state corresponds to VT220 12283 rather than Sun/PC.</li> 12284 12285 <li>add configure test CF_UTMP_UT_XSTATUS to handle the 12286 variants of utmp exit status (reports by Dave Ellement, Jeremie 12287 Petit, Tomas Vanhala).</li> 12288 12289 <li>amend treatment of ALT key (see <a href="#xterm_94">patch 12290 #94</a>) so that if ALT is used as a modifier in key 12291 translations, then no parameter will be sent in escape 12292 sequences for Sun/PC function keys (request by Dr Werner 12293 Fink).</li> 12294 12295 <li>modify default for OPT_I18N_SUPPORT to assume that 12296 <code>XtSetLanguageProc()</code> is available in X11R5. 12297 <p>Caveat: <code>XtSetLanguageProc()</code> was added fairly 12298 late in the X11R5 patches, and some vendors shipped buggy 12299 versions of this function (request by Tomas Vanhala).</p> 12300 </li> 12301 12302 <li>correct configure macro CF_SYSV_UTMP to test-link with 12303 functions consistent with the header, e.g., getutent() for 12304 utmp.h and getutxent() for utmpx.h (reported by Greg 12305 Smith).</li> 12306 12307 <li>modify terminfo entry for <code>xterm-xfree86</code> to 12308 reflect modifiers for shift and control (from a patch by 12309 Alexander V Lukyanov).</li> 12310 12311 <li>modify terminfo entry for <code>xterm-sun</code> to match 12312 the function-key definitions in ncurses. The pageup/pagedown 12313 and related function keys correspond to the Sun keyboard, which 12314 does not necessarily correspond with X's notion of those 12315 keys.</li> 12316 12317 <li>modify treatment of XK_Delete keysym so it transmits 12318 parameterized VT220-style <code><ESC>[3~</code> if 12319 modifiers (shift, control alt) are given (request by Alexander 12320 V Lukyanov).</li> 12321 12322 <li>corrected misspelled resource name in command-line option 12323 for HP function keys.</li> 12324 </ul> 12325 12326 <h1><a name="xterm_120" id="xterm_120">Patch #120 - 1999/10/28 - 12327 XFree86 3.9.16c</a></h1> 12328 12329 <ul> 12330 <li>refine the change to <code>SGR_Background()</code> in patch 12331 #119, by not flushing the pending scrolling operation if the 12332 background color is not actually changing. This combination 12333 occurs when using color-ls to display a long listing, since 12334 each line ends with an SGR0 which affects only the foreground 12335 color. The unnecessary flushing made it noticeably slower 12336 (reported by D Roland Walker <walker@pobox.com>).</li> 12337 12338 <li>remove obsolete documentation about modifiers which can be 12339 returned in mouse tracking mode, and modify logic to ignore 12340 modifiers other than the existing ones, e.g., NumLock (prompted 12341 by discussions with Christian Weisgerber and Brad Pepers 12342 <brad@linuxcanada.com>).</li> 12343 12344 <li>use free bit from obsolete shift-modifier coding of mouse 12345 tracking button events to encode buttons 4 and 5, e.g., for a 12346 wheel mouse (requests by Brad Pepers and Bram Moolenaar).</li> 12347 12348 <li>correct a place where the ptyInitialErase logic did not set 12349 the backarrowKey state, and modify it further to use tgetstr() 12350 rather than parse the termcap data returned from tgetent() so 12351 the ptyInitialErase logic will work when xterm is linked with a 12352 terminfo library (based on a patch by Dr Werner Fink 12353 <werner@suse.de>).</li> 12354 12355 <li>fix definition of HAVE_UTMP_UT_HOST for ISC configuration 12356 (patch by Michael Rohleder).</li> 12357 12358 <li>improve configure script's utmp tests (based on reports by 12359 Greg Smith for os390, and David Ellement for HPUX).</li> 12360 12361 <li>modify sinstall.sh to use uid=0 rather than 'root' to 12362 determine if the installer is privileged. This is needed on 12363 some systems since more than one account may be privileged 12364 (report by Greg Smith).</li> 12365 12366 <li>add an application resource, <code>messages</code> (and a 12367 corresponding -/+mesg option) which controls the initial 12368 permission on the terminal: if messages is set to true (the 12369 default), behavior is as without the patch; if it is set to 12370 false (as per -mesg), the terminal is opened in mode 0600, thus 12371 producing the effect of the <code>mesg n</code> command. This 12372 is useful for users who want to redirect all their messages to 12373 one particular xterm: it is more pleasant to do this with xterm 12374 resources than with explicit calls to the <code>mesg</code> 12375 program (patch, description by David Madore 12376 <david.madore@ens.fr>).</li> 12377 </ul> 12378 12379 <h1><a name="xterm_119" id="xterm_119">Patch #119 - 1999/10/16 - 12380 XFree86 3.9.16c</a></h1> 12381 12382 <ul> 12383 <li>add responses (DA and DSR) for DEC locator mode</li> 12384 12385 <li>add coding for ANSI color to DA response</li> 12386 12387 <li>implement UTF-8 translation for Media Copy (print) 12388 operations.</li> 12389 12390 <li>implement vt320 control sequences for Print Composed Main 12391 Display and for Print All Pages. The latter directs xterm to 12392 print the current screen as well as the scrollback buffer.</li> 12393 12394 <li>correct error in _GNU_SOURCE configure test, which left it 12395 always defined.</li> 12396 12397 <li>add more information, i.e., with strerror for some system 12398 calls in the main program which may fail due to insufficient 12399 permissions (prompted by a problem report for <code>-C</code> 12400 by Jeremie Petit <Jeremie.Petit@digital.com>).</li> 12401 12402 <li>add workaround for conflict between <X11/Xpoll.h> and 12403 <sys/select.h> on AIX 4.3 (Richard Griswold 12404 <griswold@acm.org>).</li> 12405 12406 <li>add configure script test to resolve conflict between 12407 between <X11/Xpoll.h> and <sys/select.h></li> 12408 12409 <li>modify translation of UTF-8 sequences to reject "overly 12410 long" variations (patch by Markus Kuhn).</li> 12411 12412 <li>remove <code>utf8controls</code> resource, since Markus' 12413 change removes the corresponding logic.</li> 12414 12415 <li>correct a case where colors were not rendered properly. 12416 This happened when an application inserted several lines, then 12417 changed colors. If this was done all in one write, then there 12418 would be no intervening refresh, and the new color was applied 12419 to the pending scrolling operation which was awaiting the next 12420 refresh (reported by Stephane Chazelas 12421 <Stephane_Chazelas@Raytheon.com>).</li> 12422 </ul> 12423 12424 <h1><a name="xterm_118" id="xterm_118">Patch #118 - 1999/10/5 - 12425 XFree86 3.9.16b</a></h1> 12426 12427 <ul> 12428 <li>refine configure test for utmp versus utmpx, to build on 12429 HP-UX 10.x (reported by David Ellement).</li> 12430 12431 <li>move the configure check for <code>const</code> after the 12432 check for ANSI C compiler options, since those may be required 12433 to make it work properly on HP-UX.</li> 12434 12435 <li>add configure test for defining 12436 <code>_GNU_SOURCE</code></li> 12437 12438 <li>correction to <em>-hold</em> option, ensure that if data is 12439 already in the output buffer that it will be displayed before 12440 closing the PTY.</li> 12441 12442 <li>move the configure checks for setuid install of xterm into 12443 a script to avoid installing it setuid'd to a non-root user 12444 (reported by Adam Sulmicki <adam@cfar.umd.edu>).</li> 12445 12446 <li>correct configure script's check for termcap.h to avoid 12447 using ncurses' version of it on systems that have a working 12448 <code>tgetent()</code> function. This is needed to make 12449 <code>resize</code> work properly.</li> 12450 12451 <li>fix some typography in ctlseqs.ms description of DEC 12452 locator events (reported by Stephen P Wall).</li> 12453 </ul> 12454 12455 <h1><a name="xterm_117" id="xterm_117">Patch #117 - 1999/9/29 - 12456 XFree86 3.9.16b</a></h1> 12457 12458 <ul> 12459 <li>change order of tests in configure script for utmp and 12460 utmpx to test utmpx first, to compile on Solaris (reported by 12461 Leena Heino <liinu@uta.fi> and Patrik Hagglund 12462 <patha@ida.liu.se>).</li> 12463 12464 <li>add a configure test for utmp.ut_xtime, needed for SCO 12465 Openserver, and for lastlog, needed for Redhat 6.0, to refine 12466 the utmp/utmpx auto-configure.</li> 12467 12468 <li>remove a spurious comma in an #undef (reported by David 12469 Green <greendjf@cvhp152.marconicomms.com> and David 12470 Ellement <ellement@sdd.hp.com> both on HP-UX, whose 12471 compiler does care about syntax).</li> 12472 12473 <li>change ifdef's using __CYGWIN32__ to __CYGWIN__ (reported 12474 by Suhaib M. Siddiqi <Ssiddiqi@InspirePharm.Com>, who is 12475 told that the next Cygnus release will drop that symbol in 12476 their next release).</li> 12477 12478 <li>minor cleanup of ifdef's for makeColorPair (patch by 12479 Stephen P Wall).</li> 12480 12481 <li>work around problem observed in XFree86 3.3.5 (patch by 12482 Alexander V Lukyanov, Redhat #5419). From the problem report: 12483 <blockquote> 12484 <p>xterm consumes cpu when selecting text with mouse 12485 (holding down left mouse button) and when a program working 12486 under the xterm outputs something to stdout.</p> 12487 12488 <p>Easy way to reproduce:<br> 12489 <code>while :; do echo aaa; sleep 1; done</code><br> 12490 (while this runs, select text and hold down left mouse 12491 button) watch cpu load.<br> 12492 release left mouse button - spinning stops.</p> 12493 </blockquote> 12494 </li> 12495 </ul> 12496 12497 <h1><a name="xterm_116" id="xterm_116">Patch #116 - 1999/9/25 - 12498 XFree86 3.9.16a</a></h1> 12499 12500 <ul> 12501 <li>modify warning if change-ownership of PTY fails; some 12502 configurations may not happen to have old-style pty's (reported 12503 by Bob Maynard).</li> 12504 12505 <li>improve check in configure script for group ownership of 12506 installed xterm; some platforms use the -g option of ls to 12507 toggle group off rather than on (reported by Greg Smith).</li> 12508 12509 <li>minor improvement to toolbar geometry, to make it not 12510 resizable. This still is not satisfactory (but is usable) since 12511 the toolbar overlaps the xterm widget if the window is resized 12512 to make it smaller. It appears that some work is needed for the 12513 xterm widget's geometry management to make it function 12514 properly.</li> 12515 12516 <li>implement configure script tests for utmp, tty group.</li> 12517 12518 <li>implement <em>-hold</em> option, allowing users to retain 12519 the window after a shell has exited (this is recently an FAQ, 12520 but prompted by a comment by Joachim Plaettner-Hochwarth 12521 <plaettner@aem.umn.edu> in comp.unix.programmer, that the 12522 IRIX winterm provides this option).</li> 12523 12524 <li>add support for DEC Locator control sequences for xterm 12525 (integrated patch by Stephen P Wall): 12526 12527 <pre> 12528 DECEFR, "Enable Filter Rectangle" 12529 DECELR, "Enable Locator Reports" 12530 DECSLE, "Select Locator Events" 12531 DECRQLP, "Request Locator Position" 12532</pre> 12533 <p>This allows the xterm mouse to be used with applications 12534 that use the DEC Locator sequences, such as VAX Tpu, or SMG$ 12535 based applications.</p> 12536 </li> 12537 12538 <li>improve print action (patch by Matthias Baake). From his 12539 notes, 12540 <ul> 12541 <li>Bug 1<br> 12542 Underlined text is preceded by ESC [0;2m . This should 12543 be ESC [0;4m , ESC [2m doesn't seem to have 12544 any effect. (print.c/send_SGR)</li> 12545 12546 <li>Bug 2<br> 12547 The check for the last non-empty column (while (last > 12548 0) ... in print.c/printLine) omits the rightmost column of 12549 the screen, the loop must start with last = 12550 screen->max_col+1 instead of last = 12551 screen->max_col.</li> 12552 12553 <li>Bug 3<br> 12554 Any attributes of the first character (and of all 12555 immediately following characters with the same attributes) 12556 are ignored. The variable attr (print.c/printLine) should 12557 be initialized with 0, not with *a & SGR_MASK.</li> 12558 </ul> 12559 </li> 12560 </ul> 12561 12562 <h1><a name="xterm_115" id="xterm_115">Patch #115 - 1999/9/18 - 12563 XFree86 3.9.16a</a></h1> 12564 12565 <ul> 12566 <li>integrated changes by Stephen P Wall to implement an 12567 88-color model for systems where 256-colors cannot be 12568 allocated.</li> 12569 12570 <li>when 256-color configuration is compiled, colored bold and 12571 underlining is not available; ifdef'd to avoid possible odd 12572 effects in this case (reported by Stephen P Wall).</li> 12573 12574 <li>add resource <em>cacheDoublesize</em>, to limit the caching 12575 of font information for double-sized characters. This addresses 12576 a problem reported by Aryeh Koenigsberg for X terminals with 12577 limited font memory.</li> 12578 12579 <li>modify treatment of line-drawing characters in UTF-8 mode 12580 so that the Unicode values are used rather than the C0 codes 12581 for storing the translated characters (request by Markus 12582 Kuhn).</li> 12583 </ul> 12584 12585 <h1><a name="xterm_114" id="xterm_114">Patch #114 - 1999/9/15 - 12586 XFree86 3.9.16</a></h1> 12587 12588 <ul> 12589 <li>add configure script checks for Athena headers and 12590 libraries under /usr/contrib to work on HPUX (reported by 12591 several people: David Nixon <djn@csc.liv.ac.uk> Aryeh 12592 Koenigsberg <aryeh.koenigsberg@telrad.co.il> Johannes 12593 Mähner <johanm@camline.com> Andrew Gaylard 12594 <andrew.gaylard@bsw.co.za>).</li> 12595 12596 <li>add check to configure script if xterm is installed setgid 12597 rather than setuid, since wtmp and utmp may be installed with 12598 group-writable permissions other than root (based on Debian bug 12599 report #7112 by Bo Branten <bosse@ing.umu.se>).</li> 12600 12601 <li>rewrote logic that removes data from termcap entry, e.g., 12602 for titeInhibit, to make it less likely to remove the wrong 12603 data.</li> 12604 12605 <li>correct logic which checks for missing characters used for 12606 line drawing. The 0 character was tested unnecessarily, leading 12607 to some inefficiency when rendering.</li> 12608 12609 <li>change termcap capability which is used as input or output 12610 of ptyInitialErase logic from <em>kD</em> to <em>kb</em>. 12611 Christian Weisgerber <naddy@mips.rhein-neckar.de> pointed 12612 out in effect that <em>kD</em> (in terminfo <em>kdch1</em>) 12613 should correspond to the control sequence for <em>dch1</em>, 12614 which deletes from the current position toward the right.</li> 12615 12616 <li>check for failure to change ownership of the PTY device and 12617 warn when xterm is running setuid'd to root. This was reported 12618 to happen on the FreeBSD/NetBSD/OpenBSD systems as a result of 12619 the chflags() call.</li> 12620 12621 <li>add xterm-noapp terminfo entry to illustate a nominally 12622 bash-compatible terminal description.</li> 12623 </ul> 12624 12625 <h1><a name="xterm_113" id="xterm_113">Patch #113 - 1999/8/15 - 12626 XFree86 3.9.15b</a></h1> 12627 12628 <p>Several fixes. The main one is a first draft of pulldown 12629 menus. It's not complete (I have some minor/annoying geometry 12630 problems to correct), but is usable. Once it's complete I plan to 12631 add a menu to support additional selections that won't fit on the 12632 current popup menus. Also, this fits into my longterm plan to 12633 allow configuring with Motif libraries.</p> 12634 12635 <ul> 12636 <li>correct error in input conversion for NRC mode (reported by 12637 Stefan Traby <stefan@sime.com>).</li> 12638 12639 <li>fix initialization of num_lock data in Misc struct (since 12640 those fields of the reference widget aren't initialized), and 12641 add logic to deal with XVision whose NumLock key does not 12642 transmit but does alter keypad state.</li> 12643 12644 <li>correct a missing return-value in get_pty(), for SCO</li> 12645 12646 <li>add E2A fix for backspace (patch by Greg Smith), i.e.,<br> 12647 #define VAL_INITIAL_ERASE A2E(127)</li> 12648 12649 <li>correct foreground color within cursor outline when the 12650 window is unfocused (reported by Stephane Chazelas).</li> 12651 12652 <li>corrected position of scrollbar set in ResizeScrollBar(), 12653 which left it positioned incorrectly if the right scrollbar 12654 were enabled from the popup menu but was not initially enabled. 12655 <p>I have noticed some additional problems with 12656 right-scrollbar on X11R5 which I will correct later.</p> 12657 </li> 12658 12659 <li>integrate changes by Jean-Claude Michot for QNX from 12660 XFree86 3.3.4c</li> 12661 12662 <li>add resources menuBar/MenuBar, menuHeight/MenuHeight for 12663 later use in toolbar geometry.</li> 12664 12665 <li>add configure option --enable-toolbar</li> 12666 12667 <li>add missing definition to make ziconbeep logic not 12668 compile-in when configure script disables it.</li> 12669 12670 <li>add configure-check for input-method support in X 12671 libraries</li> 12672 </ul> 12673 12674 <h1><a name="xterm_112" id="xterm_112">Patch #112 - 1999/7/17 - 12675 XFree86 3.9Pw</a></h1> 12676 12677 <ul> 12678 <li>add null-pointer check to FlushLog(), fixes a core dump 12679 when both -l and -lf options are used when xterm is configured 12680 with wide-character support.</li> 12681 12682 <li>remove "ISO" case for SD, which was due to a typographical 12683 error in ECMA-48 (reported by Paul Williams 12684 <paul@celigne.co.uk> for vttest).</li> 12685 12686 <li>add "FILES" section to manpage.</li> 12687 12688 <li>generate header file to initialize default resources for 12689 colors 16-255.</li> 12690 12691 <li>fixes for os390 (Greg Smith): 12692 <ul> 12693 <li>add README.os390</li> 12694 12695 <li>use the pty_search() function to find an available 12696 pty/tty pair.</li> 12697 12698 <li>move E2A() call out of getXtermCell() to SaveText() 12699 function so it will be available in all 12700 configurations.</li> 12701 </ul> 12702 </li> 12703 12704 <li>patches by Todd Larason: 12705 <ul> 12706 <li>enable SGR 48 5 in ISO color mode, not just 256 color 12707 mode</li> 12708 12709 <li>change configure's --disable-256-color option to 12710 --enable-256-color, to match its effect</li> 12711 12712 <li>fix OSC 4 xx ? (report ansi color) to report a string 12713 which can actually be used to set the color back</li> 12714 12715 <li>fix OSC 4 xx yy (change ansi color) to not allow 12716 setting colors > 15 in 16 color mode</li> 12717 12718 <li>simplify the COLOR_ settings a bit in ptyx.h, along 12719 with setting NUM_ANSI_COLORS needed for #1 and #4 12720 above</li> 12721 12722 <li>correct string-terminator code passed for reference to 12723 OSC responses; when in 7-bit mode, only the final byte of 12724 ST was seen.</li> 12725 12726 <li>Allow multiple color #;name pairs in OSC 4, and 12727 document changes to match.</li> 12728 </ul> 12729 </li> 12730 </ul> 12731 12732 <h1><a name="xterm_111" id="xterm_111">Patch #111 - 1999/7/10 - 12733 XFree86 3.9Pw</a></h1> 12734 12735 <ul> 12736 <li>add control sequences for specifying the RGB value of the 12737 ANSI colors, and for configuring with 256 colors (patch by Todd 12738 Larason <jtl@molehill.org>). I made the default 12739 configuration to 16-colors, because xterm uses the default 12740 color map (which has only 256 colors).</li> 12741 12742 <li>correct an error in DCS $ q m reporting for colors 8-15 12743 (Todd Larason).</li> 12744 12745 <li>add test/demo script for double size characters. Used this 12746 to test/correct display of double size characters that should 12747 wrap, underlined double size characters.</li> 12748 12749 <li>increased cache size for double size fonts to 8, to allow 12750 for both normal and bold fonts (discussion with Aryeh 12751 Koenigsberg <aryeh.koenigsberg@telrad.co.il>).</li> 12752 12753 <li>add fixes for port to OS390 aka MVS (integrated patch from 12754 Greg Smith <rys@epaibm.rtpnc.epa.gov>). OS390 uses EBCDIC 12755 rather than ASCII.</li> 12756 12757 <li>correct an off-by-one in binary search limits in 12758 keysym2ucs.c (Markus Kuhn).</li> 12759 12760 <li>implement logging for UTF-8 mode. The output is written in 12761 UTF-8 form.</li> 12762 </ul> 12763 12764 <h1><a name="xterm_110" id="xterm_110">Patch #110 - 1999/6/29 - 12765 XFree86 3.9Pu</a></h1> 12766 12767 <ul> 12768 <li>If colorMode is enabled by default, compile-in default 12769 resources to match the colors listed in XTerm-col.ad (this 12770 should fix a longstanding FAQ).</li> 12771 12772 <li>added new OSC 3 ; PROPNAME=VALUE ST 12773 escape sequence to set an arbitrary X property on the top level 12774 xterm X11 window. Omit "=VALUE" to delete the X property (patch 12775 by Greg Badros <gjb@cs.washington.edu>).</li> 12776 12777 <li>change internal flag used for <em>utf8controls</em> 12778 resource so we allow 31-bit range of characters (suggested by 12779 Thomas Wolff).</li> 12780 12781 <li>add check for 16-bit characters in OSC strings, change them 12782 to '?' (reported by Thomas Wolff).</li> 12783 12784 <li>modify logic of same_font_name() to avoid trying to 12785 interpret both parameters as wildcard patterns. That does not 12786 (cannot) work, and in some instances the font server will 12787 return unresolved wildcards for the normal or bold fontnames, 12788 making them match inadvertently, triggering the fallback 12789 overstrike logic (reported by Tim Adye).</li> 12790 </ul> 12791 12792 <h1><a name="xterm_109" id="xterm_109">Patch #109 - 1999/6/23 - 12793 XFree86 3.9Pt</a></h1> 12794 12795 <ul> 12796 <li>correct range-check from patch #108, which resulted in not 12797 being able to select from the scrollback buffer (reported by 12798 Tim Adye <T.J.Adye@rl.ac.uk>)</li> 12799 12800 <li>correct "no available ptys" problem with Cygwin B20.1 12801 (patch by Tim Adye).</li> 12802 12803 <li>modified install-ti rule in Makefile.in to allow override 12804 of the terminfo directory when doing a "make install", i.e., by 12805 assigning to TERMINFO_DIR (request by Zdenek Sekera 12806 <zs@sgi.com>).</li> 12807 12808 <li>added install-full rule to Makefile.in</li> 12809 12810 <li>resync mkdirs.sh and install.sh scripts against current 12811 autoconf</li> 12812 12813 <li>implement $(DESTDIR) in Makefile.in, making it simple to 12814 install xterm and associated files into a directory just for 12815 packaging a binary release (suggested by CaT 12816 <cat@zip.com.au>).</li> 12817 12818 <li>change IChar type to unsigned, rather than unsigned short, 12819 making room for a flag to keep with 16-bit characters to 12820 prevent them from being interpreted as C0 or C1 controls 12821 (reported by Thomas Wolff).</li> 12822 12823 <li>correct a typo from patch #107, incorrect array name, in 12824 the filterUTF8 function (patch by Bruno Haible 12825 <haible@ilog.fr>)</li> 12826 12827 <li>add <em>utf8controls</em> resource to specify whether xterm 12828 should interpret 16-bit characters unpacked from UTF-8 form as 12829 control characters if they happen to fall into that range. This 12830 behavior is left unspecified by the Unicode standard (request 12831 by Thomas Wolff).</li> 12832 12833 <li>modify handling of OSC to recover if application sends 12834 16-bit characters with codes above 255. We cannot display them 12835 as is, but translate out-of-range characters to a '?' (reported 12836 by Thomas Wolff).</li> 12837 </ul> 12838 12839 <h1><a name="xterm_108" id="xterm_108">Patch #108 - 1999/6/19 - 12840 XFree86 3.9Ps</a></h1> 12841 12842 <ul> 12843 <li>add a range-check to LastTextCol(), to guard against 12844 indexing before the beginning of the scrollback buffer. This 12845 appears to happen with certain fonts under X11R5 (reported by 12846 Stephane Chazelas <Stephane_Chazelas@Raytheon.com>).</li> 12847 12848 <li>implement resource <em>boldMode</em>, to allow disabling 12849 the simulation of bold fonts when the bold and normal fonts are 12850 not different (requested by Will Day 12851 <willday@rom.oit.gatech.edu>).</li> 12852 12853 <li>change the atom "UTF-8" to "UTF8_STRING", and fixes a few 12854 bugs in the UTF-8 selection (patch by Juliusz Chroboczek).</li> 12855 12856 <li>correct logic of binary-search in keysym2ucs.c (patch by 12857 Markus Kuhn).</li> 12858 12859 <li>add special interpretation of keysym codes above 0x1000000 12860 as the corresponding UCS value plus 0x1000000 (patch by Markus 12861 Kuhn).</li> 12862 </ul> 12863 12864 <h1><a name="xterm_107" id="xterm_107">Patch #107 - 1999/6/12 - 12865 XFree86 3.9Pq</a></h1> 12866 12867 <ul> 12868 <li>Two changes from Stephen P Wall. From his description: 12869 <blockquote> 12870 <p>The first change is simple - I added ESC[3J to erase the 12871 stored lines above the screen. That's what the changes to 12872 util.c and ctlseqs.ms are.</p> 12873 12874 <p>The second change is to get the blinking cursor working. 12875 I took out the cursorBlinkTime resource, and put in 12876 cursorBlink (Boolean), cursorOnTime (time cursor is on in 12877 msecs) and cursorOffTime, and added a cursorblink item to 12878 the vtMenu to enable/disable it.</p> 12879 </blockquote> 12880 </li> 12881 12882 <li>improve selection (integrated patch by Juliusz Chroboczek). 12883 From his description: 12884 <blockquote> 12885 <p>With this patch, selection conversion works 12886 properly:</p> 12887 12888 <pre> 12889 ISO 8859-1 xterm -> ISO 8859-1 xterm (transferred as STRING); 12890 ISO 8859-1 xterm -> UTF-8 xterm (transferred as STRING); 12891 UTF-8 xterm -> ISO 8859-1 xterm (transferred as STRING); 12892 UTF-8 xterm -> UTF-8 xterm (transferred as UTF-8). 12893</pre> 12894 <p>It will not work properly if one xterm is in, say, ISO 12895 8859-2. Actually, for this case xterm breaks the ICCCM 12896 routinely (sending ISO 8859-2 data as STRING), so I 12897 wouldn't worry too much about it. I have not changed the 12898 behaviour in eight-bit mode in any way.</p> 12899 </blockquote> 12900 </li> 12901 </ul> 12902 12903 <h1><a name="xterm_106" id="xterm_106">Patch #106 - 1999/6/9 - 12904 XFree86 3.9Pq</a></h1> 12905 12906 <ul> 12907 <li>remove duplicate fix for OpenBSD in resize.c</li> 12908 12909 <li>correct logic in ScreenWrite, which did not reset the high 12910 bytes of 16-bit characters when overwriting them with a 8-bit 12911 character string (reported by Thomas Wolff).</li> 12912 12913 <li>provide limited support for input of UTF-8 16-bit data by a 12914 lookup table (integrated patch by Markus Kuhn).</li> 12915 12916 <li>correct check in non_blank_line to ensure we're in 12917 wide-character mode before looking at the high bytes, for 12918 InsertChar.</li> 12919 </ul> 12920 12921 <h1><a name="xterm_105" id="xterm_105">Patch #105 - 1999/6/5 - 12922 XFree86 3.9Pp</a></h1> 12923 12924 <ul> 12925 <li>implement new resource <em>trimSelection</em>, which allows 12926 xterm to trim trailing blanks from selected lines. This does 12927 not affect the highlighting. (reported by several people using 12928 <em>mutt</em>, including Hans Morten Kind <edphk@uib.no>, 12929 Jeremy <jeremy@exit109.com> and (Michael Fuller 12930 <msf@mds.rmit.edu.au>).</li> 12931 12932 <li>include term.h in resize for OpenBSD (patch by Matthieu 12933 Herrb).</li> 12934 12935 <li>correct logic for UTF-8 in functions that hide and show the 12936 cursor; it was displaying a space whenever the low byte of the 12937 character at the cursor position was zero (reported by Thomas 12938 Wolff <Thomas.Wolff@icn.siemens.de>).</li> 12939 </ul> 12940 12941 <h1><a name="xterm_104" id="xterm_104">Patch #104 - 1999/5/30 - 12942 XFree86 3.9Pn</a></h1> 12943 12944 <p>This is a resync patch against XFree86 3.9Pn, reflecting 12945 changes which were submitted by Branden Robinson, who worked with 12946 Wichert Akkerman <wichert@cs.leidenuniv.nl> to set up 12947 ifdef's to handle GNU libc 2.1, and use getpt() which lets xterm 12948 avoid having to know the actual PTY name.</p> 12949 12950 <p>I have also added a few fixes for signed/unsigned mismatches, 12951 and corrected a problem in the configure script (the UTF-8 code 12952 was always configured since the Imakefile defines this).</p> 12953 12954 <h1><a name="xterm_103" id="xterm_103">Patch #103 - 1999/5/14 - 12955 XFree86 3.9Pm</a></h1> 12956 12957 <ul> 12958 <li>correct selection logic: I omitted an offset that accounts 12959 for the distance into the scrollback buffer when rewriting this 12960 for patch #101. Also fixed a similar problem for selecting 12961 double size characters from the scrollback buffer (first was 12962 reported by D Roland Walker <walker@pobox.com>).</li> 12963 12964 <li>improved support for Unix98 PTY's, using patch in Debian 12965 bug report #35650, by J.H.M. Dassen 12966 <jdassen@wi.leidenuniv.nl>. From the patch description: 12967 <blockquote> 12968 <ul> 12969 <li>No longer links xterm against libutil on a glibc2.1 12970 system. libutil is a compatibility library and should 12971 only be used when necessary. Rather than having get_pty() 12972 use openpty() from this compatibility library, use the 12973 real UNIX98 pty support in get_pty() (open()ing the 12974 master pty, through getpt() if available (glibc 12975 extension)). Use openpty() only under glibc2.0.</li> 12976 12977 <li>GNU libc2 is not Linux-specific; already it runs on 12978 the Hurd. It provides the UNIX98 pty functions (plus the 12979 getpt() extension), regardless of the underlying OS. 12980 Changed two constructs to look for GNU libc2 only, not 12981 GNU libc2 on Linux.</li> 12982 </ul> 12983 </blockquote> 12984 </li> 12985 12986 <li>improve font configuration, by checking if the user's 12987 resource settings for normal and bold fonts give the same font 12988 sizes (fixes problem reported by Peter Waltenberg 12989 <peterw@dascom.com>).</li> 12990 </ul> 12991 12992 <h1><a name="xterm_102" id="xterm_102">Patch #102 - 1999/5/12 - 12993 XFree86 3.9Pm</a></h1> 12994 12995 <ul> 12996 <li>revert change to openpty call in patch #101; this causes 12997 xterm to fail on DEC-Alpha OSF/1 4.0B (reported by H Merijn 12998 Brand).</li> 12999 13000 <li>modify print.c to move include of stdio.h after the 13001 autoconf'd xtermcfg.h since HP's ANSI C compiler otherwise sees 13002 inconsistent prototype for getopt, probably due to problem with 13003 const (reported by H Merijn Brand).</li> 13004 </ul> 13005 13006 <h1><a name="xterm_101" id="xterm_101">Patch #101 - 1999/5/10 - 13007 XFree86 3.9Pm</a></h1> 13008 13009 <ul> 13010 <li>moved includes and definitions for 'select' from data.h to 13011 xterm.h to fix problem introduced by prototype for getPtyData, 13012 part of UTF-8 changes (reported by Jens Schleusener 13013 <Jens.Schleusener@dlr.de>)</li> 13014 13015 <li>added "Meta <Btn2Down>:clear-saved-lines()" default 13016 translation (patch by H Merijn Brand)</li> 13017 13018 <li>fixes to configure script and ifdef's in main.c to build on 13019 a HP9000/D390 (hppa-2.0w) running HP-UX 11.00 (64 bit) with 13020 egcs 1.1.2 and HP's ANSI C compiler (patch by H Merijn Brand 13021 <PROCURA_BV@CompuServe.com>)</li> 13022 13023 <li>add more parentheses in ifdef's (patch by Bob 13024 Maynard).</li> 13025 13026 <li>eliminate conflicting definitions for USE_TERMINFO in 13027 resize.c (reported by Jeremy Buhler).</li> 13028 13029 <li>change openpty call to pass NULL rather than ttydev 13030 parameter, since that was used only to estimate the length of 13031 the corresponding data, and may not really be long enough 13032 (reported by Andreas Jaeger)</li> 13033 13034 <li>update description in xterm manpage for character class 13035 table, which said it handles only 7-bit codes.</li> 13036 13037 <li>correct a typo in ScrnDeleteChar() which made it not clear 13038 the high byte of wide-character data.</li> 13039 13040 <li>add logic to convert selection to UTF-8 form when 13041 appropriate. This makes select/paste "work", but further work 13042 is needed to make UTF-8 recognized as a locale in Xlib.</li> 13043 13044 <li>correct right-limit check when selecting double-width 13045 characters.</li> 13046 13047 <li>change default answerback response to an empty string.</li> 13048 </ul> 13049 13050 <h1><a name="xterm_100" id="xterm_100">Patch #100 - 1999/5/3 - 13051 XFree86 3.9Pl</a></h1> 13052 13053 <ul> 13054 <li>Correct a typo in the default resource value for 13055 backarrowKeyIsErase: it was always true (reported by Bram 13056 Moolenaar).</li> 13057 13058 <li>improve configure script's test if the installed xterm is 13059 setuid, in case that is a symbolic link.</li> 13060 13061 <li>correct "install-ti" rule in Makefile.in, by not setting a 13062 blank $TERMINFO value. That is interpreted as "." by ncurses' 13063 tic.</li> 13064 </ul> 13065 13066 <h1><a name="xterm_99" id="xterm_99">Patch #99 - 1999/5/2 - 13067 XFree86 3.9Pk</a></h1> 13068 13069 <ul> 13070 <li>correct logic that computes num_ptrs count of the number of 13071 indices into the screen buffer. This is the maximum of the 13072 colors and character-set indices; was incorrect in patch 13073 #97.</li> 13074 13075 <li>correct argument type for sigsetjmp, incidental change in 13076 patch #96's Unix88 PTY patch (reported by Bram Moolenaar).</li> 13077 13078 <li>correct description of secondary DA in ctlseqs.ms (reported 13079 by Bram Moolenaar).</li> 13080 13081 <li>decouple the backarrowKey and ptyInitialErase resources by 13082 adding a new resource backarrowKeyIsErase, to accommodate 13083 people using applications which have hardcoded tests for 13084 characters 8 and 127 rather than relying on the stty 13085 settings.</li> 13086 13087 <li>modify the UTF-8 decoder so that all possible illegal UTF-8 13088 sequences are properly represented by U+FFFD. This should be 13089 very helpful for developers of code that output UTF-8 strings 13090 for debugging. See the file utf-8-test.txt in 13091 http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz for a 13092 demonstration text that contains numerous illegal UTF-8 values. 13093 (patch by Markus Kuhn).</li> 13094 13095 <li>correct a place in ScrnRefresh where I was filling the high 13096 byte of a wide character with a space rather than a null 13097 (reported by Markus Kuhn).</li> 13098 </ul> 13099 13100 <h1><a name="xterm_98" id="xterm_98">Patch #98 - 1999/4/26 - 13101 XFree86 3.9Pk</a></h1> 13102 13103 <ul> 13104 <li>correct data manipulation in unparseputc(), broken for 13105 little-endian machines by patch #97's UTF-8 changes. This meant 13106 that keyboard input on SunOS did not work, though Linux i386 13107 was fine.</li> 13108 13109 <li>modify initialization for backarrowKey and logic for 13110 initial-erase to prevent the initial-erase from overriding an 13111 explicitly set backarrowKey resource (reported by Vikas 13112 Agnihotri).</li> 13113 13114 <li>add a missing null-pointer check in ScrnRefresh, for the 13115 wide-characters configuration.</li> 13116 </ul> 13117 13118 <h1><a name="xterm_97" id="xterm_97">Patch #97 - 1999/4/25 - 13119 XFree86 3.9Pk</a></h1> 13120 13121 <ul> 13122 <li>add configure script test for -lutil, needed for openpty 13123 call when configuring xterm for Glibc-2.1 and Unix98 PTY's 13124 (first reported by Martin Lorentz" 13125 <m.lorentz@w12.link-goe.de>).</li> 13126 13127 <li>completely parenthesize ifdef expressions for Glibc 13128 (suggested by Bob Maynard).</li> 13129 13130 <li>add initial-erase options (-ie, +ie) to help message 13131 (reported by Vikas Agnihotri).</li> 13132 13133 <li>remove duplicate definition of USE_USG_PTYS (reported by 13134 Jeremy Buhler).</li> 13135 13136 <li>change termcap <em>kD</em> and terminfo <em>kdch1</em> to a 13137 DEL (\177). I overlooked this when separating the styles of 13138 keyboard with the <em>sunKeyboard</em> resources in patch #94, 13139 so that it normally matches the value of the stty erase 13140 character: 13141 <ul> 13142 <li>Reported by Jae Gangemi 13143 <jgangemi@ccf.rutgers.edu>, this caused emacs to not 13144 process the DEL properly, combining it with succeeding 13145 characters.</li> 13146 13147 <li>This does not appear to be related to a problem which I 13148 have found with <em>screen</em>, which translates the stty 13149 erase into the termcap <em>kD</em> or terminfo 13150 <em>kdch1</em> value (depending on how it is linked) if the 13151 $TERMCAP variable is set when <em>screen</em> is 13152 invoked.</li> 13153 </ul> 13154 </li> 13155 13156 <li>add command-line options for enabling UTF-8 mode: -u8 and 13157 +u8. The more obvious -utf8 and +utf8 would conflict with 13158 xterm's -ut and +ut (utmp) options. The UTF-8 changes were 13159 requested by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. This 13160 patch does not complete UTF-8 implementation, but makes it 13161 usable, i.e., display and refresh work, and I am able to 13162 display the test cases which Markus provides. More work is 13163 needed to complete this feature: 13164 <ul> 13165 <li>the control sequences for switching in/out of UTF-8 13166 mode are partly implemented (don't use them). Similarly, 13167 the switching between vt100 and tek4014 emulations when 13168 UTF-8 mode is enabled will not work properly. 13169 <p>You must use the -u8 command line option to use this 13170 feature, as well as compile with the OPT_WIDE_CHARS 13171 definition.</p> 13172 </li> 13173 13174 <li>cut/paste only copies 8-bit characters.</li> 13175 13176 <li>logging is disabled in the wide-character 13177 configuration</li> 13178 13179 <li>printing only writes 8-bit characters.</li> 13180 13181 <li>input only does 8-bit characters. This is the area that 13182 I know least about.</li> 13183 </ul> 13184 </li> 13185 </ul> 13186 13187 <h1><a name="xterm_96" id="xterm_96">Patch #96 - 1999/4/19 - 13188 XFree86 3.9Pj</a></h1> 13189 13190 <ul> 13191 <li>modify Makefile.in to work with configure script's --srcdir 13192 option. (patch by Jeremy Buhler 13193 <jbuhler@cs.washington.edu>)</li> 13194 13195 <li>add checks for 'echo -n' equivalent for 8colors.sh and 13196 16colors.sh scripts (reported by Vikas Agnihotri).</li> 13197 13198 <li>improve logic that looks for bold fonts to allow for 13199 wildcards in the specification for normal fonts, and to ensure 13200 that if a bold font is specified as normal, that xterm will 13201 simulate a bold version of that using a one-pixel offset 13202 overstrike (reported by Henrik Harmsen 13203 <harmsen@erv.ericsson.se>).</li> 13204 13205 <li>correct horizontal spacing of double width line-drawing 13206 characters that xterm simulates.</li> 13207 13208 <li>improve support for Unix98 PTY's, using patch in Debian bug 13209 report #35650, by Topi Miettinen 13210 <Topi.Miettinen@medialab.sonera.fi>. Andreas Jaeger says 13211 this also corrects a permissions problem reported by 13212 cat@zip.net.au</li> 13213 13214 <li>modify initial-erase logic to ensure that 13215 <code>ttyModes</code> resource overrides it.</li> 13216 </ul> 13217 13218 <h1><a name="xterm_95" id="xterm_95">Patch #95 - 1999/4/5 - 13219 XFree86 3.9Ph</a></h1> 13220 13221 <ul> 13222 <li>modify primary DA response to allow a '1' parameter.</li> 13223 13224 <li>add printer and national replacement character sets to 13225 VT220 primary DA response.</li> 13226 13227 <li>document primary and secondary DA responses in 13228 ctlseqs.ms</li> 13229 13230 <li>use the patch number (e.g., 95) in the secondary DA 13231 response, providing user applications a means of determining 13232 the version of xterm for feature comparison (request by Bram 13233 Moolenaar).</li> 13234 13235 <li>make xterm respond to secondary DA when the decTerminalID 13236 is set for VT100.</li> 13237 13238 <li>limit user-defined keys (DECUDK) to VT220-style keyboard 13239 when sunKeyBoard resource is true.</li> 13240 13241 <li>modify ifdef's for Linux-2.2.x with Glibc-2.1 to work with 13242 Glibc-2.1 and no Unix98 PTY support (patch from Andreas Jaeger 13243 <aj@arthur.rhein-neckar.de>)</li> 13244 13245 <li>add optional feature (resource and command-line options) to 13246 make xterm use the PTY's sense of erase character on startup, 13247 rather than requiring it to be \177, or set the PTY's erase 13248 character to match xterm's configuration. Note that while 13249 $TERMCAP is modified to reflect the actual configuration, the 13250 terminfo kdch1 string is not (request by Dirk H Hohndel 13251 <hohndel@suse.de>)</li> 13252 13253 <li>improve scripts in vttests to work with newer shells that 13254 do not use 'echo -n'.</li> 13255 13256 <li>add fonts.sh example script</li> 13257 13258 <li>correct inequality in handling of "#1" font 13259 specification.</li> 13260 13261 <li>correct call to XGetWMNormalHints() used for computing 13262 maximum screen size; the size hints may not have been set.</li> 13263 13264 <li>begin implementation of support for wide-characters 13265 (configure option --enable-wide-chars defines OPT_WIDE_CHARS, 13266 invoke xterm with -wc option to activate this feature). This 13267 patch optionally widens internal data structures, invokes the 13268 16-bit text output rather than the 8-bit version and adds some 13269 tables.</li> 13270 </ul> 13271 13272 <h1><a name="xterm_94" id="xterm_94">Patch #94 - 1999/3/27 - 13273 XFree86 3.9Pf</a></h1> 13274 13275 <ul> 13276 <li>further fixes for terminfo: ka1, ka3, etc., differ between 13277 the default xterm-xfree86 and xterm-vt220 entries.</li> 13278 13279 <li>change default (with sunKeyboard resource false) behavior 13280 of the editing keypad "Delete" to send a 127, like xterm-r6. 13281 The VT220-style <code><ESC>[3~</code> is sent when 13282 sunKeyboard is true (reported by Tomas Vanhala).</li> 13283 13284 <li>add parameters to function keys to indicate if shift, 13285 control or alt are set. The codes are based on a description of 13286 a DEC VT510 with a PC keyboard, from Jeffrey Altman 13287 <jaltman@watsun.cc.columbia.edu>.</li> 13288 13289 <li>add control sequence 1035, set-num-lock action and num-lock 13290 menu entry to control the use of the NumLock and Alt keys for 13291 the Sun/PC and VT220 keyboard extensions.</li> 13292 13293 <li>implement DECSET/DECRST numeric keypad (DECNKM) mode.</li> 13294 13295 <li>modify terminfo and termcap to use recommended "X Window" 13296 or "X11" names rather than "X Windows" (reported by Tomas 13297 Vanhala).</li> 13298 13299 <li>suppress translation of shifted keypad "+" when sunKeyboard 13300 is true.</li> 13301 13302 <li>workaround unexpected behavior (perhaps bug) in 13303 XmbLookupString, which returns trash in the string buffer for 13304 numlock and control-key combined with keypad-keys.</li> 13305 13306 <li>modify ScrollBarReverseVideo() to keep scrollbar border 13307 visible when reverse video is toggled.</li> 13308 13309 <li>correct missing case for parameter 17 (set highlight color) 13310 in dynamic colors control sequences.</li> 13311 13312 <li>extend dynamic colors control sequences to allow users to 13313 determine the colors and font which are currently active.</li> 13314 13315 <li>minor tweak to OSC responses, to use BEL if the application 13316 used that to end the request, rather than ST. This works better 13317 with shell scripts, which may not handle an 13318 <code><ESC>backslash</code> very well.</li> 13319 13320 <li>separate menu settings for reverse video from that done 13321 under program control.</li> 13322 13323 <li>corrected ifdef's for menus, which did not allow tek4014 to 13324 be suppressed properly (reported by Clint Olsen).</li> 13325 13326 <li>changes for Linux-2.2.x with GLibc-2.1 and /dev/ptmx 13327 support (integrated patch from Pavel Roskin): 13328 <ul> 13329 <li>main.c and resize.c were using different rules to 13330 determine whether ATT should be defined (actually 13331 USE_USG_PTYS is more apt).</li> 13332 13333 <li>copy definitions from main.c to resize.c to prevent 13334 sys/stream.h and sys/ptem.h from inclusion when SYSV is not 13335 defined</li> 13336 13337 <li>define CNUL if not already defined like other 13338 variables.</li> 13339 13340 <li>/dev/tty does exist in Linux, but it doesn't mean, it 13341 should be used. Therefore EACCES is now an acceptable 13342 result.</li> 13343 13344 <li>ifdef'd several calls such as <code>ioctl (ptyfd, 13345 I_PUSH, "ptem")</code> to build on Linux (I_PUSH is not 13346 defined when sys/stropts.h is not included).</li> 13347 </ul> 13348 </li> 13349 13350 <li>initialize second "ltc" variable in main.c (reported by 13351 David Dawes).</li> 13352 13353 <li>provide definition for USE_USG_PTYS in screen.c</li> 13354 13355 <li>add resource-files to install rule in standalone 13356 Makefile.in</li> 13357 13358 <li>add sample scripts to illustrate titlebar controls, 13359 resizing and colors.</li> 13360 </ul> 13361 13362 <h1><a name="xterm_93" id="xterm_93">Patch #93 - 1999/3/14 - 13363 XFree86 3.9Pd</a></h1> 13364 13365 <p>Here are several fixes and minor enhancements. The chief ones 13366 are the fixes for NumLock mode and reverse video, since we had 13367 become used to working around the problems.</p> 13368 13369 <ul> 13370 <li>remove kfnd/kll/kslt strings from terminfo, because curses 13371 applications do not necessarily return khome/kend pairs 13372 (reported by Vikas Agnihotri).</li> 13373 13374 <li>implement NumLock resource which overrides the keyboard 13375 tables for the special case of keypad keys. This is a problem 13376 introduced in xterm by X11R6 changes, i.e., an ambiguity which 13377 in effect discarded vt100 keypad support.</li> 13378 13379 <li>modify Sun/PC keyboard mode to extend this (emulation of 13380 DEC vt100 keypad) to the remainder of the numeric keypad. Now, 13381 the default operating mode of xterm uses the keyboard tables 13382 as-is (except if the NumLock mode overrides), but provides good 13383 vt100 keypad compatibility if the Sun/PC keyboard menu item is 13384 checked.</li> 13385 13386 <li>separate command-line settings for reverse video from that 13387 done under program control. This is a problem which was 13388 introduced by X11R6. Though <em>correct</em>, most users are 13389 confused by allowing the reset command to undo the effect of 13390 the command-line <kbd>-rv</kbd> option.</li> 13391 13392 <li>add description of function keys, keypad and cursor keys to 13393 ctlseqs.ms</li> 13394 13395 <li>add terminfo entries for xterm-vt52, xterm-sun and 13396 xterm-hp</li> 13397 13398 <li>correct typo (missing case value) for DECSET 35, 13399 enable/disable shifted keypad action and a few compiler 13400 warnings (reported by Zdenek Sekera <zs@sgi.com>).</li> 13401 13402 <li>correct reporting of color values 8-15 in DECRQSS (reported 13403 by Vikas Agnihotri).</li> 13404 13405 <li>modify parsing of ttyModes resource to recognize "^-" as 13406 "undef" (requested by Tomas Vanhala).</li> 13407 13408 <li>integrate/extend changes to add iconify/maximize actions 13409 (from Edward S. Arthur <eda@ultranet.com>).</li> 13410 13411 <li>add control sequences for maximizing/restoring window, and 13412 for reporting maximum screen size.</li> 13413 13414 <li>add 'interpret' action, to support local function-key 13415 interpretation. Used properly, this makes most of the 13416 specialized actions of xterm redundant.</li> 13417 13418 <li>add control sequence private modes 1051, 1052 and 1052, for 13419 setting the Sun and HP function key modes, and for setting the 13420 Sun/PC keyboard mode.</li> 13421 13422 <li>add configure option --disable-maximize</li> 13423 13424 <li>add configure option --disable-num-lcok</li> 13425 13426 <li>extend descriptions of configure script options in 13427 INSTALL.</li> 13428 </ul> 13429 13430 <h1><a name="xterm_92" id="xterm_92">Patch #92 - 1999/2/5 - 13431 XFree86 3.9Nz</a></h1> 13432 13433 <ul> 13434 <li>increase buffer size for tgetent (i.e., termcap) to 1500. 13435 This fixes a problem where <em>screen</em> is built using 13436 ncurses or GNU termcap and <em>xterm</em> is built using the 13437 standard termcap interface. The former does not limit the 13438 termcap size, while the latter is assumed to be no longer than 13439 1023 characters. The <em>screen</em> program's termcap entry is 13440 about 1200 characters long.</li> 13441 13442 <li>change update_menu_item() to a function, to simplify 13443 debugging. This also reduces the executable by 4Kb.</li> 13444 13445 <li>add control sequences for DECSET 30, 1010, 1011 like rxvt 13446 (enable or disable some features that were only settable via 13447 resources or command line arguments).</li> 13448 13449 <li>add control sequence for DECSET 35, which enables/disables 13450 the shifted keypad functions.</li> 13451 13452 <li>add support for switching font sizes, by stepping through 13453 the font menu using shifted keypad plus and minus.</li> 13454 13455 <li>correct missing initialization of tekInhibit and tekSmall 13456 resources.</li> 13457 13458 <li>correct ifdef's in charproc.c for XtNgeometry and 13459 XtCGeometry (reported by Bram Moolenaar).</li> 13460 </ul> 13461 13462 <h1><a name="xterm_91" id="xterm_91">Patch #91 - 1999/1/21 - 13463 XFree86 3.9Nw</a></h1> 13464 13465 <ul> 13466 <li>Implement logic to translate input characters which are 13467 mapped when in vt220 National Replacement Character mode 13468 (requested by Tomas Vanhala).</li> 13469 13470 <li>Resync configure scripts with my patches to autoconf 13471 2.13</li> 13472 13473 <li>Change order of -lXmu and -lXext to accommodate cygwin32 13474 (reported by Vikas Agnihotri).</li> 13475 13476 <li>Add "-ti" option to set terminal emulation level from 13477 command line rather than via resource.</li> 13478 13479 <li>Simplify some of the preprocessor logic using #elif.</li> 13480 </ul> 13481 13482 <h1><a name="xterm_90" id="xterm_90">Patch #90 - 1998/12/13 - 13483 XFree86 3.9Nq</a></h1> 13484 13485 <p>This implements several small fixes and enhancements. The 13486 chief one implements fallback support for line drawing characters 13487 with fonts that do not include those characters. But I 13488 implemented that last.</p> 13489 13490 <ul> 13491 <li>If any of the glyphs in positions 0-31 (used by xterm to 13492 implement the VT100 alternate character set) are zero-sized 13493 (i.e., missing), xterm will reserve a normal space for the 13494 glyph when drawing. I implemented a simple stroke-drawing 13495 function to draw the line-drawing characters and a couple of 13496 the other (simpler) characters such as diamond. (This was 13497 suggested by Vikas Agnihotri).</li> 13498 13499 <li>Modify the computation of doublesize characters to work 13500 around font servers which shift the scaled characters up/down 13501 or do not give the correct width.</li> 13502 13503 <li>Add popup menu item and corresponding resource settings to 13504 disable the font-scaling logic for doublesize characters to 13505 work around (older) font servers which simply do not draw the 13506 fonts scaled to the size that they said they would. I see this 13507 problem on a SunOS system running X11R5; the X11R6 servers seem 13508 well behaved.</li> 13509 13510 <li>Implement new escape sequence, private mode 1049, which 13511 combines the switch to/from alternate screen mode with screen 13512 clearing and cursor save/restore. Unlike the existing escape 13513 sequence, this clears the alternate screen when switching to it 13514 rather than when switching to the normal screen, thus retaining 13515 the alternate screen contents for select/paste operations. 13516 <p>When I implemented the popup menu entry to toggle between 13517 the normal and alternate screens, I considered only pasting 13518 from the normal screen to the alternate; this improvement 13519 allows either direction.</p> 13520 </li> 13521 13522 <li>Changed the termcap and terminfo for xterm-xfree86 and 13523 xterm-8bit to use the new 1049 private mode.</li> 13524 13525 <li>Modify the logic which switches between normal and 13526 alternate screens so that the save/restore cursor operations 13527 apply only to the current screen. That means that applications 13528 which use the terminfo smcur/rmcur or termcap ti/te 13529 capabilities will restore the cursor to the original position 13530 on the normal screen rather than to the most recent place where 13531 a save-cursor operation was performed. 13532 <p>I note that a real VT100 terminal would not behave in this 13533 way, but it is a moot point since the VT100 does not 13534 implement alternate screen, and therefore the save/restore 13535 cursor sequence would not be used in this context. I reviewed 13536 the logic which switches between normal and alternate screens 13537 based on some recent newsgroup postings as well as a proposed 13538 patch in the Debian group which attempts to do this (the 13539 patch has a bug, however, so I did not use it).</p> 13540 </li> 13541 13542 <li>Add popup menu entry for toggling the titeInhibit 13543 resource.</li> 13544 13545 <li>Add new resource answerbackString, which overrides the 13546 default "xterm" returned by xterm when responding to an ENQ 13547 (control/E) character (request by Rajesh Vaidheeswarran 13548 <rv@fore.com>).</li> 13549 13550 <li>Add new resource keyboardDialect for setting the NRC 13551 display character set (request by Tomas Vanhala, who notes that 13552 I should add logic to translate the keyboard as well).</li> 13553 13554 <li>Add new command-line option and corresponding resources for 13555 making xterm generate escape sequences compatible with HP 13556 terminals. Like the existing Sun escape sequences, this is 13557 available as a popup menu item. It is enabled by the configure 13558 script with the option --enable-hp-fkeys (requested by Toni 13559 Mueller <sales@oeko.net>).</li> 13560 13561 <li>Add configure script option --disable-boxchars to disable 13562 the fallback support for line drawing characters.</li> 13563 13564 <li>Fix ifdef's for configure script --disable-ansi-color, and 13565 reviewed all configure options to ensure that all can be 13566 enabled/disabled appropriately.</li> 13567 13568 <li>Update config.guess and config.sub, from Lynx.</li> 13569 </ul> 13570 13571 <h1><a name="xterm_89" id="xterm_89">Patch #89 - 1998/11/20 - 13572 XFree86 3.9Nm</a></h1> 13573 13574 <p>This patch completes the implementation of double-sized 13575 character support for the VT100 emulation, and fixes a few minor 13576 bugs:</p> 13577 13578 <ul> 13579 <li>corrected the cursor position in HideCursor, which did not 13580 multiply the column by two when in doublesize mode. This bug, 13581 which did not appear in normal use, dates back to my original 13582 <a href="#xterm_44">changes</a> to partly implement 13583 double-sized characters. I noticed it when cat'ing a typescript 13584 from vttest's double-sized character test.</li> 13585 13586 <li>ensure that the current line is repainted when switching 13587 between single and double width characters.</li> 13588 13589 <li>reduce the number of bits used for double-sized character 13590 coding from 3 to 2, to make more room for soft-font codes.</li> 13591 13592 <li>copy newer ifdef's from the XFree86 3.3.3 release's main.c, 13593 which address details of glibc and powerpc.</li> 13594 13595 <li>moved definition of DECL_ERRNO in xterm.h to match XFree86 13596 3.3.3</li> 13597 13598 <li>modify <em>resize</em> to remove the ifdef on SVr4 that 13599 suppressed printing the script for $LINES and $COLUMNS. 13600 Solaris' resize utility does this; suppressing the behavior is 13601 unnecessary.</li> 13602 </ul> 13603 13604 <p>I tested the double-sized characters using vttest and the 13605 xfsft patch. These fonts worked reasonably well:</p> 13606 13607 <pre> 13608 -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1 13609 9x15 13610</pre> 13611 <p>The iso8859 font does not include box characters, of course, 13612 but looks good.</p> 13613 13614 <h1><a name="xterm_88" id="xterm_88">Patch #88 - 1998/10/31 - 13615 XFree86 3.9Nk and 3.3.2h</a></h1> 13616 13617 <p>This refines my #85 patch by checking for a case where the 13618 font server returns a bold font that does not quite correspond to 13619 the normal font. When I asked for a bold version of the 6x12 13620 font, the font server returned a near equivalent where the ascent 13621 and descent values did not match, causing xterm to leave lines 13622 across the display. This patch makes xterm reject that type of 13623 mismatch, falling back to the old font behavior.</p> 13624 13625 <h1><a name="xterm_87" id="xterm_87">Patch #87 - 1998/10/21 - 13626 XFree86 3.9Nj and 3.3.2f</a></h1> 13627 13628 <p>This corrects a problem reported by Stefan Dalibor. My table 13629 entries for the <em>printerExtent</em> and 13630 <em>printerFormFeed</em> resources used the wrong types for 13631 sizeof, causing the printer to not work properly on some 13632 platforms because the <em>printAttributes</em> resource was 13633 overwritten (e.g., Digital Unix with DEC Alpha).</p> 13634 13635 <p>I reviewed all of the resource table entries and fixed a 13636 potential problem with <em>resizeGravity</em>, which was typed as 13637 <em>int</em> rather than <em>XtGravity</em>.</p> 13638 13639 <h1><a name="xterm_86" id="xterm_86">Patch #86 - 1998/10/14 - 13640 XFree86 3.9Nj and 3.3.2e</a></h1> 13641 13642 <p>A small fix: when switching to/from the continuous mouse 13643 reporting mode, the event mask was incorrect if xterm was built 13644 under X11R5 because the original data was saved under an ifdef 13645 for active-icon.</p> 13646 13647 <h1><a name="xterm_85" id="xterm_85">Patch #85 - 1998/10/12 - 13648 XFree86 3.9Nj and 3.3.2e</a></h1> 13649 13650 <p>Some cleanup (I noticed the pixel droppings a few months ago 13651 after getting a new 17" monitor):</p> 13652 13653 <ul> 13654 <li>split-out the functions that load/reload fonts for xterm as 13655 new file fontutils.c to extend them to support automatic 13656 loading of bold font corresponding to the normal font. Adapted 13657 logic from EMU 1.3 for this purpose. This fixes most 13658 occurrences of pixel droppings from bold characters.</li> 13659 13660 <li>modified by renaming variables and adding casts to permit 13661 compile with g++.</li> 13662 13663 <li>modify headers so they can all be compiled without order 13664 dependencies, and use bracketed rather than quoting includes to 13665 allow compile from separate directory.</li> 13666 13667 <li>renamed xtermm terminfo entry to xterm-mono, to avoid 13668 conflict with Solaris entry now in ncurses.</li> 13669 </ul> 13670 13671 <h1><a name="xterm_84" id="xterm_84">Patch #84 - 1998/10/9 - 13672 XFree86 3.9Ni and 3.3.2e</a></h1> 13673 13674 <p>Several small fixes and enhancements, including a patch from 13675 Bjorn Helgaas:</p> 13676 13677 <ul> 13678 <li>correct initialization of TERMCAP environment variable, 13679 which was frequently set to garbage on non-Linux systems 13680 because "termcap" and "newtc" contained random data from the 13681 stack.</li> 13682 13683 <li>remove the LINEWRAPPED attribute from lines as they are 13684 cleared. Previously, the attribute was set but never 13685 cleared.</li> 13686 13687 <li>make word and line selections work even when lines are 13688 wrapped by xterm. Previously, selections were limited to one 13689 screen line.</li> 13690 </ul> 13691 13692 <p>as well as</p> 13693 13694 <ul> 13695 <li>modify logic for line-wrapping to reset the associated flag 13696 if the application deletes a character. This fixes a problem 13697 reported by Bjorn Helgaas where word/line selection would still 13698 wrap even after deleting characters from the first line.</li> 13699 13700 <li>add kll/kH capabilities to xterm-xfree86 entries in termcap 13701 and terminfo (request by Michael Schroeder).</li> 13702 13703 <li>shorten descriptions in termcap to make resolved entries 13704 all shorter than 1023 character limit.</li> 13705 13706 <li>use DECSTR control sequence to shorten initialization and 13707 reset strings in xterm-xfree86 termcap and terminfo.</li> 13708 13709 <li>use rmul/smul and rmir/smir in xterm-r5 terminfo to match 13710 termcap.</li> 13711 13712 <li>correct typos in initialization and reset strings in 13713 xterm-r5 termcap and terminfo.</li> 13714 13715 <li>disable special translations of key symbols (the backarrow 13716 key, the editing keypad and the keypad "+") when a modifier 13717 other than shift, control or numlock is used. This makes xterm 13718 handle the meta key as expected by people using emacs (reported 13719 by Pete Harlan <harlan@pointofchoice.com> in 13720 linux.debian.user newsgroup).</li> 13721 </ul> 13722 13723 <h1><a name="sync_83" id="sync_83">Resync #83 - 1998/10/7 - 13724 XFree86 3.3.2e</a></h1> 13725 13726 <p>Merge changes through patch #83 with the 3.3.2e version.</p> 13727 13728 <p>This follows a change from XFree86 CVS which adds checks for 13729 non-null return from malloc (patch by Matthieu Herrb).</p> 13730 13731 <h1><a name="xterm_83" id="xterm_83">Patch #83 - 1998/8/25 - 13732 XFree86 3.9Nb</a></h1> 13733 13734 <p>Several small fixes and enhancements:</p> 13735 13736 <ul> 13737 <li>add configure test to infer if xterm should be installed 13738 setuid based on previously installed xterm (reported by Stephen 13739 Marley and Stefan Dalibor).</li> 13740 13741 <li>implement quasi-continuous mouse reporting (integrated 13742 patch by Jason Bacon).</li> 13743 13744 <li>correct control sequences transmitted by function keys F1 13745 to F4 when sunFunctionKeys resource is true (it was still using 13746 the VT100 control sequences).</li> 13747 13748 <li>modify handling of backarrow key so that the control 13749 modifier toggles the backspace/delete interpretation set by the 13750 backarrowKey resource.</li> 13751 13752 <li>limit the row and column values used to report mouse 13753 position.</li> 13754 </ul> 13755 13756 <p>From resync with XFree86 3.9Nb:</p> 13757 13758 <ul> 13759 <li>add support for the VSTATUS control character (patch by 13760 Robert Earl <rearl@teleport.com>).</li> 13761 </ul> 13762 13763 <h1><a name="xterm_82" id="xterm_82">Patch #82 - 1998/7/15 - 13764 XFree86 3.9Aj</a></h1> 13765 13766 <p>Bug fix for patch #81:</p> 13767 13768 <ul> 13769 <li>remove an #undef for NBBY, which caused compile problem on 13770 FreeBSD (reported by David Dawes).</li> 13771 </ul> 13772 13773 <h1><a name="xterm_81" id="xterm_81">Patch #81 - 1998/7/14 - 13774 XFree86 3.9Aj</a></h1> 13775 13776 <p>More bug fixes:</p> 13777 13778 <ul> 13779 <li>fix conflicting ifdef's for TIOCSLTC when building with 13780 Linux on AXP aka DEC Alpha (reported by Robin Cutshaw).</li> 13781 13782 <li>correction to patch #79, move assignment for 13783 *utptr->ut_user = 0; back into non-SVR4 ifdef in main.c, 13784 since this clobbers username on Solaris 2.5.1 (analysis by Will 13785 Day <willday@rom.oit.gatech.edu>).</li> 13786 13787 <li>corrected khome/kend in xterm-8bit terminfo 13788 description.</li> 13789 13790 <li>improve cursor color by making it always the reverse of 13791 fg/bg unless the cursorColor resource is set, i.e., to 13792 something other than the default foreground (reported by Vikas 13793 Agnihotri and Bram Moolenaar).</li> 13794 13795 <li>minor fixes for compiler warnings, including a syntax error 13796 in the AMOEBA ifdef's.</li> 13797 </ul> 13798 13799 <p>From resync with XFree86 3.9Aj:</p> 13800 13801 <ul> 13802 <li>correction to patch #73, supply missing #else for fallback 13803 definitions of size_t, time_t (Robin Cutshaw 13804 <robin@intercore.com>).</li> 13805 </ul> 13806 13807 <h1><a name="xterm_80" id="xterm_80">Patch #80 - 1998/6/29 - 13808 XFree86 3.9Ai</a></h1> 13809 13810 <p>This fixes a couple of items leftover or introduced by patch 13811 79:</p> 13812 13813 <ul> 13814 <li>take out the logic that suppresses editing-keypad in vt100 13815 mode (those keys are too valuable to give up for a fine point 13816 of emulation).</li> 13817 13818 <li>corrected a couple of places in terminfo where I missed 13819 using the vt220-style editing-keypad codes for Find/Select 13820 (mapped to Home/End).</li> 13821 13822 <li>checked termcap file against terminfo, fix several places 13823 where it was inconsistent.</li> 13824 </ul> 13825 13826 <h1><a name="xterm_79" id="xterm_79">Patch #79 - 1998/6/28 - 13827 XFree86 3.9Ai</a></h1> 13828 13829 <p>This patch fixes several small bugs:</p> 13830 13831 <ul> 13832 <li>use X_EXTRA_LIBS in standalone Makefile.in (patch by Tomas 13833 Vanhala).</li> 13834 13835 <li>add new resource 'oldXtermFKeys' which provides backward 13836 compatibility for F1-F4 control sequences with TOG's 13837 xterm.</li> 13838 13839 <li>determine the server's default foreground/background Pixel 13840 values, needed if the -flipPixels X server option is used 13841 (reported by David Dawes).</li> 13842 13843 <li>correct logic for F1-F4 function keys so that they generate 13844 VT100 compatible escape sequences in VT220 mode, since that is 13845 what the numeric keypad is supposed to do (reported by Ron 13846 Johnson, Jr. <ronjohn@communique.net>).</li> 13847 13848 <li>modify logic for editing keypad to work more like VT220: 13849 don't pass those codes in VT100-mode unless oldXtermFKeys mode 13850 is set.</li> 13851 13852 <li>correct an interaction with the editing-keypad logic that 13853 prevented backarrow key from sending a 127 for the delete key 13854 (the 'remove' escape sequence was being sent instead).</li> 13855 13856 <li>use return-value from getuid() rather than the parameter, 13857 to work on systems which do not update the latter (patch by 13858 Kevin Buhr <buhr@mozart.stat.wisc.edu>)</li> 13859 13860 <li>correct scrollbar border color when toggling to/from secure 13861 keyboard mode (patch by Jeff Uphoff 13862 <juphoff@tarsier.cv.nrao.edu>)</li> 13863 13864 <li>modifications to terminfo file: 13865 <ul> 13866 <li>rename description to xterm-xfree86, adding an entry 13867 'xterm' which is derived from xterm-xfree86 to simplify 13868 customization.</li> 13869 13870 <li>change string for kdch1 from \177 to \E[3~, to address 13871 complaints from Debian developers. (This applies to the key 13872 labeled "Delete", and does not affect the backarrow 13873 key).</li> 13874 13875 <li>add user-strings u6, u7, u8, u9 to entries to make them 13876 work with Daniel Weaver's "tack" program.</li> 13877 13878 <li>modify xterm-24, xterm-bold, xterm-boldso entries to 13879 disentangle them from explicit dependency upon 13880 xterm-xfree86.</li> 13881 13882 <li>add generic 'xterm-color' entry.</li> 13883 13884 <li>minor corrections to xterm-xfree86, xterm-8bit, 13885 xterm-r5 and xterm-r6 entries.</li> 13886 </ul> 13887 </li> 13888 </ul> 13889 13890 <h1><a name="xterm_78" id="xterm_78">Patch #78 - 1998/6/3 - 13891 XFree86 3.9Ah and 3.3.2</a></h1> 13892 13893 <p>Again, most of the bulk of this patch is for ANSI conversion. 13894 I used the IRIX compiler's -wlint option to find the remaining 13895 functions that use K&R syntax (since gcc does not do this 13896 properly). Also, I changed the logic in the print code slightly 13897 to close unwanted files before opening a pipe to the printer. 13898 This may help in some configurations where the line printer hangs 13899 until xterm closes the pipe.</p> 13900 13901 <h1><a name="xterm_77" id="xterm_77">Patch #77 - 1998/5/26 - 13902 XFree86 3.9Ah and 3.3.2</a></h1> 13903 13904 <p>Most of the bulk of this patch is to convert the extended C 13905 (K&R functions with prototypes) to ANSI. I verified that on 13906 Linux by comparing object files, to ensure that I did not, for 13907 example, interchange parameters in the function declarations.</p> 13908 13909 <p>The rest of the patch fixes several minor bugs, and adds a few 13910 features:</p> 13911 13912 <ul> 13913 <li>back-out my use of ncurses "captoinfo -f" option 13914 (if/then/else/endif) formatting, since ncurses did not 13915 correctly filter embedded newlines in terminfo capability 13916 strings until _after_ ncurses 4.1, thus corrupting 13917 setf/setb/sgr strings (reported by Darren Hiebert and 13918 others).</li> 13919 13920 <li>document SGR 8, 28 (invisible/visible), add corresponding 13921 capabilities to terminfo description. 13922 <p>I would also add the 'prot protected capability, but the 13923 control sequences for that would not be recognized or 13924 properly ignored by the older xterm programs.</p> 13925 </li> 13926 13927 <li>modify ChangeGroup to not suppress a null-resource, but 13928 treat it as an empty string (recommended by Stefan 13929 Dalibor).</li> 13930 13931 <li>add printerAutoClose resource to control whether printer is 13932 closed when going offline. More than one person reports 13933 problems (on Solaris 2.6 and Digital Unix 4.0) getting the 13934 printer to proceed unless xterm exits; I think that it is a 13935 problem flushing the pipe. Closing it ought to flush it.</li> 13936 13937 <li>adapt TOG fix-3 to in HandleKeymapChange and VTInitI18N 13938 (but adapt XtStackAlloc/XtStackFree for clarity, as well as 13939 fixing memory leak).</li> 13940 13941 <li>change calls on FillCurBackground to ClearCurBackground, in 13942 effect using XClearArea rather than XFillRectangle when 13943 clearing as a side-effect of scrolling and insertion (patch by 13944 Alexander V Lukyanov)</li> 13945 13946 <li>correct some places where insert/delete did not _move_ the 13947 color attributes, using memmove (patch by Alexander V Lukyanov 13948 <lav@long.yar.ru>)</li> 13949 13950 <li>add ifdef's for __CYGWIN32__, for port to cygnus version 13951 B19.1 (patch by Andrew Sumner 13952 <andrew_sumner@hotmail.com>).</li> 13953 13954 <li>remove #define for hpux that turned on USE_SYSV_ENVVARS, 13955 since this causes some applications (such as 'less') to get 13956 incorrect $LINES and $COLUMNS values (reported by Clint 13957 Olsen).</li> 13958 13959 <li>modify behavior for HP-UX, to set the "reserved" process 13960 group controls to _POSIX_VDISABLE so the TIOCSLTC ioctl does 13961 not produce an error (patch by Ben Yoshino 13962 <ben@wiliki.eng.hawaii.edu>).</li> 13963 13964 <li>correct length of underlining, reducing it by one pixel to 13965 avoid leaving a dot when the application does not clear the 13966 whole screen I noticed this only recently myself (and other 13967 people as well); it depends on the font chosen. A 6x10 font 13968 shows it, but the other fonts from XTerm.ad do not. I also see 13969 a similar problem with the emulation of bold fonts. (patch by 13970 Sergei Laskavy <Laskavy@cs.msu.su>).</li> 13971 13972 <li>add include for Xos.h to xterm.h, to ensure proper 13973 definitions (reported by Holger Veit).</li> 13974 13975 <li>update config.guess to recognize Unixware 2.1 and 7 (patch 13976 by Mike Hopkirk <hops@sco.com>).</li> 13977 </ul> 13978 13979 <h1><a name="xterm_76" id="xterm_76">Patch #76 - 1998/5/8 - 13980 XFree86 3.9Ah and 3.3.2</a></h1> 13981 13982 <p>A fix for the print-window function, and some minor 13983 cleanup:</p> 13984 13985 <ul> 13986 <li>modify logic that closes pipe in the print-window function 13987 to not use pclose, which does not work on all systems, since I 13988 did not open the pipe with popen (reported by Stefan 13989 Dalibor).</li> 13990 13991 <li>correct name of $(EXTRA_LOAD_FLAGS) imake variable 13992 (reported by Stefan Dalibor).</li> 13993 13994 <li>guard logic in ChangeGroup() function against null pointer 13995 (reported by Stefan Dalibor).</li> 13996 13997 <li>ensure that menu entry for toggling sunKeyboard resource is 13998 initialized (reported by Branden Robinson 13999 <branden@purdue.edu>).</li> 14000 14001 <li>gcc unused-variable warnings (reported by Bernd Ernesti 14002 <bernd@arresum.inka.de>)</li> 14003 14004 <li>rename global variable 'buffer' to 'VTbuffer'</li> 14005 </ul> 14006 14007 <h1><a name="xterm_75" id="xterm_75">Patch #75 - 1998/5/7 - 14008 XFree86 3.9Ah and 3.3.2</a></h1> 14009 14010 <p>This incorporates fixes from several people, as well as some 14011 improvements that I made based on feedback from users:</p> 14012 14013 <ul> 14014 <li>add option to standalone configure script, 14015 "--with-own-terminfo-dir", which causes xterm to pass a 14016 predefined value of $TERMINFO to the application. Also use this 14017 value in install rule "make install-ti", for the standalone 14018 configure script. (patch & feedback from Tor Lillqvist 14019 <tml@hemuli.tte.vtt.fi>)</li> 14020 14021 <li>change ifdef's for "hpux" to "__hpux" (patch by Tor 14022 Lillqvist). The imake configuration uses the former, but the 14023 latter is predefined by HP's compilers.</li> 14024 14025 <li>define USE_SYSV_ENVVARS for HP-UX, curses does not use 14026 $TERMCAP (patch by Tor Lillqvist).</li> 14027 14028 <li>on HP-UX, use the /dev/ptym/clone device to allocate PTY's. 14029 Works both on HP-UX 9 and 10. (patch by Tor Lillqvist).</li> 14030 14031 <li>modify configure script to obtain the $(EXTRA_LOADFLAGS) 14032 value from imake, needed for compiling under DEC OSF/1 14033 (reported by Stefan Dalibor)</li> 14034 14035 <li>modify print-window action so that the printer is closed 14036 after printing a window, unless the printer was already opened 14037 (i.e., by an application running in the window). This makes the 14038 printing complete without having to exit xterm, since not all 14039 systems treat fflush through a pipe very well (reported by 14040 Stefan Dalibor)</li> 14041 14042 <li>modify printing code so that the ^M's are not printed if 14043 the printAttribute resource is set to zero (request by Stefan 14044 Dalibor).</li> 14045 14046 <li>correct typo in xterm.man, for the default value of 14047 printAttribute (reported by Stefan Dalibor).</li> 14048 14049 <li>correct printing code so that the alternate character set 14050 is printed, like other attributes, with escape sequences.</li> 14051 14052 <li>correct termcap description, removing spurious 'm' 14053 character from the 'op' capability (reported by Greg Woods 14054 <woods@weird.com>).</li> 14055 14056 <li>correct trace code so that the initial timestamp is 14057 set.</li> 14058 14059 <li>correct/modify utmp data for the Linux glibc 2 14060 configuration, so that the ut_line member is set before using 14061 it to update wtmp (patch by Bill Nottingham 14062 <wen1@cec.wustl.edu>).</li> 14063 </ul> 14064 14065 <h1><a name="xterm_74" id="xterm_74">Patch #74 - 1998/4/27 - 14066 XFree86 3.9Ag and 3.3.2</a></h1> 14067 14068 <p>This corrects a couple of recent bugs and adds a new 14069 resource:</p> 14070 14071 <ul> 14072 <li>modify definition of TRACE_CHILD so that it does not 14073 conflict with ifdef's for USE_USG_PTYS in main.c (reported by 14074 Vikas Agnihotri <VikasA@att.com> and Stefan 14075 Dalibor).</li> 14076 14077 <li>correct ownership of file (actually pipe) written by the 14078 print controls. When undoing the setuid changes in patch #69, I 14079 overlooked this. Now xterm forks a process which resets setuid 14080 and routes the printer data as the real user.</li> 14081 14082 <li>add a new resource, "printAttributes", which controls 14083 whether color attributes (or any attributes) are sent to the 14084 printer.</li> 14085 </ul> 14086 14087 <h1><a name="xterm_73" id="xterm_73">Patch #73 - 1998/4/25 - 14088 XFree86 3.9Ag and 3.3.2</a></h1> 14089 14090 <p>This patch does the following:</p> 14091 14092 <ul> 14093 <li>implements a print-window facility for xterm. Though useful 14094 in itself, I added it as part of some debugging which I am 14095 doing. (Occasionally during an exposure event xterm fails to 14096 restore the proper colors for highlighted text, and printing 14097 the screen will show the internal states nicely). 14098 <p>The print facility now also displays the color 14099 information. (I will probably make this a resource).</p> 14100 </li> 14101 14102 <li>modified the xterm-16color terminfo description to use the 14103 setaf and setab strings, which is a little more efficient 14104 (requested by Stephen Marley).</li> 14105 14106 <li>reduced some clutter of the ifdef/includes (e.g., stdlib.h, 14107 unistd.h, errno) making the configure script test for these. 14108 <p>I removed the symbols Size_t and Time_t, since they no 14109 longer serve a useful purpose.</p> 14110 </li> 14111 14112 <li>added some debugging traces to show the initial screen 14113 size, and the success/failure of the ioctl calls pass handle 14114 window resizing events to the application (for Clint Olsen). 14115 <p>I also modified the trace code to produce two files since 14116 some of the information is produced by the child process. So 14117 now they are Trace-parent.out and Trace-child.out</p> 14118 </li> 14119 14120 <li>updated configure test for ANSI compiler options to handle 14121 a special case for HP-UX 10.x (reported by Clint Olsen).</li> 14122 </ul> 14123 14124 <h1><a name="xterm_72" id="xterm_72">Patch #72 - 1998/4/17 - 14125 XFree86 3.9Ag and 3.3.2</a></h1> 14126 14127 <p>This is a patch from Chris Siebenmann 14128 <cks@hawkwind.utcs.toronto.edu>, which I have cleaned up a 14129 little, and integrated into the configure script.</p> 14130 14131 <p>From his description:</p> 14132 14133 <blockquote> 14134 <p>This set of patches is the latest incarnation of patches 14135 originally written by Ian! D Allen, then of the University of 14136 Waterloo and now of who knows where; I have been carrying them 14137 forward from xterm to xterm ever since about X11R4. What they 14138 do is add an option so that when an iconified xterm receives 14139 output it prepends '*** ' to its icon title and (optionally) 14140 beeps the bell; deiconifying the xterm removes the '*** '. Over 14141 the years I've found this to be incredibly convenient for 14142 monitoring all sorts of low-activity things.</p> 14143 </blockquote> 14144 14145 <h1><a name="xterm_71" id="xterm_71">Patch #71 - 1998/4/12 - 14146 XFree86 3.9Ag and 3.3.2</a></h1> 14147 14148 <p>This patch is a slightly modified version of one by Richard 14149 Braakman, which prevents buffer overflow in the input-method and 14150 preedit-type parsing in xterm. I changed a couple of details to 14151 make the code more maintainable, and looked for similar things - 14152 copying into a fixed-size buffer (found none, though I did spot 14153 an unused variable).</p> 14154 14155 <h1><a name="xterm_70" id="xterm_70">Patch #70 - 1998/3/29 - 14156 XFree86 3.9Af and 3.3.2</a></h1> 14157 14158 <p>This patch corrects some minor bugs in xterm, and fills in 14159 some more details in the VT220 emulation:</p> 14160 14161 <ul> 14162 <li>modify Imakefile to use SpecialCObjectRule for menu and 14163 data modules, making xterm build properly if logging is enabled 14164 (patch by Scott Sewall <scott@iprg.nokia.com>).</li> 14165 14166 <li>restore "ich" capability to terminfo entries, since Michael 14167 Schroeder points out that "ich1" is the one which is the 14168 problem in Solaris vi.</li> 14169 14170 <li>correct color of cursor, which would disappear on 14171 inverse-video since the initialization did not compare the 14172 cursor color against both foreground and background (reported 14173 by Olivier Calle).</li> 14174 14175 <li>correct abbreviation-test for -version and -help options, 14176 making command-line option -vb work (reported by Stefan 14177 Dalibor).</li> 14178 14179 <li>correct a dependency between ifdef's for OPT_I18N_SUPPORT 14180 and OPT_INPUT_METHOD (reported by Stefan Dalibor).</li> 14181 14182 <li>split-out character-set translations as new module 14183 charsets.c, to implement VT220 national replacement character 14184 sets (a mode where some of the characters are displayed as 14185 specific European glyphs). This relies on xterm using an ISO 14186 8859-1 font (approach suggested by Kenneth R. Robinette 14187 <zkrr01@mailbox.neosoft.com>).</li> 14188 14189 <li>correct a missing increment, which made SS2 and SS3 14190 controls repeat the shifted character.</li> 14191 14192 <li>add xterm-nrc to terminfo to illustrate the VT220 national 14193 replacement character sets.</li> 14194 14195 <li>reformat terminfo using new ncurses tic option "-f", which 14196 makes if/then/else/endif expressions easier to read.</li> 14197 </ul> 14198 14199 <h1><a name="xterm_69" id="xterm_69">Patch #69 - 1998/3/16 - 14200 XFree86 3.9Ad and 3.3.2</a></h1> 14201 14202 <p>This corrects the problem in xterm with utmp, reported by 14203 Olivier Calle <olivier@tc.fluke.com> as well as some other 14204 people after the XFree86 3.3.2 release.</p> 14205 14206 <p>The error was introduced by my patch #53 in XFree86 3.9r 14207 (October 1997).</p> 14208 14209 <p>The correction removes the reset of setuid/setgid before the 14210 main event loop, and solves the problem which I had worked around 14211 in a different manner: for some reason, the particular waitpid() 14212 call in creat_as() hangs, does not return when the child process 14213 exits. I changed the ifdef's to force the Linux configuration to 14214 use wait() instead. This call appears to work properly on other 14215 platforms such as SunOS and Solaris.</p> 14216 14217 <p>I also added tests in the standalone configure script to check 14218 for the existence of waitpid().</p> 14219 14220 <h1><a name="xterm_68" id="xterm_68">Patch #68 - 1998/3/4 - 14221 XFree86 3.9Ad and 3.3.1z</a></h1> 14222 14223 <p>This corrects another problem with the logic for 14224 highlightColor resource. As reported by David Dawes:</p> 14225 14226 <blockquote> 14227 <p>I've just noticed a problem with with the "inverse" control 14228 sequence (ESC[7m) with the 3.3.2 xterm. What it does is sets 14229 the background black, and the text the usual foreground colour 14230 rather than simply swapping the foreground/background.</p> 14231 </blockquote> 14232 14233 <p>This appears to be because when I added logic to check that 14234 the highlightColor was distinct from foreground and background 14235 colors, I did not add a further check to see that it was not 14236 black (I would make an explicit check for the resource not being 14237 set, but see nothing definite in the headers that would let me 14238 reference an explicitly-undefined Pixel value, though there are 14239 some implications in xpm.h). But this should work.</p> 14240 14241 <h1><a name="xterm_67" id="xterm_67">Patch #67 - 1998/2/23 - 14242 XFree86 3.9Ad and 3.3.1e</a></h1> 14243 14244 <p>This patch does the following:</p> 14245 14246 <ul> 14247 <li>improve test for highlightColor so that xterm does not 14248 attempt to use that unless it is different from the foreground 14249 and background colors (reported by Stefan Dalibor 14250 <Stefan.Dalibor@informatik.uni-erlangen.de>. 14251 <p>I could not reproduce this until I noticed that the -rev 14252 option exposed it nicely.</p> 14253 </li> 14254 14255 <li>remove ich and ich1 from xterm and xterm-8bit terminfo 14256 descriptions. SVr4 terminfo documents that you must not combine 14257 these with smir/rmir, but ncurses allows it, opening a hole. 14258 Solaris 2.6 vi does not work properly if it is using a terminfo 14259 description when these are combined, since it was written to 14260 accommodate old terminals that required it (reported by Stephen 14261 Marley).</li> 14262 14263 <li>restore 1-pixel overlap of scrollbar border with left edge 14264 of window (reported by Jim Burmeister 14265 <jimb@metrolink.com>).</li> 14266 14267 <li>add a configure option, --enable-logfile-exec, which allows 14268 the user to specify a pipe for logfile. This defines 14269 ALLOWLOGFILEEXEC.</li> 14270 14271 <li>makes the ALLOWLOGFILEEXEC code compile & run, if 14272 configured.</li> 14273 14274 <li>minor documentation nits.</li> 14275 </ul> 14276 14277 <h1><a name="xterm_66" id="xterm_66">Patch #66 - 1998/2/16 - 14278 XFree86 3.9Ad and 3.3.1d</a></h1> 14279 14280 <p>This fixes the problem reported with failure to build the 14281 <em>resize</em> program (BSDI, OSF/1) due to not having 14282 <termcap.h>, by changing the ifdef to one that would be set 14283 only if the file exists (not currently specified, except by the 14284 standalone configure script). We do not really need to include 14285 <termcap.h> to build, but only for a clean compile, since 14286 it may declare the tgetent() prototype. I also updated the 14287 man-page for <em>resize</em>, since I had recently noticed that 14288 it can be used to resize <em>xterm</em> using the "Sun" control 14289 sequences option.</p> 14290 14291 <h1><a name="xterm_65" id="xterm_65">Patch #65 - 1998/2/14 - 14292 XFree86 3.9Ad and 3.3.1c</a></h1> 14293 14294 <p>This is a small patch to xterm's 8-bit terminal description. I 14295 noticed while testing ncurses that I had specified the wrong 14296 (VT100-style) codes for the F1-F4. Xterm only uses VT220-style 14297 function keys in 8-bit mode.</p> 14298 14299 <h1><a name="xterm_64" id="xterm_64">Patch #64 - 1998/2/8 - 14300 XFree86 3.9Ad</a></h1> 14301 14302 <p>This fixes the following problems with xterm:</p> 14303 14304 <ul> 14305 <li>save/restore the ANSI foreground and background colors with 14306 the other visible attributes in the save-cursor and 14307 restore-cursor operations. This works around a problem with 14308 vim, which apparently assumed that switching between the normal 14309 and alternate screens resets the colors (reported by Jim Battle 14310 <jb@chromatic.com>). 14311 <p>It would be nice to implement save/restore cursor as a 14312 stack (and solve this type of problem completely), but that 14313 would lead to incompatibility with applications which assume 14314 they are running with a VT100 or VT220.</p> 14315 </li> 14316 14317 <li>corrects behavior of a restore-cursor operation which does 14318 not follow a save-cursor (it is supposed to set the character 14319 sets to a known initial state).</li> 14320 14321 <li>extends the sunKeyboard resource (and menu toggle) to 14322 modify the home, end and delete keys on a Sun or PC editing 14323 keypad, making them generate codes compatible with DEC VT220's 14324 Find, Select and Remove keys.</li> 14325 14326 <li>corrects a length in checking command-line options, which 14327 caused the "-help" message to not work when X was not 14328 running.</li> 14329 14330 <li>add some detail to the man-page (requested by Jason Bacon 14331 <acadix@execpc.com>)</li> 14332 14333 <li>modify the standalone configure script to ignore the broken 14334 nsl and socket libraries on IRIX 6.2 (the ones on 5.2 also are 14335 broken, so this change just widens the check for the system 14336 version number).</li> 14337 </ul> 14338 14339 <h1><a name="xterm_63" id="xterm_63">Patch #63 - 1998/2/5 - 14340 XFree86 3.9Ad</a></h1> 14341 14342 <p>This is another patch from Bjorn Helgaas 14343 <helgaas@rsn.hp.com>, which I've reviewed (and learned 14344 some). Following are his notes:</p> 14345 14346 <p>I poked around some more and finally got xterm-62 to build and 14347 run cleanly on HP-UX 10.20. Here are the patches. They look sort 14348 of ugly, so here's a little explanation:</p> 14349 14350 <ul> 14351 <li>aclocal.m4: Removed side effects from the AC_CACHE_VAL 14352 commands in CF_FUNC_TGETENT. Previously, LIBS was set inside 14353 AC_CACHE_VAL, which worked fine the first time configure was 14354 run, but failed if there were cached values.</li> 14355 14356 <li>aclocal.m4: Added temporary setting of LIBS before 14357 AC_TRY_LINK in CF_FUNC_TGETENT. Previously, the last value set 14358 by the AC_TRY_RUN loop was used, so only -lcurses was 14359 checked.</li> 14360 14361 <li>configure.in: Added temporary setting of CPPFLAGS before 14362 AC_CHECK_HEADERS for X11 files. Previously 14363 <X11/DECkeysym.h> and <X11/Xpoll.h> were found only 14364 if they were in the compiler's default include directories, 14365 even if `--x-includes=DIR' had been used or AC_PATH_XTRA had 14366 found them elsewhere.</li> 14367 </ul> 14368 14369 <p>The problem on HP-UX was that we were linking with -lcurses 14370 rather than -ltermcap due to the second bullet above, and 14371 apparently something in HP-UX curses is broken. This seems very 14372 strange, because the only thing used is tgetent, which should 14373 affect any tty/pty configuration, but I lost interest in tracking 14374 down the exact problem.</p> 14375 14376 <h1><a name="xterm_62" id="xterm_62">Patch #62 - 1998/1/23 - 14377 XFree86 3.9Ac</a></h1> 14378 14379 <p>This is a patch mostly by Bjorn Helgaas 14380 <helgaas@dhc.net> (I added the os2main.c change, and a 14381 little of the documentation). From Bjorn's description:</p> 14382 14383 <ul> 14384 <li>If you use the "-hc <color>" option or set the 14385 "highlightColor" resource, text is highlighted by changing only 14386 the background color, rather than using reverse video. I find 14387 this easier to read, especially when selecting multi-colored 14388 text, and it is similar to the way Netscape shows 14389 selections.</li> 14390 14391 <li>Most of the code changes are under "#if 14392 OPT_HIGHLIGHT_COLOR". The principal exception is in screen.c, 14393 where I added a couple calls to resetXtermGC(). This seems like 14394 it could be a bug even without the color highlighting changes 14395 (though I don't pretend to understand all the logic).</li> 14396 </ul> 14397 14398 <h1><a name="xterm_61" id="xterm_61">Patch #61 - 1998/1/17 - 14399 XFree86 3.9Ac</a></h1> 14400 14401 <p>This patch modifies the reset behavior of xterm slightly:</p> 14402 14403 <ul> 14404 <li>change the terminfo entry so that rs1 (one of the strings 14405 used by the 'reset' program) does a hard reset rather than 14406 switching character sets. This is more in accord with other 14407 terminal descriptions.</li> 14408 14409 <li>modifies the treatment of hard reset by the xterm program 14410 to reset the saved lines.</li> 14411 14412 <li>corrects hard reset by also resetting user-defined keys, 14413 i.e., DECUDK.</li> 14414 </ul> 14415 14416 <h1><a name="xterm_60" id="xterm_60">Patch #60 - 1998/1/10 - 14417 XFree86 3.9Ab</a></h1> 14418 14419 <p>This fixes some minor bugs and adds new functionality:</p> 14420 14421 <ul> 14422 <li>add support for blinking text. 14423 <ul> 14424 <li>This does not actually cause the text to flash, but 14425 text with the blink attribute can be displayed in color, 14426 using new resources colorBL and colorBLMode.</li> 14427 14428 <li>If colors are not used, the blinking text will be 14429 displayed as before (just like bold). The main purpose of 14430 this is to make applications work properly when they assume 14431 the emulator supports blinking text.</li> 14432 14433 <li>I did this by moving the per-cell LINEWRAPPED flag to a 14434 per-line flag, to make room for the new BLINK flag. There 14435 were no per-line flags, so this changes a lot of 14436 logic.</li> 14437 </ul> 14438 </li> 14439 14440 <li>corrected missing save-cursor logic in the handling of SGR 14441 1048 (the new control sequence I added in patch #54, 14442 1997/10/17). Reported by Darren Hiebert.</li> 14443 14444 <li>flush the output of the transparent printing after each 14445 line Reported by Tomas Vanhala 14446 <vanhala@ling.helsinki.fi>.</li> 14447 14448 <li>correct the modes that are affected by save/restore cursor 14449 by adding WRAPAROUND and PROTECTED.</li> 14450 14451 <li>corrected placement of one of the XSync calls that I added 14452 in patch #51, 1997/9/15, which had the side-effect of writing 14453 on the window border when the xterm was resizing from 132 to 80 14454 columns.</li> 14455 14456 <li>work around an incompatibility of the XKB definition used 14457 in xterm versus that symbol from IRIX 6.2's imake definitions 14458 (by adjusting the standalone configure script).</li> 14459 </ul> 14460 14461 <h1><a name="xterm_59" id="xterm_59">Patch #59 - 1998/1/5 - 14462 XFree86 3.9Ab</a></h1> 14463 14464 <p>My last patch has an off-by-one error in the comparison for 14465 argc. Douglas Kosovic <douglask@dstc.edu.au> showed me 14466 where (he got a core dump). Also, I think this explains Clint 14467 Olsen's problem, but the symptoms were more subtle (EINVAL for a 14468 system call if the -display option is omitted).</p> 14469 14470 <h1><a name="xterm_58" id="xterm_58">Patch #58 - 1998/1/3 - 14471 XFree86 3.9Ab</a></h1> 14472 14473 <p>This patch does the following:</p> 14474 14475 <ul> 14476 <li>implement logic to permit xterm to work with proportional 14477 fonts. 14478 <ul> 14479 <li>Thomas Wolff <Thomas.Wolff@sietec.de> requested 14480 this (but it isn't exactly what he's asking for - that's a 14481 more involved task).</li> 14482 14483 <li>I chose to do this by rendering the characters on a 14484 fixed pitch, because it would not be useful for existing 14485 applications to display varying numbers of characters on 14486 each line.</li> 14487 14488 <li>Except that this forces the display to be wider, it 14489 works reasonably well. A couple of special cases (reverse + 14490 colorBD, for example) do not display with proper colors, 14491 since the inter-character gaps are painted with the 14492 background.</li> 14493 </ul> 14494 </li> 14495 14496 <li>added a version number to the program (several people have 14497 requested this).</li> 14498 14499 <li>make the -version and -help options interpreted before the 14500 program attempts to open the display.</li> 14501 14502 <li>minor reorganization of the man-page (ordered the options, 14503 resources and translations alphabetically - and eliminated some 14504 duplication).</li> 14505 14506 <li>corrected a misspelled filename in Makefile.in, and added a 14507 lint rule.</li> 14508 14509 <li>updated the configure script to correct behavior when it 14510 cannot find imake, as well as to fix the IRIX+gcc build 14511 (conflict with /usr/include).</li> 14512 14513 <li>regenerated the configure script with a newer patch to 14514 autoconf that fixes a problem with environment space vs the 14515 configure --help message.</li> 14516 </ul> 14517 14518 <h1><a name="xterm_57" id="xterm_57">Patch #57 - 1997/12/26 - 14519 XFree86 3.9Aa</a></h1> 14520 14521 <p>This patch is mostly concerned with the standalone configure 14522 script; a few minor corrections are added:</p> 14523 14524 <ul> 14525 <li>add configure option --disable-tek4014, to allow xterm to 14526 be built without the tek4014 emulation.</li> 14527 14528 <li>add configure option --with-terminal-type, to allow xterm 14529 to be compiled with default $TERM value other than "xterm" 14530 (e.g., "xterm-16color") -- requested by Stephen Marley 14531 <stephen@memex.com>.</li> 14532 14533 <li>fix a typo in the configure --help message -- reported by 14534 Darren Hiebert <darren@hmi.com>.</li> 14535 14536 <li>review diffs between main.c and os2main.c, to make them 14537 more alike. (applies some minor bug-fixes to OS/2's 14538 version).</li> 14539 14540 <li>add missing quotes in memmove/bcopy configure test</li> 14541 </ul> 14542 14543 <h1><a name="xterm_56" id="xterm_56">Patch #56 - 1997/11/28 - 14544 XFree86 3.9x</a></h1> 14545 14546 <p>This patch is based on analysis by Arfst Ludwig 14547 <arfst@luxor.IN-Berlin.DE>, who reported:</p> 14548 14549 <blockquote> 14550 <p>Setting the following resources xterm (all current versions) 14551 receives a segmentation fault on <Btn2Up> after 14552 scrolling:</p> 14553 14554 <pre> 14555 *XTerm*VT100*translations: #override \ 14556 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\ 14557 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1)\n\ 14558 ~Shift<BtnUp>: select-end(PRIMARY, CUT_BUFFER0)\n\ 14559 Shift<BtnUp>: select-end(CLIPBOARD, CUT_BUFFER1) 14560</pre> 14561 <p>(The above resources intention is to be able to paste the 14562 latest selection even if the xterm was cleared.)</p> 14563 14564 <p>And here is how it works (and a fix!): The widget given to 14565 the action handler as first argument is not guaranteed to be a 14566 XtermWidget (it can be the ScrollbarWidget). Instead of 14567 accessing the widget's member directly XtDisplay gives the 14568 required pointer in a safe way.</p> 14569 </blockquote> 14570 14571 <p>I noticed that this was not the only instance (by reading the 14572 code, and testing with his example), and extended the solution to 14573 check the widget-class to ensure that it is indeed xterm's widget 14574 class before attempting to use it in the context of 14575 translations.</p> 14576 14577 <h1><a name="xterm_55" id="xterm_55">Patch #55 - 1997/11/25 - 14578 XFree86 3.9x</a></h1> 14579 14580 <p>This fixes the segmentation violation noted by Rogier Wolff 14581 about a month ago. He'd set xterm to 400 (rows) by 150 columns, 14582 which broke because there were limited buffers (200 rows) used 14583 for juggling data when adding or deleting lines and for switching 14584 between alternate and normal screens. I replaced this by an 14585 allocated buffer.</p> 14586 14587 <p>The bug is simple to test if you set titeInhibit false.</p> 14588 14589 <h1><a name="xterm_54" id="xterm_54">Patch #54 - 1997/10/17 - 14590 XFree86 3.9s</a></h1> 14591 14592 <p>This patch does the following:</p> 14593 14594 <ul> 14595 <li>correct a minor placement problem with the right 14596 scrollbar.</li> 14597 14598 <li>implement a new set of control sequences for switching 14599 between the normal and alternate VT100 screens. These work 14600 around the older sequences limitation that required 14601 modification of the runtime $TERMCAP to cooperate with the 14602 titeInhibit resource (that can't work with terminfo). I do this 14603 by moving all of the functionality of the rmcur terminfo 14604 capability into the control sequences.</li> 14605 14606 <li>implement the alternate-screen menu entry</li> 14607 </ul> 14608 14609 <h1><a name="xterm_53" id="xterm_53">Patch #53 - 1997/10/12 - 14610 XFree86 3.9r</a></h1> 14611 14612 <p>This patch adds a fix and implements a new feature (as well as 14613 some minor typos):</p> 14614 14615 <ul> 14616 <li>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a 14617 problem with the wait call with the logging option. It hung 14618 when the logfile was opened as a command-line option. I fixed 14619 this by moving the StartLogging() call down past the place 14620 where I'd reset the setuid mode. So the logfile is opened as 14621 the real user, without having to fork.</li> 14622 14623 <li>improve Rohleder's changes by renaming the command-line 14624 options and reducing the number of ifdef's.</li> 14625 14626 <li>implement right-scrollbars for xterm (patch by Michael 14627 Rohleder <michael.rohleder@stadt-frankfurt.de>).</li> 14628 </ul> 14629 14630 <h1><a name="xterm_52" id="xterm_52">Patch #52 - 1997/9/29 - 14631 XFree86 3.9q</a></h1> 14632 14633 <p>This patch addresses bugs and requests reported by</p> 14634 14635 <ul> 14636 <li>Bob Maynard <rmaynard@montana.com>,</li> 14637 14638 <li>Clint Olsen <olsenc@ichips.intel.com>,</li> 14639 14640 <li>JCHANDRA@Inf.COM (JCHANDRA),</li> 14641 14642 <li>Michael Schroeder 14643 <Michael.Schroeder@informatik.uni-erlangen.de>,</li> 14644 14645 <li>Pablo Ariel Kohan <pablo@memco.co.il></li> 14646 </ul> 14647 14648 <p>Some of the changes are interrelated (it was an unusually busy 14649 week).</p> 14650 14651 <ul> 14652 <li>change the default resource value for colorMode to true, 14653 matching the Xterm.ad file.</li> 14654 14655 <li>correct behavior of 'ech' control, making the default and 0 14656 parameters erase one character rather than to the end of line 14657 (reported by Michael Schroeder).</li> 14658 14659 <li>add resource boldColors, command-line options +pc and -pc 14660 and configure-script option to specify behavior of xterm's 14661 mapping bold colors 0 through 7 to colors 8 through 15. 14662 (request by Pablo Ariel Kohan).</li> 14663 14664 <li>add resource colorAttrMode to specify whether colorULMode 14665 and colorBDMode can override the ANSI colors (report by Clint 14666 Olsen).</li> 14667 14668 <li>correct a conflict between colorULMode/colorBDMode versus 14669 ANSI colors, where exposure events would occasionally pick up 14670 the former (e.g., colorBD) rather than ANSI colors. Testing the 14671 colorAttrMode made this apparent, though it has been in the 14672 code since 3.2A (patch #35 in Jan 1997).</li> 14673 14674 <li>correct two problems with the optional logging support. On 14675 Linux at least, the waitpid call in creat_as hangs when the 14676 logging is toggled from the popup menu. Also, the mktemp 14677 template has the wrong number of X's (since X11R5!). Fixed the 14678 waitpid problem by exploiting the fact that the setuid behavior 14679 is reset before the popup menus are available. (reported by 14680 Jayachandran C.).</li> 14681 14682 <li>add configure script options for building with the Xaw3d 14683 and neXtaw libraries.</li> 14684 14685 <li>correct CF_IMAKE_CFLAGS standalone configure script macro, 14686 so that it will pick up $(ALLDEFINES) rather than 14687 $(STD_DEFINES). This is needed to make scrollbars work on 14688 Linux, since that uses narrow prototypes. (reported by Bob 14689 Maynard).</li> 14690 14691 <li>various minor updates to configure-script macros.</li> 14692 </ul> 14693 14694 <h1><a name="xterm_51" id="xterm_51">Patch #51 - 1997/9/15 - 14695 XFree86 3.9p</a></h1> 14696 14697 <p>Most of this patch is related to the standalone configure 14698 script, though there are fixes/enhancements as well:</p> 14699 14700 <ul> 14701 <li>add a new resource sunKeyboard, with associated 14702 command-line option and menu-toggle that allows using a normal 14703 Sun or PC keyboard to generated the complete DEC-style function 14704 keys and keypad.</li> 14705 14706 <li>correct a reversed foreground/background test in the 14707 control sequence that replies with the current SGR 14708 settings.</li> 14709 14710 <li>correct, by invoking XSync, a display problem that caused 14711 the program to not properly update newly exposed areas when a 14712 font change or 80/132 resize request was not completely 14713 accepted.</li> 14714 14715 <li>restructured autoconf macros (I made a library of all of 14716 the macros across the complicated configure scripts I'm working 14717 on).</li> 14718 14719 <li>use the autoconf config.guess and config.sub scripts to 14720 better identify the host-os.</li> 14721 14722 <li>improve the configure script that uses 'imake' as a 14723 fallback for definitions.</li> 14724 14725 <li>correct several instances of unsigned/signed mixed 14726 expressions.</li> 14727 </ul> 14728 14729 <p>I've tested the configure script on Linux, SunOS 4.1.3, 14730 Solaris 2.5.1, IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but 14731 the last run properly as well).</p> 14732 14733 <h1><a name="xterm_50" id="xterm_50">Patch #50 - 1997/8/22 - 14734 XFree86 3.9m</a></h1> 14735 14736 <p>This is a collection of small fixes, and a couple of minor 14737 enhancements:</p> 14738 14739 <ul> 14740 <li>plug a security hole in the implementation of Media Copy 14741 (print) by invoking setuid just before the main loop.</li> 14742 14743 <li>add an ifdef'd include for <sys/termio.h> for HP-UX, 14744 which allows the program to process SIGWINCH events (this is a 14745 bug in X11R6.3)</li> 14746 14747 <li>add state-table entries for VT52 emulation to enter/exit 14748 keypad application mode.</li> 14749 14750 <li>disable the popup-menu entry for 8-bit controls when the 14751 terminal-id is less than 200 (e.g., VT52 or VT100).</li> 14752 14753 <li>ensure that the popup-menu entry for 8-bit controls is 14754 updated when the application enables/disables this mode, 14755 including the response to a full-reset.</li> 14756 14757 <li>implement VT300 DECBKM feature: set interpretation of the 14758 backarrow key to either backspace or delete. The initial 14759 setting is via resource; it can also be modified in the main 14760 popup menu.</li> 14761 14762 <li>implement VTxxx KAM (ISO AM), which allows a keyboard to be 14763 locked (i.e., the terminal discards input).</li> 14764 14765 <li>implement VTxxx SRM, which is used to control local echoing 14766 of input on the terminal.</li> 14767 14768 <li>add terminfo and termcap entries for xterm-8bit, a 14769 variation of the xterm description that uses 8-bit control 14770 characters.</li> 14771 14772 <li>add fallback definitions for Imakefile to allow it to work 14773 on some X11R5 systems that have no SpecialCObjectRule or 14774 ProgramTargetName macros.</li> 14775 14776 <li>add .c.o and .c.i rules to standalone Makefile.in</li> 14777 14778 <li>correct order of -lXmu and -lXext in standalone configure 14779 script.</li> 14780 14781 <li>add configure script options to allow selective disabling 14782 of active-icon, input-method and i18n code (mainly for users 14783 with X11R5 or an incomplete X11R6 configuration).</li> 14784 14785 <li>change menu-indices from #define's to enum values, thereby 14786 making it work better with the ifdef's for logging and 14787 active-icon (the X11R6.3 active-icon code is incorrectly 14788 ifdef'd; this corrects an error introduced by incorporating 14789 that code).</li> 14790 14791 <li>correct minor compile errors in the configuration where 14792 active-icon is not used.</li> 14793 14794 <li>add configure option to suppress echoing of long compiler 14795 commands</li> 14796 14797 <li>correct spelling of decTerminalID in configure script help 14798 message</li> 14799 14800 <li>use gcc __attribute__((unused)) to quiet warnings about 14801 unused parameters when compiling with -W (to make it simpler to 14802 find the real problems).</li> 14803 </ul> 14804 14805 <h1><a name="xterm_49" id="xterm_49">Patch #49 - 1997/8/10 - 14806 XFree86 3.9k</a></h1> 14807 14808 <p>This patch implements the VT100/VT220 Media Copy (i.e., 14809 print-screen) control sequences.</p> 14810 14811 <h1><a name="xterm_48" id="xterm_48">Patch #48 - 1997/7/26 - 14812 XFree86 3.9j</a></h1> 14813 14814 <p>This patch does the following (all but the first affect only 14815 the standalone configure script):</p> 14816 14817 <ul> 14818 <li>minor correction to positioning of underlines for small 14819 (e.g., 5x8) font size. 14820 <p>The existing behavior allowed underlines to be drawn 14821 outside the character-cell, so they weren't cleared properly 14822 under some circumstances.</p> 14823 </li> 14824 14825 <li>adds more special-case tokens to the standalone configure 14826 script's imake-option filter (e.g., "&&", since a "make 14827 -n main.o" on my IRIX system uses that shell construct).</li> 14828 14829 <li>adds a '--enable-logging' option for the standalone 14830 configure script.</li> 14831 14832 <li>adds check and ifdef's for the standalone configure script 14833 to allow for building on platforms with X11R6, which lacks 14834 Xpoll.h (introduced in X11R6.1).</li> 14835 </ul> 14836 14837 <h1><a name="xterm_47" id="xterm_47">Patch #47 - 1997/7/13 - 14838 XFree86 3.9i</a></h1> 14839 14840 <p>This patch does the following</p> 14841 14842 <ul> 14843 <li>corrects an indexing error in the doublesize character 14844 logic (button.c) that caused core dump (this was reported by J. 14845 Wunsch).</li> 14846 14847 <li>corrects the logic of ShowCursor when it is painting in a 14848 doublesize cell (charproc.c).</li> 14849 14850 <li>corrects, according to vttest, the behavior when switching 14851 to doublesize characters and back again (doublechr.c).</li> 14852 14853 <li>adds cbt (back_tab) to the terminfo description (this was 14854 something that I'd overlooked as applicable to curses 14855 optimization last summer).</li> 14856 14857 <li>corrects, for the standalone xmc test, the logic for 14858 disabling xmc.</li> 14859 </ul> 14860 14861 <h1><a name="xterm_46" id="xterm_46">Patch #46 - 1997/7/4 - 14862 XFree86 3.9h</a></h1> 14863 14864 <p>This is a patch to provide test-support for some work I'm 14865 doing on ncurses. It does not modify the normal configuration of 14866 xterm; the code is compiled if the standalone configure option 14867 "--enable-xmc-glitch" is specified.</p> 14868 14869 <h1><a name="xterm_45" id="xterm_45">Patch #45 - 1997/7/2 - 14870 XFree86 3.9h</a></h1> 14871 14872 <p>This fixes the problem reported with xterm's cursor color 14873 versus the background (the second chunk in this patch) and also 14874 removes some duplicate initialization of the cursor GC's. If the 14875 cursor color at startup is the same as the background, then xterm 14876 will use the reverse GC, ignoring the setting of the colorMode 14877 resource.</p> 14878 14879 <h1><a name="xterm_44" id="xterm_44">Patch #44 - 1997/6/22 - 14880 XFree86 3.9g</a></h1> 14881 14882 <p>This implements the first part of the VT100 doublesize 14883 characters for xterm, as well as fixing a handful of bugs:</p> 14884 14885 <ul> 14886 <li>the doublesize character support uses the normal font 14887 (using scaled fonts will be another patch) with blanks to 14888 simulate doublesize characters. This patch does most of the 14889 global changes that'll be required. I've hidden most of the 14890 details in macros and ifdef's so it's easy to configure out 14891 (part of the patch is a configure option for that 14892 purpose).</li> 14893 14894 <li>corrected limits in DeleteChar() function -- it's always 14895 ignored the size of the left border and scrollbar. I noticed 14896 this when working on the doublesize characters since the glitch 14897 was doubled in size (i.e., it wrapped some garbage around the 14898 right margin).</li> 14899 14900 <li>corrected 'memmove()' logic, for standalone builds (it 14901 referenced a malloc wrapper from my development library).</li> 14902 14903 <li>add a check for HideCursor() to prevent repeated screen 14904 updates (which can cause a spurious cursor glitch to appear, 14905 e.g., during scrolling). I noticed this with the 3.2A version 14906 (but only a few weeks ago, when I started working on this 14907 patch).</li> 14908 </ul> 14909 14910 <h1><a name="xterm_43" id="xterm_43">Patch #43 - 1997/6/10 - 14911 XFree86 3.9d</a></h1> 14912 14913 <p>Here's a fix for two problems:</p> 14914 14915 <ul> 14916 <li>modify handling of tgetent results in xterm and resize 14917 programs to make them tolerant of missing termcap file, or 14918 unknown terminal name. In this scheme, an explicit "-tn" option 14919 will succeed, overriding the fallback list.</li> 14920 14921 <li>a nit in the configure script (log extra information to 14922 help diagnose which case of the test-compile of tgetent was 14923 used).</li> 14924 </ul> 14925 14926 <h1><a name="xterm_42" id="xterm_42">Patch #42 - 1997/6/8 - 14927 XFree86 3.2Xl</a></h1> 14928 14929 <p>Bram Moolenaar reported that the cursor color changed 14930 unexpectedly while scrolling. The cause was that it used the same 14931 GC's as the logic that draws the ANSI colors. The bug only 14932 appears if the cursorColor resource isn't set, and has been 14933 present since the initial implementation early last year. (The 14934 same bug also appears in rxvt ;-). Here's a fix.</p> 14935 14936 <h1><a name="xterm_41" id="xterm_41">Patch #41 - 1997/5/28 - 14937 XFree86 3.2Xl</a></h1> 14938 14939 <p>Some nits found by Darren Hiebert (missing part of 14940 install-rule, incorrect assignment for --enable-color-mode 14941 option).</p> 14942 14943 <h1><a name="xterm_40" id="xterm_40">Patch #40 - 1997/5/26 - 14944 XFree86 3.2Xl</a></h1> 14945 14946 <p>Patch for the configure script's logic for obtaining imake 14947 predefined symbols.</p> 14948 14949 <h1><a name="xterm_39" id="xterm_39">Patch #39 - 1997/5/24 - 14950 XFree86 3.2Xl</a></h1> 14951 14952 <p>This patch does the following:</p> 14953 14954 <ul> 14955 <li>integrate the 16-color change for 'xterm'</li> 14956 14957 <li>minor fixes/clarification of tgetent in terminfo vs termcap 14958 to 'resize'</li> 14959 </ul> 14960 14961 <p>(both changes also modify the configure script)</p> 14962 14963 <h1><a name="xterm_38" id="xterm_38">Patch #38 - 1997/5/22 - 14964 XFree86 3.2Xh</a></h1> 14965 14966 <p>This implements a simple configuration script with autoconf 14967 (to which I'll add more options later). It does the 14968 following:</p> 14969 14970 <ul> 14971 <li>configures xterm to build with X11R5 (at least on SunOS 14972 4.1, Solaris 2.4, possibly IRIX - sorry network was down today, 14973 but I did test an earlier version yesterday).</li> 14974 14975 <li>enables/disables the configuration ifdef's for ANSI color 14976 and VT52 emulation.</li> 14977 </ul> 14978 14979 <p>It does not make tests for the things that imake does (that's 14980 another project), instead it uses a hybrid of the autoconf tests 14981 for libraries and adds imake's compiler options (which are 14982 necessary in some cases to get main.c to compile).</p> 14983 14984 <h1><a name="xterm_37" id="xterm_37">Patch #37 - 1997/5/7 - 14985 XFree86 3.9a</a></h1> 14986 14987 <p>This corrects a minor, but annoying error in the vt220 14988 emulation: the DECUDK is only supposed to be interpreted for 14989 _shifted_ function keys.</p> 14990 14991 <h1><a name="xterm_36" id="xterm_36">Patch #36 - 1997/1/16 - 14992 XFree86 3.2r</a></h1> 14993 14994 <p>This corrects something that I overlooked in patch #27 14995 (21-aug-1996), which is that when trimming the region to be 14996 repainted for the highlightSelection resource of xterm, I still 14997 have to paint the background past the highlighted region. This 14998 only happens when I first do a selection in a window that's 14999 partly off-screen, then move the window on-screen.</p> 15000 15001 <h1><a name="xterm_35" id="xterm_35">Patch #35 - 1997/1/7 - 15002 XFree86 3.2o</a></h1> 15003 15004 <p>This patch does the following:</p> 15005 15006 <ul> 15007 <li>combines the coding for foreground and background colors 15008 into a single byte, reducing the memory required to store 15009 saved-lines in color. (I'll take back that byte in a following 15010 patch to use to ensure the character-set, so there's no 15011 long-term decrease in memory use).</li> 15012 15013 <li>modifies the PF1-PF4 coding in termcap/terminfo. Because 15014 xterm is still by default emulating vt100, the function key 15015 codes are vt100-compatible (I overlooked this in patch #31). I 15016 also reformatted the whole terminfo file into a single-column, 15017 for consistency.</li> 15018 15019 <li>adds an interim xterm-vt220 description to accommodate the 15020 old and new styles of function-keys (though probably it'd be 15021 better to drop the old-style altogether).</li> 15022 </ul> 15023 15024 <h1><a name="xterm_34" id="xterm_34">Patch #34 - 1997/1/5 - 15025 XFree86 3.2o</a></h1> 15026 15027 <p>This patch does the following:</p> 15028 15029 <ul> 15030 <li>implement DECSTR (soft terminal reset). The biggest diff is 15031 due to adding another state table (note that there's only one 15032 useful state here, but it's only 256 bytes rather than 1k as it 15033 would have been before I reduced the size of state 15034 entries).</li> 15035 15036 <li>some minor tidying up (e.g., signed/unsigned use bitcpy, 15037 MODE_DECCKM, resetColor, resetCharsets). More is done in patch 15038 #35.</li> 15039 </ul> 15040 15041 <p>I got the description of DECSTR from a vt420 user's manual. 15042 I'll do some testing with vttest to ensure that there's nothing 15043 else to do than what was documented.</p> 15044 15045 <h1><a name="xterm_33" id="xterm_33">Patch #33 - 1996/11/24 - 15046 XFree86 3.2</a></h1> 15047 15048 <p>This adds to the reset-fix by Matthieu Herrb 15049 <Mathieu.Herrb@mipnet.fr> a small change to make xterm able 15050 to output 8-bit characters in VT100 mode. Applications that run 15051 on real VT100's don't do that anyway, and this feature should be 15052 removed sometime after finishing off the VT220 emulation (VT220's 15053 can do 8-bit characters). That would be a good time to change the 15054 default terminal-id to 220.</p> 15055 15056 <h1><a name="xterm_32" id="xterm_32">Patch #32 - 1996/11/21 - 15057 XFree86 3.2</a></h1> 15058 15059 <p>This implements the REP (repeat) control for xterm. That isn't 15060 part of the DEC VTxxx series, but is defined in ISO 6429. (Note 15061 that the base xterm terminal description is <em>not</em> changed 15062 -- I added a variant, "xterm-rep").</p> 15063 15064 <h1><a name="xterm_31" id="xterm_31">Patch #31 - 1996/11/16 - 15065 XFree86 3.2</a></h1> 15066 15067 <p>This implements vt52 emulation in xterm (ifdef'd so it can be 15068 removed). I've been using it for testing for the past month or 15069 so.</p> 15070 15071 <h1><a name="xterm_30" id="xterm_30">Patch #30 - 1996/11/16 - 15072 XFree86 3.2</a></h1> 15073 15074 <p>From bug-report by <auroux@clipper.ens.fr> (Denis 15075 Auroux), missing reset to ground state. I checked through the 15076 rest of <em>that</em> table and found another, in the 15077 unimplemented MC (screen print).</p> 15078 15079 <h1><a name="xterm_29" id="xterm_29">Patch #29 - 1996/9/15 - 15080 XFree86 3.1.2Gb</a></h1> 15081 15082 <p>This patch does the following:</p> 15083 15084 <ul> 15085 <li>corrects the restoration of color for bold/underline color 15086 mode</li> 15087 15088 <li>adds a resource 'decTerminalID' to control the reporting 15089 level of xterm (e.g., VT100, VT220).</li> 15090 15091 <li>uses the new resource to implement/correct the DA1, DA2 and 15092 DECRPTUI reports.</li> 15093 15094 <li>change valid-response code in DECRQSS from 0 to 1 (the 15095 manual says 0, but the VT420 terminal I've been testing on says 15096 1).</li> 15097 </ul> 15098 15099 <p>All of these changes are based on vttest 2.6</p> 15100 15101 <p>(Most of the volume in the patch is to add 2 more state tables 15102 for parsing the 2nd/3rd device-attribute controls).</p> 15103 15104 <h1><a name="xterm_28" id="xterm_28">Patch #28 - 1996/8/31 - 15105 XFree86 3.1.2F</a></h1> 15106 15107 <p>This patch corrects the following reported by Roland Rosenfeld 15108 <roland@spinnaker.rhein.de>:</p> 15109 15110 <ul> 15111 <li>handle SGR 22, 24 and 25 in combination with colorUL and 15112 colorBD resources. Also noted & fixed reset of colored 15113 underline/bold with SGR 0.</li> 15114 15115 <li>a typo in the termcap (missing '['), from 3.1.2Dj (my 15116 error)</li> 15117 </ul> 15118 15119 <p>Roland also complained that he couldn't use box characters 15120 with</p> 15121 15122 <pre> 15123 -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1 15124</pre> 15125 <p>but that's a known xterm limitation (the box characters must 15126 be part of the font, in the first 32 locations).</p> 15127 15128 <h1><a name="xterm_27" id="xterm_27">Patch #27 - 1996/8/21 - 15129 XFree86 3.1.2Ek</a></h1> 15130 15131 <p>This patch fixes one of my long-term gripes: xterm's selection 15132 doesn't clearly show what's being selected (as per David's 15133 request, it's controlled by a resource, which defaults to the 15134 older behavior).</p> 15135 15136 <h1><a name="xterm_26" id="xterm_26">Patch #26 - 1996/8/20 - 15137 XFree86 3.1.2Ei</a></h1> 15138 15139 <p>Here's a patch to fix a problem with xterm's cut/paste and 15140 another to modify the appearance of the highlighting while 15141 selecting. (The changes are independent, so you can see if the 15142 change to screen.c is desirable).</p> 15143 15144 <h1><a name="xterm_25" id="xterm_25">Patch #25 - 1996/8/18 - 15145 XFree86 3.1.2Ei</a></h1> 15146 15147 <p>Here's a correction for two minor bugs that I picked up in 15148 testing, plus some lint (from Solaris 2.5) where NULL was used 15149 incorrectly:</p> 15150 15151 <ul> 15152 <li>make the second alternate font the same as the first 15153 (that's what vt420 and dtterm do)</li> 15154 15155 <li>corrected DECSCL report when DECSCL hasn't been set (i.e., 15156 don't return a '60').</li> 15157 </ul> 15158 15159 <h1><a name="xterm_24" id="xterm_24">Patch #24 - 1996/8/11 - 15160 XFree86 3.1.2Ee</a></h1> 15161 15162 <p>This patch does several things. In effect, xterm can (I think) 15163 do a reasonably good job of emulating vt220 and vt320 terminals 15164 (as well as it was doing vt100, at any rate ;-).</p> 15165 15166 <p>It does NOT do:</p> 15167 15168 <ul> 15169 <li>soft fonts</li> 15170 15171 <li>rigel or sixel graphics</li> 15172 </ul> 15173 15174 <p>Anyway, I:</p> 15175 15176 <ul> 15177 <li>added ECH, CPL, CNL, SU, SD, CBT, CHT controls</li> 15178 15179 <li>added popup-menu for switching between DEC and Sun function 15180 keys. (corrected alignment err wrt logging entry at that 15181 point).</li> 15182 15183 <li>make xterm recognize both 8-bit and 7-bit controls 15184 (including popup menu for switching modes).</li> 15185 15186 <li>add user-definable function keys (aka DECUDK)</li> 15187 15188 <li>support concealed text</li> 15189 15190 <li>support protected text (both ISO compatible and DEC 15191 compatible - that's not the same thing, btw), with SPA, EPA, 15192 DECSCA, DECSED, DECSEL controls.</li> 15193 15194 <li>implement DECSCL.</li> 15195 </ul> 15196 15197 <p>I'll be continuing to test this patch for a while, but don't 15198 expect to add any new functionality (it passes all of the current 15199 tests I've built in vttest, but I need to make more tests)..</p> 15200 15201 <h1><a name="xterm_23" id="xterm_23">Patch #23 - 1996/7/31 - 15202 XFree86 3.1.2Ec</a></h1> 15203 15204 <p>This removes the blinking cursor I added last week (for 15205 performance reasons). Time-permitting, I'll revisit this after 15206 3.2 is released (there <em>will</em> be more work after XFree86 15207 3.2, I assume).</p> 15208 15209 <h1><a name="xterm_22" id="xterm_22">Patch #22 - 1996/7/26 - 15210 XFree86 3.1.2Ec</a></h1> 15211 15212 <p>I looked more closely at my "double-negative" and realized 15213 that I had been confused by the default color scheme (black on 15214 white) in combination with reverse video. However, I did see that 15215 the original_fg and original_bg data weren't really used - so I 15216 removed that logic.</p> 15217 15218 <p>Also:</p> 15219 15220 <ul> 15221 <li>during initialization, check if ANSI colors are set with 15222 non fg/bg values, disable color mode if not. This makes xterm 15223 tolerant of applications that allocate the whole color 15224 map.</li> 15225 15226 <li>implemented blinking cursor (default is <em>off</em>)</li> 15227 </ul> 15228 15229 <h1><a name="xterm_21" id="xterm_21">Patch #21 - 1996/7/24 - 15230 XFree86 3.1.2Ec</a></h1> 15231 15232 <p>This patch does the following:</p> 15233 15234 <ul> 15235 <li>fixes some minor typography in the control-sequences 15236 documentation (it didn't occur to me til I'd sent the last 15237 patch that I could use ghostview for previewing the troff 15238 output ;-)</li> 15239 15240 <li>adjusts the shell's background color in ReverseVideo so 15241 that flicker in resizing is reduced</li> 15242 15243 <li>adds an ifdef OPT_ISO_COLORS to allow configuring xterm 15244 without the ISO color support (saves a lot of memory)</li> 15245 15246 <li>used that ifdef to isolate/modify logic so that if the user 15247 doesn't have the colorMode enabled, then ISO color support is 15248 disabled (saving memory). 15249 <p>(If anyone needs numbers, I had savedLines set to 2000, 15250 and found a reduction from ~700k to ~400k of allocated 15251 memory, according to Purify).</p> 15252 </li> 15253 </ul> 15254 15255 <h1><a name="xterm_20" id="xterm_20">Patch #20 - 1996/7/24 - 15256 XFree86 3.1.2Ec</a></h1> 15257 15258 <p>This documents the changes in control sequences for window 15259 operations that I added in my previous patch. I'm testing another 15260 patch that allows the user to use less memory if colors aren't 15261 needed.</p> 15262 15263 <h1><a name="xterm_19" id="xterm_19">Patch #19 - 1996/7/21 - 15264 XFree86 3.1.2Ec</a></h1> 15265 15266 <p>This patch does the following:</p> 15267 15268 <ul> 15269 <li>fixes the core dump that I reported on IRIX 5.2 (in main.c) 15270 <p>(it's worth noting that this bug exists in X11R6.1, so I'd 15271 like to assume that someone's already submitted a fix to X 15272 Consortium...)</p> 15273 </li> 15274 15275 <li>change the interpretation of zero rows or columns in a 15276 resize-window request to use the root window's size (looking 15277 more carefully at dtterm, that seems to be what it does).</li> 15278 15279 <li>change some memmove calls to memcpy for slightly better 15280 performance. also, a couple of memset calls to bzero, since 15281 Quantify says bzero runs 20% faster, I assume because there's 15282 one less argument.</li> 15283 15284 <li>interpret character sets 1 and 2 (so that vttest gives a 15285 reasonable result) Both rxvt and dtterm do something 15286 equivalent.</li> 15287 15288 <li>fix a minor memory leak in the logic that retrieves the 15289 window or icon names (Purify found this for me while I ran 15290 vttest).</li> 15291 </ul> 15292 15293 <h1><a name="xterm_18" id="xterm_18">Patch #18 - 1996/7/18 - 15294 XFree86 3.1.2Ec</a></h1> 15295 15296 <p>This implements the following:</p> 15297 15298 <ul> 15299 <li>escape sequences that act like the CDE dtterm's window 15300 operations (though I have implemented the default width and 15301 height -- I've seen a rather buggy dtterm running that seems to 15302 treat width=0 or height=0 literally -- maybe that's a feature, 15303 not a bug?)</li> 15304 15305 <li>minor tweak to the screen-repainting when resizing (I still 15306 cannot entirely get rid of flicker).</li> 15307 15308 <li>still more fixes to terminfo & termcap (I corrected my 15309 error for the hpa code and added some other stuff by comparing 15310 to ncurses' description and rxvt's).</li> 15311 15312 <li>a tweak to the changes by Michael Rohleder for the color 15313 translation</li> 15314 15315 <li>re-order attribute codes to allow later implementation of 15316 protected fields (dtterm supposedly does this; it's probably 15317 more useful than blinking or invisible text -- that uses up all 15318 of the available bits without changing the attribute scheme 15319 radically).</li> 15320 </ul> 15321 15322 <h1><a name="xterm_17" id="xterm_17">Patch #17 - 1996/7/2 - 15323 XFree86 3.1.2Eb</a></h1> 15324 15325 <p>This patch implements for xterm several minor features from 15326 ISO 6429 which are useful for terminfo applications. The HPA and 15327 VPA control sequences allow cursor movement along a row or 15328 column, cutting down a little on the characters transmitted. The 15329 other codes allow resetting specific graphic rendition attributes 15330 without modifying the other attributes. (now if someone just had 15331 time to implement blinking cursors...)</p> 15332 15333 <h1><a name="xterm_16" id="xterm_16">Patch #16 - 1996/6/25 - 15334 XFree86 3.1.2Ea</a></h1> 15335 15336 <p>Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks 15337 ago that I'd missed some of the background coloring in xterm. I 15338 investigated, and found that while I'd picked up on the 15339 clear-to-bottom and clear-to-end-of-line operations, I'd 15340 overlooked the insert/delete lines. Just so I wouldn't overlook 15341 any more of these, I updated a copy of vttest to test ISO colors 15342 and bce (background color erase). This patch introduces a new 15343 function, ClearCurBackground, whose calls replace the direct 15344 XClearArea calls that I'd overlooked. (There's also a few 15345 compiler warnings fixed, etc ;-)</p> 15346 15347 <h1><a name="xterm_15" id="xterm_15">Patch #15 - 1996/5/29 - 15348 XFree86 3.1.2E</a></h1> 15349 15350 <p>This fixes the problem reported by David Dawes, by making the 15351 50msec select timeout for the Xaw3d arrow scrollbar a resource. 15352 (I made it a boolean for a variety of reasons -- to make it a 15353 number, you'd need an additional resource, to avoid breaking the 15354 logic).</p> 15355 15356 <h1><a name="xterm_14" id="xterm_14">Patch #14 - 1996/5/12 - 15357 XFree86 3.1.2Dj</a></h1> 15358 15359 <p>This patch brings the termcap and terminfo descriptions for 15360 xterm up to date. I made the following changes:</p> 15361 15362 <ul> 15363 <li>reformatted the terminfo description in a single-column 15364 (this is ok for terminfo, and will simplify future patches -- 15365 can't do that for termcap, since it would impact buffer 15366 requirements on some systems).</li> 15367 15368 <li>omitted obsolete features in termcap to save a little space 15369 (bs, pt)</li> 15370 15371 <li>added color capabilities to termcap (ut, Co, NC, op, AB, 15372 AF)</li> 15373 15374 <li>corrected some capabilities (vi, ve)</li> 15375 15376 <li>added 'st' (set tab)</li> 15377 15378 <li>reduced function keys in termcap for 'xterm' to 12 because 15379 color capabilities makes that description larger than 1023 15380 characters.</li> 15381 15382 <li>created new termcap name 'xtermm' (monochrome) to match the 15383 terminfo list, and make that description have 20 function 15384 keys.</li> 15385 15386 <li>added corresponding color capabilities to terminfo (bce, 15387 colors, pairs, op, ncv, setab, setaf)</li> 15388 15389 <li>corrected corresponding capabilities in terminfo (civis, 15390 cnorm, rmcup, smcup)</li> 15391 15392 <li>added capabilities (el1, hts)</li> 15393 15394 <li>in both, corrected home/end keys to match the code 15395 correction made by Thomas Mueller in 3.1.2Bk 15396 <p>=> (I'm still considering modifying the code & 15397 description to match the rxvt program).</p> 15398 </li> 15399 </ul> 15400 15401 <h1><a name="xterm_13" id="xterm_13">Patch #13 - 1996/4/23 - 15402 XFree86 3.1.2Df</a></h1> 15403 15404 <p>This corrects my earlier changes for colors - the inner border 15405 of the xterm was getting painted with the wrong color, since I'd 15406 moved the call to set the background into the logic that tracks 15407 SGR information.</p> 15408 15409 <h1><a name="xterm_12" id="xterm_12">Patch #12 - 1996/3/16 - 15410 XFree86 3.1.2Dc</a></h1> 15411 15412 <p>This corrects a memory leak in xterm that happens whenever one 15413 switches fonts.</p> 15414 15415 <h1><a name="xterm_11" id="xterm_11">Patch #11 - 1996/3/5 - 15416 XFree86 3.1.2Db</a></h1> 15417 15418 <p>This patch corrects the behavior of the ANSI colors in xterm 15419 when reverse video is used, as well as some other lesser 15420 sins:</p> 15421 15422 <ul> 15423 <li>button.c 15424 <ul> 15425 <li>(compiler warnings: shadowing of 'time', redundant 15426 cast)</li> 15427 </ul> 15428 </li> 15429 15430 <li>charproc.c 15431 <ul> 15432 <li>renamed screen.colors[] array to screen.Acolors[] to 15433 more easily distinguish the non-ANSI colors from the ANSI 15434 colors.</li> 15435 15436 <li>moved logic of SGR_Save() into VTInitialize, getting 15437 rid of local private variables original_fg and 15438 original_bg.</li> 15439 15440 <li>moved some logic into getXtermForeground and 15441 getXtermBackground from SGR_Foreground, SGR_Background, 15442 etc.</li> 15443 15444 <li>corrected misleading 'row' to 'col' in case for CUF, 15445 CUB sequences.</li> 15446 </ul> 15447 </li> 15448 15449 <li>ctlseqs.ms</li> 15450 15451 <li>xterm.man 15452 <ul> 15453 <li>(correct a misconception which I'd added that the 15454 color0 through color6 resource values apply to non-ANSI 15455 colors)</li> 15456 </ul> 15457 </li> 15458 15459 <li>ptyx.h 15460 <ul> 15461 <li>added original_fg, original_bg to TScreen 15462 structure.</li> 15463 </ul> 15464 </li> 15465 15466 <li>scrollbar.c 15467 <ul> 15468 <li>(compiler warnings: redundant cast)</li> 15469 </ul> 15470 </li> 15471 15472 <li>util.c 15473 <ul> 15474 <li>new functions getXtermForeground and getXtermBackground 15475 replace the macros GET_FG and GET_BG, with the added 15476 functionality of checking for the reverse-video status of 15477 xterm.</li> 15478 15479 <li>in ReverseVideo, swap the SGR foreground and background 15480 colors also.</li> 15481 </ul> 15482 </li> 15483 </ul> 15484 15485 <h1><a name="xterm_10" id="xterm_10">Patch #10 - 1996/2/14 - 15486 XFree86 3.1.2Cd</a></h1> 15487 15488 <p>I observed an occasional glitch in the xterm's color behavior; 15489 a clear to end of line would get a color that had been used in a 15490 program that supposedly reset colors. I traced this down to the 15491 way xterm was modifying colors of GC's on the fly; it didn't 15492 restore the original color of the GC, even though it would later 15493 be used in functions (such as ClearRight) that assumed (my error) 15494 that the GC would have the current foreground or background 15495 color.</p> 15496 15497 <p>I fixed this by resetting the GC's colors with a new function 15498 'resetXtermGC()', and direct calls on 15499 SGR_Foreground/SGR_Background, as appropriate and using a new 15500 function 'updatedXtermGC()' to encapsulate the logic that 15501 modifies the GC's color. (I also removed some commented-out code 15502 that was trying to do this -- the problem was a little more 15503 obscure).</p> 15504 15505 <h1><a name="xterm_09" id="xterm_09">Patch #9 - 1996/2/10 - 15506 XFree86 3.1.2Cb</a></h1> 15507 15508 <p>This patch fixes the remaining problems that I had making 15509 xterm run with x11r5, as well as a couple of other bugs. It 15510 follows my patch from yesterday, that added ifdef's for some of 15511 the input-method resources.</p> 15512 15513 <ul> 15514 <li>corrected ifdef's that suppress the input-method code 15515 (doesn't exist in my x11r5, and xterm works adequately without 15516 it).</li> 15517 15518 <li>corrected fallback definition for 'Select()' macro (oops: 15519 I'd copied the wrong text...)</li> 15520 15521 <li>moved the declarations for the fd_set variables to 15522 data.[ch]</li> 15523 15524 <li>corrected an ifdef in resize.c (sunos 4.x doesn't have 15525 termcap.h)</li> 15526 15527 <li>corrected (in main.c) some unused/orphaned variables.</li> 15528 </ul> 15529 15530 <h1><a name="xterm_08" id="xterm_08">Patch #8 - 1996/2/9 - 15531 XFree86 3.1.2Cb</a></h1> 15532 15533 <p>This is mostly a documentation patch for xterm. It describes 15534 the color control sequences in more detail, and documents some 15535 other features of xterm that aren't described elsewhere.</p> 15536 15537 <p>I've also added a couple of ifdef's to fix (part of) the 15538 problem that I'm working on (making the program work properly on 15539 x11r5, where I'm doing memory testing -- I have a "good" version 15540 from mid-January, but my resync version doesn't work properly on 15541 x11r5). I'm not done with <em>that</em> yet.</p> 15542 15543 <h1><a name="xterm_07" id="xterm_07">Patch #7 - 1996/1/28 - 15544 XFree86 3.1.2n</a></h1> 15545 15546 <p>I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF). I've 15547 got an S3 card.</p> 15548 15549 <p>This fixes the following in the 3.1.2n xterm:</p> 15550 15551 <ul> 15552 <li>initialize cur_foreground, cur_background in charproc.c 15553 (Purify told me they weren't initialized).</li> 15554 15555 <li>add interpretation of codes 39, 49, to reset background and 15556 foreground to default value (I'm told that ISO 6429 does this; 15557 but I don't have a written reference -- yet -- can anyone help 15558 here?). Anyway, rxvt does it, and it'll solve my remaining 15559 color management problems.</li> 15560 15561 <li>shadowing of 'time' in menu.c</li> 15562 15563 <li>'Cardinal' vs 'int' in scrollbar.c</li> 15564 15565 <li>several changes to permit compile with X11R5 (the system 15566 that I've got Purify on won't be upgraded to X11R6 for a long 15567 time).</li> 15568 </ul> 15569 15570 <p>I built this version (with a minor nit that I'll patch soon) 15571 on SunOS 4.1.3 so that I can test it some more with Purify.</p> 15572 15573 <p><em>btw</em>: the changes made in Xpoll.h won't work on some 15574 older systems, because fd_set isn't a defined type (I've got one 15575 machine at least that this applies to).</p> 15576 15577 <h1><a name="xterm_06" id="xterm_06">Patch #6 - 1996/1/8</a></h1> 15578 15579 <p>This patch does all of the SGR foreground/background fixes 15580 (i.e., clearing the screen after an SGR color is set causes that 15581 color to be used in the foreground and/or background). If the 15582 FG_COLOR and/or BG_COLOR flags aren't set, then the xterm 15583 foreground and background default to the window's values. This 15584 usage is consistent with various types of hardware (especially 15585 the IBM PC), and is also used in rxvt.</p> 15586 15587 <ul> 15588 <li>charproc.c: 15589 <ul> 15590 <li>add/use new macros GET_FG, GET_BG - n/c.</li> 15591 15592 <li>add/use new functions SGR_Foreground() and 15593 SGR_Background() to set corresponding colors in GC's, and 15594 to retain sense of "original" colors. 15595 <p>=> This makes redundant some of the corresponding 15596 logic in HideCursor to set the foreground and background, 15597 but I left it in since it <em>may</em> be fixing an 15598 unrelated requirement.</p> 15599 </li> 15600 15601 <li>set GC's in LoadNewFont() according to whether the SGR 15602 fg/bg colors are active. 15603 <p>=> This fixes some glitches in the accompanying 15604 resize, that leaves parts of the window in the original 15605 background color.</p> 15606 </li> 15607 </ul> 15608 </li> 15609 15610 <li>screen.c: 15611 <ul> 15612 <li>modified ClearBufRows() to use the SGR fg/bg colors if 15613 they're set.</li> 15614 15615 <li>added function ScrnClearLines(), used this to replace 15616 portions of ScrnInsertLine() and ScrnDeleteLine(). The new 15617 function uses the SGR fg/bg colors if they're set. 15618 <p>=> Otherwise, selection after an index or reverse 15619 index will paint the wrong colors.</p> 15620 </li> 15621 15622 <li>modified ScrnDeleteChar() and ScrnInsertChar() to use 15623 SGR fg/bg colors.</li> 15624 </ul> 15625 </li> 15626 15627 <li>util.c: 15628 <ul> 15629 <li>modified ClearRight() so that if either of the SGR 15630 fg/bg colors is set, we don't bzero the attributes and 15631 color arrays, but instead fill them with the appropriate 15632 codes.</li> 15633 15634 <li>modified ClearLeft to use SGR fg/bg colors.</li> 15635 </ul> 15636 </li> 15637 </ul> 15638 15639 <h1><a name="xterm_05" id="xterm_05">Patch #5 - 1996/1/7</a></h1> 15640 15641 <p>This patch modifies the object code, by replacing indexing 15642 expressions with temporary variables with the full indexing 15643 expression. At first glance, this seems inefficient (it did to me 15644 ;-), until remembering comments made in the compilers newsgroups 15645 that trying to "help" the compiler doesn't really work that well. 15646 A good optimizing compiler can do a better job than the 15647 programmer can. (There's a moral in the use of 'register' 15648 variables also, but I won't fix those...).</p> 15649 15650 <p>Anyway, the revised code generates a smaller object...</p> 15651 15652 <ul> 15653 <li>charproc.c: 15654 <ul> 15655 <li>recode index expressions in ShowCursor() and 15656 HideCursor() using SCRN_BUF_xxxxS macros - changes 15657 object.</li> 15658 15659 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15660 </ul> 15661 </li> 15662 15663 <li>ptyx.h: 15664 <ul> 15665 <li>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS 15666 macros, to pick up references to ScrnBuf data directly, and 15667 added MAX_PTRS symbol to pick up those '4' constants strewn 15668 about the code - n/c.</li> 15669 </ul> 15670 </li> 15671 15672 <li>screen.c: 15673 <ul> 15674 <li>recode index expressions in ScreenWrite() using 15675 SCRN_BUF_xxxxS macros - changes object.</li> 15676 15677 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15678 15679 <li>use macros BUF_CHARS, BUF_ATTRS - n/c.</li> 15680 15681 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15682 - n/c</li> 15683 </ul> 15684 </li> 15685 15686 <li>scrollbar.c: 15687 <ul> 15688 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15689 15690 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15691 - n/c</li> 15692 </ul> 15693 </li> 15694 </ul> 15695 15696 <h1><a name="xterm_04" id="xterm_04">Patch #4 - 1996/1/7</a></h1> 15697 15698 <p>When setting up for this phase, I saw that you'd corrected the 15699 bug that I found in ClearLeft. I decided to make this series of 15700 patches anyway, since readability never hurt (and there's the 15701 potential for finding another bug while reviewing this set).</p> 15702 15703 <ul> 15704 <li>button.c: 15705 <ul> 15706 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15707 </ul> 15708 </li> 15709 15710 <li>charproc.c: 15711 <ul> 15712 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15713 </ul> 15714 </li> 15715 15716 <li>ptyx.h: 15717 <ul> 15718 <li>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS, 15719 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four arrays 15720 that are derived from screen->buf.</li> 15721 </ul> 15722 </li> 15723 15724 <li>screen.c: 15725 <ul> 15726 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15727 </ul> 15728 </li> 15729 15730 <li>util.c: 15731 <ul> 15732 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15733 </ul> 15734 </li> 15735 </ul> 15736 15737 <h1><a name="xterm_03" id="xterm_03">Patch #3 - 1996/1/7</a></h1> 15738 15739 <p>This is my third (and final cleanup) patch for xterm. It gets 15740 rid of the unused stuff, and converts several functions to static 15741 (thereby reducing their scope).</p> 15742 15743 <p>At this point, the only compile warnings I've got (on Linux) 15744 are those about the select arguments (int vs fd_set type), and a 15745 missing declaration for waitpid. Those both are hard to get right 15746 without autoconfigure.</p> 15747 15748 <p>The next patches will address the functional changes...</p> 15749 15750 <ul> 15751 <li>Tekproc.c: 15752 <ul> 15753 <li>changed several functions to 'static' that aren't used 15754 outside this module -- changes object</li> 15755 </ul> 15756 </li> 15757 15758 <li>charproc.c: 15759 <ul> 15760 <li>changed several functions to 'static' that aren't used 15761 outside this module -- changes object</li> 15762 15763 <li>deleted unused function unparsefputs -- changes 15764 object.</li> 15765 </ul> 15766 </li> 15767 15768 <li>main.c: 15769 <ul> 15770 <li>changed several functions to 'static' that aren't used 15771 outside this module -- changes object</li> 15772 15773 <li>ifdef'd out unused function 'consolepr()' -- changes 15774 object</li> 15775 15776 <li>removed unused variable 'dummy_tio' -- changes 15777 object</li> 15778 15779 <li>moved variable 'discipline' to quiet unused-warning -- 15780 changes object</li> 15781 </ul> 15782 </li> 15783 15784 <li>main.h: 15785 <ul> 15786 <li>deleted unused definition of DEFBORDERWIDTH - n/c</li> 15787 </ul> 15788 </li> 15789 15790 <li>misc.c: 15791 <ul> 15792 <li>changed several functions to 'static' that aren't used 15793 outside this module -- changes object</li> 15794 15795 <li>provide dummy return statements for xerror and xioerror 15796 to quiet compiler warnings -- changes object</li> 15797 </ul> 15798 </li> 15799 15800 <li>ptyx.h: 15801 <ul> 15802 <li>change sbuf_address and abuf_address to 'Char *' - 15803 n/c</li> 15804 </ul> 15805 </li> 15806 15807 <li>resize.c: 15808 <ul> 15809 <li>changed several functions to 'static' that aren't used 15810 outside this module -- changes object</li> 15811 </ul> 15812 </li> 15813 15814 <li>screen.c: 15815 <ul> 15816 <li>remove unnecessary 'Char **' casts - n/c</li> 15817 </ul> 15818 </li> 15819 15820 <li>util.c: 15821 <ul> 15822 <li>changed several functions to 'static' that aren't used 15823 outside this module -- changes object</li> 15824 </ul> 15825 </li> 15826 </ul> 15827 15828 <h1><a name="xterm_02" id="xterm_02">Patch #2 - 1996/1/7</a></h1> 15829 15830 <p>This is my second patch to xterm. It corrects most of the gcc 15831 warnings (except for some that are due to X header files ;-). I 15832 compared objects to keep track of the changes that don't affect 15833 the object code (n/c) versus those that do.</p> 15834 15835 <p>At this point, I'm compiling (fairly) clean with gcc 15836 options</p> 15837 15838 <pre> 15839 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs 15840</pre> 15841 <p>(I also compiled with -Wshadow, but while that found some 15842 things that I wanted to find, there's far too many warnings from 15843 the X headers to be usable in this context).</p> 15844 15845 <p>The changes:</p> 15846 15847 <ul> 15848 <li>Tekproc.c: 15849 <ul> 15850 <li>parenthesized expression to avoid gcc warning -- 15851 n/c.</li> 15852 15853 <li>corrected nested-extern declaration for Bool 15854 waiting_for_initial_map; ourTopLevelShellArgs, and 15855 number_ourTopLevelShellArgs - n/c</li> 15856 </ul> 15857 </li> 15858 15859 <li>charproc.c: 15860 <ul> 15861 <li>corrected potentially-unintialized variables 'scstype', 15862 'xim', and 'input_style' -- changes object.</li> 15863 15864 <li>adjusted logic of VTparse so that gcc won't warn about 15865 setjmp clobbering parsestate -- changes object.</li> 15866 15867 <li>corrected initialization of 'scstype', which could have 15868 been clobbered by setjmp/longjmp - changes object.</li> 15869 15870 <li>corrected nested-extern declaration of 'term', 15871 'ProgramName' - n/c</li> 15872 </ul> 15873 </li> 15874 15875 <li>cursor.c: 15876 <ul> 15877 <li>corrected nested-extern declaration of 'term' -- 15878 n/c</li> 15879 15880 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15881 - n/c</li> 15882 </ul> 15883 </li> 15884 15885 <li>input.c: 15886 <ul> 15887 <li>change interface of StringInput to assume size_t (i.e., 15888 unsigned) nbytes -- changes object.</li> 15889 15890 <li>change interface of funcvalue, and sunfuncvalue to use 15891 'KeySym' type instead of 'int' - changes object.</li> 15892 </ul> 15893 </li> 15894 15895 <li>main.c: 15896 <ul> 15897 <li>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h 15898 - n/c</li> 15899 15900 <li>corrected missing params of 'do_hangup()' -- changes 15901 object (note: the missing params were not used).</li> 15902 15903 <li>corrected missing param of 'Error()' -- changes 15904 object</li> 15905 15906 <li>corrected nested-extern 'environ' - n/c</li> 15907 15908 <li>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' 15909 so that gcc can see they won't be clobbered by the longjmp 15910 - changes object.</li> 15911 15912 <li>use Size_t type - n/c.</li> 15913 </ul> 15914 </li> 15915 15916 <li>menu.c: 15917 <ul> 15918 <li>removed redundant prototype for 'do_hangup()' -- 15919 n/c.</li> 15920 15921 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 15922 - n/c</li> 15923 </ul> 15924 </li> 15925 15926 <li>menu.h: 15927 <ul> 15928 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 15929 - n/c</li> 15930 </ul> 15931 </li> 15932 15933 <li>misc.c: 15934 <ul> 15935 <li>corrected definition of 'HandleFocusChange()' -- 15936 changes object</li> 15937 15938 <li>cast parameters in call to 'TekExpose()' -- n/c</li> 15939 15940 <li>corrected nested-extern declarations of 'term', 15941 'toplevel', ProgramName, and 'environ' -- n/c.</li> 15942 15943 <li>use Size_t type - n/c.</li> 15944 </ul> 15945 </li> 15946 15947 <li>proto.h: 15948 <ul> 15949 <li>moved definition of SIGNAL_T (and SIGNAL_RETURN) here 15950 from main.c, resize.c to allow use of this symbol in 15951 prototypes (mostly in xterm.h).</li> 15952 15953 <li>added definition 'Size_t' to use as corrected type for 15954 strncpy, malloc sizes - n/c.</li> 15955 </ul> 15956 </li> 15957 15958 <li>resize.c: 15959 <ul> 15960 <li>moved SIGNAL_T definition to proto.h -- n/c.</li> 15961 15962 <li>use Size_t type - n/c.</li> 15963 </ul> 15964 </li> 15965 15966 <li>screen.c: 15967 <ul> 15968 <li>use Size_t type - n/c.</li> 15969 </ul> 15970 </li> 15971 15972 <li>tabs.c: 15973 <ul> 15974 <li>corrected nested-extern declaration of 'term' -- 15975 n/c</li> 15976 </ul> 15977 </li> 15978 15979 <li>util.c: 15980 <ul> 15981 <li>corrected/supplied parameters to 'TekExpose()' -- 15982 changes object (note: 'TekExpose()' doesn't use its 15983 parameters).</li> 15984 15985 <li>corrected nested-extern declaration of 15986 'waiting_for_initial_map' -- n/c.</li> 15987 15988 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15989 - n/c</li> 15990 </ul> 15991 </li> 15992 15993 <li>xterm.h: 15994 <ul> 15995 <li>prototype 'do_hangup()', 'HandleFocusChange()', 15996 'TekExpose()', 'Error()', 'Exit()' - forces changes in 15997 various places.</li> 15998 15999 <li>adjusted prototypes that pass 'Boolean' arguments to 16000 use 'int' (this is the "correct" ANSI approach to extended 16001 compiles; it's worth mentioning that gcc doesn't meet the 16002 ANSI spec here). I used gcc -Wconversion to find these, but 16003 there's a lot of unrelated warnings that are due to setting 16004 NARROWPROTO in the config - n/c.</li> 16005 16006 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 16007 - n/c</li> 16008 </ul> 16009 </li> 16010 </ul> 16011 16012 <h1><a name="xterm_01" id="xterm_01">Patch #1 - 1996/1/6</a></h1> 16013 16014 <p>This is my first cleanup patch for xterm. It addresses all of 16015 the gcc warnings for -Wall, -Wmissing-prototypes and 16016 -Wstrict-prototypes that I can change without modifying the 16017 object code. (I'm compiling this with gcc 2.7.0 for an aout 16018 target, which makes it simple to compare objects. When I do 16019 ELF-only, I've got a tool that compares that sort of thing as 16020 well).</p> 16021 16022 <p>Briefly, this patch adds (and uses) two header files in the 16023 xterm directory:</p> 16024 16025 <pre> 16026 proto.h 16027 xterm.h 16028</pre> 16029 <p>I expect this to be the biggest patch by far. However (barring 16030 a misplaced prototype), it shouldn't break anything, since the 16031 intent of the patch is to provide missing declarations.</p> 16032</body> 16033</html> 16034