如何修改Sublime Text中autopep8的快捷键实现保存时自动格式化代码
Sublime Text autopep8保存自动格式化解决方法
默认配置修改失效的原因
你尝试修改的Default.sublime-keymap是Autopep8插件自带的默认配置文件,属于只读属性,不支持直接编辑修改,修改操作也不会生效,所有自定义配置都需要写到对应功能的用户配置文件中。
实现方案(两种可选)
方案1:直接开启autopep8保存自动格式化(推荐,无需修改快捷键)
不需要修改快捷键绑定,开启插件自带的保存自动格式化功能即可,操作步骤:
- 打开Sublime Text顶部菜单栏的
Preferences→Package Settings→Autopep8→Settings - User - 在打开的配置文件中添加如下内容:
{ "format_on_save": true }
- 保存配置文件即可生效,之后所有Python文件执行保存操作时会自动触发autopep8格式化。
方案2:自定义Ctrl+S快捷键绑定(先格式化再保存)
如果你需要将格式化+保存的组合操作绑定到Ctrl+S,操作步骤:
- 打开Sublime Text顶部菜单栏的
Preferences→Key Bindings - 在右侧的用户自定义快捷键配置文件中,添加如下配置(原有配置不要删除,在现有数组中新增即可):
{ "keys": ["ctrl+s"], "command": "chain", "args": { "commands": [ ["auto_pep8", {"preview": false}], ["save"] ] }, "context": [ {"key": "selector", "operator": "equal", "operand": "source.python"} ] }
- 注:如果配置不生效,可通过Package Control安装
ChainOfCommand插件,该插件支持链式执行多个Sublime命令。 - 上述配置添加了
context规则,仅对Python文件生效,不会影响其他类型文件的Ctrl+S保存逻辑。
内容的提问来源于stack exchange,提问作者Jack Ryandal
相关产品推荐
相关产品推荐

