Лучший способ написать расширение для Safari 4 [закрыто]

xmarks=[i for i in range(1,length+1,1)]

plt.xticks(xmarks)

Это сработало для меня

, если вы хотите, чтобы тики между [1,5] (1 и 5 включительно) заменили

length = 5
13
задан Lebyrt 7 May 2014 в 19:05
поделиться

8 ответов

С выпуском Safari 5.0 Apple выпустила новую структуру расширений для разработчиков. По функциям он похож на структуру расширений Firefox, позволяющую настраивать кнопки, панели инструментов, контекстные меню, инъекции с использованием javascript и html 5

Подробнее по этой ссылке

https://developer.apple.com/documentation/safariextensions

8
ответ дан 1 December 2019 в 18:56
поделиться

там путь, который позволил бы Вам добавлять кнопки или формы к браузеру UI, так как это не возможно с менеджером Input или Сервисным меню?

На самом деле, с InputManager, это было бы быть возможным. SIMBL, общая техника для расширений Safari, является просто оберткой вокруг InputManagers —, это обозначает аукционный зал S я nput Manager Bundle Loader. Можно добавить материал к строке меню, на панель инструментов, диалоговые окна, где угодно, просто путем расширения существующих классов Safari.

Однако запись расширений для Safari не только нетривиальна, как Г ¦ на сказанном, но также и полностью неподдерживаемый. Существуют некоторые относительно популярные там, как Исследователь (недавно получены Yahoo!) и Google Gears, но по большей части, это очень непохоже на расширения Firefox, которые являются официально поддерживаемым, широко используемой техникой.

Вы также определенно хотите учесть специальное предложение ограничения InputManagers на Leopard.

4
ответ дан Community 7 May 2014 в 19:05
поделиться
  • 1
    @a_horse_with_no_name: Q1), делает способность задержать ограничения, средние, что эти продукты не переносят тех же проблем как SQL Server (где ограничения всегда проверяются на уровне строки т.е. слишком восторженные)? Q2), оптимизатор справляется хорошо в контексте ограничительной проверки? (Я подозреваю не, иначе вышеупомянутый Toon Koppelaars wouldn' t зарабатывают на жизнь из его продукта www.rulegen.com;) – onedaywhen 25 February 2013 в 10:27

Разработка плагинов Safari нетривиальна. Интерфейс записан в Objective C, и большая часть из него даже не является частью WebKit (таким образом, Вы не видите источник), но существует оборудование, чтобы осмотреть и исправить иерархию объектов запущенного приложения. Это требует понимания Какао и Objective C, но не понизьтесь.

Вот обзор высокого уровня, который я имел в своих закладках процесса http://livingcode.org/2006/tab-dumping-in-safari . Это пробегается через создание плагинов Safari с помощью Python с работой (вероятно, устаревший) код. Вместо Python можно использовать что-либо, что имеет привязку Objective C.

существует две больших части к нему:

  • необходимо присоединить код к рабочему Safari. Это обычно делается с SIMBL http://www.culater.net/software/SIMBL/SIMBL.php.

  • , Как только Вы внутри, необходимо изобразить, что исправить. Существует учебное руководство при инвертировании приложений Какао http://www.culater.net/wiki/moin.cgi/CocoaReverseEngineering , который связывается с самым важным инструментом, дамп класса http://www.codethecode.com/projects/class-dump/ (связь на Wiki разорвана). Дамп класса дает Вам полную иерархию классов Safari, где можно предположить именами, что, а именно, необходимо исправить. Это очень режим метода проб и ошибок.

Чтение ссылок выше даст Вам объем проекта.

13
ответ дан 7 May 2014 в 19:05
поделиться
  • 1
    " единственным подобным SQL продуктом я в настоящее время знаю того подзапросы поддержек В ограничениях CHECK, который включает ограничения целостности уровня таблицы, является механизм базы данных Access (ACE, Струя, безотносительно)." В SQL Server можно реализовать CHECK ограничение против вывода UDF. UDF может инкапсулировать почти любой вид запроса, который Вы хотите. Эта техника не рекомендуется в SQL Server, потому что это имеет много ловушек . – Nick Chammas 29 March 2012 в 01:02

Также к сведению - Apple заявила, что InputManager сильно ограничен, начиная с Leopard, и не будет работать в 64-битных приложениях для Apple Leopard Release Notes . Это особенно интересно, учитывая, что большинство приложений в Snow Leopard будут 64-битными (включая, предположительно, Safari). Apple определенно пытается уничтожить InputManager как средство переопределения и расширения функциональности. Safari отчаянно нужен механизм расширения.

0
ответ дан 1 December 2019 в 18:56
поделиться

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

"Темы программирования плагинов WebKit" http : //developer.apple.com/documentation/InternetWeb/Conceptual/WebKit_PluginProgTopic/

Вот как реализованы такие вещи, как поддержка содержимого PDF и Flash. Загляните в каталог / Library / Internet Plug-ins / , чтобы увидеть примеры.

Конечно, существуют неотъемлемые ограничения, и вы не сможете достичь того, на что надеетесь, насколько это возможно. Модификация UI. Плагины Safari не могут делать все то, что может взломать Input Manager, но они будут работать в WebKit где угодно и в будущих версиях ОС. Примечание. Safari в Snow Leopard по умолчанию 64-разрядная версия, так что никакие менеджеры ввода не работают. Мне уже не хватает Safari AdBlock ... :-( Я бы хотел, чтобы он был переписан как настоящий плагин.

5
ответ дан 1 December 2019 в 18:56
поделиться

Расширения Safari НЕ должны быть одобрены Apple. У вас просто есть сертификат разработчика (бесплатно), чтобы сделать их, но вы можете передавать их вокруг, и хотя Apple делает галерею расширений, вы не обязаны распространять их через нее. Как вы можете видеть, уже существует довольно много расширений, которые вы можете попробовать сегодня. Сертификат просто гарантирует, что он не был подделан.

http://safariextensions.tumblr.com/

0
ответ дан 1 December 2019 в 18:56
поделиться

Если вы хотите посмотреть на существующее расширение, чтобы узнать, как оно работает, загрузите его или получите из папки расширений Safari, затем измените .safariextz на .xar, затем откройте / извлеките с помощью Pacifist, чтобы просмотреть код. и если вы хотите добавить его в приложение Extension Builder.

0
ответ дан 1 December 2019 в 18:56
поделиться

Недавно ситуация изменилась. Apple теперь имеет API расширений, доступный как часть Safari 5. Вы можете узнать больше на сайте Apple и присоединившись к программе разработчиков Safari.

Расширения для Safari должны иметь цифровую подпись, но вы можете получить сертификат подписи бесплатно от Apple. Это законный способ внедрить ваше расширение в Safari, не прибегая к хакам, которые, скорее всего, будут ломаться каждый раз, когда Apple будет обновлять Safari.

10
ответ дан 1 December 2019 в 18:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: