2013-03-15 1 views
0

Example:Удалить лишние пробелы в элементах списка - Sublime Text 2

Иногда мне нужно поставить метки в конце элемента списка с помощью ярлыка: [Ctr] + [Shift] + [L] + [End] для редактирования нескольких элементов списка с использованием нескольких курсоров. Это не всегда так хорошо работает, когда в конце элемента списка есть дополнительные пробелы, что делает фактический конец элемента на несколько пробелов длиннее, чем текст элемента.

Есть ли ярлык, который я могу использовать вместе с [Ctr] + [Shift] + [L], чтобы удалить лишние пробелы и по существу сделать «конец», где заканчивается текст?

Пожалуйста, задавайте вопросы, если вам требуется уточнение по моему вопросу, и я постараюсь сделать это максимально ясно.

+2

Не могли бы вы добавить пример? Я не понимаю, почему есть пробелы после последнего текста строки. –

ответ

2

Я не нашел ярлыки для этого. Поэтому я написал один. Он будет обрезать конечные белые пробелы текущей строки. Например, после ввода ctrl+shift+l вы обнаружите, что есть дополнительные пробелы, введите ctrl+f, а затем ctrl+t, чтобы удалить их. Белые пробелы в другой строке не будут затронуты.

Ключ отображение:

{ "keys": ["ctrl+f", "ctrl+t"], "command": "delete_trailing_white_space" } 

delete_trailing_white_space.py (положить его Sublime Text 2\Packages\User)

import sublime 
import sublime_plugin 

class DeleteTrailingWhiteSpaceCommand(sublime_plugin.TextCommand): 
    def run(self, edit): 
     for region in self.view.sel(): 
      line = self.view.line(region) 
      line_content = self.view.substr(line) 
      trimed_line = line_content.rstrip() 
      self.view.replace(edit, line, trimed_line) 
+0

Это здорово, я думаю, что дистанционно понимаю, что вы пытаетесь сделать. Я не очень разбираюсь в сохранении SublimeText2 \ Packages \ User. Как это делается? –

+0

Итак, вы не хотите добавлять новый плагин в 'SublimeText2 \ Packages \ User', или вы не хотите, чтобы какой-либо плагин? – longhua

+0

Я не знаю, как –

0

Если вы не хотите, чтобы удалить пробелы, вы можете переназначить клавишу разъединения к плагину, который изменяет поведение. Я написал это, когда я играл с виртуальными вещами белого пространства, поэтому он минимально тестировался (link). Сохраните его до Packages/User. Имя файла не имеет значения, просто убедитесь, что он имеет расширение .py. Затем добавьте следующее как обязательную привязку клавиш.

{ 
    "keys": ["end"], "command": "custom_move_to_end_line"        
}