2008-09-15 8 views

ответ

2

Я бы создал команду bundle для этого.

Вы можете выбрать редактор в качестве входа в свой скрипт, а затем заменить его на результат выполнения. Эта команда, например, примет выбранный номер и напечатает символ «#» столько раз.

python -c "print '#' * $TM_SELECTED_TEXT" 

Конечно, этот пример не позволяет указать персонажа, но он дает вам представление о том, что возможно.

1

Принимая

python -c "print '#' * $TM_SELECTED_TEXT" 

шаг дальше, вы можете дублировать примеры вы дали в этом вопросе.

Просто сделать фрагмент, называемый делитель или что-то, установить tab trigger поле, то соответствующий '--', например, затем ввести что-то вроде:

`python -c "print '_' * $TM_COLUMNS"` 

Тогда при вводе --⇥ (тире вкладку тире), вы должны получите разделитель правильной ширины.

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

+0

Мне что-то не хватает: как вы его повторно используете? Вопрос состоял в том, чтобы выполнить действие, а не просто вставить символ. Должен ли я писать новую программу Python для каждого действия, которое я хочу повторить? – Ken 2009-04-22 17:33:39

1

Вдохновленный другими ответами. Сделайте снипп следующим образом:

`python -c "print ':'.join('$TM_SELECTED_TEXT'.split(':')[:-1]) * int('$TM_SELECTED_TEXT'.split(':')[-1])"` 

и необязательно назначить ему последовательность клавиш, например. CTRL-SHIFT-R

Если вы наберете -x:4, выберите его и позвоните по фрагменту (например, по ярлыку), вы получите «-x-x-x-x».

Вы также можете использовать ::4 для получения «::::».

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

 Смежные вопросы

  • Нет связанных вопросов^_^