' +'' +'' +'' +'' +'' +'' +'' +'' +'' +'')//-->
.URL+ RU – создаёт и корректно открывает файлы *.URL (ссылочные ярлыки для сетевых ресурсов, Windows-формат). Открытие URL из файлов ярлыков не зависит от браузера по умолчанию и других системных настроек. Создание файла ярлыка доступно для любой просматриваемой страницы, включая локальные и служебные, имя файла соответствует заголовку вкладки. Предоставляется по лицензии GPL v.3, бесплатно для частного некоммерческого использования.
В этой статье:
.URL+ RU – расширение для браузеров семейства Chromium, создаёт и корректно открывает файлы *.URL (ярлыки интернет-ресурсов, Windows-формат).
Основное назначение – обеспечить корректную работу с внешними файлами ярлыков. Главная цель – простота и компактность решения и работоспособность на любых версиях браузеров.
Расширение создано под эти задачи на базе двух отдельных аддонов – "окрывашки" ярлыков .URL Handler и "создателя" ярлыков Save As Shortcut. В форке обе задачи сведены в один общий "пакет" (2-в-1), базовые функции доработаны и улучшены, добавлены дополнительные возможности, полностью русифицирован интерфейс.
При выпуске первой версии в мае 2018 года расширение "брэндировано" как ".URL+" и получило приставку RU, символизирующую "заточенность" решения на русскоязычную аудиторию пользователей. На текущий момент аддон распространяется под этой "торговой маркой".
В результате "доработки* напильником" аддон .URL+ RU стал отличной альтернативой прототипам и другим аналогам, не только не уступая им по качеству решения главных задач, но и превосходя их по общей "лёгкости" и функционалу.
* Самое важное отличие – существенно меньшая ресурсоёмкость, при условии полной идентичности выполняемых функций общий размер кода нового "микро-комбайна 2-в-1" уменьшен почти в 200 (!) раз по отношению к суммарному объёму прототипов.
Следует особо отметить, что в отличие от многих других современных аддонов, в .URL+ RU нет (и никогда не будет) никакой "допустимой" или скрытой рекламы, это расширение не является предметом монетизации.
Автор гарантирует отсутствие в этом расширении каких-либо следящих, "стучащих" и иных "статистических" механизмов, а также любых других средств, направленных на "персонализацию" конечного пользователя с целью получения какой-то коммерческой выгоды.
.URL+ RU работает на любых хром-браузерах и позволяет сохранить файл ярлыка* для любой просматриваемой страницы, при этом имя сохраняемого файла автоматически генерируется по заголовку текущей вкладки. В стандартном диалоге сохранения можно вручную изменить имя файла и/или путь его сохранения.
* Сохранённые файлы *.URL (ярлыки интернет-ресурсов, Windows-формат) можно затем открывать непосредственно из "Проводника" в любом другом браузере, поддерживающем этот формат.
Разработаны три линейки аддона, отличающиеся только способами вызова функции создания файла ярлыка.
Все три линейки имеют одинаковый ID и полностью взаимозаменяемы при (пере)установке поверх друг друга.
Создать ярлык на текущую страницу можно следующими способами:
* В браузерах версий 49+ можно отключить контекстное меню (кроме линейки Mini – там это единственный способ вызова). Эта настройка доступна в контекстном меню кнопки в омнибоксе (или в меню кнопки на тулбаре в линейке Classic):
Кроме сохранения файлов ярлыков, .URL+ RU полностью решает "застарелый" баг, известный ещё с 19 версии движка (с 19-й, Карл!!)), но так и не исправленный даже в новейших билдах.
Как уже сказано, аддон корректно открывает файлы ярлыков, независимо от браузера по умолчанию и других системных настроек. Это позволяет установить (при желании) системную привязку этих файлов к вашему браузеру для их открытия непосредственно из "Проводника" или другого файлового менеджера.
Механизм открытия внешнего файла ярлыка во всех линейках реализован одинаково и приводит к автоматическому редиректу на содержащуюся в нём ссылку. Редирект производится в той же вкладке (окне), в которой файл был открыт.
Ниже приведены технические особенности расширения и некоторые подробности по исходному коду.
.URL+ RU не использует для работы никакие сторонние библиотеки (привет любителям JQuery)).
В коде применён только чистый JS (ES5), все неподдерживаемые в "старых" браузерах функции заменены на аналоги.
Скрипт работает в "строгом" режиме – для гарантированного выполнения функций и облегчения отлова ошибок.
Аддон загружается только в момент вызова, не имеет фонового процесса и не занимает память в покое. Кроме того, добавлена функция ускоренной выгрузки расширения из памяти после выполнения требуемых действий.
Для работы со вкладками задействуется API chrome.tabs. Этот API используется в "омнибоксной" и "классической" линейках, в "мини" его применение не требуется. Кроме того, в "омнибоксной" линейке также применяется разрешение activeTab, упрощающее действия на текущих страницах.
Для работы функции, связанной с открытием файлов ярлыков, применяется инжекция скрипта в текущую страницу (API контент-скриптов). Инжектор работает только для локальных файлов *.URL, для работы с ними в манифесте указано разрешение [ "file://*.url" ].
Интерфейс для "открывающей" части отсутствует, процесс получения URL из файла ярлыка и его последующее открытие во вкладке происходит полностью автоматически.
Интерфейсная часть аддона используется только для функции создания ярлыка текущей страницы (вкладки) и в контекстном меню страницы во всех линейках представлена единственным пунктом.
Для запуска функции создания ярлыка через контекстное меню применяется стандартный API chrome.contextMenus. Этим же API предоставляется доступ к настройкам аддона в "омнибоксной" и "классической" линейках.
Для вызова функции создания ярлыка при щелчке по кнопке в омнибоксе применяется API chrome.pageAction. Для ускоренной и гарантированной отрисовки кнопки на всех вкладках используется API chrome.declarativeContent. Оба этих API используются только в "омнибоксной" линейке.
Для вызова функции создания ярлыка при щелчке по кнопке на тулбаре применяется API chrome.browserAction. Этот API используется только в "классической" линейке.
Для вызова функции создания ярлыка по горячей клавише используется API chrome.commands. Этот API используется только в "омнибоксной" и "классической" линейках.
Для обеспечения корректной работы аддона по созданию ярлыков на любых вкладках, включая локальные и служебные страницы, в манифесте запрашивается разрешение [ "<all_urls>" ].
Расширение работает полностью автономно. Настройки также автономны и сохраняются только в локальном хранилище самого аддона, синхронизации нет. Для работы с хранилищем применяется API chrome.storage. Запрос отдельного разрешения [ "storage" ] в манифесте при этом необязателен и не указан. Этот API используется только в "омнибоксной" и "классической" линейках, в версии "мини" какие-либо настройки отсутствуют в принципе.
Практических ограничений по версии браузера не имеется, используемые API работают в версиях 22+ (минимум для работы контекстного меню, для вызова по хоткею требуется версия 25+).
Язык интерфейса – только русский (локализация жёсткая, зашита в коде), другие* локализации отсутствуют. Это связано со значительным упрощением кода, а также с тем, что при создании расширения автор в первую очередь ориентируется на русскоязычных пользователей.
* Впрочем, если "дело пойдёт", прикрутить ещё и "басурманский" не является особой проблемой…)
Расширение не имеет практических ограничений по версии браузера, может использоваться на любых хром-браузерах версий 22+ (рекомендуется 25+). Однако, с учётом различных "новшеств", вводимых производителями браузеров, желательно ознакомиться с документацией на конкретный билд, который планируется установить – могут быть, так сказать, "некоторые нюансики" и их необходимо учитывать.)
Можно загрузить любую из версий .URL+ RU на следующих ресурсах:
Настоятельно рекомендуется использовать текущую стабильную версию расширения. Более ранние выпуски можно устанавливать только в исследовательских целях для сравнительного анализа функций и возможностей аддона. Авторская поддержка предыдущих версий не осуществляется, претензии по возможным проблемам их эксплуатации не рассматриваются.
При возникновении сложностей с установкой читаем этот совет.
Для работы в режиме "инкогнито" в блоке аддона на странице chrome://extensions включаем опцию: Разрешить использование в режиме инкогнито [читать матчасть]
Для работы с локальными файлами в блоке аддона на странице chrome://extensions включаем опцию: Разрешить открывать файлы по ссылкам