Это сообщение от ablepear содержит учебник по добавлению пользовательских текстовых макросов. Ниже приведены необходимые шаги, которые определяет учебник, для создания пользовательского текстового макроса для Objective - C.
Перейдите в файл приложения Xcode (root / Developer / Applications /) .
Щелкните правой кнопкой мыши (удерживая нажатой клавишу Control) и выберите Показать содержимое пакета.
Перейдите к (Contents / PlugIns / TextMacros.xctxtmacro / Contents / Resources /) .
Выберите файл Objective-C.xctxtmarco и скопируйте его (команда-c).
Откройте новое окно Finder и выберите свою домашнюю папку.
Перейдите к (Библиотека / Поддержка приложений / Разработчик / Общий / Xcode /) .
В папке Xcode Вставьте (команда-v) файл Objective-C.xctxtmacro.
Открыть Objective-C.cxtxtmacro. Он содержит массив с около 26 элементов , каждый из которых представляет собой словарь . Нажмите на символ / вкладку "+" справа от выбранной ячейки. Это добавит новый элемент к корневому массиву plist, который будет нашей новой записью (текстовое определение макроса).
Выберите новый элемент и измените тип с Строка на Словарь . Теперь нажмите на раскрывающий треугольник (левая сторона выбранной ячейки), он повернет треугольник от направления вправо (свернуто) к направлению вниз (развернуто). Вы также можете заметить, что символ «+» справа превращается в набор строк при раскрытии элемента. Это позволяет нам добавлять «потомки» пары имя / значение в наш новый элемент.
Есть несколько «дочерних» пар имя / значение, которые нам нужно добавить в наш новый Предмет, чтобы они работали, и они выглядят следующим образом:
- Идентификатор - Описание языка макроса (родительского) .identifier.
- BasedOn - Это (родительский) язык (objc).
- IsMenuItem - Логическое значение. Это создает пункт меню в меню «Правка».
- Имя - Имя прослушивается в (выше) пункте меню.
- TextString - Фактическая строка, которая будет вставлена через текстовый макрос.
- CompletionPrefix - Это то, что вы вводите в качестве ключа для текстового макроса.
Добавьте значения к клавишам. Типичный макрос выглядит следующим образом (например: текстовый макрос NSLog).
- Идентификатор - объект. flog
- BasedOn - objc
- IsMenuItem -YES
- Имя - Функция (NSLog)
- TextString - NSLog (@ "FUNCTION:% s", _ FUNCTION _);
- CompletionPrefix - flog
Вы можете называть свой Identifier и CompletionPrefix как угодно, если они не конфликтуют с каким-либо существующим идентификатором завершения. Вот. flog , используется для журнала функций.
Прочтите пост в ссылке выше , чтобы понять полностью.
ВАЖНОЕ ОБНОВЛЕНИЕ: Кажется, что макрос v выше не работает в Xcode 3.2 . Чтобы это работало, мы должны добавить ключ,
OnlyAtBOL = YES; // or NO
каждому определению макроса в вашем файле xctxtmacro. Этот ключ указывает, что макрос работает только в начале строки или не в начале строки, т. Е. Работает только после начала строки . Таким образом, макрос flog будет выглядеть следующим образом.
{
Identifier = objc.flog;
BasedOn = objc;
OnlyAtBOL = YES;
IsMenuItem = YES;
Name = "Function (NSLog)";
TextString = "NSLog(@"FUNCTION: %s", _FUNCTION_)";
CompletionPrefix = "flog";
}
Надеюсь, это поможет кому-нибудь в будущем.