I've been using Vim for a while heard people saying indent with spaces is a better practice when programming in Python so I configured my .vimrc as below:
au BufNewFile,BufRead *.py,*.java,*.cpp,*.c,*.h,*.md,*.html,*.css,*.js
set expandtab |
set tabstop=4 |
set softtabstop=4 |
set shiftwidth=4 |
set textwidth=120 |
set autoindent |
set fileformat=unix |
Everything works well so far. But I noticed unlike other editors for example vscode or sublime. Vim does not keep the indent in a line gap between code.
The cursor will indent itself when I hit enter
but if I leave that line blank when I return to that line the cursor will appear at the beginning of the line.
Here is an example (@ as cursor):
Class RandomClass:
code... # 1) hit <enter> and change line
@ # 2) cursor will appear in here. auto indented. good 3) now hit <enter> again and leave this as a line gap
code... # 4) code something and 5) return back to the line gap
# 6) now the cursor '@' would appear at the beginning of the line without indentation
Is this what it suppose to be?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…