Copy URL F2 Tab Mod : Копируем по хоткею
Опубликовано: Бармалей · 21.05.2021 · 00:01 ••• Обновление: 19.08.2021 · 16:49 0

Copy URL F2 Tab Mod – пользовательский скрипт для оперативного копирования в буфер обмена URL и заголовка вкладки и выделенного на странице текста. Содержит декодер URL, умеет корректно работать с кириллицей, автоматически преобразовывает Punycode. При желании можно изменить форматирование выходных данных, горячую клавишу, способ вызова и другие параметры.

Предоставляется по лицензии GPL v.3, бесплатно для частного некоммерческого использования.


В этой статье:


Общее назначение и краткая история создания

Copy URL F2 Tab Mod – пользовательский скрипт, по нажатию одной клавиши копирует URL, заголовок вкладки и выделенный на странице текст.

Основное назначение – обеспечить максимально оперативное* копирование в буфер обмена URL и заголовка текущей вкладки с учётом преобразования Punicode и декодирования URL в виде читабельного текста. Главная цель – простота и компактность решения, работоспособность на любых версиях браузеров.

* В отличие от прототипа и аналогов, копирование выполняется по нажатию единственной клавиши, которая может быть самостоятельно переопределена пользователем. При этом не требуется нажатия других управляющих клавиш (CTRL, SHIFT или ALT).

Этот скрипт является облегчённым вариантом расширения Copy URL CR.RU, разработан по "просьбам трудящихся" для решения задачи максимально удобного и быстрого копирования. В скрипте заимствована часть кода прототипа, отвечающая за преобразование доменных имён с национальными символами (Punicode), и общий принцип работы, в исходный код добавлена возможность ручной правки шаблона формирования выходных данных и переопределения горячей клавиши на любую желаемую.

В результате "доработки напильником" получилась микро-полезняшка из серии "поставил и работай", ставшая лёгкой альтернативой прототипу и аналогам, решающая поставленную задачу наиболее простым способом.

При выпуске первой версии в мае 2021 года скрипт был "брэндирован" как "Copy URL F2 Tab Mod" и на текущий момент распространяется под этой "торговой маркой". Первая часть названия указывает на аддон-прототип, "F2" отражает хоткей по умолчанию, а "Tab Mod" напоминает об ограничении использования (только в контексте вкладки).

В силу того, что скрипт не имеет какого‑либо интерфейса, необходимость его локализации отсутствует, Тем не менее, к англоязычному описанию добавлено русское и оно же используется по умолчанию – исключительно по причине общей ориентированности автора на русскоязычную аудиторию пользователей.)

Следует особо отметить, что в отличие от многих других современных аддонов, в Copy URL F2 Tab Mod нет (и никогда не будет) никакой "допустимой" или скрытой рекламы, этот аддон не является предметом монетизации.

Автор гарантирует отсутствие в этом скрипте каких‑либо следящих, "стучащих" и иных "статистических" механизмов, а также любых других средств, направленных на "персонализацию" конечного пользователя с целью получения какой‑то коммерческой выгоды.


Основные возможности и способ применения

Copy URL F2 Tab Mod работает на любых* веб-страницах и даёт возможность копирования URL и заголовка текущей вкладки по нажатию единственной горячей клавиши. В скрипте отсутствует какой‑либо интерфейс и индикация работы, копирование производится "молча", сразу же по нажатию хоткея.

* Кроме страниц "огороженных" сайтов, на которых невозможна инжекция пользовательских скриптов – например, магазин Chrome WebStore (для Chromium-браузеров) и ему подобные.

Скрипт корректно работает в любых, даже достаточно старых, версиях браузеров, не требуя от пользователя никаких дополнительных действий или настроек – определение доступных данных для копирования и их форматирование по заданному шаблону производится полностью автоматически.

Скрипт работает полностью автономно (является самодостаточным) и не требует подгрузки дополнительных библиотек. Выполнение скрипта происходит только в контексте страницы, все функции могут вызываться многократно, по каждому нажатию заданной горячей клавиши.

По умолчанию для вызова функции копирования используется клавиша F2 (или дублирующий её двойной щелчок мышью в любом месте текушей страницы). Данные копируются в виде заголовка текущей вкладки в двойных кавычках, после него с новой строки добавляется декодированный (читабельный) URL вкладки в квадратных скобках, затем, с новой строки, выделенный на текущей странице текст (с минимальным форматированием – разделением на строки и абзацы).

В итоге содержимое буфера обмена будет выглядеть, например, вот так:

