Як скопіювати глобальні параметри заміни тексту в iWork '09 (Основна сторінка, Сторінки)?


0

Дивовижно, через рік після виходу Lion, iWork досі не підтримує глобальні параметри заміни тексту Lion / ML.

Я широко використовую їх для спеціальних технічних символів.

Хоча глобальна заміна тексту не підтримується в iWork, Keynote та Pages мають свою функцію локальної заміни тексту, яка виконує те саме, що і глобальна, але не використовує глобальних налаштувань.

Моя проблема? У мене є близько 100 підстановок тексту, створених у Lion, тому введення їх у кожну програму iWork потребує віку.

Хтось знає спосіб (наприклад, редагуючи файли уподобань тощо), щоб перенести всі налаштування з функції заміни тексту Lion на Keynote та Pages?

Це було б для мене величезною економією часу.

Відповіді:


4

Заміни Pages.app зберігаються у: ~/Library/Preferences/com.apple.iWork.Pages.plist

Конкретно вони перебувають у Root/kSFWPAutoSubstitutionArrayProperty. Формат є масивом , що містить словники з ключами replace, withі on.

Глобальні заміни розташовані за адресою ~/Library/Preferences/.GlobalPreferences.plist. Зокрема, вони в Root/NSUserReplacementItems. Формат зручно однаковий.

Можливо, можливо просто відкрити ~/Library/Preferences/.GlobalPreferences.plistзвичайний текст і скопіювати все, що ви хочете ~/Library/Preferences/com.apple.iWork.Pages.plist.


Здається, це спрацювало - заміни зараз у Сторінках. :-) Але це зробило сторінки схильними до краху та нестабільним. :-( Чи є безпечніший спосіб редагування файлів
плістів,

Я знаю, ви можете відкрити їх у Xcode, але це, як правило, досить повільно. Вони є лише текстом, тому я не можу реально зрозуміти, що це проблема. Мені здається дивним, що це було б схильне до збоїв. Можливо, це тому, що їх у вас так багато? Може, подивіться, як це працює з меншою кількістю замін?
ratbum

Я знайшов проблему. Smultron - мій текстовий редактор - пошкоджував файли!
dan8394

О, дорогий, нагадай мені не користуватися цим. Я радий, що ти це розібрав.
ratbum

3

У мене було подібне питання. На цьому форумі я знайшов тему, в якій обговорювали, як перемістити підстановки з однієї версії OSX на іншу. Я адаптував це рішення для переміщення системних підстановок на сторінки. Я написав сценарій оболонки, який можна було б виконати із завданням cron вище.

Сценарій в основному покладається на PlistBuddy - редактор налаштувань, що постачається з ОС Apple. Вам потрібно буде відредагувати його перед запуском, щоб каталоги в скрипті відповідали тим, які знаходяться на вашій машині. Крім цього, мій сценарій добре задокументований, тому я більше не буду обговорювати ...

#! / бін / баш

# копій налаштування заміни тексту з
# система для сторінок 
#
# Автор: Крейг Чамплін
1.02.2013
#
# Адаптовано з: http://apple.stackexchange.com/questions/57960/how-can-i-export-text-substitutions-from-lion-for-import-into-mountain-lion
# 
# зовсім не надійний, швидкий і брудний - використовувати на власний ризик

# змінити каталог уподобань, щоб зберегти введення тексту
cd / Користувачі / Крейг / Бібліотека / Налаштування

# налаштування резервного копіювання для сторінок
cp com.apple.iWork.Pages.plist com.apple.iWork.Pages.plist.bak

# витяг системних підстановок у файл
/ usr / libexec / PlistBuddy -x -c "Друк NSUserReplacementItems" .GlobalPreferences.plist> ./zzzSystemReplacements

# стерти підстановки в налаштуваннях сторінок
/ usr / libexec / PlistBuddy -c "Видалити kSFWPAutoSubstitutionArrayProperty" com.apple.iWork.Pages.plist

# створити новий, порожній запис підстановок для сторінок
/ usr / libexec / PlistBuddy -c "Додати kSFWPAutoSubstitutionArrayProperty масив" com.apple.iWork.Pages.plist

# об’єднати експортовані налаштування у сторінки
/ usr / libexec / PlistBuddy -c "Об'єднання zzzSystemReplacements kSFWPAutoSubstitutionArrayProperty" com.apple.iWork.Pages.plist

# візуально страхувати операцію успішно завершено 
/ usr / libexec / PlistBuddy -x -c "Друкувати kSFWPAutoSubstitutionArrayProperty" com.apple.iWork.Pages.plist

Як застереження щодо використання підстановки тексту в Pages, Pages не перетворює стиль шрифту, як це робить TextEdit. Це означає, що спеціальні символи з’являються у будь-якому шрифті, який ви використовуєте. Оскільки більшість моїх підстановок є математичними символами, а оскільки моїм шрифтом за замовчуванням є Helvetica, мої заміщені символи зазвичай відображаються як крапка. Я повинен змінити стиль шрифту для цих символів на Cambria, щоб вони відображалися правильно.

Якщо ви цього не знали, ви можете припустити, що заміна не спрацювала.

Успіхів вам!


1

for d in com.apple.iWork.Pages com.apple.iWork.Keynote com.apple.iWork.Numbers; do defaults write $d kSFWPAutoSubstitutionArrayProperty "$(defaults read -g NSUserReplacementItems | sed 's/\\\\/\\/g')"; done

Ви також можете використовувати текстовий файл для налаштування замін:

(
{on = 1; replace = "..."; with = "…";},
{on = 1; replace = "(c)"; with = "©";}
)

І оновіть їх за допомогою сценарію:

t=$(cat ~/Desktop/test.txt)
defaults write -g NSUserReplacementItems "$t"
defaults write com.apple.iWork.Pages kSFWPAutoSubstitutionArrayProperty "$t"
defaults write com.apple.iWork.Numbers kSFWPAutoSubstitutionArrayProperty "$t"
defaults write com.apple.iWork.Keynote kSFWPAutoSubstitutionArrayProperty "$t"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.