Получение данных, созданных расширениями Safari - PullRequest
0 голосов
/ 29 октября 2018

Так что недавно Safari обновился до Safari 12, и все расширения, созданные не через API расширений, перестали работать должным образом.Это неприятно для меня, так как последние несколько лет я работал над проектом, который требовал использования расширения, которое больше не работает.Рассматриваемое расширение представляет собой расширение для создания сценариев браузера, называемое Ninjakit, и, насколько я могу судить, оно больше не существует ни в какой форме (веб-сайт, с которого я первоначально загрузил его, в настоящее время полностью перестал существовать), поэтому вероятность его обновления ограничена.чтобы быть совместимым с Safari 12. Поэтому я искал обходные пути, которые я могу использовать, чтобы сделать так, чтобы я мог продолжать использовать расширение.Лучшая стратегия, которую я нашел, описана в этом сообщении в блоге: https://georgegarside.com/blog/macos/install-any-safari-extension-macos-mojave/. Хотя следование инструкциям на этой странице позволило мне успешно сделать это, чтобы я мог продолжать использовать Ninjakit, все 200+ скриптов, которые у меня былинаписанные с использованием Ninjakit отсутствуют (обратите внимание, что эти сценарии были созданы исключительно для моего личного использования и, следовательно, не были загружены в Интернет в любой момент времени).Это для меня неприемлемо.В блоге содержатся инструкции по импорту старых настроек расширения, но когда я пытаюсь следовать этим инструкциям, я сталкиваюсь с непроходимым препятствием.В какой-то момент в инструкциях сказано внести изменения в файл ~ / Library / Preferences / com.apple.Safari.Extensions.plist.Согласно инструкции, есть данные, которые можно изменить в разделе «Root», но когда я открываю файл в XCode, «Root» становится совершенно пустым.

Честно говоря, есть и другие, лучшерасширения, которые я мог бы использовать для создания сценариев в Safari (или, возможно, даже в другом браузере, таком как Chrome), и я бы честно согласился отказаться от Ninjakit, если бы не тот факт, что в настоящее время это будет означать переписывание всех моих старыхсценарии с нуля, что просто невозможно.Поскольку все эти сценарии в конечном счете являются просто кодом Javascript, я предполагаю, что Safari, должно быть, хранит их в какой-то физической форме на моем компьютере, но я не могу до конца жизни выяснить, какой файл будет содержать эти данные.Я безуспешно искал Библиотеку и Машину времени.Если кто-нибудь знает, как я могу повторно получить доступ к своим старым сценариям, помощь будет принята с благодарностью - даже возможность копировать и вставлять код Javascript в другое расширение будет удовлетворительной для меня.

Если это поможетмоя машина еще не была обновлена ​​до OSX Mojave - она ​​все еще работает на OSX High Sierra.Хотя я не знаю точный номер версии (в настоящее время я публикую его с другого компьютера), я могу легко получить эту информацию, если это необходимо.

1 Ответ

0 голосов
/ 18 февраля 2019

Возможно, вы уже решили это на данный момент, но для всех, кто ищет, ваши скрипты ниндзякита хранятся в этом файле (не буквальные звездочки, а случайные символы):

~/Library/Safari/LocalStorage/safari-extension_net.os0x.ninjakit-**********_0.localstorage

Я не знаю,обновление до Mojave удаляет этот файл или нет, но в этом случае вам придется извлечь его из резервной копии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...