"Федеральные органы исполнительной власти России"
[ http://россия.рф/main/ministry/isp-vlast44.html ]
Правительство Российской Федерации

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

Как уже сказано, при желании можно вручную изменить шаблон форматирования данных.
Начиная с базовой версии изменение этих настроек производится напрямую в коде функций скрипта.
В текущей версии для этого следует изменить соответствующую текстовую переменную в блоке настроек:

var set = {
    tmpl: '"%title%"\n[ %url% ]\n%sel%',

Кроме выделенных элементов, являющихся соответственно идентификаторами заголовка (%title%), URL (%url%) текущей вкладки и выделенного на ней текста (%sel%), вы можете менять шаблон произвольным образом, вплоть до исключения из шаблона любого из идентификаторов (при этом, понятно, в буфере обмена его значение будет отсутствовать).

Например, если выходной шаблон упростить до такого:

tmpl: '%url%'

в буфер обмена будет скопирован только декодированный URL вкладки (из примера выше):

http://россия.рф/main/ministry/isp-vlast44.html

Кроме того, при желании можно вручную изменить и горячую клавишу копирования.
Для этого следует изменить* в блоке настроек соответствующий код клавиши в скрипте (выделен цветом):

var set = { …
    kBtn: 'F2',

* См. также: Как самостоятельно определить код желаемой горячей клавиши.

Начиная с версии 2021.5.25 можно вручную изменить и другие настройки. Для удобства работы все доступные настройки сведены в одну общую переменную элементы которой можно по желанию изменить самостоятельно, к каждому параметру добавлены комментарии прямо в коде (на английском языке).

Начиная с версии 2021.5.29 добавлена опциональная поддержка дополнительных шаблонов копирования при вызове с зажатыми клавишами ALT, CTRL или SHIFT. Способ вызова (хоткей или мышь) при этом не имеет значения, функция выбора шаблона сработает в любом случае. Отключить отдельные шаблоны или изменить их по своему вкусу можно вручную в соответствующих переменных блока настроек.

Подробнее со всеми доступными пользовательскими настройками скрипта, некоторыми известными ограничениями и методами решения проблем можно ознакомиться в статье Copy URL F2 Tab Mod : Настройка параметров скрипта.

Важное примечание

При использовании скрипта следует помнить о его ограниченных возможностях и общей "заточенности" на решение одной специфичной задачи копирования только в контексте текущей вкладки. Если же вам требуются расширенные функции копирования ссылок либо вы не можете по каким-либо причинам устранить имеющийся у вас конфликт горячих клавиш вызова копировщика, самым оптимальным вариантом будет использование расширения Copy URL CR.RU.


Отличия от расширения-прототипа и аналогов

Указанные ниже особенности относятся к текущей версии скрипта, в более ранних версиях могут отсутствовать.

  • Скрипт выполняет копирование по нажатию единственной горячей клавиши (без CTRL, SHIFT или ALT).
  • Может копировать по нажатию кнопок мыши (двойной щелчок или средняя кнопка, настраиваемо).
  • Поддержка нескольких шаблонов копирования при вызове с зажатыми клавишами ALT, CTRL или SHIFT.
  • Скрипт без каких-либо изменений работает в любых браузерах версий 29+ (проверен на версиях 29-87).
  • В коде скрипта не применяются функции, неподдерживаемые в старых браузерах (только JavaScript ES5).
  • Скрипт не требует никаких подключаемых внешних библиотек или файлов, работает полностью автономно.
  • В скрипте отсутствуют различные стилевые "украшательства" и прочие "раздражающие рюшечки". :)
  • Процесс копирования визуализируется без создания дополнительных кнопок, диалогов и других элементов.
  • Опциональный конвертор Punycode, читабельный вид URL доменов в любой национальной кодировке.
  • Опциональная обработка URL вкладки на предмет очистки от концевого мусора (гугло-сервисы и т.п.).
  • Опциональное исключение срабатывания копировщика при двойном щелчке на текстовых полях и формах.
  • Опциональное исключение срабатывания копировщика при щелчке средней кнопкой мыши на ссылках.
  • Применяется простой способ ручного изменения шаблонов копирования, хоткея и других настроек.
  • Динамическое построение кода в зависимости от заданных настроек (автооптимизация работы кода).
  • Из кода прототипа удалены все дополнительные функции (оставлена только работа с текущей вкладкой)
  • Код всех функций оптимизирован, имеет отличную производительность и минимальный расход памяти.
  • Код скрипта не обфусцирован, удобен для изучения и выполнения самостоятельных доработок.

Загрузка и установка Copy URL F2 Tab Mod

Скрипт не имеет практических ограничений по версии браузера, может использоваться на любых браузерах версий 29+ с поддержкой JavaScript ES5. Однако, с учётом различных "новшеств", вводимых производителями браузеров, следует ознакомиться с документацией на конкретный билд, который планируется установить – могут быть, так сказать, "некоторые нюансики" и их необходимо учитывать.)

Можно загрузить любую из версий Copy URL F2 Tab Mod на следующих ресурсах:

Настоятельно рекомендуется использовать текущую стабильную версию скрипта.
Более ранние выпуски можно устанавливать только в исследовательских целях для сравнительного анализа функций и возможностей аддона. Авторская поддержка устаревших версий не осуществляется, претензии по возможным проблемам их эксплуатации не рассматриваются.

Скрипт может быть установлен либо напрямую, за счёт нативной поддержки в браузере, либо с помощью любого менеджера скриптов (Violentmonkey/Tampermonkey/etc., рекомендуется TamperMonkey Classic RePack).

Для работы в режиме "инкогнито" в блоке аддона на странице chrome://extensions включаем опцию:
[читать матчасть]



Аналоги, клоны и форки Бармалей
Бармалей 21.05.2021 19.08.2021 507 0.0

Общие технические сведения о разработке
Статус разработки:Активная, поддерживается автором
Язык интерфейса:Русский, Английский
Версия браузера:29+ (совмесимая с JavaScript ES5)
Протестировано в:Firefox 52ESR + SRWare Iron 29/31/36/49 + 360 Extreme Explorer 9/11/12/13 (CR63/69/78/86) + Chromium 87
Технологии и API:Чистый JavaScript (ES5), автономный код без подгрузки библиотек

Поделиться

Всего комментариев: 0
close