2012-06-12 11 views
0

Я много работаю с температурой в Textmate, и мне бы хотелось создать команду или фрагмент, который будет делать следующее. Я мог бы выделить ряд вроде 131 нижеСоздать команду Textmate Bundle и манипулировать выбранным текстом

Cook the food at 131. 

Их запустить команду и она будет автоматически рассчитает Цельсия и форматировать его, в результате чего

Cook the food at 131°F/55°C. 

У меня есть небольшой опыт работы с фрагментами, но не слишком много, особенно при манипулировании выбранным текстом. Я подумал, что это будет тривиальная проблема для кого-то, кто знал команды лучше меня!

Большое спасибо.

ответ

3

Получите то, что вы ищете. Кроме того, как правило, командная строка действительно принимает все, что может быть выполнено через bash, поэтому, если вы знакомы с любым из них или хотите использовать язык, с которым вы совместимы, его удивительно мощное поле. Для этого я буду использовать python просто потому, что bash и математика с плавающей запятой не играют хорошо вместе.

Перейти к Bundles -> Bundle Editor -> Edit Commands и выбрать язык, который это лучше всего подходит (если вы хотите применить это через baord, вы можете захотеть использовать Source или Text сверток.

Создать новую команду и для текста введите в:

#!/usr/bin/env python 

from sys import stdin 

degF = int(stdin.read()) 
degC = (degF - 32) * 5/9 

print str(degF) + "°F/" + str(degC) + "&degC;." 

Следующих установить ваше падение падение, например, что вход Selected Text и Выход Replace Selected Text

активации п должен быть Key Equivalent, а затем введите команду клавиатуры, которую вы хотите применить.

Наконец, выберите область действия для этого. Если вы хотите, чтобы он был доступен для любого типа файлов, оставьте это поле пустым. Если вы хотите его использовать во всех файлах, не содержащих код, (обычный текст, html и т. Д.), Введите text. Для только файлов, связанных с кодом, введите source. Yuo также может получить более подробный, если вы хотите (source.php)

Надеюсь, что это поможет!

+0

Я не могу придумать никакого способа сделать это более совершенным ответом. Спасибо за код и особенно за такой хороший пробег, почему он работает. Я очень ценю это. –

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