Who are the "spacists"?

BartC bc at freeuk.com
Mon Mar 20 10:24:27 EDT 2017

On 20/03/2017 08:15, Chris Angelico wrote:
> On Mon, Mar 20, 2017 at 6:37 PM, Marko Rauhamaa <marko at pacujo.net> wrote:

>> The tools I mentioned honor the traditional tab stop columns:
>>     1, 9, 17, 25, 33, 41, 49, 57, 65, 73

> That means that you were depending, in your source file, on something
> that isn't actually part of the character's definition. You're
> depending on "horizontal tab" meaning those exact tab stops. If you
> want those semantics, you should use spaces

There are effectively two versions of the text: the slightly higher 
level, or 'marked up' version containing these special controls, and the 
'rendered' version you see displayed on the screen.

You're suggesting doing away with the controls, working only with the 
rendered snapshot version. Which means instead of pressing Backspace 
once to delete a tab, you might need to press it 8 times, or 1 to 8 
times if not at the start.

This is little different to inserting hard newlines at the end of each 
visible line of a paragraph, to ensure that it is shown how you want it 
and isn't 'reflowed' depending on the width of someone's display.

Which work great - until you have to edit the text with those newlines 
present, which can be a lot of work.

So really you want to keep and work with the original version, not the 
rendered one.

In the case of tabs, it might be possible to take the rendered text (I 
call it 'flat' text because the tabs have been flattened out) and 
reconstruct the tabs, but there are some problems (are those 8 spaces 
one tab, or two or four, or were they just 8 spaces?).

It might be a little easier if the text represented, say, Python source 

But it would be better IMO if tabs were used, with some scheme for 
suggesting the tab width (or set of tab stops) that is recommended (eg. 
a comment at the top).


More information about the Python-list mailing list