Решение # 1 - Sublime Text 2:
По какой-то причине, super+d
ака ⌘+d
ака find_under_expand
сделать не работы с макросами. find_under_expand
не является плагином. Итак, вот пример выбора-все-слово плагин, который делает работу с макросами:
import sublime, sublime_plugin
class Expand(sublime_plugin.TextCommand):
def run(self, edit):
regions = []
for s in self.view.sel():
word = self.view.word(sublime.Region(s.begin(), s.end()))
if word.end() == s.end():
# to deal with an end of line issue
word = self.view.word(sublime.Region(s.end(), s.end() + 1))
regions.append(word)
for r in regions:
self.view.sel().add(r)
Далее, установите плагин Shrink-пробельные написанный dacap
:
https://github.com/dacap/sublime-shrink-whitespaces.
Затем создайте этот макрос. Сокращение пробелов два (2) раза имеет дело с ситуациями, когда есть вкладки или вкладки + пробелы.
[
{
"args": null,
"command": "expand"
},
{
"args": null,
"command": "right_delete"
},
{
"args": null,
"command": "shrink_whitespaces"
},
{
"args": null,
"command": "shrink_whitespaces"
},
{
"args":
{
"characters": " "
},
"command": "insert"
}
]
Решение # 2 - Sublime Text 2:
Установка: https://github.com/bits/ExpandSelectionToWhitespace-SublimeText
Создать макрос и связать его с вашей любимой комбинации клавиш:
[
{
"args": null,
"command": "expand_selection_to_whitespace"
},
{
"args":
{
"by": "wordends",
"extend": true,
"forward": true
},
"command": "move"
},
{
"args":
{
"by": "words",
"extend": true,
"forward": false
},
"command": "move"
},
{
"args": null,
"command": "left_delete"
}
]
Решение №1 - Emacs - определить две функции и создать макрос:
(fset 'lawlist-kill-word [?\C-= kp-delete ?\C-+])
(global-set-key (kbd "C-=") 'lawlist-mark-word)
(global-set-key (kbd "C-+") 'delete-horizontal-space-forward)
(defun lawlist-mark-word()
"Mark the entire symbol around or in front of point."
(interactive)
(let ((symbol-regexp "\\s_\\|\\sw"))
(when (or (looking-at symbol-regexp)
(looking-back symbol-regexp))
(skip-syntax-forward "_w")
(set-mark (point))
(while (looking-back symbol-regexp)
(backward-char)))))
(defun delete-horizontal-space-forward() ; adapted from `delete-horizontal-space'
"*Delete all spaces and tabs after point."
(interactive "*")
(delete-region (point) (progn (skip-chars-forward " \t") (point))))
что такое 'delete_word.py'? – MattDMo
'delete_word.py' - это плагин сценария python, который находится в папке'/Packages/Default'. Он связан с раскладкой OSX/Mac '' ctrl + backspace "или' 'ctrl + delete" ', в зависимости от того, хочет ли пользователь удалять вперед или назад. Я отредактирую вопрос, чтобы добавить плагин word. – lawlist
Используя редакторы кода, а не текстовые процессоры, я нахожу довольно раздражающим, что текстовые процессоры удаляют больше, чем просто слово ctrl + backspace, даже если это дополнительный период или апостроф. Я понятия не имею, почему это раздражает, но это просто так. – Darkwater