|
|
|
|
|
by klibertp
4537 days ago
|
|
I think all the modes for python in Emacs implement dedent and indent functions which behave nicely. I hacked one of them to leave selection active after the operation and now - it's still more than one command - I do C-y for paste, C-x C-x to select what was pasted and C-M-> or C-M-< to adjust indent. On the other hand it's almost impossible to make a mistake with indentation with python-mode (and similar, I'm using all-in-one-plus-your-cat elpy package) when writing code - the enter key indents automatically (instead of having to press tab additionally) and it indents one level more after statements which need it. And backspace removes one level of indentation. I can't remember if I ever had a problem with indentation in Python in Emacs; although I know I had some with CoffeeScript. So in short - it's all an editor support issue and some relatively trivial rules give you an experience as streamlined as in langs without significant whitespace. Also, I'm a lisper so - paredit. Knowing about it and using it makes you realize how broken every other syntax is and how hard it is to edit ;) (Replying just because of Emacs, the rest is uninteresting anyway - in my experience once you cross the border of 5-8 known langs you can easily accommodate to any syntax) |
|
ps: although it seems, vanilla python mode binds them to 'C-c >' and 'C-c <'
Just like monads, sexps have that curse when you get how paredit or alikes work, you just can't explain how awesome it is to non lispers.