FirefoxのSyncで、個人設定の同期はさせたいがスタートページだけは除外したいとき
FirefoxのSync機能は非常に便利で、ブックマークやパスワードだけでなく、ブラウザの機能そのものに関する設定についても「個人設定」を同期の対象にすることで同期してくれる。設定をブラウザごとに異なるものにすべき理由は、私の場合は特になく、むしろどのパソコン環境で使うときも同じ挙動のほうがいいので、Syncメニューでは、個人設定を同期するように選択肢にチェックを入れている。
ただ、ブラウザを起動したときに表示されるスタートページに限っては、個々の起動環境にあわせて固定しておきたい。(Windowsから起動したときは、一般のニュースサイトのページを表示。Linuxから起動したときは、Linux関連の情報のページを表示したい。あるPCでは、ルーターの設定画面にしておきたい・・・ など。)
何か方法があるのかなと思ったら、ちゃんとあった。Firefoxの about:config 画面で、
services.sync.prefs.sync.browser.startup.homepage=false
(スタートアップ時に表示するホームページURLは、同期しない)
services.sync.prefs.sync.browser.startup.page=false
(スタートアップ時に、ホームページ、空白、前のセッションのいずれを選ぶかについての設定は、同期しない)
と、設定すればよかった。
試しにそのように設定し、それからスタートページを変更、そしてSyncのリセットを選んでサーバー上にある全データでブラウザのデータを更新してみたところ、望みどおりスタートページに関する設定は変化せず、しかしそれ以外のデータについてはちゃんとサーバーからダウンロードされた。
services.sync.prefs.sync の下には、スタートページを同期するかどうか以外にも、各項目ごとに、「どれは同期し、どれは同期の対象外にするか」を選ぶことができるけれど、私の場合は、ひとまず上記の2点だけを除外すれば十分。これで、Firefoxがまた少し便利になった。
【追記】
Firefox 7.0.1 の挙動を観察していて気がついたこと。
about:config で、上記の項目を true(デフォルト値)から false に変更すると、即座に Sync機能が稼動し、サーバー上のデータが更新される。その後、他のパソコンで Firefoxを起動すると、そちらでも Syncによって当該項目が自動的に false に変更されるので、いちいち各パソコンで about:config の設定を変えなくてもよい。
つまり、
「『スタートアップのページについては、同期の対象外にする』ことにした、という変更は、他のPCのFirefoxにも同期・反映される。」
ということだ。
ためしにネットワークの接続を切った状態で上記の項目を true に戻し、次に Syncのリセットをしてからネットがつながるようにしてサーバーにある設定情報を呼び戻したら、about:config の表示画面上で true から false に書き戻されることを観察できた。
それ自体は便利でいいと思うのだけれど、「Firefox の同期機能は、バージョン7になってからは、なにか変更すると即座にサーバー上のデータに反映される」ということを意識していないと、なにかを設定したときに、自分の意図とは違う結果になるかも知れない。例えば、上のような実験をするときネットワークをつなぎっぱなしだと、 手元のブラウザでconfigの値を true にした瞬間にサーバー上のデータも更新されてしまうので、サーバーからデータを呼び戻しても true のままのはずだ。(たぶん、ブラウザ内での設定変更をサーバー上のデータに反映させるタイミングについても、どこかに設定する項目があるはず。あとで探してみよう。)
最近のコメント