|
2010-01-23
| ||
| 06:24 | • Ticket [1247835fff] tabs: wordprocessor vs tabular interpretation status still Closed with 2 other changes artifact: ac86eccd80 user: dkf | |
| 06:23 | • Ticket [1247835fff]: 6 changes artifact: a02bd4e1a9 user: dkf | |
|
2009-07-29
| ||
| 20:07 | • Ticket [1247835fff]: 4 changes artifact: c8df71fdb7 user: dkf | |
|
2009-01-14
| ||
| 15:46 | • Ticket [1247835fff]: 8 changes artifact: b00e5d7326 user: dkf | |
| 15:46 | • Ticket [1247835fff]: 4 changes artifact: 5528792847 user: dkf | |
|
2005-10-10
| ||
| 17:36 | • Closed ticket [1247835fff]. artifact: 7df1cf65aa user: vincentdarley | |
|
2005-08-31
| ||
| 06:22 | • Ticket [1247835fff]: 4 changes artifact: 0eae1d8eae user: vincentdarley | |
| 06:22 | • Ticket [1247835fff]: 4 changes artifact: 4776572eaa user: vincentdarley | |
| 06:22 | • Add attachment tabs85.patch to ticket [1247835fff] artifact: 08b3d4103e user: vincentdarley | |
| 06:22 | • Ticket [1247835fff] tabs: wordprocessor vs tabular interpretation status still Open with 4 other changes artifact: 46befa7716 user: vincentdarley | |
|
2005-08-18
| ||
| 23:21 | • Ticket [1247835fff]: 4 changes artifact: 05ecea8833 user: vincentdarley | |
| 23:21 | • Ticket [1247835fff]: 4 changes artifact: b9c5be7503 user: vincentdarley | |
| 23:21 | • Ticket [1247835fff]: 4 changes artifact: 0024019711 user: vincentdarley | |
| 23:21 | • Ticket [1247835fff]: 4 changes artifact: dbf73ce287 user: vincentdarley | |
|
2005-08-17
| ||
| 05:16 | • Ticket [1247835fff]: 4 changes artifact: 191589e5b8 user: vincentdarley | |
|
2005-08-12
| ||
| 22:28 | • Ticket [1247835fff]: 5 changes artifact: 4efb9027b9 user: vincentdarley | |
| 22:09 | • Ticket [1247835fff]: 4 changes artifact: b16aa0fad0 user: vincentdarley | |
| 20:39 | • Ticket [1247835fff]: 4 changes artifact: 6fb8cf1ebf user: dkf | |
| 20:39 | • Ticket [1247835fff]: 1 change artifact: e5375257d8 user: dkf | |
| 20:26 | • Ticket [1247835fff]: 1 change artifact: 82d0424efe user: vincentdarley | |
| 20:24 | • Ticket [1247835fff]: 4 changes artifact: f096ea6fcc user: vincentdarley | |
| 20:24 | • Ticket [1247835fff]: 4 changes artifact: 0d998bc965 user: vincentdarley | |
| 20:23 | • Ticket [1247835fff]: 4 changes artifact: bbd00ec429 user: vincentdarley | |
| 20:23 | • Ticket [1247835fff]: 4 changes artifact: ac8195e71c user: vincentdarley | |
| 04:15 | • Ticket [1247835fff]: 4 changes artifact: 4a09a1f122 user: hobbs | |
| 02:04 | • Ticket [1247835fff]: 4 changes artifact: cadfc8cfb9 user: chengyemao | |
| 01:34 | • Ticket [1247835fff]: 4 changes artifact: f37b0a6b4c user: vincentdarley | |
| 01:04 | • Ticket [1247835fff]: 4 changes artifact: b3b22db59c user: chengyemao | |
| 00:36 | • Open ticket [1247835fff]. artifact: 98e9c7e3e5 user: vincentdarley | |
|
2005-08-11
| ||
| 22:18 | • Ticket [1247835fff]: 4 changes artifact: d0a2f07f2e user: kennykb | |
| 09:20 | • Ticket [1247835fff]: 4 changes artifact: 697731e232 user: nobody | |
|
2005-08-09
| ||
| 16:46 | • Ticket [1247835fff]: 4 changes artifact: b63bfd73db user: nobody | |
|
2005-08-02
| ||
| 00:36 | • Ticket [1247835fff]: 4 changes artifact: 4c65a33dd3 user: chengyemao | |
|
2005-08-01
| ||
| 14:30 | • Ticket [1247835fff]: 2 changes artifact: 4d18c17536 user: vincentdarley | |
| 14:30 | • Closed ticket [1247835fff]. artifact: d99f5f3f89 user: vincentdarley | |
|
2005-07-31
| ||
| 12:46 | • Ticket [1247835fff]: 2 changes artifact: a93f2f4b0a user: dgp | |
| 08:46 | • Ticket [1247835fff]: 5 changes artifact: f30a5cf33d user: wolfsuit | |
|
2005-07-30
| ||
| 06:25 | • New ticket [1247835fff]. artifact: 5e367eb5b8 user: chengyemao | |
| Ticket UUID: | 1247835 | |||
| Title: | tabs: wordprocessor vs tabular interpretation | |||
| Type: | RFE | Version: | None | |
| Submitter: | chengyemao | Created on: | 2005-07-30 06:25:50 | |
| Subsystem: | 18. [text] | Assigned To: | vincentdarley | |
| Priority: | 5 Medium | Severity: | ||
| Status: | Closed | Last Modified: | 2010-01-23 06:24:17 | |
| Resolution: | None | Closed By: | vincentdarley | |
| Closed on: | 2005-10-10 10:36:57 | |||
| Description: |
Platform Windows XP/SV2
Tab positions of a Text widget is incorrect in Tk85a3.
Try the following:
text .t
.t config -tab {0.5i 1.0i 1.5i 2.0i 2.5i 3.0i 3.5i 4.0i 4.5i}
pack .t
Type into the text widget the following text line:
This is a line of text for testing tabs. It seems that tab
position of a text widget in Tk 85 is not correct.
An inserted tab will make multiple spaces in almost any
position in the above text line even after its specified
position.
The correct behavior is: a tab may make mutiple spaces
if it is inserted before the specified tab position. If it is
inserted after its specified position, it should only make
one space. The first tab only add one space after 0.5i
and the second tab only add one space after 1.0i, and
so on so forth.
This bug may make text tab displays incompatible to
previous Tk text wigets, i.e., 8.4 and below. Any text file
that uses tabs in formating and saved by a previous
Tcl/Tk may be display incorrectly in Tk 853a.
| |||
| User Comments: |
dkf added on 2010-01-23 06:23:49:
data_type - 362997 dkf added on 2009-07-29 20:07:21: IP - Comment Removed: 130.88.1.31 dkf added on 2009-01-14 15:46:33: allow_comments - 1 dkf added on 2009-01-14 15:46:32: data_type - 212997 vincentdarley added on 2005-10-10 17:36:57: Logged In: YES user_id=32170 tip#256 implementation, tests, etc committed to cvs head. vincentdarley added on 2005-08-31 06:22:05: File Deleted - 146139: vincentdarley added on 2005-08-31 06:22:04: File Added - 147573: tabs85.patch vincentdarley added on 2005-08-31 06:22:02: Logged In: YES user_id=32170 Added patch with docs, tests. vincentdarley added on 2005-08-18 23:21:07: File Deleted - 145399: vincentdarley added on 2005-08-18 23:21:06: File Deleted - 145400: vincentdarley added on 2005-08-18 23:21:05: File Deleted - 145891: File Added - 146139: tab85.patch vincentdarley added on 2005-08-18 23:21:04: Logged In: YES user_id=32170 New implementation, for the '-tabstyle' version. Surprisingly, requires several times more code to add the new option everywhere. vincentdarley added on 2005-08-17 05:16:01: File Added - 145891: 256.tip Logged In: YES user_id=32170 Attached TIP, since Donal seems to be absent for the moment. vincentdarley added on 2005-08-12 22:28:05: Logged In: YES user_id=32170 TIP submitted. vincentdarley added on 2005-08-12 22:09:56: Logged In: YES
user_id=32170
Donal: the problem you cite has been fixed in Tk 8.5 for a
long time. You typically just do:
set charWidth [font measure [$w cget -font] "a"]
$w configure -tabs [list [expr {4 * $charWidth}] left]]
for example.
Agreed that a TIP is needed, although I would hope it can be
fasttracked!
dkf added on 2005-08-12 20:39:24: Logged In: YES user_id=79902 This feature requires TIPping. On the plus side, we might be able to nail the problem with the difference between empty and non-empty -tabs options (no combination of tab settings could duplicate the empty -tabs option, making it impossible to set the editor-like tab width to anything other than 8 standard-sized characters) vincentdarley added on 2005-08-12 20:24:48: File Added - 145400: tabtest.tcl vincentdarley added on 2005-08-12 20:24:40: Logged In: YES user_id=32170 attached test script. vincentdarley added on 2005-08-12 20:23:54: File Added - 145399: tab85.patch vincentdarley added on 2005-08-12 20:23:49: Logged In: YES user_id=32170 Attached a patch to fix the problem, adding an optional first keyword to -tabs of 'tabular' or 'wordprocessor', where 'tabular' is the default. I'm wondering if 'indexed' might be a better word than 'tabular' in this context, since the key feature is that the n'th tab is indexed against the n'th tab stop. hobbs added on 2005-08-12 04:15:28: Logged In: YES user_id=72656 The tabs issue was raised many times before, and that Vince was changing it with the text widget enhancements was no surprise to maintainers. In general, I think the new 8.5 behavior is better (wordprocessor), but if we want to keep the old behavior, I think the idea of an option first keyword to adjust behavior seems best. chengyemao added on 2005-08-12 02:04:18: Logged In: YES user_id=191079 This will work too. But additional coding is required for the - tabs configuration. Adding a new option seems a simple solution. vincentdarley added on 2005-08-12 01:34:13: Logged In: YES
user_id=32170
Certainly the goal would be to have backwards compatibility
the default (so don't rush to make big changes to your
code!). I'm just wondering whether it's possible to avoid a
global option and instead allow the actual '-tabs' option to
define the behaviour. This would have the added benefit of
allowing the mixing of tab-style throughout a single text
widget.
For example we could simply add two possible keywords to the
list of -tabs values, to allow switching:
.text configure -tabs {1i 2i}
.text configure -tabs {wordprocessor 1i 2i}
chengyemao added on 2005-08-12 01:04:42: Logged In: YES
user_id=191079
I am editing my Tk text widget document to be compatible to
the Tk85, which is no fun at all. It will be great if the old tab
position scheme will remains.
Can we keep the old tab option syntax and use a new tab
scheme option for this new tab position feature? For
example, add a tab scheme option -tabscheme
$text config -tabscheme wordprocessor
to indicate the new scheme. A {} string indicates the old
scheme.
That will make all existing code compatible and a user may
choose a specific tab feature when it is needed.
vincentdarley added on 2005-08-12 00:36:31: Logged In: YES user_id=32170 Having examined the code very carefully, and the example given above. I finally understand: (a) Tk 8.4 had the 'table like' tab stop behaviour, where there was a direct connection between the n'th tab character in a line and the n'th tab stop that was defined. (b) This table-like tab stop behaviour was not documented in any clear fashion. (c) Tk 8.4 also had a number of bugs in the treatment of tab stops (some of those it still has). In particular, there were a number of such bugs apparent when one used the text widget as a text-editor. Since I use the text widget primarily as a text editor, those bugs were very apparent to me, and since the "correct behaviour" was not well defined in the documentation, I didn't even realise that 'table-like' behaviour was what was supposed to happen. (d) In my various Tk-text-wdiget 8.5 TIPs, I fixed many text widget bugs, including a number of tab-stop related ones. This included a "fix" which makes Tk 8.5 perfect in its treatment of tab stops as a text editor, but breaks the (poorly documented) old table-like behaviour. So, there was no TIP focusing on this because I thought I was just fixing bugs (which, mostly, I was)! I think the solution is for me to submit a new TIP adding yet another configuration option to the text widget to choose between 'table-like' tabs and 'editor-like' tabs. Apologies for the confusion... Any suggestions for the name/values of the new option? Vince. kennykb added on 2005-08-11 22:18:08: Logged In: YES user_id=99768 I agree with the last anonymous sender. Lacking a table widget in the Core, I've a fair amount of code that manages tables using tabs in the text widget. The existing semantics of tabs do (at least nearly) The Right Thing; if a field is too long, subsequent fields are displaced to the right only as far as necessary. The proposed change means that one overlength field makes a total hash of the rest of the table row. I'd be ok with this as an option, but not as the only choice. Please put the 8.4 semantics back - or at least make them available. Where was the TIP for this? nobody added on 2005-08-11 09:20:06: Logged In: NO -tabs are often used to create multicolumn reports; for this use case, the 8.4 behavior (as described above) is preferable. With the 8.5 scheme, if the text in one column extends past the subsequent tab stop, the rest of the row becomes completely misaligned. nobody added on 2005-08-09 16:46:50: Logged In: NO Added some documentation, as per last comment. chengyemao added on 2005-08-02 00:36:46: Logged In: YES user_id=191079 I did not know that the tab behaviors of previoius Tk text wigets are incorrect. Hope your description of the tab's behavior will be incorperated into the Tk help manual. It is much easier to be understood and verified. vincentdarley added on 2005-08-01 14:30:04: Logged In: YES user_id=32170 You're misunderstanding the documentation. A given \\tab character isn't associated with one particular 'stop' that it owns, and therefore checks whether it falls before or after that stop. Each \\tab character simply advances to the next tab stop that lies after its position. There were bugs in Tk 8.4's tab handling (see other bug reports), so 8.5 does in fact have different behaviour, but those differences are not with respect to the above example as such (they may influence the result from the above example, but that's a coincidence). I you disagree, please attach a demonstration script to this report with further detail (your report above has been converted to pure text and contains no tabs). wolfsuit added on 2005-07-31 08:46:00: Logged In: YES user_id=169107 Dunno why this was assigned to me, the text widget is definitely not my forte, and this is not OSX specific... | |||
Attachments:
- tabs85.patch [download] added by vincentdarley on 2005-08-31 06:22:02. [details]