Долго ли коротко ли, а таки прошли мы большую дорогу от желания возродить известную русскую сборку K-Meleon Pro до собственно ее выхода.

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

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

Таким я собирал свой Twin на базе старых КМ 1.6 и 1.7. Таким вроде бы получается и новый Pro.

Я взял для новой сборки именно это имя, поскольку в нее по максимуму включены наработки прошлых российских девелоперов КМ, а именно наши люди (персонально Quicksilver Tears) впервые собрали К-Meleon Pro (тогда версии 1.02) почти 10 лет назад.

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

Остальное досталось нам от нового K-Meleon 75, а точнее, уже от следующих после финала сборок – 75.1.
Здесь стоит уточнить, что последняя Pro-версия собрана сразу в двух вариантах:
– на базе KM 75.1beta+update5 — K-Meleon 75 Pro
– на базе новейшего KM 75.1 RC+update1 — K-Meleon 75.1 Pro
Первая база поизученнее и понадежнее вроде как, зато вторая добавляет кое-что нужное и долгожданное. Выбор – за вами.

Остается подробно рассмотреть, чем же хорош наш ПРОша, чем он лучше (или просто отличается от) «официального» браузера от Дориана.

Начнем с внешних изменений:



  1. Скины. Сборка использует наряду не только дефолтные темы от Дориана (в России многие на них жалуются, называя «прошлым веком». В Европе и мире, напротив – многие пользователи ценят именно эти неброские и несовременные скины. Что-то в этом есть характерное). Основную массу составляют темы из коллекции Русской команды, мною местами по необходимости чутка подправленные (были там мелкие ошибочки).
    Но дефолтной темой для русской сборки я выбрал совсем новую для большинства пользователей тему Green, изначально собранную бразильскими камелеонерами (у них тоже есть своя сборка КМ). Но не просто выбрал, а серьезно переработал, собрав из нее фактически новую тему Green Pro, которая настроена на «хромовый манер», так модный и востребованный в наши дни бесконечно маленьких мониторов. ;-)
  2. В принципе, основная цель включения в комплект целого набора скинов была демонстрационной. Дело в том, что смена скинов в КМ издавна была забавой сильных духом юзеров: из-за излишней опенсорсности коллекция была (и остается) сильно нестандартизованной, что часто приводит к «рассыпанию» панелей инструментов при смене темы. Работа, проведенная Русской командой в прошлые годы как раз и была направлена на создание коллекции тем со стандартизованным содержимым (конфигурационные и графические файлы).
    А новое поколение КМ – ветка 74-75 – наконец-то получило работающую возможность привязывать самые разные настройки браузера к смене скина. Для этого в папке каждой темы существует файл skin.js, в котором и прописываются нужные параметры. В первую очередь это собственно конфигурация тулбаров (группа префок ветки kmeleon.toolband.*), но никто не запрещает записывать в этот файл ЛЮБЫЕ параметры из about:config! И они будут получать приоритет над дефолтными при перезапуске браузера, нужном для проведения смены скина.
    Иными словами, можно не клепать разные профили под разные условия и задачи, а просто настроить skin.js с тем, чтобы при выставлении определенной темы браузер получал и нужные режимы работы.

    Собственно, это и демонстрируют несколько скинов в наборе: Green Pro настроен, как я уже сказал, «по-хромовски», т.е. у браузера отключен системный заголовок окна и панели размещены так, чтобы имитировать расположение основных элементов GUI в Хроме; K-Melezilla делает примерно то же самое, но с более олдскульной, классической раскладкой тулбаров; в большинстве скинов прописано также использование фонового изображения для панелей (если оно предусмотрено автором скина) – раньше его приходилось переключать отдельно, и это портило впечатление от кастомизируемости браузера.
    А вот Camrod – это тема, где по умолчанию используется еще одна новинка свежих Камелеонов:
  3. Меняющийся размер шрифта адресной строки. Эта фича была запрошена теми, кто в качестве экрана использует современные телевизоры и работает с ними с большого расстояния. То, что в Firefox можно было поменять через пользовательские стили интерфейса, в КМ теперь меняется одной префкой. В графический интерфейс настройки она пока не добавлена, так что я решил включить ее в комплект настроек скина. В нашем случае – это скин Camrod (сам по себе — крупный, удобный именно для работы на расстоянии или для работы пальцами по тачскрину).



    Шрифт адресной строки в нем увеличен в 1,5 раза. Но вы можете поставить свой множитель как значение параметра kmeleon.display.urlbar_fontsize
  4. Новые настройки в GUI. Сообщество постепенно дополняет панель Настроек (F2), внося новые переключатели префок. Мы собрали сразу несколько таких обновлений (а часть я сделал сам – и они даже постепенно перекочевали в официальную сборку!). Это мелкие и не всем заметные изменения, но кому-то они реально помогут сделать жизнь с браузером удобнее.


  5. Продвинутые инструменты поиска. Вообще-то все они существуют уже давно – и панель быстрого поиска (SearchBarExt.dll), и суперменю поиска с динамической кнопкой, историей поиска, поиском на странице, подсветкой и т.п. Но я их ставлю в свои сборки по умолчанию вместо дефолтной кнопочки, имеющей куда меньшие возможности. Попробуйте это все и выберите то, что удобно вам. Или оставьте все вместе.

  6. «Потерянные опции». Так нередко бывает, что обновления приносят нам не только что-то дополнительно полезное, но и что-то пропадает. Либо разработчик недосмотрел или просто ошибся при сборке, либо же он сознательно убрал некую полюбившуюся функцию по каким-то своим соображениям.<
    Чем хорош К-Meleon в этом случае? Да тем, что здесь почти все модно исправить.

    В новой ветке разработки КМ были «потеряшки» обоих типов – где-то Дориан просто забывал прописать нужные префки в конфиги, а что-то он сознательно переделывал. Причем следы наличия функции оставались, а сама она…
    В общем, самые досадные вещи, которые все никак не собирался исправить автор, исправили мы сами. Добавили несколько префок, в отсутствие которых были неактивны отдельные Настройки (ну и пользователь лишался некоторых удобных возможностей).


    Например, полностью контролировать поведение окон и вкладок для такой полезной функции, как выведение всех ссылок или изображений с целевой веб-страницы отдельной страницей в браузере – КМ без этих префок открывал бы для такой новой страницы обязательное новое окно, а теперь можно делать это в новом табе, если вам не любо многооконие. Еще была потеряна префка, отключающая отрисовку горизонтальных разделительных линий между отдельными панелями инструментов. И так далее.
  7. Дополнительные горячие клавиши. Это часть вполне обычная для КМ – каждый юзер может прописать свои собственные ключи в любом количестве – для этого есть файл accel.cfg в папке каждого профиля. Я для своих сборок начал настраивать некоторые сочетания клавиш еще в сборке K-Meleon Twin, а сейчас просто добавил туда еще несколько хоткеев для существующих и для вновь появившихся функций.

    Например:
    • Alt+F10 – открыть about:config (не могу понять, почему раньше ни у кого руки не доходили сделать это: первое, что учит любой интересующийся настройкой фоксоподобных браузеров – это адрес данной служебной страницы. Который ему приходится десятки раз набивать вручную);
    • Ctrl+стрелки влево и вправо – для навигации back и forward соответственно;
    • F12 – для закрепления/открепления панелей инструментов;
    • Shift+Alt+D – менеджер загрузок (about:downloads);
    • Shift+Alt+M – менеджер загрузок (about:memory);
    • Shift+Alt+A – менеджер дополнений FF (about:addons)
    • Shift+Alt+C – опять конфигурация (about:config)
    • (надо бы еще сделать макрос и ключик для новой страницы настроек about:preferences и для about:permissions)
    • Alt+1 – вызов меню (особо полезно, ибо работает и когда меню не отображается);
    • Alt+2 – вызов компактного меню (появляется у курсора);
    • Alt+3 – вызов меню поиска (тоже у курсора);
    …и так далее.

  8. Доступ к служебным страницам about: облегчен по максимуму: во-первых, упомянутые горячие ключи; во-вторых – новый подраздел меню «Инструменты->Управление расширенными возможностями», откуда можно открыть наиболее часто используемые такие страницы. Ну и, наконец, в каждой новой вкладке у нас открывается страница about:about со списком всех доступных пользователю КМ служебных страниц.
  9. Большой двуязычный словарь для проверки орфографии. Тут все просто – нашим пользователям часто приходится проверять смешанные двуязычные тексты, так что КМ Pro из коробки получил расширенный двуязычный словарь, найденный где-то на просторах Сети. Респект его сборщику.
  10. Много удобных родных расширений КМ. Напомню, что у браузера есть свой собственный инструментарий расширяемости – макроязык, способный интегрировать в КМ функционал дополнений Firefox, JS-скриптов и сторонних программ, имеющихся на вашем ПК, да и на чистом макроязыке люди пишут весьма интересные вещи. Среди имеющихся в Pro-сборке стоит отметить такие расширения, как «Открыть страницу в другом браузере», «Быстрый рестарт КМ», «Переключатель активности ссылок» (может временно «выключать» ссылки на странице, превращая их в неактивный текст и помогая, например, копировать текст, к которому ссылка «приделана»), «Принудительное открытие ссылки в текущей вкладке», «Трансфер сохраненных сессий», «Переключение разновидностей полноэкранного режима», «Открытие ранее закрытых вкладок», «Переключатель юзерагентов», oGet, GetFileSize и т.д. и т.п.
    Это все лучше пробовать в работе, чем искать описания.
  11. Инструменты Firefox. В Pro-сборку интегрированы свежий AdBlockPlus (подходящий для 31-го движка) с легкой подпиской (и я его отучил самоутолщаться непрошеными подписками и разрешением «ненавязчивой рекламы») и модуль «Информация о странице». Также обновлен стандартный модуль Newsfox, имеющийся из коробки в любом Камелеоне.
  12. Отдельно хочу отметить макросы собственной разработки: один из которых (pastegohack.kmm) добавляет в контекстное меню страницы команды для открытия адресов из буфера обмена в текущей и новой вкладке – это было сделано как костыль, заменяющий отсутствовавшую в контексте адресной строки команду «Вставить и перейти по ссылке» (многие жаловались, что ходить за ней в соседнюю Go-кнопку непривычно и неудобно – и это была сермяжная правда!).

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

    Второй макрос (maxfix.kmm) – просто исправляет некорректное поведение максимизированного окна БЕЗ системного заголовка в Windows 7 (и очевидно, всех более новых). В отличие от ХР, где все нормально, в Семерке «хромоподобное» окно при открытии разворачивается с небольшим сдвигом за экран. Макрос исправляет это автоматическим «минимайз-максимайзом», так что вы заметите легкое разовое моргание окна на старте. Если же выбран классический скин с заголовком окна – макрос не делает ничего, ибо оно и не нужно.
    Также я добавил пользователю возможностей по настройке поиска по мере набора (Find As You Type) – вы обнаружите удлиненное меню по адресу Правка -> Поиск на странице.
    Это не все мои макросы, но старые я не включал в эту сборку. Часть из них неактуальна, часть не попадает в концепцию сборки, а часть я просто забыл оставил на будущее ;-)
  13. А не будет 13-го пункта! Я, конечно, не все описал, пожалуй, но пока хватит. Надо брать и пробовать то, что есть.


