Цепочка методов автоматического отступа в Sublime Text 3

как я типа следующий код javascript (точные нажатия клавиш):

myObject
.doSomething()
.doSomethingElse();

Я ожидал бы, что он автоматически станет следующим...

myObject
    .doSomething()
    .doSomethingElse();

... как и любой другой программист, верно?

Как включить это и почему это не включено по умолчанию?

2 ответов


можно использовать Sublime код форматирования С поддержкой JavaScript / JSON Beautifier, это ссылке покажет вам, как использовать этот плагин.

или другой способ-вставить свой код внутри :

{"keys": ["alt+shift+f"], "command": "reindent", "args": {"single_line": false}}

это происходит потому, что sublime smart_indent недостаточно умен.

вы можете исправить отступ post factum с помощью плагина форматирования кода, как JsFomat.

или превентивно отступ первого вызова цепного метода. Следующие строки будут иметь одинаковый уровень отступа. Это решение можно немного улучшить, создав новую привязку ключа:

    {
        "keys": ["alt+enter"],
        "command": "insert",
        "args": {"characters": "\n\t"}
    }

пресс alt+enter вместо enter, tab для новой строки, чтобы иметь дополнительный отступ.