Подтвердить что ты не робот

Возвышенный текст word_separator CamelCase

Возвышенный текст word_separator:

"word_separators": "./\\()\"'-:,.;<>[email protected]#$%^&*|+=[]{}`~?",

Мне также хотелось бы, чтобы изменения в CamelCase считались измененными. Есть ли способ/способ сделать это?

(Например, в FooBar ctrl + bck_space следует удалить только Bar).

4b9b3361

Ответ 1

В случае, если кто-то все еще смотрит на это...

В ваших ключевых комбинациях по умолчанию вы найдете:

{ "keys": ["ctrl+left"], "command": "move", "args": {"by": "words", "forward": false} },
{ "keys": ["ctrl+right"], "command": "move", "args": {"by": "word_ends", "forward": true} },
{ "keys": ["ctrl+shift+left"], "command": "move", "args": {"by": "words", "forward": false, "extend": true} },
{ "keys": ["ctrl+shift+right"], "command": "move", "args": {"by": "word_ends", "forward": true, "extend": true} },

{ "keys": ["alt+left"], "command": "move", "args": {"by": "subwords", "forward": false} },
{ "keys": ["alt+right"], "command": "move", "args": {"by": "subword_ends", "forward": true} },
{ "keys": ["alt+shift+left"], "command": "move", "args": {"by": "subwords", "forward": false, "extend": true} },
{ "keys": ["alt+shift+right"], "command": "move", "args": {"by": "subword_ends", "forward": true, "extend": true} },

Использование alt + направления будет перемещаться под "подсловами", а не "словами", что учитывает camelCase. Я предпочитаю, что по умолчанию, поэтому я скопировал направление alt +, установленное в мои ключевые слова пользователя, и заменил экземпляры alt ctrl. Voila, ctrl + направление перемещается с помощью camelCase, а также определенные разделители слов.

Кроме того, я не уверен, что если использовать настройку подзаголовков, учесть подчеркивания, я всегда добавлял _ в разделители слов, чтобы убедиться.

Ответ 2

Я думаю, что это можно сделать только через плагин, а не просто путем изменения настроек Sublime Text.

Этот плагин выглядит многообещающим:
https://github.com/jdc0589/CaseConversion

Ответ 3

Использование alt работает только для перемещения, а не для удаления, но я нашел что-то, что работает очень хорошо:

Удалить вперед (alt + delete):

delete_subword.sublime-macro:
[
   {
      "command": "move",
      "args": {
         "by": "subwords",
         "extend": true,
         "forward": false
      }

   },
   {
      "args": null,
      "command": "left_delete"
   }
]

Удалить назад (alt + backspace)

delete_subword_forward.sublime-macro:
[
   {
      "command": "move",
      "args": {
         "by": "subwords",
         "extend": true,
         "forward": true
      }
   },
   {
      "args": null,
      "command": "right_delete"
   }
]

Сохраните его в своем каталоге пользователя. Теперь вы связываете такие клавиши:

{ "keys": ["alt+backspace"], "command": "run_macro_file", "args": {"file": "Packages/User/delete_subword.sublime-macro"} },
{ "keys": ["alt+delete"], "command": "run_macro_file", "args": {"file": "Packages/User/delete_subword_forward.sublime-macro"} },

Источник

Ответ 4

Alt + W в режиме vim работает для меня в возвышенном тексте 3 для перемещения слов camelCase

Ответ 5

Вы можете попробовать адаптировать это движение и увидеть пример кода из этого пакета, который предоставляет собственный код движения:
https://github.com/robertcollier4/KeyboardNavigation
https://packagecontrol.io/packages/KeyboardNavigation

KeyboardNavigation - перемещение клавиатуры, выбор и удаление в пользовательских разделителях. Быстро перемещайтесь между смежными границами. Для SublimeText.