【问题标题】:How to clear method call parameters/arguments filled by SublimeText Jedi-autocomplete?如何清除 SublimeText Jedi-autocomplete 填充的方法调用参数/参数?
【发布时间】:2020-05-23 05:36:18
【问题描述】:

我正在使用 JEDI 包测试 SublimeText 自动完成功能,我遇到的一个问题是不需要的参数是自动填充函数/方法调用:

例如在 Flask 中: 我可以这样调用函数:

app.run(), 

但是 JEDI-Autocomplete 正在做这样的事情:

app.run(host=     , port=..., debug=..., load_dotenv=...)

我不知道如何清除参数,因为在这种情况下不需要它。

同样的问题:

app = Flask(__name__)

相反,自动完成会自动填充不需要的参数,并且似乎迫使我为每个参数添加值。

【问题讨论】:

    标签: autocomplete sublimetext3


    【解决方案1】:

    搜索 Sublime Text 3 的 SublimeJEDI 存储库 (issue #290 - open() autocompletes all args when in required mode) 似乎表明存在控制自动完成攻击性的选项:

    "auto_complete_function_params": "all",
    

    在您的偏好设置中(用户偏好或语法偏好)。

    来自他们的README.md

    函数参数完成有 3 种不同的行为:

    在自动完成时插入所有函数参数:

    # complete result
    func(a, b, c, d=True, e=1, f=None)
    
    # sublime_jedi.sublime-settings
    {
        "auto_complete_function_params": "all"
    }
    

    仅插入没有默认值的必需参数(默认行为):

    # complete result
    func(a, b, c)
    
    # sublime_jedi.sublime-settings
    {
        "auto_complete_function_params": "required"
    }
    
    Do not insert any arguments:
    
    # complete result
    func()
    
    # sublime_jedi.sublime-settings
    {
        "auto_complete_function_params": ""
    }
    

    More info about auto_complete_function_params

    您可以尝试这些选项,看看哪种更适合您。

    当光标位于函数名之后,关闭 auto_complete 并使用SublimeJedi: ShowDocstring(默认为Ctrl+Alt+D)为我解决了这个问题。

    您也可以将鼠标悬停在函数名称上或使用SublimeJedi: Show Signature

    【讨论】:

      猜你喜欢
      • 2020-07-07
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 1970-01-01
      • 2019-06-19
      • 1970-01-01
      • 1970-01-01
      • 2022-12-14
      相关资源
      最近更新 更多