Как мне изменить Firefox `about: config` из скрипта оболочки?

20

На первых вещей , которые я делаю , когда первый , используя новый профиль Firefox, является набор browser.urlbar.trimURLsдля false(который действительно должен быть изменяемым , хотя «Preferences» или должен был остаться по умолчанию), и изменить поиск и стартовой по умолчанию в DuckDuckGo . В настоящее время я вручную захожу about:config, просматриваю недовольное предупреждающее сообщение и ищу ключи (которые, в отличие от DConf Editor, даже не организованы).

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

Джеймс Хей
источник
1
Некоторые ответы ниже основаны на редактировании файла в profile.defaultпапке пользователя . Вот как вы можете найти его в сценарии оболочки: Получить каталог профиля Firefox по умолчанию из bash
aexl
unix.stackexchange.com/questions/38591/… | одиночная сессия: superuser.com/questions/699136/… | windows: superuser.com/questions/39800/…
Сиро Сантилли 事件 16 中心 法轮功 六四 事件

Ответы:

12

[ Это не обеспечивает то, что вы просили, но это другой способ достижения того же результата. ]

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

введите описание изображения здесь

Теперь о предпочтениях, которые вы желаете. В общем, вы можете создать простой текстовый файл с именем user.js. Этот файл должен быть помещен в соответствующую папку профиля, например /home/username/.mozilla/firefox/random.default(где randomчто-то уникальное для каждого пользователя).

Структура и синтаксис user.jsописана в файле User.js, например.

Так что в вашем случае у вас будет такая строка:

user_pref("set browser.urlbar.trimURLs","false");  

или, чтобы использовать другой пример ( но смотрите ниже ):

user_pref("browser.search.defaulturl","https://duckduckgo.com/");

Однако я советую сначала убедиться, что заданные вами настройки действительны для используемой вами версии браузера. Я говорю это, потому что я не вижу browser.search.defaulturlв моем about:config. Я использую Firefox 22 beta. Вместо этого я вижу:

browser.search.defaultenginename;Google

двигатель

Итак, если взять пример использования Bing вместо Google, другой строкой, user.jsесли вы используете Firefox 22, будет:

user_pref ( "browser.search.defaultenginename", "Бин");

Как показывает изображение, вы можете искать дополнительные движки.

Итак, короче говоря, вы можете указать свои предпочтения user.jsи удалить скрытый экран, сняв галочку на первом изображении.

Кроме того, как указано в ресурсе, на который я ссылаюсь, вы должны перезапустить браузер, чтобы код user.jsвступил в силу.


источник
6

Вот возможный сценарий оболочки. Вы должны cdзайти в каталог своего профиля, прежде чем использовать его (где он user.jsесть). Скажем, сценарий называется, ff_setвы можете назвать его так:

ff_set browser.search.defaulturl '"https://duckduckgo.com/"'

Вот код:

#!/bin/bash

sed -i 's/user_pref("'$1'",.*);/user_pref("'$1'",'$2');/' user.js
grep -q $1 user.js || echo "user_pref(\"$1\",$2);" >> user.js
ученик
источник