删除空格一个空间一次 删除空格一个空间一次

2024-04-26 13:36:34 发布

您现在位置:Python中文网/ 问答频道 /正文

如何配置vim以便一次删除一个选项卡,而不是删除整个选项卡?当我试图为一个if语句对齐多个测试时,我经常想这样做。在下面的示例中,condition3按我想要的方式对齐,condition2由于制表符而被关闭了一个空格。在

if condition1 or \
    condition2 or \
   condition3:
    do something

我在OSX 10.6.7上使用vim 7.2.108,代码文件中有以下模式行:

^{pr2}$

FWIW,这个模式行允许我使用箭头键在一个选项卡中一次导航一个空格。在

更新:以下是我对Bram Mooleanar的示例vimrc文件所做的更改:

map z :w<cr>
map q :q!<cr>
map m :make<cr>

set expandtab
set shiftwidth=4
set tabstop=4

set bs=2        " backspace over anything in insert mode
set showmatch       " display the matching bracket of the pair
set nowrap      " don't wrap line to fit window
set showmatch       " show matching paren, bracket, or brace
set ruler       " show current cursor position at bottom
set incsearch       " show next match as you type in search pattern
set ignorecase
set smartcase

syntax on       " enable syntax highlighting

Tags: or文件in示例mapifshow模式
3条回答

我只需在正常模式下按x删除一个字符。我还要指出很大的缩进/Python.vimscript作者:Eric McSween。它并没有真正改变退格的行为,但是它允许您做一些更符合PEP8的事情——使用Python的隐含的使用括号的行延续。有了这个脚本,上面的代码看起来像

if (condition1 or
    condition2 or
    condition3):
    do something

问题似乎是您使用了选项卡和空格的混合来管理对齐。 只有在大多数的工作环境中才使用 也就是说,您可以映射一个键来删除tab字符,并在它的位置插入3个空格,方法是在vimrc中添加以下内容。在

map <F1> s   <ESC>

如果要在插入模式下执行此操作:

^{pr2}$

*注意“>;”后面有三个空格

我会说把这个放到你的.vimrc文件中:

set expandtab

当你按下tab键时,基本上可以把标签变成空格。在

相关问题 更多 >