On 2018-10-15 09:06:11 +1100, Chris Angelico wrote: > On Mon, Oct 15, 2018 at 8:56 AM Marko Rauhamaa <ma...@pacujo.net> wrote: > > Chris Angelico <ros...@gmail.com>: > > > Tabs for indentation have semantic meaning. Top-level has zero tabs. > > > One indentation level is represented by one tab. Two indentation > > > levels? Two tabs. It's about as perfect a representation as you could > > > hope for. > > > > That *could* be the situation. However, it is trumped by an older > > convention whereby the indentation levels go as follows: > > > > 0: > > 1: SPC SPC > > 2: SPC SPC SPC SPC > > 3: SPC SPC SPC SPC SPC SPC > > 4: TAB > > 5: TAB SPC SPC > > 6: TAB SPC SPC SPC SPC > > 7: TAB SPC SPC SPC SPC SPC SPC > > 8: TAB TAB
That's not using tabs for indentation, that's using tabs for compressing spaces (somebody already mentioned that in this thread). > I've literally NEVER come across this as a convention. Not a single > file that I have ever worked with has used it. Where is this > convention from? It's something vi does by default, and apparently emacs as well. In the 1970's saving space by replacing sequences of 8 spaces with tabs seemed lika a good idea. There are workarounds in vi(m), but I'm not sure if you can get rid of that behaviour completely. I'm sure it is possible in emacs. > > Your scheme also is ad hoc in that it doesn't follow its logic to other > > ASCII control characters. Why not use VT to separate methods? Why not > > use US to separate operators from operands? Why not use RS to separate > > the operands of optional arguments? Why not use GS to separate logical > > blocks of code? After all, those schemes would allow people to > > personalize the visual representation of more aspects of the source > > code. > > You're most welcome to use VT between methods. I sometimes use FF so separate sections of code in longer files. Had to stop that in Django projects because it messes up the stack traces. > Not sure what you mean by US, RS, and GS, Unit separator, record separator, group separator (and FS is file separator). I think they were intended for a CSV-like file format, but I have never seen them in use (outside of my own projects). hp -- _ | Peter J. Holzer | we build much bigger, better disasters now |_|_) | | because we have much more sophisticated | | | h...@hjp.at | management tools. __/ | http://www.hjp.at/ | -- Ross Anderson <https://www.edge.org/>
signature.asc
Description: PGP signature
-- https://mail.python.org/mailman/listinfo/python-list