gpt4 book ai didi

python - 如何让 vim 在调用函数时只在括号后的下一行插入 4 个空格(一个缩进级别)?

转载 作者:行者123 更新时间:2023-11-28 18:43:41 26 4
gpt4 key购买 nike

输入括号回车后,下一行缩进8个空格:

        print conn.generate_url(
seconds,
'GET',

而不是 4:

        print conn.generate_url(
seconds,
'GET',

我的 ~/.vimrc: https://github.com/quantonganh/salt-states/blob/master/vim/vimrc.jinja2

我错过了什么吗?

这是我的插件列表:

├── ctrlp.vim
├── gundo.vim
├── jedi-vim
├── nerdtree
├── powerline
├── salt-vim
├── supertab
├── syntastic
├── ultisnips
├── vim-fugitive
├── vim-indent-guides
├── vim-surround
├── vim-yankstack
└── vundle

更新 2014 年 4 月 12 日星期六 10:00:55

我想知道:它是否遵循 PEP8还是不是?

        print conn.generate_url(
seconds,
'GET',
bucket,
key,
response_headers={
'response-content-type': 'application/octet-stream'
})

Continuation lines should align wrapped elements either vertically using Python's implicit line joining inside parentheses, brackets and braces, or using a hanging indent. When using a hanging indent the following considerations should be applied; there should be no arguments on the first line and further indentation should be used to clearly distinguish itself as a continuation line.

在一个函数中,我们会有一些用连续的线条来区分的东西,但是这里只是一个print,应该是4个还是8个空格?

What is PEP8's E128: continuation line under-indented for visual indent?


更新 2014 年 4 月 12 日星期六 23:09:27

看起来 jedi-vim 对 Python 的缩进没有任何作用。所以我的问题应该改为:

定义函数时括号后的下一行加8个空格(2级缩进)即可:

# More indentation included to distinguish this from the rest.
def long_function_name(
var_one, var_two, var_three,
var_four):
print(var_one)

但我只想在调用它时添加 4 个空格(一个缩进级别):

# Extra indentation is not necessary.
foo = long_function_name(
var_one, var_two,
var_three, var_four)

我该怎么做?

最佳答案

如您所述,PEP8's chapter on indentation建议在参数前添加两个缩进级别而不是一个(当第一行没有缩进时)以将其与其余部分区分开来。

但它还补充说,在不需要额外缩进的情况下,它变成了可选的。您的编辑决定添加它,但根据 PEP8,您可以选择。

关于python - 如何让 vim 在调用函数时只在括号后的下一行插入 4 个空格(一个缩进级别)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23016531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com