VS代码:使用标签

时间:2018-05-27 14:47:46

标签: emacs visual-studio-code

我一直在使用Emacs很长一段时间,现在我想切换到像VS代码这样现代的东西。我在Emacs中经常使用的一件事是使用Tab键自动缩进:

http://www.gnu.org/software/emacs/manual/html_node/emacs/Indentation.html

使用tab-always-indent

启用

我希望VS代码在按下Tab时不添加标签符号,但是像Emacs那样自动缩进一行,我该如何配置?

以下是Javascript中的示例:

function foo(){
    }  // Press Tab here

在Emacs中,结果将是(我想在VS代码中使用相同的内容):

function foo(){
}

所以括号将转到行的开头,但VS代码中的结果将是

function foo(){
        } // second tab added

Emacs根据当前的文本模式(Python / JS / C ++ / Whatever)进行缩进。

PS。我知道我可以选择一个代码区域并使用"格式选择"或者在保存时进行自动格式化。

1 个答案:

答案 0 :(得分:1)

这只能部分回答您的问题---使Tab缩进行---并不能根据需要对缩进进行标准化。但是,您可以将其设置为其他命令,该命令可以执行您想要的操作。

加上它,但会破坏一些情况。

{
    "key": "tab",
    "command": "editor.action.indentLines",
    "when": "editorTextFocus && !suggestWidgetVisible && !inSnippetMode"
}

产生默认行为的地方:

  • 使用Tab确认智能提示对话框(自动完成)时
  • 跳转到摘要占位符时

它的缺点:

  • 按下Tab以缩进level of current block
  • 在编写代码段前缀后无法立即执行代码段扩展(您需要等待intellisense打开)
  • 也许还有其他东西...