>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Обсуждение расширений http://forum.mozilla-russia.org/viewforum.php?id=28 >О двуязычных словарях http://forum.mozilla-russia.org/viewtopic.php?id=64837 |
Vladimir_S > 07-09-2014 09:06:24 |
Многие, включая меня, предпочитают иметь двуязычный словарь проверки орфографии (spell-checking dictionary), так, чтобы "на лету" осуществлялась проверка вводимых как русских, так и английских слов безо всяких переключений. До версии Fx33.0 можно было установить такой словарь отсюда: |
banbot > 07-09-2014 19:22:17 |
Vladimir_S
Попробовал его исправить. Пробуйте. |
Vladimir_S > 08-09-2014 08:55:43 |
Та-ак... ну вот те здрасьте! В бете 33.0b1 проверка орфографии вообще не пашет. Никакая, даже с дефолтным словарем. А в Авроре - нормально... Нет, пардон - с дефолтным пашет. Просто пришлось вручную параметр выбора словаря править. А вот с двуязычными - не хочет. Ох, нет - полный отбой! Установился kostolom'овский и работает. Похоже, имеет значение способ установки: начал я с попытки открытия заранее (на другом компе) скаченного файла расширения *.xpi - не катит. А вот при установке через АМО встал нормально. Чудеса... |
Lamoboy > 26-08-2018 13:44:09 |
Двуязычный словарь на addons.mozilla.org подчеркивает слова с буквой Е вместо Ё. Есть ли другие варианты двуязычных словарей, в которых нет строгого Ё для Firefox 61.0.2 x64? |
Coroner > 26-08-2018 17:28:24 |
Здесь не смотрели: https://addons.mozilla.org/ru/firefox/a … ish-spell/ |
Lamoboy > 26-08-2018 17:34:24 |
Coroner пишет
Спасибо, попробую. |
Lamoboy > 31-01-2019 08:44:08 |
Подскажите, пожалуйста, как удалить в англоязычной версии Firefox v65 x64 предустановленный англоязычный словарь? |
Coroner > 31-01-2019 12:00:14 |
Lamoboy пишет
1. Распаковываете Mozilla Firefox\omni.ja 4. Пробуете запустить браузер. Может быть будет работать. |
wayo > 31-01-2019 12:06:26 |
Coroner пишет
Не работает, только что попробовал. В сети пишут, что раньше словари были в каталоге инстолированного Firefox и можно было их удалить, сейчас видимо не так все. 31-01-2019 12:08:24 |
wayo > 31-01-2019 13:01:55 |
Нашел решение http://forums.mozillazine.org/viewtopic … #p14817276 1. распаковываем firefox/browser/omni.ja и достаем оттуда chrome/browser/content/browser/built_in_addons.json Выделить код Код:{ "dictionaries": { "en-US": "dictionaries/en-US.dic" }, "system": [ "formautofill@mozilla.org", "screenshots@mozilla.org", "webcompat-reporter@mozilla.org", "webcompat@mozilla.org" ] } из него удаляем "en-US": "dictionaries/en-US.dic" (словарь, у вам может быть с др. именем), получится: Выделить код Код:{ "dictionaries": { }, "system": [ "formautofill@mozilla.org", "screenshots@mozilla.org", "webcompat-reporter@mozilla.org", "webcompat@mozilla.org" ] } 3. Кладем этот отредактированный файл по любому пути, например C:\built_in_addons.json 5. Перезапустить Firefox, готово Если не хотите распаковывать можете взять код из примера выше и просто скопировать в C:\built_in_addons.json, код полностью рабочий и это содержимое файла built_in_addons.json целиком. Как распаковать omni.ja: Если у вас Windows для распаковки omni.ja можете использовать InfoZip's UnZip tool с этой страницы https://developer.mozilla.org/en-US/doc … _omni.jar), но думаю сработает любой архиватор. Если вдруг интересно как запаковать, хотя это вам для инструкции выше не понадобится, то нужно запаковать все файлы, а не сам распакованный omni.ja выделив эти файлы и нажав "запаковать" в вашем архиваторе. Паковать в zip с максимальным сжатием, потом перенести в свое место и перезапустить Firefox. Если omni.ja будет с ошибками, то Firefox не запустится, поэтому делайте копию перед экспериментами. Итоговый перепакованный omni.ja будет отличаться размером и вроде бы даже форматом, но раз так советуют паковать на официальной странице Mozilla, и все работает, то кто я такой чтобы говорить, что что-то неправиль? 31-01-2019 13:03:02 UPD2 Важное дополнение о безопасности этого способа: https://forum.mozilla-russia.org/viewto … 39#p766739 |
Coroner > 31-01-2019 13:10:52 |
О боже. Вот это работа! Я так понимаю, что отредактировав browser/built_in_addons.json путём замены "en-US": "dictionaries/en-US.dic" на ru-RU можно просто словарь на русский поменять, например (с добавлением своего словаря, конечно)? |
wayo > 31-01-2019 13:27:07 |
Coroner скрытый текст Выделить код Код:{ "schema": 1537961639183, "dictionaries": [ "eo-EO@dictionaries.addons.mozilla.org" ], "id": "eo", "last_modified": 1539698844376 }, { "schema": 1537961639183, "dictionaries": [ "@unitedstatesenglishdictionary" ], "id": "en-US", "last_modified": 1539698844315 }, { "schema": 1537961639183, "dictionaries": [ "marcoagpinto@mail.telepac.pt" ], "id": "en-GB", "last_modified": 1539698844263 }, Это нужно проверять. У меня есть подозрение, что таким способ можно переписать многие настройки вроде списка поисковых движков. Вот к примеру содержимое chrome.manifest, которое подключает 2 внешних chrome.manifest А вот omni.js/components/components.manifest скрытый текст Выделить код Код:component {792a7e82-06a0-437c-af63-b2d12e808acc} WebContentConverter.js contract @mozilla.org/embeddor.implemented/web-content-handler-registrar;1 {792a7e82-06a0-437c-af63-b2d12e808acc} component {5d0ce354-df01-421a-83fb-7ead0990c24e} nsBrowserContentHandler.js application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/browser/clh;1 {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} component {47cd0651-b1be-4a0f-b5c4-10e5a573ef71} nsBrowserContentHandler.js application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/browser/final-clh;1 {47cd0651-b1be-4a0f-b5c4-10e5a573ef71} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=text/html {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=application/vnd.mozilla.xul+xml {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/svg+xml {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=text/rdf {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=text/xml {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=application/xhtml+xml {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=text/css {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=text/plain {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/gif {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/jpeg {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/jpg {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/png {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/bmp {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/x-icon {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=image/vnd.microsoft.icon {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} contract @mozilla.org/uriloader/content-handler;1?type=application/http-index-format {5d0ce354-df01-421a-83fb-7ead0990c24e} application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} category command-line-handler m-browser @mozilla.org/browser/clh;1 application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} category command-line-handler x-default @mozilla.org/browser/final-clh;1 application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} category command-line-validator b-browser @mozilla.org/browser/clh;1 application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} component {eab9012e-5f74-4cbc-b2b5-a590235513cc} nsBrowserGlue.js contract @mozilla.org/browser/browserglue;1 {eab9012e-5f74-4cbc-b2b5-a590235513cc} category app-startup nsBrowserGlue service,@mozilla.org/browser/browserglue;1 application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} application={aa3c5121-dab2-40e2-81ca-7ea25febc110} component {d8903bf6-68d5-4e97-bcd1-e4d3012f721a} nsBrowserGlue.js contract @mozilla.org/content-permission/prompt;1 {d8903bf6-68d5-4e97-bcd1-e4d3012f721a} component {9e9a9283-0ce9-4e4a-8f1c-ba129a032c32} devtools-startup.js contract @mozilla.org/devtools/startup-clh;1 {9e9a9283-0ce9-4e4a-8f1c-ba129a032c32} category command-line-handler m-devtools @mozilla.org/devtools/startup-clh;1 component {1060afaf-dc9e-43da-8646-23a2faf48493} aboutdebugging-registration.js contract @mozilla.org/network/protocol/about;1?what=debugging {1060afaf-dc9e-43da-8646-23a2faf48493} component {3a16d383-92bd-4c24-ac10-0e2bd66883ab} aboutdevtools-registration.js contract @mozilla.org/network/protocol/about;1?what=devtools {3a16d383-92bd-4c24-ac10-0e2bd66883ab} component {11342911-3135-45a8-8d71-737a2b0ad469} aboutdevtoolstoolbox-registration.js contract @mozilla.org/network/protocol/about;1?what=devtools-toolbox {11342911-3135-45a8-8d71-737a2b0ad469} component {dfcd2adc-7867-4d3a-ba70-17501f208142} aboutNewTabService.js contract @mozilla.org/browser/aboutnewtab-service;1 {dfcd2adc-7867-4d3a-ba70-17501f208142} component {ea4e1414-779b-458b-9d1f-d18e8efbc145} EnterprisePolicies.js process=main contract @mozilla.org/browser/enterprisepolicies;1 {ea4e1414-779b-458b-9d1f-d18e8efbc145} process=main component {dc6358f8-d167-4566-bf5b-4350b5e6a7a2} EnterprisePoliciesContent.js process=content contract @mozilla.org/browser/enterprisepolicies;1 {dc6358f8-d167-4566-bf5b-4350b5e6a7a2} process=content component {6F8BB968-C14F-4D6F-9733-6C6737B35DCE} ProfileMigrator.js contract @mozilla.org/toolkit/profile-migrator;1 {6F8BB968-C14F-4D6F-9733-6C6737B35DCE} component {47f75963-840b-4950-a1f0-d9c1864f8b8e} ChromeProfileMigrator.js contract @mozilla.org/profile/migrator;1?app=browser&type=chrome-beta {47f75963-840b-4950-a1f0-d9c1864f8b8e} component {7370a02a-4886-42c3-a4ec-d48c726ec30a} ChromeProfileMigrator.js contract @mozilla.org/profile/migrator;1?app=browser&type=chrome-dev {7370a02a-4886-42c3-a4ec-d48c726ec30a} component {4cec1de4-1671-4fc3-a53e-6c539dc77a26} ChromeProfileMigrator.js contract @mozilla.org/profile/migrator;1?app=browser&type=chrome {4cec1de4-1671-4fc3-a53e-6c539dc77a26} component {8cece922-9720-42de-b7db-7cef88cb07ca} ChromeProfileMigrator.js contract @mozilla.org/profile/migrator;1?app=browser&type=chromium {8cece922-9720-42de-b7db-7cef88cb07ca} component {91185366-ba97-4438-acba-48deaca63386} FirefoxProfileMigrator.js contract @mozilla.org/profile/migrator;1?app=browser&type=firefox {91185366-ba97-4438-acba-48deaca63386} category webextension-modules browser chrome://browser/content/ext-browser.json category webextension-scripts c-browser chrome://browser/content/parent/ext-browser.js category webextension-scripts-content browser chrome://browser/content/child/ext-browser-content-only.js category webextension-scripts-devtools browser chrome://browser/content/child/ext-browser.js category webextension-scripts-addon browser chrome://browser/content/child/ext-browser.js component {d0c5195d-e798-49d4-b1d3-9324328b2291} pdfjs.js contract @mozilla.org/streamconv;1?from=application/pdf&to=*/* {d0c5195d-e798-49d4-b1d3-9324328b2291} contract @mozilla.org/streamconv;1?from=application/pdf&to=text/html {d0c5195d-e798-49d4-b1d3-9324328b2291} А вот вроде бы более полезный для настройки omni.js/chrome/chrome.manifest скрытый текст Выделить код Код:content branding browser/content/branding/ contentaccessible=yes content browser browser/content/browser/ contentaccessible=yes content pocket browser/content/pocket/ contentaccessible=yes skin browser classic/1.0 browser/skin/classic/browser/ skin pocket classic/1.0 browser/skin/classic/browser/pocket/ content webide webide/content/ skin webide classic/1.0 webide/skin/ content devtools-startup devtools-startup/content/ content devtools devtools/content/ skin devtools classic/1.0 devtools/skin/ locale branding en-US en-US/locale/branding/ locale browser en-US en-US/locale/browser/ locale browser-region en-US en-US/locale/browser-region/ locale devtools en-US en-US/locale/en-US/devtools/client/ locale devtools-shared en-US en-US/locale/en-US/devtools/shared/ locale devtools-startup en-US en-US/locale/en-US/devtools/startup/ locale pdf.js en-US en-US/locale/pdfviewer/ locale pocket en-US en-US/locale/en-US/ override chrome://global/content/license.html chrome://browser/content/license.html override chrome://global/content/netError.xhtml chrome://browser/content/aboutNetError.xhtml override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd override chrome://mozapps/locale/downloads/settingsChange.dtd chrome://browser/locale/downloads/settingsChange.dtd resource activity-stream browser/res/activity-stream/ contentaccessible=yes resource search-plugins browser/searchplugins/ resource usercontext-content browser/content/ contentaccessible=yes resource pdf.js pdfjs/content/ resource devtools devtools/modules/devtools/ resource devtools-client-jsonview resource://devtools/client/jsonview/ contentaccessible=yes resource devtools-client-shared resource://devtools/client/shared/ contentaccessible=yes Обратите внимание на строку resource search-plugins browser/searchplugins/, в новой версии Firefox создание каталога вручную перестало работать. Но возможно можно также переопределить путь к нему как в инструкции выше и все заработает? Потому что в omni.ja в этом каталоге лежат все те же xml файлы поисковых движков, что и раньше, к примеру yandex-ru.xml: скрытый текст Выделить код Код:<!-- This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> <SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/"> <ShortName>Яндекс</ShortName> <Description>Воспользуйтесь Яндексом для поиска в Интернете.</Description> <InputEncoding>UTF-8</InputEncoding> <Image width="16" height="16">resource://search-plugins/images/yandex-ru.ico</Image> <Url type="application/x-suggestions+json" method="GET" template="https://suggest.yandex.ru/suggest-ff.cgi"> <Param name="part" value="{searchTerms}"/> </Url> <Url type="text/html" method="GET" template="https://yandex.ru/search" resultdomain="yandex.ru"> <MozParam name="clid" condition="purpose" purpose="searchbar" value="2186618"/> <MozParam name="clid" condition="purpose" purpose="keyword" value="2186621"/> <MozParam name="clid" condition="purpose" purpose="contextmenu" value="2186623"/> <MozParam name="clid" condition="purpose" purpose="homepage" value="2186617"/> <MozParam name="clid" condition="purpose" purpose="newtab" value="2186620"/> <Param name="text" value="{searchTerms}"/> </Url> <SearchForm>https://www.yandex.ru/</SearchForm> </SearchPlugin> |
wayo > 02-02-2019 20:33:16 |
UPD2. Важное дополнение к тому как удалить словарь по умолчанию (инструкция выше)! В инструкции предлагается удалить словарь. Это ОК. Но ниже словаря есть список установленных расширений. Если для новой версии Firefox этот список изменится, а ваш измененный файл, которым вы подменили исходный останется тем же, то может быть ошибка. Хуже всего, что Firefox может работать даже с неправильной версией файла built_in_addons.json, так что при обновлении Firefox вы можете и не понять, что что-то не так. Firefox может использовать такие "системные" (system) расширения для закрытия дыр в безопасности. Если в списке такого расширения не будет, то Firefox может остаться уязвим. Поэтому: нужно при любом обновлении Firefox распаковывать firefox/browser/omni.ja и проверять изменился файл chrome/browser/content/browser/built_in_addons.json или нет. Если изменился, то использовать новую версию. |
Lamoboy > 04-02-2019 20:32:31 |
wayo, спасибо за расследование. Как все сложно стало Раньше достаточно было удалить файлы из папки и словарь пропадал, а тут столько телодвижений надо делать, да еще и после каждого обновления заново все повторять... Может можно, как-то, задать словарь по умолчанию, чтобы не переключать постоянно с английского на двуязычный? |