xterm.log.html revision ad37e533
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.2326 2021/03/26 23:02:54 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_367">Patch #367 - 2021/03/26</a></li> 74 75 <li><a href="#xterm_366">Patch #366 - 2021/02/10</a></li> 76 77 <li><a href="#xterm_365">Patch #365 - 2021/02/03</a></li> 78 79 <li><a href="#xterm_364">Patch #364 - 2021/02/02</a></li> 80 81 <li><a href="#xterm_363">Patch #363 - 2020/12/26</a></li> 82 83 <li><a href="#xterm_362">Patch #362 - 2020/11/11</a></li> 84 85 <li><a href="#xterm_361">Patch #361 - 2020/10/14</a></li> 86 87 <li><a href="#xterm_360">Patch #360 - 2020/09/20</a></li> 88 89 <li><a href="#xterm_359">Patch #359 - 2020/08/17</a></li> 90 91 <li><a href="#xterm_358">Patch #358 - 2020/07/12</a></li> 92 93 <li><a href="#xterm_357">Patch #357 - 2020/07/05</a></li> 94 95 <li><a href="#xterm_356">Patch #356 - 2020/05/02</a></li> 96 97 <li><a href="#xterm_355">Patch #355 - 2020/05/01</a></li> 98 99 <li><a href="#xterm_354">Patch #354 - 2020/04/26</a></li> 100 101 <li><a href="#xterm_353">Patch #353 - 2020/02/01</a></li> 102 103 <li><a href="#xterm_352">Patch #352 - 2020/01/16</a></li> 104 105 <li><a href="#xterm_351">Patch #351 - 2019/11/17</a></li> 106 107 <li><a href="#xterm_350">Patch #350 - 2019/11/02</a></li> 108 109 <li><a href="#xterm_349">Patch #349 - 2019/09/22</a></li> 110 111 <li><a href="#xterm_348">Patch #348 - 2019/07/22</a></li> 112 113 <li><a href="#xterm_347">Patch #347 - 2019/06/30</a></li> 114 115 <li><a href="#xterm_346">Patch #346 - 2019/05/27</a></li> 116 117 <li><a href="#xterm_345">Patch #345 - 2019/05/14</a></li> 118 119 <li><a href="#xterm_344">Patch #344 - 2019/02/12</a></li> 120 121 <li><a href="#xterm_343">Patch #343 - 2019/01/13</a></li> 122 123 <li><a href="#xterm_342">Patch #342 - 2019/01/03</a></li> 124 125 <li><a href="#xterm_341">Patch #341 - 2018/12/24</a></li> 126 127 <li><a href="#xterm_340">Patch #340 - 2018/12/16</a></li> 128 129 <li><a href="#xterm_339">Patch #339 - 2018/12/12</a></li> 130 131 <li><a href="#xterm_338">Patch #338 - 2018/12/09</a></li> 132 133 <li><a href="#xterm_337">Patch #337 - 2018/09/21</a></li> 134 135 <li><a href="#xterm_336">Patch #336 - 2018/09/19</a></li> 136 137 <li><a href="#xterm_335">Patch #335 - 2018/08/14</a></li> 138 139 <li><a href="#xterm_334">Patch #334 - 2018/08/12</a></li> 140 141 <li><a href="#xterm_333">Patch #333 - 2018/05/03</a></li> 142 143 <li><a href="#xterm_332">Patch #332 - 2018/04/15</a></li> 144 145 <li><a href="#xterm_331">Patch #331 - 2017/12/30</a></li> 146 147 <li><a href="#xterm_330">Patch #330 - 2017/06/20</a></li> 148 149 <li><a href="#xterm_329">Patch #329 - 2017/06/12</a></li> 150 151 <li><a href="#xterm_328">Patch #328 - 2017/06/01</a></li> 152 153 <li><a href="#xterm_327">Patch #327 - 2016/10/07</a></li> 154 155 <li><a href="#xterm_326">Patch #326 - 2016/09/25</a></li> 156 157 <li><a href="#xterm_325">Patch #325 - 2016/06/05</a></li> 158 159 <li><a href="#xterm_324">Patch #324 - 2016/03/10</a></li> 160 161 <li><a href="#xterm_323">Patch #323 - 2016/03/07</a></li> 162 163 <li><a href="#xterm_322">Patch #322 - 2016/01/02</a></li> 164 165 <li><a href="#xterm_321">Patch #321 - 2015/12/31</a></li> 166 167 <li><a href="#xterm_320">Patch #320 - 2015/08/28</a></li> 168 169 <li><a href="#xterm_319">Patch #319 - 2015/08/19</a></li> 170 171 <li><a href="#xterm_318">Patch #318 - 2015/04/12</a></li> 172 173 <li><a href="#xterm_317">Patch #317 - 2015/03/27</a></li> 174 175 <li><a href="#xterm_316">Patch #316 - 2015/03/07</a></li> 176 177 <li><a href="#xterm_315">Patch #315 - 2015/03/02</a></li> 178 179 <li><a href="#xterm_314">Patch #314 - 2014/12/28</a></li> 180 181 <li><a href="#xterm_313">Patch #313 - 2014/11/28</a></li> 182 183 <li><a href="#xterm_312">Patch #312 - 2014/09/28</a></li> 184 185 <li><a href="#xterm_311">Patch #311 - 2014/09/18</a></li> 186 187 <li><a href="#xterm_310">Patch #310 - 2014/07/25</a></li> 188 189 <li><a href="#xterm_309">Patch #309 - 2014/07/13</a></li> 190 191 <li><a href="#xterm_308">Patch #308 - 2014/06/19</a></li> 192 193 <li><a href="#xterm_307">Patch #307 - 2014/06/17</a></li> 194 195 <li><a href="#xterm_306">Patch #306 - 2014/06/03</a></li> 196 197 <li><a href="#xterm_305">Patch #305 - 2014/06/02</a></li> 198 199 <li><a href="#xterm_304">Patch #304 - 2014/05/03</a></li> 200 201 <li><a href="#xterm_303">Patch #303 - 2014/03/06</a></li> 202 203 <li><a href="#xterm_302">Patch #302 - 2014/03/02</a></li> 204 205 <li><a href="#xterm_301">Patch #301 - 2014/01/19</a></li> 206 207 <li><a href="#xterm_300">Patch #300 - 2013/12/03</a></li> 208 209 <li><a href="#xterm_299">Patch #299 - 2013/12/01</a></li> 210 211 <li><a href="#xterm_298">Patch #298 - 2013/11/27</a></li> 212 213 <li><a href="#xterm_297">Patch #297 - 2013/09/10</a></li> 214 215 <li><a href="#xterm_296">Patch #296 - 2013/07/10</a></li> 216 217 <li><a href="#xterm_295">Patch #295 - 2013/07/06</a></li> 218 219 <li><a href="#xterm_294">Patch #294 - 2013/07/05</a></li> 220 221 <li><a href="#xterm_293">Patch #293 - 2013/05/27</a></li> 222 223 <li><a href="#xterm_292">Patch #292 - 2013/04/25</a></li> 224 225 <li><a href="#xterm_291">Patch #291 - 2013/02/26</a></li> 226 227 <li><a href="#xterm_290">Patch #290 - 2013/02/12</a></li> 228 229 <li><a href="#xterm_289">Patch #289 - 2013/02/08</a></li> 230 231 <li><a href="#xterm_288">Patch #288 - 2013/01/09</a></li> 232 233 <li><a href="#xterm_287">Patch #287 - 2012/11/25</a></li> 234 235 <li><a href="#xterm_286">Patch #286 - 2012/10/29</a></li> 236 237 <li><a href="#xterm_285">Patch #285 - 2012/10/23</a></li> 238 239 <li><a href="#xterm_284">Patch #284 - 2012/10/14</a></li> 240 241 <li><a href="#xterm_283">Patch #283 - 2012/10/09</a></li> 242 243 <li><a href="#xterm_282">Patch #282 - 2012/09/28</a></li> 244 245 <li><a href="#xterm_281">Patch #281 - 2012/06/26</a></li> 246 247 <li><a href="#xterm_280">Patch #280 - 2012/06/24</a></li> 248 249 <li><a href="#xterm_279">Patch #279 - 2012/05/10</a></li> 250 251 <li><a href="#xterm_278">Patch #278 - 2012/01/18</a></li> 252 253 <li><a href="#xterm_277">Patch #277 - 2012/01/07</a></li> 254 255 <li><a href="#xterm_276">Patch #276 - 2011/10/10</a></li> 256 257 <li><a href="#xterm_275">Patch #275 - 2011/09/11</a></li> 258 259 <li><a href="#xterm_274">Patch #274 - 2011/09/05</a></li> 260 261 <li><a href="#xterm_273">Patch #273 - 2011/08/25</a></li> 262 263 <li><a href="#xterm_272">Patch #272 - 2011/08/24</a></li> 264 265 <li><a href="#xterm_271">Patch #271 - 2011/07/14</a></li> 266 267 <li><a href="#xterm_270">Patch #270 - 2011/04/26</a></li> 268 269 <li><a href="#xterm_269">Patch #269 - 2011/02/19</a></li> 270 271 <li><a href="#xterm_268">Patch #268 - 2011/02/10</a></li> 272 273 <li><a href="#xterm_267">Patch #267 - 2010/11/20</a></li> 274 275 <li><a href="#xterm_266">Patch #266 - 2010/10/24</a></li> 276 277 <li><a href="#xterm_265">Patch #265 - 2010/10/22</a></li> 278 279 <li><a href="#xterm_264">Patch #264 - 2010/10/14</a></li> 280 281 <li><a href="#xterm_263">Patch #263 - 2010/10/13</a></li> 282 283 <li><a href="#xterm_262">Patch #262 - 2010/8/30</a></li> 284 285 <li><a href="#xterm_261">Patch #261 - 2010/6/28</a></li> 286 287 <li><a href="#xterm_260">Patch #260 - 2010/6/20</a></li> 288 289 <li><a href="#xterm_259">Patch #259 - 2010/6/5</a></li> 290 291 <li><a href="#xterm_258">Patch #258 - 2010/5/1</a></li> 292 293 <li><a href="#xterm_257">Patch #257 - 2010/4/22</a></li> 294 295 <li><a href="#xterm_256">Patch #256 - 2010/3/6</a></li> 296 297 <li><a href="#xterm_255">Patch #255 - 2010/1/21</a></li> 298 299 <li><a href="#xterm_254">Patch #254 - 2010/1/6</a></li> 300 301 <li><a href="#xterm_253">Patch #253 - 2009/12/10</a></li> 302 303 <li><a href="#xterm_252">Patch #252 - 2009/12/7</a></li> 304 305 <li><a href="#xterm_251">Patch #251 - 2009/11/11</a></li> 306 307 <li><a href="#xterm_250">Patch #250 - 2009/10/13</a></li> 308 309 <li><a href="#xterm_249">Patch #249 - 2009/10/1</a></li> 310 311 <li><a href="#xterm_248">Patch #248 - 2009/9/11</a></li> 312 313 <li><a href="#xterm_247">Patch #247 - 2009/8/30</a></li> 314 315 <li><a href="#xterm_246">Patch #246 - 2009/8/16</a></li> 316 317 <li><a href="#xterm_245">Patch #245 - 2009/8/12</a></li> 318 319 <li><a href="#xterm_244">Patch #244 - 2009/8/9</a></li> 320 321 <li><a href="#xterm_243">Patch #243 - 2009/3/28</a></li> 322 323 <li><a href="#xterm_242">Patch #242 - 2009/2/15</a></li> 324 325 <li><a href="#xterm_241">Patch #241 - 2009/1/26</a></li> 326 327 <li><a href="#xterm_240">Patch #240 - 2009/1/25</a></li> 328 329 <li><a href="#xterm_239">Patch #239 - 2009/1/8</a></li> 330 331 <li><a href="#xterm_238">Patch #238 - 2008/12/30</a></li> 332 333 <li><a href="#xterm_237">Patch #237 - 2008/09/14</a></li> 334 335 <li><a href="#xterm_236">Patch #236 - 2008/07/27</a></li> 336 337 <li><a href="#xterm_235">Patch #235 - 2008/04/20</a></li> 338 339 <li><a href="#xterm_234">Patch #234 - 2008/03/02</a></li> 340 341 <li><a href="#xterm_233">Patch #233 - 2008/02/24</a></li> 342 343 <li><a href="#xterm_232">Patch #232 - 2008/01/30</a></li> 344 345 <li><a href="#xterm_231">Patch #231 - 2008/01/05</a></li> 346 347 <li><a href="#xterm_230">Patch #230 - 2007/12/31</a></li> 348 349 <li><a href="#xterm_229">Patch #229 - 2007/8/12</a></li> 350 351 <li><a href="#xterm_228">Patch #228 - 2007/7/22</a></li> 352 353 <li><a href="#xterm_227">Patch #227 - 2007/6/27</a></li> 354 355 <li><a href="#xterm_226">Patch #226 - 2007/6/17</a></li> 356 357 <li><a href="#xterm_225">Patch #225 - 2007/3/24</a></li> 358 359 <li><a href="#xterm_224">Patch #224 - 2007/2/11</a></li> 360 361 <li><a href="#xterm_223">Patch #223 - 2006/11/30</a></li> 362 363 <li><a href="#xterm_222">Patch #222 - 2006/10/17</a></li> 364 365 <li><a href="#xterm_221">Patch #221 - 2006/10/1</a></li> 366 367 <li><a href="#xterm_220">Patch #220 - 2006/9/10</a></li> 368 369 <li><a href="#xterm_219">Patch #219 - 2006/9/4</a></li> 370 371 <li><a href="#xterm_218">Patch #218 - 2006/8/27</a></li> 372 373 <li><a href="#xterm_217">Patch #217 - 2006/8/20</a></li> 374 375 <li><a href="#xterm_216">Patch #216 - 2006/8/3</a></li> 376 377 <li><a href="#xterm_215">Patch #215 - 2006/6/19 - XFree86 378 4.6.99.2</a></li> 379 380 <li><a href="#xterm_214">Patch #214 - 2006/6/18 - XFree86 381 4.6.99.2</a></li> 382 383 <li><a href="#xterm_213">Patch #213 - 2006/4/30 - XFree86 384 4.5.99.905</a></li> 385 386 <li><a href="#xterm_212">Patch #212 - 2006/4/9 - XFree86 387 4.5.99.904</a></li> 388 389 <li><a href="#xterm_211">Patch #211 - 2006/3/19 - XFree86 390 4.5.99.902</a></li> 391 392 <li><a href="#xterm_210">Patch #210 - 2006/3/12 - XFree86 393 4.5.99.902</a></li> 394 395 <li><a href="#xterm_209">Patch #209 - 2006/2/12 - XFree86 396 4.5.99.22</a></li> 397 398 <li><a href="#xterm_208">Patch #208 - 2006/1/3 - XFree86 399 4.5.99.19</a></li> 400 401 <li><a href="#xterm_207">Patch #207 - 2005/11/13 - XFree86 402 4.5.99.16</a></li> 403 404 <li><a href="#xterm_206">Patch #206 - 2005/11/3 - XFree86 405 4.5.99.15</a></li> 406 407 <li><a href="#xterm_205">Patch #205 - 2005/9/18 - XFree86 408 4.5.99.12</a></li> 409 410 <li><a href="#xterm_204">Patch #204 - 2005/8/4 - XFree86 411 4.5.99.9</a></li> 412 413 <li><a href="#xterm_203">Patch #203 - 2005/7/6 - XFree86 414 4.5.99.7</a></li> 415 416 <li><a href="#xterm_202">Patch #202 - 2005/5/2 - XFree86 417 4.5.99.3</a></li> 418 419 <li><a href="#xterm_201">Patch #201 - 2005/4/21 - XFree86 420 4.5.99.2</a></li> 421 422 <li><a href="#xterm_200">Patch #200 - 2005/2/6 - XFree86 423 4.4.99.23</a></li> 424 425 <li><a href="#xterm_199">Patch #199 - 2005/1/17 - XFree86 426 4.4.99.22</a></li> 427 428 <li><a href="#xterm_198">Patch #198 - 2005/1/13 - XFree86 429 4.4.99.21</a></li> 430 431 <li><a href="#xterm_197">Patch #197 - 2004/11/30 - XFree86 432 4.4.99.19</a></li> 433 434 <li><a href="#xterm_196">Patch #196 - 2004/8/15 - XFree86 435 4.4.99.12</a></li> 436 437 <li><a href="#xterm_195">Patch #195 - 2004/8/8 - XFree86 438 4.4.99.11</a></li> 439 440 <li><a href="#xterm_194">Patch #194 - 2004/7/27 - XFree86 441 4.4.99.11</a></li> 442 443 <li><a href="#xterm_193">Patch #193 - 2004/7/19 - XFree86 444 4.4.99.10</a></li> 445 446 <li><a href="#xterm_192">Patch #192 - 2004/7/12 - XFree86 447 4.4.99.9</a></li> 448 449 <li><a href="#xterm_191">Patch #191 - 2004/6/6 - XFree86 450 4.4.99.7</a></li> 451 452 <li><a href="#xterm_190">Patch #190 - 2004/5/25 - XFree86 453 4.4.99.6</a></li> 454 455 <li><a href="#xterm_189">Patch #189 - 2004/5/16 - XFree86 456 4.4.99.6</a></li> 457 458 <li><a href="#xterm_188">Patch #188 - 2004/5/12 - XFree86 459 4.4.99.6</a></li> 460 461 <li><a href="#xterm_187">Patch #187 - 2004/4/27 - XFree86 462 4.4.99.4</a></li> 463 464 <li><a href="#xterm_186">Patch #186 - 2004/4/18 - XFree86 465 4.4.99.4</a></li> 466 467 <li><a href="#xterm_185">Patch #185 - 2004/3/3 - XFree86 468 4.4</a></li> 469 470 <li><a href="#xterm_184">Patch #184 - 2003/12/31 - XFree86 471 4.3.99.903</a></li> 472 473 <li><a href="#xterm_183">Patch #183 - 2003/12/26 - XFree86 474 4.3.99.903</a></li> 475 476 <li><a href="#xterm_182">Patch #182 - 2003/12/2 - XFree86 477 4.3.99.901</a></li> 478 479 <li><a href="#xterm_181">Patch #181 - 2003/10/26 - XFree86 480 4.3.99.15</a></li> 481 482 <li><a href="#xterm_180">Patch #180 - 2003/10/12 - XFree86 483 4.3.99.15</a></li> 484 485 <li><a href="#xterm_179">Patch #179 - 2003/5/21 - XFree86 486 4.3.99.5</a></li> 487 488 <li><a href="#xterm_178">Patch #178 - 2003/5/18 - XFree86 489 4.3.99.5</a></li> 490 491 <li><a href="#xterm_177">Patch #177 - 2003/3/23 - XFree86 492 4.3.0</a></li> 493 494 <li><a href="#xterm_176">Patch #176 - 2003/3/22 - XFree86 495 4.3.0</a></li> 496 497 <li><a href="#xterm_175">Patch #175 - 2003/3/9 - XFree86 498 4.3.0</a></li> 499 500 <li><a href="#xterm_174">Patch #174 - 2003/2/25 - XFree86 501 4.2.99.903</a></li> 502 503 <li><a href="#xterm_173">Patch #173 - 2003/2/6 - XFree86 504 4.2.99.902</a></li> 505 506 <li><a href="#xterm_172">Patch #172 - 2002/12/27 - XFree86 507 4.2.99.3</a></li> 508 509 <li><a href="#xterm_171">Patch #171 - 2002/12/12 - XFree86 510 4.2.99.3</a></li> 511 512 <li><a href="#xterm_170">Patch #170 - 2002/10/13 - XFree86 513 4.2.1</a></li> 514 515 <li><a href="#xterm_169">Patch #169 - 2002/10/5 - XFree86 516 4.2.1</a></li> 517 518 <li><a href="#xterm_168">Patch #168 - 2002/9/29 - XFree86 519 4.2.1</a></li> 520 521 <li><a href="#xterm_167">Patch #167 - 2002/8/24 - XFree86 522 4.2.0</a></li> 523 524 <li><a href="#xterm_166">Patch #166 - 2002/3/25 - XFree86 525 4.2.0</a></li> 526 527 <li><a href="#xterm_165">Patch #165 - 2002/1/5 - XFree86 528 4.1.0</a></li> 529 530 <li><a href="#xterm_164">Patch #164 - 2001/11/13 - XFree86 531 4.1.0</a></li> 532 533 <li><a href="#xterm_163">Patch #163 - 2001/11/04 - XFree86 534 4.1.0</a></li> 535 536 <li><a href="#xterm_162">Patch #162 - 2001/10/23 - XFree86 537 4.1.0</a></li> 538 539 <li><a href="#xterm_161">Patch #161 - 2001/10/10 - XFree86 540 4.1.0</a></li> 541 542 <li><a href="#xterm_160">Patch #160 - 2001/10/7 - XFree86 543 4.1.0</a></li> 544 545 <li><a href="#xterm_159">Patch #159 - 2001/9/19 - XFree86 546 4.1.0</a></li> 547 548 <li><a href="#xterm_158">Patch #158 - 2001/9/8 - XFree86 549 4.1.0</a></li> 550 551 <li><a href="#xterm_157">Patch #157 - 2001/6/18 - XFree86 552 4.1.0</a></li> 553 554 <li><a href="#xterm_156">Patch #156 - 2001/4/28 - XFree86 555 4.0.3</a></li> 556 557 <li><a href="#xterm_155">Patch #155 - 2001/4/20 - XFree86 558 4.0.3</a></li> 559 560 <li><a href="#xterm_154">Patch #154 - 2001/4/11 - XFree86 561 4.0.3</a></li> 562 563 <li><a href="#xterm_153">Patch #153 - 2001/3/29 - XFree86 564 4.0.3</a></li> 565 566 <li><a href="#xterm_152">Patch #152 - 2001/3/13 - XFree86 567 4.0.2</a></li> 568 569 <li><a href="#xterm_151">Patch #151 - 2001/3/10 - XFree86 570 4.0.2</a></li> 571 572 <li><a href="#xterm_150">Patch #150 - 2000/12/29 - XFree86 573 4.0.2</a></li> 574 575 <li><a href="#xterm_149">Patch #149 - 2000/12/6 - XFree86 576 4.0.1h</a></li> 577 578 <li><a href="#xterm_148">Patch #148 - 2000/10/31 - XFree86 579 4.0.1d</a></li> 580 581 <li><a href="#xterm_147">Patch #147 - 2000/10/26 - XFree86 582 4.0.1c</a></li> 583 584 <li><a href="#xterm_146">Patch #146 - 2000/9/12 - XFree86 585 4.0.1c</a></li> 586 587 <li><a href="#xterm_145">Patch #145 - 2000/9/11 - XFree86 588 4.0.1c</a></li> 589 590 <li><a href="#xterm_144">Patch #144 - 2000/8/23 - XFree86 591 4.0.1b</a></li> 592 593 <li><a href="#xterm_143">Patch #143 - 2000/8/19 - XFree86 594 4.0.1b</a></li> 595 596 <li><a href="#xterm_142">Patch #142 - 2000/8/18 - XFree86 597 4.0.1b</a></li> 598 599 <li><a href="#xterm_141">Patch #141 - 2000/8/14 - XFree86 600 4.0.1b</a></li> 601 602 <li><a href="#xterm_140">Patch #140 - 2000/7/23 - XFree86 603 4.0.1</a></li> 604 605 <li><a href="#xterm_139">Patch #139 - 2000/6/17 - XFree86 606 4.0d</a></li> 607 608 <li><a href="#xterm_138">Patch #138 - 2000/6/15 - XFree86 609 4.0c</a></li> 610 611 <li><a href="#xterm_137">Patch #137 - 2000/6/10 - XFree86 612 4.0b</a></li> 613 614 <li><a href="#xterm_136">Patch #136 - 2000/6/3 - XFree86 615 4.0b</a></li> 616 617 <li><a href="#xterm_135">Patch #135 - 2000/5/29 - XFree86 618 4.0b</a></li> 619 620 <li><a href="#xterm_134">Patch #134 - 2000/5/28 - XFree86 621 4.0b</a></li> 622 623 <li><a href="#xterm_133">Patch #133 - 2000/5/2 - XFree86 624 4.0a</a></li> 625 626 <li><a href="#xterm_132">Patch #132 - 2000/4/11 - XFree86 627 4.0a</a></li> 628 629 <li><a href="#xterm_131">Patch #131 - 2000/3/3 - XFree86 630 3.9.18b</a></li> 631 632 <li><a href="#xterm_130">Patch #130 - 2000/3/1 - XFree86 633 3.9.18a</a></li> 634 635 <li><a href="#xterm_129">Patch #129 - 2000/2/26 - XFree86 636 3.9.18a</a></li> 637 638 <li><a href="#xterm_128">Patch #128 - 2000/2/17 - XFree86 639 3.9.18</a></li> 640 641 <li><a href="#xterm_127">Patch #127 - 2000/2/12 - XFree86 642 3.9.17e</a></li> 643 644 <li><a href="#xterm_126">Patch #126 - 2000/2/8 - XFree86 645 3.9.17c</a></li> 646 647 <li><a href="#xterm_125">Patch #125 - 2000/1/31 - XFree86 648 3.9.17c</a></li> 649 650 <li><a href="#xterm_124">Patch #124 - 2000/1/27 - XFree86 651 3.9.17b</a></li> 652 653 <li><a href="#xterm_123">Patch #123 - 2000/1/22 - XFree86 654 3.9.17a</a></li> 655 656 <li><a href="#xterm_122">Patch #122 - 1999/12/28 - XFree86 657 3.9.16f</a></li> 658 659 <li><a href="#xterm_121">Patch #121 - 1999/11/14 - XFree86 660 3.9.16c</a></li> 661 662 <li><a href="#xterm_120">Patch #120 - 1999/10/28 - XFree86 663 3.9.16c</a></li> 664 665 <li><a href="#xterm_119">Patch #119 - 1999/10/16 - XFree86 666 3.9.16c</a></li> 667 668 <li><a href="#xterm_118">Patch #118 - 1999/10/5 - XFree86 669 3.9.16b</a></li> 670 671 <li><a href="#xterm_117">Patch #117 - 1999/9/29 - XFree86 672 3.9.16b</a></li> 673 674 <li><a href="#xterm_116">Patch #116 - 1999/9/25 - XFree86 675 3.9.16a</a></li> 676 677 <li><a href="#xterm_115">Patch #115 - 1999/9/18 - XFree86 678 3.9.16a</a></li> 679 680 <li><a href="#xterm_114">Patch #114 - 1999/9/15 - XFree86 681 3.9.16</a></li> 682 683 <li><a href="#xterm_113">Patch #113 - 1999/8/15 - XFree86 684 3.9.15b</a></li> 685 686 <li><a href="#xterm_112">Patch #112 - 1999/7/17 - XFree86 687 3.9Pw</a></li> 688 689 <li><a href="#xterm_111">Patch #111 - 1999/7/10 - XFree86 690 3.9Pw</a></li> 691 692 <li><a href="#xterm_110">Patch #110 - 1999/6/29 - XFree86 693 3.9Pu</a></li> 694 695 <li><a href="#xterm_109">Patch #109 - 1999/6/23 - XFree86 696 3.9Pt</a></li> 697 698 <li><a href="#xterm_108">Patch #108 - 1999/6/19 - XFree86 699 3.9Ps</a></li> 700 701 <li><a href="#xterm_107">Patch #107 - 1999/6/12 - XFree86 702 3.9Pq</a></li> 703 704 <li><a href="#xterm_106">Patch #106 - 1999/6/9 - XFree86 705 3.9Pq</a></li> 706 707 <li><a href="#xterm_105">Patch #105 - 1999/6/5 - XFree86 708 3.9Pp</a></li> 709 710 <li><a href="#xterm_104">Patch #104 - 1999/5/30 - XFree86 711 3.9Pn</a></li> 712 713 <li><a href="#xterm_103">Patch #103 - 1999/5/14 - XFree86 714 3.9Pm</a></li> 715 716 <li><a href="#xterm_102">Patch #102 - 1999/5/12 - XFree86 717 3.9Pm</a></li> 718 719 <li><a href="#xterm_101">Patch #101 - 1999/5/10 - XFree86 720 3.9Pm</a></li> 721 722 <li><a href="#xterm_100">Patch #100 - 1999/5/3 - XFree86 723 3.9Pl</a></li> 724 725 <li><a href="#xterm_99">Patch #99 - 1999/5/2 - XFree86 726 3.9Pk</a></li> 727 728 <li><a href="#xterm_98">Patch #98 - 1999/4/26 - XFree86 729 3.9Pk</a></li> 730 731 <li><a href="#xterm_97">Patch #97 - 1999/4/25 - XFree86 732 3.9Pk</a></li> 733 734 <li><a href="#xterm_96">Patch #96 - 1999/4/19 - XFree86 735 3.9Pj</a></li> 736 737 <li><a href="#xterm_95">Patch #95 - 1999/4/5 - XFree86 738 3.9Ph</a></li> 739 740 <li><a href="#xterm_94">Patch #94 - 1999/3/27 - XFree86 741 3.9Pf</a></li> 742 743 <li><a href="#xterm_93">Patch #93 - 1999/3/14 - XFree86 744 3.9Pd</a></li> 745 746 <li><a href="#xterm_92">Patch #92 - 1999/2/5 - XFree86 747 3.9Nz</a></li> 748 749 <li><a href="#xterm_91">Patch #91 - 1999/1/21 - XFree86 750 3.9Nw</a></li> 751 752 <li><a href="#xterm_90">Patch #90 - 1998/12/13 - XFree86 753 3.9Nq</a></li> 754 755 <li><a href="#xterm_89">Patch #89 - 1998/11/20 - XFree86 756 3.9Nm</a></li> 757 758 <li><a href="#xterm_88">Patch #88 - 1998/10/31 - XFree86 3.9Nk 759 and 3.3.2h</a></li> 760 761 <li><a href="#xterm_87">Patch #87 - 1998/10/21 - XFree86 3.9Nj 762 and 3.3.2f</a></li> 763 764 <li><a href="#xterm_86">Patch #86 - 1998/10/14 - XFree86 3.9Nj 765 and 3.3.2e</a></li> 766 767 <li><a href="#xterm_85">Patch #85 - 1998/10/12 - XFree86 3.9Nj 768 and 3.3.2e</a></li> 769 770 <li><a href="#xterm_84">Patch #84 - 1998/10/9 - XFree86 3.9Ni 771 and 3.3.2e</a></li> 772 773 <li><a href="#sync_83">Resync #83 - 1998/10/7 - XFree86 774 3.3.2e</a></li> 775 776 <li><a href="#xterm_83">Patch #83 - 1998/8/25 - XFree86 777 3.9Nb</a></li> 778 779 <li><a href="#xterm_82">Patch #82 - 1998/7/15 - XFree86 780 3.9Aj</a></li> 781 782 <li><a href="#xterm_81">Patch #81 - 1998/7/14 - XFree86 783 3.9Aj</a></li> 784 785 <li><a href="#xterm_80">Patch #80 - 1998/6/29 - XFree86 786 3.9Ai</a></li> 787 788 <li><a href="#xterm_79">Patch #79 - 1998/6/28 - XFree86 789 3.9Ai</a></li> 790 791 <li><a href="#xterm_78">Patch #78 - 1998/6/3 - XFree86 3.9Ah 792 and 3.3.2</a></li> 793 794 <li><a href="#xterm_77">Patch #77 - 1998/5/26 - XFree86 3.9Ah 795 and 3.3.2</a></li> 796 797 <li><a href="#xterm_76">Patch #76 - 1998/5/8 - XFree86 3.9Ah 798 and 3.3.2</a></li> 799 800 <li><a href="#xterm_75">Patch #75 - 1998/5/7 - XFree86 3.9Ah 801 and 3.3.2</a></li> 802 803 <li><a href="#xterm_74">Patch #74 - 1998/4/27 - XFree86 3.9Ag 804 and 3.3.2</a></li> 805 806 <li><a href="#xterm_73">Patch #73 - 1998/4/25 - XFree86 3.9Ag 807 and 3.3.2</a></li> 808 809 <li><a href="#xterm_72">Patch #72 - 1998/4/17 - XFree86 3.9Ag 810 and 3.3.2</a></li> 811 812 <li><a href="#xterm_71">Patch #71 - 1998/4/12 - XFree86 3.9Ag 813 and 3.3.2</a></li> 814 815 <li><a href="#xterm_70">Patch #70 - 1998/3/29 - XFree86 3.9Af 816 and 3.3.2</a></li> 817 818 <li><a href="#xterm_69">Patch #69 - 1998/3/16 - XFree86 3.9Ad 819 and 3.3.2</a></li> 820 821 <li><a href="#xterm_68">Patch #68 - 1998/3/4 - XFree86 3.9Ad 822 and 3.3.1z</a></li> 823 824 <li><a href="#xterm_67">Patch #67 - 1998/2/23 - XFree86 3.9Ad 825 and 3.3.1e</a></li> 826 827 <li><a href="#xterm_66">Patch #66 - 1998/2/16 - XFree86 3.9Ad 828 and 3.3.1d</a></li> 829 830 <li><a href="#xterm_65">Patch #65 - 1998/2/14 - XFree86 3.9Ad 831 and 3.3.1c</a></li> 832 833 <li><a href="#xterm_64">Patch #64 - 1998/2/8 - XFree86 834 3.9Ad</a></li> 835 836 <li><a href="#xterm_63">Patch #63 - 1998/2/5 - XFree86 837 3.9Ad</a></li> 838 839 <li><a href="#xterm_62">Patch #62 - 1998/1/23 - XFree86 840 3.9Ac</a></li> 841 842 <li><a href="#xterm_61">Patch #61 - 1998/1/17 - XFree86 843 3.9Ac</a></li> 844 845 <li><a href="#xterm_60">Patch #60 - 1998/1/10 - XFree86 846 3.9Ab</a></li> 847 848 <li><a href="#xterm_59">Patch #59 - 1998/1/5 - XFree86 849 3.9Ab</a></li> 850 851 <li><a href="#xterm_58">Patch #58 - 1998/1/3 - XFree86 852 3.9Ab</a></li> 853 854 <li><a href="#xterm_57">Patch #57 - 1997/12/26 - XFree86 855 3.9Aa</a></li> 856 857 <li><a href="#xterm_56">Patch #56 - 1997/11/28 - XFree86 858 3.9x</a></li> 859 860 <li><a href="#xterm_55">Patch #55 - 1997/11/25 - XFree86 861 3.9x</a></li> 862 863 <li><a href="#xterm_54">Patch #54 - 1997/10/17 - XFree86 864 3.9s</a></li> 865 866 <li><a href="#xterm_53">Patch #53 - 1997/10/12 - XFree86 867 3.9r</a></li> 868 869 <li><a href="#xterm_52">Patch #52 - 1997/9/29 - XFree86 870 3.9q</a></li> 871 872 <li><a href="#xterm_51">Patch #51 - 1997/9/15 - XFree86 873 3.9p</a></li> 874 875 <li><a href="#xterm_50">Patch #50 - 1997/8/22 - XFree86 876 3.9m</a></li> 877 878 <li><a href="#xterm_49">Patch #49 - 1997/8/10 - XFree86 879 3.9k</a></li> 880 881 <li><a href="#xterm_48">Patch #48 - 1997/7/26 - XFree86 882 3.9j</a></li> 883 884 <li><a href="#xterm_47">Patch #47 - 1997/7/13 - XFree86 885 3.9i</a></li> 886 887 <li><a href="#xterm_46">Patch #46 - 1997/7/4 - XFree86 3.9h</a></li> 888 889 <li><a href="#xterm_45">Patch #45 - 1997/7/2 - XFree86 3.9h</a></li> 890 891 <li><a href="#xterm_44">Patch #44 - 1997/6/22 - XFree86 892 3.9g</a></li> 893 894 <li><a href="#xterm_43">Patch #43 - 1997/6/10 - XFree86 895 3.9d</a></li> 896 897 <li><a href="#xterm_42">Patch #42 - 1997/6/8 - XFree86 898 3.2Xl</a></li> 899 900 <li><a href="#xterm_41">Patch #41 - 1997/5/28 - XFree86 901 3.2Xl</a></li> 902 903 <li><a href="#xterm_40">Patch #40 - 1997/5/26 - XFree86 904 3.2Xl</a></li> 905 906 <li><a href="#xterm_39">Patch #39 - 1997/5/24 - XFree86 907 3.2Xl</a></li> 908 909 <li><a href="#xterm_38">Patch #38 - 1997/5/22 - XFree86 910 3.2Xh</a></li> 911 912 <li><a href="#xterm_37">Patch #37 - 1997/5/7 - XFree86 3.9a</a></li> 913 914 <li><a href="#xterm_36">Patch #36 - 1997/1/16 - XFree86 915 3.2r</a></li> 916 917 <li><a href="#xterm_35">Patch #35 - 1997/1/7 - XFree86 3.2o</a></li> 918 919 <li><a href="#xterm_34">Patch #34 - 1997/1/5 - XFree86 3.2o</a></li> 920 921 <li><a href="#xterm_33">Patch #33 - 1996/11/24 - XFree86 922 3.2</a></li> 923 924 <li><a href="#xterm_32">Patch #32 - 1996/11/21 - XFree86 925 3.2</a></li> 926 927 <li><a href="#xterm_31">Patch #31 - 1996/11/16 - XFree86 928 3.2</a></li> 929 930 <li><a href="#xterm_30">Patch #30 - 1996/11/16 - XFree86 931 3.2</a></li> 932 933 <li><a href="#xterm_29">Patch #29 - 1996/9/15 - XFree86 934 3.1.2Gb</a></li> 935 936 <li><a href="#xterm_28">Patch #28 - 1996/8/31 - XFree86 937 3.1.2F</a></li> 938 939 <li><a href="#xterm_27">Patch #27 - 1996/8/21 - XFree86 940 3.1.2Ek</a></li> 941 942 <li><a href="#xterm_26">Patch #26 - 1996/8/20 - XFree86 943 3.1.2Ei</a></li> 944 945 <li><a href="#xterm_25">Patch #25 - 1996/8/18 - XFree86 946 3.1.2Ei</a></li> 947 948 <li><a href="#xterm_24">Patch #24 - 1996/8/11 - XFree86 949 3.1.2Ee</a></li> 950 951 <li><a href="#xterm_23">Patch #23 - 1996/7/31 - XFree86 952 3.1.2Ec</a></li> 953 954 <li><a href="#xterm_22">Patch #22 - 1996/7/26 - XFree86 955 3.1.2Ec</a></li> 956 957 <li><a href="#xterm_21">Patch #21 - 1996/7/24 - XFree86 958 3.1.2Ec</a></li> 959 960 <li><a href="#xterm_20">Patch #20 - 1996/7/24 - XFree86 961 3.1.2Ec</a></li> 962 963 <li><a href="#xterm_19">Patch #19 - 1996/7/21 - XFree86 964 3.1.2Ec</a></li> 965 966 <li><a href="#xterm_18">Patch #18 - 1996/7/18 - XFree86 967 3.1.2Ec</a></li> 968 969 <li><a href="#xterm_17">Patch #17 - 1996/7/2 - XFree86 970 3.1.2Eb</a></li> 971 972 <li><a href="#xterm_16">Patch #16 - 1996/6/25 - XFree86 973 3.1.2Ea</a></li> 974 975 <li><a href="#xterm_15">Patch #15 - 1996/5/29 - XFree86 976 3.1.2E</a></li> 977 978 <li><a href="#xterm_14">Patch #14 - 1996/5/12 - XFree86 979 3.1.2Dj</a></li> 980 981 <li><a href="#xterm_13">Patch #13 - 1996/4/23 - XFree86 982 3.1.2Df</a></li> 983 984 <li><a href="#xterm_12">Patch #12 - 1996/3/16 - XFree86 985 3.1.2Dc</a></li> 986 987 <li><a href="#xterm_11">Patch #11 - 1996/3/5 - XFree86 988 3.1.2Db</a></li> 989 990 <li><a href="#xterm_10">Patch #10 - 1996/2/14 - XFree86 991 3.1.2Cd</a></li> 992 993 <li><a href="#xterm_09">Patch #9 - 1996/2/10 - XFree86 994 3.1.2Cb</a></li> 995 996 <li><a href="#xterm_08">Patch #8 - 1996/2/9 - XFree86 997 3.1.2Cb</a></li> 998 999 <li><a href="#xterm_07">Patch #7 - 1996/1/28 - XFree86 1000 3.1.2n</a></li> 1001 1002 <li><a href="#xterm_06">Patch #6 - 1996/1/8</a></li> 1003 1004 <li><a href="#xterm_05">Patch #5 - 1996/1/7</a></li> 1005 1006 <li><a href="#xterm_04">Patch #4 - 1996/1/7</a></li> 1007 1008 <li><a href="#xterm_03">Patch #3 - 1996/1/7</a></li> 1009 1010 <li><a href="#xterm_02">Patch #2 - 1996/1/7</a></li> 1011 1012 <li><a href="#xterm_01">Patch #1 - 1996/1/6</a></li> 1013 </ul> 1014 1015 <h1><a name="xterm_367" id="xterm_367">Patch #367 - 1016 2021/03/26</a></h1> 1017 1018 <ul> 1019 <li>add <code>OSC 22</code> to allow programs to select 1020 different pointer cursor at runtime.</li> 1021 1022 <li>change configuration for <em>no-return</em> functions to 1023 use <code>_Noreturn</code> when it is available, because 1024 <code>clang --analyze</code> does not properly handle the gcc 1025 noreturn attribute.</li> 1026 1027 <li>add <code>cursorTheme</code> resource to provide a way to 1028 enable or disable the cursor theme feature.</li> 1029 1030 <li>modified <code>CopyWait</code> event retries to use shorter 1031 sleeps, to improve responsiveness (tmux #2556).</li> 1032 1033 <li>improve quoting/escaping in demo-scripts per 1034 shellcheck.</li> 1035 1036 <li>add <code>resizeByPixel</code> resource, to permit 1037 disabling window manager resizing-hints (patch by Tim 1038 Oehl).</li> 1039 1040 <li>corrected <code>printOptsImmediate</code> handling of 1041 alternate-screen (report by Abhijit Dasgupta).</li> 1042 1043 <li>update sample terminfo to more closely match ncurses.</li> 1044 1045 <li>add/improve limit-checks for Xlib calls (report by Roman 1046 Fiedler).</li> 1047 1048 <li>fix a typo in the help-message (report by Tomas 1049 Korbar).</li> 1050 </ul> 1051 1052 <h1><a name="xterm_366" id="xterm_366">Patch #366 - 1053 2021/02/10</a></h1> 1054 1055 <ul> 1056 <li>correct a compiler-warning fix in <a href= 1057 "#xterm_352">patch #352</a> which allowed sign-extension of 1058 coordinate values (report by "CismonX").</li> 1059 1060 <li>correct upper-limit for selection buffer, accounting for 1061 combining characters (report/testcase by Tavis Ormandy).</li> 1062 1063 <li>with <code>alwaysHighlight</code> true, xterm does not 1064 properly track focus. The <em>screen->select</em> 1065 <code>FOCUS</code> flag remains always on, which prevents 1066 <code>bellIsUrgent</code> from working, as the urgent 1067 <code>WM_HINT</code> flag is only set in 1068 <code>setXUrgency()</code> when the window is not focused. Fix 1069 this by updating <em>screen->select</em> in 1070 <code>unselectwindow()</code> regardless of the value of 1071 <code>always_highlight</code> (patch by Jiri Bohac).</li> 1072 1073 <li>improve fix for interaction between SRM and ENQ (report by 1074 Grant Taylor).</li> 1075 1076 <li>build-fix for <code>--with-Xaw3dxft</code>, needed when 1077 <code>--with-toolbar</code> is omitted (report by Jimmy Olgeni, 1078 Emanuel Haupt).</li> 1079 </ul> 1080 1081 <h1><a name="xterm_365" id="xterm_365">Patch #365 - 1082 2021/02/03</a></h1> 1083 1084 <ul> 1085 <li>amend fix for “word” selection in <a href= 1086 "#xterm_364">patch #364</a> to limit that to the 1087 <code>insert-selectable</code> <em>action</em>, which reads 1088 data from the screen. This restores the interactive behavior 1089 where double-clicking on a “word” would make 1090 subsequent selection extensions by words as well as suppressing 1091 some boundary-checks (report by David Wolfskill, FreeBSD 1092 #253225).</li> 1093 </ul> 1094 1095 <h1><a name="xterm_364" id="xterm_364">Patch #364 - 1096 2021/02/02</a></h1> 1097 1098 <ul> 1099 <li>add <code>-fc</code> option.</li> 1100 1101 <li>correct/improve limit-checks for SRM versus ENQ from 1102 <a href="#xterm_344">patch #344</a> (report by Tom 1103 Szilagyi).</li> 1104 1105 <li>enable <code>XftFont</code> resource in Xaw3dxft 1106 configuration (patch by Tavis Ormandy).</li> 1107 1108 <li>improve quoting/escaping in build-scripts per 1109 shellcheck.</li> 1110 1111 <li>add <code>libpcre2-posix</code> to the packages tested for 1112 <code>--with-pcre2</code> option, needed with Fedora (report by 1113 Tomas Korbar).</li> 1114 1115 <li>correct a typo in manual page, and note that 1116 <code>KeepClipboard</code> may not be compiled-in (report/patch 1117 by Sean C Farley).</li> 1118 1119 <li>corrected boundary-checks for “word” selection 1120 used in <code>on<em>N</em>Clicks</code> resources (report by 1121 Tavis Ormandy).</li> 1122 1123 <li>update to autoconf-2.52-20210101, to improve shellcheck 1124 warnings.</li> 1125 1126 <li>improve configure check for desktop categories.</li> 1127 </ul> 1128 1129 <h1><a name="xterm_363" id="xterm_363">Patch #363 - 1130 2020/12/26</a></h1> 1131 1132 <ul> 1133 <li>disable groff hyphenation in generated html when using 1134 man2html.</li> 1135 1136 <li>change SCS “<code>&4</code>” Cyrillic to 1137 non-NRCS, per VT520 manual.</li> 1138 1139 <li>amend fix for SCS in <a href="#xterm_198">patch #198</a> to 1140 remove <code>DEL</code> rather than converting it to a space 1141 (report by Thomas Wolff).</li> 1142 1143 <li>modify state transitions for selecting character sets to 1144 eliminate an ambiguity between the “A” used in 1145 VT220 versus VT320.</li> 1146 1147 <li>improve error recovery when selecting characters by 1148 resetting to US ASCII when no suitable encoding is found, e.g., 1149 attempting to use an NRCS sequence when NRCS is not 1150 enabled.</li> 1151 1152 <li>turn off hyphenation in “<code>.txt</code>” 1153 conversion, prompted by groff changes.</li> 1154 1155 <li>add VT5xx ISO Latin-2 (prompted by discussion with Thomas 1156 Wolff).</li> 1157 1158 <li>amend change from <a href="#xterm_361">patch #361</a> to 1159 event-handling in <code>CopyWait</code> to handle active-icon 1160 as a special case (Debian #975687).</li> 1161 1162 <li>add call to <code>loadColorTable</code> to get the visual 1163 information needed to decode BE RGBA32 color format (patch by 1164 Leandro Lupori).</li> 1165 1166 <li>modify the resource-parsing for 1167 <code>disallowedPasteControls</code> and similar lists of 1168 names/numbers to recognize “~;” (tilde) for 1169 cancelling a given name/number.</li> 1170 1171 <li>add ENQ, EOT and NUL to default for 1172 <code>disallowedPasteControls</code>.</li> 1173 1174 <li>change default for <code>disallowedPasteControls</code> to 1175 omit the tab character (suggested by Harald Dunkel).</li> 1176 1177 <li>fix swapped height/width in <code>regisScreenSize</code> 1178 and <code>maxGraphicSize</code> resources using "auto" value, 1179 from <a href="#xterm_314">patch #314</a> (report by Anton 1180 Lavrentiev)</li> 1181 1182 <li>revise <a href="#xterm_362">patch #362</a> change for 1183 shift-modifier versus mouse protocol and select/paste by adding 1184 resource <code>shiftEscape</code>, which can be enabled via a 1185 control sequence (prompted by discussion with Matthijs van 1186 Duin).</li> 1187 1188 <li>simplify/improve ifdef in trace code for using a separate 1189 set of files for each run of xterm.</li> 1190 1191 <li>add options <code>-r</code> and <code>-t</code> to 1192 <code>vttests/query-color.pl</code> to show the 6-digit RGB 1193 code and actual colors.</li> 1194 1195 <li>add <code>nel</code> to <code>xterm-basic</code> 1196 terminfo.</li> 1197 1198 <li>alter <code>vttests/modify-keys.pl</code> to omit HTML 1199 reference links to the modified-keys table where no keycode was 1200 available.</li> 1201 </ul> 1202 1203 <h1><a name="xterm_362" id="xterm_362">Patch #362 - 1204 2020/11/11</a></h1> 1205 1206 <ul> 1207 <li>cleanup of calls to <code>free</code>, removing checks for 1208 null (Walter Harms).</li> 1209 1210 <li>improved mouse-button reporting (prompted by discussion 1211 with Stephane Chazelas) 1212 <ul> 1213 <li>narrow the scope of the change for shift-key in 1214 <a href="#xterm_361">patch #361</a> to make it apply only 1215 when the <code>modifyOtherKeys</code> resource is set to 2 1216 (i.e., “program mode”). Also, when checking the 1217 shift-key, ignore modifiers other than shift, control and 1218 “meta”</li> 1219 1220 <li>use the alt/meta modifier information obtained in 1221 <code>VTInitModifiers</code> to replace a hard-coded 1222 <em>mod1</em> used to detect “Meta” for 1223 mouse-button responses.</li> 1224 </ul> 1225 </li> 1226 1227 <li>reduce <code>SIGWINCH</code>'s sent to the client by 1228 filtering out duplicates.</li> 1229 1230 <li>improve display when <code>scaleHeight</code> is greater 1231 than 1: 1232 <ul> 1233 <li>the text-cursor is vertically-centered on the current 1234 line, rather than only extending below the current line 1235 (report by Manu Chaturvedi).</li> 1236 1237 <li>the built-in line-drawing characters extend to the 1238 scaled cell-height.</li> 1239 </ul> 1240 </li> 1241 1242 <li>fill-in special case for motion-events to match the changes 1243 for shift-key in pointer-button events from <a href= 1244 "#xterm_361">patch #361</a>.</li> 1245 </ul> 1246 1247 <h1><a name="xterm_361" id="xterm_361">Patch #361 - 1248 2020/10/14</a></h1> 1249 1250 <ul> 1251 <li>treat the return value of <code>strerror</code> as readonly 1252 (patch by Philipp Klaus Krause).</li> 1253 1254 <li>modify event-handling in <code>CopyWait</code> to work 1255 around hanging while writing large amounts of text to an active 1256 icon and at the same time iconifying/deiconifying (report by 1257 Dave Kemper).</li> 1258 1259 <li>initialize double-buffer for active-icon window.</li> 1260 1261 <li>improve manual page description of scrollbar resources 1262 (report by Brian Lindholm).</li> 1263 1264 <li>correct ifdef for menu entry for active-icon, when 1265 initializing it with toolbar configuration.</li> 1266 1267 <li>add preprocessor option to makefile to set internal 1268 definition of pixmaps directory to match the 1269 install-configuration (FreeBSD #250036).</li> 1270 1271 <li>cleanup of calls to <code>free</code>, removing checks for 1272 null (Walter Harms).</li> 1273 1274 <li>add fallback actions <code>pointer-button</code> and 1275 <code>pointer-motion</code> which handle events for the mouse 1276 control-sequences protocol if the <em>select</em>-related 1277 translations are omitted with 1278 <code>*omitTranslation:select</code> (prompted by discussion 1279 with "Ergus")</li> 1280 1281 <li>amend rule for using shift-key to override mouse-protocol 1282 for select/paste to limit that feature to mouse-buttons which 1283 are actually bound to select/paste actions (prompted by 1284 discussion with "Ergus").</li> 1285 1286 <li>corrected mapping in special case for repainting wrap-marks 1287 when viewing the scrollback area.</li> 1288 1289 <li>use separate <em>GCs</em> for <code>showWrapMarks</code> 1290 feature, to work around cursor coloring change in <a href= 1291 "#xterm_345">patch #345</a> (report by Paulo Silva de 1292 Alíbano).</li> 1293 </ul> 1294 1295 <h1><a name="xterm_360" id="xterm_360">Patch #360 - 1296 2020/09/20</a></h1> 1297 1298 <ul> 1299 <li>mention <code>decGraphicsID</code> in 1300 <code>ctlseqs.ms</code> (suggested by Thomas Wolff).</li> 1301 1302 <li>modify pixel-coordinate mouse response to use as origin the 1303 VT100-window rather than the underlying widget, which includes 1304 the scrollbar (report by Thomas Wolff).</li> 1305 1306 <li>add configure option <code>--disable-print-graphics</code> 1307 (Ross Combs).</li> 1308 1309 <li>add <code>test_ptydata</code> to “make check” 1310 rule.</li> 1311 1312 <li>minor fixes for <code>ctlseqs.ms</code> (report by 1313 Jean-Marc Bourguet).</li> 1314 1315 <li>minor fixes for manpage style (report/patch by 1316 "a1346054").</li> 1317 1318 <li>correct cleanup from switch between italics/normal font in 1319 the show/hide cursor functions (report/testcase by Peter 1320 Fabinski).</li> 1321 1322 <li>integrated patch by Ross Combs: 1323 <ul> 1324 <li>internal renaming of GraphicsID symbols, for 1325 readability.</li> 1326 1327 <li>adjust logic for VT125, treating it as a ReGIS 1328 terminal.</li> 1329 </ul> 1330 </li> 1331 1332 <li>update configure macros, for compiler-warning fixes.</li> 1333 1334 <li>integrated patch by Ross Combs: 1335 <ul> 1336 <li>add control sequence modes for graphics printing.</li> 1337 1338 <li>improve conversion to bitmaps for TrueType fonts in 1339 ReGIS</li> 1340 1341 <li>add <code>font7</code> resource, for an 1342 “enormous” bitmap font.</li> 1343 1344 <li>do not reset graphics in a soft-reset.</li> 1345 1346 <li>add <code>pointerFont</code> resource, and 1347 <code>-pf</code> command-line option.</li> 1348 </ul> 1349 </li> 1350 1351 <li>improve typography of manual page (patch by Branden 1352 Robinson).</li> 1353 1354 <li>amend <a href="#xterm_359">patch #359</a> change to 1355 <code>df-install.in</code> to ignore a command-line assignment 1356 to <code>DESTDIR</code> if followed by an explicit 1357 <code>--dir</code> (report by Sven Joachim).</li> 1358 </ul> 1359 1360 <h1><a name="xterm_359" id="xterm_359">Patch #359 - 1361 2020/08/17</a></h1> 1362 1363 <ul> 1364 <li>add special case in <code>WriteText</code> to allow colors 1365 8-15 to override <code>colorBDMode</code> (patch by Ingo 1366 Brückl).</li> 1367 1368 <li>add <code>utf8Weblike</code> resource, to provide an 1369 alternate scheme for handling ill-formed UTF-8 sequences 1370 (adapted from patch by Dan Gohman).</li> 1371 1372 <li>improve computation for the number of lines needed to 1373 scroll-up a SIXEL graphic (report/patch by Ben Wong).</li> 1374 1375 <li>correct manpage description for default value of 1376 <code>disallowWindowOps</code> from changes in <a href= 1377 "#xterm_331">xterm #331</a> (patch by Ben Wong).</li> 1378 1379 <li>correct a loop starting-point in 1380 <code>refresh_graphics</code> from optimization in <a href= 1381 "#xterm_358">patch #358</a> changes (report by Ben Wong).</li> 1382 1383 <li>add a new mouse mode 1016, which uses the same format as 1384 mode 1006, but sends the mouse's position in pixels (suggested 1385 by Igor van den Hoven).</li> 1386 1387 <li>fix an issue from <a href="#xterm_338">patch #338</a> 1388 changes where only the first selection buffer specified in the 1389 request would be updated using OSC 52 (patch by Michael 1390 Gulick).</li> 1391 1392 <li>modify makefile/scripts to allow <code>DESTDIR</code> to 1393 prefix the target directory for desktop-file-install (report by 1394 Fred Heitkamp).</li> 1395 1396 <li>enable SIXEL feature by default.</li> 1397 1398 <li>update config.guess, config.sub</li> 1399 </ul> 1400 1401 <h1><a name="xterm_358" id="xterm_358">Patch #358 - 1402 2020/07/12</a></h1> 1403 1404 <ul> 1405 <li>correct logic for decodeTerminalID changes in <a href= 1406 "#xterm_357">patch #357</a> (report by "Chartreuse").</li> 1407 1408 <li>modify makefile to use <code>plink.sh</code> when linking 1409 test-programs, to fix build when using pcre (report by H Merijn 1410 Brand)</li> 1411 1412 <li>build-fix for test_ptydata program (patch by H Merijn 1413 Brand)</li> 1414 </ul> 1415 1416 <h1><a name="xterm_357" id="xterm_357">Patch #357 - 1417 2020/07/05</a></h1> 1418 1419 <ul> 1420 <li>several minor optimizations for the ReGIS and SIXEL 1421 features, improving performance by 10%.</li> 1422 1423 <li>add resource <code>decGraphicsID</code> to allow displaying 1424 graphics when the emulation level would ordinarily disallow 1425 this (prompted by discussion with Thomas Wolff).</li> 1426 1427 <li>add control sequences for fast switching of color palettes: 1428 <code>XTPUSHCOLORS</code>, <code>XTPOPCOLORS</code>, 1429 <code>XTREPORTCOLORS</code></li> 1430 1431 <li>amend change for soft-hyphen from <a href= 1432 "#xterm_328">patch #328</a> to avoid stripping 1433 replacement-characters which would be shown with malformed or 1434 overlong UTF-8 input.</li> 1435 1436 <li>corrected an error-handling case in 1437 <code>decodeUtf8</code>, matching a similar fix in <a href= 1438 "#xterm_268">patch #268</a> (report/patch by Dan Gohman).</li> 1439 1440 <li>add a test-driver for <code>ptydata.c</code></li> 1441 1442 <li>minor cleanup of macros (adapted from patch by Walter 1443 Harms).</li> 1444 1445 <li>fix some errata in <code>ctlseqs.ms</code> (report by 1446 Thomas Wolff).</li> 1447 1448 <li>allow immediate repaint-on-palette-changed if 1449 double-buffering is enabled.</li> 1450 1451 <li>deprecate codes 10/11 in sgr push controls, changing those 1452 to 30/31, to avoid confusion with sgr 10-19.</li> 1453 1454 <li>modify <code>SGR</code> parameter handling to stop if an 1455 unrecognized parameter is encountered, to guard against 1456 malformed or nonstandard sequences (report by Bram 1457 Moolenaar).</li> 1458 1459 <li>modify <code>DECERA</code> color for consistency with other 1460 erasures/clearing (report by Thomas Wolff).</li> 1461 1462 <li><code>ECH</code> should not be masked by 1463 <code>DECSCA</code> (report by Thomas Wolff).</li> 1464 1465 <li>extend <code>DECFRA</code> and <code>REP</code> to accept 1466 any “graphic” character rather than just Latin1, 1467 etc. (report by Thomas Wolff).</li> 1468 1469 <li>add <code>-C</code> option to 256colors2.pl and 1470 88colors2.pl, to demonstrate mixed semicolon/colon separators 1471 which are implied by ECMA-48.</li> 1472 1473 <li>update sample terminfo to reflect the documentation 1474 improvements.</li> 1475 1476 <li>update description of 88/256/direct color in 1477 <code>ctlseqs.ms</code> to point out that using semicolons is a 1478 deprecated legacy feature, and standard terminal applications 1479 should use colons (prompted by discussion with Bram 1480 Moolenaar).</li> 1481 1482 <li>modify configure-check for <code>tgetent</code> to 1483 conditionally include <code>termcap.h</code>, enabling 1484 configuration using <code>clang</code>'s pedantic-errors option 1485 (report by Dennis Clarke). See <a href= 1486 "https://invisible-island.net/ncurses/man/curs_termcap.3x.html#h3-Other-Compatibility"> 1487 <em>Other Compatibility</em></a> in ncurses' 1488 <em>curs_termcap(3X)</em>.</li> 1489 1490 <li>remove some unnecessary pointer checks (patch by Walter 1491 Harms).</li> 1492 1493 <li>accept terminal-id and add DA response for VT131, 1494 VT132.</li> 1495 </ul> 1496 1497 <h1><a name="xterm_356" id="xterm_356">Patch #356 - 1498 2020/05/02</a></h1> 1499 1500 <ul> 1501 <li>revise fix for Debian #954730, which interfered with wheel 1502 mouse events (report by Gabriele Balducci).</li> 1503 </ul> 1504 1505 <h1><a name="xterm_355" id="xterm_355">Patch #355 - 1506 2020/05/01</a></h1> 1507 1508 <ul> 1509 <li>revise fix for Debian #954730, which interfered with wheel 1510 mouse events (report by Henri Menke).</li> 1511 1512 <li>fix typos in documentation (reports by Stephen Hurd, Stefan 1513 Assmann).</li> 1514 1515 <li>add mapping for <code>decTerminalID</code> for 1516 “100” overlooked in <a href="#xterm_354">patch 1517 #354</a>.</li> 1518 1519 <li>update tables in wcwidth.c based on Unicode 13.0.0</li> 1520 1521 <li>build-fix for “make check” when building 1522 out-of-tree (report by Sven Joachim).</li> 1523 </ul> 1524 1525 <h1><a name="xterm_354" id="xterm_354">Patch #354 - 1526 2020/04/26</a></h1> 1527 1528 <ul> 1529 <li>work around performance problems of 1530 <code>XDrawImageString</code> and 1531 <code>XDrawImageString16</code> functions (Debian 1532 #954845).</li> 1533 1534 <li>add a control sequence which reports xterm's version (patch 1535 by Nicholas Marriott, mintty #881).</li> 1536 1537 <li>temporarily set numeric locale category to "C" when parsing 1538 resources, so that <code>scaleHeight</code> and 1539 <code>faceSize</code> settings do not depend on locale (Debian 1540 #820803).</li> 1541 1542 <li>improve DA/DA2 response by ensuring that the 1543 <code>decTerminalID</code> maps to one of the known 1544 identifiers, as well as providing DA2 response for VT241 and 1545 VT382.</li> 1546 1547 <li>terminfo improvements: 1548 <ul> 1549 <li>add (my) comments from ncurses which explain the keypad 1550 layouts.</li> 1551 1552 <li>add <code>vt52+keypad</code> from ncurses</li> 1553 1554 <li>use improved <code>xm</code> example for 1555 <code>xterm+x11mouse</code>, <code>xterm+sm+1006</code> 1556 from ncurses 6.2 terminfo.src</li> 1557 </ul> 1558 </li> 1559 1560 <li>two fixes for left/right wheel mouse event reporting 1561 (Debian #954730): 1562 <ul> 1563 <li>filter identical button-events</li> 1564 1565 <li>correct order of button-range versus protocol type (see 1566 <a href="#xterm_345">patch #345</a>)</li> 1567 </ul> 1568 </li> 1569 1570 <li>change “make check” makefile-rule to use 1571 test-drivers for charclass and wcwidth data.</li> 1572 1573 <li>quiet “did not find a usable <em>xxx</em> TrueType 1574 font” warnings by making <code>fontWarnings</code> apply 1575 to these messages (report by Jim Rees).</li> 1576 1577 <li>improve reinitialization of parameter list (report/testcase 1578 by James Holderness).</li> 1579 1580 <li>temporarily set numeric locale category to "C" when 1581 formatting SVG or XHTML screendumps, to make the radix 1582 separator used in RGB values consistent (adapted from patch by 1583 George Kouryachy).</li> 1584 1585 <li>add resource <code>forceXftHeight</code> to control whether 1586 workaround from Debian #880407 is used.</li> 1587 1588 <li>apply updated ascent/descent in workaround from Debian 1589 #880407 to fix a 1-pixel gap in built-in vertical lines 1590 (report/testcase by Stefan Assmann).</li> 1591 1592 <li>improve round-off of scaling for built-in line-drawing 1593 (prompted by discussion with Stefan Assmann).</li> 1594 1595 <li>adjust fonts in svg-icon files to accommodate reduced 1596 functionality of new pango (report/analysis by YOKOTA 1597 Hiroshi).</li> 1598 1599 <li>improve configure check for X Toolkit library.</li> 1600 1601 <li>correct Y-coordinate transformation in 1602 <code>ClearCurBackground</code>, overlooked in changes for 1603 <a href="#xterm_334">patch #334</a> (report/analysis by Chuck 1604 Silvers).</li> 1605 1606 <li>remove <code>--vendor</code> option from test-packages' 1607 install of desktop files; the feature is badly broken in 1608 <em>gnome-shell</em>.</li> 1609 1610 <li>modify <code>uxterm</code> to make it possible to select 1611 nonstandard locale <em>C.UTF-8</em>, e.g, if the user's locale 1612 is set to “C” (Debian #940626).</li> 1613 1614 <li>re-save/tweak “.svg” icon-files to work around 1615 breakage in toolset since the files were created in <a href= 1616 "#xterm_283">patch #283</a>.</li> 1617 </ul> 1618 1619 <h1><a name="xterm_353" id="xterm_353">Patch #353 - 1620 2020/02/01</a></h1> 1621 1622 <ul> 1623 <li>amend change in <a href="#xterm_352">patch #352</a> for 1624 button-events to fix a case where some followup events were not 1625 processed soon enough (report/patch by Jimmy Aguilar 1626 Mena).</li> 1627 1628 <li>handle <em>MappingNotify</em> X event, to improve recovery 1629 when switching keyboard configurations using 1630 <code>xkbcomp</code> (prompted by discussion with Frank Mosch, 1631 Debian #661295). There is more work needed here, possibly in 1632 the X libraries.</li> 1633 1634 <li>improve discussion of mouse-mode in <code>ctlseqs.ms</code> 1635 (suggested by Igor van den Hoven).</li> 1636 1637 <li>further improve checks for Xft <em>max-advance-width</em> 1638 to take into account fonts which use two cells for ambiguous 1639 width characters. Also improve the time used for these checks 1640 (reports by Yuri Pankov, Frank Mosch).</li> 1641 1642 <li>fix a few spelling errors reported by codespell (report by 1643 Jens Schleusener).</li> 1644 1645 <li>modify <code>run-tic.sh</code> to prefer development 1646 version of ncurses since changes to terminfo file in <a href= 1647 "#xterm_345">patch #345</a> rely upon bug-fixes in ncurses 1648 (prompted by discussion with Will Senn).</li> 1649 </ul> 1650 1651 <h1><a name="xterm_352" id="xterm_352">Patch #352 - 1652 2020/01/16</a></h1> 1653 1654 <ul> 1655 <li>adjust fontsize data to handle a minor inconsistency from 1656 recent Xft versions (Debian #880407, adapted from patch by 1657 Vincent Lefèvre).</li> 1658 1659 <li>add a table to the manual page description of 1660 <code>forceBoxChars</code> to alert the reader to the special 1661 characters aside from “line-drawing” which are 1662 drawn directly when this resource is set (Debian #931305).</li> 1663 1664 <li>improve <code>checkXft</code> logic which attempts to 1665 detect fonts whose <em>max-advance-width</em> is inconsistent 1666 with the actual glyph widths. For some fonts, it is necessary 1667 to check additional characters (report/analysis by Jan 1668 Engelhardt).</li> 1669 1670 <li>improve configure-checks for X headers and libraries on 1671 recent MacOS, which has moved those files under 1672 <code>/usr/X11</code>.</li> 1673 1674 <li>improve portability of iconify/deiconify feature by taking 1675 into account some window managers which manipulate the EWMH 1676 <code>_NET_WM_STATE</code> property, adding/removing 1677 <code>_NET_WM_STATE_HIDDEN</code> rather than actually 1678 <em>minimizing</em> the window (prompted by discussion with 1679 Jörg Breitbart).</li> 1680 1681 <li>improve workaround from <a href="#xterm_287">patch #287</a> 1682 for the <code>-iconic</code> option when configured with 1683 toolbar by postponing the extra request for minimizing the 1684 window to the end of menu-initialization.</li> 1685 1686 <li>modify <code>xevents</code> special-case for mouse-events 1687 to include button-events so that the meta key by itself can 1688 generate button-events (report/analysis by Mattias 1689 Engdegård).</li> 1690 1691 <li>amend SGR-stack change from <a href="#xterm_348">patch 1692 #348</a> to not associate bold attribute with background color 1693 (report by Nicholas Marriott).</li> 1694 1695 <li>fix copy/paste error in manual page (patch by Larry 1696 Hynes).</li> 1697 1698 <li>add definitions in <code>xterm_io.h</code> so that GNU/Hurd 1699 will use <code>posix_openpty</code> (patch by Samuel 1700 Thibault).</li> 1701 1702 <li>build-fix in debug-tracing, for <code>esctest</code>.</li> 1703 1704 <li>updated autoconf macros</li> 1705 1706 <li>update config.guess</li> 1707 </ul> 1708 1709 <h1><a name="xterm_351" id="xterm_351">Patch #351 - 1710 2019/11/17</a></h1> 1711 1712 <ul> 1713 <li>correct logic in <code>property_to_string</code> for 1714 deciding when to fallback from UTF-8 decoding to ISO-8859-1 1715 decoding, broken in <a href="#xterm_350">xterm #350</a> 1716 (FreeBSD #241961).</li> 1717 1718 <li>add <code>-report-icons</code> to help-message.</li> 1719 1720 <li>improved autoconf macros: 1721 <ul> 1722 <li><code>CF_ADD_LIBS</code>: the change to filter out 1723 duplicates caused this to append rather than prepend. 1724 revise to fix that.</li> 1725 1726 <li><code>CF_GCC_VERSION</code> and 1727 <code>CF_GCC_WARNINGS</code>: move checks to distinguish 1728 icc/clang from gcc from the macro which handles the 1729 --enable-warnings option, to make this work 1730 without-warnings for the inline-checks.</li> 1731 </ul> 1732 </li> 1733 1734 <li>update config.guess, config.sub</li> 1735 1736 <li>correct status in <code>XTGETXRES</code> replies when the 1737 resource was not found.</li> 1738 1739 <li>fix some gcc, cppcheck, clang and coverity warnings.</li> 1740 1741 <li>guard call to <code>RequestResize</code> from the 1742 struct-notify event handler to prevent recursion in the 1743 Xft+buffered workaround in some cases when doing manual 1744 resizing rather than resizing via escape sequences (reports by 1745 Stefan Assmann, Mike Thornburg).</li> 1746 1747 <li>amend the workaround for Xft+buffered blanking by moving 1748 the switch to bitmap-fonts to account for differences in font 1749 metrics between bitmap- and TrueType-fonts (report by Stefan 1750 Assmann).</li> 1751 1752 <li>improve the note on the <code>xterm-rep</code> terminfo 1753 entry (prompted by discussion with Sven Joachim).</li> 1754 </ul> 1755 1756 <h1><a name="xterm_350" id="xterm_350">Patch #350 - 1757 2019/11/02</a></h1> 1758 1759 <ul> 1760 <li>modify html/svg dump to not ignore zero'd/blank cells.</li> 1761 1762 <li>align terminfo file with ncurses, e.g., add 1763 <code>xterm+osc104</code> block.</li> 1764 1765 <li>improve discussion of <code>modifyOtherKeys</code> in 1766 manual page and in <code>ctlseqs.ms</code>.</li> 1767 1768 <li>add <code>vttests/modify-keys.pl</code> script to 1769 illustrate the <code>modifyOtherKeys</code> resource (prompted 1770 by discussion with Bram Moolenaar).</li> 1771 1772 <li>various improvements to <code>ctlseqs.ms</code>, as part of 1773 autogenerating links for the website.</li> 1774 1775 <li>update manual page default for <code>saveLines</code> 1776 resource default value (Branden Robinson, Debian #913815).</li> 1777 1778 <li>add command-line option <code>-report-xres</code> to show 1779 the values of the VT100 widget X resources when initialization 1780 is complete.</li> 1781 1782 <li>add a control sequence which, like tcap-query, allows an 1783 application to inspect most X resource settings of the VT100 1784 widget.</li> 1785 1786 <li>adjust some optional features to enable them in the imake 1787 configuration as they would be by default via the configure 1788 script.</li> 1789 1790 <li>add null-pointer checks to improve error recovery when 1791 bitmap fonts are missing or corrupt (report by Jonne 1792 Ransijn).</li> 1793 1794 <li>correct the condition for deleting the EWMH window-title 1795 property, i.e., if UTF-8 titles are disabled, rather than if an 1796 update to the EWHM property found no change (report by Sven 1797 Joachim).</li> 1798 1799 <li>build-fix for the case when configure 1800 <code>--enable-trace</code> is used without 1801 <code>--enable-warnings</code> (report by Sven Joachim).</li> 1802 1803 <li>fix a few minor bugs found with Coverity.</li> 1804 1805 <li>add a check in <code>property_to_string</code> to avoid 1806 translating <code>UTF8_STRING</code> or 1807 <code>COMPOUND_TEXT</code> into Latin-1 when UTF-8 encoding is 1808 active, e.g., when pushing onto the title-stack while switching 1809 to the alternate screen.</li> 1810 1811 <li>build-fix for the <code>--disable-doublechars</code> 1812 configure option (report by Brian Lindholm).</li> 1813 </ul> 1814 1815 <h1><a name="xterm_349" id="xterm_349">Patch #349 - 1816 2019/09/22</a></h1> 1817 1818 <ul> 1819 <li>add graphic context to support bold+italics (patch by Quinn 1820 Strahl).</li> 1821 1822 <li>document window properties in the manual page.</li> 1823 1824 <li>improve title-string feature: 1825 <ul> 1826 <li>if any of <code>allowC1Printable</code>, 1827 <code>utf8Title</code> or <code>titleModes</code> hint that 1828 an application might send a title-string encoded in UTF-8, 1829 check if that is the case, and if it is recodable into 1830 ISO-8859-1, use that for the ICCCM-style title.</li> 1831 1832 <li>check if the title given by a control sequence happens 1833 to be already encoded in UTF-8, to avoid double-encoding 1834 (FreeBSD #240393).</li> 1835 1836 <li>Make <code>sameName</code> resource work for the EWMH 1837 titles.</li> 1838 1839 <li>Modify menu-state of <code>utf8Title</code> to be 1840 consistent with the <code>utf8</code> source, i.e., setting 1841 the EWMH properties automatically when UTF-8 is 1842 active.</li> 1843 </ul> 1844 </li> 1845 1846 <li>reorganize text-drawing to make it possible to investigate 1847 using Xft to implement VT100-style double-sized characters. 1848 While doing this, made a workaround for apparent Xft bug which 1849 loses its drawable state when switching from 132 to 80 1850 columns.</li> 1851 1852 <li>improve font-warning messages by showing which are 1853 <em>derived</em> rather than directly from resource settings 1854 (suggested by Tomas Korbar). Also filter repeated font-warning 1855 messages, to accommodate broken X configurations.</li> 1856 1857 <li>fix an inconsistency between failure to load derived wide 1858 font versus failure to load derived wide-bold font (Redhat 1859 #1679790). That relies upon the “:unscaled” 1860 property which is broken in some distributions (however, recent 1861 Debian and the BSDs such as MacOS work).</li> 1862 1863 <li>updated autoconf-252 to check X11R7 include/lib directories 1864 found on some older configurations.</li> 1865 1866 <li>set a graphic-context for border when double-buffering is 1867 active; to prevent the border color from changing when 1868 switching to reverse-video.</li> 1869 1870 <li>build-fix for <code>--disable-ziconbeep</code>, which 1871 conflicted with the new double-buffer configuration (report by 1872 Brian Lindholm).</li> 1873 1874 <li>fix loop-limit for lookup of <code>fullscreen</code> 1875 resource broken in <a href="#xterm_347">xterm #347</a> (report 1876 by Scott Bertilson).</li> 1877 </ul> 1878 1879 <h1><a name="xterm_348" id="xterm_348">Patch #348 - 1880 2019/07/22</a></h1> 1881 1882 <ul> 1883 <li>update window-manager hints when exiting Tek4014 mode 1884 (Debian #932569, patch by Jonathan Irwin).</li> 1885 1886 <li>fix a misformatted printf in 1887 <code>report-sgr.pl</code>.</li> 1888 1889 <li>add configure check for termios types, to improve 1890 compiler-warnings.</li> 1891 1892 <li>ensure that when resetting margins, to also reset 1893 <code>DECLRMM</code>. This affects <code>DECCOLM</code>, 1894 <code>DECALN</code> (although DEC STD 070 mentions only 1895 top/bottom margins), and <code>DECSTR</code>.</li> 1896 1897 <li>corrected order of reset/move when setting 1898 <code>DECCOLM</code>, and make it more consistent by always 1899 resetting margins, rather than only when the mode is changed 1900 (report by James Holderness).</li> 1901 1902 <li>compile-in double-buffer support by default, changing the 1903 configure option to set the default resource value for 1904 <code>buffered</code> to true or false.</li> 1905 1906 <li>take in account the reverse-video state when computing the 1907 filler-color used when clearing the screen in double-buffering 1908 configuration.</li> 1909 1910 <li>correct logic for filtering scrollbar-updates when 1911 <code>buffered</code> resource is compiled-in but not enabled 1912 (report by Paul Lampert).</li> 1913 1914 <li>improve state saved/restored for cursor-save and SGR stack 1915 features.</li> 1916 1917 <li>improve description of 1006 and 1005 mouse modes, to avoid 1918 implying that they use character-parameters (report by Bryan 1919 Christ).</li> 1920 1921 <li>explain in <code>ctlseqs.ms</code> that some of the numeric 1922 keypad keys were xterm extensions rather than VT100/VT220 1923 terminal features (prompted by discussion with Thomas 1924 Wolff).</li> 1925 1926 <li>explain in <code>ctlseqs.ms</code> how the DEC windowing 1927 extension is supported by xterm.</li> 1928 1929 <li>add 28 rectangular editing to the primary response 1930 (suggested by Thomas Wolff).</li> 1931 1932 <li>fix a typo, improve wording in <code>ctlseqs.ms</code> 1933 (Thomas Wolff).</li> 1934 1935 <li>fix internal column-parameter when <code>SL</code> or 1936 <code>SR</code> is used with left/right margins (patch by 1937 Thomas Wolff).</li> 1938 1939 <li>fix off-by-one in VT52 graphics character mapping (patch by 1940 Thomas Wolff).</li> 1941 1942 <li>use <code>_X_UNUSED</code>, etc., when available as a 1943 fallback for <code>GCC_UNUSED</code>, etc., to reduce compiler 1944 warnings when building with <code><em>imake</em></code>.</li> 1945 1946 <li>update config.sub</li> 1947 </ul> 1948 1949 <h1><a name="xterm_347" id="xterm_347">Patch #347 - 1950 2019/06/30</a></h1> 1951 1952 <ul> 1953 <li>fix a few minor bugs found with Coverity.</li> 1954 1955 <li>improve double-buffering for scrollbars combined with 1956 scrolled text; add <code>bufferedFPS</code> resource to control 1957 the maximum rate of screen updates (report by Mike 1958 Thornburg).</li> 1959 1960 <li>improve fixes for <code>DECCRA</code> handling of 1961 double-width characters (patch by Martin Hostettler).</li> 1962 1963 <li>improve discussion of ECMA-48's typographical error for 1964 <code>SD</code> in <code>ctlseqs.ms</code> (prompted by report 1965 by Martin Hostettler).</li> 1966 1967 <li>correct off-by-one in parameter limit-check for 1968 <code>DECCRA</code> (report by Martin Hostettler).</li> 1969 1970 <li>modify <code>saveCellData</code> to handle case where 1971 double-width character is partially copied; that should be 1972 blanked (report/testcase by Thomas Wolff).</li> 1973 1974 <li>add resource <code>buffered</code> to allow 1975 enabling/disabling double-buffered mode.</li> 1976 1977 <li>two fixes for the double-buffer configuration, prompted by 1978 MacPorts' switch to double-buffering (patch by Mike Thornburg, 1979 MacPorts #58313): 1980 <ul> 1981 <li>ensure that the needSwap flag is set after drawing 1982 TrueType text</li> 1983 1984 <li>corrected the drawable-parameter used for the 1985 bar-cursor</li> 1986 </ul> 1987 </li> 1988 1989 <li>modify <code>ScrnRefresh</code> to ignore a case where the 1990 left/right halves of a double-width character have been set to 1991 different video attributes. The attribute to use is in the 1992 left-half (report/testcase by Thomas Wolff).</li> 1993 1994 <li>correct a limit-check for <code>DECCRA</code> in case the 1995 target lies off-screen (report/testcase by Thomas Wolff).</li> 1996 1997 <li>documentation errata (report by Thomas Wolff).</li> 1998 1999 <li>reset flags including wraparound and reverse-wrap when 2000 switching to VT52 mode, while noting that DEC's standard 2001 documentation leaves that behavior <em>undefined</em> (report 2002 by Thomas Wolff).</li> 2003 2004 <li>ensure that italic font is turned off on hard/soft resets 2005 (report by Martin Hostettler).</li> 2006 2007 <li>improve responsiveness to X events while processing HTML or 2008 SVG dumps (report by Martin Hostettler).</li> 2009 2010 <li>replace logic in <code>wcwidth.c</code> for detecting 2011 double-width characters with binary-search table generated 2012 using updated <code>uniset</code> (report by Robert Ross).</li> 2013 2014 <li>add test-driver for <code>wcwidth.c</code> to simplify 2015 comparison with system's <code>wcwidth</code>.</li> 2016 2017 <li>ensure that window-manager name comparisons work when 2018 active-icon is enabled, since <code><em>CSI</em>13t</code> uses 2019 the window-manager name (report by Glenn Golden, Arch 2020 #62818).</li> 2021 2022 <li>trim a stray “experimental” in one of the 2023 comments about the tcap-query feature, which has been a 2024 supported feature since 2008 (see <a href="#xterm_238">patch 2025 #238</a>).</li> 2026 </ul> 2027 2028 <h1><a name="xterm_346" id="xterm_346">Patch #346 - 2029 2019/05/27</a></h1> 2030 2031 <ul> 2032 <li>update description of the “default” setting for 2033 the <code>renderFont</code> resource to match the behavior in 2034 <a href="#xterm_261">patch #261</a> (Debian #862042).</li> 2035 2036 <li>account for <code>internalBorder</code> in 2037 <code>useBorderClipping</code> (report by Robert Ross).</li> 2038 2039 <li>update table of unknown-width characters in wcwidth.c based 2040 on Unicode 12.1.0 (prompted by discussion with Robert 2041 Ross).</li> 2042 2043 <li>improve description of DECSCL versus S7C1T and S8C1T in 2044 <code>ctlseqs.ms</code>.</li> 2045 2046 <li>improve consistency between <code><em>CSI</em>3t</code> and 2047 <code><em>CSI</em>13t</code>, accounting for differences 2048 between some window managers' handling of EMWH extents (report 2049 by Bram Moolenaar).</li> 2050 2051 <li>fix a sign-extension when reporting offscreen window 2052 position (report by Bram Moolenaar).</li> 2053 </ul> 2054 2055 <h1><a name="xterm_345" id="xterm_345">Patch #345 - 2056 2019/05/14</a></h1> 2057 2058 <ul> 2059 <li>updated FreeBSD test-package from recent /usr/ports 2060 scripts.</li> 2061 2062 <li>workaround in <code>run-tic.sh</code> for HPUX, whose 2063 <code>mktemp</code> prints the name of a temporary directory 2064 without creating it.</li> 2065 2066 <li>add left/right margin capabilities to terminfo, since the 2067 default terminal emulation is VT420 (suggested by Thomas 2068 Wolff).</li> 2069 2070 <li>modify treatment of <code>reverseVideo</code> for dynamic 2071 colors to make text foreground/background consistent with the 2072 cursor color (prompted by discussion with Ben Wong, lsix 2073 #20).</li> 2074 2075 <li>modify button-handling to make SGR button-release distinct 2076 from button-press for button-codes starting with 8 (patch by 2077 Mikulas Patocka).</li> 2078 2079 <li>add aliases for the sgr push/pop controls to work around 2080 language limitations of C# (request by Dan Thompson).</li> 2081 2082 <li>correct a typo in <code>setDirectFG</code>, which could 2083 cause setting of indexed-color after a direct-color to be 2084 ignored.</li> 2085 2086 <li>add resource <code>useBorderClipping</code> as an 2087 alternative to <code>useClipping</code> (request by Robert 2088 Ross).</li> 2089 2090 <li>improve logic for displaying xterm's built-in line-drawing 2091 characters vs missing glyphs, e.g., for U+2409 to U+240D (patch 2092 by Robert Ross).</li> 2093 2094 <li>add <code>vttests/sgrPushPop2.pl</code> to illustrate how 2095 selective pushes work, as well as to demonstrate push/pop of 2096 the various color types supported by xterm.</li> 2097 2098 <li>fix a special case in <code>XTPOPSGR</code> where 2099 direct-colors were not checked as a dependency of 2100 indexed-colors, contrary to documentation.</li> 2101 2102 <li>reduce buffer-flushes for <code>OSC 4</code> and 2103 <code>OSC 5</code> color-queries, as well as in the 2104 queries for dynamic colors.<br> 2105 <strong>Note:</strong> this change makes the reply for 2106 <code>OSC 5</code> use the “5” in the 2107 response; formerly it was mapped to ”4” after 2108 adding the maximum number of colors.</li> 2109 2110 <li>modify <code>vttests/query-color.pl</code> to demonstrate 2111 multiple queries in one request.</li> 2112 2113 <li>update tables of combining and unknown-width characters in 2114 wcwidth.c based on Unicode 12.0.0.</li> 2115 2116 <li>modify response for <code>OSC 5</code> to be 2117 consistent with documentation.</li> 2118 2119 <li>add <code>vttests/query-dynamic.pl</code></li> 2120 2121 <li>modify <code>vttests/query-color.pl</code> to accept bold, 2122 underline, etc., keywords to decide whether to use 2123 <code>OSC 5</code> rather than 2124 <code>OSC 4</code>.</li> 2125 2126 <li>modify cursor coloring to avoid a case where the cursor 2127 matched the foreground color while the text was displayed in 2128 reverse-video (report by Nuno Silva).</li> 2129 2130 <li>fix an inconsistency in X10 mouse responses from <a href= 2131 "#xterm_342">patch #342</a> changes; the legacy protocol 2132 supports only buttons 1-3.</li> 2133 2134 <li>reduce the number of buffer-flushes for tcap-query 2135 batches.</li> 2136 2137 <li>modify <code>tcapquery.pl</code> to demonstrate batch 2138 queries with <code>-q</code> option.</li> 2139 2140 <li>increase response-buffer size, and make it configurable as 2141 <code>limitResponse</code> (prompted by discussion with Stephen 2142 P Wall).</li> 2143 2144 <li>modified configure script: 2145 <ul> 2146 <li>check/workaround for non-POSIX manipulation of 2147 predefined symbols</li> 2148 2149 <li>check for updated X Toolkit, which uses 2150 <code>const</code>.</li> 2151 </ul> 2152 </li> 2153 2154 <li>update config.guess, config.sub</li> 2155 2156 <li>provide for secondary-selection, overlooked in <a href= 2157 "#xterm_338">patch #338</a> (report by Emile LeBlanc).</li> 2158 2159 <li>documentation errata (patch by Larry Hynes).</li> 2160 2161 <li>improve pointer-checks in <code>Tekproc.c</code></li> 2162 2163 <li>revise solution for Debian #919475, to allow for 2164 struct-notify events occurring as a side-effect of toggling 2165 to/from full-screen mode.</li> 2166 2167 <li>window's border-size was incorrectly added to position when 2168 maximizing window (report by Gary Langshaw).</li> 2169 </ul> 2170 2171 <h1><a name="xterm_344" id="xterm_344">Patch #344 - 2172 2019/02/12</a></h1> 2173 2174 <ul> 2175 <li>add ASCII escape to default for 2176 <code>disallowedPasteControls</code> (prompted by discussion 2177 with Martin Hostettler).</li> 2178 2179 <li>fix typo in <code>ctlseqs.ms</code> (Robert Ross).</li> 2180 2181 <li>implement DEC Cyrillic NRCS (based on screenshots of vttest 2182 provided by Markus Schmidt).</li> 2183 2184 <li>correct control returning sixel geometry maximum versus 2185 actual size (patch by Ben Wong).</li> 2186 2187 <li>improve manual page for <code>resize</code> to clarify that 2188 <code>resize</code> does not execute the shell commands which 2189 it generates for setting environment variables.</li> 2190 2191 <li>improve memory-management for parser, to handle response 2192 strings that might occur with <code>ENQ</code> or when 2193 <code>SRM</code> mode is active (patch by Martin 2194 Hostettler).</li> 2195 2196 <li>change <code>Comment</code> text in uxterm's desktop file 2197 to work around a limitation of GNOME's GIO application 2198 (<a href="https://gitlab.gnome.org/GNOME/gnome-shell/issues/940#note_427334">issue 2199 #940</a>). The <a href= 2200 "https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html#g-desktop-app-info-search"> 2201 documentation</a> reads: 2202 <blockquote> 2203 <p>Searches desktop files for ones that match 2204 <em><code>search_string</code></em>.</p> 2205 2206 <p>The return value is an array of <em>strv</em>s. Each 2207 <em>strv</em> contains a list of applications that matched 2208 search_string with an equal score. The outer list is sorted 2209 by score so that the first <em>strv</em> contains the 2210 best-matching applications, and so on. The algorithm for 2211 determining matches is undefined and may change at any 2212 time.</p> 2213 </blockquote> 2214 </li> 2215 2216 <li>a check of <code>zIconBeep</code> resource was removed in 2217 double-buffer fix in <a href="#xterm_334">patch #334</a>. That 2218 is used to decide whether to handle struct-notify events. When 2219 xterm does handle the events, it may negotiate a new 2220 window-size with the window manager. In that case, the 2221 <code>limitResize</code> resource setting limited the new 2222 window-size to the screen-size. Amended that by eliminating the 2223 limit for this special case when double-buffer is configured, 2224 and restoring the check for <code>zIconBeep</code> when 2225 double-buffer is not configured (Debian #919475).</li> 2226 2227 <li>disallow recursion which could happen if a user configures 2228 the <code>answerbackString</code> resource with the 2229 <code>ENQ</code> code and experiments with that code when 2230 <code>SRM</code> is enabled (report by by Martin 2231 Hostettler).</li> 2232 2233 <li>add remaining credits in <code>COPYING</code> file.</li> 2234 2235 <li>modify <code>run-tic.sh</code> to check if it is using an 2236 older version of ncurses which does not support large terminal 2237 descriptions, and if so, remove a non-essential feature to keep 2238 within the 4096-byte legacy limit.</li> 2239 </ul> 2240 2241 <h1><a name="xterm_343" id="xterm_343">Patch #343 - 2242 2019/01/13</a></h1> 2243 2244 <ul> 2245 <li>modify <code>run-tic.sh</code> to prefer ncurses6 over 2246 ncurses5, when available.</li> 2247 2248 <li>add <code>COPYING</code> file, and dummy "check" makefile 2249 rule for testing Arch packages.</li> 2250 2251 <li>add/update package scripts for FreeBSD and NetBSD, for 2252 testing.</li> 2253 2254 <li>update tables of combining and ambiguous-width characters 2255 in wcwidth.c based on Unicode 11.0.0.</li> 2256 2257 <li>modify <code>xterm-new</code> sample terminfo entry to 2258 correspond to ncurses 6.1, using the SGR 1006 mouse 2259 protocol.</li> 2260 2261 <li>improve manual page discussion of selection ownership 2262 versus highlighting (prompted by discussion with Martin 2263 Hostettler).</li> 2264 2265 <li>restore/repair <code>keepClipboard</code> feature which was 2266 broken by changes in <a href="#xterm_338">patch #338</a> 2267 (report by Martin Hostettler).</li> 2268 2269 <li>improve documentation for <code>deleteIsDEL</code> 2270 resource.</li> 2271 2272 <li>modify DECRQM response for private mode 1037 to account for 2273 cases where the resource <code>deleteIsDEL</code> is initially 2274 neither true nor false, but dependent upon the keyboard type 2275 (report/analysis by Martin Hostettler).</li> 2276 2277 <li>clear pointers for pattern/fontset after destroying their 2278 data when switching facename with an escape sequence (report by 2279 Robert Ross).</li> 2280 2281 <li>modify logic for TrueType fallback fonts to match the 2282 sort-order used by <code>fc-match</code> (report by Robert 2283 Ross).</li> 2284 2285 <li>add resource setting <code>limitFontsets</code> which can 2286 be used to limit or disable the new TrueType fontset feature 2287 (request by Robert Ross).</li> 2288 </ul> 2289 2290 <h1><a name="xterm_342" id="xterm_342">Patch #342 - 2291 2019/01/03</a></h1> 2292 2293 <ul> 2294 <li>limit mouse-button events to 11 buttons in the original 2295 protocol, and 15 in the extended mouse-protocol (patch by 2296 Martin Hostettler).</li> 2297 2298 <li>correct calculation for buttons past 11 in 2299 <code>mouse-codes</code> sample script (patch by Martin 2300 Hostettler).</li> 2301 2302 <li>disable a supplementary check added in <a href= 2303 "#xterm_341">patch #341</a> which interferes with using 2304 fontconfig to select different-sized bitmap fonts (Arch 2305 #61237).</li> 2306 </ul> 2307 2308 <h1><a name="xterm_341" id="xterm_341">Patch #341 - 2309 2018/12/24</a></h1> 2310 2311 <ul> 2312 <li>add options to <code>mouse-codes</code> script to 2313 demonstrate that the encoding used for mouse events limits 2314 button numbers to 11.</li> 2315 2316 <li>allow mouse button numbers up to 11 using an offset of 128 2317 for button numbers 8-11 rather than the offset of 64 used for 2318 wheel-mouse, etc., buttons 4-7 in <a href="#xterm_338">patch 2319 #338</a> (adapted from patch by Martin Hostettler).</li> 2320 2321 <li>correct off-by-one right-margin checks for double-width 2322 character adjustments in DECERA/DECFRA (patch by Martin 2323 Hostettler).</li> 2324 2325 <li>allocated size of selection buffer was not reset when 2326 freeing the buffer in <a href="#xterm_338">patch #338</a> 2327 (report/analysis by Stefan Assmann).</li> 2328 2329 <li>modify the initial pattern passed to fontconfig to disallow 2330 color bitmap fonts.</li> 2331 2332 <li>improve error recovery for a case where fontconfig ignores 2333 the requested pattern due to override in the user's font 2334 configuration (report/testcase by Stefan Assmann).</li> 2335 </ul> 2336 2337 <h1><a name="xterm_340" id="xterm_340">Patch #340 - 2338 2018/12/16</a></h1> 2339 2340 <ul> 2341 <li>suppress a spurious warning about fontsets when 2342 initializing menus for the toolbar configuration.</li> 2343 2344 <li>fix some strict compiler warnings.</li> 2345 2346 <li>improve checks for TrueType font, to help with the case of 2347 color bitmap fonts, which fontconfig misrepresents (Arch Linux 2348 #58706).</li> 2349 </ul> 2350 2351 <h1><a name="xterm_339" id="xterm_339">Patch #339 - 2352 2018/12/12</a></h1> 2353 2354 <ul> 2355 <li>modify <code>CF_GNU_SOURCE</code> macro to treat 2356 <em>newlib</em> as similar to <em>glibc</em>, fixing a problem 2357 with the configure checks for pseudoterminals in Cygwin 2358 overlooked in <a href="#xterm_334">patch #334</a> updates for 2359 configure-macros.</li> 2360 </ul> 2361 2362 <h1><a name="xterm_338" id="xterm_338">Patch #338 - 2363 2018/12/09</a></h1> 2364 2365 <ul> 2366 <li>ignore <code>$TERMINFO</code> in the configure script if it 2367 is set to a non-directory value.</li> 2368 2369 <li>updated configure macros: 2370 <ul> 2371 <li><code>CF_WITH_PCRE2</code>, modified to work with 2372 Debian's (mis-numbered) pcre3 package.</li> 2373 2374 <li><code>CF_CC_ENV_FLAGS</code> , report preprocessor 2375 options in <code>CFLAGS</code></li> 2376 2377 <li><code>CF_LD_RPATH_OPT</code> , suppress check if 2378 <code>--disable-rpath</code> option was given.</li> 2379 2380 <li><code>CF_XOPEN_SOURCE</code>, add case for 2381 midnightbsd</li> 2382 </ul> 2383 </li> 2384 2385 <li>update config.guess, config.sub</li> 2386 2387 <li>add a check to ensure that the filename parameter passed to 2388 <code>XpmReadFileToPixmap</code> is actually a file, since that 2389 function does not check (report by Ben Nott).</li> 2390 2391 <li>amend solution for Debian #758633 to ensure that replies 2392 for bracketed paste are not sent while processing a selection 2393 for <code>exec-formatted</code> (Debian #913237).</li> 2394 2395 <li>improve adjustments/clearing for double-width characters in 2396 <code>DECERA</code>, <code>DECFRA</code>, 2397 <code>DECSERA</code>.</li> 2398 2399 <li>improve adjustments/clearing for double-width characters 2400 when doing vertical scrolling within left/right margins (patch 2401 by Martin Hostettler).</li> 2402 2403 <li>modify wcwidth to encode a few spacing combining marks as 2404 regular combining characters.</li> 2405 2406 <li>change compiled-in default for <code>saveLines</code> to 2407 match the resource-file changed in <a href="#xterm_192">patch 2408 #192</a> (Debian #913815).</li> 2409 2410 <li>change default <code>faceSize</code> to 8.0, to simplify 2411 switching back/forth between bitmap fonts and TrueType. This 2412 was originally (mis)set to 14.0 in <a href="#xterm_148">patch 2413 #148</a>.</li> 2414 2415 <li>add fallback support in Xft configuration for missing 2416 glyphs (prompted by discussion with Mike Burns).</li> 2417 2418 <li>fix a problem with using direct-colors for the background 2419 color when clearing/scrolling (report by Nicholas 2420 Marriott).</li> 2421 2422 <li>add a "sources" rule for the makefile's generated 2423 source.</li> 2424 2425 <li>add a short explanation in <code>ctlseqs.ms</code> 2426 discussing the differences in error-recovery for malformed 2427 sequences versus unimplemented features, and amend one case for 2428 consistency (prompted by discussion with Martin 2429 Hostettler).</li> 2430 2431 <li>adjusted ifdef's so that the paste64 configure option does 2432 not automatically enable the readline-mouse configure 2433 option.</li> 2434 2435 <li>revert the change which prevented concurrent ownership of 2436 different selection targets, and instead modify selection 2437 storage so that different concurrent requests for different 2438 selection targets will be stored/retrieved independently 2439 (Debian #901249).</li> 2440 2441 <li>remove a check which prevented returning button-codes past 2442 the documented 4/5 for wheel mouse, and add a script 2443 <code>mouse-codes</code> which makes a report showing the 2444 various mouse codes for different button/modifier combinations 2445 (discussion with Přemysl Janouch).</li> 2446 2447 <li>improve display and checksum for DEC Special Graphics by 2448 mapping 0x5f to 0.</li> 2449 2450 <li>add a null-pointer check for table-ending in the 2451 extended-boolean resource-handling (report by Felix von 2452 Leitner).</li> 2453 2454 <li>remove stray <code>]</code>'s from INSTALL-file (Larry 2455 Hynes).</li> 2456 </ul> 2457 2458 <h1><a name="xterm_337" id="xterm_337">Patch #337 - 2459 2018/09/21</a></h1> 2460 2461 <ul> 2462 <li>regenerated configure script (report by Sven Joachim).</li> 2463 2464 <li>revise/improve fix for scrolling in margins 2465 (report/analysis by Martin Hostettler):</li> 2466 2467 <li>amend change to default-translations "select" subset to 2468 ensure that specific key-press actions are listed before 2469 generic key-press actions (reports by H Merijn Brand, Sven 2470 Joachim).</li> 2471 </ul> 2472 2473 <h1><a name="xterm_336" id="xterm_336">Patch #336 - 2474 2018/09/19</a></h1> 2475 2476 <ul> 2477 <li>ensure that only one of PRIMARY and CLIPBOARD is owned by 2478 xterm at a given time (Debian #901249).</li> 2479 2480 <li>documentation fixes (report by Lars Krueger): 2481 <ul> 2482 <li>document <code>SL</code> and <code>SR</code>.</li> 2483 2484 <li>document <code>DECRPTUI</code>, change number of digits 2485 to match VT420.</li> 2486 </ul> 2487 </li> 2488 2489 <li>revise <code>omitTranslation</code> resource, e.g., 2490 splitting “default” into several more useful 2491 categories.</li> 2492 2493 <li>modify mask-logic to permit <em>control-</em> and 2494 <em>meta-</em> modifiers to be used in mouse protocol.</li> 2495 2496 <li>several fixes for parsing/state (report/testcases by Martin 2497 Hostettler): 2498 <ul> 2499 <li>remove an old/unimplemented entry for xterm-title from 2500 state table.</li> 2501 2502 <li>save/restore wrap-flag when scrolling, to fix an 2503 inconsistency between jump-scrolling and 2504 normal-scrolling.</li> 2505 2506 <li>improve a special case of wrapping where the cursor 2507 starts beyond the right-margin, and wraps at the terminal's 2508 last-column before the settable-margins can take 2509 effect.</li> 2510 2511 <li>if origin mode is set, adjust a restored cursor column 2512 relative to the left margin.</li> 2513 2514 <li>when scrolling a line within left/right margins, 2515 correct order of the fixups needed when a double-width 2516 character crosses the margin boundary.</li> 2517 </ul> 2518 </li> 2519 2520 <li>review/fix a few cases where the parsing state was not 2521 reset after completing a control sequence (prompted by report 2522 by Martin Hostettler).</li> 2523 2524 <li>disallow <code>XTCHECKSUM</code> if the corresponding 2525 window-ops "SetChecksum" is unset.</li> 2526 2527 <li>add <code>print-vt-chars.pl</code> script to illustrate the 2528 NRCS and codepages supported by xterm.</li> 2529 2530 <li>add <code>other-sgr.sh</code> script to demonstrate the 2531 non-VT100 video attributes implemented in <a href= 2532 "#xterm_305">patch #305</a>, and added a summary of their 2533 introduction in ECMA-48 to the control sequences document.</li> 2534 2535 <li>add <code>tabs</code> and <code>-tabs</code> keywords to 2536 <code>ttyModes</code> resource to simplify workaround for 2537 terminal drivers which are not aware of UTF-8 (FreeBSD 2538 #229682).</li> 2539 2540 <li>add VT5xx NRCS 7-bit Turkish and DEC Turkish.</li> 2541 2542 <li>add VT5xx NRCS 7-bit Hebrew and DEC Hebrew.</li> 2543 2544 <li>add VT5xx NRCS 7-bit Greek and DEC Greek.</li> 2545 2546 <li>correct a few post-VT220 codepages to make them display 2547 without setting the NRCS state.</li> 2548 2549 <li>extend <code>vt100Graphics</code> resource to include other 2550 character-sets such as the VT500 codepages in UTF-8 mode.</li> 2551 2552 <li>add some VT5xx codepages to help with the discussion of 2553 96-character sets: <em>ISO Greek Supplemental</em>, <em>ISO 2554 Hebrew Supplemental</em>, <em>ISO Latin–5 2555 Supplemental</em>, and <em>ISO Latin–Cyrillic</em>.</li> 2556 2557 <li>improve description of the VT300-controls for designating 2558 character sets, and fix a typo which indicated that some were 2559 used for 94-character sets (prompted by discussion with Lars 2560 Krueger).</li> 2561 2562 <li>add private control <code>XTCHECKSUM</code> for modifying 2563 <code>checksumExtension</code>.</li> 2564 2565 <li>factor out xterm's <code>DECRQCRA</code> checksum 2566 extensions as a resource setting 2567 <code>checksumExtension</code>.</li> 2568 2569 <li>revise calculation of checksum for <code>DECRQCRA</code> to 2570 match DEC's terminals (using screenshots of vttest provided by 2571 Markus Schmidt).</li> 2572 2573 <li>restore a fix for memory-checksum setup of 2574 <code>DECCKSR</code> from <a href="#xterm_315">patch #315</a> 2575 incorrectly reverted in <a href="#xterm_334">patch #334</a> as 2576 part of fix for <code>DECRQCRA</code>.</li> 2577 </ul> 2578 2579 <h1><a name="xterm_335" id="xterm_335">Patch #335 - 2580 2018/08/14</a></h1> 2581 2582 <ul> 2583 <li>add <code>colorInnerBorder</code> resource to make a change 2584 from <a href="#xterm_334">patch #334</a> configurable (reports 2585 by H Merijn Brand, Gabriele Balducci).</li> 2586 </ul> 2587 2588 <h1><a name="xterm_334" id="xterm_334">Patch #334 - 2589 2018/08/12</a></h1> 2590 2591 <ul> 2592 <li>modify <code>Imakefile</code> to reflect the fact that 2593 NetBSD no longer has a working termcap emulation.</li> 2594 2595 <li>add resource-setting <code>validShells</code> which can be 2596 used to augment the system's <code>/etc/shell</code> (prompted 2597 by discussion with Paul Lampert).</li> 2598 2599 <li>stifle some useless warnings from lintian in 2600 test-packages.</li> 2601 2602 <li>add the ncurses extension “RGB” to the 2603 responses for the termcap-query feature.</li> 2604 2605 <li>improved getopts-handling in sample scripts.</li> 2606 2607 <li>fix some warnings from gcc8 and clang --analyze.</li> 2608 2609 <li>update note about incorrect documentation for 2610 <code>DECRQSS</code> to include VT525 (report by Markus 2611 Schmidt).</li> 2612 2613 <li>correct check for default-values in rectangular parsing; a 2614 zero counts as a missing or default parameter (report/testcase 2615 by Markus Schmidt).</li> 2616 2617 <li>correct some ranges in the <code>ambiguous[]</code> table 2618 in wcwidth (adapted from patch by KUGA Tsutomu).</li> 2619 2620 <li>fix a special case with faint video attribute incorrectly 2621 combined with default color.</li> 2622 2623 <li>add private control <code>XTREPORTSGR</code> for reporting 2624 video-attributes and color on a rectangle, and script 2625 <code>report-sgr.pl</code> to demonstrate it.</li> 2626 2627 <li>modify some of the markup in <code>ctlseqs.ms</code> to 2628 work around groff's reassignment of ASCII punctuation 2629 characters as documented in <em>groff_char(7)</em>.</li> 2630 2631 <li>treat ECMA-48 SGR 6 the same as SGR 5.</li> 2632 2633 <li>add private controls <code>XTPUSHSGR</code> and 2634 <code>XTPOPSGR</code> for saving/restoring the current 2635 video-attributes on a stack (adapted from patch by Dan 2636 Thompson).</li> 2637 2638 <li>modify <code>DECRPM</code> response for logging enable to 2639 indicate its state even when enabling/disabling it is not 2640 allowed.</li> 2641 2642 <li>implement <code>DECSNLS</code></li> 2643 2644 <li>implement <code>DECRSPS</code></li> 2645 2646 <li>improve fill-color for double-buffer configuration, which 2647 was sharing a graphic context with the cursor.</li> 2648 2649 <li>fix a couple of cases where double-sized VT100 characters 2650 were not clipped, seen in Joe Smith's <a href= 2651 "http://www.inwap.com/pdp10/#Tymnet">VT100 torture 2652 test</a>.</li> 2653 2654 <li>color the inner border using the same 2655 <code>borderColor</code> as the outer border, rather than 2656 filling with the VT100's default background.</li> 2657 2658 <li>change encoding of “THANKS” to UTF-8.</li> 2659 2660 <li>modify handling of <code>DECELR</code> to recognize 2661 <code>MotionNotify</code> events again, amending a check for 2662 <code>allowMouseOps</code> which limited that to button-events 2663 in <a href="#xterm_328">patch #328</a> (Olaf Rogalsky).</li> 2664 2665 <li>fix some screen-painting problems with left/right margins 2666 when using insert-line or delete-line (report/testcase by 2667 Martin Hostettler). also fix similar case with 2668 index/reverse-index.</li> 2669 2670 <li>several minor performance improvements using macros, e.g., 2671 inline checks for character width.</li> 2672 2673 <li>add <code>DECSCPP</code> and <code>DECSLPP</code> to 2674 <code>DECRQSS</code>.</li> 2675 2676 <li>implement <code>DECSCPP</code>.</li> 2677 2678 <li>implement <code>DECCIR</code> and <code>DECTABSR</code> 2679 presentation reports.</li> 2680 2681 <li>modify checksum computation for <code>DECRQCRA</code> to 2682 treat uninitialized cells as blanks rather than nulls.</li> 2683 2684 <li>drop custom-entity from HTML-dump, use UTF-8 for &nbsp; 2685 (Debian #902381).</li> 2686 2687 <li>modify display of non-BMP characters when using bitmap 2688 fonts to show a null/empty box rather than the replacement 2689 character which was used in cleanup changes for <a href= 2690 "#xterm_233">patch #233</a> (report by Christian 2691 Weisgerber).</li> 2692 2693 <li>when setting up clipping rectangle for Xft, allow for the 2694 case where xterm is only displaying a combining character, 2695 where the base was already written (report by Joshua 2696 Crowgey).</li> 2697 2698 <li>allow reset Xft's state if switching font-sizes when 2699 double-buffering is used.</li> 2700 2701 <li>fix repainting, e.g., on resize, when double-buffering is 2702 used with Xft (patch by Daniel Colascione).</li> 2703 2704 <li>correct some interchanged pairs of symbols in 2705 <code>unicode/keysym.map</code> (Brad Town).</li> 2706 2707 <li>improve configure macros CF_GCC_WARNINGS, CF_GNU_SOURCE, 2708 CF_POSIX_C_SOURCE, CF_TRY_XOPEN_SOURCE, CF_XOPEN_SOURCE, 2709 CF_X_ATHENA_CPPFLAGS.</li> 2710 2711 <li>modify <code>logFile</code> resource to interpret 2712 “<code>-</code>” as the standard output (adapted 2713 patch by Colum Paget).</li> 2714 2715 <li>improve documentation of Tek4014 menu options; fix a case 2716 where the Tek4014 window was not displayed before switching 2717 modes.</li> 2718 2719 <li>re-correct parameter for <em>pid</em> used for DECCKSR, 2720 DECRQCSR (see <a href="#xterm_315">xterm #315</a>).</li> 2721 2722 <li>hard/soft reset now resets the cursor-blinking state that 2723 may have been set via escape sequences; the cursor-blinking 2724 menu-entry feature is unmodified (report by Matthieu 2725 Herrb).</li> 2726 2727 <li>update config.guess, config.sub</li> 2728 </ul> 2729 2730 <h1><a name="xterm_333" id="xterm_333">Patch #333 - 2731 2018/05/03</a></h1> 2732 2733 <ul> 2734 <li>ensure that i18n is enabled if input-method is 2735 enabled.</li> 2736 2737 <li>modify logic for pre-edit to update spot-location while the 2738 cursor is invisible (Kakoune #1940).</li> 2739 2740 <li>change default icon to newer one, "mini.xterm".</li> 2741 2742 <li>install a complete set of icons, to simplify post-install 2743 customization.</li> 2744 2745 <li>add resource <code>disallowedPasteControls</code> to extend 2746 filtering of control characters from pastes.</li> 2747 2748 <li>add <code>print-on-error</code> action-hook, and document 2749 action-hooks for dump-html, dump-svg.</li> 2750 2751 <li>provide action-hook for <code>print-immediate</code>, which 2752 was available only as a menu-item (report by Rastislav 2753 Barlik).</li> 2754 2755 <li>continue to improve notes in <code>ctlseqs.ms</code> which 2756 mention where various controls originated.</li> 2757 2758 <li>add case to accept ECMA-48's bogus <code>SD</code>, but 2759 document the issue in <code>ctlseqs.ms</code>.</li> 2760 2761 <li>add control sequence for loading XPM-icon file, using the 2762 analogous control sequence from shelltool/dtterm.</li> 2763 2764 <li>add <code>-report-icons</code> option, to report on 2765 XPM-icon and title-bar updates.</li> 2766 2767 <li>correct a discrepancy between locator-reports for VT220 vs 2768 VT330.</li> 2769 2770 <li>add window-ops control sequences to complement existing 2771 ones for reporting window-position and text-area size with 2772 reports for text-area position and window-size.</li> 2773 2774 <li>display vt52 graphics mode characters.</li> 2775 2776 <li>correct case-statement for window-ops 10, overlooked since 2777 some window managers equate vertical-maximize and 2778 horizontal-maximize window hints with full-screen 2779 maximize.</li> 2780 </ul> 2781 2782 <h1><a name="xterm_332" id="xterm_332">Patch #332 - 2783 2018/04/15</a></h1> 2784 2785 <ul> 2786 <li>add a <code>GetChecksum</code> item to 2787 <code>disallowedWindowOps</code></li> 2788 2789 <li>improve notes in <code>ctlseqs.ms</code> which mention 2790 where various controls originated.</li> 2791 2792 <li>add control sequences for querying the X display size and 2793 the character size, both in pixels to help eliminate some of 2794 the constants in <code>esctest</code>.</li> 2795 2796 <li>fixes prompted by review of George Nachman's 2797 <code>esctest</code> script: 2798 <ul> 2799 <li>add a null-pointer check and a limit-check in 2800 <code>xtermCheckRect</code>.</li> 2801 2802 <li>correct limit-check for right-margin when processing 2803 autowrapping if xterm is not built for 2804 wide-characters.</li> 2805 2806 <li>repair logic in <code>RIS</code> to reset 132-column 2807 mode when an escape sequence is used to enable 2808 80/132-column switching.</li> 2809 2810 <li>correct array-limit for EWMH working state.</li> 2811 2812 <li>further improve limit-checks versus assert's (see 2813 <a href="#xterm_315">patch #315</a>).</li> 2814 2815 <li>correct order of check-margins and move-to-left margin 2816 for <code>DL</code> and <code>IL</code>.</li> 2817 2818 <li>modify reverse-wrap to pay attention to top/bottom 2819 margins as it has done for left/right margins since 2820 <a href="#xterm_279">patch #279</a>.</li> 2821 2822 <li>modify behavior of <code>DECFI</code> and 2823 <code>DECBI</code> to not index the screen at the 2824 left/right edge of the display unless those happen to be 2825 the left/right margins.</li> 2826 2827 <li>add case for VT320 DSR response for keyboard 2828 status.</li> 2829 </ul> 2830 </li> 2831 2832 <li>improve check for valid shell path using 2833 <code>getusershell</code> and <code>endusershell</code> if 2834 available, in case <code>/etc/shells</code> does not exist 2835 (suggested by Rainer Orth).</li> 2836 2837 <li>modified configure checks for groff and man2html, to use 2838 the latter by default, but allowing mandoc as a partial 2839 replacement for former.</li> 2840 2841 <li>revisited the inconsistent copyright notices mentioned in 2842 <a href="#xterm_165">patch #165</a>, and eliminate the issue as 2843 mentioned in this <a href= 2844 "https://invisible-island.net/personal/copyrights.html">copyright 2845 discussion</a>.</li> 2846 2847 <li>fix typo in this change-log (report by Sven Joachim)</li> 2848 2849 <li>update config.guess, config.sub</li> 2850 </ul> 2851 2852 <h1><a name="xterm_331" id="xterm_331">Patch #331 - 2853 2017/12/30</a></h1> 2854 2855 <ul> 2856 <li>add workaround for improper grayscale adjustments made in 2857 FreeType library, exposed by changes to rounding in 2.8.1, 2858 which shows up as a gap in line-drawing characters (Debian 2859 #880407).</li> 2860 2861 <li>improve a special case where a non-Unicode font's 2862 line-drawing characters were not used, when specifying it via 2863 the <code>utf8Fonts</code> resource, e.g., 2864 <blockquote> 2865 <pre> 2866 -fs 15 \ 2867 -xrm '*VT100.font:12x24' \ 2868 -xrm '*VT100.boldFont:12x24' \ 2869 -xrm '*VT100.utf8Fonts.font: 12x24' \ 2870 -xrm '*VT100.utf8Fonts.boldFont: 12x24' \ 2871</pre> 2872 </blockquote> 2873 </li> 2874 2875 <li>replace constant 10msec delay for next X event with new 2876 resource <code>nextEventDelay</code>, and reduce that to 1msec 2877 to accommodate faster machines than used when 2878 <code>-hold</code> was implemented in <a href= 2879 "#xterm_116">1999</a> (Debian #877628).</li> 2880 2881 <li>add <code>scroll-to</code> action, which simplifies binding 2882 a key to scroll to the beginning or end of the saved-lines 2883 (Debian #880120).</li> 2884 2885 <li>add building blocks for alternate screen and/or title-stack 2886 features in the <code>terminfo</code> file.</li> 2887 2888 <li>improve calculations for cell-data size.</li> 2889 2890 <li>change configure script to enable XHTML/SVG screen dumps by 2891 default.</li> 2892 2893 <li>change configure script to enable 256-colors by 2894 default.</li> 2895 2896 <li>update config.guess, config.sub</li> 2897 2898 <li>change configure script option for 2899 <code>--with-man2html</code> to use improved script by 2900 default.</li> 2901 2902 <li>add case for private mode 1044 in DECRQM, to report the 2903 keepClipboard resource setting and corresponding menu 2904 entry.</li> 2905 2906 <li>fix an inconsistency between private mode 12 (the AT&T 2907 610 cursor blink) and <code>DECSCUSR</code>: the former relied 2908 on having the <code>cursorBlink</code> resource set initially 2909 to enable the escape sequence, while the latter does not.</li> 2910 2911 <li>add private modes 13 and 14, as well as resource 2912 <code>cursorBlinkXOR</code> to allow better control over the 2913 cursor-blinking state (discussion with Bram Moolenaar).</li> 2914 2915 <li>modify the html and svg screen dumps to support direct 2916 color</li> 2917 2918 <li>modify media copy (screen-printing) to support the same SGR 2919 codes as <code>DECRQSS</code>, including 88/256 indexed color 2920 as well as direct color.</li> 2921 2922 <li>improve options-parsing for query-status.pl script.</li> 2923 2924 <li>modify parsing of <code>SGR</code> direct-color control 2925 making <em>color space identitier</em> optional. The 2926 corresponding <code>DECRQSS</code> reply always returns an 2927 empty (default) field for the identifier.</li> 2928 2929 <li>add wide-attributes to <code>DECRQSS</code> reply for 2930 <code>SGR</code>.</li> 2931 2932 <li>add private mode 1046 to help with scripting 2933 applications.</li> 2934 2935 <li>correct expression used for readline-flags in DECRQM; to 2936 test the current flag rather than information <em>stacked</em> 2937 within the same variable.</li> 2938 2939 <li>correct typo in <code>ctlseqs.ms</code> reference to 2940 ISO-8613-6 (patch by Mike Frysinger).</li> 2941 2942 <li>fix lintian warning for test-package.</li> 2943 2944 <li>fix typo in <code>DECRQSS</code> for <code>SGR</code> 48, 2945 which printed the foreground value for colors past 15. Also use 2946 colon delimiter for codes 38/48 in response (report by Paul 2947 LeoNerd Evans).</li> 2948 2949 <li>improve workaround for Debian #542434 by using the font's 2950 maximum width when no ISO-8859-1 glyphs are provided (Debian 2951 #879936).</li> 2952 2953 <li>work around a special case of <em>Xft</em>'s mismanagement 2954 of its cached data by adding a check before the 2955 <code>-report-fonts</code> option to ensure that it does not 2956 use an <code>XftPattern</code> which may have been freed during 2957 a call to <code>XftFontOpenPattern</code>.</li> 2958 2959 <li>improve manual page description of <code>regex</code> 2960 option for <code>on<em>X</em>Clicks</code> resources (report by 2961 Lukas Mai).</li> 2962 2963 <li>add <code>directColor</code> resource.</li> 2964 2965 <li>additional manpage macro cleanup (Branden Robinson, Debian 2966 #880551).</li> 2967 2968 <li>add optional support for direct-colors (adapted from patch 2969 by anonymous “Nibby Nebbulous”).</li> 2970 2971 <li>improve legacy/NRC character set mapping (patch by Thomas 2972 Wolff), e.g., 2973 <ul> 2974 <li>enable alternate NRC set designators for French and 2975 French Canadian, ‘9’ and ‘f’ 2976 respectively, as documented in ctlseqs. (‘9’ is 2977 documented for VT510, ‘f’ is a Kermit 2978 feature).</li> 2979 2980 <li>correct the Unicode value in the <em>DEC Technical</em> 2981 table to show capital delta.</li> 2982 2983 <li>referring to 2984 <blockquote> 2985 <p><a href= 2986 "http://vt100.net/docs/vt220-rm/table2-3b.html">http://vt100.net/docs/vt220-rm/table2-3b.html</a><br> 2987 2988 <a href= 2989 "http://vt100.net/docs/vt320-uu/appendixe.html">http://vt100.net/docs/vt320-uu/appendixe.html</a></p> 2990 </blockquote> 2991 2992 <p>add entries for the <em>DEC Supplemental Graphics</em> 2993 table to display 0x28/0xa8 as ¤ and 0x5d/0xdd as 2994 Ÿ.</p> 2995 </li> 2996 2997 <li>referring to 2998 <blockquote> 2999 <p><a href= 3000 "http://www.vt100.net/charsets/technical.html">http://www.vt100.net/charsets/technical.html</a></p> 3001 </blockquote> 3002 3003 <p>alter the Unicode values used for 0x2b through 0x2c to 3004 use <em>curly braces</em> to work with the 3005 “middle” parts displayed with 0x2f and 3006 0x30.</p> 3007 </li> 3008 3009 <li>modify the VT220 “Supplemental” table, 3010 giving a hint that it was probably meant to be 3011 “Supplemental Graphics” and is the same as 3012 VT320's table.</li> 3013 </ul> 3014 </li> 3015 3016 <li>quiet a few font-warnings when a derived fontname cannot be 3017 opened, overlooked in refactoring of font resources in <a href= 3018 "#xterm_328">patch #328</a> (initially reported on <a href= 3019 "https://cygwin.com/ml/cygwin/2017-06/msg00255.html">Cygwin 3020 mailing list</a>, with <a href= 3021 "https://cygwin.com/ml/cygwin/2017-07/msg00216.html">followup</a>).</li> 3022 3023 <li>correct error response for <code>DECRQSS</code> broken in 3024 cleanup of Coverity reports in <a href="#xterm_288">patch 3025 #288</a> (reports by Bram Moolenaar and IWAMOTO Kouichi).</li> 3026 3027 <li>improve <code>DECRPM</code> responses by returning <em>mode 3028 not recognized</em> for modes which may not be settable due to 3029 the selected <code>decTerminalID</code> resource (report by 3030 IWAMOTO Kouichi).</li> 3031 3032 <li>correct logic for <code>print-immediate</code> action, and 3033 enable corresponding menu entry (patch by Lauri 3034 Tirkkonen).</li> 3035 3036 <li>add configure option <code>--with-pcre2</code> (patch by 3037 David Michael).</li> 3038 3039 <li>fix a misspelled subsection title in ctlseqs.ms and add a 3040 note regarding blink which was rendered as bold in X11R6. 3041 Blinking text was implemented in <a href="#xterm_60">Patch 3042 #60</a>.</li> 3043 3044 <li>fix typos in <code>xterm.man</code> (patches by Sven 3045 Joachim, Larry Hynes).</li> 3046 3047 <li>fix typography in <code>xterm.man</code> (patch by Bjarni 3048 Ingi Gislason, Debian #869248).</li> 3049 3050 <li>fix typo in <code>INSTALL</code> (Larry Hynes).</li> 3051 3052 <li>add <code>xterm-direct</code> terminal description based on 3053 changes introduced in <a href="#xterm_277">patch #277</a>, and 3054 relying upon ncurses <code><strong>RGB</strong></code> 3055 extension.</li> 3056 3057 <li>modify <code>xterm-new</code> terminal description to use 3058 ECMA-48 <code>REP</code>, reflecting its use in xterm since 3059 <a href="#xterm_32">patch #32</a> (1996).</li> 3060 3061 <li>clarify comment in ctlseqs.ms regarding blink: it has been 3062 part of xterm since <a href="#xterm_60">patch #60</a> 3063 (1998).</li> 3064 3065 <li>update ftp URLs in documentation.</li> 3066 </ul> 3067 3068 <h1><a name="xterm_330" id="xterm_330">Patch #330 - 3069 2017/06/20</a></h1> 3070 3071 <ul> 3072 <li>updates for ReGIS (Ross Combs): 3073 <ul> 3074 <li>remove redundant text command error check which broke 3075 <code>T(B)</code> and <code>T(E)</code>.</li> 3076 3077 <li>retain the loading alphabet number across multiple 3078 “L” commands.</li> 3079 3080 <li>add <code>S(T)</code> delay handler.</li> 3081 3082 <li>fix some color handling error messages.</li> 3083 3084 <li>add stubbed-out macrograph handling.</li> 3085 3086 <li>use <code>fragment_remaining()</code> and 3087 <code>fragment_consumed()</code> instead of manually 3088 checking position / length in various places.</li> 3089 3090 <li>rename some local variables in string / extent / option 3091 parsing</li> 3092 3093 <li>wrap some long lines.</li> 3094 3095 <li>move macrograph command handling out of the 3096 top-level.</li> 3097 </ul> 3098 </li> 3099 3100 <li>add a summary of the italic fonts loaded to 3101 <code>-report-fonts</code> option.</li> 3102 3103 <li>modify the font-lookup for italics to allow for 3104 “<code>-i-</code>” if no match is found with slant 3105 “<code>-o-</code>” (prompted by patch by Ben 3106 Wong).</li> 3107 3108 <li>change default values for <code>mkSamplePass</code> and 3109 <code>mkSampleSize</code> to reflect generally-improved locale 3110 support in various operating systems (FreeBSD #219800).</li> 3111 3112 <li>modify <code>wcwidth.c</code> to return -1 for non-Unicode 3113 values, and adjust a couple of blocks to better match 3114 assumptions about ambiguous-width characters in other 3115 implementations. Also modify <code>wcwidth.c</code> to support 3116 configurable soft-hyphen, so there is no drawback to using this 3117 version rather than a system <code>wcwidth</code>.</li> 3118 3119 <li>amend change made in <a href="#xterm_328">patch #328</a> 3120 for cursor-visibility to handle case where an application is 3121 updating the reverse-video state (FreeBSD #219800).</li> 3122 3123 <li>update tables of combining and ambiguous-width characters 3124 in wcwidth.c based on Unicode 10.0.0.</li> 3125 3126 <li>build-fix for <code>--enable-sixel-graphics</code> without 3127 <code>--enable-regis-graphics</code> (reports by Sven Joachim, 3128 FreeBSD #219945).</li> 3129 </ul> 3130 3131 <h1><a name="xterm_329" id="xterm_329">Patch #329 - 3132 2017/06/12</a></h1> 3133 3134 <ul> 3135 <li>add control sequences for reading the Sixel and ReGIS 3136 graphics sizes (suggested by Ben Wong).</li> 3137 3138 <li>add a workaround for <code>wcwidth</code> returning -1 for 3139 characters which should have been printable (FreeBSD 3140 #219800).</li> 3141 3142 <li>fix a bug in font initialization from <a href= 3143 "#xterm_328">patch #328</a> (FreeBSD #219800).</li> 3144 3145 <li>fix a special case in <code>HideCursor</code> which 3146 assigned a bold font to the slot used for normal font in 3147 changes for italics in <a href="#xterm_307">patch #307</a> 3148 (Debian #858304).</li> 3149 3150 <li>updates for ReGIS (Ross Combs): 3151 <ul> 3152 <li>Strings specified with no command are used as 3153 "comments". Print these in the log when tracing.</li> 3154 3155 <li>Catch attempts to use "alternate display" mode (AKA 3156 "blink") from the GIGI, but do not implement it.</li> 3157 3158 <li>The <code>T(M)</code> command should only multiply the 3159 height by 10, not 20.</li> 3160 3161 <li>Make the <code>S(E)</code> command reset more state 3162 than just the screen contents.</li> 3163 3164 <li>Remove two rotation variables which were only being 3165 printed.</li> 3166 3167 <li>Numerous minor fixes and comment updates in the 3168 <code>R</code> command.</li> 3169 3170 <li>Unknown <code>R</code> command option names trigger an 3171 empty response.</li> 3172 3173 <li>Fix the output position after printing rotated text (it 3174 was missing the the sign before).</li> 3175 3176 <li>Fix the position change with pixelvectors and rotated 3177 text (the rotation transform was not being applied).</li> 3178 3179 <li>Update the <em>TODO</em> list and remove a verification 3180 <em>FIXME</em> (slanted text positioning is correct as 3181 is).</li> 3182 3183 <li>Emulate the approximately 1.4x enlargement for text 3184 which isn't rotated at right angles.</li> 3185 3186 <li>Only update the color planes specified in the plane 3187 mask (the <code>W</code> command's <code>F</code> 3188 option).</li> 3189 </ul> 3190 </li> 3191 3192 <li>fix a bug introduced by the changes to font information in 3193 <a href="#xterm_328">patch #328</a>. When processing the 3194 "checkfont" option of the <code>locale</code> resource, the 3195 program referred to the <em>request</em> data, to an array 3196 which was only allocated in the <em>new/result</em> widget 3197 (report by H Merijn Brand).</li> 3198 3199 <li>fix a missing assignment initialization to make the 3200 <code>utf8</code> resource control whether escape sequences to 3201 enable/disable UTF-8 mode are allowed.</li> 3202 </ul> 3203 3204 <h1><a name="xterm_328" id="xterm_328">Patch #328 - 3205 2017/06/01</a></h1> 3206 3207 <ul> 3208 <li>revise parser for <code>charClass</code> resource, making 3209 these improvements: 3210 <ul> 3211 <li>accept octal and hexadecimal values</li> 3212 3213 <li>allow embedded whitespace</li> 3214 3215 <li>allow the class after colon to be optional, e.g., to 3216 clear class settings for a range of characters.</li> 3217 </ul> 3218 </li> 3219 3220 <li>add command-line option 3221 <code>-report-charclass</code>.</li> 3222 3223 <li>fix most lintian warnings about test-package</li> 3224 3225 <li>add <code>eraseSavedLines</code> resource.</li> 3226 3227 <li>document <code>DECSED 3</code> in 3228 <code>ctlseqs.ms</code> (report by Ben Longmans).</li> 3229 3230 <li>improve integration between configure-events and updates 3231 for reported screensize, in particular when switching between 3232 vt100 and tek4014 modes.</li> 3233 3234 <li>modify selection-highlighting of reverse-video text to keep 3235 that distinct, e.g., by reversing the selection foreground and 3236 background colors as one would expect. This fixes a "useless" 3237 case in the description of 3238 <code>highlightColorMode</code>.</li> 3239 3240 <li>improve fix for Debian #759734, addressing a case where 3241 non-colored cursor would be invisible against reverse-video 3242 (see <a href="#xterm_311">patch #311</a>).</li> 3243 3244 <li>updates for ReGIS (Ross Combs): 3245 <ul> 3246 <li>the "H" option of the "T" command should multiply by 3247 10, not 20.</li> 3248 3249 <li>display unknown glyphs as a solid block.</li> 3250 3251 <li>given a succession of text-direction options, use the 3252 last.</li> 3253 3254 <li>fix the direction of ReGIS slanted text so that 3255 negative values produce oblique output .</li> 3256 3257 <li>fix the ReGIS text direction option to only rotate 3258 characters when no following size option is used.</li> 3259 </ul> 3260 </li> 3261 3262 <li>update terminfo to better match corresponding entries in 3263 ncurses, e.g., <code>u8</code> pattern to match the VT220, 3264 VT420, etc., primary responses, as well as adding 3265 <code>smxx</code> and <code>rmxx</code>.</li> 3266 3267 <li>fixes from Jörg Sommer: 3268 <ul> 3269 <li>corrected a trace-message regarding maximum 3270 graphics-size; it used the similar ReGIS maximum size which 3271 might not be configured.</li> 3272 3273 <li>in <code>do_select_regex</code>, clear selection if 3274 there is no match. If the regex does not match anything 3275 around the cursor, the selection returned must be empty, 3276 otherwise the whole line is treated as a match. This way 3277 the command defined by <code>exec-selectable</code> will 3278 not be executed if there is no match.</li> 3279 3280 <li>modify limit in <code>do_select_regex</code> to include 3281 the character at the cursor in the match, making it easier 3282 to type something and then hit the key to trigger 3283 <code>exec-selectable</code>.</li> 3284 3285 <li>If <code>exec-selectable</code> or 3286 <code>insert-selection</code> is triggered by a mouse 3287 button click, the position of the mouse pointer should be 3288 used. This makes it easier to address any position on the 3289 window and it makes it possible to use the mouse, e.g., for 3290 applications such as mutt where you cannot move the 3291 cursor.</li> 3292 </ul> 3293 </li> 3294 3295 <li>modify <code>DECRC</code> to save/restore xterm's 3296 last-column flag used to control wrapping behavior rather than 3297 manipulating <code>DECAWM</code> (report/analysis by Mattias 3298 Engdegård).</li> 3299 3300 <li>add configure option <code>--enable-terminfo-env</code> to 3301 use the value set by <code>--with-own-terminfo</code> for the 3302 <code>$TERMINFO</code> environment variable. That variable was 3303 set automatically for HPUX, but would be useful in other 3304 systems, e.g., for Solaris (request by Jeff Wieland).</li> 3305 3306 <li>fix a race condition when setting up a signal handler to 3307 timeout if opening <code>/dev/tty</code> hangs (patch by Tobias 3308 Stoeckmann).</li> 3309 3310 <li>review/cleanup resources which were not in the manual page 3311 (report by Maxwell Anselm): 3312 <ul> 3313 <li>add manual page description as needed.</li> 3314 3315 <li>drop resource name for <code>menuBar</code>, as 3316 unnecessary.</li> 3317 3318 <li>modify fallback numeric value for 3319 <code>regisScreenSize</code> resource to match that for 3320 <code>maxGraphicSize</code>.</li> 3321 </ul> 3322 </li> 3323 3324 <li>updated configure macros <code>CF_ADD_CFLAGS</code>, 3325 <code>CF_CC_ENV_FLAGS</code>, <code>CF_GNU_SOURCE</code>, 3326 <code>CF_MATH_LIB</code>, and <code>CF_XOPEN_SOURCE</code> from 3327 other program-changes.</li> 3328 3329 <li>update config.guess, config.sub</li> 3330 3331 <li>change “maximum screensize” assumed by 3332 <code>resize</code> to 9999x9999, to accommodate people using 3333 the <em><code>Unreadable</code></em> font.</li> 3334 3335 <li>drop <code>Utility</code> from default value of 3336 <code>--with-desktop-category</code> (Debian #780176).</li> 3337 3338 <li>widen the configure script pattern used for finding related 3339 ".desktop" files, including “Terminal”</li> 3340 3341 <li>several minor improvements to font utility functions: 3342 <ul> 3343 <li>provide for later modification to implement font-sets 3344 by parsing the font resources as comma-separated 3345 lists.</li> 3346 3347 <li>parse <code>-fn</code> and <code>-fa</code> similarly, 3348 using “x:” and “xft:” prefixes for 3349 font name/family strings to distinguish between XLFD and 3350 Xft font specifications.</li> 3351 3352 <li>use loops to iterate over font classes</li> 3353 3354 <li>use getters/setters for font data to allow for 3355 on-demand lookups.</li> 3356 3357 <li>make the debugging trace for missing glyph less verbose 3358 since that interferes with the <code>-report-fonts</code> 3359 option.</li> 3360 3361 <li>refactor <code>xtermLoadFont</code> to make it clearer 3362 how some fonts are derived from others, e.g., bold, 3363 wide.</li> 3364 3365 <li>make the triggering and suppressing of font-warnings 3366 more consistent by storing the last state in the 3367 widget.</li> 3368 3369 <li>reduce font-warnings by checking for repeated 3370 warnings.</li> 3371 </ul> 3372 </li> 3373 3374 <li>add <code>vttests/query-status.pl</code></li> 3375 3376 <li>add <code>vttests/closest-rgb</code></li> 3377 3378 <li>add special case for displaying soft-hyphen if it happens 3379 to fall at the right margin, and omitting similar case such as 3380 the BIDI markers, where a zero-width character is neither a 3381 control character nor a combining character (Debian 3382 #844325).</li> 3383 3384 <li>modify logic for <code>OSC 52</code>, <em>manipulate 3385 selection data</em>, to update the selection-time to include 3386 the latest X events. This fixes some cases where the selection 3387 was invalid, e.g., after an event due to focus-follows-mouse 3388 (report/testcase by Stephane Chauveau).</li> 3389 3390 <li>revise macro <code>CastMallocN</code> as new macro 3391 <code>TextAlloc</code> to make explicit use of 3392 <code>sizeof(char)</code> (prompted by patch by Cade 3393 Foster).</li> 3394 3395 <li>add <em>“Mouse Ops”</em> menu entry and related 3396 resources to allow runtime disabling/enabling of the mouse 3397 protocol escape sequences (discussion with Bob Proulx).</li> 3398 3399 <li>improve discussion of mouse actions versus protocol in the 3400 manual (discussion with Bob Proulx).</li> 3401 3402 <li>improve discussion of environment variables in the manual, 3403 pointing out where some features (such as termcap and the 3404 System5 <code>COLUMNS</code> and <code>LINES</code> variables) 3405 are used rarely, mainly to support legacy applications.</li> 3406 3407 <li>add examples of <code>translations</code> resource for 3408 select/paste, and for font-size changes to the manual.</li> 3409 3410 <li>minor reordering of some entries in <code>ctlseqs.ms</code> 3411 for consistency (report by Arran Ubels).</li> 3412 3413 <li>add <code>-s</code> option to <code>256colors2.pl</code> 3414 and <code>88colors2.pl</code>, to demonstrate modifying the 3415 “system” colors 0–15.</li> 3416 3417 <li>omit <code>XFT_SPACING</code> property from call to <code> 3418 XftPatternBuild</code>, to work around a bug in 3419 <em>fontconfig</em> for handling Google Go fonts, whose names 3420 sort in an order not expected by <em>fontconfig</em>, causing 3421 the request for a monospaced font to return <em>italics</em>, 3422 e.g., 3423 <blockquote> 3424 <pre> 3425$ fc-match 'Go Mono:spacing=monospace' 3426Go-Mono-Italic.ttf: "Go Mono" "Italic" 3427(report by Giacomo Boffi on <a href= 3428"http://unix.stackexchange.com/questions/324941/xterm-displays-an-italic-face-instead-of-regular">Stackoverflow</a>). 3429 3430</pre> 3431 </blockquote> 3432 </li> 3433 3434 <li>modify <code>minstall.in</code> to improve a workaround 3435 added to the manual page in <a href="#xterm_182">patch #182</a> 3436 to avoid having the C preprocessor used in the imake 3437 configuration strip out the comments in the character classes 3438 section (reports by Ted Unangst, Anthony J Bentley).</li> 3439 </ul> 3440 3441 <h1><a name="xterm_327" id="xterm_327">Patch #327 - 3442 2016/10/07</a></h1> 3443 3444 <ul> 3445 <li>add a check in the function which handles end-of-line 3446 wrapping to ensure that C1 controls are allocated one column 3447 when <code>allowC1Printable</code> is set (Debian 3448 #738794).</li> 3449 3450 <li>use consistent error-checking after <code>strtol</code> 3451 calls, fixes a case where a query with OSC 6 did not ensure 3452 there was a valid color number (report by Alex Smith).</li> 3453 3454 <li>add <code>-baudrate</code> option, for testing 3455 ncurses.</li> 3456 3457 <li>always generate the <code>CASE_<em>xxx</em></code> symbols 3458 in <code>VTparse.h</code> and <code>Tekparse.h</code>, as part 3459 of a change to improve debug-logging. This makes the build 3460 always depend upon <code>awk</code>.</li> 3461 3462 <li>modify <code>allowC1Printable</code> to disallow codes 3463 160-254 as being equivalent to codes 32-126 when parsing escape 3464 sequences (Debian #839220).</li> 3465 3466 <li>amend fix from <a href="#xterm_326">patch #326</a> for 3467 TrueType fonts to exclude the hidden character used for 3468 double-width cells (report by Grady Martin).</li> 3469 3470 <li>fix a typo in <code>ctlseqs.ms</code></li> 3471 </ul> 3472 3473 <h1><a name="xterm_326" id="xterm_326">Patch #326 - 3474 2016/09/25</a></h1> 3475 3476 <ul> 3477 <li>updated appdata file (report by Richard Hughes).</li> 3478 3479 <li>improve discussion of the different terminal emulations 3480 provided by xterm in the manual page.</li> 3481 3482 <li>add examples of setting the icon title with/without the 3483 window title in the manual (Debian #833984).</li> 3484 3485 <li>correct a limit-check when using a numeric value for 3486 extended Booleans e.g., <code>*fullscreen:3</code> rather than 3487 a name such as <code>*fullscreen:never</code>.</li> 3488 3489 <li>add action <code>allow-bold-fonts</code></li> 3490 3491 <li>improved formatting fixes for manual page, using script to 3492 find mismatches in spelling of resources, actions and menu 3493 entries.</li> 3494 3495 <li>improve documentation of logging resources.</li> 3496 3497 <li>fix a special case of flickering cursor by adding 3498 <code>GraphicsExpose</code> to the list of event types that 3499 should not trigger making the mouse cursor visible (patch by 3500 Joe Peterson).</li> 3501 3502 <li>correct initialization of line-drawing in VT52-mode, 3503 overlooked in changes for <a href="#xterm_297">patch #297</a> 3504 (report/patch by Ben Wiley Sittler).</li> 3505 3506 <li>minor clarification of form-feed versus line-feed in 3507 <code>ctlseqs.ms</code> (suggested by David Kemper).</li> 3508 3509 <li>amend fix for Debian #738794 to restore a check for missing 3510 characters which are <em>not</em> combining characters. Also 3511 fill in a corresponding special case for TrueType fonts (Debian 3512 #827905).</li> 3513 </ul> 3514 3515 <h1><a name="xterm_325" id="xterm_325">Patch #325 - 3516 2016/06/05</a></h1> 3517 3518 <ul> 3519 <li>improve manual page discussion of function keys (discussion 3520 with Ross Combs).</li> 3521 3522 <li>further improve fix for Debian #545220 in <a href= 3523 "#xterm_248">patch #248</a>, to avoid conflict with combining 3524 characters (Debian #738794).</li> 3525 3526 <li>improve <code>-hold</code> option to avoid 100% CPU usage 3527 with NetBSD after closing the shell, which makes subsequent 3528 checks for X input events fail (prompted by patch by Pierre 3529 Pronchery).</li> 3530 3531 <li>review <code>#ifdef</code> statements, listed those which 3532 do not have a configure option in 3533 <code>xtermcfg.hin</code>.</li> 3534 3535 <li>fixed one case where the menu sensistivity for 3536 <em>Print-All Immediately</em> and <em>Print-All on Error</em> 3537 was not properly ifdef'd.</li> 3538 3539 <li>modify terminfo entries for 16-, 88- and 256-color to reset 3540 palette with <code>rs1</code> capability.</li> 3541 3542 <li>accept <code>legacy</code> value of <code>-kt</code> as 3543 synonym for the <code>oldXtermFKeys</code> resource, and extend 3544 the full-reset logic to use the keyboard type set via 3545 <code>-kt</code>.</li> 3546 3547 <li>modify <code>ioctl</code> calls for <code>I_PUSH</code> to 3548 first check if the module has been added, using 3549 <code>I_FIND</code>. This is needed for newer Solaris libraries 3550 with c11 support (adapted from patch by Alan Coopersmith).</li> 3551 3552 <li>add check in <code>getXtermCombining</code> to ensure that 3553 combining characters were allocated (report by Tor 3554 Andersson).</li> 3555 3556 <li>add configure option <code>--without-xinerama</code> to 3557 allow suppressing the extension (Gentoo #580936).</li> 3558 3559 <li>update keysym2ucs.c based on Unicode 9.0</li> 3560 3561 <li>fixed most <code>cppcheck --enable=all</code> warnings, 3562 including for style (prompted by report by David Binderman). 3563 There was one bug-fix: 3564 <ul> 3565 <li>RGB least-squares computation in 3566 <code>allocateClosestRGB</code> used only one ordinate</li> 3567 </ul> 3568 </li> 3569 3570 <li>add <code>cppcheck</code> to lint-like programs in 3571 configure script and makefile.</li> 3572 3573 <li>fix some const correctness issues and point out an array 3574 lifetime issue (Ross Combs).</li> 3575 3576 <li>updates for SIXEL and ReGIS (Ross Combs): 3577 <ul> 3578 <li>Sixel drawing should still happen after an error if 3579 some commands have been processed</li> 3580 3581 <li>Tiny steps toward reporting ReGIS input</li> 3582 </ul> 3583 </li> 3584 </ul> 3585 3586 <h1><a name="xterm_324" id="xterm_324">Patch #324 - 3587 2016/03/10</a></h1> 3588 3589 <ul> 3590 <li>updated configure macro <code>CF_LD_RPATH_OPT</code> from 3591 ncurses changes.</li> 3592 3593 <li>provide alternate fix for Juha Nurmela's report by turning 3594 on POSIX signals if <code>_POSIX_C_SOURCE</code> is at least 3595 one. This is done to improve the behavior if a direct child 3596 process receives a <code>STOP</code> signal.</li> 3597 3598 <li>revert change to <code>CF_POSIX_C_SOURCE</code> from 3599 <a href="#xterm_323">patch #323</a> (reports by Ashish Shukla, 3600 Christian Weisgerber).</li> 3601 </ul> 3602 3603 <h1><a name="xterm_323" id="xterm_323">Patch #323 - 3604 2016/03/07</a></h1> 3605 3606 <ul> 3607 <li>updated appdata and desktop files to add keywords (report 3608 by Richard Hughes).</li> 3609 3610 <li>modify configure macro <code>CF_POSIX_C_SOURCE</code> to 3611 accommodate some systems, e.g., FreeBSD, which have separated 3612 their implementation specific preprocessor symbols from the 3613 POSIX ones, requiring both to be defined (report by Juha 3614 Nurmela).</li> 3615 3616 <li>change the directory to the current working dir of the 3617 child process in exec-formatted and exec-selectable actions 3618 (patch by Alexander Pohoyda).</li> 3619 3620 <li>correct typo in xterm.man (patch by Larry Hynes).</li> 3621 3622 <li>correct typo in ctlseqs.ms (report by Shriramana 3623 Sharma).</li> 3624 3625 <li>add feature to support XHTML and SVG screen dumps (patch by 3626 Jens Schweikhardt).</li> 3627 3628 <li>correct response to DECRQSS when terminal id is less than 3629 400 (patch by Iwamoto Kouichi).</li> 3630 </ul> 3631 3632 <h1><a name="xterm_322" id="xterm_322">Patch #322 - 3633 2016/01/02</a></h1> 3634 3635 <ul> 3636 <li>fix regression due to incorrect fix for compiler warning 3637 when allocating storage for <code>/etc/shells</code> (reports 3638 by Ashish Shukla, Debian #809646).</li> 3639 </ul> 3640 3641 <h1><a name="xterm_321" id="xterm_321">Patch #321 - 3642 2015/12/31</a></h1> 3643 3644 <ul> 3645 <li>add resource <code>keepClipboard</code>, escape sequence 3646 and action <code>keep-clipboard</code>.</li> 3647 3648 <li>add optional feature to capture text copied to clipboard at 3649 the time of copying rather than at the time the clipboard 3650 contents are requested for pasting (patch by Milan 3651 Mehner).</li> 3652 3653 <li>improve a special case where the <code>-e</code> option was 3654 used to pass a single-quoted command via <code>luit</code>, by 3655 wrapping it in a “sh -c” (report by Keith 3656 Hedger).</li> 3657 3658 <li>minor fix for type-cleanliness when allocating storage for 3659 <code>/etc/shells</code> (Tobias Stoeckmann).</li> 3660 3661 <li>fix a typo in manual page (Dan Church).</li> 3662 3663 <li>fix minor file-descriptor leak; after calling 3664 <code>openpty</code>, the slave's file descriptor is not needed 3665 (report by Juha Nurmela).</li> 3666 3667 <li>editorial change to ctlseqs.ms (report by David 3668 Gomboc).</li> 3669 3670 <li>minor updates for autoconf macros.</li> 3671 3672 <li>update config.guess, config.sub</li> 3673 </ul> 3674 3675 <h1><a name="xterm_320" id="xterm_320">Patch #320 - 3676 2015/08/28</a></h1> 3677 3678 <ul> 3679 <li>correct documentation for <code>%t</code> format (report by 3680 Martin Tournoij).</li> 3681 3682 <li>add <code>%R</code> for consistency to 3683 <code>exec-formatted()</code> and 3684 <code>insert-formatted()</code> actions.</li> 3685 3686 <li>add <code>%r</code> format to <code>exec-formatted()</code> 3687 and <code>insert-formatted()</code> actions (patch by Martin 3688 Tournoij).</li> 3689 3690 <li>Amend fix for Debian #794201 (report forwarded from 3691 Christian Jachmann by Emanuel Haupt, Debian #797008).</li> 3692 </ul> 3693 3694 <h1><a name="xterm_319" id="xterm_319">Patch #319 - 3695 2015/08/19</a></h1> 3696 3697 <ul> 3698 <li>add a section to <code>ctlseqs.ms</code> discussing control 3699 sequences and ECMA-48, to explain why C1 controls do not occur 3700 in the decoded characters from UTF-8 byte streams (prompted by 3701 discussion with Poul-Henning Kamp).</li> 3702 3703 <li>modify check for cursor-theme from <a href= 3704 "#xterm_301">patch #301</a> to also check if the resource 3705 <code>Xcursor.theme</code> is set to a nonempty value before 3706 fallback to xterm's own dummy theme (request by Robert 3707 Kloefkorn).</li> 3708 3709 <li>explain in <code>ctlseqs.ms</code> that some keys which 3710 normally send SS3-prefixes are changed to CSI-prefixes if 3711 key-modifiers are passed as parameters (report by George 3712 Nachman).</li> 3713 3714 <li>correct double-free of font information when multiple 3715 problems are found, particularly for the wide fonts loaded via 3716 the <code>-wc</code> option (report/testcase by Nelson 3717 Beebe).</li> 3718 3719 <li>make configure option <code>--enable-builtin-xpms</code> 3720 actually work (report by William Bulley).</li> 3721 3722 <li>correct combination of <code>-ls</code> and <code>-e</code> 3723 options for utempter configuration (Debian #794201).</li> 3724 3725 <li>NetBSD build-fix for OPT_RENDERFONT versus OPT_SHIFT_FONTS 3726 (patch by Matthew Green, forwarded by Thomas Klausner).</li> 3727 3728 <li>fix a few minor bugs found with Coverity.</li> 3729 3730 <li>update pixelvector handling (Ross Combs): 3731 <ul> 3732 <li>split pixel-based and coord-based functions with common 3733 parts factored out to a "raw" function</li> 3734 3735 <li>add a "step" variant which loads a single PV digit</li> 3736 </ul> 3737 </li> 3738 3739 <li>make the graphic dirty upon resize or clear, fixing some 3740 missing refreshes (patch by Ross Combs)</li> 3741 3742 <li>fixes scrolling to use user coordinates and move in the 3743 correct direction (patch by Ross Combs)</li> 3744 3745 <li>several fixes/improvements for ReGIS whitespace and 3746 page-handling (patch by Ross Combs).</li> 3747 </ul> 3748 3749 <h1><a name="xterm_318" id="xterm_318">Patch #318 - 3750 2015/04/12</a></h1> 3751 3752 <ul> 3753 <li>rename new(er) configure option 3754 <code>--enable-initial-erase</code> to 3755 <code>--enable-pty-erase</code>, since that conflicted with an 3756 existing option (report by Jens Schweikhardt).</li> 3757 3758 <li>fix cut/paste error in <code>--with-builtin-xpms</code> 3759 configure option (reports by Jens Schweikhardt, Ross 3760 Combs).</li> 3761 3762 <li>fix minor formatting issue in xterm manual (report by Jens 3763 Schweikhardt).</li> 3764 3765 <li>eliminate unnecessary "#(vi" markers in autoconf macros by 3766 using "(" to begin case-statement cases (suggested by Jens 3767 Schweikhardt).</li> 3768 3769 <li>minor fixes to improve <code>const</code> usage (Ross 3770 Combs).</li> 3771 </ul> 3772 3773 <h1><a name="xterm_317" id="xterm_317">Patch #317 - 3774 2015/03/27</a></h1> 3775 3776 <ul> 3777 <li>adapt example for <code>exec-formatted</code> from <a href= 3778 "http://lukas.zapletalovi.com/2013/07/hidden-gems-of-xterm.html"> 3779 Lukáš Zapletal's</a> webpage to manual (Debian 3780 #780008).</li> 3781 3782 <li>add a short usage section to the xterm manual, including 3783 notes on setting the window title (Debian #742477).</li> 3784 3785 <li>revise a change made to <code>ICH</code> in <a href= 3786 "#xterm_314">patch #314</a> to address limit-checks 3787 (reports/testcases by Zoltán Kéri and Joe 3788 Peterson, also reported by Christian Weisgerber).</li> 3789 </ul> 3790 3791 <h1><a name="xterm_316" id="xterm_316">Patch #316 - 3792 2015/03/07</a></h1> 3793 3794 <ul> 3795 <li>revert change to make <code>DCH</code> honor top/bottom 3796 scrolling margins. For the record, both the VT420 and VT520 3797 reference manuals incorrectly state that <em>"DCH has no effect 3798 outside the scrolling margins."</em></li> 3799 3800 <li>fix regression in <code>DCH</code> introduced in adjustment 3801 for limit-check in <a href="#xterm_314">patch #315</a> 3802 (report/testcase by Zoltán Kéri, also reported by 3803 Christian Weisgerber).</li> 3804 3805 <li>correct default value for configure option 3806 <code>--enable-initial-erase</code>; it should be "False", but 3807 in <a href="#xterm_315">patch #315</a> it was "Maybe", which 3808 differed from default set in <a href="#xterm_192">patch 3809 #192</a>.</li> 3810 </ul> 3811 3812 <h1><a name="xterm_315" id="xterm_315">Patch #315 - 3813 2015/03/02</a></h1> 3814 3815 <ul> 3816 <li>change default for <code>--enable-narrowproto</code> for 3817 Cygwin to "no" to better match contemporary configurations 3818 (report by Jens Schweikhardt, prompted by <a href= 3819 "http://stackoverflow.com/questions/28137618/what-is-a-narrow-prototype-and-why-would-i-need-one/28334574?noredirect=1#comment45022128_28334574"> 3820 discussion</a>).</li> 3821 3822 <li>provide <code>OSC 106</code> as an alternative to 3823 <code>OSC 6</code>, avoiding conflict with one of 3824 Terminal.app's undocumented escape sequences (report by Egmont 3825 Koblinger).</li> 3826 3827 <li>fix an off-by-one in comparison when autowrap and 3828 left/right margins are combined (report by George 3829 Nachman).</li> 3830 3831 <li>modify <code>DECBI</code> and <code>DECFI</code> to work 3832 outside the left/right margins, since the vague VT520 reference 3833 manual could support that interpretation (suggested by George 3834 Nachman).</li> 3835 3836 <li>correct response for <code>DECSCUSR</code> in 3837 <code>DECRQSS</code> (report/analysis by George Nachman).</li> 3838 3839 <li>add <code>DECSLRM</code> to list for <code>DECRQSS</code> 3840 in ctlseqs.ms (report by George Nachman).</li> 3841 3842 <li>improve limit-checks versus assert's in the debugging 3843 version (reports by George Nachman).</li> 3844 3845 <li>correct a problem with multiple writes to the right-margin 3846 when autowrap is turned off (report by George Nachman, also 3847 reported in Gnome #744819 by Ulf Magnusson).</li> 3848 3849 <li>modify <code>DCH</code> to honor top/bottom and left/right 3850 margins (report by George Nachman).</li> 3851 3852 <li>correct off-by-one in comparison so that <code>DL</code> 3853 honors left/right margins (report by George Nachman).</li> 3854 3855 <li>correct logic of <code>DECSCL</code>, which always set 3856 8-bit controls as a side-effect (report by George 3857 Nachman).</li> 3858 3859 <li>correct loop limit for <code>DECSED 1</code>, when 3860 <code>DECSCA</code> is enabled (report by George Nachman).</li> 3861 3862 <li>fix a entry in csi_table for “<code>$</code>”, 3863 needed for <code><em>CSI</em> [ $ z</code> 3864 (report by George Nachman).</li> 3865 3866 <li>remove restriction from <a href="#xterm_279">patch #279</a> 3867 changes on <code>DECIC</code> and <code>DECDC</code> to 3868 left-right mode (report by George Nachman).</li> 3869 3870 <li>correct PID value returned in response to DECRQCRA 3871 (report/analysis by George Nachman).</li> 3872 3873 <li>fix an ifdef'ing problem, where 3874 <code>--disable-dec-locator</code> would turn off logic needed 3875 for <code>DECIC</code> and <code>DECDC</code> (report by George 3876 Nachman).</li> 3877 3878 <li>correct order of parameters in report for 3879 <code><em>CSI</em> 1 9 t</code>, which gives the 3880 screensize in characters (report by George Nachman).</li> 3881 3882 <li>add null pointer checks for a case in DECCRA where part of 3883 the target rectangle lies outside the screen limits (report by 3884 George Nachman).</li> 3885 3886 <li>remove extra "6" for selective erase from DA1 response 3887 (report by George Nachman).</li> 3888 3889 <li>support Xinerama screen specification in geometry parsing 3890 (patch by Nicolas George).</li> 3891 3892 <li>add configure option <code>--enable-initial-erase</code> to 3893 set <code>ptyInitialErase</code> consistently with manpage, as 3894 well as adding a table in manpage to clarify the relationship 3895 between the resources related to the backarrow key (Debian 3896 #775952).</li> 3897 3898 <li>add configure <code>--enable-builtin-xpms</code> to 3899 simplify compiling-in the icons introduced in <a href= 3900 "#xterm_284">patch #284</a> (prompted by discussion with 3901 William Bulley).</li> 3902 3903 <li>fix/improve autoconf macros: 3904 <ul> 3905 <li>CF_WITH_APP_DEFAULTS, add paths for OSX</li> 3906 3907 <li>CF_WITH_MAN2HTML, configure option "--with-man2html" 3908 provides "man2html" as alternative to groff's man/html 3909 conversion</li> 3910 </ul> 3911 </li> 3912 3913 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 3914 </ul> 3915 3916 <h1><a name="xterm_314" id="xterm_314">Patch #314 - 3917 2014/12/28</a></h1> 3918 3919 <ul> 3920 <li>fix a minor bug in the termcap-specific version of 3921 <code>resize</code> when the lines or columns values are at the 3922 very end of an incomplete termcap string (prompted by coverity 3923 report).</li> 3924 3925 <li>improve paste64 feature (report by Olaf Rogalsky) 3926 <ul> 3927 <li>fix “<code>p</code>;” command in 3928 <code>paste64.pl</code> example.</li> 3929 3930 <li>modify <code>_OwnSelection</code> to allow the paste64 3931 control to cause primary/clipboard selections to be 3932 disowned and cleared.</li> 3933 3934 <li>omit an extra "=" used in padding, to make the base64 3935 response a multiple of four characters.</li> 3936 3937 <li>modify <code>_ConvertSelectionHelper</code> to not stop 3938 converting on embedded nulls in the primary or clipboard 3939 selection. That makes the behavior consistent with 3940 cut-buffers. Nulls are not passed on to the application 3941 because they are used for separators in the X library calls 3942 that convert <code>XTextProperty</code> values.</li> 3943 </ul> 3944 </li> 3945 3946 <li>add configure option <code>--with-man2html</code> to allow 3947 an alternative to groff's man/html conversion.</li> 3948 3949 <li>review and modify resource-settings which can be set via 3950 control sequences, etc: 3951 <ul> 3952 <li>add <code>OSC 6</code>, to enable/disable colors 3953 set via <code>OSC 5</code>, without changing the color 3954 assignments (prompted by patch by Ingo Brückl).</li> 3955 3956 <li>add command-line option <code>-itc</code> for 3957 italics.</li> 3958 3959 <li>add <code>colorIT</code> and <code>colorITMode</code> 3960 for italics, like <code>colorBD</code>, etc.</li> 3961 3962 <li>guard <code>allowPasteControls</code> against 3963 modification by <code>editres</code>.</li> 3964 </ul> 3965 </li> 3966 3967 <li>change <code>passedPty</code> from fixed-length to 3968 allocated to ensure that it is long enough to hold the 3969 <code>-S</code> option value (report by Ben Longbons).</li> 3970 3971 <li>improve ReGIS graphics initialization (Ross Combs): 3972 <ul> 3973 <li>add a new string resource to set the default ReGIS 3974 font.</li> 3975 3976 <li>fix a caching problem where the font name wasn't taken 3977 into consideration when looking up cached metrics.</li> 3978 3979 <li>enables use of fractional values in coordinates (which 3980 in turn allows setting the coordinates to something like 3981 [0,1][1,0])</li> 3982 3983 <li>doubles the minimum ReGIS graphic to 200x200</li> 3984 3985 <li>set the default ReGIS image size to "auto"</li> 3986 3987 <li>fix some swapped width/height parameters in TRACE 3988 messages</li> 3989 3990 <li>add support for scaling and mirrored coordinate systems 3991 to the screen address command</li> 3992 3993 <li>sets a minimum ReGIS graphics size of 100x100 -- 3994 smaller address ranges will be scaled up</li> 3995 3996 <li>reset the image if either the width or height is zero 3997 (which should happen together or not at all, but switching 3998 the logic gets rid of some parentheses)</li> 3999 4000 <li>adds support for alternate screen coordinates (just 4001 offsets, not inverted coordinates or scaling)</li> 4002 4003 <li>keeps the graphics state across ReGIS calls unless P1 4004 or P3 entry codes are used</li> 4005 4006 <li>changes loops to continue after parsing whitespace to 4007 allow trailing whitespace</li> 4008 4009 <li>fixes some incorrect character casts</li> 4010 </ul> 4011 </li> 4012 </ul> 4013 4014 <h1><a name="xterm_313" id="xterm_313">Patch #313 - 4015 2014/11/28</a></h1> 4016 4017 <ul> 4018 <li>add <code>regisScreenSize</code> resource setting to allow 4019 custom screensizes for ReGIS graphics (prompted by discussion 4020 with Scott Froebe).</li> 4021 4022 <li>fix some minor issues in manpage (Jens Schweikhardt).</li> 4023 4024 <li>improve ReGIS font-handling (Ross Combs): 4025 <ul> 4026 <li>remove "random junk" generation for unknown 4027 characters</li> 4028 4029 <li>add xterm extension to load user glyphs for alphabet 4030 0</li> 4031 4032 <li>add xterm extension to specify loading an alphabet from 4033 a font by name</li> 4034 4035 <li>fix bug with use of empty alphabet slots which caused 4036 slot 0 to be clobbered</li> 4037 4038 <li>update/clarify ReGIS-related comments</li> 4039 4040 <li>add DECprint extension for printing/clearing the screen 4041 (only clearing is performed)</li> 4042 </ul> 4043 </li> 4044 4045 <li>improve ReGIS colorspec conversion (Ross Combs): 4046 <ul> 4047 <li>avoid some floating point math for colorspace 4048 conversion</li> 4049 4050 <li>move two copies of colorspec parsing to a single 4051 function</li> 4052 4053 <li>change colorspec parsing to handle components being out 4054 of order or with spaces and commas between them</li> 4055 4056 <li>add support for an extension where RGB components can 4057 be given instead of HLS</li> 4058 </ul> 4059 </li> 4060 4061 <li>improve use of const, e.g., for the <code>LineData</code> 4062 pointers (patch by Ross Combs).</li> 4063 4064 <li>clip of graphics that overlap the scrollback buffer and alt 4065 screen (patch by Ross Combs).</li> 4066 4067 <li>amend change to focus-change events in <a href= 4068 "#xterm_287">patch #287</a> to limit it to suppressing the 4069 reset of the urgency-hint, because some useful 4070 <code>FocusOut</code> events were lost (report by Joe 4071 Peterson).</li> 4072 4073 <li>modify dpkg build-script to configure xterm-dev as an 4074 <code>x-terminal-emulator</code> alternative.</li> 4075 4076 <li>extend the <code>--with-xterm-symlink</code> feature to 4077 make symbolic links for the other programs and scripts.</li> 4078 4079 <li>minor fix to <code>vttests/resize.pl</code> to avoid 4080 undefined variable when receiving broken/missing response, 4081 e.g., from mrxvt.</li> 4082 4083 <li>change the way that ReGIS graphics are refreshed (patch by 4084 Ross Combs): 4085 <ul> 4086 <li>it pre-composes any overlapping graphics to avoid 4087 unnecessary and flickering draws</li> 4088 4089 <li>it adds a three-dimensional lookup table for RGB -> 4090 pixel values and uses this across all graphics</li> 4091 4092 <li>it draws in line segments when there is a run of the 4093 same color</li> 4094 4095 <li>in cases where there are no transparent parts, it uses 4096 an XImage to draw</li> 4097 4098 <li>it hooks into the double-buffering support if it is 4099 enabled (though this doesn't seem to get rid of all 4100 flicker).</li> 4101 </ul> 4102 This has the effect of reducing flicker and speeding up 4103 redraws. 4104 </li> 4105 </ul> 4106 4107 <h1><a name="xterm_312" id="xterm_312">Patch #312 - 4108 2014/09/28</a></h1> 4109 4110 <ul> 4111 <li>undo change to <code>do_select_regex()</code> in <a href= 4112 "#xterm_311">patch #311</a> (reports by H Merijn Brand, 4113 Sven-Haegar Koch, Debian #762978).</li> 4114 </ul> 4115 4116 <h1><a name="xterm_311" id="xterm_311">Patch #311 - 4117 2014/09/18</a></h1> 4118 4119 <ul> 4120 <li>mention <code>xclip</code> in manpage as an alternative 4121 workaround for copying clipboard data, noting that 4122 <code>selectToClipboard</code> (see <a href="#xterm_209">patch 4123 #209</a>) is the recommended approach (Debian #639094).</li> 4124 4125 <li>correct comparison in do_select_regex() of working position 4126 against starting column.</li> 4127 4128 <li>correct initialization for regular-expression feature of 4129 <code>exec-selectable</code> and <code>insert-selectable</code> 4130 actions (Debian #758633).</li> 4131 4132 <li>modify logic for <code>exec-formatted</code> and 4133 <code>insert-formatted</code> actions to ensure that the 4134 formatting occurs just after the selection is received (Debian 4135 #758633).</li> 4136 4137 <li>account for state of reverse-video in special case of 4138 cursor coloring (Debian #759734).</li> 4139 4140 <li>fix a sign-extension problem in ReGIS support, as well as 4141 correcting a case where ignored-characters were not really 4142 ignored (patch by Ross Combs).</li> 4143 4144 <li>Enable the "Escape Sequence" menu entry when an OSC 50 4145 is received. Also disable it if the escape sequence specifies 4146 no font (Debian #760208).</li> 4147 4148 <li>improve fix for the <code>fontsel</code> menu entry from 4149 <a href="#xterm_304">patch #304</a>: because the recovery used 4150 the "current font", it would fail if one first selected a valid 4151 font, then an invalid font (Debian #760207).</li> 4152 4153 <li>correct an off-by-one in limit-check for 4154 <code>ScrnLimitChar</code> function (report by Egmont 4155 Koblinger).</li> 4156 </ul> 4157 4158 <h1><a name="xterm_310" id="xterm_310">Patch #310 - 4159 2014/07/25</a></h1> 4160 4161 <ul> 4162 <li>update package/freebsd files based on xterm #309 port.</li> 4163 4164 <li>adapt changes from Minux3.2 which ported <a href= 4165 "#xterm_197">xterm #197</a>, to allow building on that platform 4166 both using <code>imake</code> as well as using the configure 4167 script.</li> 4168 4169 <li>update precompose.c based on Unicode 7.0</li> 4170 4171 <li>build-fix for <code>--with-Xaw3dxft</code> option (report 4172 by Emanuel Haupt).</li> 4173 </ul> 4174 4175 <h1><a name="xterm_309" id="xterm_309">Patch #309 - 4176 2014/07/13</a></h1> 4177 4178 <ul> 4179 <li>modify configure script to work around debris left by 4180 XQuartz upgrades.</li> 4181 4182 <li>modify test-package scripts to enable ReGIS graphics.</li> 4183 4184 <li>improvements/additions to ReGIS graphics, e.g., drawing 4185 text (Ross Combs).</li> 4186 4187 <li>add <code>--with-Xaw3dxft</code>, to link with Xaw 3d xft 4188 library (Stephen P Wall).</li> 4189 4190 <li>amend reset for cursor-shape to take into account 4191 <code>cursorUnderline</code> resource (report by Christian 4192 Weisgerber).</li> 4193 4194 <li>update config.guess, config.sub</li> 4195 </ul> 4196 4197 <h1><a name="xterm_308" id="xterm_308">Patch #308 - 4198 2014/06/19</a></h1> 4199 4200 <ul> 4201 <li>corrected font used for clipping double-width bitmap fonts 4202 from <a href="#xterm_307">patch #307</a> changes to work around 4203 mis-scaled fonts (Debian #752947).</li> 4204 4205 <li>improve wording of a warning message.</li> 4206 </ul> 4207 4208 <h1><a name="xterm_307" id="xterm_307">Patch #307 - 4209 2014/06/17</a></h1> 4210 4211 <ul> 4212 <li>fill background for top/bottom parts of 4213 double-width/double-height characters, to cover occasional gaps 4214 due to bitmap font-scaling (report by Egmont Koblinger).</li> 4215 4216 <li>amend resets for keyboard-type, pointer-mode and 4217 title-modes from <a href="#xterm_305">xterm #305</a> changes to 4218 account for resource settings (Debian #751351).</li> 4219 4220 <li>modify <em>printAttributes</em> feature to include new SGR 4221 codes.</li> 4222 4223 <li>modify cursor show/hide logic to work with italic 4224 fonts.</li> 4225 4226 <li>do clipping and filling for a case with bitmap-fonts and 4227 italics when the font server returns only a "close" match 4228 (report/testcase by Egmont Koblinger).</li> 4229 4230 <li>adjust loop comparison for underlining to display 4231 underlines on 5x8 font as in <a href="#xterm_304">patch 4232 #304</a> (Debian #750733).</li> 4233 4234 <li>amend fix for Freedesktop #15979 (Debian #750733).</li> 4235 4236 <li>amend xterm.appdata.xml, making it validate with current 4237 schema.</li> 4238 </ul> 4239 4240 <h1><a name="xterm_306" id="xterm_306">Patch #306 - 4241 2014/06/03</a></h1> 4242 4243 <ul> 4244 <li>fixes for display-errors in new SGR codes (report by Egmont 4245 Koblinger).</li> 4246 </ul> 4247 4248 <h1><a name="xterm_305" id="xterm_305">Patch #305 - 4249 2014/06/02</a></h1> 4250 4251 <ul> 4252 <li>add <code>xterm.appdata.xml</code> (request by Richard 4253 Hughes). By the way, none of the <em>released</em> validators 4254 yet handle <code><licence></code> tags (or 4255 <code><metadata_license></code>, etc).</li> 4256 4257 <li>fix memory leaks in bitmap font-name caching.</li> 4258 4259 <li>other changes to hard-reset behavior: 4260 <ul> 4261 <li>reset keyboard-type on hard-reset.</li> 4262 4263 <li>reset pointer-mode (<code>pointerMode</code>) on 4264 hard-reset</li> 4265 4266 <li>reset title-modes (<code>titleModes</code>) on 4267 hard-reset</li> 4268 4269 <li>reset cursor-shape on hard or soft-reset</li> 4270 4271 <li>reset LEDs on hard-reset.</li> 4272 4273 <li>reset DECSACE on hard-reset.</li> 4274 </ul> 4275 </li> 4276 4277 <li>reset bracketed-paste mode on hard-reset (suggested by 4278 Egmont Koblinger).</li> 4279 4280 <li>modify UTF-8 decoder to account for 4281 <code>allowC1Printable</code> resource.</li> 4282 4283 <li>revise <code>getXftColor</code> to ensure that its sequence 4284 number will not overflow in long-running sessions.</li> 4285 4286 <li>minor fix to selection to prevent hidden character from 4287 being returned in selection data (report by Egmont 4288 Koblinger).</li> 4289 4290 <li>add <code>-sh</code> to help-message.</li> 4291 4292 <li>amend check for incomplete fonts to always decide that a 4293 character is missing if the font lacks per-character metrics 4294 (prompted by Freedesktop #15979).</li> 4295 4296 <li>minor reorganization to implement “filler” SGR 4297 features. There are no established applications which rely upon 4298 these; some people find them amusing. 4299 <ul> 4300 <li>separate bits used to manage drawing state from 4301 attribute-bits.</li> 4302 4303 <li>implement SGR codes 2, 3, 9, 21 and their corresponding 4304 resets.</li> 4305 4306 <li>add configure option <code>--disable-wide-attrs</code> 4307 to disable the feature.</li> 4308 </ul> 4309 </li> 4310 4311 <li>additional changes for ReGIS support (Ross Combs): 4312 <ul> 4313 <li>fix some arc drawing bugs and add support for pattern 4314 shading.</li> 4315 </ul> 4316 </li> 4317 </ul> 4318 4319 <h1><a name="xterm_304" id="xterm_304">Patch #304 - 4320 2014/05/03</a></h1> 4321 4322 <ul> 4323 <li>add debugging check for parsing table entries, fixed a few 4324 inconsistencies.</li> 4325 4326 <li>handle utmp/utmpx strings consistently with new function 4327 that null-pads unused locations.</li> 4328 4329 <li>build-fix for imake configuration with FreeBSD 9 and later, 4330 to account for replacing <code>utmp</code> with 4331 <code>utmpx</code>.</li> 4332 4333 <li>improve handling of the <code>fontsel</code> 4334 (font-selection) menu item: 4335 <ul> 4336 <li>initialize the menu entry differently if the toolbar 4337 configuration is used, i.e., enabling it without attempting 4338 to use the current selection as a font name. Because of the 4339 way in which the toolbar is setup, this attempt usually 4340 failed, and would result in a warning.</li> 4341 4342 <li>if the menu action fails, e.g., no font can be loaded 4343 for the given selected name, then recover by resuming with 4344 the current font. Before, the recovery went to the default 4345 font. That was done to work around missing bitmap font in 4346 <a href="#xterm_276">patch #276</a>.</li> 4347 </ul> 4348 </li> 4349 4350 <li>document OSC 119 in the control sequences listing 4351 (report by Egmont Koblinger).</li> 4352 4353 <li>modify special handling of <code>XF86Paste</code> or 4354 <code>SunPaste</code> keysyms (see <a href="#xterm_227">patch 4355 #227</a>) to use the standard shift/lock modifiers in case 4356 those are, for example, used in level 3 in an XKB file (patch 4357 by Matthieu Herrb).</li> 4358 4359 <li>configure macro updates: 4360 <ul> 4361 <li>drop the <code>-no-gcc</code> option from 4362 CF_INTEL_COMPILER</li> 4363 4364 <li>modify CF_XOPEN_SOURCE to suppress the check for 4365 defining _XOPEN_SOURCE on Solaris</li> 4366 </ul> 4367 </li> 4368 4369 <li>reduce bss storage used for ReGIS/Sixel modules, as well as 4370 cleanup storage usage in other modules.</li> 4371 4372 <li>initial changes for ReGIS support (Ross Combs): 4373 <ul> 4374 <li>document control-sequences</li> 4375 4376 <li>separate ifdef's for sixel and color-register 4377 features</li> 4378 4379 <li>add configuration for VT382</li> 4380 </ul> 4381 </li> 4382 </ul> 4383 4384 <h1><a name="xterm_303" id="xterm_303">Patch #303 - 4385 2014/03/06</a></h1> 4386 4387 <ul> 4388 <li>improve check for <code>/etc/shells</code> to allow its 4389 entries to be symbolic links.</li> 4390 4391 <li>fix a regression in <a href="#xterm_302">patch #302</a> 4392 fixes relating to interaction of <code>SHELL</code> and 4393 <code>XTERM_SHELL</code> variables (Debian #740919).</li> 4394 4395 <li>improve manpage discussion of use of 4396 <code>/etc/shells</code> for validating the <code>SHELL</code> 4397 environment variable.</li> 4398 4399 <li>further improve the approximation for color map by ignoring 4400 bits which would not be applied by the rgb masks for the 4401 current visual (report by Joe Peterson).</li> 4402 4403 <li>add <code>-report-colors</code> to usage-message (report by 4404 Joe Peterson).</li> 4405 </ul> 4406 4407 <h1><a name="xterm_302" id="xterm_302">Patch #302 - 4408 2014/03/02</a></h1> 4409 4410 <ul> 4411 <li>amend approximation for color map introduced in <a href= 4412 "#xterm_277">patch #277</a> to make that apply only to 4413 <code>TrueColor</code> (adapted from patch by Joe 4414 Peterson).</li> 4415 4416 <li>add <code>-report-colors</code> option, to show colors as 4417 they are allocated.</li> 4418 4419 <li>fix some gcc <code>-Wcast-qual</code> warnings.</li> 4420 4421 <li>correct app-defaults location for CentOS-4 in 4422 xterm.spec</li> 4423 4424 <li>improve check in <code>minstall.sh</code> for X manpage's 4425 section number; add sample dependencies for the relevant 4426 documentation package to packaging test-scripts (prompted by 4427 Novell #779474).</li> 4428 4429 <li>modify sample build-scripts for dpkg and rpm to ensure that 4430 <code>vttests</code> scripts are uncompressed and 4431 executable.</li> 4432 4433 <li>modify Perl scripts in <code>vttests</code> to use 4434 <code>env</code> to find Perl rather than relying on 4435 <code>/usr/bin/perl</code> This makes the sample scripts usable 4436 with NetBSD and other systems using <em>pkgsrc</em>.</li> 4437 4438 <li>amend check from <a href="#xterm_301">patch #301</a> for 4439 valid shell to permit existing <code>SHELL</code> value to 4440 specify the shell; clarify the behavior in the manpage (report 4441 by Emmanuel Thomé).</li> 4442 4443 <li>amend change to wide-character processing from <a href= 4444 "#xterm_257">patch #257</a> to allow switching to/from UTF-8 4445 encoding if the <code>utf8</code> resource was not set to 4446 “always” (report by Honza Maly).</li> 4447 4448 <li>fix incorrect free from <a href="#xterm_301">patch #301</a> 4449 changes, if explicit program without <code>-e</code> option is 4450 a valid shell (patch by Romain Francoise).</li> 4451 </ul> 4452 4453 <h1><a name="xterm_301" id="xterm_301">Patch #301 - 4454 2014/01/19</a></h1> 4455 4456 <ul> 4457 <li>OSC 104 and 105 did not accept parameter to reset a 4458 specific color (patch by Egmont Koblinger).</li> 4459 4460 <li>add configure check for <code>initgroups</code>, and use 4461 that function to complement its use of <code>setgid</code> 4462 (prompted by patch by Miroslav Lichvar).</li> 4463 4464 <li>improve manpage description of scrollbar translations 4465 versus the vt100 translations (Debian #723573).</li> 4466 4467 <li>add a few paragraphs to manpage explaining the implications 4468 of xterm's reliance on X Toolkit for command-line parsing.</li> 4469 4470 <li>modify cursor-theme logic to check if the environment 4471 variable <code>XCURSOR_THEME</code> is set to a nonempty value 4472 before constructing a dummy them (prompted by similar check 4473 added in OpenBSD CVS).</li> 4474 4475 <li>add check for a case where TrueType bold font is missing a 4476 glyph where the non-bold font has it. Temporarily switch to the 4477 non-bold font to draw the glyph (report by David 4478 Demelier).</li> 4479 4480 <li>minor documentation fixes for ctlseqs.ms</li> 4481 4482 <li>only set <code>SHELL</code> environment variable to 4483 programs found in <code>/etc/shells</code> (prompted by 4484 patch/report by Al Poole).</li> 4485 4486 <li>build-fix, when <code>--disable-wide-chars</code> 4487 <code>--disable-boxchar</code> is used (prompted by patch by 4488 Andrey Panov).</li> 4489 </ul> 4490 4491 <h1><a name="xterm_300" id="xterm_300">Patch #300 - 4492 2013/12/03</a></h1> 4493 4494 <ul> 4495 <li>amend workaround for <code>Xcursor</code> library from 4496 <a href="#xterm_298">patch #298</a>; the suggested solution for 4497 Debian #466704 fell afoul of a bug in <code>Xcursor</code> 4498 which treated an empty value for <code>Inherits=</code> as a 4499 valid theme—and resulted in a stack overflow due to 4500 unbounded recursion. Certain environments such as XFCE4 exposed 4501 the bug. A related report in Debian #531679 was closed without 4502 following the recommendation to limit stack recursion in this 4503 library (reported by Sergey V Dyatko, Debian #731269).</li> 4504 </ul> 4505 4506 <h1><a name="xterm_299" id="xterm_299">Patch #299 - 4507 2013/12/01</a></h1> 4508 4509 <ul> 4510 <li>fix regression in line-drawing from <a href= 4511 "#xterm_297">patch #297</a> changes for NRCS exposed by change 4512 to <code>assumeAllChars</code> resource in <a href= 4513 "#xterm_298">patch #298</a> (report by Markus Waldeck).</li> 4514 </ul> 4515 4516 <h1><a name="xterm_298" id="xterm_298">Patch #298 - 4517 2013/11/27</a></h1> 4518 4519 <ul> 4520 <li>quiet a warning about ambiguity when <code>-h</code> 4521 command-line option is parsed, since <code>-help</code> is used 4522 rather than the options mentioned in the message. This warning 4523 was caused by fixes in <a href="#xterm_272">patch 4524 #272</a>.</li> 4525 4526 <li>remove an extra check for keypad-mode which interfered with 4527 the <a href="#xterm_280">patch #280</a> 4528 <code>modifyKeyboard</code> feature for the numeric keypad 4529 (report by David Conners).</li> 4530 4531 <li>change default for <code>assumeAllChars</code> resource 4532 (Debian #725682). There are unresolved issues with Terminus 4533 fonts, e.g., Debian #722017.</li> 4534 4535 <li>add <code>-report-fonts</code> command-line option and 4536 <code>reportFonts</code> resource to optionally report the 4537 fonts which are loaded, and their metrics such as the number of 4538 missing glyphs.</li> 4539 4540 <li>work around <code>Xcursor</code> library to make 4541 <code>pointerColor</code> resource work as documented (Debian 4542 #466704, analysis by Vincent Lefèvre).</li> 4543 4544 <li>amend change from <a href="#xterm_297">patch #297</a> for 4545 ASCII-equivalents to ensure that missing characters which 4546 happen to be double-width are padded to the expected number of 4547 columns. Also, correct the choice between normal/wide Xft fonts 4548 used when checking for missing characters (reported by WU Yue, 4549 Debian #728949, Gentoo #491334).</li> 4550 4551 <li>modify sixel-graphics drawing to account for scrollbar 4552 width (report by Mario Edelmann).</li> 4553 4554 <li>fix remaining issue with <code>DECNRCM</code>; the British 4555 character set was confused with ISO Latin-1 (report by Hayaki 4556 Saito).</li> 4557 4558 <li>build-fix for <code>--disable-boxchars</code> configure 4559 option.</li> 4560 4561 <li>updated configure macros, from ongoing work on lynx and 4562 ncurses.</li> 4563 4564 <li>update config.guess, config.sub</li> 4565 </ul> 4566 4567 <h1><a name="xterm_297" id="xterm_297">Patch #297 - 4568 2013/09/10</a></h1> 4569 4570 <ul> 4571 <li>modify check for missing cells in bitmap font to work 4572 around terminus 10646 encoding, which is mostly missing, add 4573 <code>assumeAllChars</code> resource to provide the older 4574 behavior.</li> 4575 4576 <li>modify macros used to check for missing cells in bitmap 4577 fonts to pick up a long-overlooked improvement made to xfd in 4578 XFree86.</li> 4579 4580 <li>improve workaround for groff versus ASCII-equivalents; 4581 <a href="#xterm_185">patch #185</a> had overlooked Xft 4582 configuration (reported by anonymous user on Arch Linux 4583 forum).</li> 4584 4585 <li>review/extend <code>DECNRCM</code> support (prompted by 4586 report by Hayaki Saito asking about the two "A" codes). 4587 <ul> 4588 <li>make pasting of DECNRCM data work by translating the 4589 pasted data into the selected encoding.</li> 4590 4591 <li>limit mode changes to VT220 and up.</li> 4592 4593 <li>ignore SCS for National Replacement Characters if 4594 <code>DECNRCM</code> is not set.</li> 4595 4596 <li>add tables and logic to decode SCS controls ending with 4597 "%" and one additional character. This expects the parsing 4598 of SCS to VT320.</li> 4599 4600 <li>also added parsing for SCS of DEC Supplemental and DEC 4601 Technical, which are for VT2xx and VT3xx respectively.</li> 4602 4603 <li>implement VT220 Multinational character set "GR" aka 4604 "DEC Supplemental Graphic".</li> 4605 4606 <li>DEC Technical character set based on <a href= 4607 "http://www.vt100.net/charsets/technical.html">vt100.net 4608 description</a>.</li> 4609 4610 <li>implement Portuguese NRC.</li> 4611 4612 <li>provide for temporarily switching to/from NRC mode from 4613 UTF-8 mode when <code>DECNRCM</code> is set or reset.</li> 4614 </ul> 4615 </li> 4616 4617 <li>minor fix to assert's found while testing examples from 4618 <a href="https://gist.github.com/ttdoda">ttdoda's 4619 slrm-test1.txt</a>.</li> 4620 4621 <li>modify <code>DECLRMM</code> to not update the cursor 4622 position (report by Iwamoto Kouichi forwarded by Hayaki 4623 Saito).</li> 4624 4625 <li>modify cursor-position report to take origin-mode into 4626 account (report by Hayaki Saito, see also <a href= 4627 "https://github.com/gnachman/iTerm2/pull/129">iTerm2 pull 4628 request 129</a>).</li> 4629 4630 <li>correct off-by-one comparison in when handling 4631 carriage-return at left margin (patch by Iwamoto Kouichi, 4632 forwarded by Hayaki Saito).</li> 4633 4634 <li>improve handling of <code>faceName</code> resource when a 4635 "size=" property is embedded in it, by using that size to 4636 replace the default <code>faceSize</code> resource. This lets 4637 xterm honor the other faceSize resources (report by Jens 4638 Schweikhardt).</li> 4639 4640 <li>improve OSC 52 selection-data by setting its timestamp 4641 to correspond to the most-recent event received by xterm, to 4642 ensure that calls to <code>XtOwnSelect</code> succeed even if 4643 the selection is manipulated solely through the keyboard 4644 (prompted by patch by Richard Tollerton).</li> 4645 4646 <li>change configure-script defaults for "luit" and 4647 "wide-chars" options to match the values used in the imake 4648 configuration, to lessen user surprise if they are accustomed 4649 to building xterm using imake(report by Andries E 4650 Brouwer).</li> 4651 4652 <li>improve the imake-related configuration's check if xterm is 4653 started in a locale that uses UTF-8 encoding. Before, this 4654 checked the locale settings only for "UTF-8", now it checks 4655 ignoring case for "UTF-8" and "UTF-8" (report by Andries E 4656 Brouwer).</li> 4657 </ul> 4658 4659 <h1><a name="xterm_296" id="xterm_296">Patch #296 - 4660 2013/07/10</a></h1> 4661 4662 <ul> 4663 <li>improve experimental sixel feature (Ross Combs).</li> 4664 4665 <li>modify delimiter in configure macro used to add a library 4666 after a given library to avoid confusion with <code>-Wl</code> 4667 pass-through options to linker (NetBSD #48031).</li> 4668 4669 <li>fix quoting in expression used to trim extra libraries from 4670 <a href="#xterm_295">patch #295</a> changes (report by Thomas 4671 Klausner).</li> 4672 </ul> 4673 4674 <h1><a name="xterm_295" id="xterm_295">Patch #295 - 4675 2013/07/06</a></h1> 4676 4677 <ul> 4678 <li>adjust order of libraries to work around incomplete symbol 4679 resolution when using <code>--as-needed</code> option 4680 (ArchLinux #36047).</li> 4681 4682 <li>minor fix for <code>plink.sh</code>, for IRIX64.</li> 4683 </ul> 4684 4685 <h1><a name="xterm_294" id="xterm_294">Patch #294 - 4686 2013/07/05</a></h1> 4687 4688 <ul> 4689 <li>add note in ctlseqs.ms for CPR response pointing out a 4690 potential point of confusion with the string sent by a modified 4691 F1 key (suggested by Bram Moolenaar).</li> 4692 4693 <li>improve <code>plink.sh</code> by checking if the linker 4694 supports the <code>--as-needed</code> option (suggested by 4695 David Philippi).</li> 4696 4697 <li>improve clearing for private mode 1049 when switching to 4698 the alternate screen (Debian #711758).</li> 4699 4700 <li>amend fix from <a href="#xterm_292">patch #292</a> by 4701 removing now-unneeded chunk which introduced problem in 4702 selection (Debian #714527).</li> 4703 4704 <li>add definition to optionally override compiled-in class for 4705 xterm from makefile, needed for test-packages.</li> 4706 4707 <li>add configure option 4708 <code>--enable-sixel-graphics</code></li> 4709 4710 <li>add experimental support for sixel graphics (Ross 4711 Combs).</li> 4712 </ul> 4713 4714 <h1><a name="xterm_293" id="xterm_293">Patch #293 - 4715 2013/05/27</a></h1> 4716 4717 <ul> 4718 <li>modify sample xterm.spec to use newer icon</li> 4719 4720 <li>add configure option <code>--with-icon-symlink</code> to 4721 work around systems which map icon requests for to a single 4722 "xterm" icon, but neglect to install the icon needed for window 4723 decorations (report by H Merijn Brand).</li> 4724 4725 <li>improve parameterizing of sample xterm.spec</li> 4726 4727 <li>amend fix for printer from <a href="#xterm_280">patch 4728 #280</a>, removing a reset of the signal handler for 4729 <code>SIGCHLD</code> (report by Joe Julian).</li> 4730 4731 <li>set environment variable <code>XTERM_FILTER</code> if a 4732 locale-filter is used.</li> 4733 4734 <li>enable <code>DEBUG</code> logic when 4735 <code>--enable-trace</code> configure option is given.</li> 4736 4737 <li>improve description of <code>initialFont</code>, 4738 <code>set-vt-font</code> and <code>set-tex-text</code> in 4739 manpage (Debian #707899).</li> 4740 4741 <li>fix regression from <a href="#xterm_292">patch #292</a>; 4742 selecting a word that ended at the right margin without 4743 wrapping would not select the last cell (report by Christian 4744 Weisgerber).</li> 4745 </ul> 4746 4747 <h1><a name="xterm_292" id="xterm_292">Patch #292 - 4748 2013/04/25</a></h1> 4749 4750 <ul> 4751 <li>add limit-check when double-click selects a word; if the 4752 saved-lines were scrolled back and the word selected wrapped at 4753 the screen's lower right corner, an assertion was triggered 4754 (patch by Taketo Kabe).</li> 4755 4756 <li>correct limit-check in <code>unsaveEditBufLines</code>, 4757 fixing a case where enlarging the terminal size could show a 4758 blank line where there actually is available text (patch by 4759 Bertram Felgenhauer).</li> 4760 4761 <li>add <code>PasteControls</code> feature to 4762 <code>allowWindowOps</code> which by default disallows pasting 4763 control characters other than formatting such as carriage 4764 return (discussion with Hayaki Saito).</li> 4765 4766 <li>fix typo in ctlseqs.ms for DECRQM response (patch by 4767 Emanuele Giaquinta).</li> 4768 4769 <li>update default shown in configure <code>--help</code> 4770 message for <code>--with-terminal-id</code> option (patch by 4771 Andres Perera).</li> 4772 4773 <li>rename script/preprocessor variables used for substituting 4774 the <code>backarrowKey</code> default value for consistency 4775 (patch by Andres Perera).</li> 4776 4777 <li>set umask to 077 before creating debugging-trace 4778 files.</li> 4779 4780 <li>add configure option <code>--disable-openpty</code> to 4781 control whether openpty() may be used in preference to 4782 posix_openpt().</li> 4783 4784 <li>improve workaround from <a href="#xterm_279">patch #279</a> 4785 for BSD systems which do not complete initialization until both 4786 sides of the pseudoterminal are opened, by preferring openpty() 4787 function over posix_openpt() when available (report by 4788 Christian Weisgerber).</li> 4789 </ul> 4790 4791 <h1><a name="xterm_291" id="xterm_291">Patch #291 - 4792 2013/02/26</a></h1> 4793 4794 <ul> 4795 <li>add validity check for xterm widget parameter to 4796 <code>AlternateScroll</code> function, needed to handle wheel 4797 mouse events in the scrollbar area since <a href= 4798 "#xterm_282">patch #282</a> changes which introduced 4799 <code>alternateScroll</code> feature (Redhat #874327).</li> 4800 </ul> 4801 4802 <h1><a name="xterm_290" id="xterm_290">Patch #290 - 4803 2013/02/12</a></h1> 4804 4805 <ul> 4806 <li>revert of <a href="#xterm_282">patch #282</a> change was 4807 incomplete (report by Jim Reisert).</li> 4808 4809 <li>fix typo in manpage (report by Vincent 4810 Lefèvre).</li> 4811 </ul> 4812 4813 <h1><a name="xterm_289" id="xterm_289">Patch #289 - 4814 2013/02/08</a></h1> 4815 4816 <ul> 4817 <li>revert the <a href="#xterm_282">patch #282</a> change which 4818 restored "lost" text after shrinking/growing the screen size. 4819 If the screen was updated between the two resizing operations, 4820 unexpected text might be shown at the end (report/testcase by 4821 Joe Peterson).</li> 4822 4823 <li>reverse the arrow-keys sent for 4824 <code>alternateScroll</code> to match the usage in browsers 4825 (suggested by Dieter Roelants).</li> 4826 4827 <li>modify mouse reports to consistently indicate motion events 4828 whether or not a button is pressed. Old behavior (since 4829 <a href="#xterm_127">patch #127</a> modified encoding for wheel 4830 mouse) showed only that the button was released if no button 4831 had been pressed (report by Andy Koppe).</li> 4832 4833 <li>correct and improve behavior for SGR 1006 mouse protocol on 4834 button release in any-event mode. Initial implementation in 4835 <a href="#xterm_277">patch #277</a> left internal state showing 4836 the last button pressed when reporting motion events. It now 4837 keeps track of all buttons which have been pressed and 4838 released, showing the lowest remaining button by number in the 4839 response (reports by Hayaki Saito, Andy Koppe).</li> 4840 4841 <li>fix inconsistency between <code>TermColors</code> and 4842 <code>OscTextColors</code> enums which interchanged values for 4843 tektronix cursor color and highlight foreground in control 4844 sequences in <a href="#xterm_225">patch #225</a> (report/patch 4845 by Peder Stray).</li> 4846 4847 <li>fix inconsistent use of noreturn-attribute in 4848 <code>Exit</code> function which interfered with clang 4849 --analyze.</li> 4850 4851 <li>remove incorrect <code>free</code> used in computation of 4852 <code>XTERM_SHELL</code> variable, from Coverity fixes in 4853 <a href="#xterm_288">patch #288</a> (FreeBSD #175782).</li> 4854 4855 <li>add <code>--with-valgrind</code> option to configure script 4856 for consistency with my other programs.</li> 4857 4858 <li>update table of ambiguous width characters in wcwidth.c 4859 based on Unicode 6.2.0</li> 4860 4861 <li>update table of combining characters in wcwidth.c based on 4862 Unicode 6.2.0</li> 4863 4864 <li>update precompose.c based on Unicode 6.2.0</li> 4865 </ul> 4866 4867 <h1><a name="xterm_288" id="xterm_288">Patch #288 - 4868 2013/01/09</a></h1> 4869 4870 <ul> 4871 <li>fix a special case in <code>ShowCursor</code> where the 4872 foreground and background colors of the current position are 4873 the same. In that case, choose the further of the window's 4874 foreground and background colors for the cursor color.</li> 4875 4876 <li>modify <code>alternateScroll</code> feature added in 4877 <a href="#xterm_282">patch #282</a> to use either 4878 <code>CSI</code> or <code>SS3</code> according to the cursor 4879 keys application mode setting, to simplify using it in vi, etc. 4880 (suggested by Dietar Roelants).</li> 4881 4882 <li>revise manpage for <code>resize</code> to clarify the 4883 changes which <code>resize</code> may make to the terminal 4884 settings as well as to the terminal itself.</li> 4885 4886 <li>remove code such as <code>struct ttysize</code>, used for 4887 SunOS 3 and 4.</li> 4888 4889 <li>modify configure script and makefile to check for 4890 <code>groff</code> and suppress groff-specific rules if groff 4891 is not found.</li> 4892 4893 <li>modify ctlseqs.ms and makefile to work around bugs in 4894 <code>grohtml</code> which cause ".png" files to be truncated 4895 when producing html documentation.</li> 4896 4897 <li>modify suffix rules for "make docs" to make the names of 4898 the generated ".png" files predictable, helping to work around 4899 longstanding problems with this feature of groff—none of 4900 its releases work for <em>all</em> of xterm's tables..</li> 4901 4902 <li>correct typo in ctlseqs.ms for DECIC and DECDC; the 4903 character preceding the final "<code>~</code>" is an ASCII 4904 single-quote "<code>'</code>" rather than a space (report by 4905 Paul LeoNerd Evans).</li> 4906 4907 <li>update CF_GCC_VERSION macro, handling both Debian and 4908 Darwin.</li> 4909 4910 <li>improve configure script checks for the 4911 <code>--with-desktop-category</code> option. After <a href= 4912 "#xterm_280">patch #280</a> changes, if no value was given for 4913 this option, and no existing desktop files found for 4914 comparison, the incorrect "auto" value was passed into the 4915 generated desktop file (report by Julien Cristau).</li> 4916 4917 <li>modify sample build-scripts to disable check for 4918 <code>imake</code> due to code-rot in Xorg.</li> 4919 4920 <li>add <code>-v</code> command-line option to 4921 <code>resize</code>, reporting the same version string as 4922 <code>xterm</code> and the two shell-wrappers.</li> 4923 4924 <li>make name-transformation apply to other occurrences of 4925 <code>resize</code>, other manpages.</li> 4926 4927 <li>special-case the name-transformation in xterm's manpage in 4928 the NAME section so that the result works with 4929 <code>makewhatis</code> (report by Julien Cristau).</li> 4930 4931 <li>modify install-rules for manpages to put each program's 4932 respective transformed name into the header rather than 4933 xterm's.</li> 4934 4935 <li>remove deprecated files: proto.h, os2main.c</li> 4936 4937 <li>minor fixes based on Coverity scan, including: 4938 <ul> 4939 <li>correct caching of Atom value for the font menu's 4940 "Selection" entry.</li> 4941 4942 <li>ensure that utmp/utmpx calls do not depend upon 4943 trailing nulls in the <code>ut_id</code> and 4944 <code>ut_line</code> values.</li> 4945 </ul> 4946 </li> 4947 </ul> 4948 4949 <h1><a name="xterm_287" id="xterm_287">Patch #287 - 4950 2012/11/25</a></h1> 4951 4952 <ul> 4953 <li>fix a case where in_put() loop could continue when it has 4954 found an X event rather than the pty, causing the pty-read to 4955 be delayed (patch by Balazs Kezes).</li> 4956 4957 <li>add option to <code>pointerMode</code> resource and 4958 corresponding control sequences to allow text-cursor to remain 4959 hidden if the pointer leaves/enters the window via accelerator 4960 keys. Ordinary motion within the window restores the pointer 4961 (prompted by patch by Balazs Kezes).</li> 4962 4963 <li>remove special case of modifiers for the 4964 <code>Mode_switch</code> and <code>XK_ISO_Level3_Shift</code> 4965 from <a href="#xterm_223">patch #223</a>. Verified that the 4966 conflict which this was intended to resolve does not happen for 4967 normal compose- or modeswitch-handling (prompted by patch by 4968 Balazs Kezes, Debian #638694).</li> 4969 4970 <li>modify the handling of focus-change events to ignore those 4971 whose detail is <code>NotifyPointer</code>, since those are 4972 sent in addition to focus-change events directed to the old/new 4973 windows having focus. In particular, this prevents the 4974 urgency-hint from being reset inadvertently (prompted by patch 4975 by Balazs Kezes).</li> 4976 4977 <li>modify description of <code>iconName</code> in manpage to 4978 make it clearer that this resource does not specify the 4979 filename of an icon (discussion with Ian Collier).</li> 4980 4981 <li>modify <code>iconHint</code> resource to allow suppressing 4982 the built-in icon by setting this to "none" (discussion with 4983 Ian Collier).</li> 4984 4985 <li>make <code>-iconic</code> option work with the toolbar 4986 configuration.</li> 4987 4988 <li>correct initialization of window manager hints used to set 4989 the icon-pixmap. That detail from <a href="#xterm_282">patch 4990 #282</a> overwrote state used to control the 4991 <code>-iconic</code> command-line option (report by Ian 4992 Collier).</li> 4993 4994 <li>fix paste64 feature for the case where the selection comes 4995 from the current terminal. The selection callback can happen 4996 after the reply is partly built, making it necessary to flush 4997 the reply-buffer to keep things in the proper order (report by 4998 Ailin Nemui).</li> 4999 5000 <li>reject command-line options which are longer than the 5001 options in xterm's table, to avoid mismatches (Redhat 5002 #875305).</li> 5003 5004 <li>correct attribution for <a href="#xterm_282">patch #282</a> 5005 changes.</li> 5006 </ul> 5007 5008 <h1><a name="xterm_286" id="xterm_286">Patch #286 - 5009 2012/10/29</a></h1> 5010 5011 <ul> 5012 <li>fix <code>minstall.in</code> to work with "make docs" rule, 5013 so that patch number appears in the corresponding generated 5014 documentation.</li> 5015 5016 <li>modify <code>minstall.in</code> to keep the name shown in 5017 the heading consistent with any renaming, e.g., for 5018 test-builds.</li> 5019 5020 <li>check for misconfigured <code>printerCommand</code> 5021 resource on the first use, warn and disable it if it does not 5022 specify an executable command (Debian #691642).</li> 5023 5024 <li>improve check for window-manager name needed to establish 5025 usable default for activeIcon resource. This works around a 5026 scenario where <code>gdm</code> does incomplete cleanup, 5027 leaving window properties that refer to windows which no longer 5028 exist (Redhat #869959).</li> 5029 </ul> 5030 5031 <h1><a name="xterm_285" id="xterm_285">Patch #285 - 5032 2012/10/23</a></h1> 5033 5034 <ul> 5035 <li>add/adapt FreeBSD ports files for test-building.</li> 5036 5037 <li>modify <code>minstall.sh</code> to use the patch-number and 5038 date in the manpage footer.</li> 5039 5040 <li>add check for failure to allocate the fg/bg colors at 5041 startup, e.g., misconfiguration. Work around by setting both to 5042 the default colors (suggested by Scott Bertilson).</li> 5043 5044 <li>amend change for <a href="#xterm_280">patch #280</a> which 5045 added <code>modifyKeyboard</code>, to make 5046 <code>modifyOtherKeys</code> work (report by Ailin Nemui).</li> 5047 5048 <li>add <code>query-colors.pl</code> example for 5049 OSC 4.</li> 5050 5051 <li>correct mis-applied fix for minstall.sh (report by Miroslav 5052 Lichvar).</li> 5053 </ul> 5054 5055 <h1><a name="xterm_284" id="xterm_284">Patch #284 - 5056 2012/10/14</a></h1> 5057 5058 <ul> 5059 <li>amend configurability changes for icons from <a href= 5060 "#xterm_283">patch #283</a>, moving the new functionality to 5061 the <code>iconHint</code> resource to avoid conflict with 5062 existing uses of the <code>iconName</code> resource in the 5063 <code>Shell</code> widget (report by Emanuel Haupt).</li> 5064 5065 <li>fix documentation errata reported by Miroslav Lichvar: 5066 <ul> 5067 <li>correct manpage default for <code>allowTcapOps</code> 5068 (see <a href="#xterm_243">patch #243</a></li> 5069 5070 <li>modify documentation for configure 5071 <code>--enable-backarrow-key</code> to match the script 5072 (see <a href="#xterm_280">patch #280</a>).</li> 5073 5074 <li>fix typo in <code>minstall.sh</code> in <a href= 5075 "#xterm_283">patch #283</a>, which made the leading-cap 5076 "Xterm" become "xterm" (patch by Miroslav).</li> 5077 </ul> 5078 </li> 5079 5080 <li>fix two typos in configure.in from <a href= 5081 "#xterm_283">patch #283</a> changes; one broke the 5082 <code>--regex</code> configure option (report by H Merijn 5083 Brand).</li> 5084 </ul> 5085 5086 <h1><a name="xterm_283" id="xterm_283">Patch #283 - 5087 2012/10/09</a></h1> 5088 5089 <ul> 5090 <li>modify makefile and script to generate appropriate renaming 5091 s/xterm/xterm-dev/ for test-package's manpage.</li> 5092 5093 <li>improve makefile rules for installing/uninstalling pixmap 5094 files, to include the newer mini- and filled- variants.</li> 5095 5096 <li>clarify change in manpage regarding <a href= 5097 "#xterm_282">patch #282</a> change to always set a 5098 window-decoration icon, even if <code>iconName</code> is not 5099 set.</li> 5100 5101 <li>add a fourth flavor of window-decoration icons, 5102 "filled-xterm" for a monochrome xterm with filled 5103 interior.</li> 5104 5105 <li>use shape-mask to improve contrast of the window-decoration 5106 icons.</li> 5107 5108 <li>minor changes to icon colors to improve contrast on 5109 bright-mud backgrounds.</li> 5110 5111 <li>drop configure checks for memmove versus bcopy, and 5112 strerror function; all currently tested platforms support 5113 these.</li> 5114 5115 <li>cleanup configure macros, as done in byacc 20121003.</li> 5116 5117 <li>improve configurability of the built-in icon selectable via 5118 the <code>iconName</code> resource.</li> 5119 5120 <li>update config.guess, config.sub</li> 5121 </ul> 5122 5123 <h1><a name="xterm_282" id="xterm_282">Patch #282 - 5124 2012/09/28</a></h1> 5125 5126 <ul> 5127 <li>improve configure check for 5128 <code>XkbKeycodeToKeysym</code>, fixing a regression on some 5129 older systems in the <a href="#xterm_280">patch #280</a> 5130 changes.</li> 5131 5132 <li>add clarification in manpage for 5133 <code>alwaysBoldMode</code> and <code>veryBoldColors</code> 5134 resources (prompted by Derek Martin question about using the 5135 former with TrueType fonts).</li> 5136 5137 <li>add <code>alternateScroll</code> resource and corresponding 5138 control sequences which modify the <code>scroll-forw</code> and 5139 <code>scroll-back</code> actions: when the alternate screen is 5140 displayed, wheel mouse up/down will send cursor keys (Debian 5141 #683942).</li> 5142 5143 <li>improve rendering for the case when a Unicode character is 5144 absent in the bold font but present in the normal font by 5145 temporarily falling back to the normal font (Debian #359006, 5146 Debian #408666).</li> 5147 5148 <li>provide configure option 5149 <code>--enable-double-buffer</code> and ifdef's to allow 5150 comparisons with/without double-buffering. The default uses 5151 normal buffering.</li> 5152 5153 <li>add feature to optionally scroll current page before 5154 clearing, controlled by resource setting 5155 <code>cdXtraScroll</code> (prompted by patch by Balazs 5156 Kezes):</li> 5157 5158 <li>integrated patches from Arch Linux forum posting (patches 5159 by Balazs Kezes): 5160 <ul> 5161 <li>modify reallocation limit of line-data when resizing 5162 screen so that "lost" text will be restored if the screen 5163 is first shrunk and then grown.</li> 5164 5165 <li>modify output to use double-buffering to reduce 5166 flicker.</li> 5167 </ul> 5168 </li> 5169 5170 <li>modify <code>scroll-lock</code> action to handle 5171 on/off/toggle keywords like other actions. Previously the 5172 optional parameter was interpreted as an integer.</li> 5173 5174 <li>extend <code>DECSCUSR</code> to provide a way to set the 5175 cursor to a vertical bar (patch by Paul Bolle).</li> 5176 5177 <li>add <code>-8</code>, <code>-c</code>, <code>-d</code> and 5178 <code>-u</code> options to <code>88colors2.pl</code> and 5179 <code>256colors2.pl</code> scripts. No current terminal 5180 emulator recognizes C1 controls while handling UTF-8 5181 encoding—see notes in <a href="#xterm_119">patch #119</a> 5182 and <a href="#xterm_109">patch #109</a> regarding 5183 <code>utf8controls</code>—but the <code>-u</code> and 5184 <code>-8</code> options are useful for demonstrating this 5185 point.</li> 5186 5187 <li>improve speed when changing color palettes using OSC 5188 controls by deferring repaint while followup controls might be 5189 additional color palette changes.</li> 5190 5191 <li>modify <code>SGR 38</code> and 5192 <code>SGR 48</code> to accept RGB index, matching the 5193 closest entry in xterm's palette.</li> 5194 5195 <li>extend <code>SGR 38</code> and 5196 <code>SGR 48</code> to accept colon as parameter separator 5197 (request by Paul LeoNerd Evans).</li> 5198 5199 <li>modify <code>fullscreen</code> action to allow it to toggle 5200 the full-screen mode rather than only set or unset it (prompted 5201 by Eeri Kask's suggestion to support 5202 <code>_NET_WM_TOGGLE</code>). This implementation does not yet 5203 use <code>_NET_WM_TOGGLE</code>.</li> 5204 5205 <li>add support for <code>_NET_WM_STATE_MAXIMIZED_VERT</code> 5206 and <code>_NET_WM_STATE_MAXIMIZED_HORZ</code> EWMH properties 5207 (suggested by Eeri Kask).</li> 5208 5209 <li>make fullscreen mode work with the tek4014 window. This 5210 change makes only the currently active window to be changed to 5211 fullscreen rather than changing both windows.</li> 5212 5213 <li>modify <code>TekClear</code> function to discard pending 5214 output before clearing the tek4014 display (patch by Kevin 5215 Ryde).</li> 5216 5217 <li>fix <code>deleteIsDEL</code> feature, broken in <a href= 5218 "#xterm_280">patch #280</a> changes (report by Mike Thornburg, 5219 forwarded by Jeremy Huddleston).</li> 5220 5221 <li>fix a special case of wrapping double-width characters 5222 (report/test-case by Ken Winstein).</li> 5223 5224 <li>add <code>E3</code> extended capability to 5225 <code>xterm-basic</code> to match ncurses <a href= 5226 "https://invisible-island.net/ncurses/NEWS.html#t20120728">20120728</a> 5227 patch.</li> 5228 5229 <li>fix incorrect transformation of row-parameter for 5230 <code>ClearCurBackground</code> in <a href="#xterm_279">patch 5231 #279</a> which caused incorrect painting in some scrolling 5232 scenarios (report by Chuck Silvers).</li> 5233 5234 <li>fix typo in manpage description of <code>+maximized</code> 5235 option (Paul Maier).</li> 5236 5237 <li>change default for configure option 5238 <code>--with-xpm</code>, turning it on unless requested 5239 otherwise.</li> 5240 5241 <li>add configure option <code>--with-icon-name</code> which 5242 can be used to override the default icon used in 5243 icon-themes.</li> 5244 5245 <li>extend <code>activeIcon</code> resource to provide 5246 <code>default</code> value which tells xterm to determine the 5247 window manager's name and automatically enable the feature for 5248 fvwm and window maker. The explicit true/false values can be 5249 used to override this behavior.</li> 5250 5251 <li>add "mini" xterm icon, which scales better than the 5252 standard xterm icon, e.g., for the gnome/kde "panel" 5253 feature.</li> 5254 5255 <li>extend <code>iconName</code> resource to search for icon 5256 named according to resource value and use that if found. If not 5257 found, use compiled-in pixmap. Both set the WM_ICON_NAME 5258 property which is used by various window managers, usually for 5259 window decoration.</li> 5260 5261 <li>updated autoconf patch, adding support for --datarootdir, 5262 which changes the default location of manpages.</li> 5263 5264 <li>further improved autoconf macros for configuring icons, 5265 from vile 9.8h</li> 5266 </ul> 5267 5268 <h1><a name="xterm_281" id="xterm_281">Patch #281 - 5269 2012/06/26</a></h1> 5270 5271 <ul> 5272 <li>remove "$(srcdir)/" from install-icon rule to fix builds 5273 when --srcdir configuration option is used.</li> 5274 5275 <li>fix for configure script's search for icon file when it is 5276 not found in the current directory, e.g., when building out of 5277 tree (patch by Thierry Reding).</li> 5278 5279 <li>undo the XK_Home / XK_End change from <a href= 5280 "#xterm_280">patch #280</a> which broke the non-VT220 keyboard 5281 for those keys (report by H Merijn Brand).</li> 5282 </ul> 5283 5284 <h1><a name="xterm_280" id="xterm_280">Patch #280 - 5285 2012/06/24</a></h1> 5286 5287 <ul> 5288 <li>add configure check to work around warning from 5289 desktop-file-install for "Encoding", noting that it emits 5290 deprecation warnings without providing its version 5291 information.</li> 5292 5293 <li>add configure option <code>--with-icon-theme</code> to tell 5294 xterm whether to install into an icon theme, defaulting to 5295 "hicolor" (Redhat #755206, Redhat #799614 and Redhat 5296 #804279).</li> 5297 5298 <li>change <code>--with-icondir</code> to look for "icons" 5299 directory rather than "pixmaps" by default. Add new option 5300 <code>--with-pixmapdir</code> to allow these two uses to be 5301 installed concurrently.</li> 5302 5303 <li>modify configure options <code>--with-app-defaults</code> 5304 and <code>--with-icondir</code> to accept "auto" as value to 5305 look for existing directory from well-known locations.</li> 5306 5307 <li>add missing codes for secondary DA response which tell the 5308 type of terminal as in the primary DA response.</li> 5309 5310 <li>update primary DA response for VT420 to include user 5311 windows and horizontal scrolling.</li> 5312 5313 <li>add <code>modifyKeyboard</code> resource to support 5314 keypad-modifier changes per request by Thomas Wolff.</li> 5315 5316 <li>add XK_Home / XK_End to editing-keypad checks</li> 5317 5318 <li>add back-tab key <code>kB</code> to termcap entries to 5319 match the terminfo.</li> 5320 5321 <li>update terminfo to match corresponding entries in ncurses, 5322 e.g., add <code>XT</code> and adjust <code>sgr</code> string 5323 for xterm-bold entry.</li> 5324 5325 <li>add configure options to predefine the most commonly 5326 customized resources for terminal-settings, use those to 5327 substitute into the manpage the corresponding compiled-in 5328 values: <code>altSendsEscape</code>, <code>backarrowKey</code>, 5329 <code>backarrowKeyIsErase</code>, <code>deleteIsDEL</code>, 5330 <code>metaSendsEscape</code> (Redhat #819588).</li> 5331 5332 <li>change default emulation level to VT420 (discussion with 5333 Ailin Nemui).</li> 5334 5335 <li>improve logic for DECSCL; <a href="#xterm_279">patch 5336 279</a> partly enforced limitation of this to higher-level 5337 emulations. This patch finishes that change.</li> 5338 5339 <li>improve check for base of combining characters, preventing 5340 combination when cursor movement has intervened. Mosh's webpage 5341 gives two different examples of this, with other causes 5342 ascribed to the behavior.</li> 5343 5344 <li>modify IL/DL to set cursor to first column on row for 5345 better VT102/VT220 compatibility (prompted by code review of 5346 mosh).</li> 5347 5348 <li>separate state-table entries for DECSC/DECRC from the 5349 ANSI.SYS save/restore cursor, since the latter conflicts with 5350 DECSLRM when DECLRMM is enabled since <a href= 5351 "#xterm_279">patch #279</a> (report/analysis by Ailin 5352 Nemui).</li> 5353 5354 <li>fixes to avoid using <code>SIGCHLD</code> handler of main 5355 program in printer's subprocess (report by Joe Julian).</li> 5356 5357 <li>correct restore-parameter for mouse-modes from <a href= 5358 "#xterm_279">patch #279</a> changes.</li> 5359 5360 <li>add null-pointer checks to input-method caching added in 5361 <a href="#xterm_277">patch #277</a> to fix a problem in the 5362 exposure code, when deselecting a window (report by Kriston 5363 Rehberg).</li> 5364 5365 <li>unset <code>DESKTOP_STARTUP_ID</code> environment variable 5366 to lessen confusion on the part of GTK applications which use 5367 the variable without checking it (report by John Little).</li> 5368 </ul> 5369 5370 <h1><a name="xterm_279" id="xterm_279">Patch #279 - 5371 2012/05/10</a></h1> 5372 5373 <ul> 5374 <li>fill in missing cases in the save/restore modes feature 5375 (report by Thomas Wolff).</li> 5376 5377 <li>add check to ensure that combining characters are 5378 precomposed in the order given (report/analysis by Andries E 5379 Brouwer).</li> 5380 5381 <li>improve workability check for posix_openpt(), to take into 5382 account BSD systems which do not complete initialization until 5383 both sides of the pseudoterminal are opened (report by 5384 Christian Weisgerber).</li> 5385 5386 <li>amend fix for Debian #650291 in <a href="#xterm_277">patch 5387 #277</a> changes to account for different data returned by 5388 vnc4server (Debian #670638).</li> 5389 5390 <li>add check in DECCRA operation to make copies of blinking 5391 text also blink by updating a line-level flag.</li> 5392 5393 <li>modify rectangle operations to work with DECOM.</li> 5394 5395 <li>modify DECSERA to use the current protected state rather 5396 than preserving it.</li> 5397 5398 <li>add <code>precompose</code> resource to allow storing 5399 character data in Normalized Form D as described in <a href= 5400 "http://unicode.org/reports/tr15/">http://unicode.org/reports/tr15/</a> 5401 (report/discussion with Andries E Brouwer).</li> 5402 5403 <li>modify CBT, other ISO-6429 controls which are used by VT520 5404 to work with DECOM.</li> 5405 5406 <li>add HPR and VPR controls, ISO 6429 cursor movement used in 5407 VT520.</li> 5408 5409 <li>remove "linux" restriction for IUTF8 ifdef in main.c 5410 (prompted by Matthew Dempsky posting on 5411 mailing.openbsd.tech).</li> 5412 5413 <li>implement the remaining VT420-level device status 5414 reports.</li> 5415 5416 <li>change DECXCPR to return page 1, rather than 0.</li> 5417 5418 <li>improve VT-level checks on reporting functions, such as 5419 DECXCPR.</li> 5420 5421 <li>change limit on <code>decTerminalID</code> to 525.</li> 5422 5423 <li>fixes to improve vttest vt52 screen when running as a 5424 VT420: 5425 <ul> 5426 <li>add checks for some VT2xx and up controls for 5427 consistency: DECSCL, S1C8T, S1C7T.</li> 5428 5429 <li>modify DECRQSS return for DECSCL to only return that 5430 when running as VT2xx and up.</li> 5431 5432 <li>when exiting from VT52-mode, resume in VT100 level 5433 rather than the level before starting VT52-mode.</li> 5434 </ul> 5435 </li> 5436 5437 <li>implement DECLRMM, DECSLRMM and DECNCSM (prompted by 5438 discussions with Ailin Nemui and Paul LeoNerd Evans). This 5439 modifies several controls to obey top/bottom and left/right 5440 margins.</li> 5441 5442 <li>correct macro definition used for testing modes used in 5443 ANSI/DEC request-mode controls introduced in <a href= 5444 "#xterm_262">patch #262</a>.</li> 5445 5446 <li>modify <code>x_getlogin</code> to check $LOGNAME and $USER 5447 before fallback to <code>getlogin</code>, so that user's choice 5448 for these variables can be carried forward to the xterm process 5449 (Debian #611487).</li> 5450 5451 <li>document DECSCUSR response for DECRQSS in ctlseqs.ms</li> 5452 5453 <li>add <code>zIconTitleFormat</code> resource to allow 5454 customizing the "*** " prefixed to the icon title when the 5455 <code>zIconBeep</code> feature is activated (request by Thomas 5456 Adam).</li> 5457 5458 <li>modify DECSCUSR to update the same internal variable as 5459 RM/SM 12, and document in manpage the two variables used for 5460 controlling blinking cursor (report by Paul LeoNerd 5461 Evans).</li> 5462 5463 <li>correct response data for DECSCUSR in reply for DECRQSS 5464 response, which had inverted the blink-value (reports by Ailin 5465 Nemui, Paul LeoNerd Evans).</li> 5466 5467 <li>add a null-pointer check in <code>OkPasswd</code> macro to 5468 fix a problem in <code>resize</code> with Fedora 17 and a 5469 serial console (report/patch by Daniel Drake).</li> 5470 5471 <li>add workaround for Mac OS X, which loses the window size of 5472 a pseudo-terminal when the tty device is opened 5473 (report/analysis by Egmont Koblinger).</li> 5474 5475 <li>updated configure check for workable 5476 <code>posix_openpt</code> versus <code>grantpt</code>, from 5477 <code>luit</code> fixes.</li> 5478 5479 <li>modify DECIC/DECDC/DECBI/DECFI implemented in <a href= 5480 "#xterm_277">patch #277</a> to enable them only in VT4xx mode 5481 and up (report by Ailin Nemui).</li> 5482 5483 <li>update config.guess, config.sub</li> 5484 </ul> 5485 5486 <h1><a name="xterm_278" id="xterm_278">Patch #278 - 5487 2012/01/18</a></h1> 5488 5489 <ul> 5490 <li>correct initialization for <code>eightBitMeta</code> 5491 resource (FreeBSD #164101).</li> 5492 5493 <li>make special check for Darwin 9 (and lower) to <em>not</em> 5494 use <code>posix_openpt</code> (report by Christian Ebert).</li> 5495 5496 <li>minor fixes (adding ".ne" directives) to reduce the cases 5497 where groff's utility for generating images for tables dumps 5498 core. Most versions of groff (I've found 1.19.2 to be the most 5499 stable) dump core when attempting to report that there are too 5500 few lines on a page for a table to be shown.</li> 5501 </ul> 5502 5503 <h1><a name="xterm_277" id="xterm_277">Patch #277 - 5504 2012/01/07</a></h1> 5505 5506 <ul> 5507 <li>remove special case for ISC pseudo-terminals which attempts 5508 to open the pty in two different ways.</li> 5509 5510 <li>move call to <code>grantpt</code> before asking utempter to 5511 add a record, to work with kFreeBSD which does not update the 5512 terminal's ownership until this point (Debian #652907).</li> 5513 5514 <li>document limitation of XIM interface in manpage (Debian 5515 #230787).</li> 5516 5517 <li>cleanup error reporting with new xtermWarning 5518 function.</li> 5519 5520 <li>add configure option <code>--disable-selection-ops</code> 5521 to make the new actions optional.</li> 5522 5523 <li>add four new actions for making the selection or data 5524 directly copied from the screen (prompted by discussion in 5525 Debian #637001, as well as report by Arjen van Tol): 5526 <ul> 5527 <li>exec-formatted</li> 5528 5529 <li>exec-selectable</li> 5530 5531 <li>insert-formatted</li> 5532 5533 <li>insert-selectable</li> 5534 </ul> 5535 </li> 5536 5537 <li>add <code>visualBellLine</code> resource to allow 5538 <code>visualBell</code> to flash only the current line 5539 (prompted by patch by Gertjan Halkes).</li> 5540 5541 <li>add <code>eightBitMeta</code> resource to control the 5542 features which modify or interpret the eighth bit of a key when 5543 the meta modifier key is pressed (prompted by Debian 5544 #326200).</li> 5545 5546 <li>improve discussion of <code>eightBitInput</code> in the 5547 manpage (prompted by Debian #326200).</li> 5548 5549 <li>correct logic for <code>alt-sends-escape</code> action, 5550 overlooked when implementing <code>altSendsEscape</code> 5551 resource, which still used <code>eightBitInput</code> resource 5552 value.</li> 5553 5554 <li>add a workaround for <code>XAllocColor()</code>, which does 5555 not actually allocate "a read-only colormap entry corresponding 5556 to the closest RGB value supported by the hardware", but rather 5557 a rough approximation (Debian #650291).</li> 5558 5559 <li>undo parameter checks for <code>RequestResize()</code> 5560 added in <a href="#xterm_251">patch #251</a> and amended in 5561 <a href="#xterm_270">patch #270</a>, because zeros also are 5562 special cases (report by John S Urban).</li> 5563 5564 <li>modify some test-scripts to use <code>/bin/echo</code> 5565 rather than the shell's possibly-builtin <code>echo</code>, to 5566 work around broken configuration on Mac OS X, i.e., neither 5567 honoring the option nor flagging an error.</li> 5568 5569 <li>add SGR 1006, as a better technical solution than SGR 1015: 5570 <ul> 5571 <li>the responses will not be confused with line-deletion 5572 and scrolling controls.</li> 5573 5574 <li>the button encoding is a little simpler, since it does 5575 not add an unnecessary 32 because the integer parameter 5576 does not have to be represented as a printable 5577 character.</li> 5578 5579 <li>the control responses for pressing and releasing a 5580 mouse button differ, allowing an application to tell which 5581 button was released.</li> 5582 </ul> 5583 5584 <p>Besides these improvements, in discussion, it was noted 5585 that urxvt's implementation of 1005 is incorrect, relying 5586 upon a locale that provides UTF-8 encoding. In contrast, 5587 vttest demonstrates a correct decoding, independent of 5588 locale.</p> 5589 </li> 5590 5591 <li>add support for urxvt SGR 1015 to address shortcoming of 5592 SGR 1005 with luit (patch by Egmont Koblinger).</li> 5593 5594 <li>add ISO and DEC controls useful for left/right 5595 scrolling.</li> 5596 5597 <li>add some changes for OpenBSD and MirBSD (adapted from patch 5598 by Thorsten Glaser): 5599 <ul> 5600 <li>disable search for non-Unix96 ptys.</li> 5601 5602 <li>fix a gcc warning in 5603 <code>timestamp_filename</code></li> 5604 5605 <li>modify <code>Imakefile</code> to install xterm setgid 5606 to utmp.</li> 5607 </ul> 5608 </li> 5609 5610 <li>add/use/prefer <code>posix_openpt()</code> for opening 5611 pseudo-terminal.</li> 5612 5613 <li>modify special errno handling case in ptydata.c from 5614 <a href="#xterm_158">patch #158</a> to allow for the 5615 possibility that any platform may have special cases where 5616 "/dev/tty" is absent. For example, this can happen in a FreeBSD 5617 jail (patch by David Wolfskill).</li> 5618 5619 <li>add keyboard logic to map shift-tab into XK_ISO_Left_Tab, 5620 which is usually, not always, done by the X keyboard 5621 configuration.</li> 5622 5623 <li>portability fixes for some configure macros: 5624 <code>CF_XOPEN_SOURCE</code></li> 5625 </ul> 5626 5627 <h1><a name="xterm_276" id="xterm_276">Patch #276 - 5628 2011/10/10</a></h1> 5629 5630 <ul> 5631 <li>modify clipping limits for TrueType fonts to account for 5632 the <code>scaleHeight</code> resource setting, to work around 5633 another problem due to recent FreeType changes. In this case, 5634 the <code>DejaVu Sans Mono</code> set to pixelsize=13.5 is 5635 truncated because the font descent is reduced by FreeType to 5636 match an incorrect height metric (report by Adam Lee).</li> 5637 5638 <li>improve recovery when bitmap fonts are not installed, e.g., 5639 so that switching font-sizes works for TrueType fonts.</li> 5640 5641 <li>modify lookup for <code>XTERM_SHELL</code> feature to allow 5642 relative pathnames.</li> 5643 5644 <li>modify abbreviation disambiguation check for command-line 5645 parameters to account for <code>-geometry</code>, whose 5646 parameter may begin with "+" or "-" (report by Scott 5647 Bertilson).</li> 5648 </ul> 5649 5650 <h1><a name="xterm_275" id="xterm_275">Patch #275 - 5651 2011/09/11</a></h1> 5652 5653 <ul> 5654 <li>add <code>ash</code>, <code>zsh</code> to known shells for 5655 <code>resize</code>.</li> 5656 5657 <li>modify <code>resize</code> to reuse the logic from 5658 <code>xterm</code> which determines the actual logon-user's 5659 shell if <code>$SHELL</code> is not set.</li> 5660 5661 <li>revert the <code>unsetenv("SHELL")</code> added in <a href= 5662 "#xterm_272">patch #272</a>.</li> 5663 5664 <li>an <code>unsetenv("SHELL")</code> added in <a href= 5665 "#xterm_272">patch #272</a> to help ensure that 5666 <code>luit</code> would get the user's shell consistently did 5667 not work as expected for cases where multiple names are in the 5668 password-file for a given uid. That was because changes in 5669 <a href="#xterm_157">patch #157</a> to handle this situation 5670 did not take into account that repeated calls to 5671 <code>getpwnam</code> and <code>getpwuid</code> return a 5672 pointer to the same static buffer. Fixed the older logic to 5673 work as intended, by ensuring that the passwd-data from each 5674 call is stored separately (report by Paul Keusemann).</li> 5675 5676 <li>adjust ifdef's for <code>putenv</code> and 5677 <code>unsetenv</code> in case only one of those is provided on 5678 a given platform.</li> 5679 5680 <li>correct comparison used in <code>ExposeContains</code> 5681 macro from <a href="#xterm_274">patch #274</a> changes, to 5682 handle window-dragging (patch by Todd Eigenschink).</li> 5683 </ul> 5684 5685 <h1><a name="xterm_274" id="xterm_274">Patch #274 - 5686 2011/09/05</a></h1> 5687 5688 <ul> 5689 <li>portability fixes for cygwin: do not define 5690 <code>SVR4</code>, and work around nonstandard header 5691 location.</li> 5692 5693 <li>ifdef'd use of <code>unsetenv</code> from <a href= 5694 "#xterm_273">patch #273</a> changes to work with Solaris 9 5695 (report by Waldemar Rachwal).</li> 5696 5697 <li>modify logic for <code>XtAppPending</code> to merge 5698 adjacent <code>Expose</code> and <code>ConfigureNotify</code> 5699 events which are redundant (report by Edward McGuire).</li> 5700 5701 <li>fix an unneeded warning message when <code>-r</code> option 5702 is given.</li> 5703 5704 <li>remove a few redundant entries from table used for helping 5705 abbreviation-checking of command-line options, makes 5706 <code>-geom</code> work again after <a href="#xterm_272">patch 5707 #272</a> changes as an abbreviation of 5708 <code>-geometry</code>.</li> 5709 5710 <li>add <code>scaleHeight</code> resource and command-line 5711 option <code>-sh</code> as workaround for some 5712 font-configurations broken by changes in FreeType 2.4.6 (report 5713 by Miroslav Hodak).</li> 5714 5715 <li>portability fixes for some configure macros: 5716 <code>CF_FUNC_TGETENT</code>, <code>CF_XOPEN_SOURCE</code>, 5717 <code>CF_X_ATHENA_LIBS</code>.</li> 5718 5719 <li>add configure option <code>--with-freetype-config</code> to 5720 improve selection over the plethora of configuration options 5721 which freetype has so far provided.</li> 5722 5723 <li>build-fix for configure <code>--enable-load-vt-fonts</code> 5724 when <code>--enable-widec</code> is not specified.</li> 5725 5726 <li>build-fixes for suppressing various features, needed after 5727 changes in patches 270, 271 and 272 (report by Brian 5728 Lindholm)</li> 5729 </ul> 5730 5731 <h1><a name="xterm_273" id="xterm_273">Patch #273 - 5732 2011/08/25</a></h1> 5733 5734 <ul> 5735 <li>build-fix for out-of-tree "make docs" rule.</li> 5736 5737 <li>correct a typo in <code>x_strdup</code>, from <a href= 5738 "#xterm_198">patch #198</a> changes.</li> 5739 5740 <li>correct initialization for <code>-e</code> option, broken 5741 in <a href="#xterm_272">patch #272</a> changes (report by 5742 Gabriele Balducci).</li> 5743 5744 <li>build-fix for out-of-tree builds to address 5745 <code>minstall</code> script changes in <a href= 5746 "#xterm_272">patch #272</a> (patch by Thierry Reding).</li> 5747 </ul> 5748 5749 <h1><a name="xterm_272" id="xterm_272">Patch #272 - 5750 2011/08/24</a></h1> 5751 5752 <ul> 5753 <li>document limitation of <code>Gtk</code> in connection with 5754 xterm's <code>-into</code> option, in the manpage (Ubuntu 5755 #806969).</li> 5756 5757 <li>improve <code>-into</code> by checking for and using the 5758 size of the window within which xterm is embedded, overriding 5759 other clues.</li> 5760 5761 <li>modify logic for <code>localeFilter</code> resource to 5762 allow that to include command-line options of luit.</li> 5763 5764 <li>improve <code>-into</code> by checking for invalid 5765 window-id, and allowing hexadecimal/decimal/octal values.</li> 5766 5767 <li>improve <code>keepSelection</code>, adding the case where 5768 the highlighting is cleared, overlooked in <a href= 5769 "#xterm_230">patch #230</a> (patch by Marco Peereboom).</li> 5770 5771 <li>improve command-line parsing to make abbreviate options 5772 work consistently across xterm-specific versus standard X 5773 toolkit options, and report cases where an abbreviated option 5774 happens to be ambiguous. In particular, <code>-d</code> now 5775 works as an abbreviation for <code>-display</code>.</li> 5776 5777 <li>fix regression in command-line parsing introduced in 5778 <a href="#xterm_271">patch #271</a> changes for Debian #629358, 5779 (Debian #637910).</li> 5780 5781 <li>split-out new termcap/terminfo building block 5782 <code>xterm+kbs</code> for configurability.</li> 5783 5784 <li>modify <code>terminfo</code> file to reflect changes in 5785 ncurses for <code>xterm-16color</code> and 5786 <code>xterm-256color</code>.</li> 5787 5788 <li>modify <code>minstall.sh</code>, etc., to reflect the 5789 default default class, <code>$TERM</code> and 5790 <code>decTerminalID</code> values.</li> 5791 5792 <li>reword <code>resize</code> manpage to reflect the fact that 5793 <code>$TERMCAP</code> is not set on all systems (patch by Alan 5794 Coopersmith).</li> 5795 5796 <li>work around combined Xaw6/Xaw7 package in DragonFlyBSD 5797 which omits the usual symbolic link to the preferred library 5798 name.</li> 5799 5800 <li>further improve build-fix for termcap systems by checking 5801 for some which are only partial implementations, e.g., termcap 5802 2.08 in CentOS 5.2</li> 5803 </ul> 5804 5805 <h1><a name="xterm_271" id="xterm_271">Patch #271 - 5806 2011/07/14</a></h1> 5807 5808 <ul> 5809 <li>omit permissions adjustments to pty on exit except for 5810 pre-Unix98 ptys, since modern implementations handle this 5811 (report by Sean C Farley).</li> 5812 5813 <li>modify logic for switching fonts between UTF-8 and 5814 non-UTF-8 encoding to not merge the derivable bold-, wide- and 5815 widebold values from the VT100 fonts. Also suppress warning 5816 when not using UTF-8 fonts if wide- and widebold-fonts cannot 5817 be derived or otherwise loaded (report by Werner 5818 Scheinast).</li> 5819 5820 <li>modify menu-creation to suppress entries which will never 5821 be used in the current configuration, rather than simply 5822 disabling them.</li> 5823 5824 <li>add resource <code>printModeImmediate</code> and menu item 5825 to allow print of screen plus saved lines to a file.</li> 5826 5827 <li>add menu item to allow runtime enable/disable of the 5828 <code>printFileOnXError</code> feature.</li> 5829 5830 <li>append a timestamp to filename used in 5831 <code>printFileOnXError</code> feature, and restrict its 5832 permissions (request by Vincent Lefèvre).</li> 5833 5834 <li>add a check when cancelling cursor-blinking, in case the 5835 cursor is blinked off. Fix so that the cursor is repainted 5836 without waiting for other events, e.g., keypress (report by 5837 Ailin Nemui).</li> 5838 5839 <li>add configure <code>--with-app-class</code> option, to 5840 simplify building "xterm-dev" packages with filenames that do 5841 not conflict with conventional "xterm" packages.</li> 5842 5843 <li>corrected logic flow for DECSCL, which prevented the 5844 updated operating level from being reported via DECRQSS (report 5845 by Ailin Nemui).</li> 5846 5847 <li>corrected default for <code>brokenStringTerm</code> 5848 resource to match manpage.</li> 5849 5850 <li>add vttests/dynamic.pl</li> 5851 5852 <li>add runtime check for locale not supported by X libraries, 5853 and fallback to XA_STRING in this case (request by Bryan 5854 Henderson).</li> 5855 5856 <li>fix a special case in configure script after no FreeType 5857 libraries are found. The script was proceeding to check for a 5858 usable configuration.</li> 5859 5860 <li>add <code>xterm+tmux</code> building block to terminfo 5861 (adapted from changes proposed by Ailin Nemui and Nicholas 5862 Marriott).</li> 5863 5864 <li>improve discussion of <code>faceName</code> resource in 5865 manpage (adapted from suggestions by Jens Schweikhardt).</li> 5866 5867 <li>correct mapping of shifted up/down cursor-keys in termcap 5868 function-keys mode, i.e., resource 5869 <code>tcapFunctionKeys</code> (patch by Gertjan Halkes).</li> 5870 5871 <li>update AIX case in <code>CF_XOPEN_SOURCE</code> configure 5872 macro to add release 7.x.</li> 5873 5874 <li>modify ifdef's in <code>xterm_io.h</code> for 5875 <code>__hpux</code> to force that to use the hacked SYSV 5876 support in that file. This fixes a problem with a non-blocking 5877 socket call (patch by Paul Lampert).</li> 5878 5879 <li>improve filtering of desktop category scanning, to exclude 5880 XFCE.</li> 5881 5882 <li>modify configure script to work with systems that have both 5883 ncurses (or other terminfo) as well as a real termcap library, 5884 e.g., Slackware (report by Andrew Watts).</li> 5885 5886 <li>modify configure script to work around special case where 5887 user's environment adds compiler flags to the <code>CC</code> 5888 variable (prompted by report by Paul Lampert).</li> 5889 5890 <li>amend change for Debian #110226 so that "-h" or "-v" 5891 options cause an exit, rather than simply printing to stdout 5892 while the window is displayed (Debian #629358).</li> 5893 5894 <li>add response for <code>DECRQSS</code> which gives the 5895 setting for <code>DECSCUSR</code>.</li> 5896 5897 <li>modify AllocateTermColor() to handle 5898 <code>XtDefaultForeground</code> and 5899 <code>XtDefaultBackground</code>, which are not recognized by 5900 <code>XParseColor</code>. For example, this fixes the use of 5901 OSC 112 when no explicit cursor color was set (report by 5902 Ailin Nemui).</li> 5903 5904 <li>handle special-case of <code>KeyPress</code> translated to 5905 <code>popup-menu</code> action (Ubuntu #756273).</li> 5906 </ul> 5907 5908 <h1><a name="xterm_270" id="xterm_270">Patch #270 - 5909 2011/04/26</a></h1> 5910 5911 <ul> 5912 <li>build-fix, e.g., for using <code>imake</code> on platforms 5913 which use the termcap library.</li> 5914 5915 <li>modify <code>utf8</code> resource to accept a name.</li> 5916 5917 <li>mention default for <code>fontWarnings</code> in manpage 5918 (report by Werner Scheinast).</li> 5919 5920 <li>split "UTF-8" menu entry into "UTF-8 Encoding" and "UTF-8 5921 Fonts" (prompted by discussion with Werner Scheinast).</li> 5922 5923 <li>gray-out font-menu entries when a font fails to load, e.g., 5924 a bitmap font is not installed.</li> 5925 5926 <li>improve behavior when there is no app-defaults file: 5927 <ul> 5928 <li>set the <code>toolBar</code> resource to false</li> 5929 5930 <li>gray-out the font menu entries where no resource is 5931 found.</li> 5932 </ul> 5933 </li> 5934 5935 <li>add configure option <code>--with-desktop-category</code> 5936 to allow customization of the ".desktop" files.</li> 5937 5938 <li>build-fix for the <code>install-desktop</code> 5939 makefile-rule, when the source/build directories differ (patch 5940 by Loïc Minier).</li> 5941 5942 <li>add menu entry and corresponding resource which can be used 5943 to suppress all bold-fonts (discussion with Jan 5944 Engelhardt).</li> 5945 5946 <li>make internal line-size value consistent with allocated 5947 sizes of character and related arrays to ensure that bulk 5948 copying of line data, e.g., in scrolling, accounts for the 5949 padding used for pointer alignment (adapted from patch by 5950 Rajesh Mandalemula, also reported by Ali Bahar).</li> 5951 5952 <li>widen ifdef for screen-resizing logic from <a href= 5953 "#xterm_176">patch #176</a> changes to send 5954 <code>SIGWINCH</code> to process group to include any system 5955 supporting <code>ioctl(*,TIOCGPGRP,*)</code> (prompted by 5956 linux-specific patch in OpenSUSE rpm package).</li> 5957 5958 <li>add <code>printModeOnXError</code> and 5959 <code>printFileOnXError</code> resources, which allow the user 5960 to specify that xterm will write the contents of its screen to 5961 a file if it is exiting due to an X error (Debian 5962 #280457).</li> 5963 5964 <li>restore logic that made reverse-video apply to the 5965 scrollbar's foreground/background, broken in <a href= 5966 "#xterm_158">patch #158</a> (report by Bryan Ischo).</li> 5967 5968 <li>amend some of the window operations parameter-checks added 5969 in <a href="#xterm_251">patch #251</a> for the push/pop title 5970 feature, to allow the parameters used for window resizing to be 5971 -1's, which makes the corresponding values ignored rather than 5972 using the window's maximum width/height (report by Noah 5973 Friedman).</li> 5974 5975 <li>correct order of initialization for 5976 <code>translations</code> vs <code>fullscreen</code> resources 5977 to enable a special case which omits the Alt-Enter translation 5978 when <code>fullscreen</code> is disabled (Debian #612978).</li> 5979 5980 <li>update config.guess, config.sub</li> 5981 </ul> 5982 5983 <h1><a name="xterm_269" id="xterm_269">Patch #269 - 5984 2011/02/19</a></h1> 5985 5986 <ul> 5987 <li>build-fixes for <code>imake</code> (report by Heiko 5988 Berges).</li> 5989 5990 <li>modify autoconf macro CF_PKG_CONFIG to work with 5991 cross-compile environments (patch by Thierry Reding).</li> 5992 5993 <li>modify <code>MapToColorMode()</code> to favor bold over 5994 underline, matching the precedence used before <a href= 5995 "#xterm_252">patch #252</a> (report/analysis by Nicolas 5996 George).</li> 5997 5998 <li>add <code>omitTranslation</code> resource, which can be 5999 used to suppress the default translations for these features: 6000 <ul> 6001 <li>fullscreen</li> 6002 6003 <li>scroll-lock</li> 6004 6005 <li>shift-fonts</li> 6006 6007 <li>wheel-mouse</li> 6008 </ul> 6009 </li> 6010 6011 <li>make the fullscreen feature configurable (Debian #612978) 6012 <ul> 6013 <li>add it to the configurable list 6014 <code>disallowedWindowOps</code>.</li> 6015 6016 <li>add command-line option <code>-fullscreen</code> to 6017 allow the feature to be enabled at startup.</li> 6018 6019 <li>add resource <code>fullscreen</code> to control whether 6020 the feature is active or may be enabled.</li> 6021 </ul> 6022 </li> 6023 6024 <li>modify <code>probe_netwm_fullscreen_capability</code> for 6025 64-bit machines. Contrary to <code>XGetWindowProperty</code> 6026 manpage, that function returns 32-bit data packed as 6027 <code>long</code>'s.</li> 6028 6029 <li>eliminate copy of <code>name</code> resource, which was 6030 otherwise used only to give the terminal-description name for 6031 the tcap-query feature. Use the actual <code>$TERM</code> value 6032 instead, as derived from <code>termName</code> resource, 6033 etc.</li> 6034 6035 <li>eliminate an old inconsistency with error messages, some 6036 used the <code>-name</code> option, while others used 6037 <code>argv[0]</code>. The latter is now used consistently.</li> 6038 6039 <li>improve configure check for rpath-hack, to improve builds 6040 on systems where gcc will not search /usr/local/lib, etc.</li> 6041 6042 <li>build-fix for Xaw3d configuration (report by H Merijn 6043 Brand).</li> 6044 6045 <li>update config.guess, config.sub</li> 6046 </ul> 6047 6048 <h1><a name="xterm_268" id="xterm_268">Patch #268 - 6049 2011/02/10</a></h1> 6050 6051 <ul> 6052 <li>fix an inconsistency of the "Enable Reverse Video" checkbox 6053 in the VT Options menu. This also removes a special case added 6054 in <a href="#xterm_217">patch #217</a> which limited the effect 6055 of the <code>reverseVideo</code> resource (Debian 6056 #603808).</li> 6057 6058 <li>amend decoding of misformed UTF-8 sequences to avoid 6059 absorbing valid characters as documented in Unicode 6.0 section 6060 3.9 (report by Keith Winstein).</li> 6061 6062 <li>do not set urgency hint when window already has focus 6063 (patch by Dimitrios Christidis).</li> 6064 6065 <li>amend extended mouse-coordinate mode from <a href= 6066 "#xterm_262">patch #262</a> changes to include the <em>Cb</em> 6067 button-code, which also may be greater than 127 (report by 6068 Ailin Nemui).</li> 6069 6070 <li>ensure that underline-cursor is visible when an application 6071 happens to set the background color (report by Christian 6072 Weisgerber).</li> 6073 6074 <li>add feature for <a href= 6075 "http://www.davidsimmons.com/soft/xtermhacks/xterm-fullscreen.patch"> 6076 full-screen toggling</a> using either Alt-Enter or a menu 6077 selection (integrated patch by Dave Simmons).</li> 6078 6079 <li>add missing logic to handle reallocation of FIFO index for 6080 the "UTF-8" menu entry (report by David Holland, NetBSD 6081 #44344).</li> 6082 6083 <li>add makefile rules <code>docs-ctlseqs</code>, 6084 <code>docs-xterm</code>, etc.</li> 6085 6086 <li>correct typo in description of DECRPM in control sequences 6087 document (report by Ailin Nemui).</li> 6088 </ul> 6089 6090 <h1><a name="xterm_267" id="xterm_267">Patch #267 - 6091 2010/11/20</a></h1> 6092 6093 <ul> 6094 <li>minor formatting changes to ctlseqs.ms to simplify a script 6095 which extracts the feature information. See the results in 6096 <a href= 6097 "https://invisible-island.net/xterm/xterm.faq.html#compare_versions"> 6098 Comparing versions, by counting controls</a> in the xterm 6099 FAQ.</li> 6100 6101 <li>add <code>docs-clean</code> makefile rule.</li> 6102 6103 <li>add <code>copy-selection</code> action (request by Timo 6104 Juhani Lindfors, Debian #588785).</li> 6105 6106 <li>trim leading/trailing blanks from string used for 6107 "Selection" font-menu data.</li> 6108 6109 <li>trim leading/trailing blanks from color resource 6110 values.</li> 6111 6112 <li>configure script improvements: 6113 <ul> 6114 <li>add workaround for removal of X11 dependency from Xt's 6115 package file (report by Robert Hooker).</li> 6116 6117 <li>add workaround for removal of fontconfig dependency 6118 from Xft's package file (report by Jeremy Huddleston).</li> 6119 6120 <li>add workaround for removal of Xmu dependency from Xaw's 6121 package file (report by Jeremy Huddleston).</li> 6122 6123 <li>improve workaround in <code>CF_X_TOOLKIT</code> macro, 6124 checking for other possible packages where Xt's 6125 dependencies may be given.</li> 6126 6127 <li>prefer <code>${name:=value}</code> to 6128 <code>${name-value}</code>, since recent bash changes break 6129 legacy support for that feature.</li> 6130 </ul> 6131 </li> 6132 </ul> 6133 6134 <h1><a name="xterm_266" id="xterm_266">Patch #266 - 6135 2010/10/24</a></h1> 6136 6137 <ul> 6138 <li>add rpm and dpkg scripts, for testing.</li> 6139 6140 <li>more fixes for Debian #600707 (report by Cyril 6141 Brulebois).</li> 6142 </ul> 6143 6144 <h1><a name="xterm_265" id="xterm_265">Patch #265 - 6145 2010/10/22</a></h1> 6146 6147 <ul> 6148 <li>fix a regression in fontname logic from <a href= 6149 "#xterm_263">patch #263</a> changes (Debian #600707, reported 6150 by Vincent Lefèvre).</li> 6151 6152 <li>revert modification of any-event/any-button protocol from 6153 <a href="#xterm_263">patch #263</a> changes. It interferes with 6154 selection using a shifted mouse button (reports by Neil Bird, 6155 Bram Moolenaar).</li> 6156 </ul> 6157 6158 <h1><a name="xterm_264" id="xterm_264">Patch #264 - 6159 2010/10/14</a></h1> 6160 6161 <ul> 6162 <li>replace a null-pointer check with check for empty string in 6163 <code>xtermOpenFont</code>, to eliminate a warning message from 6164 <a href="#xterm_263">patch #263</a> changes.</li> 6165 6166 <li>build-fix for <a href="#xterm_263">patch #263</a> when 6167 toolbar is not configured (patch by Chris Clayton) (reports by 6168 Robby Workman, David Wood).</li> 6169 </ul> 6170 6171 <h1><a name="xterm_263" id="xterm_263">Patch #263 - 6172 2010/10/13</a></h1> 6173 6174 <ul> 6175 <li>corrected initialization of "misc" resource values, to 6176 ensure that xterm has allocated a copy of strings which may not 6177 have been malloc'd by the X library (Debian #600129).</li> 6178 6179 <li>modify handling of any-event/any-button mouse protocol; it 6180 now is active with any combination of key-modifiers.</li> 6181 6182 <li>add debugging feature <code>showWrapMarks</code>, which 6183 marks lines which xterm knows are wrapped, showing where a 6184 double-click will select past the end of a line.</li> 6185 6186 <li>build-fix to address change in include-guards for 6187 <code>Xlib.h</code> in ongoing Xorg edits (patch by Jeremy 6188 Huddleston).</li> 6189 6190 <li>improve <code>pointerMode</code> by continuing to watch for 6191 motion events after mouse tracking is disabled if the pointer 6192 is hidden (Debian #594856).</li> 6193 6194 <li>further extend initialization for active-icon font to check 6195 if the font was not loaded successfully, to retry with 6196 <code>font1</code>, or as even (if TrueType fonts are used) to 6197 use a TrueType font. The retries are to help with cases as in 6198 <a href="#xterm_241">patch #241</a> where the bitmap fonts are 6199 not available.</li> 6200 6201 <li>fix special case of active-icon used when TrueType font is 6202 specified for the xterm window, from <a href="#xterm_261">patch 6203 #261</a> change. In that case, the default font's size was used 6204 for layout of the active icon's window (Debian #591265).</li> 6205 </ul> 6206 6207 <h1><a name="xterm_262" id="xterm_262">Patch #262 - 2010/8/30</a></h1> 6208 6209 <ul> 6210 <li>fix a case where changing the cursor color via escape 6211 sequences did not immediately update the screen (report by 6212 Andreas Wagner).</li> 6213 6214 <li>implement ANSI and DEC request-mode control sequences. The 6215 latter includes the xterm-specific private modes such as the 6216 mouse mode. The feature is ifdef'd with the rectangle 6217 operations since its decoding overlaps that feature.</li> 6218 6219 <li>correct typo in ctlseqs.ms for response of OSC 21 (patch by 6220 Kevin Schoedel).</li> 6221 6222 <li>improve discussion of mouse tracking in ctlseqs.ms</li> 6223 6224 <li>increase an array limit used in reporting mouse events 6225 (report by Ryan Johnson).</li> 6226 6227 <li>add extended mouse-coordinates mode, allowing up to 6228 2015x2015 windows, using UTF-8 encoding (patch by Ryan 6229 Johnson).</li> 6230 6231 <li>modify manpage hyphens to conform with <a href= 6232 "http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html"> 6233 Debian</a>.</li> 6234 </ul> 6235 6236 <h1><a name="xterm_261" id="xterm_261">Patch #261 - 2010/6/28</a></h1> 6237 6238 <ul> 6239 <li>fix regression in <code>renderFont</code> logic, from 6240 <a href="#xterm_260">patch #260</a> changes (report by Joseph 6241 Quinsey).</li> 6242 </ul> 6243 6244 <h1><a name="xterm_260" id="xterm_260">Patch #260 - 2010/6/20</a></h1> 6245 6246 <ul> 6247 <li>modify <code>plink.sh</code> to work around problem linking 6248 to recent PCRE libraries.</li> 6249 6250 <li>extend <code>renderFont</code> resource to allow deferred 6251 switch to TrueType fonts without affecting existing resource 6252 settings (Debian #585620).</li> 6253 6254 <li>modify configure macro CF_X_TOOLKIT to work around omission 6255 of ICE library from ".pc" file (report by Miroslav 6256 Lichvar).</li> 6257 6258 <li>change configure script default for 6259 <code>--enable-broken-st</code> i.e., the 6260 <code>brokenStringTerm</code> feature) to normally enable it. 6261 If the corresponding resource is enabled, this feature 6262 eliminates an apparent freeze of xterm when sending mis-encoded 6263 data to the screen (Debian #584801).</li> 6264 6265 <li>document in manpage some actions which were overlooked: 6266 <ul> 6267 <li>readline-button</li> 6268 6269 <li>scroll-lock</li> 6270 6271 <li>set-8-bit-control</li> 6272 </ul> 6273 </li> 6274 6275 <li>undo a change to limit-check in <code>ScrnRefresh</code> in 6276 <a href="#xterm_257">patch #257</a>, which broke 6277 <code>fastScroll</code> feature (Debian #584841).</li> 6278 6279 <li>modify handling of <code>brokenLinuxOSC</code> and 6280 <code>brokenStringTerm</code> to also sound the bell.</li> 6281 6282 <li>add control/D and control/Q to controls which will cause 6283 early exit from control string per 6284 <code>brokenStringTerm</code> resource.</li> 6285 6286 <li>improve documentation of <code>brokenStringTerm</code> 6287 resource in manpage.</li> 6288 </ul> 6289 6290 <h1><a name="xterm_259" id="xterm_259">Patch #259 - 2010/6/5</a></h1> 6291 6292 <ul> 6293 <li>modify configure check for <a href= 6294 "https://invisible-island.net/luit/">luit</a> to include new 6295 aliases for the program (<code>xterm-filter</code> and 6296 <code>bluit</code>).</li> 6297 6298 <li>add workaround in <code>xtermClearLEDs()</code> to account 6299 for Xkb's override, making vttest's LED demo reset the scroll 6300 lock.</li> 6301 6302 <li>filter out client-message events when deciding whether to 6303 hide cursor, e.g., when using SCIM (patch/report by anonymous 6304 user).</li> 6305 6306 <li>improve description of <code>-bd</code> option in manpage 6307 (report by Guy Daniel Clotilde).</li> 6308 6309 <li>modify configure checks for PCRE and other libraries to use 6310 <code>pkg-config</code>, if available.</li> 6311 6312 <li>amend change from <a href="#xterm_252">patch #252</a>, to 6313 take <code>veryColorColors</code> resource into account when 6314 checking <code>colorBDMode</code> resource for TrueType fonts 6315 (report by anonymous user).</li> 6316 6317 <li>add <code>vttests/query-fonts.pl</code> script for 6318 demonstrating the <code>OSC 50</code> font query.</li> 6319 6320 <li>improve manpage discussion of Scroll Lock feature.</li> 6321 6322 <li>improve configure macros CF_GCC_VERSION and 6323 CF_GCC_WARNINGS.</li> 6324 6325 <li>fix warnings for "clang --analyze".</li> 6326 6327 <li>change default for <code>allowScrollLock</code> resource to 6328 <code>false</code>, noting that the supposedly unused key has 6329 been useful for various rebindings (Debian #580946).</li> 6330 </ul> 6331 6332 <h1><a name="xterm_258" id="xterm_258">Patch #258 - 2010/5/1</a></h1> 6333 6334 <ul> 6335 <li>add pointer-checks in <code>ScrnRefresh</code> to fix a 6336 case in rapid scrolling where an empty record is fetched from 6337 the scrollback FIFO.</li> 6338 </ul> 6339 6340 <h1><a name="xterm_257" id="xterm_257">Patch #257 - 2010/4/22</a></h1> 6341 6342 <ul> 6343 <li>correct ctlseqs.ms description of OSC 17 and OSC 19 (patch 6344 by Emanuele Giaquinta).</li> 6345 6346 <li>corrected logic for <code>menuLocale</code> resource; the 6347 <code>setlocale</code> function returns the original locale 6348 only when querying.</li> 6349 6350 <li>improve filtering of translations resource, narrowing the 6351 scope of the <code>alwaysUseMods</code> to address only the 6352 translations that would cause a key to be sent to the host 6353 (report by Andrew Gaylard).</li> 6354 6355 <li>change default value of <code>menuLocale</code> resource to 6356 "C", to work around longstanding <a href= 6357 "https://invisible-island.net/xterm/xterm.faq.html#slow_menus">Xorg 6358 bug</a>.</li> 6359 6360 <li>modify handling of <code>scrollKey</code> feature to ignore 6361 XON/XOFF keys.</li> 6362 6363 <li>implement scroll-lock feature.</li> 6364 6365 <li>revise memory allocation in UTF8toLatin1() to fix an 6366 out-of-bounds index (Mandriva #54531).</li> 6367 6368 <li>compute value for first wide-character rather than assuming 6369 it is 256, fixes problem with <code>-cjk_width</code> 6370 introduced in patches <a href="#xterm_242">242</a> and <a href= 6371 "#xterm_249">249</a> (report by Thomas Wolff).</li> 6372 6373 <li>improve configure script: 6374 <ul> 6375 <li>corrected check for <code>_XOPEN_SOURCE</code> for 6376 OpenSolaris.</li> 6377 6378 <li>when possible, add rpath option for libraries in 6379 unusual places</li> 6380 6381 <li>add configure option <code>--disable-rpath-hack</code> 6382 to control whether the rpath option can be added.</li> 6383 </ul> 6384 </li> 6385 6386 <li>modify <code>AllocateTermColor()</code> to separate 6387 initialization from control sequences, fixing problem from 6388 <a href="#xterm_254">patch #254</a> changes where enabling 6389 <code>allowSendEvents</code> resource prevents setting cursor 6390 color on command-line (Debian #572928).</li> 6391 6392 <li>amend logic from <a href="#xterm_185">patch #185</a> to not 6393 reallocate cell-array if processing 6394 <code>ESC % G</code> to switch from UTF-8 if already 6395 in ISO-8859-1 character set (report by Michael Koehne).</li> 6396 6397 <li>fix to avoid calling <code>XmuInternStrings()</code> with 6398 zero count (report by Johan Bockgård).</li> 6399 6400 <li>fix build when --disable-ansi-color configure option is 6401 used.</li> 6402 6403 <li>fix build when neither OPT_TCAP_QUERY or OPT_TCAP_FKEYS is 6404 defined (patch by Matthieu Herrb)</li> 6405 </ul> 6406 6407 <h1><a name="xterm_256" id="xterm_256">Patch #256 - 2010/3/6</a></h1> 6408 6409 <ul> 6410 <li>add TerminalEmulator to desktop category files.</li> 6411 6412 <li>modify <code>sinstall.sh</code> to ignore the "." appended 6413 to permissions by selinux.</li> 6414 6415 <li>change app-defaults organization, installing UXTerm-color 6416 and KOI8XTerm-color for consistent behavior regarding 6417 <code>customization: color</code> (prompted by discussion 6418 in Ubuntu #421261).</li> 6419 6420 <li>fix typo in <code>minstall.sh</code> from <a href= 6421 "#xterm_255">patch #255</a> changes, and add case for 6422 <code>/var/run</code> needed for full path of utmp (report by 6423 Julien Cristau).</li> 6424 6425 <li>minor fix to xterm manpage, remove a comment stating that 6426 margin bell can be changed via the VT Options menu. That was 6427 replaced in <a href="#xterm_225">patch #225</a></li> 6428 6429 <li>add a "docs" rule to makefile.</li> 6430 6431 <li>fix initialization of Atom used for <code>XkbBell</code> 6432 feature from <a href="#xterm_243">patch 243</a> changes. Unlike 6433 the other calls to <code>XInternAtom()</code>, in this case the 6434 flag telling X to create the Atom was unset (patch by Chris 6435 Adams).</li> 6436 </ul> 6437 6438 <h1><a name="xterm_255" id="xterm_255">Patch #255 - 2010/1/21</a></h1> 6439 6440 <ul> 6441 <li>rename <code>install.sh</code> to <code>install-sh</code> 6442 in case suffix-rules might interfere.</li> 6443 6444 <li>extend range for <code>convertToUTF8</code> function to 6445 full 31-bits, to use with printing, etc.</li> 6446 6447 <li>improve manpage by checking for actual locations of 6448 utmp/wtmp files (Debian #562640).</li> 6449 6450 <li>modify configure macro CF_XOPEN_SOURCE to remove -D's 6451 before adding the same name rather than relying on -U's, to 6452 reduce redefinition warnings for some platforms that have 6453 conflicting definitions in headers.</li> 6454 6455 <li>correct logic used to switch to alternate screen using 6456 FIFO-lines configuration (Debian #565772).</li> 6457 6458 <li>update config.guess, config.sub</li> 6459 </ul> 6460 6461 <h1><a name="xterm_254" id="xterm_254">Patch #254 - 2010/1/6</a></h1> 6462 6463 <ul> 6464 <li>add a configure-check to eliminate <code>install-ti</code> 6465 rule from Makefile when the system has no tic (terminfo 6466 compiler) program. This lets one use the 6467 <code>install-full</code> rule more consistently.</li> 6468 6469 <li>amend change to WriteText() function in <a href= 6470 "#xterm_252">patch #252</a> to take into account the 6471 <code>colorAttrMode</code> resource (report by Krzysztof 6472 Kotlenga).</li> 6473 6474 <li>document <code>titleModes</code> resource in manpage, added 6475 in <a href="#xterm_252">patch #252</a>.</li> 6476 6477 <li>modify tcap-query table entries for shifted up/down cursor 6478 keys to match ncurses convention.</li> 6479 6480 <li>improve lookup of termcap-query data, allowing for 6481 duplicate keycodes versus missing entries.</li> 6482 6483 <li>add control sequence which can be used to modify the 6484 terminal data used for the termcap-keyboard.</li> 6485 6486 <li>improve portability of tcap-query feature, using terminfo 6487 functions in preference to termcap on systems having 6488 terminfo.</li> 6489 6490 <li>improve font-setting/querying control 6491 (<code>OSC 50</code>): 6492 <ul> 6493 <li>when TrueType font is selected, the TrueType 6494 <code>faceName</code> will be set, rather than the bitmap 6495 font.</li> 6496 6497 <li>when TrueType font is selected, querying returns the 6498 name of the TrueType font.</li> 6499 6500 <li>querying a font recognizes the relative-font convention 6501 that setting a font could use.</li> 6502 </ul> 6503 </li> 6504 6505 <li>add menu-entry for allowColorOps.</li> 6506 6507 <li>add new resources for fine-tuning menu entries: 6508 <code>allowColorOps</code>, <code>disallowedColorOps</code>, 6509 <code>disallowedFontOps</code> and 6510 <code>disallowedTcapOps</code>.</li> 6511 6512 <li>correct logic for disabling the "TrueType Fonts" menu item; 6513 it was not ensuring that the <code>faceName</code> resource 6514 value was non-empty.</li> 6515 6516 <li>implement VT520-style controls <code>DECSMBV</code> and 6517 <code>DECSWBV</code> for setting the margin- and warning-bell 6518 volume.</li> 6519 6520 <li>fix a minor error from <a href="#xterm_243">patch #243</a> 6521 which made the zIconBeep feature use a minor-error tone rather 6522 than an informational tone.</li> 6523 6524 <li>add a null-pointer check for the case where 6525 <code>renderFont</code> resource is true, but 6526 <code>faceName</code> resource is unset, used in logic to strip 6527 "xft:" prefix from <a href="#xterm_251">patch #251</a> changes 6528 (patch by Michael Riepe).</li> 6529 6530 <li>add special case to configure CF_XOPEN_SOURCE macro to use 6531 extensions on Darwin (patch by Dennis Preiser).</li> 6532 6533 <li>improve configure checks for regular expressions header and 6534 library</li> 6535 6536 <li>update config.guess, config.sub</li> 6537 </ul> 6538 6539 <h1><a name="xterm_253" id="xterm_253">Patch #253 - 6540 2009/12/10</a></h1> 6541 6542 <ul> 6543 <li>add a null-pointer check in <code>getPrinterFlags()</code> 6544 per changes in <a href="#xterm_252">patch #252</a>.</li> 6545 6546 <li>add a null-pointer check, needed in UTF-8 mode for Xft 6547 fonts after changes in <a href="#xterm_252">patch #252</a> 6548 (patch by Alan Coopersmith).</li> 6549 6550 <li>correct size when clearing struct for tek4014 (patch by 6551 Jochen Voss).</li> 6552 6553 <li>parenthesize expression in <code>MoreRows</code> macro, 6554 fixing a limit check added in <a href="#xterm_251">patch 6555 #251</a> (Debian #560039).</li> 6556 </ul> 6557 6558 <h1><a name="xterm_252" id="xterm_252">Patch #252 - 2009/12/7</a></h1> 6559 6560 <ul> 6561 <li>modify title-querying logic to support retrieval of titles 6562 encoded using UTF-8.</li> 6563 6564 <li>add new "title-modes" control sequence for controlling 6565 whether window/icon titles can be set or queried using UTF-8, 6566 optionally encoded in a hexadecimal string.</li> 6567 6568 <li>use <code>mkdir -p</code> rather than 6569 <code>mkdirs.sh</code> (prompted by discussion of mawk by 6570 Aleksey Cheusov).</li> 6571 6572 <li>add appropriate copyright/license notices to the bulk of 6573 files lacking same, and modify to use identical terms in others 6574 which used different wording. The main exceptions are the files 6575 contributed by Markus Kuhn, who appears to prefer public domain 6576 distribution, noting that I have modified/improved several of 6577 these without changing the terms of distribution (request by 6578 Jari Aalto).</li> 6579 6580 <li>add control sequences for resetting the "dynamic" colors to 6581 their default values.</li> 6582 6583 <li>add control sequences for resetting the "special" colors to 6584 their default values.</li> 6585 6586 <li>add control sequences for setting the "special" colors such 6587 as <code>colorBD</code> (bold).</li> 6588 6589 <li>add overlooked case for setting highlight foreground color 6590 with the dynamic-colors control.</li> 6591 6592 <li>add <code>OSC 104</code>, for resetting ANSI/16/88/256 6593 colors to default.</li> 6594 6595 <li>reset ANSI/16/88/256 colors to default in soft/hard reset 6596 functions.</li> 6597 6598 <li>strip "xft:" prefix from <code>faceName</code> and 6599 <code>faceNameDoublesize</code> resource values,</li> 6600 6601 <li>add <code>DECSCUSR</code> (discussion with Andy 6602 Koppe).</li> 6603 6604 <li>add check/warning on failure to load font, to see if the 6605 name looks like an Xft pattern rather than XLFD. This can 6606 happen if someone happens to modify their X resource settings 6607 for programs that read data from xterm's namespace.</li> 6608 6609 <li>modify handling of <code>print</code> and 6610 <code>print-everything</code> actions to allow the various 6611 printer flags to be overridden by supplying parameters.</li> 6612 6613 <li>add resource <code>printerNewLine</code> (request by Ovidiu 6614 Gheorghioiu).</li> 6615 6616 <li>minor cleanup, finish using <code>TScreenOf()</code> and 6617 <code>TekScreenOf()</code> macros introduced in <a href= 6618 "#xterm_224">patch #224</a>.</li> 6619 6620 <li>improve checks in ShowCursor/HideCursor to get the 6621 background color, particularly when 6622 <code>highlightReverse</code> resource is used (reports by Jan 6623 Engelhardt, Christian Weisgerber).</li> 6624 6625 <li>correct <code>checkVeryBoldAttr</code> to omit comparison 6626 of foreground color to special color values used for 6627 <code>color<XX></code> resources (report by Jan 6628 Engelhardt).</li> 6629 6630 <li>make <code>colorBDMode</code> and <code>colorULMode</code> 6631 resources work with TrueType configuration (report by Jan 6632 Engelhardt).</li> 6633 </ul> 6634 6635 <h1><a name="xterm_251" id="xterm_251">Patch #251 - 6636 2009/11/11</a></h1> 6637 6638 <ul> 6639 <li>add window-ops controls to push/pop icon and/or window 6640 labels on a stack.</li> 6641 6642 <li>minor fixes to align termcap file with terminfo.</li> 6643 6644 <li>add resource <code>disallowedWindowOps</code>, to allow 6645 fine-tuning of features to suppress with the 6646 <code>allowWindowOps</code> resource (prompted by discussion 6647 with Bram Moolenaar).</li> 6648 6649 <li>add makefile rules for resize-manpage to pdf, etc.</li> 6650 6651 <li>further improve limit-checks in select/paste (Mandriva 6652 #54531).</li> 6653 </ul> 6654 6655 <h1><a name="xterm_250" id="xterm_250">Patch #250 - 6656 2009/10/13</a></h1> 6657 6658 <ul> 6659 <li>add check and error-message for fonts that have no 6660 printable values in the ISO-8859-1 range (Debian #542434).</li> 6661 6662 <li>some compiler-warning cleanup, in particular workaround for 6663 defective implementation of gcc's attribute warn_unused_result 6664 (report by Bram Moolenaar).</li> 6665 6666 <li>improve estimate of single-column width for packed TrueType 6667 fonts by ignoring extents for codes 127 and 159.</li> 6668 6669 <li>improve line-drawing for TrueType fonts which happen to 6670 have defined glyphs which are <em>not</em> line-drawing in 6671 0..31 by assuming they're not, and just checking the existence 6672 of the Unicode codepoints. This makes it more likely that the 6673 user can override a misconfigured font using the "Line-Drawing 6674 Characters" menu entry.</li> 6675 6676 <li>limit minimum cell-width for packed font to maximum-advance 6677 reported by Xft. Some fonts are wider than that, even in the 6678 Latin-1 range (Debian #550497).</li> 6679 6680 <li>add list of direct-contributors in "THANKS" file.</li> 6681 6682 <li>stylistic changes to this file to help scripted extraction 6683 of list of contributors.</li> 6684 6685 <li>correct off-by-one in <code>okPosition</code> fix from 6686 <a href="#xterm_249">patch #249</a> limit-checks which 6687 prevented double-click selection on the bottom line of the 6688 screen (reports by Rajeev V. Pillai, Debian #550368).</li> 6689 6690 <li>add <code>-q</code> option to 6691 <code>vttests/256colors2.pl</code> and 6692 <code>vttests/88colors2.pl</code> to demonstrate bulk 6693 initialization of color palette.</li> 6694 6695 <li>improve the workaround from patch #188 by enabling 6696 resources for the 88-color model.</li> 6697 6698 <li>document in xterm manpage the limited availability of 6699 resources <code>color16</code> to <code>color255</code> as 6700 noted in <a href="#xterm_188">patch #188</a> (Ubuntu 6701 #438850).</li> 6702 </ul> 6703 6704 <h1><a name="xterm_249" id="xterm_249">Patch #249 - 2009/10/1</a></h1> 6705 6706 <ul> 6707 <li>change default for <code>allowWindowOps</code> resource to 6708 false. 6709 <!-- on the other hand, gnome-terminal, pterm and rxvt-unicode 6710 leave most of the related functionality enabled ;-) --></li> 6711 6712 <li>add limit-checks for result of visual_width() function, 6713 needed from <a href="#xterm_242">patch #242</a> and exposed by 6714 #244 changes (Debian #548321).</li> 6715 6716 <li>improve limit-checks in select/paste.</li> 6717 6718 <li>fix a remaining bug from <a href="#xterm_230">patch 6719 #230</a> changes for displaying multi-column characters in a 6720 proportional font (report by Chris Jones).</li> 6721 6722 <li>add new resource forcePackedFont and menu entry "Packed 6723 Font" to control whether to use the font's minimum (default) or 6724 maximum width when those differ. The workaround which xterm 6725 uses to accommodate proportional fonts is not necessary with 6726 certain fonts such as unifont which happen to store a mixture 6727 of multicolumn glyphs (report by Chris Jones).</li> 6728 6729 <li>fix an (old) bug which did not restart the timer for 6730 blinking text if the only blinking text was temporarily 6731 scrolled out of view, e.g., using the scrollbar.</li> 6732 6733 <li>fix an (old) flaw in the delete-line operation where the 6734 text which is scrolled into view while the display is scrolled 6735 up was not repainted.</li> 6736 6737 <li>improve delete-line and insert-line operations, retaining 6738 selection when the selection does not intersect the 6739 deleted/inserted lines.</li> 6740 6741 <li>fix an (old) off-by-one error when an application cleared 6742 above the cursor position while the display was scrolled up, 6743 that would leave an extra line of text uncleared.</li> 6744 6745 <li>fix a similar problem where the double-size attribute would 6746 not be reset when clearing the screen while the display was 6747 scrolled up.</li> 6748 6749 <li>fix an indexing error which would occur if an application 6750 cleared a line while the display was scrolled up and was also 6751 in UTF-8 mode (Redhat #524503). The error was from <a href= 6752 "#xterm_228">patch #228</a> but more visible after changes from 6753 <a href="#xterm_244">patch #244</a>.</li> 6754 </ul> 6755 6756 <h1><a name="xterm_248" id="xterm_248">Patch #248 - 2009/9/11</a></h1> 6757 6758 <ul> 6759 <li>fix an overlooked adjustment for selecting double-width 6760 characters in the narrow-character configuration.</li> 6761 6762 <li>eliminate uses of <code>XTERM_CELL</code> and 6763 <code>XTERM_CELLC</code> where an appropriate 6764 <code>LineData</code> pointer is available.</li> 6765 6766 <li>correct expression in <code>okScrnRow</code> macro, making 6767 selections give the length of lines below the visible screen 6768 (report by Stuart Henderson).</li> 6769 6770 <li>correct logic used to improve performance of missing-glyph 6771 check, which did not handle line-drawing characters (Debian 6772 #545220).</li> 6773 </ul> 6774 6775 <h1><a name="xterm_247" id="xterm_247">Patch #247 - 2009/8/30</a></h1> 6776 6777 <ul> 6778 <li>add ifdef's and check for openpty() on DragonFly (patch by 6779 Alex Hornung).</li> 6780 6781 <li>correct calculation for size of line's data block, which 6782 was sometimes off-by-one when configured using 6783 <code>--enable-16bit-chars</code> (report by H Merijn 6784 Brand).</li> 6785 6786 <li>fix indexing error in print-everything feature from 6787 <a href="#xterm_246">patch #246</a> (patch by Ovidiu 6788 Gheorghioiu).</li> 6789 </ul> 6790 6791 <h1><a name="xterm_246" id="xterm_246">Patch #246 - 2009/8/16</a></h1> 6792 6793 <ul> 6794 <li>remove obsolete logic for saving/restoring wrapping flags, 6795 which did not work on 64-bit platform. Wrapping flags (stored 6796 in the line-index) are now copied with line-data (Debian 6797 #541160).</li> 6798 6799 <li>modify comments in app-defaults files to avoid problem with 6800 C preprocessor used by <code>xrdb</code> (Debian #541603).</li> 6801 6802 <li>restore special case in <code>makeColorPair</code>, needed 6803 for <code>colorBDMode</code> resource (Debian #541089).</li> 6804 6805 <li>correct <code>SetLineFlags()</code> macro, broken in 6806 <a href="#xterm_244">patch #244</a> when recoding to avoid 6807 gcc-specific bitfields (Debian #541236).</li> 6808 6809 <li>modify initialization of screen buffers to ensure that 6810 pointers align to int-boundaries. This fixes a problem 6811 introduced in <a href="#xterm_244">patch #244</a> where the 6812 color- and character-arrays (stored after the video-attributes 6813 in each row) might be misaligned (report by Rajeev V 6814 Pillai).</li> 6815 6816 <li>add limit-check in <code>ScrnRefresh</code> for handling 6817 saved-lines from the circular buffer which are repainted on a 6818 screen whose width has increased. To improve performance, 6819 circular buffer entries are not resized (report by Rajeev V 6820 Pillai).</li> 6821 6822 <li>correct type for <code>CellColor</code> (a late change in 6823 <a href="#xterm_244">patch #244</a> to avoid gcc-specifc enums 6824 made that unsigned rather than unsigned short, for the 6825 256-color option).</li> 6826 6827 <li>fix typo in configure option --enable-16bit-chars (report 6828 by Rajeev V. Pillai).</li> 6829 </ul> 6830 6831 <h1><a name="xterm_245" id="xterm_245">Patch #245 - 2009/8/12</a></h1> 6832 6833 <ul> 6834 <li>correct a special case in saving FIFO-lines from <a href= 6835 "#xterm_244">patch #244</a>. If the screen was shrunk, xterm 6836 used the wrong amount for copying to FIFO-lines, and then used 6837 this amount to adjust the current row on the screen. That was 6838 both a visible defect (Debian #541109) as well as a potential 6839 addressing error (Debian #541132, Debian #541160, and Debian 6840 #541236).</li> 6841 6842 <li>add clarification in xterm manual about the various 6843 <code>allow<em>XXX</em>Ops</code> resources, which are disabled 6844 when the <code>allowSendEvents</code> resource is active (patch 6845 by Julien Cristau, Debian #531597).</li> 6846 </ul> 6847 6848 <h1><a name="xterm_244" id="xterm_244">Patch #244 - 2009/8/9</a></h1> 6849 6850 <ul> 6851 <li>refactored storage of saved-lines, providing a configure 6852 option to manage them as a FIFO (actually a circular buffer), 6853 improving performance. Added configure option 6854 <code>--enable-fifo-lines</code> to enable/disable the new 6855 feature (it is enabled by default).</li> 6856 6857 <li>added <code>fastScroll</code> resource, to amuse people who 6858 measure terminal emulator performance by <code>cat</code>'ing 6859 large files to the screen.</li> 6860 6861 <li>modify check in <code>readPtyData</code> from return values 6862 to provide exit on zero-bytes read from pty for FreeBSD, or 6863 eliminate high-CPU in "xterm-hold" processing (discussion with 6864 Ulrich Spoerlein, FreeBSD ports/136686). The check was 6865 originally modified to combine negative/zero values in 6866 XFree86-3.1.2E, 1996/05/06.</li> 6867 6868 <li>add configure option <code>--enable-16bit-chars</code> to 6869 provide wide-characters with 16-bits (rather than the default 6870 32-bits).</li> 6871 6872 <li>add <code>retryInputMethod</code> resource to allow 6873 configuring out the retries xterm uses to connect to 6874 non-responsive XIM server, to work around defective X 6875 configurations as noted in <a href= 6876 "http://mail-index.netbsd.org/tech-x11/2009/06/07/msg000511.html"> 6877 NetBSD mailing list</a>.</li> 6878 6879 <li>make regular-expression selection work for VT100 6880 double-sized characters.</li> 6881 6882 <li>improve layout when drawing missing characters in a 6883 proportional font, e.g., as boxes, to take into account whether 6884 they are double-width (report by Guilbert Stabilo on 6885 comp.unix.shell).</li> 6886 6887 <li>add capability for keypad-center (kb2/KA2) to termcap entry 6888 for xterm-new, as well as xterm-8bit, xterm-sun and xterm-vt220 6889 (FreeBSD conf/136336).</li> 6890 6891 <li>change default for <code>keepSelection</code> resource to 6892 true (prompted by discussion with David Muir Sharnoff).</li> 6893 6894 <li>remove a limit-check in ptydata.c, allowing Unicode values 6895 past 64k to be displayed using TrueType fonts (Debian 6896 #458432).</li> 6897 6898 <li>remove a vt52-specific ifdef to allow mapping F1-F4 to 6899 PF1-PF4 when vt52 support is not compiled (report by Olaf 6900 'Rhialto' Seibert).</li> 6901 6902 <li>save/restore line-wrapping flags when converting from 6903 ISO-8859-1 encoding to UTF-8 encoding, as well as when resizing 6904 screen.</li> 6905 6906 <li>remove extra adjustment of position in fix for Debian 6907 #418324.</li> 6908 6909 <li>modify default check for <code>mkWidth</code> resource to 6910 check for line-drawing characters, which are categorized as 6911 double-width in Solaris 10 (report by Sebastian Kayser).</li> 6912 6913 <li>add "print-everything" action (patch by Ovidiu 6914 Gheorghioiu).</li> 6915 6916 <li>start refactoring scrollback data using new getLineData() 6917 function.</li> 6918 6919 <li>demote recent change to Debian #252873 fix to experimental, 6920 ifdef'd out as <code>EXP_BOGUS_FG</code> (Debian #522141).</li> 6921 6922 <li>work around groff mapping of ASCII quotes using macros 6923 (requested by Reuben Thomas based on Colin Watson advice, fixes 6924 Debian #378700).</li> 6925 6926 <li>correct symbol used for default of 6927 <code>allowWindowOps</code> which was 6928 <code>DEF_ALLOW_FONT</code> rather than 6929 <code>DEF_ALLOW_WINDOW</code> (report by Matthieu Herrb).</li> 6930 6931 <li>amend fix for tek4014 from <a href="#xterm_243">patch 6932 #243</a> to make it only apply to the Tek Options menu.</li> 6933 </ul> 6934 6935 <h1><a name="xterm_243" id="xterm_243">Patch #243 - 2009/3/28</a></h1> 6936 6937 <ul> 6938 <li>revert change to default for <code>allowTcapOps</code> 6939 (request by Bram Moolenaar).</li> 6940 6941 <li>reallocate result returned by <code>xtermEnvLocale()</code> 6942 to avoid reference to freed memory after handling 6943 <code>menuLocale</code> resource.</li> 6944 6945 <li>fix an old (X11R5) bug in tek4014 for switching 6946 fontsizes.</li> 6947 6948 <li>add resource <code>defaultString</code> to make 6949 configurable the use of "#" when pastes of UTF-8 text fail due 6950 to limitations in the current locale settings.</li> 6951 6952 <li>make the set of selection target Atom's configurable by two 6953 new resources <code>eightBitSelectTypes</code> and 6954 <code>utf8SelectTypes</code>, e.g., to use the 6955 <code>TEXT</code> Atom in preference to 6956 <code>UTF8_STRING</code> (discussion with Stanislav Sedov 6957 regarding koi8rxterm and the FreeBSD port).</li> 6958 6959 <li>modify handling of <code>TARGETS</code> Atom by making it 6960 return exactly the set of targets as those which xterm is 6961 currently providing.</li> 6962 6963 <li>set <code>MANPAGER</code> and <code>PAGER</code> explicitly 6964 to /bin/cat in <code>minstall.sh</code> to work around 6965 /etc/man.conf's with those variables already set (report by 6966 Марьясин 6967 Семён).</li> 6968 6969 <li>improve error-checking of tcap-query parser.</li> 6970 6971 <li>add check for keyboard <code>tcap</code>), which ensures 6972 that terminal descriptions containing the same string for 6973 shifted/unshifted keys will be seen by tcap-query as only the 6974 unshifted key. (This would only happen with an incorrect 6975 terminal description).</li> 6976 6977 <li>fix conversion for input event-state to modifier-parameter 6978 which made tcap-query feature not work with 6979 <code>tcapFunctionKeys</code> (keyboard type 6980 <code>tcap</code>).</li> 6981 6982 <li>add "DEF_ALLOW_<em>XXX</em>" definitions to main.h to allow 6983 overriding the default compiled-in values for 6984 "allow<em>xxx</em>" resources.</li> 6985 6986 <li>remove check on bell-percentage added in <a href= 6987 "#xterm_242">patch #242</a>, which disallowed zero/negative 6988 values (Redhat Bugzilla #487829).</li> 6989 </ul> 6990 6991 <h1><a name="xterm_242" id="xterm_242">Patch #242 - 2009/2/15</a></h1> 6992 6993 <ul> 6994 <li>fix configure check for <code>XkbBell</code> and provide 6995 appropriate parameter for it.</li> 6996 6997 <li>fix a caching problem with double-size fonts versus reverse 6998 video that could cause core dump.</li> 6999 7000 <li>repair double-size fonts from workaround used in <a href= 7001 "#xterm_240">patch #240</a>.</li> 7002 7003 <li>add new section to the VT Fonts menu which allows enabling 7004 or disabling the font, termcap (tcap-query), title and window 7005 operations.</li> 7006 7007 <li>add <code>fontWarnings</code> resource, to control whether 7008 to show warnings on failure to load a font.</li> 7009 7010 <li>improve warnings for unloadable fonts introduced in 7011 <a href="#xterm_240">patch #240</a> by limiting those to the 7012 cases where a font would be specified directly by a resource 7013 setting rather than a derived fontname.</li> 7014 7015 <li>further amend fix for Debian #252873 from <a href= 7016 "#xterm_197">patch #197</a> to treat a blank cell which does 7017 not have both foreground and background colored as a 7018 non-colored cell. This improves a special case where the cursor 7019 is on a blank cell which had foreground color scrolled in 7020 (report by Miroslav Lichvar). 7021 <p>Also add the same logic when hiding cursor, so the outline 7022 matches the in-focus cursor.</p> 7023 </li> 7024 7025 <li>modify internals to reduce places PAIRED_CHARS() is used, 7026 making WriteText() and ScrnWriteText() accept IChar array, as 7027 well as providing a wrapper for drawXtermText().</li> 7028 7029 <li>change default XIM font from "*" to "fixed" to improve 7030 startup time in zh_CN.UTF-8 locale (Mike Fabian, SuSE Bugzilla 7031 #464930).</li> 7032 7033 <li>typo in #240 log (Slava Semushin)</li> 7034 </ul> 7035 7036 <h1><a name="xterm_241" id="xterm_241">Patch #241 - 2009/1/26</a></h1> 7037 7038 <ul> 7039 <li>improve checks for missing bitmap fonts, fallback to 7040 "fixed" as needed to work around broken font-packages (report 7041 by Jacek Luczak).</li> 7042 7043 <li>fix breakage from <a href="#xterm_240">patch #240</a> 7044 changes for <code>xtermAddInput()</code> (patches by Jeff Chua, 7045 Julien Cristau).</li> 7046 </ul> 7047 7048 <h1><a name="xterm_240" id="xterm_240">Patch #240 - 2009/1/25</a></h1> 7049 7050 <ul> 7051 <li>use <code>plink.sh</code> for linking xterm (suggested by 7052 Larry Doolittle).</li> 7053 7054 <li>add resource descriptions for input method to xterm 7055 manpage.</li> 7056 7057 <li>update configure script; consistently append to $CFLAGS 7058 rather than prepend.</li> 7059 7060 <li>add <code>install-scripts</code> rule to makefile, to allow 7061 koi8rxterm and uxterm scripts to be altered independently of 7062 <code>install-bin</code></li> 7063 7064 <li>add <code>-maximized</code> command-line option and 7065 corresponding resource (prompted by alt.os.linux newsgroup 7066 comment).</li> 7067 7068 <li>modify translations of scrollbar widget using 7069 <code>xtermAddInput()</code> (see <a href="#xterm_181">patch 7070 #181</a>) to accept the actions that the vt100 widget accepts, 7071 such as shift-insert to perform a paste operation (request by 7072 Martin Zwickel).</li> 7073 7074 <li>change default for <code>allowTcapsOps</code> resource to 7075 false, since it causes unexpected behavior for vim users with 7076 <code>AltGr</code>.</li> 7077 7078 <li>update config.guess, config.sub</li> 7079 </ul> 7080 7081 <h1><a name="xterm_239" id="xterm_239">Patch #239 - 2009/1/8</a></h1> 7082 7083 <ul> 7084 <li>correct a cast in input.c, which broke translation of 7085 numeric keypad codes to pageup, pagedown, etc., on 64-bit 7086 platform (Debian #511138, report by Larry Doolittle).</li> 7087 </ul> 7088 7089 <h1><a name="xterm_238" id="xterm_238">Patch #238 - 7090 2008/12/30</a></h1> 7091 7092 <ul> 7093 <li>update configure macro CF_XOPEN_SOURCE for AIX 6.x and Mint 7094 platforms.</li> 7095 7096 <li>reset the screen wrapping-flag at the end of 7097 <code>ClearRight</code> to fix an occasional case where the 7098 last character of a scrolled and wrapped line would be cleared 7099 (patch by Joe Peterson).</li> 7100 7101 <li>modify to use POSIX coding for comparing resource settings 7102 such as <code>locale</code>, to work with locales such as 7103 Turkish (report by M Vefa Bicakci).</li> 7104 7105 <li>turn on configure <code>paste64</code> feature by default 7106 (request by Jean-Philippe Bernardy). It is runtime 7107 enabled/disabled with <code>allowWindowOps</code>.</li> 7108 7109 <li>turn on configure <code>tcap-query</code> feature by 7110 default, add resource <code>allowTcapOps</code> to make this 7111 runtime enabled/disabled.</li> 7112 7113 <li>make <code>OSC 3</code> (change X property, from <a href= 7114 "#xterm_110">patch #110</a>) subject to 7115 <code>allowWindowOps</code> resource.</li> 7116 7117 <li>make VT220 <code>DSR</code> responses inactive in 7118 VT100-mode.</li> 7119 7120 <li>make <code>DECUDK</code> feature inactive in 7121 VT100-mode.</li> 7122 7123 <li>respond to incorrectly formatted <code>DECRQSS</code> with 7124 a cancel.</li> 7125 7126 <li>add <code>allowFontOps</code> resource to allow the 7127 fontsize-switching and font query/set control sequences to be 7128 enabled/disabled (prompted by Debian #510030).</li> 7129 7130 <li>some code cleanup based on gcc 4.x 7131 <code>-Wconversion</code> warnings in button.c and 7132 charproc.c</li> 7133 7134 <li>modify <code>tcap-query</code> feature to not return data 7135 for shifted cursor-keys when the keyboard type is set to vt220, 7136 since returning the same string for shifted/unshifted keys may 7137 confuse some applications (Gentoo #212546).</li> 7138 </ul> 7139 7140 <h1><a name="xterm_237" id="xterm_237">Patch #237 - 7141 2008/09/14</a></h1> 7142 7143 <ul> 7144 <li>improve usability of TrueType fonts by making the font-size 7145 switching for shifted keypad plus/minus use the 7146 <code>faceSize</code> resources to determine the order of fonts 7147 (when TrueType fonts are used) rather than the bitmap fonts, 7148 since their sizes may not be in the same order (report by H 7149 Merijn Brand)</li> 7150 7151 <li>remove an optimization of <code>ConfigureNotify</code> 7152 events from <a href="#xterm_236">patch #236</a> which seems to 7153 interfere with passing <code>SIGWINCH</code> to applications 7154 (Gentoo #233836).</li> 7155 7156 <li>modify handling of <code>altSendsEscape</code> to reset the 7157 <code>eightBitInput</code> mode, like 7158 <code>metaSendsEscape</code> (patch by Ted Phelps).</li> 7159 7160 <li>add feature to show the text-cursor as an underline rather 7161 than a box, plus command-line options <code>-uc</code> and 7162 <code>+uc</code> and resource <code>cursorUnderLine</code> to 7163 control the feature (patch by Paul Lampert).</li> 7164 7165 <li>update config.guess, config.sub</li> 7166 </ul> 7167 7168 <h1><a name="xterm_236" id="xterm_236">Patch #236 - 7169 2008/07/27</a></h1> 7170 7171 <ul> 7172 <li>correct memory reallocation when handling a paste of UTF-8 7173 text from <a href="#xterm_225">patch #225</a> changes 7174 (report/patch by Max Mikhanosha).</li> 7175 7176 <li>correct allocation of temporary buffer in 7177 <code>xtermFindShell</code> in case the user's 7178 <code>$PATH</code> contains no ":" (report/analysis by Victor 7179 Stinner, Freedesktop.Org Bugzilla #16790).</li> 7180 7181 <li>modify CF_XOPEN_SOURCE to add case for DragonFly BSD, to 7182 fix new compile problem exposed by fix for fd_mask (patch by 7183 Hasso Tepper).</li> 7184 7185 <li>add configure-check for ncurses 7186 <code>use_extended_names</code>, (report by Martin 7187 Mokrejs).</li> 7188 7189 <li>correct computation for toolbar height; layout manager 7190 already takes into account <code>borderWidth</code> 7191 resource.</li> 7192 7193 <li>implement VT320-style SCS (select character set) for ISO 7194 Latin-1 supplemental.</li> 7195 7196 <li>fixes for vt100-style character sets in UTF-8 mode (Ubuntu 7197 #230919).</li> 7198 7199 <li>fix to make <code>luit</code> work with xterm's 7200 <code>-ls</code> option (report/patch by Marius Tolzmann).</li> 7201 7202 <li>update config.guess, config.sub</li> 7203 </ul> 7204 7205 <h1><a name="xterm_235" id="xterm_235">Patch #235 - 7206 2008/04/20</a></h1> 7207 7208 <ul> 7209 <li>add control sequences for some of the recent resource/menu 7210 settings: 7211 <ul> 7212 <li><code>altSendsEscape</code> (private mode 1039)</li> 7213 7214 <li><code>keepSelection</code> (private mode 1040)</li> 7215 7216 <li><code>selectToClipboard</code> (private mode 1041)</li> 7217 7218 <li><code>bellIsUrgent</code> (private mode 1042)</li> 7219 7220 <li><code>popOnBell</code> (private mode 1043)</li> 7221 </ul> 7222 </li> 7223 7224 <li>add resource <code>formatOtherKeys</code> to provide an 7225 alternate escape sequence format for the 7226 <code>modifyOtherKeys</code> resource (request by Paul LeoNerd 7227 Evans).</li> 7228 7229 <li>adjust saved-cursor position if the window is resized while 7230 displaying the alternate screen (Novell #196880, Debian 7231 #383384).</li> 7232 7233 <li>improve pointer-checks to fix a bug exposed by resizing 7234 during initialization under StumpWM window manager (Fedora 7235 Bugzilla #437928).</li> 7236 7237 <li>modify <code>unselectwindow()</code> to ensure that the 7238 mouse pointer is not hidden after xterm loses focus (report by 7239 Jeremy Huddleston).</li> 7240 7241 <li>add special check for fd_mask on Mac OS X (report by Jeremy 7242 Huddleston).</li> 7243 7244 <li>add <code>dylib</code> to autoconf's suffix list used for 7245 checking the result from <code>xmkmf</code>, to work with Mac 7246 OS X (report by Jeremy Huddleston).</li> 7247 7248 <li>correct initialization of bold- and wide-, wide-bold fonts 7249 which may be set via the <code>utf8Fonts</code> subresource 7250 (Debian #347790).</li> 7251 </ul> 7252 7253 <h1><a name="xterm_234" id="xterm_234">Patch #234 - 7254 2008/03/02</a></h1> 7255 7256 <ul> 7257 <li>modify <code>sinstall.sh</code> to use POSIX locale to 7258 bypass GNU ls changes to date-format.</li> 7259 7260 <li>improved/refined changes for closing bitmap font (patch by 7261 Andrea Odetti).</li> 7262 7263 <li>improve resize computation for situations where the 7264 negotiation fails, by invoking the xterm widget's core-class 7265 resize method (Debian #365602, patch by Jim Paris).</li> 7266 7267 <li>restore initialization of terminal's <code>VMIN</code> and 7268 <code>VTIME</code> settings, from <a href="#xterm_232">patch 7269 #232</a> changes (patch by Matthieu Herrb).</li> 7270 </ul> 7271 7272 <h1><a name="xterm_233" id="xterm_233">Patch #233 - 7273 2008/02/24</a></h1> 7274 7275 <ul> 7276 <li>add configure check for <code>ttydefaults.h</code>, include 7277 if needed, e.g., for systems where defining 7278 <code>_POSIX_C_SOURCE</code>, etc., prevents it from being 7279 included via <code>termios.h</code> (prompted by comments by 7280 Robert Delius Royar and Jeremy Huddleston).</li> 7281 7282 <li>bug-fixes for bugs.opensolaris.org (patches from Alan 7283 Coopersmith) 7284 <dl> 7285 <dt>4029911</dt> 7286 7287 <dd>fix a typo in manpage</dd> 7288 7289 <dt>4045962</dt> 7290 7291 <dd>xterm doesn't properly set ut_syslen</dd> 7292 7293 <dt>4192572</dt> 7294 7295 <dd>left-left-right misinterpreted as triple click</dd> 7296 </dl> 7297 </li> 7298 7299 <li>minor optimization to tab-initialization (patch by 7300 Németh Márton).</li> 7301 7302 <li>fix a case where an incorrect font was freed during 7303 initialization from <a href="#xterm_232">patch #232</a> changes 7304 (patch by Andrea Odetti).</li> 7305 7306 <li>improve comparison used in <code>SameFont</code> function 7307 for GC-caching (Julien Cristau).</li> 7308 7309 <li>correct macro name used for default <code>CKILL</code> 7310 definition to work with Mac OS X (report by Jeremy 7311 Huddleston).</li> 7312 </ul> 7313 7314 <h1><a name="xterm_232" id="xterm_232">Patch #232 - 7315 2008/01/30</a></h1> 7316 7317 <ul> 7318 <li>corrected logic in a font-cache used for reverse-video 7319 (Debian #404079).</li> 7320 7321 <li>add control sequence to alter <code>pointerMode</code> at 7322 runtime.</li> 7323 7324 <li>add limit-checks for rectangle operation parameters (report 7325 by Martin Pirker).</li> 7326 7327 <li>modify <code>minstall.sh</code> to suppress 7328 <code>$MANPAGER</code> and <code>$PAGER</code> environment 7329 variables, which may interfere with redirecting output of 7330 <code>man</code> to a shell variable (report/patch by Zdenek 7331 Sekera).</li> 7332 7333 <li>do not try to hide mouse pointer in the tek4014 window, 7334 fixes broken "-t" option at startup from <a href= 7335 "#xterm_230">patch #230</a> changes (report by Robert K. 7336 Nelson).</li> 7337 7338 <li>correct datatype used when drawing tek4014 data using xterm 7339 compiled for wide-characters, on big-endian machines (reports 7340 by Jeremy Huddleston, Harald Hanche-Olsen, Martin Costabel, 7341 Merle Reinhart).</li> 7342 7343 <li>modify to cache the font-names along with the bitmap font 7344 data, to improve comparison of fonts.</li> 7345 7346 <li>modify to allow building with configure options 7347 <code>--disable-ansi-color</code> and 7348 <code>--disable-leaks</code> (Debian #459817, report/patch by 7349 Németh Márton).</li> 7350 7351 <li>modify to allow building with configure options 7352 <code>--enable-wide-chars</code> and 7353 <code>--disable-c1-print</code> (Debian #459816, report/patch 7354 by Németh Márton).</li> 7355 7356 <li>add <code>pointerMode</code> resource to control whether 7357 and when the pointer cursor is hidden as the user types.</li> 7358 7359 <li>simplify initialization of ttyMode- and related characters 7360 using a table.</li> 7361 7362 <li>modify initialization-logic for stty values that correspond 7363 to ltchars structure and the BSD TIOCSLTC ioctl (susp, dsusp, 7364 rprnt flush, werase, lnext). These were reset to constants for 7365 both termios and legacy interfaces immediately after asking the 7366 system for the existing values since X11R6.1, rather than using 7367 them to provide inherited values. While the legacy interface 7368 has some constraints, e.g., on HPUX, the POSIX or termios 7369 interface should not. Your shell may reset these anyway 7370 (prompted by patch by Ed Schouten).</li> 7371 7372 <li>improve logic for hiding/displaying pointer-cursor (report 7373 by Mark Brukhartz).</li> 7374 7375 <li>add limit-checks to tabs.c, increase maximum column for 7376 setting tab-stops from 320 to 1024 (report by Németh 7377 Márton).</li> 7378 7379 <li>correct length, i.e., number of types of selection targets, 7380 computed by <code>ConvertSelection()</code> when not handling 7381 wide characters for the <code>XA_TARGETS()</code> case. This 7382 leaves an extra Atom on the end of the list which is not 7383 handled by <a href= 7384 "http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6322854">Java 7385 applications</a>. The problem was introduced in <a href= 7386 "#xterm_151">patch #151</a> (report by David Wood).</li> 7387 </ul> 7388 7389 <h1><a name="xterm_231" id="xterm_231">Patch #231 - 7390 2008/01/05</a></h1> 7391 7392 <ul> 7393 <li>undo change to <code>getXtermCell()</code> from patch #230 7394 using <code>PACK_PAIR</code> macro (Debian #459014, analysis by 7395 Caetano Jimenez Carezzato).</li> 7396 7397 <li>minor documentation fixes (patch by Slava Semushin)</li> 7398 7399 <li>add makefile actions to install KOI8RXTerm app-defaults 7400 file (patch by Julien Cristau).</li> 7401 </ul> 7402 7403 <h1><a name="xterm_230" id="xterm_230">Patch #230 - 7404 2007/12/31</a></h1> 7405 7406 <ul> 7407 <li>add <code>quietGrab</code> resource, which when true, 7408 suppresses cursor repainting when <code>NotifyGrab</code> and 7409 <code>NotifyUngrab</code> event types are received during 7410 change of focus (request by Nicolas George).</li> 7411 7412 <li>do not treat Unicode BIDI control characters as combining 7413 characters (Debian #457634).</li> 7414 7415 <li>add <code>koi8rxterm</code>, from Debian.</li> 7416 7417 <li>add manpage for <code>uxterm</code>, from Debian (Ubuntu 7418 #128136, Debian #438645)</li> 7419 7420 <li>remove ".xpm" suffixes from Icon filenames in desktop files 7421 since it confuses some lookups following the <a href= 7422 "http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html"> 7423 Icon Theme Specification</a> (report by Slava Semushin)</li> 7424 7425 <li>correct width-calculation used for adjusting proportional 7426 fonts, to work with wide-characters (Debian #441354).</li> 7427 7428 <li>fixes/improvements for double-size characters: 7429 <ul> 7430 <li>correct old clipping calculation which used total 7431 height of glyphs where ascent was needed.</li> 7432 7433 <li>if bold font is unavailable, fall back to normal 7434 font</li> 7435 7436 <li>adjust to "work" with Xft (which does not support 7437 double-width single-height characters).</li> 7438 7439 <li>restore reset of doublesize for a line when it is 7440 cleared, broken in <a href="#xterm_228">patch 7441 #228</a>.</li> 7442 </ul> 7443 </li> 7444 7445 <li>modify logic for <code>forceBoxChars</code> resource when 7446 using TrueType fonts to be consistent with bitmap fonts</li> 7447 7448 <li>modify logic for <code>forceBoxChars</code> resource to 7449 make the "Line-Drawing Characters" menu entry use xterm's 7450 line-drawing characters even asked to draw wide line-drawing 7451 characters which are available in the font.</li> 7452 7453 <li>modify rectangle-support functions to preserve colors when 7454 filling/erasing to match WRQ Reflection behavior (request by 7455 Enzo Toscano).</li> 7456 7457 <li>add getopt-parsing to tcapquery.pl, including feature to 7458 test the extended cursor/editing keys.</li> 7459 7460 <li>make missing double-width glyphs display as double-width 7461 (Debian #456236).</li> 7462 7463 <li>change <code>tcap-fkeys</code> and <code>rectangles</code> 7464 configure options to enable them by default.</li> 7465 7466 <li>hide the mouse pointer while user is typing (request by 7467 Rodolfo Borges).</li> 7468 7469 <li>extend configure options <code>--enable-tcap-query</code> 7470 and <code>--enable-tcap-fkeys</code> to send cursor- and 7471 editing-keypad keys modified according to the keyboard (or 7472 termcap) selection for shift, alt, control, meta.</li> 7473 7474 <li>modify <code>kdch1</code> in termcap, e.g., 7475 <code>xterm-r6</code> to match the terminfo file.</li> 7476 7477 <li>add <code>-hm</code> option to turn 7478 <code>highlightColorMode</code> on or off.</li> 7479 7480 <li>add <code>highlightColorMode</code> resource to separate 7481 the new (since <a href="#xterm_225">patch #225</a>) 7482 highlighting with both text- and background-colors (prompted by 7483 report/example by Thomas Wolff).</li> 7484 7485 <li>add <em>Keep Selection</em> menu entry to turn the 7486 <code>keepSelection</code> resource on/off at runtime.</li> 7487 7488 <li>add <code>keepSelection</code> resource, which when 7489 enabled, tells xterm to retain the X selection even after it 7490 stops highlighting it (patch by Sergey Vlasov).</li> 7491 7492 <li>extend the <code>CSI > n</code> sequence to 7493 allow disabling all types of modified-keys that the 7494 <code>CSI > m</code> sequence affects.</li> 7495 7496 <li>move include for <code><xtermcap.h></code> in 7497 <code>resize.c</code> to avoid redefinition of 7498 <code>termios</code> structure on OpenSolaris (report by Rahul 7499 Gopinathan Nair).</li> 7500 7501 <li>extend terminfo building blocks for modified editing keys 7502 to include all six keys.</li> 7503 7504 <li>synchronize terminfo with ncurses (report by Stephane 7505 Chazelas) 7506 <ul> 7507 <li>equate <code>xterm-xfree86</code> and 7508 <code>xterm-xf86-v44</code>.</li> 7509 7510 <li>add ncurses extensions OTbs, AX, for termcap 7511 conversions.</li> 7512 7513 <li>make old/legacy entries such as <code>xterm-24</code>, 7514 <code>xterm-65</code> and aliases <code>xterms</code>, 7515 <code>vs100</code> inherit from 7516 <code>xterm-old</code>.</li> 7517 7518 <li>make <code>xterm-r5</code> and <code>xterm-r6</code> 7519 the same, ignoring historical errors in X Consortium's 7520 version.</li> 7521 </ul> 7522 </li> 7523 7524 <li>fix an ifdef in logic for selecting regular expressions 7525 while in a narrow-character locale (Debian #449227).</li> 7526 </ul> 7527 7528 <h1><a name="xterm_229" id="xterm_229">Patch #229 - 2007/8/12</a></h1> 7529 7530 <ul> 7531 <li>override locale in minstall.sh; change in <a href= 7532 "#xterm_226">patch #226</a> does not work in UTF-8 locale 7533 (report by Zdenek Sekera).</li> 7534 7535 <li>undo an incorrect fix for a memory leak in <a href= 7536 "#xterm_209">patch #209</a> (Debian #435858).</li> 7537 </ul> 7538 7539 <h1><a name="xterm_228" id="xterm_228">Patch #228 - 2007/7/22</a></h1> 7540 7541 <ul> 7542 <li>modify configure script to permit combining 7543 <code>--with-utempter</code> and <code>--enable-setuid</code>, 7544 e.g., for using xterm with the utempter library on FreeBSD 7545 (report by Andriy Gapon).</li> 7546 7547 <li>modify "Quit" menu entry to override the <code>-hold</code> 7548 command-line option.</li> 7549 7550 <li>add a check in the startup error-reporting to avoid writing 7551 to pipe when it has not been opened. In that case, report 7552 errors directly to the standard error.</li> 7553 7554 <li>add OPT_READLINE definition to xtermcfg.hin, overlooked in 7555 <a href="#xterm_205">patch #205</a> (report by Kalle Olavi 7556 Niemitalo).</li> 7557 7558 <li>modify <code>88colors2.pl</code> and 7559 <code>256colors2.pl</code>, adding <code>-r</code> option to 7560 reverse the palettes for the extended colors.</li> 7561 7562 <li>check for partial overwrite or deletion of multi-column 7563 characters in several cases, e.g., insert-character, 7564 delete-character, etc., and fill the remainder of the cells 7565 used by the multi-column characters affected with blanks.</li> 7566 7567 <li>correct character-class codes in wide-character mode for 7568 characters 215, 247 (see also <a href="#xterm_165">patch 7569 #165</a>).</li> 7570 7571 <li>fix missing assignment for UTF-8 parsing in widget 7572 initialization (Debian #403360).</li> 7573 7574 <li>correct index expression used to set line-wrapping flag, 7575 making selection from scrollback work consistently (Debian 7576 #430121, report by Vincent Lefèvre).</li> 7577 7578 <li>amend changes to handshake in <a href="#xterm_226">patch 7579 #226</a> to accommodate Solaris, which relies on the extra 7580 setting of the terminal size after I/O initialization. Do this 7581 by adding new resource <code>ptySttySize</code>, which is false 7582 for Linux and MacOS X, i.e., true for for Solaris and other 7583 SVR4 platforms, as well as FreeBSD (reports by David Wood, 7584 Renato Botelho).</li> 7585 7586 <li>check for X events after cursor-left, and carriage return, 7587 consistent with indexing operations (comments by Vegard Nossum 7588 and Ingo Molnar on a mailing-list).</li> 7589 7590 <li>initialize the <code>.keyboard</code> structure, needed for 7591 some platforms (such as Solaris) after <a href= 7592 "#xterm_227">patch #227</a> fixes for keysyms (patch by David 7593 Wood).</li> 7594 7595 <li>update config.guess, config.sub</li> 7596 </ul> 7597 7598 <h1><a name="xterm_227" id="xterm_227">Patch #227 - 2007/6/27</a></h1> 7599 7600 <ul> 7601 <li>exclude the Intel compiler from the extra gcc warning 7602 options added in <a href="#xterm_226">patch #226</a>.</li> 7603 7604 <li>modify change for Debian #422521 from <a href= 7605 "#xterm_226">patch #226</a> to work with configurations where 7606 the X server does not recognize the <code>XF86Paste</code> or 7607 <code>SunPaste</code> keysyms (report by Paolo Pumilia).</li> 7608 7609 <li>fix incorrect free in fix for "Selection" menu entry in 7610 <a href="#xterm_226">patch #226</a>.</li> 7611 </ul> 7612 7613 <h1><a name="xterm_226" id="xterm_226">Patch #226 - 2007/6/17</a></h1> 7614 7615 <ul> 7616 <li>add configure check to use 7617 <code>-Wno-unknown-pragmas</code> for Solaris, and a few other 7618 new gcc warning options to address regressions in its warning 7619 options.</li> 7620 7621 <li>add sample desktop and icon files, along with configure 7622 options for manipulating them.</li> 7623 7624 <li>fix an infinite loop when showing a 2-column character in a 7625 1-column screen (Debian #426863).</li> 7626 7627 <li>add <code>XF86Paste</code> and <code>SunPaste</code> to the 7628 default translations (Debian #422521, patch by Bernhard R 7629 Link).</li> 7630 7631 <li>update wcwidth.c (partly based on/prompted by mailing list 7632 comment).</li> 7633 7634 <li>update/improve keysym2ucs.c based on Unicode 5.0.1d3 and 7635 Xorg 7.1 keysymdef.h file.</li> 7636 7637 <li>improve <code>gen-pc-fkeys.pl</code>, making it show all of 7638 the building-block terminfo entries used by xterm.</li> 7639 7640 <li>correct strings used for modifiers applied to F1-F4 in 7641 xterm+pcf1 terminfo entry.</li> 7642 7643 <li>improve session management by adding the ICE connection 7644 number to the <code>select</code> call rather than waking up 7645 once per second (patch by Miroslav Lichvar).</li> 7646 7647 <li>add environment variable <code>$XTERM_LOCALE</code> to help 7648 with shell initialization, e.g., to set a specific locale for 7649 xterm on systems where a global locale is set in the shell 7650 startup scripts.</li> 7651 7652 <li>add resource settings <code>mkSampleSize</code> and 7653 <code>mkSamplePass</code> to modify the <code>mkWidth</code> 7654 added in <a href="#xterm_201">patch #201</a>. In <a href= 7655 "#xterm_202">patch #202</a>, xterm would also check if the 7656 system's <code>wcwidth</code> matched its built-in tables "well 7657 enough" to be used when <code>mkWidth</code> was false, and if 7658 not would use the built-in tables anyway. These resources allow 7659 the user to customize the decision (prompted by comments by 7660 Emanuele Giaquinta)</li> 7661 7662 <li>modify logic which resets/updates the screensize on the 7663 child process side of the pseudo-terminal to do this only if a 7664 successful handshake was received, e.g., as determined by the 7665 <code>waitForMap</code> resource (prompted by reports by 7666 Emanuele Giaquinta and Bernhard R Link, but see also <a href= 7667 "#xterm_177">patch #177</a> and <a href="#xterm_159">patch 7668 #159</a>.</li> 7669 7670 <li>improve permissions logic when closing pseudo-terminal 7671 (Debian #12261, patch by Nathanael Nerode, analysis by Richard 7672 Braakman).</li> 7673 7674 <li>add resource <code>highlightReverse</code> which controls 7675 whether xterm will allow selection highlighting to hide 7676 reverse-video or use the older behavior which inverts the 7677 foreground and background colors when selected text with 7678 reverse-video attribute (report by Adam M Costello, comments by 7679 Victor Vaile).</li> 7680 7681 <li>restore a special case for cursor-color in 7682 <code>ReverseVideo()</code> lost in rewrite for <a href= 7683 "#xterm_224">patch #224</a> (report by Adam Sulmicki).</li> 7684 7685 <li>correct initialization for menu entry for 7686 <code>bellIsUrgent</code> (patch by Emanuele Giaquinta).</li> 7687 7688 <li>correct length of underlining for double-width Xft fonts 7689 (report by Shidai Liu "Leo").</li> 7690 7691 <li>correct clipping for double-width Xft fonts (report by 7692 Shidai Liu "Leo").</li> 7693 7694 <li>modify initialization for <code>italicULMode</code> to 7695 avoid <code>XftPatternBuild</code> reusing bold attributes 7696 (report by Shidai Liu "Leo").</li> 7697 7698 <li>add a check in case someone tries to call the 7699 <code>popup-menu()</code> action on a menu which is not 7700 initialized (Debian #426364).</li> 7701 7702 <li>improve CF_IMAKE_CFLAGS to work with Solaris sed (report by 7703 Peter Bray).</li> 7704 7705 <li>improve guess for X's manpage section in 7706 <code>minstall.sh</code>, (prompted by comment by Miroslav 7707 Lichvar).</li> 7708 7709 <li>modify <code>minstall.sh</code> to handle manpage patch 7710 with more than one dot (patch by Miroslav Lichvar).</li> 7711 7712 <li>fix configure message for --disable-setgid option (patch by 7713 Miroslav Lichvar).</li> 7714 7715 <li>add <code>allowTitleOps</code> resource to allow users to 7716 prevent the title- and icon-names from changing (request by 7717 John Bashinski).</li> 7718 7719 <li>fix "spawn-new-terminal" action, for the case where no 7720 parameter is passed to the action (patch by Daniel 7721 Colascione).</li> 7722 7723 <li>fix error-checking on internal font switching for 7724 "Selection" menu entry (Debian #421523).</li> 7725 7726 <li>amend select/paste change from <a href="#xterm_225">patch 7727 #225</a> by limiting it to non-UTF-8/non-KOI8-R encoding 7728 (Debian #420974).</li> 7729 7730 <li>add workaround for groff ".URL" codes which are not present 7731 in some commonly-used bitmap fonts (Debian #418324).</li> 7732 </ul> 7733 7734 <h1><a name="xterm_225" id="xterm_225">Patch #225 - 2007/3/24</a></h1> 7735 7736 <ul> 7737 <li>add <code>useClipping</code> resource to allow clipping to 7738 be disabled.</li> 7739 7740 <li>use <code>XftDrawSetClipRectangles</code> to work around 7741 Xft pixel-trash (report by Reuben Thomas).</li> 7742 7743 <li>add configure option <code>--enable-tcap-fkeys</code>, and 7744 resource <code>tcapFunctionKeys</code>, which can be used to 7745 tell xterm to use function-key definitions from the termcap (or 7746 terminfo) which it uses to set $TERM on startup.</li> 7747 7748 <li>add resources <code>altIsNotMeta</code> and 7749 <code>altSendsEscape</code> to allow one to use Alt-keys like 7750 the meta-key even if they are bound to different keycodes 7751 (prompted by discussion with Daniel Jacobowitz).</li> 7752 7753 <li>revert a change from <a href="#xterm_216">patch #216</a> 7754 that unnecessarily made the meta modifier override the 7755 <code>eightBitInput</code> resource if the alt- and 7756 meta-modifiers happened to overlap (report/patch by Daniel 7757 Jacobowitz).</li> 7758 7759 <li>correct associated font for active icon for colored text 7760 (broken in <a href="#xterm_224">patch #224</a>).</li> 7761 7762 <li>correct ifdef's for Darwin (patch by Emanuele 7763 Giaquinta).</li> 7764 7765 <li>add <code>highlightTextColor</code> resource, and options 7766 <code>-selfg</code>, <code>-selbg</code> like <code>xwsh</code> 7767 (adapted from patch by Victor Vaile).</li> 7768 7769 <li>revise <code>find_closest_color()</code> function to 7770 address concern about borrowing from <code>Tcl/Tk</code> 7771 (request by Dan McNichol).</li> 7772 7773 <li>add "spawn-new-terminal" action, which can be assigned to 7774 key translation, allowing one to spawn a new copy of xterm 7775 using the current process's working directory (adapted from 7776 patch by Daniel Colascione).</li> 7777 7778 <li>improve select/paste between UTF-8 and Latin1 xterms by 7779 adapting the translations from <a href="#xterm_185">patch 7780 #185</a>. Extend that to include Unicode fullwidth forms 7781 FF00-FF5E. Also modify select/paste of DEC line-drawing 7782 characters in Latin1 mode to use ASCII characters.</li> 7783 7784 <li>add "Enable Bell Urgency" to VT Options menu, removed 7785 "Enable Margin Bell".</li> 7786 7787 <li>add <code>bellIsUrgent</code> resource to control whether 7788 the Urgency hint is set/reset.</li> 7789 7790 <li>modify to set Urgency window manager hint on bell, reset it 7791 on Focus-In event (patch by Emanuele Giaquinta).</li> 7792 7793 <li>add <code>--disable-setgid</code> configure option (request 7794 by Miroslav Lichvar).</li> 7795 7796 <li>fix a possible infinite loop in last change to 7797 <code>dabbrev-expand()</code> (patch by Emanuele 7798 Giaquinta).</li> 7799 7800 <li>modify initialization to set the pty erase value if the 7801 <code>erase</code> is set in the <code>ttyModes</code> 7802 resource. This overrides the <code>ptyInitialErase</code> 7803 setting (request by Lluís Batlle i Rossell).</li> 7804 7805 <li>add <code>initialFont</code> resource to xterm widget, like 7806 tek-widget (Debian #299669).</li> 7807 7808 <li>amend change to <code>boldMode</code> from <a href= 7809 "#xterm_223">patch #223</a> for Debian #347790. As noted in 7810 Debian #412599, that made xterm no longer match the documented 7811 behavior. Add new resource <code>alwaysBoldMode</code> to allow 7812 overriding the comparison between normal/bold fonts when 7813 deciding whether to use overstriking to simulate bold 7814 fonts.</li> 7815 7816 <li>restore background color in ClearCurBackground(), omitted 7817 in changes for <a href="#xterm_223">patch #223</a> (report by 7818 Miroslav Lichvar).</li> 7819 7820 <li>correct logic for repainting double-width TrueType 7821 characters (prompted by test-case for Novell #246573).</li> 7822 7823 <li>add a check to avoid trying to repeat a multibyte character 7824 (report by Sami Farin).</li> 7825 7826 <li>modify parameter to <code>XftNameParse()</code> to select 7827 wide face-name as needed, to make <code>-fd</code> option work 7828 (patch by Mike Fabian, Novell #246573).</li> 7829 7830 <li>correct logic for mouse highlight tracking's abort 7831 sequence, broken in a restructuring modification from <a href= 7832 "#xterm_224">patch #224</a> (report by Thomas Wolff).</li> 7833 7834 <li>revert the simplification of blinking cursor, since that 7835 broke the xor'ing introduced in <a href="#xterm_193">patch 7836 #193</a> (report by Thomas Wolff).</li> 7837 </ul> 7838 7839 <h1><a name="xterm_224" id="xterm_224">Patch #224 - 2007/2/11</a></h1> 7840 7841 <ul> 7842 <li>simplify code for set/reset mode for blinking cursor (patch 7843 by Emanuele Giaquinta).</li> 7844 7845 <li>modify <code>dabbrev-expand()</code> to restart after the 7846 last match (patch by Emanuele Giaquinta).</li> 7847 7848 <li>add control sequences for enabling/disabling focus in/out 7849 event reporting (request by Bram Moolenaar).</li> 7850 7851 <li>improve startup performance of menus by adding resource 7852 setting <code>menuLocale</code> which can be set to override 7853 X's lengthy initialization of fontsets - which are seldom used 7854 for the <code>Xaw</code> popup menus (adapted from patch by 7855 Dave Coffin).</li> 7856 7857 <li>modify <code>do_precomposition()</code> function and 7858 <code>make-precompose.sh</code> to handle 21-bit codes vs the 7859 16-bit codes those were written for, and fix a few mis-sorted 7860 codes (patch by Thomas Wolff).</li> 7861 7862 <li>handle special case in <code>-cjk_width</code> which 7863 unexpectedly caused a character's width to change when a 7864 combining character (patch by Thomas Wolff)</li> 7865 7866 <li>fix build for GNU/KFreeBSD (Debian #40111).</li> 7867 7868 <li>consolidate GC creation/updating into a single module to 7869 reduce GC manipulation (prompted by Debian #389476, though a 7870 complete fix would involve optimizing the scrolling 7871 behavior).</li> 7872 7873 <li>fix ifdef of xtermCellWidth(), which broke for a case 7874 without TrueType and without wide-character support (report by 7875 Martin Pirker).</li> 7876 7877 <li>undo a comparison in 7878 <code>handle_translated_exposure</code> which did not work due 7879 to X server optimization. That caused the inner border to be 7880 repainted with unexpected colors when handling a repaint, e.g., 7881 after switching to/from another workspace (Debian #401726, 7882 Redhat Bugzilla #223027).</li> 7883 7884 <li>allow <code>-cr</code> option to override cursor color when 7885 <code>-ah</code> option is used (Debian #406502).</li> 7886 7887 <li>add a note in xterm's manpage explaining that the 7888 <code>-bw</code> (or <code>-w</code>) option is only used by 7889 the window manager, if at all (Debian #405043).</li> 7890 7891 <li>make <code>Selection</code> of <code>VT Fonts</code> 7892 work with <code>selectToClipboard</code> resource.</li> 7893 7894 <li>correct length calculation for <code>Selection</code> entry 7895 of <code>VT Fonts</code> menu, broken since it ignored the 7896 actual selection length since X11R4.</li> 7897 7898 <li>fixes for fontsize changes with <code>-fa</code> option 7899 (Redhat Bugzilla #222340).</li> 7900 </ul> 7901 7902 <h1><a name="xterm_223" id="xterm_223">Patch #223 - 7903 2006/11/30</a></h1> 7904 7905 <ul> 7906 <li>add <code>--enable-rectangles</code> configure option 7907 (request by Martin Pirker).</li> 7908 7909 <li>correct default value for <code>--with-symlink</code> 7910 configure option.</li> 7911 7912 <li>fixes configure script macros that use 7913 <code>$X_EXTRA_LIBS</code>.</li> 7914 7915 <li>modify configure script to provide support for pre-package 7916 config versions of Xft aka "FreeType".</li> 7917 7918 <li>add the Xaw scrollbar translations resource to the xterm 7919 manpage, add an example showing how to change the mouse button 7920 assignments (Debian #382225).</li> 7921 7922 <li>amend a change from <a href="#xterm_216">patch #216</a>, 7923 which omitted modifiers for control, meta, etc., if they were 7924 mixed with any other modifiers. The intent of the change was to 7925 avoid confusion with <code>XK_Mode_switch</code> and 7926 <code>XK_ISO_Level3_Shift</code>; the check is now done 7927 explicitly (report by Daniel Jacobowitz).</li> 7928 7929 <li>interpret a negative value for 7930 <code>modifyCursorKeys</code> or 7931 <code>modifyFunctionKeys</code> resources to disable the 7932 respective features (prompted by Novell #220728).</li> 7933 7934 <li>amend cell-width computation for FreeType from <a href= 7935 "#xterm_217">patch #217</a>, which did not work for VT100 7936 line-drawing characters (Debian #399638, Gentoo #147111).</li> 7937 7938 <li>amend a change from <a href="#xterm_216">patch #216</a>, 7939 which made alt-modifier on a cursor-key send a modifier 7940 parameter (Novell #220728).</li> 7941 7942 <li>correct an off-by-one that made DECCRA not work 7943 (report/patch by Martin Pirker).</li> 7944 7945 <li>revert an optimization in SGR_Foreground() and 7946 SGR_Background from <a href="#xterm_209">patch #209</a> (Debian 7947 #347722, analysis by Pierre Lombard).</li> 7948 7949 <li>fix for <code>boldMode</code> (Debian #347790, patch by Tim 7950 Pope).</li> 7951 7952 <li>amend fix for <code>-iconic</code> in <a href= 7953 "#xterm_208">patch #208</a>, which broke the positioning part 7954 of <code>-geom</code> with toolbar configuration.</li> 7955 7956 <li>fix to prevent indexing error in regular expressions (patch 7957 by Dennis Schneider).</li> 7958 7959 <li>fixes to make the <code>internalBorder</code> area not 7960 change color due to reverseVideo and/or related exposure 7961 events. The latter was a very old bug exposed in <a href= 7962 "#xterm_196">patch #196</a> (report by Neil Hoggarth, also 7963 Debian #397624).</li> 7964 </ul> 7965 7966 <h1><a name="xterm_222" id="xterm_222">Patch #222 - 7967 2006/10/17</a></h1> 7968 7969 <ul> 7970 <li>minor optimization for recoloring cursor via dynamic 7971 colors.</li> 7972 7973 <li>fix a bug caused by restructuring of tek4014 widget (report 7974 by Paul Schenkeveld)</li> 7975 </ul> 7976 7977 <h1><a name="xterm_221" id="xterm_221">Patch #221 - 2006/10/1</a></h1> 7978 7979 <ul> 7980 <li>fix for regular expressions: the code which converted the 7981 column offset within a line did not check properly for the end 7982 of a line, and if allowed to match the whole line, would select 7983 the beginning of the following line. If the following line were 7984 empty, in turn it would select from the next, etc. (report by 7985 Sean Reifschneider).</li> 7986 7987 <li>minor optimization of color allocation to avoid repainting 7988 the screen if the corresponding color had not been 7989 allocated.</li> 7990 7991 <li>fixes for vttests/256colors.pl (report by Egmont 7992 Koblinger).</li> 7993 7994 <li>add terminfo building block entries for modifiers of the 7995 6-key editing keypad.</li> 7996 7997 <li>fix for initialization of tek4014 which broke on QNX 7998 6.1</li> 7999 </ul> 8000 8001 <h1><a name="xterm_220" id="xterm_220">Patch #220 - 2006/9/10</a></h1> 8002 8003 <ul> 8004 <li>make "xterm -t -iconic" work as expected, i.e., start in 8005 tek4014 mode, but iconified.</li> 8006 </ul> 8007 8008 <h1><a name="xterm_219" id="xterm_219">Patch #219 - 2006/9/4</a></h1> 8009 8010 <ul> 8011 <li>some internal restructuring to separate data for vt100 and 8012 tek4014 widgets.</li> 8013 8014 <li>fix a few cases where form-events would be seen by the 8015 vt100 widget when built with the toolbar configuration.</li> 8016 </ul> 8017 8018 <h1><a name="xterm_218" id="xterm_218">Patch #218 - 2006/8/27</a></h1> 8019 8020 <ul> 8021 <li>change behavior when encountering an illegal character in a 8022 title string. Rather than reject the string, translate illegal 8023 characters into "?" and use the string (requested by Thomas 8024 Wolff).</li> 8025 8026 <li>improve checks for nonprinting characters in title strings 8027 (report by Samuel Thibault).</li> 8028 8029 <li>correct typo in menu labels, changing 8030 <code>print-redirect</code> to <code>print-redir</code>, making 8031 it follow the manpage and match the usage for the actions table 8032 (report by Samuel Thibault).</li> 8033 8034 <li>correct a typo that prevents building with some older 8035 systems such as Solaris 2.6 (report by Julian Bridle).</li> 8036 </ul> 8037 8038 <h1><a name="xterm_217" id="xterm_217">Patch #217 - 2006/8/20</a></h1> 8039 8040 <ul> 8041 <li>minor improvements to FreeType font layout and 8042 drawing.</li> 8043 8044 <li>add a check in the ptyInitialErase logic to ensure that the 8045 termcap was read (Redhat Bugzilla #201246).</li> 8046 8047 <li>limit changes for reverse-video from <a href= 8048 "#xterm_216">patch #216</a> to cases where the reverse-video 8049 command-line option is used (report by Zdenek Sekera).</li> 8050 8051 <li>correct bitmap-derived pointsizes for TrueType fonts; they 8052 should be proportional to the square root of the area of the 8053 bitmap fonts.</li> 8054 8055 <li>add resources to specify pointsize of TrueType fonts 8056 (request by Reuben Thomas).</li> 8057 8058 <li>improve install of terminfo by filtering out harmless 8059 messages related to extended capabilities. At the same time, 8060 use ncurses tic to compile the extended capabilities if 8061 possible (report by Zdenek Sekera).</li> 8062 8063 <li>update "xterm+pcfkeys" terminfo entry to correspond to 8064 <a href="#xterm_216">patch #216</a>.</li> 8065 </ul> 8066 8067 <h1><a name="xterm_216" id="xterm_216">Patch #216 - 2006/8/3</a></h1> 8068 8069 <ul> 8070 <li>improve handling of <code>ConfigureNotify</code> events by 8071 checking if there are further events in the queue which 8072 obsolete the current one (adapted from rxvt 2.7.5). Only the 8073 normal normal (non-toolbar) configuration is addressed in this 8074 patch.</li> 8075 8076 <li>several changes to terminfo: 8077 <ul> 8078 <li>incorporate some minor changes from ncurses to help 8079 keep these synchronized: 8080 <dl> 8081 <dt>2005-02-26</dt> 8082 8083 <dd>modify sgr/sgr0 in xterm-new to improve tgetent's 8084 derived "me".</dd> 8085 8086 <dt>2006-02-18</dt> 8087 8088 <dd>remove ncv flag from xterm-16color</dd> 8089 8090 <dt>2006-06-24</dt> 8091 8092 <dd>improve xterm-256color by combining the 16-color 8093 setaf/setab strings with SGR 48, and cancelling the 8094 setf/setb strings.</dd> 8095 </dl> 8096 </li> 8097 8098 <li>use extended function-key definitions for xterm-sun, 8099 xterm-sco entries.</li> 8100 8101 <li>add terminfo building-blocks corresponding to the 8102 <code>modifyFunctionKeys</code> and 8103 <code>modifyCursorKeys</code> resources.</li> 8104 </ul> 8105 </li> 8106 8107 <li>ifdef'd Sun function-key feature to make it optional, like 8108 HP and SCO.</li> 8109 8110 <li>extend table for termcap-query feature through F63, and 8111 updated tcapquery.pl to match.</li> 8112 8113 <li>modify logic for function-key input processing to allow 8114 function key numbers which are constructed by control- and 8115 shift-modifiers to extend beyond X's hardcoded limit of 8116 35.</li> 8117 8118 <li>add control sequence to set or reset the 8119 <code>eightBitInput</code> resource.</li> 8120 8121 <li>change default resource <code>modifyFunctionKeys</code> to 8122 2 to avoid sending SS3 with parameters (report by Kalle Olavi 8123 Niemitalo).</li> 8124 8125 <li>add control sequences for setting and resetting the values 8126 of the <code>modifyCursorKeys</code>, 8127 <code>modifyFunctionKeys</code> and 8128 <code>modifyOtherKeys</code> resources.</li> 8129 8130 <li>add <code>modifyFunctionKeys</code> resource like 8131 <code>modifyCursorKeys</code>. Setting this to zero allows one 8132 to use the control- and shift-modifiers to construct function 8133 key strings, for terminals using many function keys, e.g., for 8134 <code>xterm-sun</code> or <code>xterm-sco</code>.</li> 8135 8136 <li>modify screen responses and function-key logic to reduce 8137 the number of writes made, to make it less likely that an 8138 application would read only part of a function-key in a read 8139 operation (suggested by John E Urbanczyk).</li> 8140 8141 <li>add <code>combiningChars</code> resource, which allows the 8142 user to specify the maximum number of combining characters that 8143 xterm will store for each cell in wide-character mode (prompted 8144 by request by Markus Kuhn to increase the limit from 2).</li> 8145 8146 <li>improve logic in <code>metaSendsEscape</code> in case the 8147 Alt- and Meta-keys are mapped to different modifiers. That 8148 allows one to use the Alt-key for shifting in the 8149 <code>eightBitInput</code> and use a Meta-key modifier to 8150 prefix the result with an <code><ESC></code>.</li> 8151 8152 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8153 from modifying codes where <code>eightBitInput</code> or 8154 <code>metaSendsEscape</code> are set (request by Dan 8155 Nicolaescu).</li> 8156 8157 <li>improve <code>modifyCursorKeys</code> logic to prevent it 8158 from changing the user input when other modifiers such as AltGr 8159 are used (report by Thomas Wolff).</li> 8160 8161 <li>extend <code>modifyCursorKeys</code> to include the numeric 8162 keypad when in application mode.</li> 8163 8164 <li>improve <code>-reverse</code> (<code>-rv</code>) option 8165 (patch by Jason Vas Dias, Redhat #189161).</li> 8166 8167 <li>workaround for color resources on Fedora-5 which made the 8168 toolbar colors inconsistent.</li> 8169 8170 <li>corrected calls used for <code>--disable-setuid</code> 8171 option, add debugging traces to help diagnose this area.</li> 8172 8173 <li>modify configure script to ensure that 8174 <code>USE_UTMP_SETGID</code> is defined only if the check for 8175 POSIX saved-ids succeeds, or corresponds to one of the BSD 8176 systems known to have a workable <code>setegid</code> 8177 function.</li> 8178 8179 <li>extend configure check for POSIX saved-ids to include BSD 8180 systems</li> 8181 8182 <li>modify CF_SYSV configure macro to work with gcc on HPUX 8183 10.20, whose broken <code><term.h></code> relies on 8184 including <code><termios.h></code>.</li> 8185 8186 <li>change order of setuid/setgid ifdef checks in Imakefile to 8187 make it simpler to produce a setgid install, allowing the 8188 latter to override the former (prompted by an XFree86 8189 commit).</li> 8190 8191 <li>adapt a fix for setgid support from subsequent XFree86 8192 changes (patch by Emanuele Giaquinta).</li> 8193 8194 <li>further improve setgid support (patches by Emanuele 8195 Giaquinta).</li> 8196 </ul> 8197 8198 <h1><a name="xterm_215" id="xterm_215">Patch #215 - 2006/6/19 - 8199 XFree86 4.6.99.2</a></h1> 8200 8201 <ul> 8202 <li>improve setgid support by exploiting the saved-ids feature 8203 on which it relies (patch by Emanuele Giaquinta).</li> 8204 8205 <li>make the <code>modifyOtherKeys</code> resource disabled by 8206 default since the intermediate setting altered some common 8207 bindings (report by Emanuele Giaquinta).</li> 8208 </ul> 8209 8210 <h1><a name="xterm_214" id="xterm_214">Patch #214 - 2006/6/18 - 8211 XFree86 4.6.99.2</a></h1> 8212 8213 <ul> 8214 <li>modify makefile rule for ctlseqs.txt to strip 8215 backspace/overstrikes, and add a copy of ctlseqs.txt to the 8216 source tarballs (requests by Bram Moolenaar, Emanuele 8217 Giaquinta).</li> 8218 8219 <li>add <code>modifyOtherKeys</code> resource, analogous to the 8220 <code>modifyCursorKeys</code> resource. This applies to keys 8221 that normally would transmit nothing when a given modifier is 8222 applied (request by Dan Nicolaescu).</li> 8223 8224 <li>add <code>default</code> to the acceptable values for the 8225 <code>keyboardType</code> resource, allowing the 8226 <code>-kt</code> command-line option to override app-defaults 8227 resource settings of <code>sunKeyboard</code>, etc.</li> 8228 8229 <li>correct ifdef's for <code>XkbBell()</code> which used the 8230 header file but not the corresponding function in <a href= 8231 "#xterm_175">patch #175</a> (report by Zach Beane).</li> 8232 8233 <li>add xterm manpage to the <code>--with-symlink</code> 8234 logic.</li> 8235 8236 <li>regenerated configure script to omit some debugging 8237 artifacts of the SIGWINCH test.</li> 8238 8239 <li>fix <code>install-man</code> rule in 8240 <code>Makefile.in</code> to avoid including the 8241 <code>$(DESTDIR)</code> value in substitutions made on the 8242 manpages (patch by Emanuele Giaquinta).</li> 8243 8244 <li>improved fix for cursor deallocation (Redhat #186935, patch 8245 by Jason Vas Dias).</li> 8246 8247 <li>improve checks for setuid/setgid operation to accommodate 8248 limited resource management in some kernels (Gentoo 8249 #193238).</li> 8250 8251 <li>update config.guess, config.sub</li> 8252 </ul> 8253 8254 <h1><a name="xterm_213" id="xterm_213">Patch #213 - 2006/4/30 - 8255 XFree86 4.5.99.905</a></h1> 8256 8257 <ul> 8258 <li>minor optimization to cell layout; will use that to 8259 simplify some logic and allow for more than two combining 8260 characters in another patch.</li> 8261 8262 <li>add <code>utf8Latin1</code> resource to make optional the 8263 feature from <a href="#xterm_209">patch #209</a> which allowed 8264 ISO-8859-1 fonts to be used in cases where a wide font was 8265 given. This would only work for the special case where the user 8266 normally used Latin-1 and wanted some wide characters (report 8267 by Rostislav Krasny).</li> 8268 8269 <li>add <code>utf8Title</code> resource to manpage (Novell 8270 #52655).</li> 8271 8272 <li>fix typo in table entry for <code>utf8Title</code> resource 8273 which made it treated as an integer rather than boolean (patch 8274 by Mike Fabian, Novell #52655).</li> 8275 </ul> 8276 8277 <h1><a name="xterm_212" id="xterm_212">Patch #212 - 2006/4/9 - 8278 XFree86 4.5.99.904</a></h1> 8279 8280 <ul> 8281 <li>improve description of <code>forceBoxChars</code> in 8282 manpage (discussion with Joe Wells).</li> 8283 8284 <li>set checkmark for "Select To Clipboard" menu entry on 8285 startup, from resource setting.</li> 8286 8287 <li>update manpage to note that 8288 <code>*customization:color</code> is not needed, though it is 8289 useful (Redhat #188034).</li> 8290 8291 <li>add underscore to sample pattern for URL in 8292 <code>XTerm.ad</code> (Redhat #188037).</li> 8293 8294 <li>modify install rule for manpage to use the configured 8295 app-defaults directory (Redhat #188031).</li> 8296 8297 <li>add checks in <code>releaseCursorGCs()</code> to ensure 8298 GC's are distinct, needed since memory leak changes for 8299 <a href="#xterm_208">patch #208</a> (Redhat #186935, patch by 8300 Jason Vas Dias).</li> 8301 8302 <li>modify <code>Imakefile</code> definitions to allow 8303 <code>imake</code> to set <code>InstallXtermSetGID</code>. Add 8304 symbol <code>InstGidFlags</code>.</li> 8305 8306 <li>add configure script check to ensure that SIGWINCH if 8307 defined even when headers undefine this as a side-effect of 8308 <code>_POSIX_C_SOURCE</code>, etc.</li> 8309 8310 <li>resync with XFree86 CVS 8311 <ul> 8312 <li>ifdef-out chmod of terminal device for OS/2 (XFree86 8313 #1663, Frank Giessler).</li> 8314 8315 <li>move new <code>Imakefile</code> chunk which defines 8316 <code>$(CSGIDFLAGS)</code> before DEFINES, e.g., for IRIX64 8317 (Marc La France).</li> 8318 </ul> 8319 </li> 8320 </ul> 8321 8322 <h1><a name="xterm_211" id="xterm_211">Patch #211 - 2006/3/19 - 8323 XFree86 4.5.99.902</a></h1> 8324 8325 <ul> 8326 <li>modify prefix/suffix transformation in makefile to make 8327 <code>uxterm</code> install properly on Cygwin.</li> 8328 8329 <li>restore the sizeof-comparison for <code>struct 8330 lastlog</code> added in <a href="#xterm_208">patch #208</a>, 8331 rendered (mostly) obsolete in <a href="#xterm_210">patch 8332 #210</a>, since an imake configuration can still turn that code 8333 on (prompted by comment by David Dawes).</li> 8334 8335 <li>remove feature for <code>FreeBSDArchitecture</code> from 8336 <code>Imakefile</code> which would install xterm using the 8337 <code>utmp</code> group since a standard FreeBSD system has no 8338 such group, though it would support this configuration. FreeBSD 8339 packager uses the <code>configure</code> script, which can make 8340 the appropriate check (prompted by comment by David 8341 Dawes).</li> 8342 8343 <li>fixes for gcc redefinition warnings when built using imake 8344 (reports by David Dawes, Marc La France).</li> 8345 </ul> 8346 8347 <h1><a name="xterm_210" id="xterm_210">Patch #210 - 2006/3/12 - 8348 XFree86 4.5.99.902</a></h1> 8349 8350 <ul> 8351 <li>add configure check for workaround in <a href= 8352 "#xterm_208">patch #208</a> for Solaris' inconsistent support 8353 for struct lastlog to quiet compiler warnings (prompted by 8354 David Dawes commit message for XFree86).</li> 8355 8356 <li>fixes for BASE64 selection manipulation, e.g., ensure that 8357 the string terminator is written after cut-buffer data (report 8358 by Joe Allen).</li> 8359 8360 <li>add vttests/paste64.pl script to test experimental option 8361 for setting/getting selection data.</li> 8362 8363 <li>add some error-checking in fontutils.c (prompted by David 8364 Dawes commit message for XFree86).</li> 8365 8366 <li>change xterm manpage to show the actual color resource 8367 names <code>XtDefaultForeground</code> and 8368 <code>XtDefaultBackground</code> rather than black and white 8369 (prompted by discussion with Emanuele Giaquinta).</li> 8370 8371 <li>add <code>utf8Title</code> resource and menu entry, 8372 allowing the user to control whether title strings are 8373 interpreted as ISO-8859-1 or UTF-8 encoding (Novell #52655, 8374 Novell #113206).</li> 8375 8376 <li>change order of ifdef's for utempter versus platforms in 8377 <code>Imakefile</code> to ensure a proper value for 8378 <code>InstallXtermSetGID</code> (prompted by Marc La France 8379 commit message for XFree86).</li> 8380 8381 <li>update the cursor GCs when menu entry for reverse video is 8382 toggled. (Redhat #183993).</li> 8383 8384 <li>a memory-leak fix for <code>set_cursor_gcs()</code> in 8385 <a href="#xterm_208">patch #208</a> broke the <code>-cm</code> 8386 option (Redhat #182382).</li> 8387 </ul> 8388 8389 <h1><a name="xterm_209" id="xterm_209">Patch #209 - 2006/2/12 - 8390 XFree86 4.5.99.22</a></h1> 8391 8392 <ul> 8393 <li>remove <code>setf</code> and <code>setb</code> from 8394 <code>xterm-256color</code> terminfo entry to avoid issues with 8395 applications that ignore the ANSI strings (report by Emanuele 8396 Giaquinta).</li> 8397 8398 <li>remove obsolete references to "Xorg" to avoid confusion 8399 with "X.org" (prompted by David Dawes commit message for 8400 XFree86).</li> 8401 8402 <li>improve initial layout performance for the toolbar 8403 configuration by precalculating the height of the toolbar.</li> 8404 8405 <li>remove menu entry for "Enable Curses Emulation" (to make 8406 room for "Select To Clipboard").</li> 8407 8408 <li>add resource <code>selectToClipboard</code>, action 8409 <code>set-select</code> and a menu entry to allow users to 8410 switch between PRIMARY and CLIPBOARD for select/paste.</li> 8411 8412 <li>allow cursor to have the same color as foreground (text), 8413 since it is rendered as reverse (Debian #350664).</li> 8414 8415 <li>amend change for loading <code>utf8Fonts</code> resource 8416 from <a href="#xterm_204">patch #204</a> to allow an ISO-8859-1 8417 "normal" font to be combined with an ISO-10646 font if the 8418 latter is given via the <code>-fw</code> option or its 8419 corresponding resource value (prompted by comment in Novell 8420 #49305).</li> 8421 8422 <li>add <code>TIOCSCTTY</code> <code>ioctl()</code> ifdef'd for 8423 <code>__GNU__</code> to set the controlling terminal (Debian 8424 #348457).</li> 8425 8426 <li>add configure option <code>--disable-leaks</code>.</li> 8427 8428 <li>add a check in <code>Bell</code> to ensure that the VT100 8429 widget is realized, since it may be called by 8430 <code>xtermLoadFont</code> given an incorrect font resource 8431 (Redhat #180450).</li> 8432 8433 <li>improve initialization of wide-bold font by not using the 8434 derived value when it happens to have few glyphs (report by 8435 Mboso Sampson).</li> 8436 8437 <li>improve dynamic colors by not repainting the screen if only 8438 the cursor color changes (request by Bram Moolenaar).</li> 8439 8440 <li>fix menu initialization for tek4014 window broken in 8441 <a href="#xterm_206">patch #206</a>.</li> 8442 8443 <li>typo in manpage (Debian #351425).</li> 8444 8445 <li>correct loop logic in <code>dotext</code> to prevent an 8446 infinite loop if a wide character was just at the right margin 8447 when wrapping was disabled (report by Serge van den Boom).</li> 8448 8449 <li>initialize the saved-cursor data so a restore-cursor 8450 operation without a preceding save-cursor operation will not 8451 modify the foreground color.</li> 8452 8453 <li>add a new selection feature: regular expressions, and new 8454 resources which specify what happens on multiple mouse clicks: 8455 <code>on2Clicks</code>, <code>on3Clicks</code>, 8456 <code>on4Clicks</code> and <code>on5Clicks</code>.</li> 8457 8458 <li>revert the <code>XTerm.ad</code> change from <a href= 8459 "#xterm_208">patch #208</a> (Debian #348384).</li> 8460 8461 <li>fixes for the print-window to make it handle combining 8462 characters in UTF-8 mode.</li> 8463 8464 <li>add check to ensure that double-clicking to extend 8465 selection will not extend it into the scrollback area. This 8466 still allows users to scroll back and select text (Debian 8467 #347415).</li> 8468 8469 <li>add configure option <code>--with-tty-group</code> to help 8470 work around deficiencies in packager's build environment 8471 (Debian #349142).</li> 8472 8473 <li>fix typo in configure script option 8474 <code>--disable-narrowproto</code> (report by David 8475 Martínez Moreno).</li> 8476 8477 <li>amend CF_X_FREETYPE changes for <code>pkg-config</code> 8478 check to ensure that <code>Xft</code> is known to that tool 8479 (report and patch by Emanuele Giaquinta).</li> 8480 8481 <li>add an ifdef to allow <code>./configure 8482 --disable-active-icon</code> to work, broken by new code for 8483 testing memory leaks in <a href="#xterm_208">patch #208</a> 8484 (report by Brian Lindholm).</li> 8485 </ul> 8486 8487 <h1><a name="xterm_208" id="xterm_208">Patch #208 - 2006/1/3 - 8488 XFree86 4.5.99.19</a></h1> 8489 8490 <ul> 8491 <li>add <code>charClass</code> resource to 8492 <code>XTerm.ad</code> and <code>UXTerm.ad</code> which 8493 simplifies selecting URLs (prompted by Kirill Ponomarew).</li> 8494 8495 <li>modify install rule for <code>uxterm</code> to account for 8496 the <code>--program-prefix</code>, etc., options by invoking 8497 the transformed name of xterm rather than simply "xterm".</li> 8498 8499 <li>modify configure <code>--with-app-defaults</code> option to 8500 allow <code>--without-app-defaults</code>.</li> 8501 8502 <li>add configure <code>--with-symlink</code> option to make it 8503 simpler to install successive versions of <code>xterm</code> 8504 renamed using the <code>--program-prefix</code>, etc., options 8505 with a symbolic link pointing to the most recent.</li> 8506 8507 <li>make <code>-iconic</code> option work with toolbar 8508 configuration (Gentoo #113604).</li> 8509 8510 <li>suppress <code>lastlog</code> feature for 64-bit Solaris 8511 configuration since that platform provides only a 32-bit 8512 interface (report by Peter Bray).</li> 8513 8514 <li>fix memory reallocation for the "UTF-8" menu entry when 8515 xterm is started using the <code>+u8</code> option (reported by 8516 Jan Willem Stumpel).</li> 8517 8518 <li>add a configure check for the actual path of 8519 <code>luit</code>, to work around broken <code>imake</code> 8520 configurations.</li> 8521 8522 <li>add a configure check for <code>pkg-config</code> (Redhat 8523 Bugzilla #173541).</li> 8524 8525 <li>modify install-rule for <code>uxterm</code> to omit 8526 executable suffix, e.g., for Cygwin.</li> 8527 8528 <li>modify <code>sinstall.sh</code> to work around quirks in 8529 Cygwin configuration.</li> 8530 </ul> 8531 8532 <h1><a name="xterm_207" id="xterm_207">Patch #207 - 2005/11/13 - 8533 XFree86 4.5.99.16</a></h1> 8534 8535 <ul> 8536 <li>enable <code>lastlogx</code> support for NetBSD (was added, 8537 but not enabled in <a href="#xterm_186">patch #186</a>).</li> 8538 8539 <li>work around broken <code>lastlog.h</code> in glibc 2.3.5, 8540 which includes <code>utmp.h</code>.</li> 8541 8542 <li>revert part of recent XFree86 Imakefile change, restoring 8543 the <code>-I.</code> needed for <code>xmkmf</code> builds of 8544 xterm (XFree86 Bugzilla #1633, reports by Alexander Pohoyda, 8545 Matthieu Herrb).</li> 8546 8547 <li>change compiled-in default for <code>printerCommand</code> 8548 resource to an empty string. People who want to use the printer 8549 should be able to read the manual (Debian #311490).</li> 8550 8551 <li>modify <code>Imakefile</code> to work around old problems 8552 in <code>imake</code> configuration to allow test-builds using 8553 <code>xmkmf</code> on Linux. (This was not noticed since 8554 several releases had broken definitions relating to Xft which 8555 were harder to work around).</li> 8556 8557 <li>link <code>resize</code> for SCO platforms (Kean 8558 Johnston).</li> 8559 </ul> 8560 8561 <h1><a name="xterm_206" id="xterm_206">Patch #206 - 2005/11/3 - 8562 XFree86 4.5.99.15</a></h1> 8563 8564 <ul> 8565 <li>add configure <code>--with-app-defaults</code> option to 8566 allow app-defaults directory for install-rules to be 8567 customized.</li> 8568 8569 <li>remove default translations for 8570 <code>dabbrev-expand()</code> due to conflicts with existing 8571 keyboard arrangements.</li> 8572 8573 <li>remove redundant check for <code>_NET_WM_PID</code> (report 8574 by Emanuele Giaquinta).</li> 8575 8576 <li>set icon border width explicitly to work around fvwm 8577 problem with active icon resizing (report by Steve Morris, 8578 analysis by Dominik Vogt).</li> 8579 8580 <li>modify resource files to make the font-resources a little 8581 more specific, e.g., changing "*VT100*" to "*VT100.", to make 8582 the distinction between VT100.font and VT100.utf8Fonts.font 8583 sharper, in case a packager modifies one of those.</li> 8584 8585 <li>expanded comments in <code>UXTerm.ad</code> regarding the 8586 font resources (Debian #319179).</li> 8587 8588 <li>add <code>--enable-narrowproto</code> configure option to 8589 accommodate X.org "modular" build (report by Stephan Hermann, 8590 Gentoo #17220).</li> 8591 8592 <li>fix typo in xterm.man description of <code>+wf</code> 8593 (patch by Tobias Stoeckmann).</li> 8594 8595 <li>add <code>scrollBarBorder</code> resource (request by Floyd 8596 L Davidson).</li> 8597 8598 <li>modify <code>xterm-new</code> terminfo entry to use 8599 capabilities for shifted scroll forward/reverse as shifted 8600 cursor up/down.</li> 8601 8602 <li>correct updating of checkmark for toolbar entry in popup 8603 menu (report by Emanuele Giaquinta).</li> 8604 8605 <li>fix ifdef's to allow compiling with toolbar and without 8606 tek4014 (patch by Emanuele Giaquinta).</li> 8607 8608 <li>use <code>openpty()</code> for Darwin port (patch by 8609 Emanuele Giaquinta).</li> 8610 8611 <li>fix Gentoo #90697 a different way, postponing the logic in 8612 <code>SetupToolbar</code> until the toolbar is actually needed, 8613 i.e., the <code>+tb</code> option is handled as expected.</li> 8614 8615 <li>revert fix made in <a href="#xterm_203">patch #203</a> for 8616 Gentoo #90697. That introduced a problem with the control mouse 8617 click-popups, while most of the performance problems can be 8618 resolved by restricting the menu fonts (report by Emanuele 8619 Giaquinta).</li> 8620 8621 <li>fix a file-descriptor leak when calling 8622 <code>openpty()</code> (OpenBSD system/4561).</li> 8623 8624 <li>make a special case of resizing work like vt100: a hard 8625 reset also resets the 132/80 mode. The code to support this was 8626 present since X11R5, but not used because the corresponding 8627 initial state of the <code>-132</code> option was not 8628 saved.</li> 8629 8630 <li>restore window manager hints after 8631 <code>XtMakeResizeRequest()</code> calls. One instance from 8632 <a href="#xterm_205">patch #205</a> resulted in the window 8633 manager displaying pixels rather than than characters after 8634 selecting a different font size (FreeBSD ports/87424).</li> 8635 8636 <li>remove special case for Darwin in CF_XOPEN_SOURCE (Emanuele 8637 Giaquinta).</li> 8638 8639 <li>modify parsing of control sequence <code>CSI T</code> 8640 to allow scroll-down to be sent while mouse tracking is enabled 8641 (request by D Hugh Redelmeier).</li> 8642 8643 <li>correct termcap "me" (mode-end) string so it does not 8644 modify the alternate character set (report by Andrey 8645 Chernov).</li> 8646 8647 <li>correct size-comparison in HandleInterpret() broken in 8648 changes from <a href="#xterm_201">patch #201</a> to allocate 8649 input buffer (Debian #334317).</li> 8650 8651 <li>amend adjustments for scrollbar layout from <a href= 8652 "#xterm_204">patch #204</a> to make this apply only to the 8653 toolbar configuration. In the non-toolbar configuration, the 8654 resulting scrollbar was shifted by its borderwidth (report by 8655 Matthieu Herrb).</li> 8656 8657 <li>add select-cursor-extend() action.</li> 8658 8659 <li>fix some broken href's in xterm.log.html, and typo in the 8660 INSTALL file (report/patch by David Martínez 8661 Moreno).</li> 8662 8663 <li>modify <code>Imakefile</code> to use setgid mode for 8664 installing with Linux, OpenBSD and FreeBSD.</li> 8665 8666 <li>add configure --with-setuid and --with-reference options to 8667 allow packagers more flexibility in customizing install 8668 permissions.</li> 8669 8670 <li>generalize and make optional (configure --with-utmp-setgid) 8671 the change made for XFree86 Bugzilla #878 in <a href= 8672 "#xterm_205">patch #205</a> (FreeBSD bug report 8673 #ports/86663).</li> 8674 </ul> 8675 8676 <h1><a name="xterm_205" id="xterm_205">Patch #205 - 2005/9/18 - 8677 XFree86 4.5.99.12</a></h1> 8678 8679 <ul> 8680 <li>correct a typo in CF_FUNC_TGETENT introduced in <a href= 8681 "#xterm_198">patch #198</a> fix for Gentoo #69926.</li> 8682 8683 <li>implement logic in termcap query to process multiple 8684 parameters as documented in ctlseqs.ms</li> 8685 8686 <li>fix buffer size used for termcap query, which was not long 8687 enough for the terminfo "colors" name (patch by Bradd W. 8688 Szonye).</li> 8689 8690 <li>add configure option --enable-readline-mouse, which turns 8691 on the experimental OPT_READLINE code (patch by Ilya 8692 Zakharevich).</li> 8693 8694 <li>for FreeBSD, drop setuid privileges after startup (XFree86 8695 Bugzilla #878, report/patch by Alexander Pohoyda)</li> 8696 8697 <li>add menu entry (alt-esc) and corresponding action 8698 (alt-sends-esc) to toggle the <code>eightBitInput</code> 8699 resource setting.</li> 8700 8701 <li>generate configure script with autoconf 2.52 (patched) to 8702 use the feature therein which forces the script's locale to 8703 POSIX (Gentoo Bugzilla #105369).</li> 8704 8705 <li>modify computation of rows/columns on resize to avoid 8706 extending beyond the given limits, e.g., if resizing in 8707 response to a "maximize" in Gnome or KDE which do not use the 8708 window manager hints for this case (Debian #289123, Novell 8709 #61153).</li> 8710 8711 <li>modifications to work with z/OS 1.4 (Paul Giordano).</li> 8712 8713 <li>improve error-reporting when chown/chmod of the 8714 pseudo-terminal fails, e.g., if a copy of xterm which was 8715 designed to work with old-style pseudo-terminals is not 8716 installed setuid or setgid (report by Jeremy C. Reed).</li> 8717 8718 <li>patches from Emanuele Giaquinta: 8719 <ul> 8720 <li>ctlseqs.ms says that primary and secondary DA accept a 8721 nonzero parameter, which is incorrect. Also modify code to 8722 agree with this.</li> 8723 8724 <li>correct a comment in 88colres.pl</li> 8725 8726 <li>ctlseqs.ms says that the DEC Set/Reset control 8727 sequences for the backarrow key make it send DEL/BS, 8728 respectively, while it's the opposite.</li> 8729 8730 <li>update the menu entries for the metaSendsEscape, 8731 deleteIsDEL and numLock resources when changing them with 8732 the corresponding DEC Set/Reset control sequences.</li> 8733 </ul> 8734 </li> 8735 8736 <li>fixes for configure script: 8737 <ul> 8738 <li>add special case for QNX, defining _QNX_SOURCE.</li> 8739 8740 <li>check for preprocessors which do not perform -U and -D 8741 options in the given order.</li> 8742 8743 <li>improve macro to determine gcc version</li> 8744 8745 <li>improve check for Intel compiler and related warning 8746 options</li> 8747 </ul> 8748 </li> 8749 8750 <li>update config.guess, config.sub</li> 8751 8752 <li>improve fix from <a href="#xterm_198">patch #198</a> for 8753 <code>Cleanup()</code> by ensuring it is not called from the 8754 SIGCHLD handler (patch by Todd Miller (OpenBSD CVS)).</li> 8755 8756 <li>eliminate a retry for a better-matching bold font, to work 8757 around recent font server changes.</li> 8758 8759 <li>fixes for Novell #113277: 8760 <ul> 8761 <li>specify weight for wide font which may be derived from 8762 normal fontname.</li> 8763 8764 <li>cache the derived wide- and widebolt-fontnames.</li> 8765 </ul> 8766 </li> 8767 8768 <li>workaround for Gentoo Bugzilla #100728.</li> 8769 8770 <li>add menubar's border width to layout computation. Normally 8771 this is zero, but patterns such as 8772 <code>XTerm*borderWidth:1</code> would give poor layout for the 8773 toolbar configuration.</li> 8774 </ul> 8775 8776 <h1><a name="xterm_204" id="xterm_204">Patch #204 - 2005/8/4 - 8777 XFree86 4.5.99.9</a></h1> 8778 8779 <ul> 8780 <li>work around quirk in shell which allowed user to "run" 8781 uxterm script when there was no UTF-8 locale installed by 8782 entering "sh -x uxterm". Also popup an xmessage to show the 8783 problem for users who run this via a GUI (Debian #318513).</li> 8784 8785 <li>disallow changes to fonts, toolbar and scrollbar when the 8786 vt100 window is iconified, to simplify management of the active 8787 icon.</li> 8788 8789 <li>fixes to make <code>-geom</code> option work properly with 8790 the toolbar configuration (Gentoo #90717, Gentoo #91967).</li> 8791 8792 <li>minor improvements to scrollbar layout: ensure that the 8793 scrollbar border is zero if the vt100 border is zero.</li> 8794 8795 <li>improve initialization due to <code>utf8</code> resource by 8796 loading the <code>utf8Fonts</code> resource in the case where 8797 <code>locale</code> resource is false. Also in this case, do 8798 not disable switching UTF-8 mode on/off.</li> 8799 8800 <li>minor optimization of TrueType font-loading, loads italic 8801 font only when needed.</li> 8802 8803 <li>correct variable used to store temporary result from lookup 8804 of bold font, when initializing the wide-bold-font data and no 8805 immediate match is found by asking for a bold variant of the 8806 wide-font. The result was to use overstriking rather than the 8807 actual bold font (Debian #318162, patch by Eugene Konev).</li> 8808 8809 <li>add checks to ensure vt100 widget is realized when it might 8810 be updated via actions handled from a tek4014-only 8811 configuration.</li> 8812 </ul> 8813 8814 <h1><a name="xterm_203" id="xterm_203">Patch #203 - 2005/7/6 - 8815 XFree86 4.5.99.7</a></h1> 8816 8817 <ul> 8818 <li>modify initialization of <code>allowSendEvents</code> and 8819 <code>allowWindowOps</code> to prevent modification with the 8820 editres protocol.</li> 8821 8822 <li>fix compiler warning for NetBSD by including util.h in 8823 main.c (XFree86 Bugzilla #1596).</li> 8824 8825 <li>fix to build on Darwin 8.x, which no longer provides 8826 <code>setpgrp()</code> (patch by Min Sik Kim).</li> 8827 8828 <li>adapted fixes for Legend (SCO) from diffs attached to 8829 Freedesktop.Org Bugzilla #3180.</li> 8830 8831 <li>fix typo in xterm manpage description of <code>-ls</code> 8832 option (Freedesktop.Org Bugzilla #3543).</li> 8833 8834 <li>add support for interpreting the underline attribute as an 8835 italic font in Xft mode (patch by Chuck Blake).</li> 8836 8837 <li>improve initialization of toolbar so that individual 8838 pulldown menus are initialized on demand, as they are in the 8839 scenario where they are invoked as popup menus (Gentoo Bugzilla 8840 #90697).</li> 8841 8842 <li>fix logic in <code>find_utmp</code>, which did not reset 8843 result in <code>getutid()</code>, causing an infinite loop in 8844 some conditions (report by Emil Mikulic).</li> 8845 8846 <li>set the <code>_NET_WM_PID</code> property (Gentoo Bugzilla 8847 #91008).</li> 8848 8849 <li>modify ifdef's in ptyx.h and xterm_io.h to build with 8850 DragonFly (patch by Jeroen Ruigrok).</li> 8851 8852 <li>change default values for <code>minBufSize</code> and 8853 <code>maxBufSize</code> to 4096 and 32768 respectively so that 8854 the initial read request will match the value from before 8855 changes to use <code>sched_yield()</code>.</li> 8856 8857 <li>make paste of UTF-8 faster for Western character sets by 8858 checking range of incoming data (patch by Joe Allen).</li> 8859 8860 <li>add experimental option to allow applications to get or set 8861 the selection data as a BASE64 string (adapted from patch by 8862 Joe Allen).</li> 8863 8864 <li>fix an off-by-one error parsing <code>-S/nn</code> option 8865 (Debian #311438, report/fix by Peter Chubb).</li> 8866 8867 <li>fix an initialization bug from <a href="#xterm_201">patch 8868 #201</a> that broke logging (report by Rodney Thayer).</li> 8869 8870 <li>amend change to command-line processing in <a href= 8871 "#xterm_201">patch #201</a> to avoid conflict with 8872 <code>-e</code> option (report by Servatius Brandt).</li> 8873 8874 <li>suppress configure check for <code>_XOPEN_SOURCE</code> on 8875 darwin.</li> 8876 8877 <li>update config.guess, config.sub</li> 8878 </ul> 8879 8880 <h1><a name="xterm_202" id="xterm_202">Patch #202 - 2005/5/2 - 8881 XFree86 4.5.99.3</a></h1> 8882 8883 <ul> 8884 <li>add extended shift- and control-modifier cursor keys to 8885 "xterm+pcfkeys" terminfo entry to correspond to ncurses 8886 20050430 patch.</li> 8887 8888 <li>fix a rare case where text would be written with the wrong 8889 colors because output of scrolled text would reset the colors 8890 and the new text would be written with the same colors 8891 (report/testcase by Thomas Glanzmann).</li> 8892 8893 <li>rename <code>$CMD</code> variable in <code>plink.sh</code> 8894 because it is a reserved symbol in bash 3.00.16 (report by Ted 8895 Taylor).</li> 8896 8897 <li>add environment variables <code>$XTERM_SHELL</code> and 8898 <code>$XTERM_VERSION</code> (request by Zdenek Sekera).</li> 8899 8900 <li>corrected workaround for background color of menubar, which 8901 gave a too-broad expression, coloring the background of the 8902 VT100 widget unless overridden by another resource 8903 setting.</li> 8904 8905 <li>correct an error in the logic which decides when 8906 <code>sched_yield()</code> is run; it would occasionally hang 8907 when contending with other pseudo-terminal applications such as 8908 screen (report by Kirill Ponomarew).</li> 8909 8910 <li>modify initialization to decide whether to default to 8911 built-in <code>wcwidth()</code> versus system's version based 8912 on the starting locale and whether the system's version is poor 8913 quality (suggested by Bram Moolenaar).</li> 8914 8915 <li>update table for <code>mk_width()</code> from UnicodeData 8916 4.1.0 using Markus Kuhn's <code>uniset</code> script.</li> 8917 </ul> 8918 8919 <h1><a name="xterm_201" id="xterm_201">Patch #201 - 2005/4/21 - 8920 XFree86 4.5.99.2</a></h1> 8921 8922 <ul> 8923 <li>improve resource files to show how the menubar and popup 8924 menus can be colored (prompted by report by Joe Wells).</li> 8925 8926 <li>modify parsing of OSC (and SOS, etc), strings so their 8927 contents are not interpreted as UTF-8. This allows non-ASCII 8928 title strings to be set, provided that the window manager 8929 complies (report by Thomas Wolff).</li> 8930 8931 <li>improved some of the built-in line-drawing glyphs.</li> 8932 8933 <li>correct color of "box" character drawn for line-drawing 8934 glyph 1 (report by Nicolas George).</li> 8935 8936 <li>improve behavior when switching to UTF-8 mode after startup 8937 so xterm will check if the current fonts are already wide 8938 (ISO10646-1). If they are not, xterm will use the 8939 <code>utf8Fonts</code> subresource to load appropriate fonts 8940 (request by Bram Moolenaar).</li> 8941 8942 <li>modify logic for setting title-string so it applies to the 8943 current widget rather than the vt100 widget.</li> 8944 8945 <li>modify initialization for wide-bold fontname, to search for 8946 one if none is given (report by Michael Schroeder).</li> 8947 8948 <li>add resource <code>mkWidth</code> and command-line option 8949 <code>-mk_width</code> to control whether xterm uses the 8950 built-in version of wcwidth().</li> 8951 8952 <li>add resource settings for minimum/maximum input buffer 8953 size, and call to <code>sched_yield</code> to improve 8954 performance with newer Linux kernels (adapted from patch by 8955 Nicolas George).</li> 8956 8957 <li>correct computation of width for wide characters with the 8958 invisible attribute (report by Thomas Wolff).</li> 8959 8960 <li>modify interaction between <code>+u8</code> and 8961 <code>locale</code> resource to allow the command-line option 8962 to override the resource (requested by Thomas Wolff).</li> 8963 8964 <li>add a limit check for scrolling margins in a one-line 8965 screen, overlooked in fixes for <a href="#xterm_198">patch 8966 #198</a> (Debian #297430).</li> 8967 8968 <li>correct treatment of <code>iconBorderWidth</code> for 8969 resizing an active-icon, and its description in manpage (Debian 8970 #296592).</li> 8971 8972 <li>modify configure script <code>--disable-imake</code> to use 8973 the script's definitions anyway if it cannot detect imake 8974 (prompted by FreeBSD bug 77408).</li> 8975 8976 <li>ignore error in the I/O initialization that tries to set 8977 the tty to 7-bit input for the case where 8978 <code>eightBitInput</code> resource is false (Debian 8979 #298551).</li> 8980 8981 <li>modify command-processing to accept an optional parameter 8982 that tells xterm which shell program to use (request by Zdenek 8983 Sekera).</li> 8984 8985 <li>add simpler resource <code>keyboardType</code> which, when 8986 set, overrides the individual keyboard-type resources and 8987 eliminates the possibility of conflict between them.</li> 8988 8989 <li>add initialization for <code>scoFunctionKeys</code> 8990 resource (report by Rick K).</li> 8991 8992 <li>correct logic of <code>ReallocateBufOffsets()</code> which 8993 did not copy the content of the old screen buffer to the proper 8994 location, making a repaint clear after switching to 8995 wide-character mode (report by Bram Moolenaar):</li> 8996 8997 <li>implement the remaining pieces to make xterm allocate cells 8998 for wide-characters when the "UTF-8" menu entry is selected. 8999 Also, load the UTF-8 font when that menu entry is selected, or 9000 the escape sequence for UTF-8 mode is received (report by Bram 9001 Moolenaar):</li> 9002 9003 <li>add command-line options (<code>-tb</code>, 9004 <code>+tb</code>) and resource <code>toolBar</code> to allow 9005 menu/toolbar to disabled or enabled at startup (prompted by 9006 reports by Joe Wells).</li> 9007 9008 <li>correct typo in configure script's --enable-dec-locator 9009 option (report by Bram Moolenaar).</li> 9010 </ul> 9011 9012 <h1><a name="xterm_200" id="xterm_200">Patch #200 - 2005/2/6 - 9013 XFree86 4.4.99.23</a></h1> 9014 9015 <ul> 9016 <li>increase color pairs value for xterm-256color and 9017 xterm-88color to match ncurses, which has an experimental 9018 option to support this.</li> 9019 9020 <li>modify ifdef's to make AIX use termios rather than termio; 9021 the struct sizes for the two were not the same.</li> 9022 9023 <li>improve CF_WITH_IMAKE_CFLAGS configure macro script for 9024 OSMAJORVERSION and OSMINORVERSION values, e.g., for Tru64 and 9025 AIX.</li> 9026 9027 <li>modify ifdef to define USE_POSIX_TERMIOS for Darwin (patch 9028 by Min Sik Kim).</li> 9029 9030 <li>modify find_utmp() to initialize the whole utmpx struct 9031 (except ut_id), since that is needed for OSF1 4.0D to prevent 9032 an infinite loop on exit.</li> 9033 9034 <li>add configure check before adding -D_POSIX_SOURCE since 9035 some platforms predefine it, e.g., cygwin.</li> 9036 9037 <li>add simplified sed expressions in CF_IMAKE_CFLAGS configure 9038 script macro to ensure value for PROJECTROOT is quoted on 9039 Solaris, i.e., when nested <code>\(</code> and <code>\)</code> 9040 are not interpreted correctly.</li> 9041 9042 <li>correct DEC rectangle operations to reset state after 9043 completing the operations.</li> 9044 9045 <li>modify CASE_ST handling in charproc.c to ensure that the 9046 parse state is reset even if xterm is not currently processing 9047 an OSC or other string (patch by Johnny Billquist forwarded by 9048 Matthias Scheler, NetBSD xsrc/29003).</li> 9049 9050 <li>fix OS/2 build for innotek_libc (patch by David Yeo).</li> 9051 9052 <li>fix a regression from <a href="#xterm_197">patch #197</a> 9053 fix for Debian #277832 which disowned the selection if it was 9054 scrolled, e.g., by the user pressing return at the bottom of 9055 the screen (Debian #291787).</li> 9056 9057 <li>move the warning/exit for missing $DISPLAY into the error 9058 handler in case <code>-display</code> is given, and the connect 9059 fails for some other reason.</li> 9060 </ul> 9061 9062 <h1><a name="xterm_199" id="xterm_199">Patch #199 - 2005/1/17 - 9063 XFree86 4.4.99.22</a></h1> 9064 9065 <ul> 9066 <li>instead of setting <code>$DISPLAY</code>, check for the 9067 unset variable and warn/exit on this condition (comments by H 9068 Merijn Brand and Bernhard R Link).</li> 9069 9070 <li>fix a typo in Imakefile from <a href="#xterm_198">patch 9071 #198</a> (reports/patches by Stefan Dirsch, Mike Castle).</li> 9072 </ul> 9073 9074 <h1><a name="xterm_198" id="xterm_198">Patch #198 - 2005/1/13 - 9075 XFree86 4.4.99.21</a></h1> 9076 9077 <ul> 9078 <li>set <code>$DISPLAY</code> to ":0" if it is not set.</li> 9079 9080 <li>add <code>utmpDisplayId</code> resource to allow users to 9081 control whether the display identifier (display number and 9082 screen number) are retained in the connection information 9083 recorded in utmp (discussion with Edoardo Tirtarahardja).</li> 9084 9085 <li>add <code>bellOnReset</code> resource to allow users to 9086 disable bell which sounds on hard reset since <a href= 9087 "#xterm_183">patch #183</a> changes to DECSCL (discussion with 9088 Danek Duvall).</li> 9089 9090 <li>improve <code>$WINDOWID</code> for configuration with 9091 toolbar by making it refer to the top-level shell rather than 9092 the parent of the current window. For that case, the parent is 9093 a form widget, which does not have a name, which made the 9094 <code>$WINDOWID</code> not very useful as a parameter for 9095 <code>xwininfo</code> (suggested by Dave Bodenstab).</li> 9096 9097 <li>fix a typo in WhichVFont() macro from <a href= 9098 "#xterm_197">patch #197</a> changes which broke the 9099 --disable-active-icon configuration (report by Ralf S. 9100 Engelschall).</li> 9101 9102 <li>improve some limit checks (Gentoo Bugzilla #75604).</li> 9103 9104 <li>add --disable-setuid option to configure script (Gentoo 9105 Bugzilla #76543).</li> 9106 9107 <li>add --disable-full-tgetent option to configure script, 9108 allowing one to ignore a termcap library in favor of 9109 ncurses/curses (Gentoo Bugzilla #69926).</li> 9110 9111 <li>modify configure script to choose useful warning options 9112 for Intel version 8.0 compiler.</li> 9113 9114 <li>update config.guess, config.sub</li> 9115 9116 <li>make active-icon work properly when TrueType fonts are used 9117 (Debian #286068).</li> 9118 9119 <li>correct change from <a href="#xterm_157">patch #157</a> 9120 which uses getlogin() to check for an alias; the storage used 9121 for the related getpwuid() call was overwritten by the data 9122 used for comparison (patch by Per Hedeland).</li> 9123 9124 <li>correct case of SCS for character set 0 (line-drawing) to 9125 allow it to be selected into GR.</li> 9126 9127 <li>fix a file-descriptor leak (Redhat Bugzilla #139597).</li> 9128 9129 <li>modify <code>creat_as()</code> to only fork if xterm is 9130 actually running as setuid and/or setgid. This works around a 9131 Cygwin bug which hangs when logging is enabled and makes xterm 9132 a little faster for systems using interfaces such as utempter 9133 (report by Al Goodman).</li> 9134 9135 <li>modify <code>Cleanup()</code> to avoid operations such as X 9136 calls that might use unsafe functions when it is called by a 9137 signal handler (report by Michiel Boland).</li> 9138 9139 <li>fix bugs in <a href="#xterm_191">patch #191</a> and in SRM 9140 changes from <a href="#xterm_197">patch #197</a> that broke 9141 DECSET 38: switch to Tek4014 emulation (report by Dave 9142 Bodenstab).</li> 9143 9144 <li>fix for manpage escapes (Marc La France).</li> 9145 9146 <li>improve on IRIX-specific change for Imakefile in XFree86 9147 CVS versus resize linking against termcap library to reflect 9148 definitions for USE_TERMCAP in resize.c</li> 9149 </ul> 9150 9151 <h1><a name="xterm_197" id="xterm_197">Patch #197 - 2004/11/30 - 9152 XFree86 4.4.99.19</a></h1> 9153 9154 <ul> 9155 <li>modify configure script to remove empty "-DPROJECTROOT=" 9156 definition which resulted unusable values for luit's default 9157 path.</li> 9158 9159 <li>update precompose.c based on Unicode 4.0.1</li> 9160 9161 <li>several minor fixes based on Intel compiler warnings.</li> 9162 9163 <li>change default translations so a <code>BtnDown</code> which 9164 is not recognized is simply ignored rather than emitting a 9165 bell. That makes it less obtrusive when the user tries to use a 9166 mouse which provides more capabilities than the X mouse driver 9167 supports, e.g., one with a horizontal scroll wheel (Debian 9168 #265133).</li> 9169 9170 <li>note in xterm's manpage that <code>translations</code> is 9171 not specific to xterm (Debian #278897).</li> 9172 9173 <li>modify uxterm script to use locale program to verify if the 9174 derived locale is installed (Debian #246398).</li> 9175 9176 <li>correct font handling for active icon when in UTF-8 mode 9177 (report by Paolo Liberatore).</li> 9178 9179 <li>make active-icon and toolbar configurations work 9180 together.</li> 9181 9182 <li>modify the criteria for disowning primary selection. 9183 Previously, this happened anytime the cursor was moved before 9184 the end of the selection. That would ensure that any 9185 insert/delete of char or line, as well as scrolling, would 9186 disown the selection. The new criteria change this to checking 9187 if the operations would modify the data which is highlighted 9188 (Debian #277832).</li> 9189 9190 <li>reimplement <code>DECALN</code> with functions for vt420 9191 rectangles, fixes selection for this case.</li> 9192 9193 <li>implement vt420 rectangle operations.</li> 9194 9195 <li>add parsing, for debug/test of vt220 soft-fonts.</li> 9196 9197 <li>add menu entry, actions and escape sequence to allow 9198 enabling/disabling toolbars at runtime.</li> 9199 9200 <li>improve rendering for Xft, allow it to draw non-linedrawing 9201 characters such as "pi", which were drawn from internal tables 9202 with <a href="#xterm_180">patch #180</a> (Freedesktop.org 9203 Bugzilla #1260).</li> 9204 9205 <li>add configure option <code>--enable-mini-luit</code>, 9206 ifdef'd the mini-luit feature with 9207 <code>OPT_MINI_LUIT</code>.</li> 9208 9209 <li>add mini-luit feature, which supports Latin9 directly 9210 rather than via luit, provided that Unicode fonts are used 9211 (Freedesktop.org Bugzilla #1571, request by Stefan Dirsch, 9212 patch by Michael Schroeder).</li> 9213 9214 <li>for Linux, if IUTF8 is defined, e.g., on recent 2.6.x 9215 kernels, set the corresponding flag for the slave pty, to 9216 enable UTF-8 interpretation of backspace in cooked mode 9217 (Freedesktop.org Bugzilla #1578, request by Stefan 9218 Dirsch).</li> 9219 9220 <li>modify <code>faceSize</code> resource to use a 9221 floating-point internal value (adapted from patch by Sam 9222 Stephenson).</li> 9223 9224 <li>correct handling selection of tabs over cleared space in 9225 UTF-8 mode. In this special case, xterm represents the 9226 whitespace with a null rather than a space character (Debian 9227 #276447).</li> 9228 9229 <li>amend fix for infinite loop from <a href="#xterm_192">patch 9230 #192</a> to check if there is wrapped text to output in a 9231 following iteration (Debian #273202).</li> 9232 9233 <li>fixes ifdef'd with <code>__INTERIX</code> to allow building 9234 with Interix (Windows Services for UNIX) 3.5 using the xlibs 9235 libraries from freedesktop.org (patch by Min Sik Kim).</li> 9236 9237 <li>amend solution for Debian #252873, Debian #260471 from 9238 <a href="#xterm_194">patch #194</a> by making the cursor not 9239 explicitly colored if only the foreground color is set, and the 9240 cursor is on a blank space (Debian #275473).</li> 9241 9242 <li>correct logic for send/receive mode (SRM) with regard to 9243 control characters.</li> 9244 9245 <li>fix masking of invisible text in wide-character mode, which 9246 did not work for line-drawing characters.</li> 9247 9248 <li>incorporate CF_XOPEN_SOURCE into configure script, 9249 replacing CF_GNU_SOURCE.</li> 9250 </ul> 9251 9252 <h1><a name="xterm_196" id="xterm_196">Patch #196 - 2004/8/15 - 9253 XFree86 4.4.99.12</a></h1> 9254 9255 <ul> 9256 <li>add a special case to configure script to ignore NetBSD's 9257 <code>grantpt()</code> which was recently added (but not part 9258 of a release), until someone is able to ensure that xterm can 9259 use it (report by Min Sik Kim).</li> 9260 9261 <li>clear the buffer returned by getutid(). This fixes an 9262 infinite loop on some platforms introduced in <a href= 9263 "#xterm_193">patch #193</a> by Debian #256468 fix (report by 9264 David Ellement).</li> 9265 </ul> 9266 9267 <h1><a name="xterm_195" id="xterm_195">Patch #195 - 2004/8/8 - 9268 XFree86 4.4.99.11</a></h1> 9269 9270 <ul> 9271 <li>correct length used for blinking text, make the last column 9272 blink (patch by Alexander V Lukyanov).</li> 9273 9274 <li>start changes to make doublesize characters work with 9275 TrueType fonts (see <a href="#xterm_44">patch #44</a>).</li> 9276 9277 <li>trim leading/trailing blanks from color resources as done 9278 for other strings in <a href="#xterm_167">patch #167</a>.</li> 9279 9280 <li>fixes for <code>showBlinkAsBold</code> resource (report by 9281 Christoph Berg).</li> 9282 </ul> 9283 9284 <h1><a name="xterm_194" id="xterm_194">Patch #194 - 2004/7/27 - 9285 XFree86 4.4.99.11</a></h1> 9286 9287 <ul> 9288 <li>change clearing operations so foreground color attribute is 9289 not set. Usually this is benign, but in some cases when the 9290 cursor color is not set explicitly, the cursor would show this 9291 color (Debian #252873, Debian #260471).</li> 9292 9293 <li>add extra state (cursor-moved) to guard against deciding 9294 that the cursor did not require repainting after an indexing 9295 operation that leaves the cursor in the same location on the 9296 screen.</li> 9297 9298 <li>fix a case where a full-screen indexing operation would not 9299 restore the cursor-busy state.</li> 9300 9301 <li>fix a repainting bug introduced in <a href= 9302 "#xterm_180">patch #180</a>: when using a font lacking 9303 line-drawing characters, a repaint of the screen could skip 9304 horizontally an extra amount after filling in the missing 9305 character (reports by Nicolas George, Hans de Goede, Redhat 9306 Bugzilla #128341).</li> 9307 9308 <li>rename terminfo fragment "xterm-pc-fkeys" to 9309 "xterm+pcfkeys" for consistency with ncurses.</li> 9310 </ul> 9311 9312 <h1><a name="xterm_193" id="xterm_193">Patch #193 - 2004/7/19 - 9313 XFree86 4.4.99.10</a></h1> 9314 9315 <ul> 9316 <li>fix for wide-character selection from OpenBSD CVS 9317 (report/patch by Matthieu Herrb).</li> 9318 9319 <li>modify initialization and cleanup of utmp data to also 9320 compare the <code>ut_line</code> member (Debian #256468).</li> 9321 9322 <li>modify check on focus-change to ignore 9323 <code>FocusOut</code> events generated by 9324 <code>XGrabKeyboard</code>. This fixes a case where the text 9325 cursor would act as if focus were lost when selecting the 9326 "Secure Keyboard" menu option.</li> 9327 9328 <li>add <code>gen-pc-fkeys.pl</code> script, use that to 9329 generate terminfo fragment corresponding to the pc-style 9330 function keys.</li> 9331 9332 <li>fix a case where the checkmark by the "VT220 Keyboard" menu 9333 entry was not set on startup.</li> 9334 9335 <li>separated two methods for making the cursor blink (menu and 9336 escape sequence) by using the menu as the primary method and 9337 XOR'ing the state of the escape sequence against that.</li> 9338 9339 <li>modify logic for enabling blinking cursor via escape 9340 sequence as well as the related save/restore operations so this 9341 is only available if the <code>cursorBlink</code> resource was 9342 set on startup.</li> 9343 </ul> 9344 9345 <h1><a name="xterm_192" id="xterm_192">Patch #192 - 2004/7/12 - 9346 XFree86 4.4.99.9</a></h1> 9347 9348 <ul> 9349 <li>change resource settings for color4 and color12, add some 9350 discussion in <code>XTerm-col.ad</code> (Debian #241717).</li> 9351 9352 <li>add a note in xterm manpage discussing the difference 9353 between alt- and meta-keys, and the way the latter is used in 9354 the <code>eightBitInput</code> resource.</li> 9355 9356 <li>add a note in xterm manpage regarding possible conflict 9357 between resource settings for <code>xterm.vt100.font</code> and 9358 <code>xterm.vt100.utf8Fonts.font</code> (Debian #254650).</li> 9359 9360 <li>add compile-time customization of 9361 <code>backarrowKeyIsErase</code> and 9362 <code>ptyInitialErase</code> default resource values (adapted 9363 from OpenBSD CVS).</li> 9364 9365 <li>change parameter of <code>FIONREAD</code> 9366 <code>ioctl()</code> call from long to int (discussion on 9367 tech-x11@netbsd.org regarding LP64 by John Heasley and Matthias 9368 Scheler).</li> 9369 9370 <li>modify configure script options for Athena widgets to work 9371 as expected for "--without-Xaw3d", etc., (Gentoo Bugzilla 9372 #53455).</li> 9373 9374 <li>add case to uxterm to accommodate locales ending with 9375 "@euro", e.g., fr_FR.UTF-8@euro (Debian #255197, 9376 report/analysis by Matthieu Lagouge).</li> 9377 9378 <li>add special case for VT100 graphic's "box" character 9379 (discussion with Ben Armstrong).</li> 9380 9381 <li>add missing initialization for bitmap-font sizes needed to 9382 make fonts menu work with TrueType fonts (report by Ben 9383 Armstrong).</li> 9384 9385 <li>save the fontnames for bold fonts that are derived from 9386 normal fonts, or from the <code>boldFont</code> resource, so 9387 the same value is restored when switching with the VT Fonts 9388 menu (Debian #256086).</li> 9389 9390 <li>fix manpage preprocessing (Marc La France).</li> 9391 9392 <li>fix typo in manpage's description of character classes 9393 (Debian #257073).</li> 9394 9395 <li>modify terminfo to accommodate luit, which relies on G1 9396 being used via an ISO-2022 escape sequence (Debian #254316, 9397 analysis by Juliusz Chroboczek).</li> 9398 9399 <li>modify Makefile.in rule for ctlseqs.txt to work around 9400 groff SGR misfeature.</li> 9401 9402 <li>modify <code>XTerm.ad</code> to set <code>saveLines</code> 9403 default to 1024 (Redhat Bugzilla #127132).</li> 9404 9405 <li>add a limit-check in <code>dotext()</code> to prevent 9406 infinite loop in a corner case of UTF-8 configuration.</li> 9407 9408 <li>update config.guess, config.sub</li> 9409 </ul> 9410 9411 <h1><a name="xterm_191" id="xterm_191">Patch #191 - 2004/6/6 - 9412 XFree86 4.4.99.7</a></h1> 9413 9414 <ul> 9415 <li>correct options parsing for <code>-into</code> option so it 9416 can be combined with <code>-e</code> (Redhat Bugzilla #124518, 9417 report/patch by James Armstrong).</li> 9418 9419 <li>fix ifdef's for <code>OPT_COLOR_RES2</code> so that the 9420 fake resource table introduced in <a href="#xterm_188">patch 9421 #188</a> is not compiled if it is empty. This happened to work 9422 with gcc (report by Joel Konkle-Parker).</li> 9423 9424 <li>reorganize ptydata.c to use one input buffer shared between 9425 the VTxxx and tek4014 emulators. In the new scheme, UTF-8 9426 decoding is performed on characters as they are needed by the 9427 state machine rather than on buffers as they are read.</li> 9428 9429 <li>work around change in quoting of PROJECTROOT symbol when 9430 using configure script, from changes made in <a href= 9431 "#xterm_187">patch #187</a> for CF_IMAKE_CFLAGS (Gentoo 9432 Bugzilla #50982).</li> 9433 </ul> 9434 9435 <h1><a name="xterm_190" id="xterm_190">Patch #190 - 2004/5/25 - 9436 XFree86 4.4.99.6</a></h1> 9437 9438 <ul> 9439 <li>correct state for values in the range 128-159 after 9440 translating from UTF-8: this should be ignored unless the user 9441 overrides it with the <code>allowC1Printable</code> resource 9442 (reported by Simon Strandgaard).</li> 9443 9444 <li>add configure-script check for nl_langinfo(CODESET), use 9445 this to replace check of environment variables for UTF-8.</li> 9446 9447 <li>change Makefile.in rules for 256colres.h and 88colres.h so 9448 they are only made if they do not exist. The maintainer-clean 9449 rule will remove these files; they require perl to be 9450 made.</li> 9451 9452 <li>remove check in configure script --enable-toolbar that 9453 suppressed this option when building with Xaw7.</li> 9454 9455 <li>apply fixes to Tektronix widget used for VT100 widget to 9456 make toolbar work with Xaw7 (XFree86 4.x).</li> 9457 </ul> 9458 9459 <h1><a name="xterm_189" id="xterm_189">Patch #189 - 2004/5/16 - 9460 XFree86 4.4.99.6</a></h1> 9461 9462 <ul> 9463 <li>do not call xim_real_init() if <code>openIm</code> resource 9464 is false (Debian #249025).</li> 9465 9466 <li>minor improvements to built-in line-drawing.</li> 9467 9468 <li>fix a few portability issues with dynamic abbreviation 9469 support, i.e., did not compile on Tru64.</li> 9470 9471 <li>modify constraints in form used to layout toolbar, to work 9472 with newer Xaw in XFree86 4.x.</li> 9473 </ul> 9474 9475 <h1><a name="xterm_188" id="xterm_188">Patch #188 - 2004/5/12 - 9476 XFree86 4.4.99.6</a></h1> 9477 9478 <ul> 9479 <li>correct table entry for DEL in the ground state, which 9480 marked it as a printable character from <a href= 9481 "#xterm_171">patch #171</a> (report by D Hugh Redelmeier).</li> 9482 9483 <li>improve fix in <a href="#xterm_186">patch #186</a> for 9484 failure in xim_real_init() by adding a sleep.</li> 9485 9486 <li>fix a typo in os2main.c (XFree86 Bugzilla #1358, 9487 report/patch by Frank Giessler).</li> 9488 9489 <li>make escape sequence reporting dynamic colors consistent 9490 with the logic that sets it; choosing the opposite color when 9491 reverse video is set (XFree86 Bugzilla #1361, reported by Bradd 9492 W Szonye).</li> 9493 9494 <li>modify initialization of 256- and 88-colors so that colors 9495 beyond 16 are normally not X resources. This works around a 9496 hard-coded limit in Xt which breaks xterm when 256-colors and 9497 luit are both configured (report by Noah Friedman).</li> 9498 9499 <li>remove <code>ncv</code> from <code>xterm-256color</code> 9500 terminfo entry since it is no longer needed (report by Eli 9501 Zaretskii).</li> 9502 9503 <li>add "erase2" and "eol2" keywords to <code>ttyModes</code> 9504 resource, for recent/current FreeBSD.</li> 9505 9506 <li>improve ifdef's for utempter library to omit direct calls 9507 to <code>setutent()</code> or <code>getutent()</code> (adapted 9508 from patch by Christian Biere).</li> 9509 9510 <li>add dynamic abbreviation support like Emacs (patch by 9511 Tomasz Cholewo). This is ifdef'd with <code>OPT_DABBREV</code>, 9512 and enabled via the configure script 9513 <code>--enable-dabbrev</code> option.</li> 9514 9515 <li>fix problem responding to session management events, e.g., 9516 which would make logging out very slow (patch by Eddy De Greef, 9517 Debian #233883).</li> 9518 9519 <li>work around a newer bug in toolbar with XFree86 by forcing 9520 menus to be fully initialized at startup. In older versions of 9521 XFree86 and X11R6, it was possible to delay initialization of 9522 the menu contents until it was popped up. (The longstanding bug 9523 with XFree86 4.x layout for toolbar still exists, though).</li> 9524 9525 <li>modify <code>xtermAddInput</code> to work around core dump 9526 on IRIX64 when initializing scrollbar translations if toolbar 9527 is compiled-in.</li> 9528 9529 <li>fix some minor conflicts in the 2-character entry names in 9530 the termcap file.</li> 9531 </ul> 9532 9533 <h1><a name="xterm_187" id="xterm_187">Patch #187 - 2004/4/27 - 9534 XFree86 4.4.99.4</a></h1> 9535 9536 <ul> 9537 <li>change xterm version string to use 9538 <code>__vendorversion__</code> where that is available, and 9539 "XTerm" otherwise.</li> 9540 9541 <li>improve description of <code>utf8</code> resource in 9542 manpage (Debian #179407).</li> 9543 9544 <li>modify configure macros CF_IMAKE_CFLAGS and CF_ADD_CFLAGS 9545 to handle <code>-D</code> options that define string values, 9546 e.g., for <code>XVENDORNAME</code>.</li> 9547 9548 <li>modify configure macro CF_IMAKE_CFLAGS to allow (if 9549 <code>$PATH</code> is set accordingly) to use the 9550 <code>xmkmf</code> script within an X build tree.</li> 9551 9552 <li>add missing <code>#undef OPT_SESSION_MGT</code> to 9553 xtermcfg.hin to make the configure script's 9554 --disable-session-mgt option work.</li> 9555 9556 <li>update config.guess, config.sub</li> 9557 </ul> 9558 9559 <h1><a name="xterm_186" id="xterm_186">Patch #186 - 2004/4/18 - 9560 XFree86 4.4.99.4</a></h1> 9561 9562 <ul> 9563 <li>change reset on <code>DECSCL</code> to a soft-reset 9564 (appears some DEC manuals have errors).</li> 9565 9566 <li>add a section to ctlseqs.ms elaborating on normal/alternate 9567 screens.</li> 9568 9569 <li>modify initialization of Acolors[] so that any 9570 XtDefaultForeground or XtDefaultBackground values are 9571 translated as in the Tcolors[], to use the window's 9572 foreground/background colors. This affects the 9573 <code>colorBD</code> and similar resources which normally have 9574 no explicit color assigned.</li> 9575 9576 <li>modify initialization of Tektronix window so that control 9577 sequences setting its color before the window is popped up will 9578 apply to its initial colors.</li> 9579 9580 <li>add control sequence to set Tektronix window's 9581 text-cursor.</li> 9582 9583 <li>modify initialization of terminal colors, e.g., mouse 9584 pointer and text cursor, to treat 9585 <code>XtDefaultForeground</code> and 9586 <code>XtDefaultBackground</code> values as the actual 9587 foreground and background colors of the terminal rather than 9588 white and black (Debian #241717).</li> 9589 9590 <li>remove an incorrect comparison against 9591 <code>PTYCHARLEN</code> in parsing the <code>-S</code> option 9592 (report by Michael B Taylor).</li> 9593 9594 <li>minor restructuring of terminfo/termcap files, having noted 9595 some packager's customizations which caused the structure to be 9596 confused.</li> 9597 9598 <li>eliminate an isolated use of MIN/MAX in charproc.c</li> 9599 9600 <li>replace <code>XtExtdefaultfont</code> and 9601 <code>XtExtdefaultbackground</code> by their more familiar 9602 equivalents <code>XtDefaultFont</code> and 9603 <code>XtDefaultBackground</code>.</li> 9604 9605 <li>replace ifdef's using <code>SCO</code>, <code>sco</code> 9606 and <code>SCO325</code> with <code>__SCO__</code> (XFree86 9607 Bugzilla #1301, Kean Johnston). But ensure that it still builds 9608 on platforms where this symbol is not defined.</li> 9609 9610 <li>add <code>scoFunctionKeys</code> resource, to match 9611 manpage.</li> 9612 9613 <li>update manpage discussion of menus and related 9614 resources.</li> 9615 9616 <li>enable utmpx support for NetBSD 1.6C and newer (patch by 9617 Matthias Scheler).</li> 9618 9619 <li>add a note in the manpage discussing xterm's treatment of 9620 open file-descriptors (request by Dan Shearer).</li> 9621 9622 <li>modify <code>Help()</code> to make "xterm -h" write to 9623 standard output rather than standard error (patch by Bram 9624 Moolenaar).</li> 9625 9626 <li>check for type of failure in xim_real_init() to avoid 9627 looping when the problem is an unsupported input method rather 9628 than a failure to connect to the XIM server. Problem was 9629 introduced in <a href="#xterm_175">patch #175</a> (XFree86 9630 Bugzilla #1306).</li> 9631 9632 <li>modify <code>Imakefile</code> to remove dependency of 9633 "install" target on the <code>xterm</code> executable to make 9634 installs from tree without attempting to rebuild anything 9635 (commit by David Dawes, report/patch from Lee Olsen).</li> 9636 9637 <li>remove call to <code>ShowCursor</code> from 9638 <code>SetCursorBlink()</code> since that is redundant, and can 9639 cause display glitches if the cursor is already blinking 9640 (XFree86 Bugzilla #1158, patch/report by Andreas Schwab).</li> 9641 </ul> 9642 9643 <h1><a name="xterm_185" id="xterm_185">Patch #185 - 2004/3/3 - 9644 XFree86 4.4</a></h1> 9645 9646 <ul> 9647 <li>fix tcap-query logic for the backspace key (XFree86 9648 Bugzilla #1233, report/patch by Anton Kovalenko).</li> 9649 9650 <li>add test-scripts resize.pl and tcapquery.pl</li> 9651 9652 <li>add translation to ASCII of commonly-used characters that 9653 groff translates to Unicode, when the font in use does not 9654 provide the corresponding glyphs (Debian #219551).</li> 9655 9656 <li>modify RequestMaximize(), which performs maximize/restore 9657 via control sequences, to account for window-frame (patch by 9658 Jess Thrysoee).</li> 9659 9660 <li>improve pattern used in <code>uxterm</code> to check for 9661 UTF-8 locale, e.g., for HPUX (patch by H Merijn Brand).</li> 9662 9663 <li>add <code>-fd</code> option and resource 9664 <code>faceNameDoublesize</code> to specify double-wide fonts 9665 with Xft (adapted from patch by Zarick Lau).</li> 9666 9667 <li>change a couple of resource classes from "Boolean" to 9668 specific values: <code>freeBoldBox</code>, 9669 <code>forceBoxChars</code>.</li> 9670 9671 <li>add resource <code>showMissingGlyphs</code> to outline 9672 places on the screen where a font lacks the corresponding 9673 glyph.</li> 9674 9675 <li>add resource <code>showBlinkAsBold</code> to control 9676 whether blinking text should be shown as bold or actual 9677 blinking text.</li> 9678 9679 <li>improve logic in ShowCursor() to avoid repainting the 9680 cursor when it is already visible, e.g., in response to the 9681 DECTCEM escape sequence. This also addresses XFree86 Bugzilla 9682 #1158.</li> 9683 9684 <li>implement blinking text, using the timer for blinking 9685 cursor.</li> 9686 9687 <li>modify FreeType support to allow resizing the font, in the 9688 same ways the window can be resized if fixed fonts are used. 9689 The relative font sizes are derived from the fixed font 9690 sizes.</li> 9691 9692 <li>add menu items and corresponding actions for switching 9693 on/off the UTF-8 mode and Xft (TrueType) support.</li> 9694 9695 <li>add logic to handle switching UTF-8 mode on/off. It worked 9696 if the escape sequences were flushed, but if data was mixed in 9697 with the same write, some were not handled properly (report by 9698 Nicolas George).</li> 9699 9700 <li>modify to allow turning UTF-8 mode on/off via escape 9701 sequence even if <code>-wc</code> option was not given at 9702 startup (patch by Peter Berg Larsen).</li> 9703 9704 <li>amend fix for XFree86 Bugzilla #981, adjusting for 9705 savedlines value (report by Tim Adye).</li> 9706 9707 <li>fix a typo in computing relative font size (Jess 9708 Thrysoee).</li> 9709 </ul> 9710 9711 <h1><a name="xterm_184" id="xterm_184">Patch #184 - 2003/12/31 - 9712 XFree86 4.3.99.903</a></h1> 9713 9714 <ul> 9715 <li>improve configure-script checks for FreeType and related 9716 libraries, using <code>xft-config</code> or 9717 <code>freetype-config</code> scripts when available.</li> 9718 9719 <li>fix configure-script check for <code>SYSV</code> definition 9720 by ensuring whether <code>sys_errlist[]</code> is declared, and 9721 by modifying the test program to include 9722 <code>X11/Intrinsic.h</code> to check that <code>wchar_t</code> 9723 is declared consistently (report by H Merijn Brand).</li> 9724 </ul> 9725 9726 <h1><a name="xterm_183" id="xterm_183">Patch #183 - 2003/12/26 - 9727 XFree86 4.3.99.903</a></h1> 9728 9729 <ul> 9730 <li>correct logic for configurations that may attempt to open 9731 both old/new-style pseudoterminals. In this case, the old-style 9732 are preferred. Logic was broken in <a href="#xterm_145">patch 9733 #145</a> (XFree86 Bugzilla #997, report/patch by Kean 9734 Johnston).</li> 9735 9736 <li>modify handling of <code>eightBitInput</code> resource in 9737 UTF-8 mode to translate the value into UTF-8. Otherwise an 9738 illegal UTF-8 code is sent to the application (report by Bram 9739 Moolenaar).</li> 9740 9741 <li>modify <code>uxterm</code> script to interpret help and 9742 version options so xterm does not always create a window when 9743 the user requests this information (Debian #223926).</li> 9744 9745 <li>add a limit check to ScrnTstWrapped() (XFree86 Bugzilla 9746 #981).</li> 9747 9748 <li>modify DECSCL to perform a hard reset (RIS) as per DEC 9749 manuals. Extended DECSCL to accept parameters for vt4XX and 9750 vt5xx terminals.</li> 9751 9752 <li>correct logic for ANSI conformance level escape sequences, 9753 which were confused with DEC conformance level escape 9754 sequences.</li> 9755 9756 <li>correct state for vt52 shift-in/shift-out, which was not 9757 reset properly after <a href="#xterm_171">patch #171</a>.</li> 9758 9759 <li>correct handling of graphics characters for vt52 mode, 9760 which did not display line-drawing characters after G1 fix from 9761 <a href="#xterm_182">patch #182</a>.</li> 9762 9763 <li>fixes for configure script to work with current Cygwin 9764 headers and libraries.</li> 9765 9766 <li>modify <code>Imakefile</code> to put the current directory 9767 at the beginning of the include searchpath (patch by David 9768 Dawes).</li> 9769 </ul> 9770 9771 <h1><a name="xterm_182" id="xterm_182">Patch #182 - 2003/12/2 - 9772 XFree86 4.3.99.901</a></h1> 9773 9774 <ul> 9775 <li>correct logic for <code>metaSendsEscape</code> resource to 9776 allow for the meta-right key to be tested. Improve check for 9777 meta/alt modifiers by dropping the assumption that a keysym is 9778 associated with only one modifier, and by ignoring NoSymbol 9779 entries in the xmodmap data (XFree86 Bugzilla #924, patch by 9780 David Dawes).</li> 9781 9782 <li>correct wrapping logic for line-drawing characters written 9783 in non-UTF-8 mode of xterm build for wide-characters (XFree86 9784 Bugzilla #918, report/patch by Jürgen Keil).</li> 9785 9786 <li>improve manpage description of resources, in particular the 9787 <code>utf8Fonts</code> class (XFree86 Bugzilla #905).</li> 9788 9789 <li>add definitions to compile with glibc-based GNU/Hurd, 9790 GNU/KFreeBSD and GNU/KNetBSD (XFree86 Bugzilla #893).</li> 9791 9792 <li>compiler-warning fixes (patch by Christian Biere).</li> 9793 9794 <li>add README.i18n (Tomohiro Kubota).</li> 9795 9796 <li>correct initialization of G1 character set mapping, which 9797 used line-drawing set as a result of confusion between "DEC 9798 Supplemental Graphic" and "DEC Special Graphic" character sets 9799 (see <a href="#xterm_34">patch #34</a> regarding DECSTR).</li> 9800 9801 <li>correct ifdef in main.c for variable utret (patch by 9802 Bernhard Rosenkraenzer).</li> 9803 9804 <li>document in xterm's manpage how to use XFree86 ":unscaled" 9805 keyword to suppress scaling of bold fonts.</li> 9806 9807 <li>when deriving bold fontname from normal fontname, use the 9808 normal font's average width to avoid for example selecting 9809 7x13bold from an 8x13 normal font (Debian #107769).</li> 9810 </ul> 9811 9812 <h1><a name="xterm_181" id="xterm_181">Patch #181 - 2003/10/26 - 9813 XFree86 4.3.99.15</a></h1> 9814 9815 <ul> 9816 <li>implement <code>boldMode</code> for wide-character logic in 9817 <code>drawXtermText()</code> (report by Michael 9818 Schroeder).</li> 9819 9820 <li>modify <code>UXTerm.ad</code> resource file to include 9821 "XTerm-color" rather than "XTerm", in case the latter file 9822 contains no color resource definitions, e.g., after <a href= 9823 "#xterm_180">patch #180</a>.</li> 9824 9825 <li>add action <code>load-vt-fonts()</code> and configure 9826 option <code>--enable-load-vt-fonts</code> which allows users 9827 to define additional sets of VT-fonts which can be loaded at 9828 runtime.</li> 9829 9830 <li>add logic to wide-character support which attempts to load 9831 fonts specified by <code>utf8Fonts</code> subresources at 9832 startup. The subresources have the same names as the fonts 9833 which they replace, e.g., <code>font</code>, 9834 <code>font1</code>, etc., so that the ISO-10646-1 fonts can be 9835 specified in the <code>XTerm</code> app-defaults file (adapted 9836 from patch by Tomohiro Kubota).</li> 9837 9838 <li>improve Set Font escape string handling by making the 9839 relative settings apply to the size of the font, as in shift 9840 keypad plus/minus rather than the menu index.</li> 9841 9842 <li>simplify parameter passing for the <code>set-vt-font</code> 9843 action and related code.</li> 9844 9845 <li>cleanup some include-ordering, moving some recently-added 9846 hardcoded stuff into xterm.h where it will not interfere with 9847 the configure script.</li> 9848 9849 <li>modify <code>xtermAddInput()</code> (see note on 9850 augmentation in <a href="#xterm_158">patch #158</a>) to use the 9851 complete set of default keyboard translations so that one can 9852 use shifted pageup, wheel mouse, etc., while the mouse pointer 9853 is over the scrollbar. (Debian #178812).</li> 9854 9855 <li>make save/restore mode controls apply to show/blink cursor 9856 states.</li> 9857 9858 <li>add escape sequence to start/stop blinking cursor, which 9859 allows implementing <code>cvvis</code> terminfo capability 9860 (request by Nate Bargmann).</li> 9861 9862 <li>add <code>indp</code> and <code>rin</code> to terminfo 9863 entry.</li> 9864 9865 <li>fix an out-of-bounds array reference in ScrnRefresh() for 9866 wide characters (report by Dan Harnett, patch by Todd Miller). 9867 This bug dates from <a href="#xterm_141">patch #141</a>.</li> 9868 </ul> 9869 9870 <h1><a name="xterm_180" id="xterm_180">Patch #180 - 2003/10/12 - 9871 XFree86 4.3.99.15</a></h1> 9872 9873 <ul> 9874 <li>several fixes for rendering using Xft via option 9875 <code>-fa</code>: 9876 <ul> 9877 <li>translate Unicode values, i.e,. from UTF-8 output to 9878 xterm, for line-drawing to xterm's internal code, etc., 9879 since TrueType fonts generally do not have either set of 9880 line-drawing glyphs. xterm can draw these directly (report 9881 by Abigail Brady).</li> 9882 9883 <li>pass 16-bit values rather than 8-bit values to 9884 xtermXftDrawString() to allow for wide-characters.</li> 9885 9886 <li>remove spurious check for <code>colorBDMode</code> 9887 resource in logic that does bold fonts.</li> 9888 9889 <li>implement underlining.</li> 9890 </ul> 9891 </li> 9892 9893 <li>patches by Ilya Zakharevich: 9894 <ul> 9895 <li>improve drawXtermText() by making the recursive calls 9896 communicate through arguments, and not through 9897 saving/restoring global variables.</li> 9898 9899 <li>make double-width characters work with <code>-u8</code> 9900 option.</li> 9901 9902 <li>modify lookup of double-sized fonts by checking for a 9903 match ignoring x/y resolution if the first check 9904 fails.</li> 9905 </ul> 9906 </li> 9907 9908 <li>make height of TrueType fonts match ascent+descent (patch 9909 by Keith Packard).</li> 9910 9911 <li>correct configure-script check for imake $CFLAGS, which did 9912 not check properly if imake was not available.</li> 9913 9914 <li>correct install rule in Makefile.in for 9915 <code>uxterm</code>, which was attempting to strip the script 9916 (newsgroup posting by Fernan Aguero).</li> 9917 9918 <li>correct AF/AB strings in termcap for xterm-256color and 9919 xterm-88color entries (report by Josh Howard).</li> 9920 9921 <li>update wcwidth.c to incorporate changes from Markus Kuhn's 9922 2003-05-20 (Unicode 4.0) version of that file.</li> 9923 9924 <li>modify <code>scroll-back</code> and 9925 <code>scroll-forw</code> actions to accept an adjustment value, 9926 e.g., 9927 9928 <pre> 9929 <code>scroll-back(1, page-2)</code> 9930</pre>to scroll back by 2 lines less than a page (patch by Greg 9931Klanderman). 9932 </li> 9933 9934 <li>use color resource setting from Debian package for xterm 9935 VT100 widget, since the choice of blues provides better 9936 contrast.</li> 9937 9938 <li>remove color resources from <code>XTerm.ad</code>, leaving 9939 them only in <code>XTerm-col.ad</code> (prompted by Debian 9940 package for xterm).</li> 9941 9942 <li>correct configure script option --enable-pty-handshake 9943 (report by Paul Gilmartin).</li> 9944 9945 <li>add <code>visualBellDelay</code> resource to modify the 9946 length of time used for visual bell, for very slow displays or 9947 very fast computers (reports by Ingo van Lil and Doug 9948 Toppin).</li> 9949 9950 <li>correct logic for initializing dynamic highlight color 9951 (patch by Jess Thrysoee).</li> 9952 9953 <li>add a check for non-zero size in call to 9954 <code>XCopyArea()</code> to accommodate a Solaris bug.</li> 9955 9956 <li>correct typo in example for character classes in xterm 9957 manpage (Debian #198910).</li> 9958 9959 <li>link xterm with bind_on_load option on Darwin to work 9960 around a deadlock in the dynamic loader when a signal is 9961 received while the dynamic loader is looking up symbols 9962 (patches by Rob Braun, Torrey Lyons).</li> 9963 9964 <li>modify configure script to avoid using "head -1".</li> 9965 9966 <li>update config.guess, config.sub</li> 9967 9968 <li>modify ifdef's to work around inclusion of types FcChar32 9969 and XftCharSpec with FreeType 2.0 (see <a href= 9970 "#xterm_175">patch #175</a>).</li> 9971 9972 <li>modify the predictable version of the generated logfile 9973 name (see <a href="#xterm_171">patch #171</a>) to append the 9974 process-id rather than a random value.</li> 9975 9976 <li>resync with XFree86 CVS 9977 <ul> 9978 <li>Enable SCO function keys in xterm</li> 9979 9980 <li>Make Delete key send DEL by default on SCO in 9981 xterm</li> 9982 </ul> 9983 </li> 9984 </ul> 9985 9986 <h1><a name="xterm_179" id="xterm_179">Patch #179 - 2003/5/21 - 9987 XFree86 4.3.99.5</a></h1> 9988 9989 <ul> 9990 <li>modify ifdef's for WTMPX_FILE to allow building on cygwin 9991 again.</li> 9992 9993 <li>change the default of pty-handshaking configure option (and 9994 related default for imake) to assume this feature is 9995 needed.</li> 9996 9997 <li>add ifdef's so configure option for XawPlus library works 9998 (patch by Pavel Roskin).</li> 9999 10000 <li>add <code>$(MAIN_DEFINES)</code> to the variables checked 10001 by the configure script that may contain information set by 10002 imake. This allows xterm to build/run properly using the 10003 configure script on IRIX64.</li> 10004 10005 <li>add configure check for ".exe" suffix on cygwin.</li> 10006 </ul> 10007 10008 <h1><a name="xterm_178" id="xterm_178">Patch #178 - 2003/5/18 - 10009 XFree86 4.3.99.5</a></h1> 10010 10011 <ul> 10012 <li>modify default for configure 10013 <code>--enable-pty-handshake</code> option to enable it for 10014 Solaris (report by Nelson Beebe).</li> 10015 10016 <li>modify <code>in_put()</code> function to call 10017 <code>PreeditPosition()</code> only when the cursor's position 10018 has changed. This addresses report by Stefan Baums of high CPU 10019 usage while xterm with chinput are running in the background 10020 (patch by Yong Li).</li> 10021 10022 <li>improved explanation of <code>-ls</code> conflict with 10023 <code>-e</code> option in xterm manpage (adapted from comments 10024 by Henning Makholm).</li> 10025 10026 <li>correct comment in terminfo file regarding modifier used 10027 for <code>kDC</code> (Debian #189764, report by Henning 10028 Makholm).</li> 10029 10030 <li>correct/extend some of the keypad description in ctlseqs.ms 10031 (report by Henning Makholm).</li> 10032 10033 <li>correct keypad-mapping table in input.c so 10034 <code>XK_KP_Equal</code> works (report by Henning 10035 Makholm).</li> 10036 10037 <li>modified to work with CJK double-width (bi-width/monospace) 10038 fonts. They're similar to Roman Czbora and David Starner's 10039 gnuunifonts in that Latin letters and numbers have all the same 10040 width which is exactly the half of the width of East Asian 10041 characters. (patch by Jungshik Shin 10042 <jshin@mailaps.org>).</li> 10043 10044 <li>add configure option <code>--enable-broken-osc</code> and 10045 resource <code>brokenLinuxOSC</code> to accommodate scripts 10046 which do not distinguish between running in the Linux console 10047 and running in X. Linux console recognizes malformed control 10048 strings which start with an <code>OSC</code>, but are 10049 fixed-length, with no terminator.</li> 10050 10051 <li>add configure option <code>--enable-broken-st</code> and 10052 resource <code>brokenStringTerm</code> to allow user to revert 10053 one part of the parsing table corrections from <a href= 10054 "#xterm_171">patch #171</a>. (reports by Matthias Scheler and 10055 Kirill Ponomarew indicate that someone's network firmware sends 10056 an <code><escape>X</code>).</li> 10057 10058 <li>modify configure <code>--disable-imake</code> to provide 10059 values for <code>OSMAJORVERSION</code>, 10060 <code>OSMINORVERSION</code>, <code>FUNCPROTO</code> and 10061 <code>NARROWPROTO</code> (report by Heiko Schlichting).</li> 10062 10063 <li>correct <code>vttests/16colors.sh</code>, which omitted the 10064 <code>$SUF</code> variable in output strings (patch by Paul 10065 Gilmartin).</li> 10066 10067 <li>modify shell scripts in <code>vttests</code> directory to 10068 attempt to use named signals in the <code>trap</code> 10069 statement, making this portable to OS/390 (report by Paul 10070 Gilmartin). Tested on SunOS 4.1.4, which implements only 10071 numbers.</li> 10072 </ul> 10073 10074 <h1><a name="xterm_177" id="xterm_177">Patch #177 - 2003/3/23 - 10075 XFree86 4.3.0</a></h1> 10076 10077 <ul> 10078 <li>fix definition of <code>USE_HANDSHAKE</code>, must be 10079 numeric (reported by Jens Schleusener).</li> 10080 </ul> 10081 10082 <h1><a name="xterm_176" id="xterm_176">Patch #176 - 2003/3/22 - 10083 XFree86 4.3.0</a></h1> 10084 10085 <ul> 10086 <li>add configure option <code>--enable-pty-handshake</code> to 10087 allow one to compile-in support for the pty handshaking logic, 10088 and resource <code>ptyHandshake</code> to enable or disable it 10089 (suggested by Ian Collier).</li> 10090 10091 <li>restore <code>USE_HANDSHAKE</code> ifdef removed in 10092 <a href="#xterm_159">patch #159</a> to address Debian 10093 #39964.</li> 10094 10095 <li>move ifdef's for ttysize/winsize into xterm_io.h</li> 10096 10097 <li>simplify loop on <code>tgetent</code>, check if the 10098 successive entries in the lookup table are the same. That makes 10099 xterm do one less lookup if there is no "xterm" entry in the 10100 termcap file (report by Derek Martin).</li> 10101 10102 <li>correct manpage discussion of <code>$TERM</code> and 10103 <code>$TERMCAP</code> variables, which omitted the Tektronix 10104 emulation and a note of the final "dumb" fallback.</li> 10105 10106 <li>broaden ifdef for 10107 <code>XRegisterIMInstantiateCallback()</code> from <a href= 10108 "#xterm_175">patch #175</a> (XIM fix) to exclude non-XFree86 10109 (report by Nelson Beebe indicates this breaks for Solaris, IRIX 10110 and OSF/1).</li> 10111 10112 <li>correct resource-size for <code>iconFont</code> (this was 10113 added by X11R6.3).</li> 10114 10115 <li>improve configure check for XKB bell extension, to work 10116 around inconsistent implementation of this feature (reports by 10117 Nelson Beebe, Kriston Rehberg and David Ellement).</li> 10118 10119 <li>modify configure-check for <code>tty</code> group to be 10120 less strict in batch mode (report by Nelson Beebe).</li> 10121 10122 <li>modify to allow building with g++, to use its compiler 10123 warnings (suggested by Nelson Beebe).</li> 10124 10125 <li>modify <code>dec2ucs[]</code> table to reflect newer codes 10126 available for scanlines 1, 3, 7, 9 (report by Michael 10127 Schroeder).</li> 10128 10129 <li>add configure option for XawPlus library.</li> 10130 </ul> 10131 10132 <h1><a name="xterm_175" id="xterm_175">Patch #175 - 2003/3/9 - 10133 XFree86 4.3.0</a></h1> 10134 10135 <ul> 10136 <li>fix a SIGSEGV which could occur if xterm is connecting to 10137 XIM server, and the XIM server is destroyed (patch by Nam 10138 SungHyun).</li> 10139 10140 <li>modify to use built-in line-drawing characters for Xft 10141 fonts (patch by Andrew Tipton).</li> 10142 10143 <li>make menu reflect the state of the <code>tekInhibit</code> 10144 resource.</li> 10145 10146 <li>make <code>signalInhibit</code> resource work, i.e., 10147 disable the menu entries that would send signals to, or exit 10148 xterm. This was probably broken in X11R5 when logging was 10149 disabled (report by Sven Mascheck).</li> 10150 10151 <li>changed classes of <code>colorBDMode</code> and similar 10152 resources that override colors when a video attribute is set to 10153 <code>ColorAttrMode</code>, to make them distinct from 10154 <code>ColorMode</code>. This avoids an unexpected rendering of 10155 reverse video, for example (report by Paul Fox).</li> 10156 10157 <li>changed class of <code>veryBoldColors</code> to 10158 <code>VeryBoldColors</code>, since <code>ColorMode</code> is 10159 associated with boolean resources.</li> 10160 10161 <li>add option <code>-k8</code> and resource 10162 <code>allowC1Printable</code> to allow users of non-VTxxx 10163 character sets such as KOI-8 to treat the C1 control area 10164 (character codes 128-159) as printable rather than control 10165 characters.</li> 10166 10167 <li>add a null-pointer check for return-value of 10168 <code>ptsname()</code> in HPUX-specific code (report by David 10169 Ellement).</li> 10170 10171 <li>revise the ifdef's used for <code>XKB</code> bell support. 10172 The code was using a nonstandard call 10173 <code>XkbStdBell()</code>. Changed to use 10174 <code>XkbBell()</code> (based on patch by 10175 <derek@signalmarketing.com>).</li> 10176 10177 <li>add a null-pointer check in <code>xtermLoadFont()</code> in 10178 case there is no wide-bold font (Nam SungHyun).</li> 10179 10180 <li>change <code>Makefile.in</code> to use autoconf's 10181 <code>bindir</code>, <code>libdir</code> and 10182 <code>mandir</code> variables (report by Nam SungHyun).</li> 10183 10184 <li>add <code>le</code> to termcap <code>xterm-basic</code> 10185 entry. Though missing from older termcaps for xterm, some 10186 applications check for it (report by Matthias Buelow).</li> 10187 10188 <li>modify <code>uxterm</code> script to strip modifiers such 10189 as "@euro" from the locale setting before adding ".UTF-8" 10190 (Debian #179929).</li> 10191 10192 <li>modify the remaining places where tek4014 emulation uses 10193 <code>XDefineCursor()</code>, to make it work as originally 10194 implemented, e.g., when switching back to alpha mode. Added 10195 test-screen in vttest to test this feature properly.</li> 10196 </ul> 10197 10198 <h1><a name="xterm_174" id="xterm_174">Patch #174 - 2003/2/25 - 10199 XFree86 4.2.99.903</a></h1> 10200 10201 <ul> 10202 <li>work-around for XFree86 bug which made 10203 <code>XDefineCursor()</code> on a shell-window no longer work. 10204 The tek4014 emulation used this. Use the next lower window 10205 (report by Karl Rudolf Bauchspiess).</li> 10206 10207 <li>add a resource setting <code>allowWindowOps</code> to 10208 control whether the extended window operations should be 10209 allowed, e.g., resize, iconify, report window attributes. This 10210 is to accommodate people who are not capable of using a pager 10211 to view log-files.</li> 10212 </ul> 10213 10214 <h1><a name="xterm_173" id="xterm_173">Patch #173 - 2003/2/6 - 10215 XFree86 4.2.99.902</a></h1> 10216 10217 <ul> 10218 <li>reset mouse mode to normal on a full reset. This does not 10219 apply to mouse hilite tracking mode, of course (see 10220 ctlseqs.ms).</li> 10221 10222 <li>add a time-delay at the point where mouse hilite tracking 10223 mode choses to not handle X events, to avoid runaway CPU usage 10224 (report by D Hugh Redelmeier).</li> 10225 10226 <li>check for illegal character in DECUDK string, quit if 10227 detected.</li> 10228 </ul> 10229 10230 <h1><a name="xterm_172" id="xterm_172">Patch #172 - 2002/12/27 - 10231 XFree86 4.2.99.3</a></h1> 10232 10233 <ul> 10234 <li>fixes to make repainting of 256-color example work properly 10235 (reports by Abigail Brady and Scott A Crosby). 10236 <ul> 10237 <li>set flag in <code>AllocateAnsiColor()</code> to ensure 10238 the color is allocated once only.</li> 10239 10240 <li>fix check in <code>ScrnRefresh</code>, which was 10241 comparing background colors only if the ANSI foreground 10242 colors also were set.</li> 10243 </ul> 10244 </li> 10245 10246 <li>merge <code>Error()</code> calls and some 10247 <code>exit()</code> calls into <code>SysError()</code>, and 10248 change that to add the brief explanation for each error code 10249 which is provided in the manpage. Change a few 10250 <code>SysError()</code>, calls to avoid using code 1, to avoid 10251 confusion with exit status from places that do not use 10252 <code>SysError()</code>.</li> 10253 10254 <li>simplify logic used to open a debug logfile as the standard 10255 error.</li> 10256 10257 <li>modify the <code>-e</code> option so that if it fails, 10258 xterm will check if only one argument follows, e.g., it was 10259 quoted, and then retry using <code>sh -c</code>.</li> 10260 10261 <li>modify parsing of DECUDK string parameter to allow a comma 10262 between pairs of hexadecimal digits (Ray Neuman 10263 <raymond@one.com.au> reports that "real" terminals accept 10264 this; perhaps they simply ignore unexpected characters).</li> 10265 10266 <li>fix a few problems with the <code>$TERMCAP</code> string 10267 generated by <code>resize</code>: 10268 <ul> 10269 <li>for Bourne shell, add an <code>export</code> command. 10270 This was missing as far back as X11R5.</li> 10271 10272 <li>escape exclamation marks, used in xterm's reset 10273 string.</li> 10274 10275 <li>translate literal <code>\177\</code> to "^?".</li> 10276 </ul> 10277 </li> 10278 10279 <li>improve configure check for <code>tgetent()</code> to work 10280 when <code>$TERMCAP</code> has been set to a specific 10281 entry.</li> 10282 10283 <li>modify <code>minstall.sh</code> to use "%" rather than "@", 10284 to avoid problems with AFS (report by Zdenek Sekera).</li> 10285 10286 <li>list fatal error codes from <code>error.h</code> in the 10287 manpage, remove unused codes in <code>error.h</code>.</li> 10288 10289 <li>use more explicit wording for manpage list of color 10290 resources, since at least one user confused the generic names 10291 such as "black" with the names in rgb.txt (the latter are now 10292 used).</li> 10293 10294 <li>minor fix to description of 1003 mouse mode in ctlseqs.ms 10295 (Larry Riedel).</li> 10296 </ul> 10297 10298 <h1><a name="xterm_171" id="xterm_171">Patch #171 - 2002/12/12 - 10299 XFree86 4.2.99.3</a></h1> 10300 10301 <ul> 10302 <li>modify parser tables to improve detection of malformed 10303 control sequences, making xterm behave more like a real DEC 10304 terminal (patch by Paul Williams).</li> 10305 10306 <li>update comment in <code>input.c</code> to document 10307 <code>Meta</code> as a modifier for escape sequences (patch by 10308 D Roland Walker).</li> 10309 10310 <li>add ifdef'd code for logging option which adds the hostname 10311 and a timestamp to the generated logfile name. The ifdef's are 10312 setup with the configure script (patch by Nelson Beebe).</li> 10313 10314 <li>remove <code>xevents()</code> call from the end of 10315 <code>BlinkCursor()</code>, to fix an occasional problem which 10316 caused xterm to pause until a key was pressed. The reason for 10317 this was that there was no check to ensure that there really 10318 were events for <code>xevents()</code> to process. (patch by 10319 Semen A Ustimenko <semenu@FreeBSD.org>).</li> 10320 10321 <li>remove unused mode-params from <code>open()</code> calls 10322 that do not create a file.</li> 10323 10324 <li>modify configure script to put new items first on 10325 <code>$CPPFLAGS</code> and <code>$CFLAGS</code> to avoid 10326 conflict with environment's <em>-I</em> and <em>-D</em> 10327 options.</li> 10328 10329 <li>update config.guess, config.sub</li> 10330 10331 <li>resync with XFree86 CVS 10332 <ul> 10333 <li>fix va_args glitches for xterm/libfontconfig: 0 == 10334 (void*)0 isn't true for all platforms (Egbert Eich).</li> 10335 10336 <li>initialise ProgramName in xterm's main before 10337 referencing it (XFree86 #5473, Peter Valchev).</li> 10338 10339 <li>some cleanup of Imakefile ifdef's (Marc La 10340 France).</li> 10341 </ul> 10342 </li> 10343 </ul> 10344 10345 <h1><a name="xterm_170" id="xterm_170">Patch #170 - 2002/10/13 - 10346 XFree86 4.2.1</a></h1> 10347 10348 <ul> 10349 <li>correct an off-by-one allocating data for sorted help 10350 message.</li> 10351 10352 <li>modify configure script to check for Xpm library, on which 10353 XFree86 Xaw library depends.</li> 10354 10355 <li>update config.guess, config.sub</li> 10356 </ul> 10357 10358 <h1><a name="xterm_169" id="xterm_169">Patch #169 - 2002/10/5 - 10359 XFree86 4.2.1</a></h1> 10360 10361 <ul> 10362 <li>modify wording of some options in help message to make them 10363 use <code>-/+</code> consistently with respect to "on/off" or 10364 "off/on".</li> 10365 10366 <li>sort options list which is displayed in help- and 10367 syntax-messages at runtime to simplify maintenance.</li> 10368 10369 <li>remove support for Amoeba and Minix (Juliusz Chroboczek 10370 noted it was removed from XFree86 server; there have been no 10371 users since 1996).</li> 10372 10373 <li>add configure script option 10374 <code>--disable-session-mgt</code> to control whether the 10375 session management code should be compiled-in (request by H 10376 Merijn Brand).</li> 10377 10378 <li>ifdef'd the session-management changes with 10379 <code>OPT_SESSION_MGT</code>, to accommodate X11R5 which 10380 predates the related definitions.</li> 10381 10382 <li>fix <code>decode_keyvalue()</code>, which did not properly 10383 parse multiple settings as needed for the <code>ttyModes</code> 10384 resource, since it did not skip over the parsed data.</li> 10385 10386 <li>fix an option-parsing conflict between <code>-class</code> 10387 and <code>-cjk_width</code> (Nam SungHyun)</li> 10388 10389 <li>add a missing null in <code>XtVaSetValues()</code> call 10390 used in <code>Cleanup()</code> (Nam SungHyun)</li> 10391 </ul> 10392 10393 <h1><a name="xterm_168" id="xterm_168">Patch #168 - 2002/9/29 - 10394 XFree86 4.2.1</a></h1> 10395 10396 <ul> 10397 <li>improve data reported for control sequence that requests 10398 window position by taking into account the window decorations, 10399 e.g., border and title (patch by Jess Thrysoee 10400 <jess@thrysoee.dk>).</li> 10401 10402 <li>add <code>-cjk_width</code> and corresponding resource 10403 <code>cjkWidth</code> (patch by Jungshik Shin 10404 <jshin@mailaps.org>).</li> 10405 10406 <li>add <code>-into</code> option, for embedding xterm in a 10407 Tcl/Tk application (patch by George Peter Staplin 10408 <georgeps@xmission.com>).</li> 10409 10410 <li>add simple session management (XSM) client capabilities to 10411 xterm. So a session manager such as, e.g., xsm, should be able 10412 to respawn or kill xterms without the help of an SM proxy (like 10413 smproxy), which is a hack and almost always buggy (patch by 10414 David Madore).</li> 10415 10416 <li>fix conflict between ifdef's for 10417 <code>OPT_DEC_LOCATOR</code> and <code>OPT_READLINE</code> in 10418 button.c (reported by Ilya Zakharevich).</li> 10419 10420 <li>fix for inconsistent use of <code>struct utmp</code> versus 10421 <code>struct utmpx</code> introduced in <a href= 10422 "#xterm_167">patch #167</a> (patches by Paul Gilmartin, Marc La 10423 France).</li> 10424 10425 <li>modify logic for <code>metaSendsEscape</code> to allow it 10426 to work in a setup where the Meta-key is not recognized as a 10427 modifier by the key-translations logic (discussion of 10428 eightBitInput with H.J.Lu). Note however that Vincent 10429 Lefèvre reported this in January).</li> 10430 10431 <li>use null pointer values consistently, rather than literal 10432 "0", for ending variable-length argument lists, e.g., for 10433 <code>execlp()</code> (based on patch by Matthieu Herrb).</li> 10434 10435 <li>correct logic of <code>ChangeAnsiColorRequest()</code>, 10436 which would do a screen repaint after replying to a request for 10437 information.</li> 10438 10439 <li>improve scripts in vttests to work with systems whose 10440 shells support <code>echo -n</code> and have, as does Debian, 10441 an unrelated <code>print</code> utility.</li> 10442 10443 <li>add vttests/acolors.sh to demonstrate OSC 4, which queries 10444 or sets ANSI colors.</li> 10445 10446 <li>fixes for ctlseqs.ms (Pavel Roskin, Ilya Zakharevich).</li> 10447 10448 <li>typos in xterm manpage (Jens Schweikhardt)</li> 10449 10450 <li>remove a redundant GCC_UNUSED from InitPopup() (Nam 10451 SungHyun)</li> 10452 </ul> 10453 10454 <h1><a name="xterm_167" id="xterm_167">Patch #167 - 2002/8/24 - 10455 XFree86 4.2.0</a></h1> 10456 10457 <ul> 10458 <li>correct ifdef's for <code>USE_TERMCAP</code> to match 10459 cygwin configuration.</li> 10460 10461 <li>fix several places in ctlseqs.ms which had no boxes around 10462 the literal text (report by Ilya Zakharevich).</li> 10463 10464 <li>extend mouse support for readline, ifdef'd with 10465 OPT_READLINE (integrated patch from Ilya Zakharevich).</li> 10466 10467 <li>modify terminfo description to match default for 10468 <code>modifyCursorKeys</code> resource.</li> 10469 10470 <li>add <code>modifyCursorKeys</code> resource to control how 10471 the shift- and similar modifiers are used to make a cursor 10472 escape sequence. The default makes a modified escape sequence 10473 always start with CSI and puts the modifier as the second 10474 parameter, to avoid confusing applications that would interpret 10475 the first parameter as a repeat count. The original behavior 10476 can be obtained by setting the resource to 0 (newsgroup 10477 discussion with Stephen J Turnbull, Jeffrey Altman).</li> 10478 10479 <li>correct missing initializations for 10480 <code>appdefaultCursor</code> and <code>appdefaultKeypad</code> 10481 resources.</li> 10482 10483 <li>add configure option <code>--enable-luit</code> and ifdef'd 10484 the luit-related code with OPT_LUIT_PROG.</li> 10485 10486 <li>modify xterm to invoke luit (integrated patch by Tomohiro 10487 Kubota)</li> 10488 10489 <li>update wcwidth.c to match Markus Kuhn's 2002-05-18 10490 version.</li> 10491 10492 <li>correct limit-checking in <code>ComputeSelect()</code> to 10493 handle selections that extend off the visible area; rather than 10494 modify the parameters to <code>TrackText()</code>, use 10495 <code>ScrollSelection()</code> to update the highlighting 10496 limits. (reported by Yegappan Lakshmanan and Nelson Beebe, 10497 patch by Alexander V Lukyanov).</li> 10498 10499 <li>correct manpage description of <code>tiXtraScroll</code> 10500 resource (reported by Tony Finch).</li> 10501 10502 <li>changes from OpenBSD: 10503 <ul> 10504 <li>Make xterm setgid utmp to be able to update utmp even 10505 with root privileges revoked.</li> 10506 10507 <li>If not updating utmp, revoke group privileges totally 10508 too.</li> 10509 </ul> 10510 </li> 10511 10512 <li>changes from NetBSD: 10513 <ul> 10514 <li>Check that the return value from ttyslot() is greater 10515 than 0 before writing the utmp file. Fixes w's "w: Stale 10516 utmp entry: <user> <tty> <pty>" 10517 errors.</li> 10518 10519 <li>Use openpty() to deal with new pty naming scheme.</li> 10520 </ul> 10521 </li> 10522 10523 <li>add <code>print-redir</code> action and menu entry to allow 10524 user to switch terminal in/out of printer controller mode. It 10525 appears from the manual that a real vt220 would not switch back 10526 to normal mode, so another mechanism is used (addresses Debian 10527 #37517).</li> 10528 10529 <li>check if <code>printerCommand</code> resource string is 10530 empty, use this to allow user to disable printer function.</li> 10531 10532 <li>trim trailing blanks from resource strings.</li> 10533 10534 <li>check return value from <code>ptsname()</code>, which may 10535 return null for example if someone has changed the permissions 10536 of /dev/pts to zero (Debian #121899).</li> 10537 10538 <li>modify OS/2 version to use <code>__UNIXOS2__</code> 10539 definition rather than <code>__EMX__</code>, related cleanup 10540 (patch by Holger Veit).</li> 10541 10542 <li>used modified indent 2.0 (patch <a href= 10543 "ftp://ftp.invisible-island.net/gnu-patches/">20020428</a>) to 10544 reformat most of the C source files, to simplify 10545 maintenance.</li> 10546 10547 <li>fix a couple of places where there were leading tabs on 10548 symbol-definition lines in Imakefile (Marc La France from 10549 report by Tony Finch)</li> 10550 10551 <li>add imake variable (TraceXTerm) to allow building debug 10552 version (Egbert Eich).</li> 10553 </ul> 10554 10555 <h1><a name="xterm_166" id="xterm_166">Patch #166 - 2002/3/25 - 10556 XFree86 4.2.0</a></h1> 10557 10558 <ul> 10559 <li>correct a bug in selection: double clicking on a word which 10560 was partly scrolled off the screen may select that text (report 10561 by Vincent Lefèvre <vincent@vinc17.org>).</li> 10562 10563 <li>implement <code>veryBoldColors</code> resource to control 10564 whether the corresponding video attribute such as 10565 <code>bold</code> is displayed when using 10566 <code>colorBDMode</code>, etc. (request by Josh Howard 10567 <jrh@vicor-nb.com>).</li> 10568 10569 <li>define escape sequences for function keys F21-F35 (patch by 10570 Stephen P Wall).</li> 10571 10572 <li>change the colors for the 256-color model, making them less 10573 skewed toward black (patch by Stephen P Wall).</li> 10574 10575 <li>add <code>vt100Graphics</code> resource (see <a href= 10576 "#xterm_115">patch #115</a>, based on discussion with Glenn 10577 Maynard).</li> 10578 10579 <li>ifdef'd Xaw/Xaw3d/neXtaw includes separately to avoid 10580 potential incompatibilities between these flavors of Athena 10581 widgets.</li> 10582 10583 <li>add configure check for XFree86 4.x Xaw library, whose 10584 geometry management is broken, to avoid trying to use it for 10585 toolbar configuration.</li> 10586 10587 <li>updates to configure script from vile and lynx to allow 10588 configure.in to be compiled with autoconf 2.5x</li> 10589 10590 <li>add a check for null pointer return by 10591 <code>ptsname()</code> (newsgroup posting from Mike Silva 10592 <mikesilva@lucent.com>).</li> 10593 10594 <li>fill in a few details needed to allow UTF-8 mode to switch 10595 on/off after startup. This requires that <code>wideChars</code> 10596 resource be set. (based on comments in 4 Aug 2001 by Alexey 10597 Marinichev <lyosha@lyosha.2y.net>).</li> 10598 10599 <li>remove duplicate install rules that make directories, e.g., 10600 so installing manpage will not create app-defaults 10601 directory.</li> 10602 10603 <li>add comment in in <code>do_osc()</code>, reserving cases 30 10604 and 31 for for Konsole (request by Stephan Binner 10605 <Stephan.Binner@gmx.de>).</li> 10606 10607 <li>fixes for ctlseqs.ms and xterm.man (patch by Werner Lemberg 10608 <wl@gnu.org>).</li> 10609 10610 <li>add check for monochrome display, disabling colorMode in 10611 that case (fixes Debian #134130).</li> 10612 10613 <li>resync with XFree86 CVS 10614 <ul> 10615 <li>Fix some xterm build warnings on *BSD (patch by David 10616 Dawes).</li> 10617 10618 <li>Only use SA_RESTART in xterm when it's available (patch 10619 by Frank Liu).</li> 10620 10621 <li>Fix incorrect code in signal handlers in most of the 10622 clients, xterm and xdm not done yet (patch by Matthieu 10623 Herrb).</li> 10624 </ul> 10625 </li> 10626 </ul> 10627 10628 <h1><a name="xterm_165" id="xterm_165">Patch #165 - 2002/1/5 - 10629 XFree86 4.1.0</a></h1> 10630 10631 <ul> 10632 <li>modify <code>uxterm</code> script to strip encoding part 10633 from environment variable before adding ".UTF-8" (based on 10634 Debian #125947, but using a more portable solution).</li> 10635 10636 <li>add an assignment statement in VTInitialize() to make 10637 <code>awaitInput</code> resource work.</li> 10638 10639 <li>use new macros init_Bres(), etc., in VTInitialize() to add 10640 trace of the initialization of resources.</li> 10641 10642 <li>modify checks for $LC_ALL, related environment variables to 10643 ensure the resulting strings are nonempty (report by Markus 10644 Kuhn).</li> 10645 10646 <li>add an ifdef in charproc.c for num_ptrs variable in case 10647 all configure options are disabled.</li> 10648 10649 <li>modify definition of getXtermBackground() to avoid negative 10650 array index warning on Tru64 (report by Jeremie Petit).</li> 10651 10652 <li>improve fix from patch #165 (still Debian #117184, report 10653 by Matt Zimmerman <mdz@debian.org>)</li> 10654 10655 <li>correct install rule for uxterm in Makefile.in, to handle 10656 the case where building in a different directory than xterm's 10657 source (patch by Paul Gilmartin).</li> 10658 10659 <li>documented ANSI.SYS-style cursor save/restore escape 10660 sequences in ctlseqs.ms, which are in xterm since X11R5.</li> 10661 10662 <li>correct two entries in the default charClass table, which 10663 did not follow the manpage comment about the character number 10664 corresponding to the class (patch by Marc Bevand 10665 <bevand_m@epita.fr>).</li> 10666 10667 <li>fix a couple of typos in comments in the app-defaults files 10668 (David Krause <xfree86@davidkrause.com>).</li> 10669 10670 <li>resync with XFree86 CVS 10671 <ul> 10672 <li>update language of copyrights in some files to reflect 10673 the fact that they were reassigned from X Consortium to The 10674 Open Group in 1998. Note that this xterm source is derived 10675 from the 1996 version from X Consortium, does not 10676 incorporate changes made by X Consortium or The Open Group 10677 after that date, hence we do not add The Open Group's 1998 10678 copyright date to related files.</li> 10679 10680 <li>save/restore <code>errno</code> in signal catcher 10681 (patch by Matthieu Herrb).</li> 10682 10683 <li>modify UXTerm.ad's font5 resource so that xterm can 10684 display double width characters using a font distributed 10685 with XFree86 (Tomohiro Kubota).</li> 10686 </ul> 10687 </li> 10688 </ul> 10689 10690 <h1><a name="xterm_164" id="xterm_164">Patch #164 - 2001/11/13 - 10691 XFree86 4.1.0</a></h1> 10692 10693 <ul> 10694 <li>correct a case where <code>ptyInitialErase</code> and 10695 <code>backarrowKeyIsErase</code> resources combine to set 10696 <code>DECBKM</code> mode, but a <code>reset</code> command 10697 would not reset xterm to that state, making the erase character 10698 revert to ^H (Debian #117184)</li> 10699 </ul> 10700 10701 <h1><a name="xterm_163" id="xterm_163">Patch #163 - 2001/11/04 - 10702 XFree86 4.1.0</a></h1> 10703 10704 <ul> 10705 <li>correct ifdef's for <code>__QNX__</code> and 10706 <code>USE_SYSV_PGRP</code> in main.c call to 10707 <code>tcsetpgrp</code>, which broke bash behavior around 10708 <a href="#xterm_140">patch #140</a> (report/patch by Frank Liu 10709 <fliu@mail.vipstage.com>).</li> 10710 10711 <li>modify trace.c to fix missing definition of GCC_UNUSED for 10712 compilers other than gcc when configured for trace code 10713 (report/patch by Paul Gilmartin).</li> 10714 10715 <li>change format in TraceOptions() to use long rather than 10716 int, since the latter could lose precision on 64-bit machines 10717 (report/patch by Nelson Beebe).</li> 10718 10719 <li>modify xterm manual page and minstall.sh to allow imake 10720 rules to define location of app-defaults directory (Debian 10721 #87611).</li> 10722 10723 <li>review/update list of conflicting preprocessor symbols to 10724 remove from $CPPFLAGS at the end of the configure script. In 10725 particular, this allows one to configure xterm without the 10726 utempter library on Redhat 7.1 (report/patch by Adam 10727 Sulmicki).</li> 10728 </ul> 10729 10730 <h1><a name="xterm_162" id="xterm_162">Patch #162 - 2001/10/23 - 10731 XFree86 4.1.0</a></h1> 10732 10733 <ul> 10734 <li>correct logic that processes <code>-class</code> option, so 10735 that a following <code>-e</code> option is handled (Debian 10736 #116297).</li> 10737 10738 <li>improve options-decoding to allow <code>-version</code> and 10739 <code>-help</code> options to be combined (Debian 10740 #110226).</li> 10741 10742 <li>add a 10 millisecond delay in event loop when processing 10743 <code>-hold</code> option, to avoid using too much CPU time 10744 (Debian #116213).</li> 10745 10746 <li>prefix final program execution in <code>uxterm</code> with 10747 "exec" to avoid a useless shell hanging around (Christian 10748 Weisgerber).</li> 10749 </ul> 10750 10751 <h1><a name="xterm_161" id="xterm_161">Patch #161 - 2001/10/10 - 10752 XFree86 4.1.0</a></h1> 10753 10754 <ul> 10755 <li>modify logic that resets keypad application mode to avoid 10756 doing this if there is no modifier associated with the Num_Lock 10757 keysym (report by John E Davis <davis@space.mit.edu> and 10758 Alan W Irwin <irwin@beluga.phys.uvic.ca>).</li> 10759 10760 <li>add built-in translation for Control/KP_Separator to 10761 KP_Subtract, to accommodate users who wish to use xmodmap to 10762 reassign the top row of the numeric keypad.</li> 10763 10764 <li>correct Imakefile install-rule for <code>uxname</code> 10765 script (reported by Nam SungHyun <namsh@lge.com>).</li> 10766 10767 <li>resync with XFree86 CVS – correct typo in 10768 <code><ncurses/term.h></code> ifdef.</li> 10769 </ul> 10770 10771 <h1><a name="xterm_160" id="xterm_160">Patch #160 - 2001/10/7 - 10772 XFree86 4.1.0</a></h1> 10773 10774 <ul> 10775 <li>modify logic in main.c (see <a href="#xterm_145">patch 10776 #145</a>) to avoid generating the same identifier, for example, 10777 for /dev/tty1 and /dev/pts/1, which is used to denote an entry 10778 in the utmp file (Debian bug report #84676), A similar fix was 10779 also sent by Jerome Borsboom <borsboom@westbrabant.net> 10780 in May, but I overlooked it when reviewing bug reports.</li> 10781 10782 <li>add configure check for <code><ncurses/term.h></code> 10783 to get rid of hardcoded <code>__CYGWIN__</code> ifdef in 10784 resize.c 10785 <p>NOTE: The CYGWIN port should not be linking 10786 <code>resize</code> with ncurses. It appears that the only 10787 reason it is, is because both the ncurses and termcap ports 10788 on that platform are badly misconfigured (essential pieces 10789 have been removed, etc). Checking for 10790 <code><ncurses/term.h></code> does not hurt anything, 10791 since there are some correct installations that are set up 10792 that way.</p> 10793 </li> 10794 10795 <li>add a sample <code>uxterm</code> script, which uses the 10796 <code>UXTerm</code> application defaults for UTF-8 10797 environments.</li> 10798 10799 <li>undo change to xterm application defaults, since this 10800 introduced an unnecessary incompatibility. The intended 10801 functionality was already addressed by the <a href= 10802 "#xterm_141">UXTerm</a> app-defaults file.</li> 10803 10804 <li>resync with XFree86 CVS 10805 <ul> 10806 <li>Modified xterm app default to use LFD fontnames instead 10807 of old type (Michael Schroeder).</li> 10808 10809 <li>Fix xterm when XIM is disabled - caused a segfault 10810 (Tomohiro Kubota).</li> 10811 </ul> 10812 </li> 10813 </ul> 10814 10815 <h1><a name="xterm_159" id="xterm_159">Patch #159 - 2001/9/19 - 10816 XFree86 4.1.0</a></h1> 10817 10818 <ul> 10819 <li>remove an ifdef for <code>USE_HANDSHAKE</code> added in 10820 patch #158 from the second <code>TIOCSSIZE</code> ioctl call in 10821 the initialization code. Paul Gilmartin reports that for 10822 Solaris 2.6 (sparc), stty does not show that xterm sets rows 10823 and columns unless the second ioctl is executed.</li> 10824 10825 <li>correct treatment of empty parameter list for some OSC 10826 strings (report by Sami Farin <sfarin@ratol.fi>).</li> 10827 </ul> 10828 10829 <h1><a name="xterm_158" id="xterm_158">Patch #158 - 2001/9/8 - 10830 XFree86 4.1.0</a></h1> 10831 10832 <ul> 10833 <li>augment key translations for scrollbar widget to ensure 10834 that keystrokes intended for the text area are not lost if the 10835 mouse pointer happens to fall on the scrollbar. This can 10836 happen, for instance, if the user's <code>app-defaults</code> 10837 or <code>.Xdefaults</code> file contains a translations 10838 resource, though it may also happen through unrelated resource 10839 settings: probably a bug in libXt (reported by Paul Fox 10840 <pgf@foxharp.boston.ma.us> and Dmitry Yu. Bolkhovityanov 10841 <D.Yu.Bolkhovityanov@inp.nsk.su>).</li> 10842 10843 <li>widen ifdef's in xterm.h to define 10844 <code>__EXTENSIONS__</code> on Solaris, for compilers other 10845 than gcc. This was added along <code>_POSIX_C_SOURCE</code> 10846 with in <a href="#xterm_151">patch #151</a>, but is not 10847 sufficient since Sun's compiler does not define 10848 <code>__STDC__</code> by default (report by Matthias Scheler 10849 <tron@zhadum.de>).</li> 10850 10851 <li>modify xterm to obtain the closest matching color if an 10852 exact color is not available, e.g., on 8-bit displays (patch by 10853 Stephen P Wall)</li> 10854 10855 <li>implement "OverTheSpot" preedit type of XIM input (patch by 10856 Tomohiro Kubota): 10857 <ul> 10858 <li>This preedit type is a reasonable compromise between 10859 simpleness of implementation and usefulness. "Root" preedit 10860 type is easy to implement but not useful; "OnTheSpot" 10861 preedit type is the best in the point of view of user 10862 interface but very complex. And more, "OverTheSpot" is the 10863 preedit type which the most XIM servers support. Thus, to 10864 achieve reasonable usability, support of "OverTheSpot" 10865 preedit type is needed.</li> 10866 10867 <li>In "OverTheSpot" preedit type, the preedit 10868 (preconversion) string is displayed at the position of the 10869 cursor. On the other hand, it is XIM server's 10870 responsibility to display the preedit string. Thus, it is 10871 needed for XIM client (here XTerm) to inform the XIM server 10872 of the cursor position. And more, to achieve good visual 10873 proportion, preedit string must be written using proper 10874 font. Thus, it is XIM client's responsibility to inform the 10875 XIM server of the proper font. The font must be supplied by 10876 "fontset". Fontset is a set of fonts with charsets which 10877 are specified by the current locale. Since XTerm uses 10878 ISO10646 fonts regardless of the current locale, the fonts 10879 for XIM must be prepared separately. It is difficult to 10880 prepare fonts which are similar to XTerm font. Thus, my 10881 patch uses a simple way - the default font is "*" which 10882 matches every fonts and X library will automatically choose 10883 fonts with proper charsets. I added "-fx" command option 10884 and "ximFont" resource to override this default font 10885 setting.</li> 10886 10887 <li>changed the definition of "OverTheSpot" preedit type 10888 from XIMPreeditPosition|XIMStatusArea to 10889 XIMPreeditPosition|XIMStatusNothing. This matches the 10890 behavior of other programs such as Rxvt, Kterm, Gedit.</li> 10891 10892 <li>A tiny XIM bugfix is also included. By calling 10893 XSetLocaleModifiers() with parameter of "", it can consider 10894 XMODIFIERS environmental variable which is a standard way 10895 for users to specify XIM server to be used.</li> 10896 </ul> 10897 </li> 10898 10899 <li>adjust configure script to accommodate repackaging of 10900 keysym2ucs.c as include-file for xutf8.c (patch by Tomohiro 10901 Kubota).</li> 10902 10903 <li>add the <code>UXTerm</code> app-defaults file to makefile 10904 install rules (request by Juliusz Chroboczek).</li> 10905 10906 <li>correct logic in <code>get_termcap()</code>, which returned 10907 false if the <code>tgetent()</code> call indicated that xterm 10908 was linked with terminfo. Although the <code>$TERMCAP</code> 10909 variable cannot be adjusted in this case, xterm still needs 10910 information from this call to extract data to initialize the 10911 erase-mode when the <code>ptyInitialErase</code> resource is 10912 false.</li> 10913 10914 <li>modify <code>ScrollbarReverseVideo()</code> function to 10915 cache the original border color, so it can restore that when an 10916 application flashes the screen (Bugzilla #38872).</li> 10917 10918 <li>resync with XFree86 CVS 10919 <ul> 10920 <li>remove ifdef's for X_NOT_STDC_ENV (patch by David 10921 Dawes).</li> 10922 10923 <li>add Cygwin to special errno handling case in ptydata.c 10924 (Alan Hourihane)</li> 10925 10926 <li>set screen size earlier in initialization, to address a 10927 race with window manager resizing its clients (Keith 10928 Packard).</li> 10929 </ul> 10930 </li> 10931 </ul> 10932 10933 <h1><a name="xterm_157" id="xterm_157">Patch #157 - 2001/6/18 - 10934 XFree86 4.1.0</a></h1> 10935 10936 <ul> 10937 <li>clean up button.c and input.c (patch by Juliusz 10938 Chroboczek). The basic idea is to use a single set of APIs in 10939 the XTerm core, and put a set of workarounds in a separate 10940 file. As you will notice, this drastically simplifies parts of 10941 the code; in particular, the only remaining ifdefs related to 10942 the differences between Xutf8 and legacy systems are related to 10943 the selection provider logic. This defines two new files, 10944 xutf8.h and xutf8.c, provide some half-hearted but fully 10945 portable emulation for the three Xutf8* functions that XTerm 10946 uses. Putting these in a separate file will allow people to 10947 experiment with more complex versions without making the core 10948 of XTerm more difficult to maintain. The functionality of the 10949 emulation is as follows. 10950 <ul> 10951 <li>Xutf8TextListToTextProperty fully handles XStringstyle 10952 and XUTF8StringStyle. It will only generate STRING for 10953 XStdICCTextStyle, and will only generate Latin-1 in 10954 XCompoundTextStyle (but label it as COMPOUND_TEXT, as the 10955 spec requires). (I have hesitated to make this function 10956 fail for XStdICCTextStyle and XCompoundTextStyle; this 10957 might be a smart thing to do, in the hope that the 10958 selection requestor will try UTF8_STRING afterwards; 10959 opinions?)</li> 10960 10961 <li>Xutf8TextPropertyToTextList fully handles STRING and 10962 UTF8_STRING. It systematically fails for 10963 COMPOUND_TEXT.</li> 10964 10965 <li>Xutf8LookupString will properly handle single-keystroke 10966 input for the keysyms covered by Markus' keysym2ucs 10967 function. It will not handle either compose key input or 10968 external input methods.</li> 10969 </ul> 10970 </li> 10971 10972 <li>add an ifdef for <code>SunXK_F36</code>, used in 10973 <code>xtermcapKeycode()</code> (patch by Mark Waggoner 10974 <waggoner@ichips.intel.com>).</li> 10975 10976 <li>modify check for login name to try <code>getlogin()</code> 10977 and $LOGNAME, $USER environment variables to detect if the user 10978 has logged in under an alias, i.e., an account with the same 10979 user id but a different name (Debian bug report #70084).</li> 10980 10981 <li>add resource <code>tiXtraScroll</code>, which can be used 10982 to preserve the screen contents in the scrollback rather than 10983 erasing it when starting a fullscreen application such as 10984 <code>vi</code> (patch by Ken Martin 10985 <fletcher@catsreach.org>).</li> 10986 10987 <li>two patches by Denis Zaitsev <zzz@cd-club.ru>: 10988 <ul> 10989 <li>added <code>forceBoxChars</code> resource to control 10990 the "line-drawing characters" option.</li> 10991 10992 <li>added <code>freeBoldBox</code> resource, which, when 10993 set true, suppresses check in 10994 <code>same_font_size()</code>, so xterm does not attempt to 10995 ensure that the bold font is the same size as the normal 10996 font.</li> 10997 </ul> 10998 </li> 10999 11000 <li>change the color class for ANSI colors and similar ones 11001 such as bold-color, etc., to follow the convention that the 11002 classname is the instance name with a leading capital (e.g., 11003 <code>color0</code> and <code>Color0</code> rather than 11004 <code>color0</code> and <code>Foreground</code>). There was 11005 little use for Foreground as a class other than to create 11006 occasional confusion and bug reports, most recently by Nelson 11007 Beebe who reports that it disables colors in xterm but not on 11008 Linux, which is probably due to a difference in resource 11009 evaluation order. A configure script option 11010 (--disable-color-class) is provided for anyone who did use the 11011 older behavior.</li> 11012 11013 <li>fix a signal-handling bug. When running xterm with 11014 <code>ksh</code> or similar shell such as bash 2.05, xterm will 11015 hang and not respond to keystrokes after the user types 11016 <code>suspend</code>. Additionally the popup menus do not 11017 respond, so it is not possible to send SIGCONT to the shell. 11018 What is happening is that the shell is sending itself SIGSTOP, 11019 and it is being stopped. Per specification it also means that 11020 the operating system is sending SIGCHLD to parent to the bash 11021 (XTERM). Now the issue is that xterm assumes it cannot happen 11022 and it expects to receive SIGCHLD only upon 11023 <em>termination</em> of its children. This causes a deadlock 11024 with xterm waiting for the child to die, and the child waiting 11025 for SIGCONT. (report/patch by Adam Sulmicki), analysis/testing 11026 by Sven Mascheck 11027 <sven.mascheck@student.uni-ulm.de>).</li> 11028 11029 <li>correct some inconsistent checks for 11030 <code>XtReleaseGC()</code> calls in 11031 <code>xtermLoadFont()</code> (patch by Nam SungHyun 11032 <namsh@lge.com>).</li> 11033 11034 <li>updated wcwidth.c and keysym2ucs.c to versions dated 11035 2001/1/12 and 2001/4/18, respectively from 11036 http://www.cl.cam.ac.uk/~mgk25/ucs/</li> 11037 11038 <li>correction to change from <a href="#xterm_90">patch 11039 #90</a>, which was intended to reset the saved cursor position 11040 for normal/alternate screens on a soft reset, but actually 11041 wiped out all of the saved cursor information. Just reset the 11042 saved position for the current screen (report by Michael 11043 Schroeder).</li> 11044 11045 <li>modify ShowCursor() and HideCursor() so that if the cursor 11046 points to the second part of a wide character, make the 11047 show/hide operate on the first position of the wide character 11048 (patch by Sven Verdoolaege).</li> 11049 11050 <li>scrolling in the alternate screen just before switching 11051 back to the main screen can cause extra blank lines to be 11052 inserted into the scrollback buffer (patch by Paul Vojta 11053 <vojta@math.berkeley.edu>).</li> 11054 11055 <li>resync with XFree86 4.1.0: 11056 <ul> 11057 <li>Use TermcapLibrary as -lncurses instead of -ltermcap, 11058 fixes problem building xterm/resize on Cygwin/XFree86 11059 (Harold Hunt).</li> 11060 11061 <li>Install xterm.termcap and xterm.terminfo when 11062 installing xterm (Torrey T. Lyons).</li> 11063 11064 <li>Fix some build issues on Cygwin/XFree86 (Suhaib 11065 Siddiqi).</li> 11066 11067 <li>Define CBAUD, when it's missing in xterm, on LynxOS 11068 (Stuart Lissaman).</li> 11069 </ul> 11070 </li> 11071 </ul> 11072 11073 <h1><a name="xterm_156" id="xterm_156">Patch #156 - 2001/4/28 - 11074 XFree86 4.0.3</a></h1> 11075 11076 <ul> 11077 <li>change order of selection-target types to make 8-bit xterm 11078 prefer UTF8_STRING to COMPOUND_TEXT (patch by Juliusz 11079 Chroboczek).</li> 11080 11081 <li>document <code>-fa</code>, <code>-fs</code> command-line 11082 options and <code>faceName</code>, <code>faceSize</code> 11083 resources which are used by the freetype library support.</li> 11084 11085 <li>if configure script finds freetype libraries, but imake 11086 definitions do not have the XRENDERFONT definition, define it 11087 anyway.</li> 11088 11089 <li>modify configure script check for freetype libraries to 11090 include <code><Xlib.h></code>, since an older version of 11091 the related headers relies on this (patch by Adam 11092 Sulmicki).</li> 11093 </ul> 11094 11095 <h1><a name="xterm_155" id="xterm_155">Patch #155 - 2001/4/20 - 11096 XFree86 4.0.3</a></h1> 11097 11098 <ul> 11099 <li>correct return type of in_put() from <a href= 11100 "#xterm_155">patch #153</a> changes, which left it not wide 11101 enough for UTF-8 (patch by Bruno Haible).</li> 11102 </ul> 11103 11104 <h1><a name="xterm_154" id="xterm_154">Patch #154 - 2001/4/11 - 11105 XFree86 4.0.3</a></h1> 11106 11107 <ul> 11108 <li>undo check for return value from <code>pututline</code> 11109 (used for debugging) since that function does not return a 11110 value on Slackware 3.6.</li> 11111 11112 <li>correct length in ScreenWrite, when rendering invisible 11113 text (patch by Sven Verdoolaege <skimo@kotnet.org>).</li> 11114 11115 <li>fixes/improvements for the <code>i18nSelection</code> 11116 resource from patch #153, by Bruno Haible: 11117 <ul> 11118 <li>add missing initialization for 11119 <code>i18nSelection</code> resource.</li> 11120 11121 <li>split-out the non-ICCM aspect of the 11122 <code>i18nSelection</code> resource as a new resource, 11123 <code>brokenSelections</code>.</li> 11124 </ul> 11125 </li> 11126 11127 <li>add configure check for <code><time.h></code> and 11128 <code><sys/time.h></code>, to allow for Unixware 7, 11129 which requires both. If the configure script is not used, only 11130 <code><time.h></code> will be included as before (report 11131 by Thanh Ma).</li> 11132 11133 <li>fix redefinition of <code>dup2</code>, 11134 <code>getutent</code>, <code>getutid</code>, 11135 <code>getutline</code> and <code>sleep</code> functions on 11136 Unixware 7 (report by Thanh Ma 11137 <Thanh.Ma@casi-rusco.com>)</li> 11138 11139 <li>add a fall-back definition for <code>__hpux</code>, which 11140 is apparently not defined in some compilers on HPUX 11.0 11141 (reported by Clint Olsen).</li> 11142 11143 <li>change VAL_INITIAL_ERASE, which is used as a fallback for 11144 the <code>"kb"</code> termcap string to 8, since that matches 11145 the xterm terminal description (request by Alexander V 11146 Lukyanov).</li> 11147 11148 <li>correct an off-by-one in <code>ClearInLine</code>, which 11149 caused the erase-characters (ECH) control to display 11150 incorrectly (patch by Alexander V Lukyanov).</li> 11151 11152 <li>correct escape sequences shown in terminfo for shifted 11153 editing keys. The modifier code was for the control key rather 11154 than the shift key.</li> 11155 </ul> 11156 11157 <h1><a name="xterm_153" id="xterm_153">Patch #153 - 2001/3/29 - 11158 XFree86 4.0.3</a></h1> 11159 11160 <ul> 11161 <li>increase PTYCHARLEN to 8 for os390, add some debugging 11162 traces for UTMP functions (patch by Paul Gilmartin).</li> 11163 11164 <li>correct an misplaced brace in 11165 <code>SelectionReceived()</code> (patch by Bruno Haible).</li> 11166 11167 <li>correct an assignment dropped in 11168 <code>SelectionReceived()</code> which made it not compile for 11169 wide-characters combined with debug traces.</li> 11170 11171 <li>correct typo, clarify description of 88- and 256-color 11172 controls (report by Bram Moolenaar).</li> 11173 11174 <li>correct a typo in ctlseqs.ms which caused DEC Locator 11175 control sequences using single quote "'" display grave "`" 11176 instead (reported by Paul Williams, apparently in patch 11177 #114).</li> 11178 </ul> 11179 11180 <h1><a name="xterm_152" id="xterm_152">Patch #152 - 2001/3/13 - 11181 XFree86 4.0.2</a></h1> 11182 11183 <ul> 11184 <li>correct index in inner loop in <code>VTInitI18N()</code> 11185 from patch #151 changes, which resulted in infinite loop under 11186 some conditions (report/analysis by Paul Gilmartin).</li> 11187 11188 <li>remove spurious "%|" from terminfo sgr capabilities 11189 (report/analysis by Adam M Costello, Debian #89222).</li> 11190 11191 <li>add shell script to adjust list of dynamic libraries linked 11192 by <code>resize</code> when building with the standalone 11193 configure script. Otherwise it uses the same list as for xterm, 11194 which is excessive.</li> 11195 11196 <li>fix a few compiler warnings reported by the 20010305 gcc 11197 snapshot.</li> 11198 </ul> 11199 11200 <h1><a name="xterm_151" id="xterm_151">Patch #151 - 2001/3/10 - 11201 XFree86 4.0.2</a></h1> 11202 11203 <ul> 11204 <li>alter the behaviour of selections in XTerm (patch by 11205 Juliusz Chroboczek). It is believed to follow the ICCCM + 11206 UTF8_STRING to the letter, both in UTF-8 and in eight-bit mode. 11207 From his description: 11208 <ul> 11209 <li>When compiled against XFree86 4.0.2, the patched XTerm 11210 will make the selection available as COMPOUND_TEXT, STRING 11211 or UTF8_STRING in both modes. It will request selections in 11212 the following order: 11213 <p>UTF-8 mode: UTF8_STRING, TEXT, COMPOUND_TEXT, 11214 STRING.<br> 11215 eight-bit mode: TEXT, COMPOUND_TEXT, UTF8_STRING, 11216 STRING.</p> 11217 </li> 11218 11219 <li>When compiled against an earlier version of XFree86 (or 11220 compiled with OPT_UTF8_API=0), it will still obey the 11221 ICCCM, but will neither request nor provide UTF8_STRING in 11222 eight-bit mode, and neither TEXT nor COMPOUND_TEXT in UTF-8 11223 mode.</li> 11224 11225 <li>For compatibility with previous versions of XTerm, a 11226 resource <code>i18nSelections</code> is provided, please 11227 see the manpage for details. However, due to an unexpected 11228 combination of ICCCM extensions by various bits and pieces 11229 of the libraries, interacting with previous versions of 11230 XTerm will work in many locales even without this flag. 11231 (Please do not set this resource to true by default, as 11232 this would violate the ICCCM.)</li> 11233 </ul> 11234 </li> 11235 11236 <li>improved error checking/reporting in VTInitI18N(), ensuring 11237 that lack of input method styles is treated distinctly from a 11238 mismatch.</li> 11239 11240 <li>remove an incorrect ifdef from patch #141 which suppressed 11241 overstriking to simulate bold font when xterm was compiled to 11242 support wide characters (report/analysis by Adam M Costello 11243 <amc@cs.berkeley.edu>, Debian #76404, Debian 11244 #77575).</li> 11245 11246 <li>modify <code>RequestResize()</code> function to 11247 save/restore window manager hints. Its call to 11248 <code>XtMakeResizeRequest()</code> had the undesirable 11249 side-effect of clearing window manager hints, e.g., when 11250 switching to 132-columns via DECCOLM escape sequence. Window 11251 manager hints make it simple to resize xterm in terms of 11252 character cells rather than pixels (reports by Christian 11253 Weisgerber, Debian #79939). 11254 <p>This applies to the normal configuration. When built with 11255 toolbar support, the hints are applied to a different widget 11256 level (more work will be needed to make hints work with the 11257 toolbar).</p> 11258 </li> 11259 11260 <li>fix a redefinition warning for resize.c on OpenBSD (patch 11261 by Christian Weisgerber).</li> 11262 11263 <li>change resource corresponding to <code>-T</code> option to 11264 match Xt library's <code>-title</code>, i.e., 11265 <code>.title</code> rather than <code>*title</code> so the 11266 command-line options are interchangeable as documented (Debian 11267 bug report #68843).</li> 11268 11269 <li>add script used from autoconf'd makefile for installing 11270 manpages, since recent XFree86 changing the way section numbers 11271 are represented makes the install dependent on extra 11272 scripts.</li> 11273 11274 <li>add configure check for freetype libraries and configure 11275 option --disable-freetype to override this feature.</li> 11276 11277 <li>modify some configure script macros to avoid using 11278 changequote(), which has been rendered useless in the latest 11279 autoconf alpha 2.49c</li> 11280 11281 <li>update config.guess, config.sub to 2001-2-13</li> 11282 11283 <li>remove redundant/contradictory __CYGWIN__ definitions from 11284 resize.c</li> 11285 11286 <li>correct manpage typo introduced by X11R6.5 resync.</li> 11287 </ul> 11288 11289 <p>Changes from XFree86 4.0.2:</p> 11290 11291 <ul> 11292 <li>add definition of <code>_POSIX_C_SOURCE</code> for Solaris 11293 to make this compile with <code>gcc -ansi -pedantic</code> 11294 (report by <mark@zang.com>.</li> 11295 </ul> 11296 11297 <h1><a name="xterm_150" id="xterm_150">Patch #150 - 2000/12/29 - 11298 XFree86 4.0.2</a></h1> 11299 11300 <ul> 11301 <li>move the binding for shifted keypad plus/minus, which 11302 invokes the <code>larger-vt-font()</code> and 11303 <code>smaller-vt-font()</code> actions, respectively, into the 11304 translations resource (suggested by Marius Gedminas 11305 <mgedmin@puni.osf.lt>).</li> 11306 11307 <li>modify configure script to support the 11308 <code>--program-prefix</code>, <code>--program-suffix</code> 11309 and <code>--program-transform-name</code> options (request by 11310 Alison Winters <alison@mirrabooka.com>).</li> 11311 11312 <li>fixes for wide/combining characters (Robert Brady): 11313 <ul> 11314 <li>fix a scrolling / combining characters display 11315 anomaly</li> 11316 11317 <li>fix a problem with double-width characters where if the 11318 primary font had no box-drawing characters, the right hand 11319 half of double-width characters was erased (reported by Yao 11320 Zhang <yzhang@sharemedia.com>).</li> 11321 11322 <li>fix special case of null byte for key handling in UTF-8 11323 locales.</li> 11324 </ul> 11325 </li> 11326 11327 <li>modify logic that compares sizes of normal and bold fonts 11328 to be more forgiving of the font server's choice of bold font 11329 which must match the normal font's size. Now 11330 <code>same_font_size()</code> compares the height of the fonts 11331 rather than individually ascent and descent, and allows the 11332 bold font to be one pixel smaller than the normal font 11333 (addresses a report by Alan Citterman <alan@mticket.com>, 11334 who says that something in patches #146 to #148 made xterm more 11335 likely to overstrike bold fonts, and indirectly Debian bug 11336 report #76404, which reports the opposite).</li> 11337 11338 <li>make configure script use $CFLAGS and $CPPFLAGS 11339 consistently, including removing a chunk from configure.in 11340 which attempted to save/restore $CPPFLAGS while processing 11341 value set by the --x-includes option, but lost values set in an 11342 intervening AC_CHECK_HEADERS. This change modifies macros 11343 CF_ADD_CFLAGS, CF_ANSI_CC_CHECK and CF_X_TOOLKIT, as well as 11344 removing variables IMAKE_CFLAGS and X_CFLAGS from the generated 11345 makefile (the AC_CHECK_HEADERS problem was reported by Albert 11346 Chin-A-Young <china@thewrittenword.com<).</li> 11347 11348 <li>correct a comparison in SELECTWORD case of ComputeSelect(), 11349 which resulted in a word-selection wrapping past the first 11350 column without checking the first column's character class 11351 (reported by Christian Lacunza 11352 <celacunza@netscape.net></li> 11353 11354 <li>correct a logic in UTF-8 mode for selecting double-width 11355 characters; a combining character was omitted (patch by Markus 11356 Kuhn).</li> 11357 11358 <li>add feature to pop (raise) window when a bell is received 11359 (patch by Gael Roualland 11360 <gael.roualland@dial.oleane.com>).</li> 11361 11362 <li>add __NetBSD__ and __OpenBSD__ to special-case in 11363 xterm_io.h for USE_POSIX_TERMIOS definition (patch by Christian 11364 Weisgerber).</li> 11365 11366 <li>move special-case HPUX include for <sys/bsdtty.h> to 11367 xterm_io.h to define TIOCSLTC, making HAS_LTCHARS defined for 11368 HPUX 10.20 (report by Bruno Betro).</li> 11369 </ul> 11370 11371 <h1><a name="xterm_149" id="xterm_149">Patch #149 - 2000/12/6 - 11372 XFree86 4.0.1h</a></h1> 11373 11374 <ul> 11375 <li>restructured includes for <code>termios.h</code>, 11376 <code>termio.h</code> and related definitions for main.c, 11377 os2main.c, screen.c and resize.c so they will share equivalent 11378 definitions in a new header <code>xterm_io.h</code>. This is 11379 intended to solve some problems mainly for HPUX which appear to 11380 arise from inconsistent definitions for SIGWINCH- and 11381 HAS_LTCHARS-related symbols (reports by Bruno Betro, Jeremie 11382 Petit and Clint Olsen).</li> 11383 11384 <li>improve usability of double-width fonts by allowing normal 11385 fonts to be given as double-width (from a patch by Fabrice 11386 Bellard <bellard@email.enst.fr>).</li> 11387 11388 <li>correct a few compiler warnings in TRACE() macros for 11389 signed/unsigned variable differences (reported by Clint 11390 Olsen).</li> 11391 11392 <li>make configure script use $CFLAGS and $CPPFLAGS more 11393 consistently, i.e., by using CF_ADD_CFLAGS in CF_ANSI_CC 11394 macro.</li> 11395 11396 <li>expanded description of environment variables in 11397 manual-page.</li> 11398 11399 <li>modify OPT_TCAP_QUERY feature to always return the termcap 11400 or terminfo capability string in the response, and to 11401 read/write the names in hexadecimal form to allow for the 11402 special case of termcap's <code>k;</code> name (patch by Bram 11403 Moolenaar).</li> 11404 11405 <li>add OPT_SAME_NAME and OPT_TCAP_QUERY to xtermcfg.hin, so 11406 the corresponding configure options work (patch by Bram 11407 Moolenaar).</li> 11408 11409 <li>resync with XFree86 4.0.1g: 11410 <ul> 11411 <li>Rewrite Xft library for Render extension/core text and 11412 font management Change xterm to use new interface (Keith 11413 Packard).</li> 11414 </ul> 11415 </li> 11416 </ul> 11417 11418 <h1><a name="xterm_148" id="xterm_148">Patch #148 - 2000/10/31 - 11419 XFree86 4.0.1d</a></h1> 11420 11421 <ul> 11422 <li>document logfile options in man-page.</li> 11423 11424 <li>correct spelling of <code>-samename</code> option in help 11425 message.</li> 11426 11427 <li>add configure script option 11428 <code>--enable-tcap-query</code> (request by Bram 11429 Moolenaar).</li> 11430 11431 <li>add a "Co" or "colors" entry to the OPT_TCAP_QUERY feature 11432 (patch by Bram Moolenaar).</li> 11433 11434 <li>patch by Kiyokazu Suto <suto@ks-and-ks.ne.jp>: 11435 <ul> 11436 <li>add support for bold font for double width characters. 11437 The font name may be specified with the command line option 11438 <code>-fwb</code> or with resource 11439 <code>wideBoldFont</code> (class 11440 <code>WideBoldFont</code>).</li> 11441 11442 <li>correct underlining of double width character string, 11443 which was drawn only half width.</li> 11444 11445 <li>correct binary search of precomposed character table, 11446 which may return wrong result when <code>int</code> is just 11447 32 bits.</li> 11448 </ul> 11449 </li> 11450 11451 <li>some changes to align terminfo with ncurses 5.2: 11452 <ul> 11453 <li>remove xtermm description, retaining xterm-mono since 11454 the former conflicts with ncurses.</li> 11455 11456 <li>modify initialization and reset strings to avoid 11457 putting the save/restore cursor operations bracketing 11458 changes to video attributes, since the changes could be 11459 lost when the cursor is restored. This affects xterm-r6 and 11460 xterm-8bit (the xterm-xfree86 entry uses the soft-reset 11461 feature which resets scrolling margins and origin mode 11462 without requiring us to save/restore the cursor 11463 position).</li> 11464 11465 <li>make a few entries explicitly inherit from 11466 xterm-xfree86 rather than xterm: xterm-rep, xterm-xmc, 11467 xterm-nrc</li> 11468 </ul> 11469 </li> 11470 11471 <li>ensure that sign-extension does not affect 11472 <code>ctype</code> macros by using <code>CharOf()</code> macro 11473 to coerce the parameter to an unsigned char.</li> 11474 11475 <li>resync with XFree86 4.0.1d: 11476 <ul> 11477 <li>Add primitive support in xterm for Xft based fonts 11478 (Keith Packard). The changes are ifdef'd with 11479 <code>-DXRENDERFONT</code>.</li> 11480 </ul> 11481 </li> 11482 </ul> 11483 11484 <h1><a name="xterm_147" id="xterm_147">Patch #147 - 2000/10/26 - 11485 XFree86 4.0.1c</a></h1> 11486 11487 <ul> 11488 <li>correct implementation of <code>ptyInitialErase</code>: the 11489 value assigned to <code>initial_erase</code> was for the 11490 control terminal, which is correct as far as it goes. But there 11491 was no following test for the pseudo-terminal's erase value, 11492 which would overwrite the default obtained from the control 11493 terminal (reported by Christian Weisgerber 11494 <naddy@mips.inka.de>).</li> 11495 11496 <li>modify check for printable-characters in OSC string to use 11497 xterm's ansi_table rather than isprint() macro, to isolate this 11498 check from locale settings. This fixes a problem using 8-bit 11499 characters to set the title (reported by Ricardas Cepas 11500 <rch@richard.eu.org>).</li> 11501 11502 <li>modify sample scripts to check for printf before print, 11503 since the latter is not as well standardized (e.g., on 11504 Linux).</li> 11505 11506 <li>updated config.sub, config.guess to reflect changes on 11507 subversions.gnu.org</li> 11508 </ul> 11509 11510 <h1><a name="xterm_146" id="xterm_146">Patch #146 - 2000/9/12 - 11511 XFree86 4.0.1c</a></h1> 11512 11513 <ul> 11514 <li>correct two instances overlooked from patch #141 which 11515 assumed UTF-8 mode without checking, causing a core dump in 11516 non-UTF-8 mode (one instance was reported by Tommi Virtanen 11517 <tv@debian.org>).</li> 11518 11519 <li>correct a problem selecting from the scrollback buffer in 11520 UTF-8 mode by changing remaining getXtermCell() calls to 11521 XTERM_CELL() as in the non-UTF-8 cases (report by Markus Kuhn, 11522 patch by Robert Brady).</li> 11523 </ul> 11524 11525 <h1><a name="xterm_145" id="xterm_145">Patch #145 - 2000/9/11 - 11526 XFree86 4.0.1c</a></h1> 11527 11528 <ul> 11529 <li>changes for UTF-8 configuration (Robert Brady): 11530 <ul> 11531 <li>doublewide characters don't lose their accents when the 11532 cursor moves onto or from them (a visual bug)</li> 11533 11534 <li>fix logic in addXtermCombining, which mean that if the 11535 low byte of a cell's first combining char was 0, a 11536 following combining char would go into combining slot 1, 11537 not 2.</li> 11538 11539 <li>modify logic for cut-buffers so UTF-8 data is first 11540 converted to Latin1.</li> 11541 11542 <li>collapse surrogates, 0xfffe, 0xffff to UCS_REPL.</li> 11543 11544 <li>modify to allow xterm to to show combining characters 11545 attached to doublewidth characters.</li> 11546 11547 <li>correct bug in linewrap with -u8 option (reported by 11548 Andreas Koenig <andreas.koenig@anima.de>).</li> 11549 </ul> 11550 </li> 11551 11552 <li>several changes to PTY logic (based on request by Tim Ryan 11553 <timryan@nortelnetworks.com>). 11554 <ul> 11555 <li>modify treatment of <code>-S</code> option to to make 11556 it work with Unix98 PTY's.</li> 11557 11558 <li>restore sense of IsPts flag in <code>get_pty()</code>, 11559 which was lost in Unix98 changes.</li> 11560 11561 <li>use new functions <code>my_pty_id()</code> and 11562 <code>my_pty_name()</code> to simplify/fix strings used for 11563 utmp, wtmp identifiers.</li> 11564 11565 <li>simplify <code>get_pty()</code> function, making it 11566 have a single return point so its inputs/outputs can be 11567 identified.</li> 11568 </ul> 11569 </li> 11570 11571 <li>update config.guess and config.sub and scripts to my 11572 20000819 patch, adding cases for OS/2 EMX.</li> 11573 11574 <li>add special case for os390 compiler options to configure 11575 script (patch by Paul Gilmartin)</li> 11576 11577 <li>fix some unused-variable compiler warnings (reported by 11578 Zdenek Sekera).</li> 11579 11580 <li>split-out some string functions into xstrings.c, to use 11581 them more consistently among main.c, os2main.c and 11582 resize.c</li> 11583 11584 <li>align termcap/terminfo files, adding entries to make them 11585 match. The termcap entries are necessarily less complete than 11586 the terminfo, to fit within 1023 character per entry.</li> 11587 11588 <li>add terminfo entry for xterm-sco (SCO function keys).</li> 11589 11590 <li>modify <code>same_font_name()</code> to properly handle 11591 wildcard introduced in <code>bold_font_name()</code>, making 11592 comparison for different fonts succeed when only the normal 11593 font is specified. This is needed to decide if 1-pixel offset 11594 should be used. (reported in a newsgroup by Bart Oldeman 11595 <enbeo@enbeo.resnet.bris.ac.uk>)</li> 11596 11597 <li>correct preprocessor line for OPT_WIDE_CHARS in 11598 drawXtermText() from patch #141 which resulted in overstriking 11599 for bold fonts not working.</li> 11600 11601 <li>correct Imakefile from 4.0.1c resync so UTF-8 modules are 11602 in UTF8SRC, UTF8OBJ lists, allowing build without UTF-8 11603 support.</li> 11604 </ul> 11605 11606 <h1><a name="xterm_144" id="xterm_144">Patch #144 - 2000/8/23 - 11607 XFree86 4.0.1b</a></h1> 11608 11609 <ul> 11610 <li>remove a spurious assignment in ScreenWrite() from Robert 11611 Brady's patch which set a null at the "end" of the buffer to be 11612 written. That made the autowrap feature write a blank in the 11613 first column for the non-UTF-8 configuration, rather than the 11614 actual character (reported by Alan Citterman 11615 <alan@mticket.com>).</li> 11616 </ul> 11617 11618 <h1><a name="xterm_143" id="xterm_143">Patch #143 - 2000/8/19 - 11619 XFree86 4.0.1b</a></h1> 11620 11621 <ul> 11622 <li>add a check to ensure that <code>-class</code> command-line 11623 option is not confused with <code>-c</code> (reported by Paul 11624 Townsend <aab@aab.cc.purdue.edu>).</li> 11625 </ul> 11626 11627 <h1><a name="xterm_142" id="xterm_142">Patch #142 - 2000/8/18 - 11628 XFree86 4.0.1b</a></h1> 11629 11630 <ul> 11631 <li>correction to precompose scripts, so 0061 + 0300 will now 11632 be really be displayed as 00C0 (patch by Robert Brady 11633 <robert@susu.org.uk>).</li> 11634 11635 <li>correct macro ClassSelects() in button.c, used to hide 11636 ifdef's for OPT_WIDE_CHARS in patch #141 (reported by Andreas 11637 Paul <paula@informatik.tu-muenchen.de>).</li> 11638 11639 <li>change wcwidth.h to include stddef.h rather than wchar.h, 11640 which is not present on OpenBSD and FreeBSD (reported by 11641 Christian Weisgerber and Bram Moolenaar).</li> 11642 11643 <li>newer config.sub and config.guess, from lynx 11644 2.8.4dev.7</li> 11645 </ul> 11646 11647 <h1><a name="xterm_141" id="xterm_141">Patch #141 - 2000/8/14 - 11648 XFree86 4.0.1b</a></h1> 11649 11650 <ul> 11651 <li>changes for doublewidth and combining characters, from 11652 http://www.ecs.soton.ac.uk/~rwb197/xterm/ (integrated patch by 11653 Robert Brady). In this context, doublewidth refers to 16-bit 11654 character sets which may have glyphs occupying two cells.</li> 11655 11656 <li>add command-line option <code>-class</code>, which allows 11657 one to override xterm's resource class. Also add resource file 11658 <code>UXTerm.ad</code>, which simplifies using xterm for both 11659 8-bit character sets and UTF-8.</li> 11660 11661 <li>fixes/improvements to OPT_TCAP_QUERY logic (patches by Bram 11662 Moolenaar, Stephen P Wall).</li> 11663 </ul> 11664 11665 <h1><a name="xterm_140" id="xterm_140">Patch #140 - 2000/7/23 - 11666 XFree86 4.0.1</a></h1> 11667 11668 <ul> 11669 <li>modify Makefile.in to circumvent GNU make's built-in suffix 11670 rule for ".sh" which confuses install.sh with the "make 11671 install" target (report/patch by Paul Gilmartin).</li> 11672 11673 <li>implement an experimental control sequence which an 11674 application may use to query the terminal to determine what 11675 sequence of characters it would send for a given function key. 11676 This is ifdef'd with OPT_TCAP_QUERY (request by Bram 11677 Moolenaar).</li> 11678 11679 <li>add /usr/local to search path in CF_X_ATHENA configure 11680 macro to build with Xaw3d on OpenBSD (patch by Christian 11681 Weisgerber).</li> 11682 11683 <li>add missing <code>#undef HAVE_TERMIO_C_ISPEED</code> to 11684 xtermcfg.hin, omitted in patch #133 fix for IRIX 6.5 baudrate 11685 (report by Alain Filbois <Alain.Filbois@loria.fr>).</li> 11686 11687 <li>correct a few errors in xterm.man: font in filename example 11688 for Tektronix emulation, and description of -nul/+nul 11689 command-line options (report by Eric Fischer 11690 <enf@pobox.com>).</li> 11691 11692 <li>update config.guess and config.sub, from tin and lynx.</li> 11693 </ul> 11694 11695 <h1><a name="xterm_139" id="xterm_139">Patch #139 - 2000/6/17 - 11696 XFree86 4.0d</a></h1> 11697 11698 <ul> 11699 <li>back out change to <code>-name</code> command-line option, 11700 restoring its original behavior (as noted by David Madore, the 11701 correct interpretation of this option is the application 11702 instance rather than the application class).</li> 11703 </ul> 11704 11705 <h1><a name="xterm_138" id="xterm_138">Patch #138 - 2000/6/15 - 11706 XFree86 4.0c</a></h1> 11707 11708 <ul> 11709 <li>workaround for fixed fonts which are generated from Unicode 11710 fonts: they omit glyphs for some xterm's less-used line-drawing 11711 characters, which caused xterm to set a flag telling it to use 11712 only its internal line-drawing characters. Do not set the flag 11713 (it can be set from the popup menu), and xterm will generate 11714 only the line-drawing glyphs which actually are missing.<br> 11715 Otherwise, when used for large fonts, xterm may generate a 11716 2-pixel wide line, which can leave dots on the screen.</li> 11717 11718 <li>restore first line of 256colres.pl, omitted in 4.0c 11719 diffs.</li> 11720 </ul> 11721 11722 <h1><a name="xterm_137" id="xterm_137">Patch #137 - 2000/6/10 - 11723 XFree86 4.0b</a></h1> 11724 11725 <ul> 11726 <li>make command-line <code>-name</code> option work as 11727 documented. Apparently this was lost in X11R5 when coding to 11728 use <code>XtAppInitialize</code>.</li> 11729 11730 <li>limit numeric parameters of control sequences to 65535 to 11731 simplify checks for numeric overflow.</li> 11732 11733 <li>change index into UDK list to unsigned to guard against 11734 numeric overflow making the index negative (Taneli Huuskonen 11735 <huuskone@cc.helsinki.fi>).</li> 11736 11737 <li>change <code>sun function-keys</code> resource name to 11738 <code>sunFunctionKeys</code> to work around redefinition of the 11739 token <code>sun</code> by xrdb on Solaris. Similarly, renamed 11740 resource <code>sun keyboard</code> to 11741 <code>sunKeyboard</code> (Stephen P Wall).</li> 11742 11743 <li>change similar resource names for HP and SCO to avoid 11744 potential conflict with xrdb symbols on other systems, as well 11745 as for consistency.</li> 11746 11747 <li>reorganized the install targets in the autoconf'd Makefile, 11748 adding install-app, install-bin, install-dirs and install-man. 11749 The app-defaults class can be overridden by setting the make 11750 variable 'CLASS', simplifying customization of xterm as a 11751 Unicode terminal, e.g., CLASS=UXTerm.</li> 11752 11753 <li>add limit checks to <code>ClearInLine()</code>, 11754 <code>ScrnInsertChar()</code>, <code>ScrnDeleteChar()</code> to 11755 correct potential out-of-bounds indexing (prompted by Debian 11756 bug report #64713, which reported a problem with ICH escape 11757 sequences).</li> 11758 11759 <li>updates to config.sub and config.guess Kevin Buettner 11760 <kev@primenet.com> for elf64_ia64 Bernd Kuemmerlen 11761 <bkuemmer@mevis.de> and MacOS X.</li> 11762 11763 <li>for os390, add check for errno set to ENODEV on failure to 11764 open /dev/tty when there is no controlling terminal (patch by 11765 Paul Gilmartin).</li> 11766 11767 <li>fixes for building on Digital Unix 4.0 and AIX 4.2 (patch 11768 from H Merijn Brand <h.m.brand@hccnet.nl>).</li> 11769 11770 <li>modify DECRQSS reply for DECSCL to additionally report if 11771 the terminal is set for 8-bit controls.</li> 11772 </ul> 11773 11774 <h1><a name="xterm_136" id="xterm_136">Patch #136 - 2000/6/3 - 11775 XFree86 4.0b</a></h1> 11776 11777 <ul> 11778 <li>add a resource (<code>limitResize</code>) limiting resizing 11779 via the CSI 4 t and CSI 8 t sequences.</li> 11780 11781 <li>ignore out-of-bounds resize requests, i.e., where 11782 sign-extension or truncation of the parameters would 11783 occur.</li> 11784 </ul> 11785 11786 <h1><a name="xterm_135" id="xterm_135">Patch #135 - 2000/5/29 - 11787 XFree86 4.0b</a></h1> 11788 11789 <ul> 11790 <li>remove code introduced in #134 which made some backgrounds 11791 bold.</li> 11792 11793 <li>minor correction to format of updated $TERMCAP when adding 11794 <code>kb</code> capability for <code>ptyInitialErase</code> 11795 logic.</li> 11796 11797 <li>improved test for SVR4 definition.</li> 11798 </ul> 11799 11800 <h1><a name="xterm_134" id="xterm_134">Patch #134 - 2000/5/28 - 11801 XFree86 4.0b</a></h1> 11802 11803 <ul> 11804 <li>update URL's and mailing addresses, moved to 11805 http://dickey.his.com and dickey@herndon4.his.com</li> 11806 11807 <li>correct missing quotes in CF_TTY_GROUP configure script 11808 macro in case the script is run in batch mode.</li> 11809 11810 <li>modify ownership-check of log file to ignore the group 11811 ownership. Otherwise xterm cannot create logfiles in 11812 directories with set-gid permissions.</li> 11813 11814 <li>simplify the logic that reads termcap data.</li> 11815 11816 <li>add fallback definition for B9600 in case line speed 11817 definition for 38400 is missing (report by Jack J Woehr 11818 <jwoehr@ibm.net>, for OpenBSD 2.6).</li> 11819 11820 <li>fix: Set highlightColor, and select a region containing the 11821 text cursor. If the window loses focus, the cursor becomes 11822 hollow, with the region inside the cursor being 11823 background/foreground, unlike the rest of the selection, which 11824 is foreground/highlight (patch by Ross Paterson 11825 <ross@soi.city.ac.uk>).</li> 11826 11827 <li>add configure script tests to define SVR4, SYSV and 11828 USE_POSIX_WAIT, which enables xterm to compile on Solaris 7 and 11829 SCO Openserver without imake, though there are still a few 11830 features for the latter which require <code>sco</code> to be 11831 predefined.</li> 11832 11833 <li>patches from Stephen P Wall: 11834 <ul> 11835 <li>add support for two Sun-specific function keys. These 11836 keys are labeled F11 and F12 on Sun Type 5 keyboards, but 11837 return SunXK_F36 and SunXK_F37. Support will only be 11838 compiled in if the header file <X11/Sunkeysym.h> 11839 exists and contains the appropriate symbol definitions. The 11840 keycodes for the DEC keycodes were arbitrary unused codes, 11841 but the ones for the Sun keycodes are what cmdtool and 11842 shelltool actually send.</li> 11843 11844 <li>add <code>colorRV</code> and <code>colorRVMode</code> 11845 resources to allow specifying a color to use for reverse 11846 video, similar to the existing UL, BD, and BL modes.</li> 11847 11848 <li>add <code>alwaysUseMods</code> resource, to override 11849 check if <code>alt</code> or <code>meta</code> modifiers 11850 are used in <code>translations</code> resource. Revamped 11851 the code to calculate the modifier value, and included Meta 11852 if alwaysUseMods is TRUE, using values 9-16.</li> 11853 </ul> 11854 </li> 11855 11856 <li>fixes for os390 (Paul Gilmartin): 11857 <ul> 11858 <li>regularize the definition of CONTROL() and remove an 11859 acknowledged "trial and error" table.</li> 11860 11861 <li>translate "^?" into A2E(0177) which is the EBCDIC "DEL" 11862 rather than plain 0177 which is the EBCDIC quotation 11863 mark.</li> 11864 11865 <li>modify <code>xtermMissingChar()</code> so that EBCDIC 11866 codes 128-159 are not rendered as blanks by X server 11867 running on Solaris, which sees those as control 11868 characters.</li> 11869 11870 <li>make debugging traces (configure --enable-trace) work 11871 properly with EBCDIC.</li> 11872 </ul> 11873 </li> 11874 </ul> 11875 11876 <h1><a name="xterm_133" id="xterm_133">Patch #133 - 2000/5/2 - 11877 XFree86 4.0a</a></h1> 11878 11879 <ul> 11880 <li>add substitutions in autoconf'd Makefile for CPPFLAGS, 11881 LDFLAGS and AWK (reported by Neil Bird).</li> 11882 11883 <li>correct uninitialized <code>childstat</code> variable from 11884 patch #131 in <code>creat_as()</code> function, which caused 11885 logging to not work on Solaris, whose <code>waitpid()</code> 11886 function does not initialize its parameter. Add check for EINTR 11887 on return from <code>waitpid()</code> as well (reported by Neil 11888 Bird <neil.bird@rdel.co.uk>).</li> 11889 11890 <li>remove a redundant check for working <code>setuid()</code> 11891 function introduced in patch #132. Greg Smith reports that this 11892 does not work as intended on os390.</li> 11893 11894 <li>change line speed from 9600bd to 38400bd, to accommodate 11895 people who mistakenly use $TERM set to <em>vt100</em>, to 11896 reduce the effect of padding associated with this terminal 11897 type.</li> 11898 11899 <li>add configure script check for IRIX 6.5's redefinition of 11900 baud rates associated with <code>struct termio</code>, to 11901 correct a situation where the baud rate was initialized to zero 11902 (reported by Andrew Isaacson <adi@lcse.umn.edu>).</li> 11903 11904 <li>remove unused configure script check for VDISABLE.</li> 11905 </ul> 11906 11907 <h1><a name="xterm_132" id="xterm_132">Patch #132 - 2000/4/11 - 11908 XFree86 4.0a</a></h1> 11909 11910 <ul> 11911 <li>undo an incorrect change from patch #113 caused the right 11912 scrollbar to be positioned incorrectly when re-enabling it 11913 (analysis by D Roland Walker).</li> 11914 11915 <li>add ctrlFKeys resource, replacing constant for adjusting 11916 control-F1 to control-F12 to VT220-style F10-F20. The resource 11917 changes the constant 12 to a default value of 10 (request by 11918 Jim Knoble <jmknoble@pobox.com>).</li> 11919 11920 <li>correct ifdef'ing for conflict between definitions in AIX's 11921 <sys/select.h> and <X11/Xpoll.h> (reported by Clint 11922 Olsen).</li> 11923 11924 <li>add checks for return-values of getutid(), initgroups() and 11925 setuid() in main.c, as well as modifying ifdef's for __osf__ to 11926 include tty-group and WTMP logic (adapted from patch by Paul 11927 Szabo <psz@maths.usyd.edu.au>)</li> 11928 11929 <li>modify resize.c to build and work on os390 (uses EBCDIC) 11930 (adapted from patch by Phil Sidler 11931 <Phil.Sidler@airborne.com>)</li> 11932 11933 <li>use Ires(), Bres() and Sres() macros to simplify resource 11934 list in charproc.c</li> 11935 11936 <li>resync with XFree86 4.0a: 11937 <ul> 11938 <li>correct a typo in os2main.c (Holger Veit, from 11939 4.0a).</li> 11940 </ul> 11941 </li> 11942 </ul> 11943 11944 <h1><a name="xterm_131" id="xterm_131">Patch #131 - 2000/3/3 - 11945 XFree86 3.9.18b</a></h1> 11946 11947 <ul> 11948 <li>improve logfile security (integrated patch by Branden 11949 Robinson) 11950 <ul> 11951 <li>make the <code>creat_as()</code> function more strict 11952 by using O_EXCL rather than O_APPEND.</li> 11953 11954 <li>fixes to make DEBUG ifdef's compile/run, including 11955 making the debug logfile more unique by appending a 11956 timestamp to its name.</li> 11957 11958 <li>include <term.h> in resize.c, to fix a 11959 missing-prototype warning.</li> 11960 </ul> 11961 </li> 11962 11963 <li>modified <code>creat_as()</code> a little more, retaining 11964 the ability to append to a logfile If the user specifies the 11965 name. Also, check if the opened file (which patch #130 ensures 11966 is owned by the effective user) is not writable by other 11967 users.</li> 11968 11969 <li>use <code>creat_as()</code> logic to make tek4014 11970 screen-copy more secure (noted by Branden Robinson).</li> 11971 11972 <li>ifdef'd some of Branden's changes to build/work on older 11973 machines.</li> 11974 11975 <li>correct missing initialization of the <code>.mode</code> 11976 flag in <code>ColorRes</code> struct, from patch #129. This 11977 worked on Linux because <code>malloc()</code> zeroes memory on 11978 that platform (reported by Christian Weisgerber).</li> 11979 11980 <li>modify logic for <code>deleteIsDEL</code> resource so it 11981 has internally 3 states: unspecified, true and false. If 11982 unspecified, the keyboard type determines whether the Delete 11983 key transmits <code><ESC>[3~</code> or <code>\177</code>, 11984 and the popup menu entry reflects the internal state. 11985 Otherwise, the popup menu entry overrides the keyboard type 11986 (suggested by Dr Werner Fink, to make it simpler to set 11987 resources that imitate the legacy X11R6 xterm).</li> 11988 </ul> 11989 11990 <h1><a name="xterm_130" id="xterm_130">Patch #130 - 2000/3/1 - 11991 XFree86 3.9.18a</a></h1> 11992 11993 <ul> 11994 <li>modify <code>scroll-forw()</code> and 11995 <code>scroll-back()</code> actions, adding a third parameter 11996 which will direct xterm to ignore the action when mouse 11997 reporting is enabled. This is needed for the wheel mouse to be 11998 used to report to the application rather than scroll the 11999 window.</li> 12000 12001 <li>add menu entry and action to allow disabling xterm's 12002 assumption that the current font contains line-drawing 12003 characters if the font cells 1-31 are nonempty. Some fonts may 12004 have other characters (reported by Bruno Betro 12005 <bruno@iami.mi.cnr.it>).</li> 12006 12007 <li>add a check in <code>creat_as()</code> to ensure that the 12008 user really owns the logfile that has been opened.</li> 12009 12010 <li>add logic to implement SCO function-keys. (This is really 12011 incomplete, since I intend to revisit this and make xterm able 12012 to emulate scoansi better than just the function-keys).</li> 12013 12014 <li>add configure script option --enable-sco-fkeys, minor 12015 related fixes (patch by Dr Werner Fink).</li> 12016 12017 <li>fix typos in ctlseqs.ms (reported by Bram Moolenaar)</li> 12018 12019 <li>fix typo in sinstall.sh default for $TST_PROG (reported by 12020 Paul Gilmartin <pg@sweng.stortek.com>)</li> 12021 </ul> 12022 12023 <h1><a name="xterm_129" id="xterm_129">Patch #129 - 2000/2/26 - 12024 XFree86 3.9.18a</a></h1> 12025 12026 <ul> 12027 <li>improve initialization of ANSI colors by delaying 12028 allocation until each color is first used.</li> 12029 12030 <li>remove ifdef that prevented colorBD/colorUL/colorBL 12031 resources from working when 256-color configuration was built 12032 (reported by Todd Larason).</li> 12033 12034 <li>fix some minor inconsistencies in terminfo (Debian 12035 #58530).</li> 12036 </ul> 12037 12038 <h1><a name="xterm_128" id="xterm_128">Patch #128 - 2000/2/17 - 12039 XFree86 3.9.18</a></h1> 12040 12041 <ul> 12042 <li>correct logic for <code>oldXtermFKeys</code> resource, 12043 fixes a core dump when attempting to set it from the 12044 command-line (reported by Dr Werner Fink).</li> 12045 12046 <li>correct ifdef for meta-sends-escap so configure 12047 --disable-num-lock builds.</li> 12048 </ul> 12049 12050 <h1><a name="xterm_127" id="xterm_127">Patch #127 - 2000/2/12 - 12051 XFree86 3.9.17e</a></h1> 12052 12053 <ul> 12054 <li>add resource, popup menu entry and control sequence to 12055 allow changing the Delete key to send either DEL or the 12056 VT220-style Remove escape sequence.</li> 12057 12058 <li>remove logic for metaSendsEscape that would allow xterm to 12059 send <code><ESC>[3~</code> before a function key that 12060 would begin with <code><ESC>[3~</code> (request by 12061 Christian Weisgerber).</li> 12062 12063 <li>add missing action and documentation for 12064 meta-sends-escape.</li> 12065 12066 <li>correct a few typos in ctlseqs.ms (incorrect code for Cyan 12067 color)</li> 12068 </ul> 12069 12070 <h1><a name="xterm_126" id="xterm_126">Patch #126 - 2000/2/8 - 12071 XFree86 3.9.17c</a></h1> 12072 12073 <ul> 12074 <li>ensure that xterm will automatically activate the UTF-8 12075 mode whenever the name of the locale environment variable 12076 suggests that a UTF-8 locale is in use (patch by Markus Kuhn). 12077 This will help that by simply setting LC_CTYPE an entire system 12078 can be switched over to UTF-8, without users having to remember 12079 the UTF-8 command line options ("-u8", etc.) of the various 12080 applications. Command line options and X resource entries can 12081 still be used to override this default choice.</li> 12082 12083 <li>add old function-keys control sequences and popup menu 12084 entry, for compatibility with legacy X11R6 xterm.</li> 12085 12086 <li>revert translation of editing keypad "Delete" key to legacy 12087 \177.</li> 12088 12089 <li>simplify the color-resource data expressions with macro 12090 COLOR_RES, for later use in restructuring color 12091 initialization.</li> 12092 12093 <li>change encoding of wheel mouse (buttons 4 and 5) to avoid 12094 conflict with legacy mouse modifiers (suggested by Bram 12095 Moolenaar).</li> 12096 </ul> 12097 12098 <h1><a name="xterm_125" id="xterm_125">Patch #125 - 2000/1/31 - 12099 XFree86 3.9.17c</a></h1> 12100 12101 <ul> 12102 <li>make this work on OpenVMS (integrated patch by David 12103 Mathog).</li> 12104 12105 <li>rename some functions, e.g., <code>Index</code> to 12106 <code>xtermIndex</code> so that ports such as VMS which link 12107 externals ignoring case will not have library conflicts 12108 (reported by David Mathog).</li> 12109 12110 <li>correct logic of <code>do_reversevideo()</code>, which did 12111 not update the corresponding popup menu check mark (reported by 12112 David Mathog, this was a detail overlooked in patch #94).</li> 12113 12114 <li>change TRACE macro so semicolon is not within definition, 12115 making <em>indent</em> and similar programs work better.</li> 12116 12117 <li>add <code>depend</code> rule to Makefile.in</li> 12118 12119 <li>modify logic of boldColors resource to suppress it if an 12120 extended color control has been used, e.g., for 88-color or 12121 256-color mode (patch by Todd Larason).</li> 12122 12123 <li>revise logic that handles menus and input translation for 12124 keyboard type so only one can be selected at a time.</li> 12125 12126 <li>restore kdch1=\177 for the Sun function-key type, and make 12127 the the Delete key send DEL (\177) if the oldXtermFKeys 12128 resource is set.</li> 12129 12130 <li>rephrase logic and ifdef's for POSIX VDISABLE to avoid 12131 preprocessor expression that will not compile on NetBSD/x86 12132 1.4.1 (reported by Takaaki Nomura 12133 <amadeus@yk.rim.or.jp>).</li> 12134 </ul> 12135 12136 <h1><a name="xterm_124" id="xterm_124">Patch #124 - 2000/1/27 - 12137 XFree86 3.9.17b</a></h1> 12138 12139 <ul> 12140 <li>change coding of editing keypad's "Delete" key to 12141 <escape>[3~, in the default (Sun/PC) keyboard mode. This 12142 makes the terminfo kdch1 capability independent of the coding 12143 of the backarrow key, which sends either backspace (8) or DEL 12144 (127). The reason for doing this (compatibility with the 12145 <em>screen</em> program) outweighs the choice of DEL (127) 12146 which was used in X11R5/X11R6 xterms. The <em>screen</em> 12147 program translates whatever matches kdch1 into 12148 <escape>[3~, even if it happens to be the stty erase 12149 character.</li> 12150 12151 <li>add encoding for control/?, to work around xmodmap or key 12152 translations which may confuse backspace and delete. A 12153 control/? will send DEL (127), and a control/H will of course 12154 send backspace (8).</li> 12155 12156 <li>add encoding for kcbt to <escape>[Z (fixes Debian 12157 #54840).</li> 12158 12159 <li>minor correction to logic that encodes Sun and DEC function 12160 keys to avoid sending an escape sequence if the key symbol is 12161 not found in xterm's lookup table.</li> 12162 12163 <li>simplify ifdef's in main.c for POSIX VDISABLE so the "^-" 12164 pattern is more likely to be implemented when <em>imake</em> 12165 configures xterm (fixes Debian #55105).</li> 12166 12167 <li>change manpage to make it clearer what codes are sent by 12168 the backarrow key.</li> 12169 </ul> 12170 12171 <h1><a name="xterm_123" id="xterm_123">Patch #123 - 2000/1/22 - 12172 XFree86 3.9.17a</a></h1> 12173 12174 <ul> 12175 <li>add a note reserving OSC 51 for use in Emacs shell (request 12176 by Rob Mayoff <mayoff@dqd.com>).</li> 12177 12178 <li>correct a missing backslash in xterm-vt220 termcap.</li> 12179 12180 <li>cleanup remaining quoted includes, preferring bracketed 12181 form.</li> 12182 12183 <li>minor configure-script macro updates from tin and 12184 vile.</li> 12185 12186 <li>add configure-script option for using utempter library, 12187 adapted from Redhat 6.1 patch for XFree86 3.3.5</li> 12188 12189 <li>resync with XFree86 3.9.17a: 12190 <ul> 12191 <li>correction to QNX support (Frank Guangxin Liu)</li> 12192 12193 <li>some cosmetic changes that did not correct any reported 12194 problems.</li> 12195 </ul> 12196 </li> 12197 </ul> 12198 12199 <h1><a name="xterm_122" id="xterm_122">Patch #122 - 1999/12/28 - 12200 XFree86 3.9.16f</a></h1> 12201 12202 <ul> 12203 <li>move the suggested wheel-mouse button translations into 12204 charproc.c to simplify customization. Correct some minor logic 12205 errors in the support for buttons 4 and 5, used for wheel mice 12206 (reported by Bram Moolenaar).</li> 12207 12208 <li>implement <em>metaSendsEscape</em> resource, with 12209 corresponding control sequence and menu entry. Like 12210 <em>eightBitInput</em>, this causes xterm to send ESC prefixing 12211 the given key, but applies to all keys and is independent of 12212 the 8-bit/7-bit terminal setting. (requests by Alexander V 12213 Lukyanov and Marc Feeley).</li> 12214 12215 <li>correct potential indexing with negative subscript in 12216 udk_lookup(), (reported by Ian Collier 12217 <Ian.Collier@comlab.ox.ac.uk>).</li> 12218 12219 <li>modify configure script that sets TERMINFO_DIR to use 12220 ${prefix} rather than /usr if the --prefix option was specified 12221 (request by Zdenek Sekera <zs@sgi.com>).</li> 12222 12223 <li>modify checks for repeat-character control sequence to test 12224 the character class against xterm's state table, rather than 12225 the isprint() macro (patch by Alexander V Lukyanov).</li> 12226 12227 <li>change several functions to macros to improve speed</li> 12228 12229 <li>two corrections to simulation of bold font via 12230 overstriking: 12231 <ul> 12232 <li>use clipping to avoid leaving trash at end of the text, 12233 and</li> 12234 12235 <li>add brackets so wide-character logic does not 12236 fall-through into the overstriking logic (reported by Marc 12237 Feeley <feeley@IRO.UMontreal.CA>)</li> 12238 </ul> 12239 </li> 12240 12241 <li>add several entries to termcap file to make it have the 12242 same set of aliases as the terminfo file.</li> 12243 12244 <li>scale the color values used for xterm-256color terminfo 12245 entry to 0..1000, as expected by ncurses.</li> 12246 12247 <li>change xterm-r6 terminfo definitions for F1-F4 to match 12248 program.</li> 12249 12250 <li>Add QNX/Neutrino support (Frank Guangxin Liu 12251 <frank@ctcqnx4.ctc.cummins.com>)</li> 12252 </ul> 12253 12254 <h1><a name="xterm_121" id="xterm_121">Patch #121 - 1999/11/14 - 12255 XFree86 3.9.16c</a></h1> 12256 12257 <ul> 12258 <li>change label on "Sun/PC Keyboard" popup menu entry to 12259 "VT220 Keyboard", since the checked state corresponds to VT220 12260 rather than Sun/PC.</li> 12261 12262 <li>add configure test CF_UTMP_UT_XSTATUS to handle the 12263 variants of utmp exit status (reports by Dave Ellement, Jeremie 12264 Petit, Tomas Vanhala).</li> 12265 12266 <li>amend treatment of ALT key (see <a href="#xterm_94">patch 12267 #94</a>) so that if ALT is used as a modifier in key 12268 translations, then no parameter will be sent in escape 12269 sequences for Sun/PC function keys (request by Dr Werner 12270 Fink).</li> 12271 12272 <li>modify default for OPT_I18N_SUPPORT to assume that 12273 <code>XtSetLanguageProc()</code> is available in X11R5. 12274 <p>Caveat: <code>XtSetLanguageProc()</code> was added fairly 12275 late in the X11R5 patches, and some vendors shipped buggy 12276 versions of this function (request by Tomas Vanhala).</p> 12277 </li> 12278 12279 <li>correct configure macro CF_SYSV_UTMP to test-link with 12280 functions consistent with the header, e.g., getutent() for 12281 utmp.h and getutxent() for utmpx.h (reported by Greg 12282 Smith).</li> 12283 12284 <li>modify terminfo entry for <code>xterm-xfree86</code> to 12285 reflect modifiers for shift and control (from a patch by 12286 Alexander V Lukyanov).</li> 12287 12288 <li>modify terminfo entry for <code>xterm-sun</code> to match 12289 the function-key definitions in ncurses. The pageup/pagedown 12290 and related function keys correspond to the Sun keyboard, which 12291 does not necessarily correspond with X's notion of those 12292 keys.</li> 12293 12294 <li>modify treatment of XK_Delete keysym so it transmits 12295 parameterized VT220-style <code><ESC>[3~</code> if 12296 modifiers (shift, control alt) are given (request by Alexander 12297 V Lukyanov).</li> 12298 12299 <li>corrected misspelled resource name in command-line option 12300 for HP function keys.</li> 12301 </ul> 12302 12303 <h1><a name="xterm_120" id="xterm_120">Patch #120 - 1999/10/28 - 12304 XFree86 3.9.16c</a></h1> 12305 12306 <ul> 12307 <li>refine the change to <code>SGR_Background()</code> in patch 12308 #119, by not flushing the pending scrolling operation if the 12309 background color is not actually changing. This combination 12310 occurs when using color-ls to display a long listing, since 12311 each line ends with an SGR0 which affects only the foreground 12312 color. The unnecessary flushing made it noticeably slower 12313 (reported by D Roland Walker <walker@pobox.com>).</li> 12314 12315 <li>remove obsolete documentation about modifiers which can be 12316 returned in mouse tracking mode, and modify logic to ignore 12317 modifiers other than the existing ones, e.g., NumLock (prompted 12318 by discussions with Christian Weisgerber and Brad Pepers 12319 <brad@linuxcanada.com>).</li> 12320 12321 <li>use free bit from obsolete shift-modifier coding of mouse 12322 tracking button events to encode buttons 4 and 5, e.g., for a 12323 wheel mouse (requests by Brad Pepers and Bram Moolenaar).</li> 12324 12325 <li>correct a place where the ptyInitialErase logic did not set 12326 the backarrowKey state, and modify it further to use tgetstr() 12327 rather than parse the termcap data returned from tgetent() so 12328 the ptyInitialErase logic will work when xterm is linked with a 12329 terminfo library (based on a patch by Dr Werner Fink 12330 <werner@suse.de>).</li> 12331 12332 <li>fix definition of HAVE_UTMP_UT_HOST for ISC configuration 12333 (patch by Michael Rohleder).</li> 12334 12335 <li>improve configure script's utmp tests (based on reports by 12336 Greg Smith for os390, and David Ellement for HPUX).</li> 12337 12338 <li>modify sinstall.sh to use uid=0 rather than 'root' to 12339 determine if the installer is privileged. This is needed on 12340 some systems since more than one account may be privileged 12341 (report by Greg Smith).</li> 12342 12343 <li>add an application resource, <code>messages</code> (and a 12344 corresponding -/+mesg option) which controls the initial 12345 permission on the terminal: if messages is set to true (the 12346 default), behavior is as without the patch; if it is set to 12347 false (as per -mesg), the terminal is opened in mode 0600, thus 12348 producing the effect of the <code>mesg n</code> command. This 12349 is useful for users who want to redirect all their messages to 12350 one particular xterm: it is more pleasant to do this with xterm 12351 resources than with explicit calls to the <code>mesg</code> 12352 program (patch, description by David Madore 12353 <david.madore@ens.fr>).</li> 12354 </ul> 12355 12356 <h1><a name="xterm_119" id="xterm_119">Patch #119 - 1999/10/16 - 12357 XFree86 3.9.16c</a></h1> 12358 12359 <ul> 12360 <li>add responses (DA and DSR) for DEC locator mode</li> 12361 12362 <li>add coding for ANSI color to DA response</li> 12363 12364 <li>implement UTF-8 translation for Media Copy (print) 12365 operations.</li> 12366 12367 <li>implement vt320 control sequences for Print Composed Main 12368 Display and for Print All Pages. The latter directs xterm to 12369 print the current screen as well as the scrollback buffer.</li> 12370 12371 <li>correct error in _GNU_SOURCE configure test, which left it 12372 always defined.</li> 12373 12374 <li>add more information, i.e., with strerror for some system 12375 calls in the main program which may fail due to insufficient 12376 permissions (prompted by a problem report for <code>-C</code> 12377 by Jeremie Petit <Jeremie.Petit@digital.com>).</li> 12378 12379 <li>add workaround for conflict between <X11/Xpoll.h> and 12380 <sys/select.h> on AIX 4.3 (Richard Griswold 12381 <griswold@acm.org>).</li> 12382 12383 <li>add configure script test to resolve conflict between 12384 between <X11/Xpoll.h> and <sys/select.h></li> 12385 12386 <li>modify translation of UTF-8 sequences to reject "overly 12387 long" variations (patch by Markus Kuhn).</li> 12388 12389 <li>remove <code>utf8controls</code> resource, since Markus' 12390 change removes the corresponding logic.</li> 12391 12392 <li>correct a case where colors were not rendered properly. 12393 This happened when an application inserted several lines, then 12394 changed colors. If this was done all in one write, then there 12395 would be no intervening refresh, and the new color was applied 12396 to the pending scrolling operation which was awaiting the next 12397 refresh (reported by Stephane Chazelas 12398 <Stephane_Chazelas@Raytheon.com>).</li> 12399 </ul> 12400 12401 <h1><a name="xterm_118" id="xterm_118">Patch #118 - 1999/10/5 - 12402 XFree86 3.9.16b</a></h1> 12403 12404 <ul> 12405 <li>refine configure test for utmp versus utmpx, to build on 12406 HP-UX 10.x (reported by David Ellement).</li> 12407 12408 <li>move the configure check for <code>const</code> after the 12409 check for ANSI C compiler options, since those may be required 12410 to make it work properly on HP-UX.</li> 12411 12412 <li>add configure test for defining 12413 <code>_GNU_SOURCE</code></li> 12414 12415 <li>correction to <em>-hold</em> option, ensure that if data is 12416 already in the output buffer that it will be displayed before 12417 closing the PTY.</li> 12418 12419 <li>move the configure checks for setuid install of xterm into 12420 a script to avoid installing it setuid'd to a non-root user 12421 (reported by Adam Sulmicki <adam@cfar.umd.edu>).</li> 12422 12423 <li>correct configure script's check for termcap.h to avoid 12424 using ncurses' version of it on systems that have a working 12425 <code>tgetent()</code> function. This is needed to make 12426 <code>resize</code> work properly.</li> 12427 12428 <li>fix some typography in ctlseqs.ms description of DEC 12429 locator events (reported by Stephen P Wall).</li> 12430 </ul> 12431 12432 <h1><a name="xterm_117" id="xterm_117">Patch #117 - 1999/9/29 - 12433 XFree86 3.9.16b</a></h1> 12434 12435 <ul> 12436 <li>change order of tests in configure script for utmp and 12437 utmpx to test utmpx first, to compile on Solaris (reported by 12438 Leena Heino <liinu@uta.fi> and Patrik Hagglund 12439 <patha@ida.liu.se>).</li> 12440 12441 <li>add a configure test for utmp.ut_xtime, needed for SCO 12442 Openserver, and for lastlog, needed for Redhat 6.0, to refine 12443 the utmp/utmpx auto-configure.</li> 12444 12445 <li>remove a spurious comma in an #undef (reported by David 12446 Green <greendjf@cvhp152.marconicomms.com> and David 12447 Ellement <ellement@sdd.hp.com> both on HP-UX, whose 12448 compiler does care about syntax).</li> 12449 12450 <li>change ifdef's using __CYGWIN32__ to __CYGWIN__ (reported 12451 by Suhaib M. Siddiqi <Ssiddiqi@InspirePharm.Com>, who is 12452 told that the next Cygnus release will drop that symbol in 12453 their next release).</li> 12454 12455 <li>minor cleanup of ifdef's for makeColorPair (patch by 12456 Stephen P Wall).</li> 12457 12458 <li>work around problem observed in XFree86 3.3.5 (patch by 12459 Alexander V Lukyanov, Redhat #5419). From the problem report: 12460 <blockquote> 12461 <p>xterm consumes cpu when selecting text with mouse 12462 (holding down left mouse button) and when a program working 12463 under the xterm outputs something to stdout.</p> 12464 12465 <p>Easy way to reproduce:<br> 12466 <code>while :; do echo aaa; sleep 1; done</code><br> 12467 (while this runs, select text and hold down left mouse 12468 button) watch cpu load.<br> 12469 release left mouse button - spinning stops.</p> 12470 </blockquote> 12471 </li> 12472 </ul> 12473 12474 <h1><a name="xterm_116" id="xterm_116">Patch #116 - 1999/9/25 - 12475 XFree86 3.9.16a</a></h1> 12476 12477 <ul> 12478 <li>modify warning if change-ownership of PTY fails; some 12479 configurations may not happen to have old-style pty's (reported 12480 by Bob Maynard).</li> 12481 12482 <li>improve check in configure script for group ownership of 12483 installed xterm; some platforms use the -g option of ls to 12484 toggle group off rather than on (reported by Greg Smith).</li> 12485 12486 <li>minor improvement to toolbar geometry, to make it not 12487 resizable. This still is not satisfactory (but is usable) since 12488 the toolbar overlaps the xterm widget if the window is resized 12489 to make it smaller. It appears that some work is needed for the 12490 xterm widget's geometry management to make it function 12491 properly.</li> 12492 12493 <li>implement configure script tests for utmp, tty group.</li> 12494 12495 <li>implement <em>-hold</em> option, allowing users to retain 12496 the window after a shell has exited (this is recently an FAQ, 12497 but prompted by a comment by Joachim Plaettner-Hochwarth 12498 <plaettner@aem.umn.edu> in comp.unix.programmer, that the 12499 IRIX winterm provides this option).</li> 12500 12501 <li>add support for DEC Locator control sequences for xterm 12502 (integrated patch by Stephen P Wall): 12503 12504 <pre> 12505 DECEFR, "Enable Filter Rectangle" 12506 DECELR, "Enable Locator Reports" 12507 DECSLE, "Select Locator Events" 12508 DECRQLP, "Request Locator Position" 12509</pre> 12510 <p>This allows the xterm mouse to be used with applications 12511 that use the DEC Locator sequences, such as VAX Tpu, or SMG$ 12512 based applications.</p> 12513 </li> 12514 12515 <li>improve print action (patch by Matthias Baake). From his 12516 notes, 12517 <ul> 12518 <li>Bug 1<br> 12519 Underlined text is preceded by ESC [0;2m . This should 12520 be ESC [0;4m , ESC [2m doesn't seem to have 12521 any effect. (print.c/send_SGR)</li> 12522 12523 <li>Bug 2<br> 12524 The check for the last non-empty column (while (last > 12525 0) ... in print.c/printLine) omits the rightmost column of 12526 the screen, the loop must start with last = 12527 screen->max_col+1 instead of last = 12528 screen->max_col.</li> 12529 12530 <li>Bug 3<br> 12531 Any attributes of the first character (and of all 12532 immediately following characters with the same attributes) 12533 are ignored. The variable attr (print.c/printLine) should 12534 be initialized with 0, not with *a & SGR_MASK.</li> 12535 </ul> 12536 </li> 12537 </ul> 12538 12539 <h1><a name="xterm_115" id="xterm_115">Patch #115 - 1999/9/18 - 12540 XFree86 3.9.16a</a></h1> 12541 12542 <ul> 12543 <li>integrated changes by Stephen P Wall to implement an 12544 88-color model for systems where 256-colors cannot be 12545 allocated.</li> 12546 12547 <li>when 256-color configuration is compiled, colored bold and 12548 underlining is not available; ifdef'd to avoid possible odd 12549 effects in this case (reported by Stephen P Wall).</li> 12550 12551 <li>add resource <em>cacheDoublesize</em>, to limit the caching 12552 of font information for double-sized characters. This addresses 12553 a problem reported by Aryeh Koenigsberg for X terminals with 12554 limited font memory.</li> 12555 12556 <li>modify treatment of line-drawing characters in UTF-8 mode 12557 so that the Unicode values are used rather than the C0 codes 12558 for storing the translated characters (request by Markus 12559 Kuhn).</li> 12560 </ul> 12561 12562 <h1><a name="xterm_114" id="xterm_114">Patch #114 - 1999/9/15 - 12563 XFree86 3.9.16</a></h1> 12564 12565 <ul> 12566 <li>add configure script checks for Athena headers and 12567 libraries under /usr/contrib to work on HPUX (reported by 12568 several people: David Nixon <djn@csc.liv.ac.uk> Aryeh 12569 Koenigsberg <aryeh.koenigsberg@telrad.co.il> Johannes 12570 Mähner <johanm@camline.com> Andrew Gaylard 12571 <andrew.gaylard@bsw.co.za>).</li> 12572 12573 <li>add check to configure script if xterm is installed setgid 12574 rather than setuid, since wtmp and utmp may be installed with 12575 group-writable permissions other than root (based on Debian bug 12576 report #7112 by Bo Branten <bosse@ing.umu.se>).</li> 12577 12578 <li>rewrote logic that removes data from termcap entry, e.g., 12579 for titeInhibit, to make it less likely to remove the wrong 12580 data.</li> 12581 12582 <li>correct logic which checks for missing characters used for 12583 line drawing. The 0 character was tested unnecessarily, leading 12584 to some inefficiency when rendering.</li> 12585 12586 <li>change termcap capability which is used as input or output 12587 of ptyInitialErase logic from <em>kD</em> to <em>kb</em>. 12588 Christian Weisgerber <naddy@mips.rhein-neckar.de> pointed 12589 out in effect that <em>kD</em> (in terminfo <em>kdch1</em>) 12590 should correspond to the control sequence for <em>dch1</em>, 12591 which deletes from the current position toward the right.</li> 12592 12593 <li>check for failure to change ownership of the PTY device and 12594 warn when xterm is running setuid'd to root. This was reported 12595 to happen on the FreeBSD/NetBSD/OpenBSD systems as a result of 12596 the chflags() call.</li> 12597 12598 <li>add xterm-noapp terminfo entry to illustate a nominally 12599 bash-compatible terminal description.</li> 12600 </ul> 12601 12602 <h1><a name="xterm_113" id="xterm_113">Patch #113 - 1999/8/15 - 12603 XFree86 3.9.15b</a></h1> 12604 12605 <p>Several fixes. The main one is a first draft of pulldown 12606 menus. It's not complete (I have some minor/annoying geometry 12607 problems to correct), but is usable. Once it's complete I plan to 12608 add a menu to support additional selections that won't fit on the 12609 current popup menus. Also, this fits into my longterm plan to 12610 allow configuring with Motif libraries.</p> 12611 12612 <ul> 12613 <li>correct error in input conversion for NRC mode (reported by 12614 Stefan Traby <stefan@sime.com>).</li> 12615 12616 <li>fix initialization of num_lock data in Misc struct (since 12617 those fields of the reference widget aren't initialized), and 12618 add logic to deal with XVision whose NumLock key does not 12619 transmit but does alter keypad state.</li> 12620 12621 <li>correct a missing return-value in get_pty(), for SCO</li> 12622 12623 <li>add E2A fix for backspace (patch by Greg Smith), i.e.,<br> 12624 #define VAL_INITIAL_ERASE A2E(127)</li> 12625 12626 <li>correct foreground color within cursor outline when the 12627 window is unfocused (reported by Stephane Chazelas).</li> 12628 12629 <li>corrected position of scrollbar set in ResizeScrollBar(), 12630 which left it positioned incorrectly if the right scrollbar 12631 were enabled from the popup menu but was not initially enabled. 12632 <p>I have noticed some additional problems with 12633 right-scrollbar on X11R5 which I will correct later.</p> 12634 </li> 12635 12636 <li>integrate changes by Jean-Claude Michot for QNX from 12637 XFree86 3.3.4c</li> 12638 12639 <li>add resources menuBar/MenuBar, menuHeight/MenuHeight for 12640 later use in toolbar geometry.</li> 12641 12642 <li>add configure option --enable-toolbar</li> 12643 12644 <li>add missing definition to make ziconbeep logic not 12645 compile-in when configure script disables it.</li> 12646 12647 <li>add configure-check for input-method support in X 12648 libraries</li> 12649 </ul> 12650 12651 <h1><a name="xterm_112" id="xterm_112">Patch #112 - 1999/7/17 - 12652 XFree86 3.9Pw</a></h1> 12653 12654 <ul> 12655 <li>add null-pointer check to FlushLog(), fixes a core dump 12656 when both -l and -lf options are used when xterm is configured 12657 with wide-character support.</li> 12658 12659 <li>remove "ISO" case for SD, which was due to a typographical 12660 error in ECMA-48 (reported by Paul Williams 12661 <paul@celigne.co.uk> for vttest).</li> 12662 12663 <li>add "FILES" section to manpage.</li> 12664 12665 <li>generate header file to initialize default resources for 12666 colors 16-255.</li> 12667 12668 <li>fixes for os390 (Greg Smith): 12669 <ul> 12670 <li>add README.os390</li> 12671 12672 <li>use the pty_search() function to find an available 12673 pty/tty pair.</li> 12674 12675 <li>move E2A() call out of getXtermCell() to SaveText() 12676 function so it will be available in all 12677 configurations.</li> 12678 </ul> 12679 </li> 12680 12681 <li>patches by Todd Larason: 12682 <ul> 12683 <li>enable SGR 48 5 in ISO color mode, not just 256 color 12684 mode</li> 12685 12686 <li>change configure's --disable-256-color option to 12687 --enable-256-color, to match its effect</li> 12688 12689 <li>fix OSC 4 xx ? (report ansi color) to report a string 12690 which can actually be used to set the color back</li> 12691 12692 <li>fix OSC 4 xx yy (change ansi color) to not allow 12693 setting colors > 15 in 16 color mode</li> 12694 12695 <li>simplify the COLOR_ settings a bit in ptyx.h, along 12696 with setting NUM_ANSI_COLORS needed for #1 and #4 12697 above</li> 12698 12699 <li>correct string-terminator code passed for reference to 12700 OSC responses; when in 7-bit mode, only the final byte of 12701 ST was seen.</li> 12702 12703 <li>Allow multiple color #;name pairs in OSC 4, and 12704 document changes to match.</li> 12705 </ul> 12706 </li> 12707 </ul> 12708 12709 <h1><a name="xterm_111" id="xterm_111">Patch #111 - 1999/7/10 - 12710 XFree86 3.9Pw</a></h1> 12711 12712 <ul> 12713 <li>add control sequences for specifying the RGB value of the 12714 ANSI colors, and for configuring with 256 colors (patch by Todd 12715 Larason <jtl@molehill.org>). I made the default 12716 configuration to 16-colors, because xterm uses the default 12717 color map (which has only 256 colors).</li> 12718 12719 <li>correct an error in DCS $ q m reporting for colors 8-15 12720 (Todd Larason).</li> 12721 12722 <li>add test/demo script for double size characters. Used this 12723 to test/correct display of double size characters that should 12724 wrap, underlined double size characters.</li> 12725 12726 <li>increased cache size for double size fonts to 8, to allow 12727 for both normal and bold fonts (discussion with Aryeh 12728 Koenigsberg <aryeh.koenigsberg@telrad.co.il>).</li> 12729 12730 <li>add fixes for port to OS390 aka MVS (integrated patch from 12731 Greg Smith <rys@epaibm.rtpnc.epa.gov>). OS390 uses EBCDIC 12732 rather than ASCII.</li> 12733 12734 <li>correct an off-by-one in binary search limits in 12735 keysym2ucs.c (Markus Kuhn).</li> 12736 12737 <li>implement logging for UTF-8 mode. The output is written in 12738 UTF-8 form.</li> 12739 </ul> 12740 12741 <h1><a name="xterm_110" id="xterm_110">Patch #110 - 1999/6/29 - 12742 XFree86 3.9Pu</a></h1> 12743 12744 <ul> 12745 <li>If colorMode is enabled by default, compile-in default 12746 resources to match the colors listed in XTerm-col.ad (this 12747 should fix a longstanding FAQ).</li> 12748 12749 <li>added new OSC 3 ; PROPNAME=VALUE ST 12750 escape sequence to set an arbitrary X property on the top level 12751 xterm X11 window. Omit "=VALUE" to delete the X property (patch 12752 by Greg Badros <gjb@cs.washington.edu>).</li> 12753 12754 <li>change internal flag used for <em>utf8controls</em> 12755 resource so we allow 31-bit range of characters (suggested by 12756 Thomas Wolff).</li> 12757 12758 <li>add check for 16-bit characters in OSC strings, change them 12759 to '?' (reported by Thomas Wolff).</li> 12760 12761 <li>modify logic of same_font_name() to avoid trying to 12762 interpret both parameters as wildcard patterns. That does not 12763 (cannot) work, and in some instances the font server will 12764 return unresolved wildcards for the normal or bold fontnames, 12765 making them match inadvertently, triggering the fallback 12766 overstrike logic (reported by Tim Adye).</li> 12767 </ul> 12768 12769 <h1><a name="xterm_109" id="xterm_109">Patch #109 - 1999/6/23 - 12770 XFree86 3.9Pt</a></h1> 12771 12772 <ul> 12773 <li>correct range-check from patch #108, which resulted in not 12774 being able to select from the scrollback buffer (reported by 12775 Tim Adye <T.J.Adye@rl.ac.uk>)</li> 12776 12777 <li>correct "no available ptys" problem with Cygwin B20.1 12778 (patch by Tim Adye).</li> 12779 12780 <li>modified install-ti rule in Makefile.in to allow override 12781 of the terminfo directory when doing a "make install", i.e., by 12782 assigning to TERMINFO_DIR (request by Zdenek Sekera 12783 <zs@sgi.com>).</li> 12784 12785 <li>added install-full rule to Makefile.in</li> 12786 12787 <li>resync mkdirs.sh and install.sh scripts against current 12788 autoconf</li> 12789 12790 <li>implement $(DESTDIR) in Makefile.in, making it simple to 12791 install xterm and associated files into a directory just for 12792 packaging a binary release (suggested by CaT 12793 <cat@zip.com.au>).</li> 12794 12795 <li>change IChar type to unsigned, rather than unsigned short, 12796 making room for a flag to keep with 16-bit characters to 12797 prevent them from being interpreted as C0 or C1 controls 12798 (reported by Thomas Wolff).</li> 12799 12800 <li>correct a typo from patch #107, incorrect array name, in 12801 the filterUTF8 function (patch by Bruno Haible 12802 <haible@ilog.fr>)</li> 12803 12804 <li>add <em>utf8controls</em> resource to specify whether xterm 12805 should interpret 16-bit characters unpacked from UTF-8 form as 12806 control characters if they happen to fall into that range. This 12807 behavior is left unspecified by the Unicode standard (request 12808 by Thomas Wolff).</li> 12809 12810 <li>modify handling of OSC to recover if application sends 12811 16-bit characters with codes above 255. We cannot display them 12812 as is, but translate out-of-range characters to a '?' (reported 12813 by Thomas Wolff).</li> 12814 </ul> 12815 12816 <h1><a name="xterm_108" id="xterm_108">Patch #108 - 1999/6/19 - 12817 XFree86 3.9Ps</a></h1> 12818 12819 <ul> 12820 <li>add a range-check to LastTextCol(), to guard against 12821 indexing before the beginning of the scrollback buffer. This 12822 appears to happen with certain fonts under X11R5 (reported by 12823 Stephane Chazelas <Stephane_Chazelas@Raytheon.com>).</li> 12824 12825 <li>implement resource <em>boldMode</em>, to allow disabling 12826 the simulation of bold fonts when the bold and normal fonts are 12827 not different (requested by Will Day 12828 <willday@rom.oit.gatech.edu>).</li> 12829 12830 <li>change the atom "UTF-8" to "UTF8_STRING", and fixes a few 12831 bugs in the UTF-8 selection (patch by Juliusz Chroboczek).</li> 12832 12833 <li>correct logic of binary-search in keysym2ucs.c (patch by 12834 Markus Kuhn).</li> 12835 12836 <li>add special interpretation of keysym codes above 0x1000000 12837 as the corresponding UCS value plus 0x1000000 (patch by Markus 12838 Kuhn).</li> 12839 </ul> 12840 12841 <h1><a name="xterm_107" id="xterm_107">Patch #107 - 1999/6/12 - 12842 XFree86 3.9Pq</a></h1> 12843 12844 <ul> 12845 <li>Two changes from Stephen P Wall. From his description: 12846 <blockquote> 12847 <p>The first change is simple - I added ESC[3J to erase the 12848 stored lines above the screen. That's what the changes to 12849 util.c and ctlseqs.ms are.</p> 12850 12851 <p>The second change is to get the blinking cursor working. 12852 I took out the cursorBlinkTime resource, and put in 12853 cursorBlink (Boolean), cursorOnTime (time cursor is on in 12854 msecs) and cursorOffTime, and added a cursorblink item to 12855 the vtMenu to enable/disable it.</p> 12856 </blockquote> 12857 </li> 12858 12859 <li>improve selection (integrated patch by Juliusz Chroboczek). 12860 From his description: 12861 <blockquote> 12862 <p>With this patch, selection conversion works 12863 properly:</p> 12864 12865 <pre> 12866 ISO 8859-1 xterm -> ISO 8859-1 xterm (transferred as STRING); 12867 ISO 8859-1 xterm -> UTF-8 xterm (transferred as STRING); 12868 UTF-8 xterm -> ISO 8859-1 xterm (transferred as STRING); 12869 UTF-8 xterm -> UTF-8 xterm (transferred as UTF-8). 12870</pre> 12871 <p>It will not work properly if one xterm is in, say, ISO 12872 8859-2. Actually, for this case xterm breaks the ICCCM 12873 routinely (sending ISO 8859-2 data as STRING), so I 12874 wouldn't worry too much about it. I have not changed the 12875 behaviour in eight-bit mode in any way.</p> 12876 </blockquote> 12877 </li> 12878 </ul> 12879 12880 <h1><a name="xterm_106" id="xterm_106">Patch #106 - 1999/6/9 - 12881 XFree86 3.9Pq</a></h1> 12882 12883 <ul> 12884 <li>remove duplicate fix for OpenBSD in resize.c</li> 12885 12886 <li>correct logic in ScreenWrite, which did not reset the high 12887 bytes of 16-bit characters when overwriting them with a 8-bit 12888 character string (reported by Thomas Wolff).</li> 12889 12890 <li>provide limited support for input of UTF-8 16-bit data by a 12891 lookup table (integrated patch by Markus Kuhn).</li> 12892 12893 <li>correct check in non_blank_line to ensure we're in 12894 wide-character mode before looking at the high bytes, for 12895 InsertChar.</li> 12896 </ul> 12897 12898 <h1><a name="xterm_105" id="xterm_105">Patch #105 - 1999/6/5 - 12899 XFree86 3.9Pp</a></h1> 12900 12901 <ul> 12902 <li>implement new resource <em>trimSelection</em>, which allows 12903 xterm to trim trailing blanks from selected lines. This does 12904 not affect the highlighting. (reported by several people using 12905 <em>mutt</em>, including Hans Morten Kind <edphk@uib.no>, 12906 Jeremy <jeremy@exit109.com> and (Michael Fuller 12907 <msf@mds.rmit.edu.au>).</li> 12908 12909 <li>include term.h in resize for OpenBSD (patch by Matthieu 12910 Herrb).</li> 12911 12912 <li>correct logic for UTF-8 in functions that hide and show the 12913 cursor; it was displaying a space whenever the low byte of the 12914 character at the cursor position was zero (reported by Thomas 12915 Wolff <Thomas.Wolff@icn.siemens.de>).</li> 12916 </ul> 12917 12918 <h1><a name="xterm_104" id="xterm_104">Patch #104 - 1999/5/30 - 12919 XFree86 3.9Pn</a></h1> 12920 12921 <p>This is a resync patch against XFree86 3.9Pn, reflecting 12922 changes which were submitted by Branden Robinson, who worked with 12923 Wichert Akkerman <wichert@cs.leidenuniv.nl> to set up 12924 ifdef's to handle GNU libc 2.1, and use getpt() which lets xterm 12925 avoid having to know the actual PTY name.</p> 12926 12927 <p>I have also added a few fixes for signed/unsigned mismatches, 12928 and corrected a problem in the configure script (the UTF-8 code 12929 was always configured since the Imakefile defines this).</p> 12930 12931 <h1><a name="xterm_103" id="xterm_103">Patch #103 - 1999/5/14 - 12932 XFree86 3.9Pm</a></h1> 12933 12934 <ul> 12935 <li>correct selection logic: I omitted an offset that accounts 12936 for the distance into the scrollback buffer when rewriting this 12937 for patch #101. Also fixed a similar problem for selecting 12938 double size characters from the scrollback buffer (first was 12939 reported by D Roland Walker <walker@pobox.com>).</li> 12940 12941 <li>improved support for Unix98 PTY's, using patch in Debian 12942 bug report #35650, by J.H.M. Dassen 12943 <jdassen@wi.leidenuniv.nl>. From the patch description: 12944 <blockquote> 12945 <ul> 12946 <li>No longer links xterm against libutil on a glibc2.1 12947 system. libutil is a compatibility library and should 12948 only be used when necessary. Rather than having get_pty() 12949 use openpty() from this compatibility library, use the 12950 real UNIX98 pty support in get_pty() (open()ing the 12951 master pty, through getpt() if available (glibc 12952 extension)). Use openpty() only under glibc2.0.</li> 12953 12954 <li>GNU libc2 is not Linux-specific; already it runs on 12955 the Hurd. It provides the UNIX98 pty functions (plus the 12956 getpt() extension), regardless of the underlying OS. 12957 Changed two constructs to look for GNU libc2 only, not 12958 GNU libc2 on Linux.</li> 12959 </ul> 12960 </blockquote> 12961 </li> 12962 12963 <li>improve font configuration, by checking if the user's 12964 resource settings for normal and bold fonts give the same font 12965 sizes (fixes problem reported by Peter Waltenberg 12966 <peterw@dascom.com>).</li> 12967 </ul> 12968 12969 <h1><a name="xterm_102" id="xterm_102">Patch #102 - 1999/5/12 - 12970 XFree86 3.9Pm</a></h1> 12971 12972 <ul> 12973 <li>revert change to openpty call in patch #101; this causes 12974 xterm to fail on DEC-Alpha OSF/1 4.0B (reported by H Merijn 12975 Brand).</li> 12976 12977 <li>modify print.c to move include of stdio.h after the 12978 autoconf'd xtermcfg.h since HP's ANSI C compiler otherwise sees 12979 inconsistent prototype for getopt, probably due to problem with 12980 const (reported by H Merijn Brand).</li> 12981 </ul> 12982 12983 <h1><a name="xterm_101" id="xterm_101">Patch #101 - 1999/5/10 - 12984 XFree86 3.9Pm</a></h1> 12985 12986 <ul> 12987 <li>moved includes and definitions for 'select' from data.h to 12988 xterm.h to fix problem introduced by prototype for getPtyData, 12989 part of UTF-8 changes (reported by Jens Schleusener 12990 <Jens.Schleusener@dlr.de>)</li> 12991 12992 <li>added "Meta <Btn2Down>:clear-saved-lines()" default 12993 translation (patch by H Merijn Brand)</li> 12994 12995 <li>fixes to configure script and ifdef's in main.c to build on 12996 a HP9000/D390 (hppa-2.0w) running HP-UX 11.00 (64 bit) with 12997 egcs 1.1.2 and HP's ANSI C compiler (patch by H Merijn Brand 12998 <PROCURA_BV@CompuServe.com>)</li> 12999 13000 <li>add more parentheses in ifdef's (patch by Bob 13001 Maynard).</li> 13002 13003 <li>eliminate conflicting definitions for USE_TERMINFO in 13004 resize.c (reported by Jeremy Buhler).</li> 13005 13006 <li>change openpty call to pass NULL rather than ttydev 13007 parameter, since that was used only to estimate the length of 13008 the corresponding data, and may not really be long enough 13009 (reported by Andreas Jaeger)</li> 13010 13011 <li>update description in xterm manpage for character class 13012 table, which said it handles only 7-bit codes.</li> 13013 13014 <li>correct a typo in ScrnDeleteChar() which made it not clear 13015 the high byte of wide-character data.</li> 13016 13017 <li>add logic to convert selection to UTF-8 form when 13018 appropriate. This makes select/paste "work", but further work 13019 is needed to make UTF-8 recognized as a locale in Xlib.</li> 13020 13021 <li>correct right-limit check when selecting double-width 13022 characters.</li> 13023 13024 <li>change default answerback response to an empty string.</li> 13025 </ul> 13026 13027 <h1><a name="xterm_100" id="xterm_100">Patch #100 - 1999/5/3 - 13028 XFree86 3.9Pl</a></h1> 13029 13030 <ul> 13031 <li>Correct a typo in the default resource value for 13032 backarrowKeyIsErase: it was always true (reported by Bram 13033 Moolenaar).</li> 13034 13035 <li>improve configure script's test if the installed xterm is 13036 setuid, in case that is a symbolic link.</li> 13037 13038 <li>correct "install-ti" rule in Makefile.in, by not setting a 13039 blank $TERMINFO value. That is interpreted as "." by ncurses' 13040 tic.</li> 13041 </ul> 13042 13043 <h1><a name="xterm_99" id="xterm_99">Patch #99 - 1999/5/2 - 13044 XFree86 3.9Pk</a></h1> 13045 13046 <ul> 13047 <li>correct logic that computes num_ptrs count of the number of 13048 indices into the screen buffer. This is the maximum of the 13049 colors and character-set indices; was incorrect in patch 13050 #97.</li> 13051 13052 <li>correct argument type for sigsetjmp, incidental change in 13053 patch #96's Unix88 PTY patch (reported by Bram Moolenaar).</li> 13054 13055 <li>correct description of secondary DA in ctlseqs.ms (reported 13056 by Bram Moolenaar).</li> 13057 13058 <li>decouple the backarrowKey and ptyInitialErase resources by 13059 adding a new resource backarrowKeyIsErase, to accommodate 13060 people using applications which have hardcoded tests for 13061 characters 8 and 127 rather than relying on the stty 13062 settings.</li> 13063 13064 <li>modify the UTF-8 decoder so that all possible illegal UTF-8 13065 sequences are properly represented by U+FFFD. This should be 13066 very helpful for developers of code that output UTF-8 strings 13067 for debugging. See the file utf-8-test.txt in 13068 http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz for a 13069 demonstration text that contains numerous illegal UTF-8 values. 13070 (patch by Markus Kuhn).</li> 13071 13072 <li>correct a place in ScrnRefresh where I was filling the high 13073 byte of a wide character with a space rather than a null 13074 (reported by Markus Kuhn).</li> 13075 </ul> 13076 13077 <h1><a name="xterm_98" id="xterm_98">Patch #98 - 1999/4/26 - 13078 XFree86 3.9Pk</a></h1> 13079 13080 <ul> 13081 <li>correct data manipulation in unparseputc(), broken for 13082 little-endian machines by patch #97's UTF-8 changes. This meant 13083 that keyboard input on SunOS did not work, though Linux i386 13084 was fine.</li> 13085 13086 <li>modify initialization for backarrowKey and logic for 13087 initial-erase to prevent the initial-erase from overriding an 13088 explicitly set backarrowKey resource (reported by Vikas 13089 Agnihotri).</li> 13090 13091 <li>add a missing null-pointer check in ScrnRefresh, for the 13092 wide-characters configuration.</li> 13093 </ul> 13094 13095 <h1><a name="xterm_97" id="xterm_97">Patch #97 - 1999/4/25 - 13096 XFree86 3.9Pk</a></h1> 13097 13098 <ul> 13099 <li>add configure script test for -lutil, needed for openpty 13100 call when configuring xterm for Glibc-2.1 and Unix98 PTY's 13101 (first reported by Martin Lorentz" 13102 <m.lorentz@w12.link-goe.de>).</li> 13103 13104 <li>completely parenthesize ifdef expressions for Glibc 13105 (suggested by Bob Maynard).</li> 13106 13107 <li>add initial-erase options (-ie, +ie) to help message 13108 (reported by Vikas Agnihotri).</li> 13109 13110 <li>remove duplicate definition of USE_USG_PTYS (reported by 13111 Jeremy Buhler).</li> 13112 13113 <li>change termcap <em>kD</em> and terminfo <em>kdch1</em> to a 13114 DEL (\177). I overlooked this when separating the styles of 13115 keyboard with the <em>sunKeyboard</em> resources in patch #94, 13116 so that it normally matches the value of the stty erase 13117 character: 13118 <ul> 13119 <li>Reported by Jae Gangemi 13120 <jgangemi@ccf.rutgers.edu>, this caused emacs to not 13121 process the DEL properly, combining it with succeeding 13122 characters.</li> 13123 13124 <li>This does not appear to be related to a problem which I 13125 have found with <em>screen</em>, which translates the stty 13126 erase into the termcap <em>kD</em> or terminfo 13127 <em>kdch1</em> value (depending on how it is linked) if the 13128 $TERMCAP variable is set when <em>screen</em> is 13129 invoked.</li> 13130 </ul> 13131 </li> 13132 13133 <li>add command-line options for enabling UTF-8 mode: -u8 and 13134 +u8. The more obvious -utf8 and +utf8 would conflict with 13135 xterm's -ut and +ut (utmp) options. The UTF-8 changes were 13136 requested by Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>. This 13137 patch does not complete UTF-8 implementation, but makes it 13138 usable, i.e., display and refresh work, and I am able to 13139 display the test cases which Markus provides. More work is 13140 needed to complete this feature: 13141 <ul> 13142 <li>the control sequences for switching in/out of UTF-8 13143 mode are partly implemented (don't use them). Similarly, 13144 the switching between vt100 and tek4014 emulations when 13145 UTF-8 mode is enabled will not work properly. 13146 <p>You must use the -u8 command line option to use this 13147 feature, as well as compile with the OPT_WIDE_CHARS 13148 definition.</p> 13149 </li> 13150 13151 <li>cut/paste only copies 8-bit characters.</li> 13152 13153 <li>logging is disabled in the wide-character 13154 configuration</li> 13155 13156 <li>printing only writes 8-bit characters.</li> 13157 13158 <li>input only does 8-bit characters. This is the area that 13159 I know least about.</li> 13160 </ul> 13161 </li> 13162 </ul> 13163 13164 <h1><a name="xterm_96" id="xterm_96">Patch #96 - 1999/4/19 - 13165 XFree86 3.9Pj</a></h1> 13166 13167 <ul> 13168 <li>modify Makefile.in to work with configure script's --srcdir 13169 option. (patch by Jeremy Buhler 13170 <jbuhler@cs.washington.edu>)</li> 13171 13172 <li>add checks for 'echo -n' equivalent for 8colors.sh and 13173 16colors.sh scripts (reported by Vikas Agnihotri).</li> 13174 13175 <li>improve logic that looks for bold fonts to allow for 13176 wildcards in the specification for normal fonts, and to ensure 13177 that if a bold font is specified as normal, that xterm will 13178 simulate a bold version of that using a one-pixel offset 13179 overstrike (reported by Henrik Harmsen 13180 <harmsen@erv.ericsson.se>).</li> 13181 13182 <li>correct horizontal spacing of double width line-drawing 13183 characters that xterm simulates.</li> 13184 13185 <li>improve support for Unix98 PTY's, using patch in Debian bug 13186 report #35650, by Topi Miettinen 13187 <Topi.Miettinen@medialab.sonera.fi>. Andreas Jaeger says 13188 this also corrects a permissions problem reported by 13189 cat@zip.net.au</li> 13190 13191 <li>modify initial-erase logic to ensure that 13192 <code>ttyModes</code> resource overrides it.</li> 13193 </ul> 13194 13195 <h1><a name="xterm_95" id="xterm_95">Patch #95 - 1999/4/5 - 13196 XFree86 3.9Ph</a></h1> 13197 13198 <ul> 13199 <li>modify primary DA response to allow a '1' parameter.</li> 13200 13201 <li>add printer and national replacement character sets to 13202 VT220 primary DA response.</li> 13203 13204 <li>document primary and secondary DA responses in 13205 ctlseqs.ms</li> 13206 13207 <li>use the patch number (e.g., 95) in the secondary DA 13208 response, providing user applications a means of determining 13209 the version of xterm for feature comparison (request by Bram 13210 Moolenaar).</li> 13211 13212 <li>make xterm respond to secondary DA when the decTerminalID 13213 is set for VT100.</li> 13214 13215 <li>limit user-defined keys (DECUDK) to VT220-style keyboard 13216 when sunKeyBoard resource is true.</li> 13217 13218 <li>modify ifdef's for Linux-2.2.x with Glibc-2.1 to work with 13219 Glibc-2.1 and no Unix98 PTY support (patch from Andreas Jaeger 13220 <aj@arthur.rhein-neckar.de>)</li> 13221 13222 <li>add optional feature (resource and command-line options) to 13223 make xterm use the PTY's sense of erase character on startup, 13224 rather than requiring it to be \177, or set the PTY's erase 13225 character to match xterm's configuration. Note that while 13226 $TERMCAP is modified to reflect the actual configuration, the 13227 terminfo kdch1 string is not (request by Dirk H Hohndel 13228 <hohndel@suse.de>)</li> 13229 13230 <li>improve scripts in vttests to work with newer shells that 13231 do not use 'echo -n'.</li> 13232 13233 <li>add fonts.sh example script</li> 13234 13235 <li>correct inequality in handling of "#1" font 13236 specification.</li> 13237 13238 <li>correct call to XGetWMNormalHints() used for computing 13239 maximum screen size; the size hints may not have been set.</li> 13240 13241 <li>begin implementation of support for wide-characters 13242 (configure option --enable-wide-chars defines OPT_WIDE_CHARS, 13243 invoke xterm with -wc option to activate this feature). This 13244 patch optionally widens internal data structures, invokes the 13245 16-bit text output rather than the 8-bit version and adds some 13246 tables.</li> 13247 </ul> 13248 13249 <h1><a name="xterm_94" id="xterm_94">Patch #94 - 1999/3/27 - 13250 XFree86 3.9Pf</a></h1> 13251 13252 <ul> 13253 <li>further fixes for terminfo: ka1, ka3, etc., differ between 13254 the default xterm-xfree86 and xterm-vt220 entries.</li> 13255 13256 <li>change default (with sunKeyboard resource false) behavior 13257 of the editing keypad "Delete" to send a 127, like xterm-r6. 13258 The VT220-style <code><ESC>[3~</code> is sent when 13259 sunKeyboard is true (reported by Tomas Vanhala).</li> 13260 13261 <li>add parameters to function keys to indicate if shift, 13262 control or alt are set. The codes are based on a description of 13263 a DEC VT510 with a PC keyboard, from Jeffrey Altman 13264 <jaltman@watsun.cc.columbia.edu>.</li> 13265 13266 <li>add control sequence 1035, set-num-lock action and num-lock 13267 menu entry to control the use of the NumLock and Alt keys for 13268 the Sun/PC and VT220 keyboard extensions.</li> 13269 13270 <li>implement DECSET/DECRST numeric keypad (DECNKM) mode.</li> 13271 13272 <li>modify terminfo and termcap to use recommended "X Window" 13273 or "X11" names rather than "X Windows" (reported by Tomas 13274 Vanhala).</li> 13275 13276 <li>suppress translation of shifted keypad "+" when sunKeyboard 13277 is true.</li> 13278 13279 <li>workaround unexpected behavior (perhaps bug) in 13280 XmbLookupString, which returns trash in the string buffer for 13281 numlock and control-key combined with keypad-keys.</li> 13282 13283 <li>modify ScrollBarReverseVideo() to keep scrollbar border 13284 visible when reverse video is toggled.</li> 13285 13286 <li>correct missing case for parameter 17 (set highlight color) 13287 in dynamic colors control sequences.</li> 13288 13289 <li>extend dynamic colors control sequences to allow users to 13290 determine the colors and font which are currently active.</li> 13291 13292 <li>minor tweak to OSC responses, to use BEL if the application 13293 used that to end the request, rather than ST. This works better 13294 with shell scripts, which may not handle an 13295 <code><ESC>backslash</code> very well.</li> 13296 13297 <li>separate menu settings for reverse video from that done 13298 under program control.</li> 13299 13300 <li>corrected ifdef's for menus, which did not allow tek4014 to 13301 be suppressed properly (reported by Clint Olsen).</li> 13302 13303 <li>changes for Linux-2.2.x with GLibc-2.1 and /dev/ptmx 13304 support (integrated patch from Pavel Roskin): 13305 <ul> 13306 <li>main.c and resize.c were using different rules to 13307 determine whether ATT should be defined (actually 13308 USE_USG_PTYS is more apt).</li> 13309 13310 <li>copy definitions from main.c to resize.c to prevent 13311 sys/stream.h and sys/ptem.h from inclusion when SYSV is not 13312 defined</li> 13313 13314 <li>define CNUL if not already defined like other 13315 variables.</li> 13316 13317 <li>/dev/tty does exist in Linux, but it doesn't mean, it 13318 should be used. Therefore EACCES is now an acceptable 13319 result.</li> 13320 13321 <li>ifdef'd several calls such as <code>ioctl (ptyfd, 13322 I_PUSH, "ptem")</code> to build on Linux (I_PUSH is not 13323 defined when sys/stropts.h is not included).</li> 13324 </ul> 13325 </li> 13326 13327 <li>initialize second "ltc" variable in main.c (reported by 13328 David Dawes).</li> 13329 13330 <li>provide definition for USE_USG_PTYS in screen.c</li> 13331 13332 <li>add resource-files to install rule in standalone 13333 Makefile.in</li> 13334 13335 <li>add sample scripts to illustrate titlebar controls, 13336 resizing and colors.</li> 13337 </ul> 13338 13339 <h1><a name="xterm_93" id="xterm_93">Patch #93 - 1999/3/14 - 13340 XFree86 3.9Pd</a></h1> 13341 13342 <p>Here are several fixes and minor enhancements. The chief ones 13343 are the fixes for NumLock mode and reverse video, since we had 13344 become used to working around the problems.</p> 13345 13346 <ul> 13347 <li>remove kfnd/kll/kslt strings from terminfo, because curses 13348 applications do not necessarily return khome/kend pairs 13349 (reported by Vikas Agnihotri).</li> 13350 13351 <li>implement NumLock resource which overrides the keyboard 13352 tables for the special case of keypad keys. This is a problem 13353 introduced in xterm by X11R6 changes, i.e., an ambiguity which 13354 in effect discarded vt100 keypad support.</li> 13355 13356 <li>modify Sun/PC keyboard mode to extend this (emulation of 13357 DEC vt100 keypad) to the remainder of the numeric keypad. Now, 13358 the default operating mode of xterm uses the keyboard tables 13359 as-is (except if the NumLock mode overrides), but provides good 13360 vt100 keypad compatibility if the Sun/PC keyboard menu item is 13361 checked.</li> 13362 13363 <li>separate command-line settings for reverse video from that 13364 done under program control. This is a problem which was 13365 introduced by X11R6. Though <em>correct</em>, most users are 13366 confused by allowing the reset command to undo the effect of 13367 the command-line <kbd>-rv</kbd> option.</li> 13368 13369 <li>add description of function keys, keypad and cursor keys to 13370 ctlseqs.ms</li> 13371 13372 <li>add terminfo entries for xterm-vt52, xterm-sun and 13373 xterm-hp</li> 13374 13375 <li>correct typo (missing case value) for DECSET 35, 13376 enable/disable shifted keypad action and a few compiler 13377 warnings (reported by Zdenek Sekera <zs@sgi.com>).</li> 13378 13379 <li>correct reporting of color values 8-15 in DECRQSS (reported 13380 by Vikas Agnihotri).</li> 13381 13382 <li>modify parsing of ttyModes resource to recognize "^-" as 13383 "undef" (requested by Tomas Vanhala).</li> 13384 13385 <li>integrate/extend changes to add iconify/maximize actions 13386 (from Edward S. Arthur <eda@ultranet.com>).</li> 13387 13388 <li>add control sequences for maximizing/restoring window, and 13389 for reporting maximum screen size.</li> 13390 13391 <li>add 'interpret' action, to support local function-key 13392 interpretation. Used properly, this makes most of the 13393 specialized actions of xterm redundant.</li> 13394 13395 <li>add control sequence private modes 1051, 1052 and 1052, for 13396 setting the Sun and HP function key modes, and for setting the 13397 Sun/PC keyboard mode.</li> 13398 13399 <li>add configure option --disable-maximize</li> 13400 13401 <li>add configure option --disable-num-lcok</li> 13402 13403 <li>extend descriptions of configure script options in 13404 INSTALL.</li> 13405 </ul> 13406 13407 <h1><a name="xterm_92" id="xterm_92">Patch #92 - 1999/2/5 - 13408 XFree86 3.9Nz</a></h1> 13409 13410 <ul> 13411 <li>increase buffer size for tgetent (i.e., termcap) to 1500. 13412 This fixes a problem where <em>screen</em> is built using 13413 ncurses or GNU termcap and <em>xterm</em> is built using the 13414 standard termcap interface. The former does not limit the 13415 termcap size, while the latter is assumed to be no longer than 13416 1023 characters. The <em>screen</em> program's termcap entry is 13417 about 1200 characters long.</li> 13418 13419 <li>change update_menu_item() to a function, to simplify 13420 debugging. This also reduces the executable by 4Kb.</li> 13421 13422 <li>add control sequences for DECSET 30, 1010, 1011 like rxvt 13423 (enable or disable some features that were only settable via 13424 resources or command line arguments).</li> 13425 13426 <li>add control sequence for DECSET 35, which enables/disables 13427 the shifted keypad functions.</li> 13428 13429 <li>add support for switching font sizes, by stepping through 13430 the font menu using shifted keypad plus and minus.</li> 13431 13432 <li>correct missing initialization of tekInhibit and tekSmall 13433 resources.</li> 13434 13435 <li>correct ifdef's in charproc.c for XtNgeometry and 13436 XtCGeometry (reported by Bram Moolenaar).</li> 13437 </ul> 13438 13439 <h1><a name="xterm_91" id="xterm_91">Patch #91 - 1999/1/21 - 13440 XFree86 3.9Nw</a></h1> 13441 13442 <ul> 13443 <li>Implement logic to translate input characters which are 13444 mapped when in vt220 National Replacement Character mode 13445 (requested by Tomas Vanhala).</li> 13446 13447 <li>Resync configure scripts with my patches to autoconf 13448 2.13</li> 13449 13450 <li>Change order of -lXmu and -lXext to accommodate cygwin32 13451 (reported by Vikas Agnihotri).</li> 13452 13453 <li>Add "-ti" option to set terminal emulation level from 13454 command line rather than via resource.</li> 13455 13456 <li>Simplify some of the preprocessor logic using #elif.</li> 13457 </ul> 13458 13459 <h1><a name="xterm_90" id="xterm_90">Patch #90 - 1998/12/13 - 13460 XFree86 3.9Nq</a></h1> 13461 13462 <p>This implements several small fixes and enhancements. The 13463 chief one implements fallback support for line drawing characters 13464 with fonts that do not include those characters. But I 13465 implemented that last.</p> 13466 13467 <ul> 13468 <li>If any of the glyphs in positions 0-31 (used by xterm to 13469 implement the VT100 alternate character set) are zero-sized 13470 (i.e., missing), xterm will reserve a normal space for the 13471 glyph when drawing. I implemented a simple stroke-drawing 13472 function to draw the line-drawing characters and a couple of 13473 the other (simpler) characters such as diamond. (This was 13474 suggested by Vikas Agnihotri).</li> 13475 13476 <li>Modify the computation of doublesize characters to work 13477 around font servers which shift the scaled characters up/down 13478 or do not give the correct width.</li> 13479 13480 <li>Add popup menu item and corresponding resource settings to 13481 disable the font-scaling logic for doublesize characters to 13482 work around (older) font servers which simply do not draw the 13483 fonts scaled to the size that they said they would. I see this 13484 problem on a SunOS system running X11R5; the X11R6 servers seem 13485 well behaved.</li> 13486 13487 <li>Implement new escape sequence, private mode 1049, which 13488 combines the switch to/from alternate screen mode with screen 13489 clearing and cursor save/restore. Unlike the existing escape 13490 sequence, this clears the alternate screen when switching to it 13491 rather than when switching to the normal screen, thus retaining 13492 the alternate screen contents for select/paste operations. 13493 <p>When I implemented the popup menu entry to toggle between 13494 the normal and alternate screens, I considered only pasting 13495 from the normal screen to the alternate; this improvement 13496 allows either direction.</p> 13497 </li> 13498 13499 <li>Changed the termcap and terminfo for xterm-xfree86 and 13500 xterm-8bit to use the new 1049 private mode.</li> 13501 13502 <li>Modify the logic which switches between normal and 13503 alternate screens so that the save/restore cursor operations 13504 apply only to the current screen. That means that applications 13505 which use the terminfo smcur/rmcur or termcap ti/te 13506 capabilities will restore the cursor to the original position 13507 on the normal screen rather than to the most recent place where 13508 a save-cursor operation was performed. 13509 <p>I note that a real VT100 terminal would not behave in this 13510 way, but it is a moot point since the VT100 does not 13511 implement alternate screen, and therefore the save/restore 13512 cursor sequence would not be used in this context. I reviewed 13513 the logic which switches between normal and alternate screens 13514 based on some recent newsgroup postings as well as a proposed 13515 patch in the Debian group which attempts to do this (the 13516 patch has a bug, however, so I did not use it).</p> 13517 </li> 13518 13519 <li>Add popup menu entry for toggling the titeInhibit 13520 resource.</li> 13521 13522 <li>Add new resource answerbackString, which overrides the 13523 default "xterm" returned by xterm when responding to an ENQ 13524 (control/E) character (request by Rajesh Vaidheeswarran 13525 <rv@fore.com>).</li> 13526 13527 <li>Add new resource keyboardDialect for setting the NRC 13528 display character set (request by Tomas Vanhala, who notes that 13529 I should add logic to translate the keyboard as well).</li> 13530 13531 <li>Add new command-line option and corresponding resources for 13532 making xterm generate escape sequences compatible with HP 13533 terminals. Like the existing Sun escape sequences, this is 13534 available as a popup menu item. It is enabled by the configure 13535 script with the option --enable-hp-fkeys (requested by Toni 13536 Mueller <sales@oeko.net>).</li> 13537 13538 <li>Add configure script option --disable-boxchars to disable 13539 the fallback support for line drawing characters.</li> 13540 13541 <li>Fix ifdef's for configure script --disable-ansi-color, and 13542 reviewed all configure options to ensure that all can be 13543 enabled/disabled appropriately.</li> 13544 13545 <li>Update config.guess and config.sub, from Lynx.</li> 13546 </ul> 13547 13548 <h1><a name="xterm_89" id="xterm_89">Patch #89 - 1998/11/20 - 13549 XFree86 3.9Nm</a></h1> 13550 13551 <p>This patch completes the implementation of double-sized 13552 character support for the VT100 emulation, and fixes a few minor 13553 bugs:</p> 13554 13555 <ul> 13556 <li>corrected the cursor position in HideCursor, which did not 13557 multiply the column by two when in doublesize mode. This bug, 13558 which did not appear in normal use, dates back to my original 13559 <a href="#xterm_44">changes</a> to partly implement 13560 double-sized characters. I noticed it when cat'ing a typescript 13561 from vttest's double-sized character test.</li> 13562 13563 <li>ensure that the current line is repainted when switching 13564 between single and double width characters.</li> 13565 13566 <li>reduce the number of bits used for double-sized character 13567 coding from 3 to 2, to make more room for soft-font codes.</li> 13568 13569 <li>copy newer ifdef's from the XFree86 3.3.3 release's main.c, 13570 which address details of glibc and powerpc.</li> 13571 13572 <li>moved definition of DECL_ERRNO in xterm.h to match XFree86 13573 3.3.3</li> 13574 13575 <li>modify <em>resize</em> to remove the ifdef on SVr4 that 13576 suppressed printing the script for $LINES and $COLUMNS. 13577 Solaris' resize utility does this; suppressing the behavior is 13578 unnecessary.</li> 13579 </ul> 13580 13581 <p>I tested the double-sized characters using vttest and the 13582 xfsft patch. These fonts worked reasonably well:</p> 13583 13584 <pre> 13585 -bitstream-courier-medium-r-normal--0-0-0-0-m-0-iso8859-1 13586 9x15 13587</pre> 13588 <p>The iso8859 font does not include box characters, of course, 13589 but looks good.</p> 13590 13591 <h1><a name="xterm_88" id="xterm_88">Patch #88 - 1998/10/31 - 13592 XFree86 3.9Nk and 3.3.2h</a></h1> 13593 13594 <p>This refines my #85 patch by checking for a case where the 13595 font server returns a bold font that does not quite correspond to 13596 the normal font. When I asked for a bold version of the 6x12 13597 font, the font server returned a near equivalent where the ascent 13598 and descent values did not match, causing xterm to leave lines 13599 across the display. This patch makes xterm reject that type of 13600 mismatch, falling back to the old font behavior.</p> 13601 13602 <h1><a name="xterm_87" id="xterm_87">Patch #87 - 1998/10/21 - 13603 XFree86 3.9Nj and 3.3.2f</a></h1> 13604 13605 <p>This corrects a problem reported by Stefan Dalibor. My table 13606 entries for the <em>printerExtent</em> and 13607 <em>printerFormFeed</em> resources used the wrong types for 13608 sizeof, causing the printer to not work properly on some 13609 platforms because the <em>printAttributes</em> resource was 13610 overwritten (e.g., Digital Unix with DEC Alpha).</p> 13611 13612 <p>I reviewed all of the resource table entries and fixed a 13613 potential problem with <em>resizeGravity</em>, which was typed as 13614 <em>int</em> rather than <em>XtGravity</em>.</p> 13615 13616 <h1><a name="xterm_86" id="xterm_86">Patch #86 - 1998/10/14 - 13617 XFree86 3.9Nj and 3.3.2e</a></h1> 13618 13619 <p>A small fix: when switching to/from the continuous mouse 13620 reporting mode, the event mask was incorrect if xterm was built 13621 under X11R5 because the original data was saved under an ifdef 13622 for active-icon.</p> 13623 13624 <h1><a name="xterm_85" id="xterm_85">Patch #85 - 1998/10/12 - 13625 XFree86 3.9Nj and 3.3.2e</a></h1> 13626 13627 <p>Some cleanup (I noticed the pixel droppings a few months ago 13628 after getting a new 17" monitor):</p> 13629 13630 <ul> 13631 <li>split-out the functions that load/reload fonts for xterm as 13632 new file fontutils.c to extend them to support automatic 13633 loading of bold font corresponding to the normal font. Adapted 13634 logic from EMU 1.3 for this purpose. This fixes most 13635 occurrences of pixel droppings from bold characters.</li> 13636 13637 <li>modified by renaming variables and adding casts to permit 13638 compile with g++.</li> 13639 13640 <li>modify headers so they can all be compiled without order 13641 dependencies, and use bracketed rather than quoting includes to 13642 allow compile from separate directory.</li> 13643 13644 <li>renamed xtermm terminfo entry to xterm-mono, to avoid 13645 conflict with Solaris entry now in ncurses.</li> 13646 </ul> 13647 13648 <h1><a name="xterm_84" id="xterm_84">Patch #84 - 1998/10/9 - 13649 XFree86 3.9Ni and 3.3.2e</a></h1> 13650 13651 <p>Several small fixes and enhancements, including a patch from 13652 Bjorn Helgaas:</p> 13653 13654 <ul> 13655 <li>correct initialization of TERMCAP environment variable, 13656 which was frequently set to garbage on non-Linux systems 13657 because "termcap" and "newtc" contained random data from the 13658 stack.</li> 13659 13660 <li>remove the LINEWRAPPED attribute from lines as they are 13661 cleared. Previously, the attribute was set but never 13662 cleared.</li> 13663 13664 <li>make word and line selections work even when lines are 13665 wrapped by xterm. Previously, selections were limited to one 13666 screen line.</li> 13667 </ul> 13668 13669 <p>as well as</p> 13670 13671 <ul> 13672 <li>modify logic for line-wrapping to reset the associated flag 13673 if the application deletes a character. This fixes a problem 13674 reported by Bjorn Helgaas where word/line selection would still 13675 wrap even after deleting characters from the first line.</li> 13676 13677 <li>add kll/kH capabilities to xterm-xfree86 entries in termcap 13678 and terminfo (request by Michael Schroeder).</li> 13679 13680 <li>shorten descriptions in termcap to make resolved entries 13681 all shorter than 1023 character limit.</li> 13682 13683 <li>use DECSTR control sequence to shorten initialization and 13684 reset strings in xterm-xfree86 termcap and terminfo.</li> 13685 13686 <li>use rmul/smul and rmir/smir in xterm-r5 terminfo to match 13687 termcap.</li> 13688 13689 <li>correct typos in initialization and reset strings in 13690 xterm-r5 termcap and terminfo.</li> 13691 13692 <li>disable special translations of key symbols (the backarrow 13693 key, the editing keypad and the keypad "+") when a modifier 13694 other than shift, control or numlock is used. This makes xterm 13695 handle the meta key as expected by people using emacs (reported 13696 by Pete Harlan <harlan@pointofchoice.com> in 13697 linux.debian.user newsgroup).</li> 13698 </ul> 13699 13700 <h1><a name="sync_83" id="sync_83">Resync #83 - 1998/10/7 - 13701 XFree86 3.3.2e</a></h1> 13702 13703 <p>Merge changes through patch #83 with the 3.3.2e version.</p> 13704 13705 <p>This follows a change from XFree86 CVS which adds checks for 13706 non-null return from malloc (patch by Matthieu Herrb).</p> 13707 13708 <h1><a name="xterm_83" id="xterm_83">Patch #83 - 1998/8/25 - 13709 XFree86 3.9Nb</a></h1> 13710 13711 <p>Several small fixes and enhancements:</p> 13712 13713 <ul> 13714 <li>add configure test to infer if xterm should be installed 13715 setuid based on previously installed xterm (reported by Stephen 13716 Marley and Stefan Dalibor).</li> 13717 13718 <li>implement quasi-continuous mouse reporting (integrated 13719 patch by Jason Bacon).</li> 13720 13721 <li>correct control sequences transmitted by function keys F1 13722 to F4 when sunFunctionKeys resource is true (it was still using 13723 the VT100 control sequences).</li> 13724 13725 <li>modify handling of backarrow key so that the control 13726 modifier toggles the backspace/delete interpretation set by the 13727 backarrowKey resource.</li> 13728 13729 <li>limit the row and column values used to report mouse 13730 position.</li> 13731 </ul> 13732 13733 <p>From resync with XFree86 3.9Nb:</p> 13734 13735 <ul> 13736 <li>add support for the VSTATUS control character (patch by 13737 Robert Earl <rearl@teleport.com>).</li> 13738 </ul> 13739 13740 <h1><a name="xterm_82" id="xterm_82">Patch #82 - 1998/7/15 - 13741 XFree86 3.9Aj</a></h1> 13742 13743 <p>Bug fix for patch #81:</p> 13744 13745 <ul> 13746 <li>remove an #undef for NBBY, which caused compile problem on 13747 FreeBSD (reported by David Dawes).</li> 13748 </ul> 13749 13750 <h1><a name="xterm_81" id="xterm_81">Patch #81 - 1998/7/14 - 13751 XFree86 3.9Aj</a></h1> 13752 13753 <p>More bug fixes:</p> 13754 13755 <ul> 13756 <li>fix conflicting ifdef's for TIOCSLTC when building with 13757 Linux on AXP aka DEC Alpha (reported by Robin Cutshaw).</li> 13758 13759 <li>correction to patch #79, move assignment for 13760 *utptr->ut_user = 0; back into non-SVR4 ifdef in main.c, 13761 since this clobbers username on Solaris 2.5.1 (analysis by Will 13762 Day <willday@rom.oit.gatech.edu>).</li> 13763 13764 <li>corrected khome/kend in xterm-8bit terminfo 13765 description.</li> 13766 13767 <li>improve cursor color by making it always the reverse of 13768 fg/bg unless the cursorColor resource is set, i.e., to 13769 something other than the default foreground (reported by Vikas 13770 Agnihotri and Bram Moolenaar).</li> 13771 13772 <li>minor fixes for compiler warnings, including a syntax error 13773 in the AMOEBA ifdef's.</li> 13774 </ul> 13775 13776 <p>From resync with XFree86 3.9Aj:</p> 13777 13778 <ul> 13779 <li>correction to patch #73, supply missing #else for fallback 13780 definitions of size_t, time_t (Robin Cutshaw 13781 <robin@intercore.com>).</li> 13782 </ul> 13783 13784 <h1><a name="xterm_80" id="xterm_80">Patch #80 - 1998/6/29 - 13785 XFree86 3.9Ai</a></h1> 13786 13787 <p>This fixes a couple of items leftover or introduced by patch 13788 79:</p> 13789 13790 <ul> 13791 <li>take out the logic that suppresses editing-keypad in vt100 13792 mode (those keys are too valuable to give up for a fine point 13793 of emulation).</li> 13794 13795 <li>corrected a couple of places in terminfo where I missed 13796 using the vt220-style editing-keypad codes for Find/Select 13797 (mapped to Home/End).</li> 13798 13799 <li>checked termcap file against terminfo, fix several places 13800 where it was inconsistent.</li> 13801 </ul> 13802 13803 <h1><a name="xterm_79" id="xterm_79">Patch #79 - 1998/6/28 - 13804 XFree86 3.9Ai</a></h1> 13805 13806 <p>This patch fixes several small bugs:</p> 13807 13808 <ul> 13809 <li>use X_EXTRA_LIBS in standalone Makefile.in (patch by Tomas 13810 Vanhala).</li> 13811 13812 <li>add new resource 'oldXtermFKeys' which provides backward 13813 compatibility for F1-F4 control sequences with TOG's 13814 xterm.</li> 13815 13816 <li>determine the server's default foreground/background Pixel 13817 values, needed if the -flipPixels X server option is used 13818 (reported by David Dawes).</li> 13819 13820 <li>correct logic for F1-F4 function keys so that they generate 13821 VT100 compatible escape sequences in VT220 mode, since that is 13822 what the numeric keypad is supposed to do (reported by Ron 13823 Johnson, Jr. <ronjohn@communique.net>).</li> 13824 13825 <li>modify logic for editing keypad to work more like VT220: 13826 don't pass those codes in VT100-mode unless oldXtermFKeys mode 13827 is set.</li> 13828 13829 <li>correct an interaction with the editing-keypad logic that 13830 prevented backarrow key from sending a 127 for the delete key 13831 (the 'remove' escape sequence was being sent instead).</li> 13832 13833 <li>use return-value from getuid() rather than the parameter, 13834 to work on systems which do not update the latter (patch by 13835 Kevin Buhr <buhr@mozart.stat.wisc.edu>)</li> 13836 13837 <li>correct scrollbar border color when toggling to/from secure 13838 keyboard mode (patch by Jeff Uphoff 13839 <juphoff@tarsier.cv.nrao.edu>)</li> 13840 13841 <li>modifications to terminfo file: 13842 <ul> 13843 <li>rename description to xterm-xfree86, adding an entry 13844 'xterm' which is derived from xterm-xfree86 to simplify 13845 customization.</li> 13846 13847 <li>change string for kdch1 from \177 to \E[3~, to address 13848 complaints from Debian developers. (This applies to the key 13849 labeled "Delete", and does not affect the backarrow 13850 key).</li> 13851 13852 <li>add user-strings u6, u7, u8, u9 to entries to make them 13853 work with Daniel Weaver's "tack" program.</li> 13854 13855 <li>modify xterm-24, xterm-bold, xterm-boldso entries to 13856 disentangle them from explicit dependency upon 13857 xterm-xfree86.</li> 13858 13859 <li>add generic 'xterm-color' entry.</li> 13860 13861 <li>minor corrections to xterm-xfree86, xterm-8bit, 13862 xterm-r5 and xterm-r6 entries.</li> 13863 </ul> 13864 </li> 13865 </ul> 13866 13867 <h1><a name="xterm_78" id="xterm_78">Patch #78 - 1998/6/3 - 13868 XFree86 3.9Ah and 3.3.2</a></h1> 13869 13870 <p>Again, most of the bulk of this patch is for ANSI conversion. 13871 I used the IRIX compiler's -wlint option to find the remaining 13872 functions that use K&R syntax (since gcc does not do this 13873 properly). Also, I changed the logic in the print code slightly 13874 to close unwanted files before opening a pipe to the printer. 13875 This may help in some configurations where the line printer hangs 13876 until xterm closes the pipe.</p> 13877 13878 <h1><a name="xterm_77" id="xterm_77">Patch #77 - 1998/5/26 - 13879 XFree86 3.9Ah and 3.3.2</a></h1> 13880 13881 <p>Most of the bulk of this patch is to convert the extended C 13882 (K&R functions with prototypes) to ANSI. I verified that on 13883 Linux by comparing object files, to ensure that I did not, for 13884 example, interchange parameters in the function declarations.</p> 13885 13886 <p>The rest of the patch fixes several minor bugs, and adds a few 13887 features:</p> 13888 13889 <ul> 13890 <li>back-out my use of ncurses "captoinfo -f" option 13891 (if/then/else/endif) formatting, since ncurses did not 13892 correctly filter embedded newlines in terminfo capability 13893 strings until _after_ ncurses 4.1, thus corrupting 13894 setf/setb/sgr strings (reported by Darren Hiebert and 13895 others).</li> 13896 13897 <li>document SGR 8, 28 (invisible/visible), add corresponding 13898 capabilities to terminfo description. 13899 <p>I would also add the 'prot protected capability, but the 13900 control sequences for that would not be recognized or 13901 properly ignored by the older xterm programs.</p> 13902 </li> 13903 13904 <li>modify ChangeGroup to not suppress a null-resource, but 13905 treat it as an empty string (recommended by Stefan 13906 Dalibor).</li> 13907 13908 <li>add printerAutoClose resource to control whether printer is 13909 closed when going offline. More than one person reports 13910 problems (on Solaris 2.6 and Digital Unix 4.0) getting the 13911 printer to proceed unless xterm exits; I think that it is a 13912 problem flushing the pipe. Closing it ought to flush it.</li> 13913 13914 <li>adapt TOG fix-3 to in HandleKeymapChange and VTInitI18N 13915 (but adapt XtStackAlloc/XtStackFree for clarity, as well as 13916 fixing memory leak).</li> 13917 13918 <li>change calls on FillCurBackground to ClearCurBackground, in 13919 effect using XClearArea rather than XFillRectangle when 13920 clearing as a side-effect of scrolling and insertion (patch by 13921 Alexander V Lukyanov)</li> 13922 13923 <li>correct some places where insert/delete did not _move_ the 13924 color attributes, using memmove (patch by Alexander V Lukyanov 13925 <lav@long.yar.ru>)</li> 13926 13927 <li>add ifdef's for __CYGWIN32__, for port to cygnus version 13928 B19.1 (patch by Andrew Sumner 13929 <andrew_sumner@hotmail.com>).</li> 13930 13931 <li>remove #define for hpux that turned on USE_SYSV_ENVVARS, 13932 since this causes some applications (such as 'less') to get 13933 incorrect $LINES and $COLUMNS values (reported by Clint 13934 Olsen).</li> 13935 13936 <li>modify behavior for HP-UX, to set the "reserved" process 13937 group controls to _POSIX_VDISABLE so the TIOCSLTC ioctl does 13938 not produce an error (patch by Ben Yoshino 13939 <ben@wiliki.eng.hawaii.edu>).</li> 13940 13941 <li>correct length of underlining, reducing it by one pixel to 13942 avoid leaving a dot when the application does not clear the 13943 whole screen I noticed this only recently myself (and other 13944 people as well); it depends on the font chosen. A 6x10 font 13945 shows it, but the other fonts from XTerm.ad do not. I also see 13946 a similar problem with the emulation of bold fonts. (patch by 13947 Sergei Laskavy <Laskavy@cs.msu.su>).</li> 13948 13949 <li>add include for Xos.h to xterm.h, to ensure proper 13950 definitions (reported by Holger Veit).</li> 13951 13952 <li>update config.guess to recognize Unixware 2.1 and 7 (patch 13953 by Mike Hopkirk <hops@sco.com>).</li> 13954 </ul> 13955 13956 <h1><a name="xterm_76" id="xterm_76">Patch #76 - 1998/5/8 - 13957 XFree86 3.9Ah and 3.3.2</a></h1> 13958 13959 <p>A fix for the print-window function, and some minor 13960 cleanup:</p> 13961 13962 <ul> 13963 <li>modify logic that closes pipe in the print-window function 13964 to not use pclose, which does not work on all systems, since I 13965 did not open the pipe with popen (reported by Stefan 13966 Dalibor).</li> 13967 13968 <li>correct name of $(EXTRA_LOAD_FLAGS) imake variable 13969 (reported by Stefan Dalibor).</li> 13970 13971 <li>guard logic in ChangeGroup() function against null pointer 13972 (reported by Stefan Dalibor).</li> 13973 13974 <li>ensure that menu entry for toggling sunKeyboard resource is 13975 initialized (reported by Branden Robinson 13976 <branden@purdue.edu>).</li> 13977 13978 <li>gcc unused-variable warnings (reported by Bernd Ernesti 13979 <bernd@arresum.inka.de>)</li> 13980 13981 <li>rename global variable 'buffer' to 'VTbuffer'</li> 13982 </ul> 13983 13984 <h1><a name="xterm_75" id="xterm_75">Patch #75 - 1998/5/7 - 13985 XFree86 3.9Ah and 3.3.2</a></h1> 13986 13987 <p>This incorporates fixes from several people, as well as some 13988 improvements that I made based on feedback from users:</p> 13989 13990 <ul> 13991 <li>add option to standalone configure script, 13992 "--with-own-terminfo-dir", which causes xterm to pass a 13993 predefined value of $TERMINFO to the application. Also use this 13994 value in install rule "make install-ti", for the standalone 13995 configure script. (patch & feedback from Tor Lillqvist 13996 <tml@hemuli.tte.vtt.fi>)</li> 13997 13998 <li>change ifdef's for "hpux" to "__hpux" (patch by Tor 13999 Lillqvist). The imake configuration uses the former, but the 14000 latter is predefined by HP's compilers.</li> 14001 14002 <li>define USE_SYSV_ENVVARS for HP-UX, curses does not use 14003 $TERMCAP (patch by Tor Lillqvist).</li> 14004 14005 <li>on HP-UX, use the /dev/ptym/clone device to allocate PTY's. 14006 Works both on HP-UX 9 and 10. (patch by Tor Lillqvist).</li> 14007 14008 <li>modify configure script to obtain the $(EXTRA_LOADFLAGS) 14009 value from imake, needed for compiling under DEC OSF/1 14010 (reported by Stefan Dalibor)</li> 14011 14012 <li>modify print-window action so that the printer is closed 14013 after printing a window, unless the printer was already opened 14014 (i.e., by an application running in the window). This makes the 14015 printing complete without having to exit xterm, since not all 14016 systems treat fflush through a pipe very well (reported by 14017 Stefan Dalibor)</li> 14018 14019 <li>modify printing code so that the ^M's are not printed if 14020 the printAttribute resource is set to zero (request by Stefan 14021 Dalibor).</li> 14022 14023 <li>correct typo in xterm.man, for the default value of 14024 printAttribute (reported by Stefan Dalibor).</li> 14025 14026 <li>correct printing code so that the alternate character set 14027 is printed, like other attributes, with escape sequences.</li> 14028 14029 <li>correct termcap description, removing spurious 'm' 14030 character from the 'op' capability (reported by Greg Woods 14031 <woods@weird.com>).</li> 14032 14033 <li>correct trace code so that the initial timestamp is 14034 set.</li> 14035 14036 <li>correct/modify utmp data for the Linux glibc 2 14037 configuration, so that the ut_line member is set before using 14038 it to update wtmp (patch by Bill Nottingham 14039 <wen1@cec.wustl.edu>).</li> 14040 </ul> 14041 14042 <h1><a name="xterm_74" id="xterm_74">Patch #74 - 1998/4/27 - 14043 XFree86 3.9Ag and 3.3.2</a></h1> 14044 14045 <p>This corrects a couple of recent bugs and adds a new 14046 resource:</p> 14047 14048 <ul> 14049 <li>modify definition of TRACE_CHILD so that it does not 14050 conflict with ifdef's for USE_USG_PTYS in main.c (reported by 14051 Vikas Agnihotri <VikasA@att.com> and Stefan 14052 Dalibor).</li> 14053 14054 <li>correct ownership of file (actually pipe) written by the 14055 print controls. When undoing the setuid changes in patch #69, I 14056 overlooked this. Now xterm forks a process which resets setuid 14057 and routes the printer data as the real user.</li> 14058 14059 <li>add a new resource, "printAttributes", which controls 14060 whether color attributes (or any attributes) are sent to the 14061 printer.</li> 14062 </ul> 14063 14064 <h1><a name="xterm_73" id="xterm_73">Patch #73 - 1998/4/25 - 14065 XFree86 3.9Ag and 3.3.2</a></h1> 14066 14067 <p>This patch does the following:</p> 14068 14069 <ul> 14070 <li>implements a print-window facility for xterm. Though useful 14071 in itself, I added it as part of some debugging which I am 14072 doing. (Occasionally during an exposure event xterm fails to 14073 restore the proper colors for highlighted text, and printing 14074 the screen will show the internal states nicely). 14075 <p>The print facility now also displays the color 14076 information. (I will probably make this a resource).</p> 14077 </li> 14078 14079 <li>modified the xterm-16color terminfo description to use the 14080 setaf and setab strings, which is a little more efficient 14081 (requested by Stephen Marley).</li> 14082 14083 <li>reduced some clutter of the ifdef/includes (e.g., stdlib.h, 14084 unistd.h, errno) making the configure script test for these. 14085 <p>I removed the symbols Size_t and Time_t, since they no 14086 longer serve a useful purpose.</p> 14087 </li> 14088 14089 <li>added some debugging traces to show the initial screen 14090 size, and the success/failure of the ioctl calls pass handle 14091 window resizing events to the application (for Clint Olsen). 14092 <p>I also modified the trace code to produce two files since 14093 some of the information is produced by the child process. So 14094 now they are Trace-parent.out and Trace-child.out</p> 14095 </li> 14096 14097 <li>updated configure test for ANSI compiler options to handle 14098 a special case for HP-UX 10.x (reported by Clint Olsen).</li> 14099 </ul> 14100 14101 <h1><a name="xterm_72" id="xterm_72">Patch #72 - 1998/4/17 - 14102 XFree86 3.9Ag and 3.3.2</a></h1> 14103 14104 <p>This is a patch from Chris Siebenmann 14105 <cks@hawkwind.utcs.toronto.edu>, which I have cleaned up a 14106 little, and integrated into the configure script.</p> 14107 14108 <p>From his description:</p> 14109 14110 <blockquote> 14111 <p>This set of patches is the latest incarnation of patches 14112 originally written by Ian! D Allen, then of the University of 14113 Waterloo and now of who knows where; I have been carrying them 14114 forward from xterm to xterm ever since about X11R4. What they 14115 do is add an option so that when an iconified xterm receives 14116 output it prepends '*** ' to its icon title and (optionally) 14117 beeps the bell; deiconifying the xterm removes the '*** '. Over 14118 the years I've found this to be incredibly convenient for 14119 monitoring all sorts of low-activity things.</p> 14120 </blockquote> 14121 14122 <h1><a name="xterm_71" id="xterm_71">Patch #71 - 1998/4/12 - 14123 XFree86 3.9Ag and 3.3.2</a></h1> 14124 14125 <p>This patch is a slightly modified version of one by Richard 14126 Braakman, which prevents buffer overflow in the input-method and 14127 preedit-type parsing in xterm. I changed a couple of details to 14128 make the code more maintainable, and looked for similar things - 14129 copying into a fixed-size buffer (found none, though I did spot 14130 an unused variable).</p> 14131 14132 <h1><a name="xterm_70" id="xterm_70">Patch #70 - 1998/3/29 - 14133 XFree86 3.9Af and 3.3.2</a></h1> 14134 14135 <p>This patch corrects some minor bugs in xterm, and fills in 14136 some more details in the VT220 emulation:</p> 14137 14138 <ul> 14139 <li>modify Imakefile to use SpecialCObjectRule for menu and 14140 data modules, making xterm build properly if logging is enabled 14141 (patch by Scott Sewall <scott@iprg.nokia.com>).</li> 14142 14143 <li>restore "ich" capability to terminfo entries, since Michael 14144 Schroeder points out that "ich1" is the one which is the 14145 problem in Solaris vi.</li> 14146 14147 <li>correct color of cursor, which would disappear on 14148 inverse-video since the initialization did not compare the 14149 cursor color against both foreground and background (reported 14150 by Olivier Calle).</li> 14151 14152 <li>correct abbreviation-test for -version and -help options, 14153 making command-line option -vb work (reported by Stefan 14154 Dalibor).</li> 14155 14156 <li>correct a dependency between ifdef's for OPT_I18N_SUPPORT 14157 and OPT_INPUT_METHOD (reported by Stefan Dalibor).</li> 14158 14159 <li>split-out character-set translations as new module 14160 charsets.c, to implement VT220 national replacement character 14161 sets (a mode where some of the characters are displayed as 14162 specific European glyphs). This relies on xterm using an ISO 14163 8859-1 font (approach suggested by Kenneth R. Robinette 14164 <zkrr01@mailbox.neosoft.com>).</li> 14165 14166 <li>correct a missing increment, which made SS2 and SS3 14167 controls repeat the shifted character.</li> 14168 14169 <li>add xterm-nrc to terminfo to illustrate the VT220 national 14170 replacement character sets.</li> 14171 14172 <li>reformat terminfo using new ncurses tic option "-f", which 14173 makes if/then/else/endif expressions easier to read.</li> 14174 </ul> 14175 14176 <h1><a name="xterm_69" id="xterm_69">Patch #69 - 1998/3/16 - 14177 XFree86 3.9Ad and 3.3.2</a></h1> 14178 14179 <p>This corrects the problem in xterm with utmp, reported by 14180 Olivier Calle <olivier@tc.fluke.com> as well as some other 14181 people after the XFree86 3.3.2 release.</p> 14182 14183 <p>The error was introduced by my patch #53 in XFree86 3.9r 14184 (October 1997).</p> 14185 14186 <p>The correction removes the reset of setuid/setgid before the 14187 main event loop, and solves the problem which I had worked around 14188 in a different manner: for some reason, the particular waitpid() 14189 call in creat_as() hangs, does not return when the child process 14190 exits. I changed the ifdef's to force the Linux configuration to 14191 use wait() instead. This call appears to work properly on other 14192 platforms such as SunOS and Solaris.</p> 14193 14194 <p>I also added tests in the standalone configure script to check 14195 for the existence of waitpid().</p> 14196 14197 <h1><a name="xterm_68" id="xterm_68">Patch #68 - 1998/3/4 - 14198 XFree86 3.9Ad and 3.3.1z</a></h1> 14199 14200 <p>This corrects another problem with the logic for 14201 highlightColor resource. As reported by David Dawes:</p> 14202 14203 <blockquote> 14204 <p>I've just noticed a problem with with the "inverse" control 14205 sequence (ESC[7m) with the 3.3.2 xterm. What it does is sets 14206 the background black, and the text the usual foreground colour 14207 rather than simply swapping the foreground/background.</p> 14208 </blockquote> 14209 14210 <p>This appears to be because when I added logic to check that 14211 the highlightColor was distinct from foreground and background 14212 colors, I did not add a further check to see that it was not 14213 black (I would make an explicit check for the resource not being 14214 set, but see nothing definite in the headers that would let me 14215 reference an explicitly-undefined Pixel value, though there are 14216 some implications in xpm.h). But this should work.</p> 14217 14218 <h1><a name="xterm_67" id="xterm_67">Patch #67 - 1998/2/23 - 14219 XFree86 3.9Ad and 3.3.1e</a></h1> 14220 14221 <p>This patch does the following:</p> 14222 14223 <ul> 14224 <li>improve test for highlightColor so that xterm does not 14225 attempt to use that unless it is different from the foreground 14226 and background colors (reported by Stefan Dalibor 14227 <Stefan.Dalibor@informatik.uni-erlangen.de>. 14228 <p>I could not reproduce this until I noticed that the -rev 14229 option exposed it nicely.</p> 14230 </li> 14231 14232 <li>remove ich and ich1 from xterm and xterm-8bit terminfo 14233 descriptions. SVr4 terminfo documents that you must not combine 14234 these with smir/rmir, but ncurses allows it, opening a hole. 14235 Solaris 2.6 vi does not work properly if it is using a terminfo 14236 description when these are combined, since it was written to 14237 accommodate old terminals that required it (reported by Stephen 14238 Marley).</li> 14239 14240 <li>restore 1-pixel overlap of scrollbar border with left edge 14241 of window (reported by Jim Burmeister 14242 <jimb@metrolink.com>).</li> 14243 14244 <li>add a configure option, --enable-logfile-exec, which allows 14245 the user to specify a pipe for logfile. This defines 14246 ALLOWLOGFILEEXEC.</li> 14247 14248 <li>makes the ALLOWLOGFILEEXEC code compile & run, if 14249 configured.</li> 14250 14251 <li>minor documentation nits.</li> 14252 </ul> 14253 14254 <h1><a name="xterm_66" id="xterm_66">Patch #66 - 1998/2/16 - 14255 XFree86 3.9Ad and 3.3.1d</a></h1> 14256 14257 <p>This fixes the problem reported with failure to build the 14258 <em>resize</em> program (BSDI, OSF/1) due to not having 14259 <termcap.h>, by changing the ifdef to one that would be set 14260 only if the file exists (not currently specified, except by the 14261 standalone configure script). We do not really need to include 14262 <termcap.h> to build, but only for a clean compile, since 14263 it may declare the tgetent() prototype. I also updated the 14264 man-page for <em>resize</em>, since I had recently noticed that 14265 it can be used to resize <em>xterm</em> using the "Sun" control 14266 sequences option.</p> 14267 14268 <h1><a name="xterm_65" id="xterm_65">Patch #65 - 1998/2/14 - 14269 XFree86 3.9Ad and 3.3.1c</a></h1> 14270 14271 <p>This is a small patch to xterm's 8-bit terminal description. I 14272 noticed while testing ncurses that I had specified the wrong 14273 (VT100-style) codes for the F1-F4. Xterm only uses VT220-style 14274 function keys in 8-bit mode.</p> 14275 14276 <h1><a name="xterm_64" id="xterm_64">Patch #64 - 1998/2/8 - 14277 XFree86 3.9Ad</a></h1> 14278 14279 <p>This fixes the following problems with xterm:</p> 14280 14281 <ul> 14282 <li>save/restore the ANSI foreground and background colors with 14283 the other visible attributes in the save-cursor and 14284 restore-cursor operations. This works around a problem with 14285 vim, which apparently assumed that switching between the normal 14286 and alternate screens resets the colors (reported by Jim Battle 14287 <jb@chromatic.com>). 14288 <p>It would be nice to implement save/restore cursor as a 14289 stack (and solve this type of problem completely), but that 14290 would lead to incompatibility with applications which assume 14291 they are running with a VT100 or VT220.</p> 14292 </li> 14293 14294 <li>corrects behavior of a restore-cursor operation which does 14295 not follow a save-cursor (it is supposed to set the character 14296 sets to a known initial state).</li> 14297 14298 <li>extends the sunKeyboard resource (and menu toggle) to 14299 modify the home, end and delete keys on a Sun or PC editing 14300 keypad, making them generate codes compatible with DEC VT220's 14301 Find, Select and Remove keys.</li> 14302 14303 <li>corrects a length in checking command-line options, which 14304 caused the "-help" message to not work when X was not 14305 running.</li> 14306 14307 <li>add some detail to the man-page (requested by Jason Bacon 14308 <acadix@execpc.com>)</li> 14309 14310 <li>modify the standalone configure script to ignore the broken 14311 nsl and socket libraries on IRIX 6.2 (the ones on 5.2 also are 14312 broken, so this change just widens the check for the system 14313 version number).</li> 14314 </ul> 14315 14316 <h1><a name="xterm_63" id="xterm_63">Patch #63 - 1998/2/5 - 14317 XFree86 3.9Ad</a></h1> 14318 14319 <p>This is another patch from Bjorn Helgaas 14320 <helgaas@rsn.hp.com>, which I've reviewed (and learned 14321 some). Following are his notes:</p> 14322 14323 <p>I poked around some more and finally got xterm-62 to build and 14324 run cleanly on HP-UX 10.20. Here are the patches. They look sort 14325 of ugly, so here's a little explanation:</p> 14326 14327 <ul> 14328 <li>aclocal.m4: Removed side effects from the AC_CACHE_VAL 14329 commands in CF_FUNC_TGETENT. Previously, LIBS was set inside 14330 AC_CACHE_VAL, which worked fine the first time configure was 14331 run, but failed if there were cached values.</li> 14332 14333 <li>aclocal.m4: Added temporary setting of LIBS before 14334 AC_TRY_LINK in CF_FUNC_TGETENT. Previously, the last value set 14335 by the AC_TRY_RUN loop was used, so only -lcurses was 14336 checked.</li> 14337 14338 <li>configure.in: Added temporary setting of CPPFLAGS before 14339 AC_CHECK_HEADERS for X11 files. Previously 14340 <X11/DECkeysym.h> and <X11/Xpoll.h> were found only 14341 if they were in the compiler's default include directories, 14342 even if `--x-includes=DIR' had been used or AC_PATH_XTRA had 14343 found them elsewhere.</li> 14344 </ul> 14345 14346 <p>The problem on HP-UX was that we were linking with -lcurses 14347 rather than -ltermcap due to the second bullet above, and 14348 apparently something in HP-UX curses is broken. This seems very 14349 strange, because the only thing used is tgetent, which should 14350 affect any tty/pty configuration, but I lost interest in tracking 14351 down the exact problem.</p> 14352 14353 <h1><a name="xterm_62" id="xterm_62">Patch #62 - 1998/1/23 - 14354 XFree86 3.9Ac</a></h1> 14355 14356 <p>This is a patch mostly by Bjorn Helgaas 14357 <helgaas@dhc.net> (I added the os2main.c change, and a 14358 little of the documentation). From Bjorn's description:</p> 14359 14360 <ul> 14361 <li>If you use the "-hc <color>" option or set the 14362 "highlightColor" resource, text is highlighted by changing only 14363 the background color, rather than using reverse video. I find 14364 this easier to read, especially when selecting multi-colored 14365 text, and it is similar to the way Netscape shows 14366 selections.</li> 14367 14368 <li>Most of the code changes are under "#if 14369 OPT_HIGHLIGHT_COLOR". The principal exception is in screen.c, 14370 where I added a couple calls to resetXtermGC(). This seems like 14371 it could be a bug even without the color highlighting changes 14372 (though I don't pretend to understand all the logic).</li> 14373 </ul> 14374 14375 <h1><a name="xterm_61" id="xterm_61">Patch #61 - 1998/1/17 - 14376 XFree86 3.9Ac</a></h1> 14377 14378 <p>This patch modifies the reset behavior of xterm slightly:</p> 14379 14380 <ul> 14381 <li>change the terminfo entry so that rs1 (one of the strings 14382 used by the 'reset' program) does a hard reset rather than 14383 switching character sets. This is more in accord with other 14384 terminal descriptions.</li> 14385 14386 <li>modifies the treatment of hard reset by the xterm program 14387 to reset the saved lines.</li> 14388 14389 <li>corrects hard reset by also resetting user-defined keys, 14390 i.e., DECUDK.</li> 14391 </ul> 14392 14393 <h1><a name="xterm_60" id="xterm_60">Patch #60 - 1998/1/10 - 14394 XFree86 3.9Ab</a></h1> 14395 14396 <p>This fixes some minor bugs and adds new functionality:</p> 14397 14398 <ul> 14399 <li>add support for blinking text. 14400 <ul> 14401 <li>This does not actually cause the text to flash, but 14402 text with the blink attribute can be displayed in color, 14403 using new resources colorBL and colorBLMode.</li> 14404 14405 <li>If colors are not used, the blinking text will be 14406 displayed as before (just like bold). The main purpose of 14407 this is to make applications work properly when they assume 14408 the emulator supports blinking text.</li> 14409 14410 <li>I did this by moving the per-cell LINEWRAPPED flag to a 14411 per-line flag, to make room for the new BLINK flag. There 14412 were no per-line flags, so this changes a lot of 14413 logic.</li> 14414 </ul> 14415 </li> 14416 14417 <li>corrected missing save-cursor logic in the handling of SGR 14418 1048 (the new control sequence I added in patch #54, 14419 1997/10/17). Reported by Darren Hiebert.</li> 14420 14421 <li>flush the output of the transparent printing after each 14422 line Reported by Tomas Vanhala 14423 <vanhala@ling.helsinki.fi>.</li> 14424 14425 <li>correct the modes that are affected by save/restore cursor 14426 by adding WRAPAROUND and PROTECTED.</li> 14427 14428 <li>corrected placement of one of the XSync calls that I added 14429 in patch #51, 1997/9/15, which had the side-effect of writing 14430 on the window border when the xterm was resizing from 132 to 80 14431 columns.</li> 14432 14433 <li>work around an incompatibility of the XKB definition used 14434 in xterm versus that symbol from IRIX 6.2's imake definitions 14435 (by adjusting the standalone configure script).</li> 14436 </ul> 14437 14438 <h1><a name="xterm_59" id="xterm_59">Patch #59 - 1998/1/5 - 14439 XFree86 3.9Ab</a></h1> 14440 14441 <p>My last patch has an off-by-one error in the comparison for 14442 argc. Douglas Kosovic <douglask@dstc.edu.au> showed me 14443 where (he got a core dump). Also, I think this explains Clint 14444 Olsen's problem, but the symptoms were more subtle (EINVAL for a 14445 system call if the -display option is omitted).</p> 14446 14447 <h1><a name="xterm_58" id="xterm_58">Patch #58 - 1998/1/3 - 14448 XFree86 3.9Ab</a></h1> 14449 14450 <p>This patch does the following:</p> 14451 14452 <ul> 14453 <li>implement logic to permit xterm to work with proportional 14454 fonts. 14455 <ul> 14456 <li>Thomas Wolff <Thomas.Wolff@sietec.de> requested 14457 this (but it isn't exactly what he's asking for - that's a 14458 more involved task).</li> 14459 14460 <li>I chose to do this by rendering the characters on a 14461 fixed pitch, because it would not be useful for existing 14462 applications to display varying numbers of characters on 14463 each line.</li> 14464 14465 <li>Except that this forces the display to be wider, it 14466 works reasonably well. A couple of special cases (reverse + 14467 colorBD, for example) do not display with proper colors, 14468 since the inter-character gaps are painted with the 14469 background.</li> 14470 </ul> 14471 </li> 14472 14473 <li>added a version number to the program (several people have 14474 requested this).</li> 14475 14476 <li>make the -version and -help options interpreted before the 14477 program attempts to open the display.</li> 14478 14479 <li>minor reorganization of the man-page (ordered the options, 14480 resources and translations alphabetically - and eliminated some 14481 duplication).</li> 14482 14483 <li>corrected a misspelled filename in Makefile.in, and added a 14484 lint rule.</li> 14485 14486 <li>updated the configure script to correct behavior when it 14487 cannot find imake, as well as to fix the IRIX+gcc build 14488 (conflict with /usr/include).</li> 14489 14490 <li>regenerated the configure script with a newer patch to 14491 autoconf that fixes a problem with environment space vs the 14492 configure --help message.</li> 14493 </ul> 14494 14495 <h1><a name="xterm_57" id="xterm_57">Patch #57 - 1997/12/26 - 14496 XFree86 3.9Aa</a></h1> 14497 14498 <p>This patch is mostly concerned with the standalone configure 14499 script; a few minor corrections are added:</p> 14500 14501 <ul> 14502 <li>add configure option --disable-tek4014, to allow xterm to 14503 be built without the tek4014 emulation.</li> 14504 14505 <li>add configure option --with-terminal-type, to allow xterm 14506 to be compiled with default $TERM value other than "xterm" 14507 (e.g., "xterm-16color") -- requested by Stephen Marley 14508 <stephen@memex.com>.</li> 14509 14510 <li>fix a typo in the configure --help message -- reported by 14511 Darren Hiebert <darren@hmi.com>.</li> 14512 14513 <li>review diffs between main.c and os2main.c, to make them 14514 more alike. (applies some minor bug-fixes to OS/2's 14515 version).</li> 14516 14517 <li>add missing quotes in memmove/bcopy configure test</li> 14518 </ul> 14519 14520 <h1><a name="xterm_56" id="xterm_56">Patch #56 - 1997/11/28 - 14521 XFree86 3.9x</a></h1> 14522 14523 <p>This patch is based on analysis by Arfst Ludwig 14524 <arfst@luxor.IN-Berlin.DE>, who reported:</p> 14525 14526 <blockquote> 14527 <p>Setting the following resources xterm (all current versions) 14528 receives a segmentation fault on <Btn2Up> after 14529 scrolling:</p> 14530 14531 <pre> 14532 *XTerm*VT100*translations: #override \ 14533 ~Shift~Ctrl<Btn2Up>: insert-selection(PRIMARY, CUT_BUFFER0)\n\ 14534 Shift~Ctrl<Btn2Up>: insert-selection(CLIPBOARD, CUT_BUFFER1)\n\ 14535 ~Shift<BtnUp>: select-end(PRIMARY, CUT_BUFFER0)\n\ 14536 Shift<BtnUp>: select-end(CLIPBOARD, CUT_BUFFER1) 14537</pre> 14538 <p>(The above resources intention is to be able to paste the 14539 latest selection even if the xterm was cleared.)</p> 14540 14541 <p>And here is how it works (and a fix!): The widget given to 14542 the action handler as first argument is not guaranteed to be a 14543 XtermWidget (it can be the ScrollbarWidget). Instead of 14544 accessing the widget's member directly XtDisplay gives the 14545 required pointer in a safe way.</p> 14546 </blockquote> 14547 14548 <p>I noticed that this was not the only instance (by reading the 14549 code, and testing with his example), and extended the solution to 14550 check the widget-class to ensure that it is indeed xterm's widget 14551 class before attempting to use it in the context of 14552 translations.</p> 14553 14554 <h1><a name="xterm_55" id="xterm_55">Patch #55 - 1997/11/25 - 14555 XFree86 3.9x</a></h1> 14556 14557 <p>This fixes the segmentation violation noted by Rogier Wolff 14558 about a month ago. He'd set xterm to 400 (rows) by 150 columns, 14559 which broke because there were limited buffers (200 rows) used 14560 for juggling data when adding or deleting lines and for switching 14561 between alternate and normal screens. I replaced this by an 14562 allocated buffer.</p> 14563 14564 <p>The bug is simple to test if you set titeInhibit false.</p> 14565 14566 <h1><a name="xterm_54" id="xterm_54">Patch #54 - 1997/10/17 - 14567 XFree86 3.9s</a></h1> 14568 14569 <p>This patch does the following:</p> 14570 14571 <ul> 14572 <li>correct a minor placement problem with the right 14573 scrollbar.</li> 14574 14575 <li>implement a new set of control sequences for switching 14576 between the normal and alternate VT100 screens. These work 14577 around the older sequences limitation that required 14578 modification of the runtime $TERMCAP to cooperate with the 14579 titeInhibit resource (that can't work with terminfo). I do this 14580 by moving all of the functionality of the rmcur terminfo 14581 capability into the control sequences.</li> 14582 14583 <li>implement the alternate-screen menu entry</li> 14584 </ul> 14585 14586 <h1><a name="xterm_53" id="xterm_53">Patch #53 - 1997/10/12 - 14587 XFree86 3.9r</a></h1> 14588 14589 <p>This patch adds a fix and implements a new feature (as well as 14590 some minor typos):</p> 14591 14592 <ul> 14593 <li>JCHANDRA@Inf.COM (JCHANDRA) noted that there was still a 14594 problem with the wait call with the logging option. It hung 14595 when the logfile was opened as a command-line option. I fixed 14596 this by moving the StartLogging() call down past the place 14597 where I'd reset the setuid mode. So the logfile is opened as 14598 the real user, without having to fork.</li> 14599 14600 <li>improve Rohleder's changes by renaming the command-line 14601 options and reducing the number of ifdef's.</li> 14602 14603 <li>implement right-scrollbars for xterm (patch by Michael 14604 Rohleder <michael.rohleder@stadt-frankfurt.de>).</li> 14605 </ul> 14606 14607 <h1><a name="xterm_52" id="xterm_52">Patch #52 - 1997/9/29 - 14608 XFree86 3.9q</a></h1> 14609 14610 <p>This patch addresses bugs and requests reported by</p> 14611 14612 <ul> 14613 <li>Bob Maynard <rmaynard@montana.com>,</li> 14614 14615 <li>Clint Olsen <olsenc@ichips.intel.com>,</li> 14616 14617 <li>JCHANDRA@Inf.COM (JCHANDRA),</li> 14618 14619 <li>Michael Schroeder 14620 <Michael.Schroeder@informatik.uni-erlangen.de>,</li> 14621 14622 <li>Pablo Ariel Kohan <pablo@memco.co.il></li> 14623 </ul> 14624 14625 <p>Some of the changes are interrelated (it was an unusually busy 14626 week).</p> 14627 14628 <ul> 14629 <li>change the default resource value for colorMode to true, 14630 matching the Xterm.ad file.</li> 14631 14632 <li>correct behavior of 'ech' control, making the default and 0 14633 parameters erase one character rather than to the end of line 14634 (reported by Michael Schroeder).</li> 14635 14636 <li>add resource boldColors, command-line options +pc and -pc 14637 and configure-script option to specify behavior of xterm's 14638 mapping bold colors 0 through 7 to colors 8 through 15. 14639 (request by Pablo Ariel Kohan).</li> 14640 14641 <li>add resource colorAttrMode to specify whether colorULMode 14642 and colorBDMode can override the ANSI colors (report by Clint 14643 Olsen).</li> 14644 14645 <li>correct a conflict between colorULMode/colorBDMode versus 14646 ANSI colors, where exposure events would occasionally pick up 14647 the former (e.g., colorBD) rather than ANSI colors. Testing the 14648 colorAttrMode made this apparent, though it has been in the 14649 code since 3.2A (patch #35 in Jan 1997).</li> 14650 14651 <li>correct two problems with the optional logging support. On 14652 Linux at least, the waitpid call in creat_as hangs when the 14653 logging is toggled from the popup menu. Also, the mktemp 14654 template has the wrong number of X's (since X11R5!). Fixed the 14655 waitpid problem by exploiting the fact that the setuid behavior 14656 is reset before the popup menus are available. (reported by 14657 Jayachandran C.).</li> 14658 14659 <li>add configure script options for building with the Xaw3d 14660 and neXtaw libraries.</li> 14661 14662 <li>correct CF_IMAKE_CFLAGS standalone configure script macro, 14663 so that it will pick up $(ALLDEFINES) rather than 14664 $(STD_DEFINES). This is needed to make scrollbars work on 14665 Linux, since that uses narrow prototypes. (reported by Bob 14666 Maynard).</li> 14667 14668 <li>various minor updates to configure-script macros.</li> 14669 </ul> 14670 14671 <h1><a name="xterm_51" id="xterm_51">Patch #51 - 1997/9/15 - 14672 XFree86 3.9p</a></h1> 14673 14674 <p>Most of this patch is related to the standalone configure 14675 script, though there are fixes/enhancements as well:</p> 14676 14677 <ul> 14678 <li>add a new resource sunKeyboard, with associated 14679 command-line option and menu-toggle that allows using a normal 14680 Sun or PC keyboard to generated the complete DEC-style function 14681 keys and keypad.</li> 14682 14683 <li>correct a reversed foreground/background test in the 14684 control sequence that replies with the current SGR 14685 settings.</li> 14686 14687 <li>correct, by invoking XSync, a display problem that caused 14688 the program to not properly update newly exposed areas when a 14689 font change or 80/132 resize request was not completely 14690 accepted.</li> 14691 14692 <li>restructured autoconf macros (I made a library of all of 14693 the macros across the complicated configure scripts I'm working 14694 on).</li> 14695 14696 <li>use the autoconf config.guess and config.sub scripts to 14697 better identify the host-os.</li> 14698 14699 <li>improve the configure script that uses 'imake' as a 14700 fallback for definitions.</li> 14701 14702 <li>correct several instances of unsigned/signed mixed 14703 expressions.</li> 14704 </ul> 14705 14706 <p>I've tested the configure script on Linux, SunOS 4.1.3, 14707 Solaris 2.5.1, IRIX 5.2 and 6.2, AIX 3.2.5 and CLIX 3.1 (all but 14708 the last run properly as well).</p> 14709 14710 <h1><a name="xterm_50" id="xterm_50">Patch #50 - 1997/8/22 - 14711 XFree86 3.9m</a></h1> 14712 14713 <p>This is a collection of small fixes, and a couple of minor 14714 enhancements:</p> 14715 14716 <ul> 14717 <li>plug a security hole in the implementation of Media Copy 14718 (print) by invoking setuid just before the main loop.</li> 14719 14720 <li>add an ifdef'd include for <sys/termio.h> for HP-UX, 14721 which allows the program to process SIGWINCH events (this is a 14722 bug in X11R6.3)</li> 14723 14724 <li>add state-table entries for VT52 emulation to enter/exit 14725 keypad application mode.</li> 14726 14727 <li>disable the popup-menu entry for 8-bit controls when the 14728 terminal-id is less than 200 (e.g., VT52 or VT100).</li> 14729 14730 <li>ensure that the popup-menu entry for 8-bit controls is 14731 updated when the application enables/disables this mode, 14732 including the response to a full-reset.</li> 14733 14734 <li>implement VT300 DECBKM feature: set interpretation of the 14735 backarrow key to either backspace or delete. The initial 14736 setting is via resource; it can also be modified in the main 14737 popup menu.</li> 14738 14739 <li>implement VTxxx KAM (ISO AM), which allows a keyboard to be 14740 locked (i.e., the terminal discards input).</li> 14741 14742 <li>implement VTxxx SRM, which is used to control local echoing 14743 of input on the terminal.</li> 14744 14745 <li>add terminfo and termcap entries for xterm-8bit, a 14746 variation of the xterm description that uses 8-bit control 14747 characters.</li> 14748 14749 <li>add fallback definitions for Imakefile to allow it to work 14750 on some X11R5 systems that have no SpecialCObjectRule or 14751 ProgramTargetName macros.</li> 14752 14753 <li>add .c.o and .c.i rules to standalone Makefile.in</li> 14754 14755 <li>correct order of -lXmu and -lXext in standalone configure 14756 script.</li> 14757 14758 <li>add configure script options to allow selective disabling 14759 of active-icon, input-method and i18n code (mainly for users 14760 with X11R5 or an incomplete X11R6 configuration).</li> 14761 14762 <li>change menu-indices from #define's to enum values, thereby 14763 making it work better with the ifdef's for logging and 14764 active-icon (the X11R6.3 active-icon code is incorrectly 14765 ifdef'd; this corrects an error introduced by incorporating 14766 that code).</li> 14767 14768 <li>correct minor compile errors in the configuration where 14769 active-icon is not used.</li> 14770 14771 <li>add configure option to suppress echoing of long compiler 14772 commands</li> 14773 14774 <li>correct spelling of decTerminalID in configure script help 14775 message</li> 14776 14777 <li>use gcc __attribute__((unused)) to quiet warnings about 14778 unused parameters when compiling with -W (to make it simpler to 14779 find the real problems).</li> 14780 </ul> 14781 14782 <h1><a name="xterm_49" id="xterm_49">Patch #49 - 1997/8/10 - 14783 XFree86 3.9k</a></h1> 14784 14785 <p>This patch implements the VT100/VT220 Media Copy (i.e., 14786 print-screen) control sequences.</p> 14787 14788 <h1><a name="xterm_48" id="xterm_48">Patch #48 - 1997/7/26 - 14789 XFree86 3.9j</a></h1> 14790 14791 <p>This patch does the following (all but the first affect only 14792 the standalone configure script):</p> 14793 14794 <ul> 14795 <li>minor correction to positioning of underlines for small 14796 (e.g., 5x8) font size. 14797 <p>The existing behavior allowed underlines to be drawn 14798 outside the character-cell, so they weren't cleared properly 14799 under some circumstances.</p> 14800 </li> 14801 14802 <li>adds more special-case tokens to the standalone configure 14803 script's imake-option filter (e.g., "&&", since a "make 14804 -n main.o" on my IRIX system uses that shell construct).</li> 14805 14806 <li>adds a '--enable-logging' option for the standalone 14807 configure script.</li> 14808 14809 <li>adds check and ifdef's for the standalone configure script 14810 to allow for building on platforms with X11R6, which lacks 14811 Xpoll.h (introduced in X11R6.1).</li> 14812 </ul> 14813 14814 <h1><a name="xterm_47" id="xterm_47">Patch #47 - 1997/7/13 - 14815 XFree86 3.9i</a></h1> 14816 14817 <p>This patch does the following</p> 14818 14819 <ul> 14820 <li>corrects an indexing error in the doublesize character 14821 logic (button.c) that caused core dump (this was reported by J. 14822 Wunsch).</li> 14823 14824 <li>corrects the logic of ShowCursor when it is painting in a 14825 doublesize cell (charproc.c).</li> 14826 14827 <li>corrects, according to vttest, the behavior when switching 14828 to doublesize characters and back again (doublechr.c).</li> 14829 14830 <li>adds cbt (back_tab) to the terminfo description (this was 14831 something that I'd overlooked as applicable to curses 14832 optimization last summer).</li> 14833 14834 <li>corrects, for the standalone xmc test, the logic for 14835 disabling xmc.</li> 14836 </ul> 14837 14838 <h1><a name="xterm_46" id="xterm_46">Patch #46 - 1997/7/4 - 14839 XFree86 3.9h</a></h1> 14840 14841 <p>This is a patch to provide test-support for some work I'm 14842 doing on ncurses. It does not modify the normal configuration of 14843 xterm; the code is compiled if the standalone configure option 14844 "--enable-xmc-glitch" is specified.</p> 14845 14846 <h1><a name="xterm_45" id="xterm_45">Patch #45 - 1997/7/2 - 14847 XFree86 3.9h</a></h1> 14848 14849 <p>This fixes the problem reported with xterm's cursor color 14850 versus the background (the second chunk in this patch) and also 14851 removes some duplicate initialization of the cursor GC's. If the 14852 cursor color at startup is the same as the background, then xterm 14853 will use the reverse GC, ignoring the setting of the colorMode 14854 resource.</p> 14855 14856 <h1><a name="xterm_44" id="xterm_44">Patch #44 - 1997/6/22 - 14857 XFree86 3.9g</a></h1> 14858 14859 <p>This implements the first part of the VT100 doublesize 14860 characters for xterm, as well as fixing a handful of bugs:</p> 14861 14862 <ul> 14863 <li>the doublesize character support uses the normal font 14864 (using scaled fonts will be another patch) with blanks to 14865 simulate doublesize characters. This patch does most of the 14866 global changes that'll be required. I've hidden most of the 14867 details in macros and ifdef's so it's easy to configure out 14868 (part of the patch is a configure option for that 14869 purpose).</li> 14870 14871 <li>corrected limits in DeleteChar() function -- it's always 14872 ignored the size of the left border and scrollbar. I noticed 14873 this when working on the doublesize characters since the glitch 14874 was doubled in size (i.e., it wrapped some garbage around the 14875 right margin).</li> 14876 14877 <li>corrected 'memmove()' logic, for standalone builds (it 14878 referenced a malloc wrapper from my development library).</li> 14879 14880 <li>add a check for HideCursor() to prevent repeated screen 14881 updates (which can cause a spurious cursor glitch to appear, 14882 e.g., during scrolling). I noticed this with the 3.2A version 14883 (but only a few weeks ago, when I started working on this 14884 patch).</li> 14885 </ul> 14886 14887 <h1><a name="xterm_43" id="xterm_43">Patch #43 - 1997/6/10 - 14888 XFree86 3.9d</a></h1> 14889 14890 <p>Here's a fix for two problems:</p> 14891 14892 <ul> 14893 <li>modify handling of tgetent results in xterm and resize 14894 programs to make them tolerant of missing termcap file, or 14895 unknown terminal name. In this scheme, an explicit "-tn" option 14896 will succeed, overriding the fallback list.</li> 14897 14898 <li>a nit in the configure script (log extra information to 14899 help diagnose which case of the test-compile of tgetent was 14900 used).</li> 14901 </ul> 14902 14903 <h1><a name="xterm_42" id="xterm_42">Patch #42 - 1997/6/8 - 14904 XFree86 3.2Xl</a></h1> 14905 14906 <p>Bram Moolenaar reported that the cursor color changed 14907 unexpectedly while scrolling. The cause was that it used the same 14908 GC's as the logic that draws the ANSI colors. The bug only 14909 appears if the cursorColor resource isn't set, and has been 14910 present since the initial implementation early last year. (The 14911 same bug also appears in rxvt ;-). Here's a fix.</p> 14912 14913 <h1><a name="xterm_41" id="xterm_41">Patch #41 - 1997/5/28 - 14914 XFree86 3.2Xl</a></h1> 14915 14916 <p>Some nits found by Darren Hiebert (missing part of 14917 install-rule, incorrect assignment for --enable-color-mode 14918 option).</p> 14919 14920 <h1><a name="xterm_40" id="xterm_40">Patch #40 - 1997/5/26 - 14921 XFree86 3.2Xl</a></h1> 14922 14923 <p>Patch for the configure script's logic for obtaining imake 14924 predefined symbols.</p> 14925 14926 <h1><a name="xterm_39" id="xterm_39">Patch #39 - 1997/5/24 - 14927 XFree86 3.2Xl</a></h1> 14928 14929 <p>This patch does the following:</p> 14930 14931 <ul> 14932 <li>integrate the 16-color change for 'xterm'</li> 14933 14934 <li>minor fixes/clarification of tgetent in terminfo vs termcap 14935 to 'resize'</li> 14936 </ul> 14937 14938 <p>(both changes also modify the configure script)</p> 14939 14940 <h1><a name="xterm_38" id="xterm_38">Patch #38 - 1997/5/22 - 14941 XFree86 3.2Xh</a></h1> 14942 14943 <p>This implements a simple configuration script with autoconf 14944 (to which I'll add more options later). It does the 14945 following:</p> 14946 14947 <ul> 14948 <li>configures xterm to build with X11R5 (at least on SunOS 14949 4.1, Solaris 2.4, possibly IRIX - sorry network was down today, 14950 but I did test an earlier version yesterday).</li> 14951 14952 <li>enables/disables the configuration ifdef's for ANSI color 14953 and VT52 emulation.</li> 14954 </ul> 14955 14956 <p>It does not make tests for the things that imake does (that's 14957 another project), instead it uses a hybrid of the autoconf tests 14958 for libraries and adds imake's compiler options (which are 14959 necessary in some cases to get main.c to compile).</p> 14960 14961 <h1><a name="xterm_37" id="xterm_37">Patch #37 - 1997/5/7 - 14962 XFree86 3.9a</a></h1> 14963 14964 <p>This corrects a minor, but annoying error in the vt220 14965 emulation: the DECUDK is only supposed to be interpreted for 14966 _shifted_ function keys.</p> 14967 14968 <h1><a name="xterm_36" id="xterm_36">Patch #36 - 1997/1/16 - 14969 XFree86 3.2r</a></h1> 14970 14971 <p>This corrects something that I overlooked in patch #27 14972 (21-aug-1996), which is that when trimming the region to be 14973 repainted for the highlightSelection resource of xterm, I still 14974 have to paint the background past the highlighted region. This 14975 only happens when I first do a selection in a window that's 14976 partly off-screen, then move the window on-screen.</p> 14977 14978 <h1><a name="xterm_35" id="xterm_35">Patch #35 - 1997/1/7 - 14979 XFree86 3.2o</a></h1> 14980 14981 <p>This patch does the following:</p> 14982 14983 <ul> 14984 <li>combines the coding for foreground and background colors 14985 into a single byte, reducing the memory required to store 14986 saved-lines in color. (I'll take back that byte in a following 14987 patch to use to ensure the character-set, so there's no 14988 long-term decrease in memory use).</li> 14989 14990 <li>modifies the PF1-PF4 coding in termcap/terminfo. Because 14991 xterm is still by default emulating vt100, the function key 14992 codes are vt100-compatible (I overlooked this in patch #31). I 14993 also reformatted the whole terminfo file into a single-column, 14994 for consistency.</li> 14995 14996 <li>adds an interim xterm-vt220 description to accommodate the 14997 old and new styles of function-keys (though probably it'd be 14998 better to drop the old-style altogether).</li> 14999 </ul> 15000 15001 <h1><a name="xterm_34" id="xterm_34">Patch #34 - 1997/1/5 - 15002 XFree86 3.2o</a></h1> 15003 15004 <p>This patch does the following:</p> 15005 15006 <ul> 15007 <li>implement DECSTR (soft terminal reset). The biggest diff is 15008 due to adding another state table (note that there's only one 15009 useful state here, but it's only 256 bytes rather than 1k as it 15010 would have been before I reduced the size of state 15011 entries).</li> 15012 15013 <li>some minor tidying up (e.g., signed/unsigned use bitcpy, 15014 MODE_DECCKM, resetColor, resetCharsets). More is done in patch 15015 #35.</li> 15016 </ul> 15017 15018 <p>I got the description of DECSTR from a vt420 user's manual. 15019 I'll do some testing with vttest to ensure that there's nothing 15020 else to do than what was documented.</p> 15021 15022 <h1><a name="xterm_33" id="xterm_33">Patch #33 - 1996/11/24 - 15023 XFree86 3.2</a></h1> 15024 15025 <p>This adds to the reset-fix by Matthieu Herrb 15026 <Mathieu.Herrb@mipnet.fr> a small change to make xterm able 15027 to output 8-bit characters in VT100 mode. Applications that run 15028 on real VT100's don't do that anyway, and this feature should be 15029 removed sometime after finishing off the VT220 emulation (VT220's 15030 can do 8-bit characters). That would be a good time to change the 15031 default terminal-id to 220.</p> 15032 15033 <h1><a name="xterm_32" id="xterm_32">Patch #32 - 1996/11/21 - 15034 XFree86 3.2</a></h1> 15035 15036 <p>This implements the REP (repeat) control for xterm. That isn't 15037 part of the DEC VTxxx series, but is defined in ISO 6429. (Note 15038 that the base xterm terminal description is <em>not</em> changed 15039 -- I added a variant, "xterm-rep").</p> 15040 15041 <h1><a name="xterm_31" id="xterm_31">Patch #31 - 1996/11/16 - 15042 XFree86 3.2</a></h1> 15043 15044 <p>This implements vt52 emulation in xterm (ifdef'd so it can be 15045 removed). I've been using it for testing for the past month or 15046 so.</p> 15047 15048 <h1><a name="xterm_30" id="xterm_30">Patch #30 - 1996/11/16 - 15049 XFree86 3.2</a></h1> 15050 15051 <p>From bug-report by <auroux@clipper.ens.fr> (Denis 15052 Auroux), missing reset to ground state. I checked through the 15053 rest of <em>that</em> table and found another, in the 15054 unimplemented MC (screen print).</p> 15055 15056 <h1><a name="xterm_29" id="xterm_29">Patch #29 - 1996/9/15 - 15057 XFree86 3.1.2Gb</a></h1> 15058 15059 <p>This patch does the following:</p> 15060 15061 <ul> 15062 <li>corrects the restoration of color for bold/underline color 15063 mode</li> 15064 15065 <li>adds a resource 'decTerminalID' to control the reporting 15066 level of xterm (e.g., VT100, VT220).</li> 15067 15068 <li>uses the new resource to implement/correct the DA1, DA2 and 15069 DECRPTUI reports.</li> 15070 15071 <li>change valid-response code in DECRQSS from 0 to 1 (the 15072 manual says 0, but the VT420 terminal I've been testing on says 15073 1).</li> 15074 </ul> 15075 15076 <p>All of these changes are based on vttest 2.6</p> 15077 15078 <p>(Most of the volume in the patch is to add 2 more state tables 15079 for parsing the 2nd/3rd device-attribute controls).</p> 15080 15081 <h1><a name="xterm_28" id="xterm_28">Patch #28 - 1996/8/31 - 15082 XFree86 3.1.2F</a></h1> 15083 15084 <p>This patch corrects the following reported by Roland Rosenfeld 15085 <roland@spinnaker.rhein.de>:</p> 15086 15087 <ul> 15088 <li>handle SGR 22, 24 and 25 in combination with colorUL and 15089 colorBD resources. Also noted & fixed reset of colored 15090 underline/bold with SGR 0.</li> 15091 15092 <li>a typo in the termcap (missing '['), from 3.1.2Dj (my 15093 error)</li> 15094 </ul> 15095 15096 <p>Roland also complained that he couldn't use box characters 15097 with</p> 15098 15099 <pre> 15100 -adobe-courier-bold-r-normal--12-120-75-75-m-70-iso8859-1 15101</pre> 15102 <p>but that's a known xterm limitation (the box characters must 15103 be part of the font, in the first 32 locations).</p> 15104 15105 <h1><a name="xterm_27" id="xterm_27">Patch #27 - 1996/8/21 - 15106 XFree86 3.1.2Ek</a></h1> 15107 15108 <p>This patch fixes one of my long-term gripes: xterm's selection 15109 doesn't clearly show what's being selected (as per David's 15110 request, it's controlled by a resource, which defaults to the 15111 older behavior).</p> 15112 15113 <h1><a name="xterm_26" id="xterm_26">Patch #26 - 1996/8/20 - 15114 XFree86 3.1.2Ei</a></h1> 15115 15116 <p>Here's a patch to fix a problem with xterm's cut/paste and 15117 another to modify the appearance of the highlighting while 15118 selecting. (The changes are independent, so you can see if the 15119 change to screen.c is desirable).</p> 15120 15121 <h1><a name="xterm_25" id="xterm_25">Patch #25 - 1996/8/18 - 15122 XFree86 3.1.2Ei</a></h1> 15123 15124 <p>Here's a correction for two minor bugs that I picked up in 15125 testing, plus some lint (from Solaris 2.5) where NULL was used 15126 incorrectly:</p> 15127 15128 <ul> 15129 <li>make the second alternate font the same as the first 15130 (that's what vt420 and dtterm do)</li> 15131 15132 <li>corrected DECSCL report when DECSCL hasn't been set (i.e., 15133 don't return a '60').</li> 15134 </ul> 15135 15136 <h1><a name="xterm_24" id="xterm_24">Patch #24 - 1996/8/11 - 15137 XFree86 3.1.2Ee</a></h1> 15138 15139 <p>This patch does several things. In effect, xterm can (I think) 15140 do a reasonably good job of emulating vt220 and vt320 terminals 15141 (as well as it was doing vt100, at any rate ;-).</p> 15142 15143 <p>It does NOT do:</p> 15144 15145 <ul> 15146 <li>soft fonts</li> 15147 15148 <li>rigel or sixel graphics</li> 15149 </ul> 15150 15151 <p>Anyway, I:</p> 15152 15153 <ul> 15154 <li>added ECH, CPL, CNL, SU, SD, CBT, CHT controls</li> 15155 15156 <li>added popup-menu for switching between DEC and Sun function 15157 keys. (corrected alignment err wrt logging entry at that 15158 point).</li> 15159 15160 <li>make xterm recognize both 8-bit and 7-bit controls 15161 (including popup menu for switching modes).</li> 15162 15163 <li>add user-definable function keys (aka DECUDK)</li> 15164 15165 <li>support concealed text</li> 15166 15167 <li>support protected text (both ISO compatible and DEC 15168 compatible - that's not the same thing, btw), with SPA, EPA, 15169 DECSCA, DECSED, DECSEL controls.</li> 15170 15171 <li>implement DECSCL.</li> 15172 </ul> 15173 15174 <p>I'll be continuing to test this patch for a while, but don't 15175 expect to add any new functionality (it passes all of the current 15176 tests I've built in vttest, but I need to make more tests)..</p> 15177 15178 <h1><a name="xterm_23" id="xterm_23">Patch #23 - 1996/7/31 - 15179 XFree86 3.1.2Ec</a></h1> 15180 15181 <p>This removes the blinking cursor I added last week (for 15182 performance reasons). Time-permitting, I'll revisit this after 15183 3.2 is released (there <em>will</em> be more work after XFree86 15184 3.2, I assume).</p> 15185 15186 <h1><a name="xterm_22" id="xterm_22">Patch #22 - 1996/7/26 - 15187 XFree86 3.1.2Ec</a></h1> 15188 15189 <p>I looked more closely at my "double-negative" and realized 15190 that I had been confused by the default color scheme (black on 15191 white) in combination with reverse video. However, I did see that 15192 the original_fg and original_bg data weren't really used - so I 15193 removed that logic.</p> 15194 15195 <p>Also:</p> 15196 15197 <ul> 15198 <li>during initialization, check if ANSI colors are set with 15199 non fg/bg values, disable color mode if not. This makes xterm 15200 tolerant of applications that allocate the whole color 15201 map.</li> 15202 15203 <li>implemented blinking cursor (default is <em>off</em>)</li> 15204 </ul> 15205 15206 <h1><a name="xterm_21" id="xterm_21">Patch #21 - 1996/7/24 - 15207 XFree86 3.1.2Ec</a></h1> 15208 15209 <p>This patch does the following:</p> 15210 15211 <ul> 15212 <li>fixes some minor typography in the control-sequences 15213 documentation (it didn't occur to me til I'd sent the last 15214 patch that I could use ghostview for previewing the troff 15215 output ;-)</li> 15216 15217 <li>adjusts the shell's background color in ReverseVideo so 15218 that flicker in resizing is reduced</li> 15219 15220 <li>adds an ifdef OPT_ISO_COLORS to allow configuring xterm 15221 without the ISO color support (saves a lot of memory)</li> 15222 15223 <li>used that ifdef to isolate/modify logic so that if the user 15224 doesn't have the colorMode enabled, then ISO color support is 15225 disabled (saving memory). 15226 <p>(If anyone needs numbers, I had savedLines set to 2000, 15227 and found a reduction from ~700k to ~400k of allocated 15228 memory, according to Purify).</p> 15229 </li> 15230 </ul> 15231 15232 <h1><a name="xterm_20" id="xterm_20">Patch #20 - 1996/7/24 - 15233 XFree86 3.1.2Ec</a></h1> 15234 15235 <p>This documents the changes in control sequences for window 15236 operations that I added in my previous patch. I'm testing another 15237 patch that allows the user to use less memory if colors aren't 15238 needed.</p> 15239 15240 <h1><a name="xterm_19" id="xterm_19">Patch #19 - 1996/7/21 - 15241 XFree86 3.1.2Ec</a></h1> 15242 15243 <p>This patch does the following:</p> 15244 15245 <ul> 15246 <li>fixes the core dump that I reported on IRIX 5.2 (in main.c) 15247 <p>(it's worth noting that this bug exists in X11R6.1, so I'd 15248 like to assume that someone's already submitted a fix to X 15249 Consortium...)</p> 15250 </li> 15251 15252 <li>change the interpretation of zero rows or columns in a 15253 resize-window request to use the root window's size (looking 15254 more carefully at dtterm, that seems to be what it does).</li> 15255 15256 <li>change some memmove calls to memcpy for slightly better 15257 performance. also, a couple of memset calls to bzero, since 15258 Quantify says bzero runs 20% faster, I assume because there's 15259 one less argument.</li> 15260 15261 <li>interpret character sets 1 and 2 (so that vttest gives a 15262 reasonable result) Both rxvt and dtterm do something 15263 equivalent.</li> 15264 15265 <li>fix a minor memory leak in the logic that retrieves the 15266 window or icon names (Purify found this for me while I ran 15267 vttest).</li> 15268 </ul> 15269 15270 <h1><a name="xterm_18" id="xterm_18">Patch #18 - 1996/7/18 - 15271 XFree86 3.1.2Ec</a></h1> 15272 15273 <p>This implements the following:</p> 15274 15275 <ul> 15276 <li>escape sequences that act like the CDE dtterm's window 15277 operations (though I have implemented the default width and 15278 height -- I've seen a rather buggy dtterm running that seems to 15279 treat width=0 or height=0 literally -- maybe that's a feature, 15280 not a bug?)</li> 15281 15282 <li>minor tweak to the screen-repainting when resizing (I still 15283 cannot entirely get rid of flicker).</li> 15284 15285 <li>still more fixes to terminfo & termcap (I corrected my 15286 error for the hpa code and added some other stuff by comparing 15287 to ncurses' description and rxvt's).</li> 15288 15289 <li>a tweak to the changes by Michael Rohleder for the color 15290 translation</li> 15291 15292 <li>re-order attribute codes to allow later implementation of 15293 protected fields (dtterm supposedly does this; it's probably 15294 more useful than blinking or invisible text -- that uses up all 15295 of the available bits without changing the attribute scheme 15296 radically).</li> 15297 </ul> 15298 15299 <h1><a name="xterm_17" id="xterm_17">Patch #17 - 1996/7/2 - 15300 XFree86 3.1.2Eb</a></h1> 15301 15302 <p>This patch implements for xterm several minor features from 15303 ISO 6429 which are useful for terminfo applications. The HPA and 15304 VPA control sequences allow cursor movement along a row or 15305 column, cutting down a little on the characters transmitted. The 15306 other codes allow resetting specific graphic rendition attributes 15307 without modifying the other attributes. (now if someone just had 15308 time to implement blinking cursors...)</p> 15309 15310 <h1><a name="xterm_16" id="xterm_16">Patch #16 - 1996/6/25 - 15311 XFree86 3.1.2Ea</a></h1> 15312 15313 <p>Adam Tla/lka <atlka@pg.gda.pl> told me a couple of weeks 15314 ago that I'd missed some of the background coloring in xterm. I 15315 investigated, and found that while I'd picked up on the 15316 clear-to-bottom and clear-to-end-of-line operations, I'd 15317 overlooked the insert/delete lines. Just so I wouldn't overlook 15318 any more of these, I updated a copy of vttest to test ISO colors 15319 and bce (background color erase). This patch introduces a new 15320 function, ClearCurBackground, whose calls replace the direct 15321 XClearArea calls that I'd overlooked. (There's also a few 15322 compiler warnings fixed, etc ;-)</p> 15323 15324 <h1><a name="xterm_15" id="xterm_15">Patch #15 - 1996/5/29 - 15325 XFree86 3.1.2E</a></h1> 15326 15327 <p>This fixes the problem reported by David Dawes, by making the 15328 50msec select timeout for the Xaw3d arrow scrollbar a resource. 15329 (I made it a boolean for a variety of reasons -- to make it a 15330 number, you'd need an additional resource, to avoid breaking the 15331 logic).</p> 15332 15333 <h1><a name="xterm_14" id="xterm_14">Patch #14 - 1996/5/12 - 15334 XFree86 3.1.2Dj</a></h1> 15335 15336 <p>This patch brings the termcap and terminfo descriptions for 15337 xterm up to date. I made the following changes:</p> 15338 15339 <ul> 15340 <li>reformatted the terminfo description in a single-column 15341 (this is ok for terminfo, and will simplify future patches -- 15342 can't do that for termcap, since it would impact buffer 15343 requirements on some systems).</li> 15344 15345 <li>omitted obsolete features in termcap to save a little space 15346 (bs, pt)</li> 15347 15348 <li>added color capabilities to termcap (ut, Co, NC, op, AB, 15349 AF)</li> 15350 15351 <li>corrected some capabilities (vi, ve)</li> 15352 15353 <li>added 'st' (set tab)</li> 15354 15355 <li>reduced function keys in termcap for 'xterm' to 12 because 15356 color capabilities makes that description larger than 1023 15357 characters.</li> 15358 15359 <li>created new termcap name 'xtermm' (monochrome) to match the 15360 terminfo list, and make that description have 20 function 15361 keys.</li> 15362 15363 <li>added corresponding color capabilities to terminfo (bce, 15364 colors, pairs, op, ncv, setab, setaf)</li> 15365 15366 <li>corrected corresponding capabilities in terminfo (civis, 15367 cnorm, rmcup, smcup)</li> 15368 15369 <li>added capabilities (el1, hts)</li> 15370 15371 <li>in both, corrected home/end keys to match the code 15372 correction made by Thomas Mueller in 3.1.2Bk 15373 <p>=> (I'm still considering modifying the code & 15374 description to match the rxvt program).</p> 15375 </li> 15376 </ul> 15377 15378 <h1><a name="xterm_13" id="xterm_13">Patch #13 - 1996/4/23 - 15379 XFree86 3.1.2Df</a></h1> 15380 15381 <p>This corrects my earlier changes for colors - the inner border 15382 of the xterm was getting painted with the wrong color, since I'd 15383 moved the call to set the background into the logic that tracks 15384 SGR information.</p> 15385 15386 <h1><a name="xterm_12" id="xterm_12">Patch #12 - 1996/3/16 - 15387 XFree86 3.1.2Dc</a></h1> 15388 15389 <p>This corrects a memory leak in xterm that happens whenever one 15390 switches fonts.</p> 15391 15392 <h1><a name="xterm_11" id="xterm_11">Patch #11 - 1996/3/5 - 15393 XFree86 3.1.2Db</a></h1> 15394 15395 <p>This patch corrects the behavior of the ANSI colors in xterm 15396 when reverse video is used, as well as some other lesser 15397 sins:</p> 15398 15399 <ul> 15400 <li>button.c 15401 <ul> 15402 <li>(compiler warnings: shadowing of 'time', redundant 15403 cast)</li> 15404 </ul> 15405 </li> 15406 15407 <li>charproc.c 15408 <ul> 15409 <li>renamed screen.colors[] array to screen.Acolors[] to 15410 more easily distinguish the non-ANSI colors from the ANSI 15411 colors.</li> 15412 15413 <li>moved logic of SGR_Save() into VTInitialize, getting 15414 rid of local private variables original_fg and 15415 original_bg.</li> 15416 15417 <li>moved some logic into getXtermForeground and 15418 getXtermBackground from SGR_Foreground, SGR_Background, 15419 etc.</li> 15420 15421 <li>corrected misleading 'row' to 'col' in case for CUF, 15422 CUB sequences.</li> 15423 </ul> 15424 </li> 15425 15426 <li>ctlseqs.ms</li> 15427 15428 <li>xterm.man 15429 <ul> 15430 <li>(correct a misconception which I'd added that the 15431 color0 through color6 resource values apply to non-ANSI 15432 colors)</li> 15433 </ul> 15434 </li> 15435 15436 <li>ptyx.h 15437 <ul> 15438 <li>added original_fg, original_bg to TScreen 15439 structure.</li> 15440 </ul> 15441 </li> 15442 15443 <li>scrollbar.c 15444 <ul> 15445 <li>(compiler warnings: redundant cast)</li> 15446 </ul> 15447 </li> 15448 15449 <li>util.c 15450 <ul> 15451 <li>new functions getXtermForeground and getXtermBackground 15452 replace the macros GET_FG and GET_BG, with the added 15453 functionality of checking for the reverse-video status of 15454 xterm.</li> 15455 15456 <li>in ReverseVideo, swap the SGR foreground and background 15457 colors also.</li> 15458 </ul> 15459 </li> 15460 </ul> 15461 15462 <h1><a name="xterm_10" id="xterm_10">Patch #10 - 1996/2/14 - 15463 XFree86 3.1.2Cd</a></h1> 15464 15465 <p>I observed an occasional glitch in the xterm's color behavior; 15466 a clear to end of line would get a color that had been used in a 15467 program that supposedly reset colors. I traced this down to the 15468 way xterm was modifying colors of GC's on the fly; it didn't 15469 restore the original color of the GC, even though it would later 15470 be used in functions (such as ClearRight) that assumed (my error) 15471 that the GC would have the current foreground or background 15472 color.</p> 15473 15474 <p>I fixed this by resetting the GC's colors with a new function 15475 'resetXtermGC()', and direct calls on 15476 SGR_Foreground/SGR_Background, as appropriate and using a new 15477 function 'updatedXtermGC()' to encapsulate the logic that 15478 modifies the GC's color. (I also removed some commented-out code 15479 that was trying to do this -- the problem was a little more 15480 obscure).</p> 15481 15482 <h1><a name="xterm_09" id="xterm_09">Patch #9 - 1996/2/10 - 15483 XFree86 3.1.2Cb</a></h1> 15484 15485 <p>This patch fixes the remaining problems that I had making 15486 xterm run with x11r5, as well as a couple of other bugs. It 15487 follows my patch from yesterday, that added ifdef's for some of 15488 the input-method resources.</p> 15489 15490 <ul> 15491 <li>corrected ifdef's that suppress the input-method code 15492 (doesn't exist in my x11r5, and xterm works adequately without 15493 it).</li> 15494 15495 <li>corrected fallback definition for 'Select()' macro (oops: 15496 I'd copied the wrong text...)</li> 15497 15498 <li>moved the declarations for the fd_set variables to 15499 data.[ch]</li> 15500 15501 <li>corrected an ifdef in resize.c (sunos 4.x doesn't have 15502 termcap.h)</li> 15503 15504 <li>corrected (in main.c) some unused/orphaned variables.</li> 15505 </ul> 15506 15507 <h1><a name="xterm_08" id="xterm_08">Patch #8 - 1996/2/9 - 15508 XFree86 3.1.2Cb</a></h1> 15509 15510 <p>This is mostly a documentation patch for xterm. It describes 15511 the color control sequences in more detail, and documents some 15512 other features of xterm that aren't described elsewhere.</p> 15513 15514 <p>I've also added a couple of ifdef's to fix (part of) the 15515 problem that I'm working on (making the program work properly on 15516 x11r5, where I'm doing memory testing -- I have a "good" version 15517 from mid-January, but my resync version doesn't work properly on 15518 x11r5). I'm not done with <em>that</em> yet.</p> 15519 15520 <h1><a name="xterm_07" id="xterm_07">Patch #7 - 1996/1/28 - 15521 XFree86 3.1.2n</a></h1> 15522 15523 <p>I did a (clean) build of 3.1.2n on Linux 1.2.13 (ELF). I've 15524 got an S3 card.</p> 15525 15526 <p>This fixes the following in the 3.1.2n xterm:</p> 15527 15528 <ul> 15529 <li>initialize cur_foreground, cur_background in charproc.c 15530 (Purify told me they weren't initialized).</li> 15531 15532 <li>add interpretation of codes 39, 49, to reset background and 15533 foreground to default value (I'm told that ISO 6429 does this; 15534 but I don't have a written reference -- yet -- can anyone help 15535 here?). Anyway, rxvt does it, and it'll solve my remaining 15536 color management problems.</li> 15537 15538 <li>shadowing of 'time' in menu.c</li> 15539 15540 <li>'Cardinal' vs 'int' in scrollbar.c</li> 15541 15542 <li>several changes to permit compile with X11R5 (the system 15543 that I've got Purify on won't be upgraded to X11R6 for a long 15544 time).</li> 15545 </ul> 15546 15547 <p>I built this version (with a minor nit that I'll patch soon) 15548 on SunOS 4.1.3 so that I can test it some more with Purify.</p> 15549 15550 <p><em>btw</em>: the changes made in Xpoll.h won't work on some 15551 older systems, because fd_set isn't a defined type (I've got one 15552 machine at least that this applies to).</p> 15553 15554 <h1><a name="xterm_06" id="xterm_06">Patch #6 - 1996/1/8</a></h1> 15555 15556 <p>This patch does all of the SGR foreground/background fixes 15557 (i.e., clearing the screen after an SGR color is set causes that 15558 color to be used in the foreground and/or background). If the 15559 FG_COLOR and/or BG_COLOR flags aren't set, then the xterm 15560 foreground and background default to the window's values. This 15561 usage is consistent with various types of hardware (especially 15562 the IBM PC), and is also used in rxvt.</p> 15563 15564 <ul> 15565 <li>charproc.c: 15566 <ul> 15567 <li>add/use new macros GET_FG, GET_BG - n/c.</li> 15568 15569 <li>add/use new functions SGR_Foreground() and 15570 SGR_Background() to set corresponding colors in GC's, and 15571 to retain sense of "original" colors. 15572 <p>=> This makes redundant some of the corresponding 15573 logic in HideCursor to set the foreground and background, 15574 but I left it in since it <em>may</em> be fixing an 15575 unrelated requirement.</p> 15576 </li> 15577 15578 <li>set GC's in LoadNewFont() according to whether the SGR 15579 fg/bg colors are active. 15580 <p>=> This fixes some glitches in the accompanying 15581 resize, that leaves parts of the window in the original 15582 background color.</p> 15583 </li> 15584 </ul> 15585 </li> 15586 15587 <li>screen.c: 15588 <ul> 15589 <li>modified ClearBufRows() to use the SGR fg/bg colors if 15590 they're set.</li> 15591 15592 <li>added function ScrnClearLines(), used this to replace 15593 portions of ScrnInsertLine() and ScrnDeleteLine(). The new 15594 function uses the SGR fg/bg colors if they're set. 15595 <p>=> Otherwise, selection after an index or reverse 15596 index will paint the wrong colors.</p> 15597 </li> 15598 15599 <li>modified ScrnDeleteChar() and ScrnInsertChar() to use 15600 SGR fg/bg colors.</li> 15601 </ul> 15602 </li> 15603 15604 <li>util.c: 15605 <ul> 15606 <li>modified ClearRight() so that if either of the SGR 15607 fg/bg colors is set, we don't bzero the attributes and 15608 color arrays, but instead fill them with the appropriate 15609 codes.</li> 15610 15611 <li>modified ClearLeft to use SGR fg/bg colors.</li> 15612 </ul> 15613 </li> 15614 </ul> 15615 15616 <h1><a name="xterm_05" id="xterm_05">Patch #5 - 1996/1/7</a></h1> 15617 15618 <p>This patch modifies the object code, by replacing indexing 15619 expressions with temporary variables with the full indexing 15620 expression. At first glance, this seems inefficient (it did to me 15621 ;-), until remembering comments made in the compilers newsgroups 15622 that trying to "help" the compiler doesn't really work that well. 15623 A good optimizing compiler can do a better job than the 15624 programmer can. (There's a moral in the use of 'register' 15625 variables also, but I won't fix those...).</p> 15626 15627 <p>Anyway, the revised code generates a smaller object...</p> 15628 15629 <ul> 15630 <li>charproc.c: 15631 <ul> 15632 <li>recode index expressions in ShowCursor() and 15633 HideCursor() using SCRN_BUF_xxxxS macros - changes 15634 object.</li> 15635 15636 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15637 </ul> 15638 </li> 15639 15640 <li>ptyx.h: 15641 <ul> 15642 <li>defined the SCRN_BUF_xxxxS macros in terms of BUF_xxxxS 15643 macros, to pick up references to ScrnBuf data directly, and 15644 added MAX_PTRS symbol to pick up those '4' constants strewn 15645 about the code - n/c.</li> 15646 </ul> 15647 </li> 15648 15649 <li>screen.c: 15650 <ul> 15651 <li>recode index expressions in ScreenWrite() using 15652 SCRN_BUF_xxxxS macros - changes object.</li> 15653 15654 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15655 15656 <li>use macros BUF_CHARS, BUF_ATTRS - n/c.</li> 15657 15658 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15659 - n/c</li> 15660 </ul> 15661 </li> 15662 15663 <li>scrollbar.c: 15664 <ul> 15665 <li>replace constant '4' by MAX_PTRS - n/c.</li> 15666 15667 <li>cast calloc to 'Char *' to fix compiler warning on IRIX 15668 - n/c</li> 15669 </ul> 15670 </li> 15671 </ul> 15672 15673 <h1><a name="xterm_04" id="xterm_04">Patch #4 - 1996/1/7</a></h1> 15674 15675 <p>When setting up for this phase, I saw that you'd corrected the 15676 bug that I found in ClearLeft. I decided to make this series of 15677 patches anyway, since readability never hurt (and there's the 15678 potential for finding another bug while reviewing this set).</p> 15679 15680 <ul> 15681 <li>button.c: 15682 <ul> 15683 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15684 </ul> 15685 </li> 15686 15687 <li>charproc.c: 15688 <ul> 15689 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15690 </ul> 15691 </li> 15692 15693 <li>ptyx.h: 15694 <ul> 15695 <li>added four macros: SCRN_BUF_CHARS, SCRN_BUF_ATTRS, 15696 SCRN_BUF_FORES, SCRN_BUF_BACKS to represent the four arrays 15697 that are derived from screen->buf.</li> 15698 </ul> 15699 </li> 15700 15701 <li>screen.c: 15702 <ul> 15703 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15704 </ul> 15705 </li> 15706 15707 <li>util.c: 15708 <ul> 15709 <li>use SCRN_BUF_xxxxS macros - n/c</li> 15710 </ul> 15711 </li> 15712 </ul> 15713 15714 <h1><a name="xterm_03" id="xterm_03">Patch #3 - 1996/1/7</a></h1> 15715 15716 <p>This is my third (and final cleanup) patch for xterm. It gets 15717 rid of the unused stuff, and converts several functions to static 15718 (thereby reducing their scope).</p> 15719 15720 <p>At this point, the only compile warnings I've got (on Linux) 15721 are those about the select arguments (int vs fd_set type), and a 15722 missing declaration for waitpid. Those both are hard to get right 15723 without autoconfigure.</p> 15724 15725 <p>The next patches will address the functional changes...</p> 15726 15727 <ul> 15728 <li>Tekproc.c: 15729 <ul> 15730 <li>changed several functions to 'static' that aren't used 15731 outside this module -- changes object</li> 15732 </ul> 15733 </li> 15734 15735 <li>charproc.c: 15736 <ul> 15737 <li>changed several functions to 'static' that aren't used 15738 outside this module -- changes object</li> 15739 15740 <li>deleted unused function unparsefputs -- changes 15741 object.</li> 15742 </ul> 15743 </li> 15744 15745 <li>main.c: 15746 <ul> 15747 <li>changed several functions to 'static' that aren't used 15748 outside this module -- changes object</li> 15749 15750 <li>ifdef'd out unused function 'consolepr()' -- changes 15751 object</li> 15752 15753 <li>removed unused variable 'dummy_tio' -- changes 15754 object</li> 15755 15756 <li>moved variable 'discipline' to quiet unused-warning -- 15757 changes object</li> 15758 </ul> 15759 </li> 15760 15761 <li>main.h: 15762 <ul> 15763 <li>deleted unused definition of DEFBORDERWIDTH - n/c</li> 15764 </ul> 15765 </li> 15766 15767 <li>misc.c: 15768 <ul> 15769 <li>changed several functions to 'static' that aren't used 15770 outside this module -- changes object</li> 15771 15772 <li>provide dummy return statements for xerror and xioerror 15773 to quiet compiler warnings -- changes object</li> 15774 </ul> 15775 </li> 15776 15777 <li>ptyx.h: 15778 <ul> 15779 <li>change sbuf_address and abuf_address to 'Char *' - 15780 n/c</li> 15781 </ul> 15782 </li> 15783 15784 <li>resize.c: 15785 <ul> 15786 <li>changed several functions to 'static' that aren't used 15787 outside this module -- changes object</li> 15788 </ul> 15789 </li> 15790 15791 <li>screen.c: 15792 <ul> 15793 <li>remove unnecessary 'Char **' casts - n/c</li> 15794 </ul> 15795 </li> 15796 15797 <li>util.c: 15798 <ul> 15799 <li>changed several functions to 'static' that aren't used 15800 outside this module -- changes object</li> 15801 </ul> 15802 </li> 15803 </ul> 15804 15805 <h1><a name="xterm_02" id="xterm_02">Patch #2 - 1996/1/7</a></h1> 15806 15807 <p>This is my second patch to xterm. It corrects most of the gcc 15808 warnings (except for some that are due to X header files ;-). I 15809 compared objects to keep track of the changes that don't affect 15810 the object code (n/c) versus those that do.</p> 15811 15812 <p>At this point, I'm compiling (fairly) clean with gcc 15813 options</p> 15814 15815 <pre> 15816 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wnested-externs 15817</pre> 15818 <p>(I also compiled with -Wshadow, but while that found some 15819 things that I wanted to find, there's far too many warnings from 15820 the X headers to be usable in this context).</p> 15821 15822 <p>The changes:</p> 15823 15824 <ul> 15825 <li>Tekproc.c: 15826 <ul> 15827 <li>parenthesized expression to avoid gcc warning -- 15828 n/c.</li> 15829 15830 <li>corrected nested-extern declaration for Bool 15831 waiting_for_initial_map; ourTopLevelShellArgs, and 15832 number_ourTopLevelShellArgs - n/c</li> 15833 </ul> 15834 </li> 15835 15836 <li>charproc.c: 15837 <ul> 15838 <li>corrected potentially-unintialized variables 'scstype', 15839 'xim', and 'input_style' -- changes object.</li> 15840 15841 <li>adjusted logic of VTparse so that gcc won't warn about 15842 setjmp clobbering parsestate -- changes object.</li> 15843 15844 <li>corrected initialization of 'scstype', which could have 15845 been clobbered by setjmp/longjmp - changes object.</li> 15846 15847 <li>corrected nested-extern declaration of 'term', 15848 'ProgramName' - n/c</li> 15849 </ul> 15850 </li> 15851 15852 <li>cursor.c: 15853 <ul> 15854 <li>corrected nested-extern declaration of 'term' -- 15855 n/c</li> 15856 15857 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15858 - n/c</li> 15859 </ul> 15860 </li> 15861 15862 <li>input.c: 15863 <ul> 15864 <li>change interface of StringInput to assume size_t (i.e., 15865 unsigned) nbytes -- changes object.</li> 15866 15867 <li>change interface of funcvalue, and sunfuncvalue to use 15868 'KeySym' type instead of 'int' - changes object.</li> 15869 </ul> 15870 </li> 15871 15872 <li>main.c: 15873 <ul> 15874 <li>moved definitions of SIGNAL_T, SIGNAL_RETURN to proto.h 15875 - n/c</li> 15876 15877 <li>corrected missing params of 'do_hangup()' -- changes 15878 object (note: the missing params were not used).</li> 15879 15880 <li>corrected missing param of 'Error()' -- changes 15881 object</li> 15882 15883 <li>corrected nested-extern 'environ' - n/c</li> 15884 15885 <li>adjusted assignments to 'tty_got_hung' and 'no_dev_tty' 15886 so that gcc can see they won't be clobbered by the longjmp 15887 - changes object.</li> 15888 15889 <li>use Size_t type - n/c.</li> 15890 </ul> 15891 </li> 15892 15893 <li>menu.c: 15894 <ul> 15895 <li>removed redundant prototype for 'do_hangup()' -- 15896 n/c.</li> 15897 15898 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 15899 - n/c</li> 15900 </ul> 15901 </li> 15902 15903 <li>menu.h: 15904 <ul> 15905 <li>renamed 'time' parameters to avoid gcc -Wshadow warning 15906 - n/c</li> 15907 </ul> 15908 </li> 15909 15910 <li>misc.c: 15911 <ul> 15912 <li>corrected definition of 'HandleFocusChange()' -- 15913 changes object</li> 15914 15915 <li>cast parameters in call to 'TekExpose()' -- n/c</li> 15916 15917 <li>corrected nested-extern declarations of 'term', 15918 'toplevel', ProgramName, and 'environ' -- n/c.</li> 15919 15920 <li>use Size_t type - n/c.</li> 15921 </ul> 15922 </li> 15923 15924 <li>proto.h: 15925 <ul> 15926 <li>moved definition of SIGNAL_T (and SIGNAL_RETURN) here 15927 from main.c, resize.c to allow use of this symbol in 15928 prototypes (mostly in xterm.h).</li> 15929 15930 <li>added definition 'Size_t' to use as corrected type for 15931 strncpy, malloc sizes - n/c.</li> 15932 </ul> 15933 </li> 15934 15935 <li>resize.c: 15936 <ul> 15937 <li>moved SIGNAL_T definition to proto.h -- n/c.</li> 15938 15939 <li>use Size_t type - n/c.</li> 15940 </ul> 15941 </li> 15942 15943 <li>screen.c: 15944 <ul> 15945 <li>use Size_t type - n/c.</li> 15946 </ul> 15947 </li> 15948 15949 <li>tabs.c: 15950 <ul> 15951 <li>corrected nested-extern declaration of 'term' -- 15952 n/c</li> 15953 </ul> 15954 </li> 15955 15956 <li>util.c: 15957 <ul> 15958 <li>corrected/supplied parameters to 'TekExpose()' -- 15959 changes object (note: 'TekExpose()' doesn't use its 15960 parameters).</li> 15961 15962 <li>corrected nested-extern declaration of 15963 'waiting_for_initial_map' -- n/c.</li> 15964 15965 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15966 - n/c</li> 15967 </ul> 15968 </li> 15969 15970 <li>xterm.h: 15971 <ul> 15972 <li>prototype 'do_hangup()', 'HandleFocusChange()', 15973 'TekExpose()', 'Error()', 'Exit()' - forces changes in 15974 various places.</li> 15975 15976 <li>adjusted prototypes that pass 'Boolean' arguments to 15977 use 'int' (this is the "correct" ANSI approach to extended 15978 compiles; it's worth mentioning that gcc doesn't meet the 15979 ANSI spec here). I used gcc -Wconversion to find these, but 15980 there's a lot of unrelated warnings that are due to setting 15981 NARROWPROTO in the config - n/c.</li> 15982 15983 <li>renamed 'term' parameters to avoid gcc -Wshadow warning 15984 - n/c</li> 15985 </ul> 15986 </li> 15987 </ul> 15988 15989 <h1><a name="xterm_01" id="xterm_01">Patch #1 - 1996/1/6</a></h1> 15990 15991 <p>This is my first cleanup patch for xterm. It addresses all of 15992 the gcc warnings for -Wall, -Wmissing-prototypes and 15993 -Wstrict-prototypes that I can change without modifying the 15994 object code. (I'm compiling this with gcc 2.7.0 for an aout 15995 target, which makes it simple to compare objects. When I do 15996 ELF-only, I've got a tool that compares that sort of thing as 15997 well).</p> 15998 15999 <p>Briefly, this patch adds (and uses) two header files in the 16000 xterm directory:</p> 16001 16002 <pre> 16003 proto.h 16004 xterm.h 16005</pre> 16006 <p>I expect this to be the biggest patch by far. However (barring 16007 a misplaced prototype), it shouldn't break anything, since the 16008 intent of the patch is to provide missing declarations.</p> 16009</body> 16010</html> 16011