Ибо K-Meleon Pro – вещь хорошая. Ставьте, тестируйте, работайте. На то он и Pro.

P.S. Известные проблемы: K-Meleon попал в число отвергнутых сайтом Mega.nz (тот пускает только свежих Фоксов и Гекконов, да и вообще только новые браузеры). На сегодня это единственный сайт, где проблема не решается подменой юзерагента, так что если кто знает решение – буду признателен.

P.P.S. Последние события в мире Mozilla оставляют много вопросов к будущему как самого Фокса, так и K-Meleon'а. Тем не менее возможна вилка вариантов, при одном из которых это пойдет нам только на пользу. Например, если мозилловцы окончательно похоронят XUL-расширения, то Фокс придется форкать, а может быть окажется проще создать слой полной совместимости с ними для K-Meleon — кто знает.

В общем, пользуясь случаем, приглашаю всех разработчиков расширений для Фокса обратить более пристальное внимание на K-Meleon. Заходите к нам на огонек. Будем продолжать создавать альтернативы.

P.P.P.S. На этом наши первые полгода на Хабре завершаются, и, надеюсь, нам продлят подписку в режиме «Стартап» (все условия нами по-прежнему выполняются), чтобы мы еще не раз встретились здесь и порадовали вас чем-нибудь новеньким и вкусненьким

