Как я могу предотвратить автоматическую вставку точек с запятой для CSS в Sublime Text 3?

1

В Sublime Text 3 при написании файлов CSS, если я набираю двоеточие, точка с запятой автоматически вставляется после каретки. Это, несомненно, полезно для многих, но я среди пользователей, которых это не беспокоит.

Как я могу отключить эту авто-вставку точек с запятой?

Я хотел бы сделать это без глобального отключения авто-вставки. Я очень рад, что он вставляет закрывающую скобку после того, как я ввожу открывающую скобку - именно авто-вставка двоеточия / точка с запятой меня затрудняет.

Я помню, как нашел способ отключить его, когда я использовал ST2 несколько месяцев назад, но я не уверен, как это сделать в ST3.

doppelgreener
источник

Ответы:

4

Пакет CSS, включенный в ST (2 и 3), включает фрагмент привязки клавиш для автоматической вставки точки с запятой после двоеточия. В ST2 вы могли легко редактировать связывание клавиш, чтобы удалить эту функцию, так как все пакеты были в одном каталоге и вы могли получить доступ к каждому файлу через файловую систему. Однако в ST3 было принято решение сжимать пакеты в .sublime-packagezip-файлы, и хотя существует несколько обходных способов редактирования содержимого, в этом случае проще всего просто переопределить привязку клавиш в ваших собственных настройках.

Зайдите в Preferencesменю и нажмите Key Bindings - User. Если этот файл пуст, вставьте в него следующее:

[
    // override CSS auto-insertion of semi-colon
    { "keys": [":"], "command": "insert_snippet", "args": {"contents": ":$0"}, "context":
        [
            { "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
            { "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
            { "key": "selector", "operator": "equal", "operand": "source.css - meta.selector.css", "match_all": true },
            { "key": "following_text", "operator": "regex_contains", "operand": "^(?:\t| |\\}|$)", "match_all": true }
        ]
    }

]

Если у вас уже есть пользовательские привязки клавиш, просто опустите внешние квадратные скобки [ ], поместите запятую ,после последней привязки клавиш и вставьте остальные в конце перед последней закрывающей квадратной скобкой ].

Если вам интересно, оригинальная привязка клавиш содержалась "args": {"contents": ":$0;"}- я только что удалил ;из после $0(то есть «поставить курсор здесь»).

MattDMo
источник
Большое спасибо за это. Это чрезвычайно полезно при использовании рабочего процесса на основе Emmet. Отключение автоматической вставки точки с запятой и автозаполнения делает эту комбинацию идеальной в этой ситуации.
Се.