Комментарии (10)


  1. rodocop
    15.09.2015 19:18

    И ни одного коммента!
    Вообще-то отвечать в комментах я еще могу! Спрашивайте, если что — а то на других ресурсах уже блох наловили. Они там есть. Пока есть ;-)


  1. VEG
    15.09.2015 20:14

    Например, если мозилловцы окончательно похоронят XUL-расширения, то Фокс придется форкать, а может быть окажется проще создать слой полной совместимости с ними для K-Meleon — кто знает.
    Нет, слой полной совместимости с расширениями Firefox для K-Meleon создать не получится — там всё слишком завязано на внутренности Firefox. Текущий интерфейс K-Meleon придётся целиком заменить интерфейсом Firefox. То есть проще сделать форк Firefox.

    Правда, если Mozilla остановит разработку Gecko, не думаю, что у этого движка без денежных вливаний будет какое-то будущее. Впрочем, Servo может оказаться очень даже годным движком. С нуля же проектируют и пишут. Так что K-Meleon бояться нечего, он же на XUL особо не завязан, так что наверное он сможет относительно легко переехать на новый движок :)


    1. rodocop
      16.09.2015 00:26

      Ну вообще-то вызвать browser.xul — не большая проблема. Или сэмулировать его. Или хотя бы сэмулировать тулбар дополнений (у него свой явный id в XUL). Эх, был бы я программером — я бы поковырялся!

      Как Вам такой скриншот, например:



      А? ;-)


  1. iG0Lka
    16.09.2015 00:36

    вертикальный список открытых вкладок есть?


    1. rodocop
      16.09.2015 15:00

      нет и пока не предвидится.


    1. rodocop
      16.09.2015 21:10

      Хоткей на список всех открытых вкладок в виде контекстного меню сойдет?


      1. iG0Lka
        16.09.2015 22:58

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


        1. rodocop
          16.09.2015 23:39

          Нет, у нас это обычное меню контекстного типа. Никаких вариантов сайдбара у нас нет.


  1. rodocop
    16.09.2015 15:08

    Зато внезапно нашелся костыль для Меги.
    Если использовать адрес eu.static.mega.co.nz — то с Мегой можно работать.


  1. rodocop
    16.09.2015 21:11
    +1

    И ура! — нас продлили!
    Спасибо, Хабр!