Mozilla Flux

Mozilla関係の情報に特化したブログです。

Firefox Quantum高速化の一翼を担うQuantum CSS

デスクトップ版Firefox Quantumでは、Quantum CSS(別名Stylo)と呼ばれる新しいCSSエンジンが初期設定で有効化されている(Bug 1330412)。CSSエンジンはレンダリングエンジンの構成要素の1つで、CSSパーサーとスタイルシステムから成り、HTMLパーサーが生成したDOMツリー(DOMノードが樹状に連なったもの)に対し、CSSを解釈してスタイルを計算した結果を当てはめていく。

Quantum CSSは約8.5万行のRust言語のコードで構成される。Geckoの旧CSSエンジンは約16万行のC++言語のコードで構成されていたから、半分程度のコンパクトさだ。それでいて、Quantum CSSは旧CSSエンジンが設計の古さゆえに抱えてた様々な不具合を解消している。もっとも、実装には苦労もあったようだ。font-sizeプロパティ1つとっても、いろんな単位をサポートしなければならないうえ、たとえば"medium"が何を指すかはフォントの系統ごとに変わってくるし、ルビやMathMLでの調整も必要になる。2015年の終わりころに開発が開始され、2年近い歳月を経てようやくFirefoxリリース版への搭載にこぎ着けた。

Quantum CSSは、Geckoの旧CSSエンジンからルールツリーの仕組みを引き継ぎつつ、Servoの並列処理の仕組みを取り入れるとともに、WebKit/Blinkのスタイル共有キャッシュに着想を得たキャッシュシステムを備えている。いわば各種ブラウザの最先端技術を融合させたCSSエンジンなのだ。

f:id:Rockridge:20171105213420p:plain:w400
ベストミックスのCSSエンジン

スタイルシステムは一般に、CSSに記述されている各セレクターが対象となるDOMノードすべてについてマッチするかどうかの判定を行う(セレクターマッチング)。また、計算済みスタイルが適用されないDOMノードについては、親ノードから引き継いだスタイルまたはデフォルトのスタイルを適用する(カスケード)。インタラクティブなWebページの増加に伴い、これらの処理による負担は重くなる一方だ。

Quantum CSSでは、処理の並列化によってこの問題に対処する。すなわち、CPUのマルチコア化を前提に、DOMツリーを適宜分割して、スタイルに関する処理を各CPUコアに割り当てるのだ。CPUが4コアであれば4つの処理を同時にこなすことが可能になる。手が空いたコアは別のコアが担当予定の処理を取ってくるようになっている(work stealingという)ので、コアが遊んでしまうこともない。

また、Quantum CSSでは、計算済みスタイルをキャッシュしておき、同一のスタイルが適用されるノードに対しては重複した処理を行わないようにする。この場合キャッシュのマッチング処理が必要になるが、Quantum CSSのキャッシュシステムは疑似クラスが用いられるケースなども想定してキャッシュ利用の効率性を高めているという。

以上のほかにも多数の最適化が施されているQuantum CSSだが、その実力はどの程度のものだろうか。MozillaのビルドシステムがQuantum CSSの有効化時に行った自動化テストの結果によれば、Amazon.comの読み込みテスト("laptop"のキーワードで検索した結果を25回表示させ、最初の5回を除いた20回について中央値を取ったもの)において、およそ25%の速度向上が見られた。コンテンツ次第ではあるが、複雑なページほど実力を発揮してくれそうだ。

他方、Quantum CSSに欠点がないわけではない。旧CSSエンジンよりもメモリ消費量は増えるようだ。それとは別に、互換性の問題もある。旧CSSエンジンでは正しく表示されていたWebサイトが、Quantum CSSだと表示がおかしくなるケースがありうる。そこで、Mozillaは問題の出たWebサイトにおいて旧CSSエンジンに切り替える仕組みを導入した(Bug 1403077)。

これまでに述べてきたとおり、Quantum CSSはコンテンツに適用されるものだが、Firefox本体のUI部分にも多数のCSSが用いられているので、その処理にQuantum CSSを適用するのは自然な発想といえよう。既にFirefox Nightly 58にはそうした仕組みが実装されており(Bug 1411532)、layout.css.servo.chrome.enabledの設定をtrueに変更すると有効化される。

Android版FirefoxにもQuantum CSSは投入される予定だ。Firefox Nightly 58には初期設定を無効にした形で実装済みで(Bug 1411802)、今後Nightly 59において初期設定が有効に切り替わる見通しだが、そのままリリース版まで維持されるかどうかは未定である。

将来的にQuantum CSSが必要な箇所すべてに適用され、互換性の問題も解消された暁には、旧CSSエンジンは削除されることになる(Bug 1395112)。つまり約16万行のC++コードがGeckoから消えてRustに置き換わるわけで、コードのメンテナンスしやすさや堅牢性といった点において大きなインパクトを与えるとみられる。

(17/11/06追記)
本文中の「DOMツリーを適宜分割して、スタイルに関する処理を各CPUコアに割り当てる」という記述が舌足らずであったように思うので、補足しておく。Quantum CSSがHTMLパーザーによって生成済みのDOMツリーを切り貼りするわけではない。そのような処理はCSSエンジンの守備範囲を超える。そうではなくて、スタイルシステムが担当する(親)ノードを決めるということが言いたかった。枝分かれするDOMツリーの一部をCPUコアAが、別の一部をCPUコアBがそれぞれ担当するのである。上記の記述は、「DOMツリーにおける担当領域を適宜分割して」と表現するのが適切であった。

タブバー上の人型アイコンを消す(追記あり)

Firefox 57以降、アクセシビリティサービスが有効になっている環境では、タブバー上にその旨を示すインジケーターが表示されるようになっている(Bug 1383051)。インジケーターは人型のアイコンであり、色合いが背景と違うのでけっこう目立つ。

f:id:Rockridge:20171029225459p:plain
タブバー上のインジケーター

アクセシビリティサービスの典型はスクリーンリーダーであり、Firefoxにアクセスするそうしたサービスが存在するときは、原則としてトラブルシューティング情報(about:support)の〔アクセシビリティ〕欄において種類などを確認できる。

問題は、高DPI環境でWindowsのディスプレイ設定が拡大表示になっている場合であっても、インジケーターが表示されてしまう点だ。アクセシビリティサービスを使っているつもりが全くないのに、タブバー上に目立つアイコンが表示され続けることになる。

このインジケーターを消す方法は2つある。1つは、インジケーターの表示設定を無効化すること。もう1つは、アクセシビリティサービスによるFirefoxへのアクセスを遮断することである。前者は、about:configのページでaccessibility.indicator.enabledの設定をfalseに変更すれば実現できる。

後者の方法はもっと簡単で、メニューの『オプション』から設定画面を開き、〔プライバシーとセキュリティ〕の許可設定欄にある「アクセシビリティサービスによるブラウザーへのアクセスを止める」にチェックを入れればOK。本体の再起動を要求されるので、これに応じるとチェックが有効化される。ちなみに、設定値としてはaccessibility.force_disabledが1に変更された形だ。

f:id:Rockridge:20171029232710p:plain
設定画面からアクセシビリティサービスをオフに

積極的にアクセシビリティサービスを使っているのでなければ、Firefoxへのアクセスは遮断してしまっていいと思う。そうしたサービスがFirefoxにアクセスする場合、ブラウザとしては処理を中断して応答しなければならず、知らず知らずのうちにパフォーマンスの低下を招いている可能性もあるからだ。

(17/11/02追記)
ATOK 2016以降に搭載されているATOKインサイトが、Firefoxにはスクリーンリーダーとして認識されるという話がある。アクセシビリティサービスを遮断することでATOKインサイトが使えないと困る場合、インジケーターの表示設定を無効化するのがよいだろう。

(17/11/04追記)
Firefox 57 Beta 13以降、インジケーターは初期設定で非表示となった(Bug 1411591)。Mozillaの開発者によれば、Beta版ユーザーの約7%がこのインジケーターを目にしていたそうだが、どうやらこの割合はMozillaの想定を超えていたようだ。Firefox 57のリリース後に行われるテストの結果を踏まえて初期設定を決めることとなり、accessibility.indicator.enabledの設定はfalseに変更された。

本文にはあまり意味がなくなってしまったが、初期設定においてアクセシビリティサービスがFirefoxにアクセス可能である点は変わりがない。Firefoxのパフォーマンスがインストール当初から良くない場合、「アクセシビリティサービスによるブラウザーへのアクセスを止める」の設定を変更してみるのも1つの手だろう。

Mozilla Add-ons(AMO)がFirefox Quantumの登場に備えてリニューアル予定 新デザインを採用しFirefoxに特化

各種アドオンを掲載するMozilla Add-ons(以下AMO)は、2017年11月2日(米国時間)にデスクトップ版のフロントエンドがリニューアルされる予定だ。具体的には現在モバイル版で採用されているデザインが、デスクトップ版にも適用される。

レスポンシブにも対応した新デザインは、現在パブリックベータの段階にあって誰でも試すことができる。AMOの一般向けページの末尾に「モバイル用サイトを表示」というリンクがあるはずだ。これをクリックするとデザインが切り替わる。戻すときは「通常のデスクトップ版サイトを表示」のリンクをクリックすればよい。なお、個別のアドオンのバージョン履歴のように切り替わらない部分も残っている。

f:id:Rockridge:20171014162726p:plain
AMOのレスポンシブな新デザイン

新デザインは配色がFirefox Quantumに合わせたものとなっているほか、トップページに掲載される情報を整理し、個別のアドオンよりもユーザーの用途に着目した選択肢を提示するようになった。技術的にはサーバーサイドでレンダリングされるReactアプリであり、従来のDjangoベースから大きく変化している。

f:id:Rockridge:20171014162725p:plain
拡張機能のページは中程に情報を集約

個別の拡張機能のページは2カラム式になった。中心的な情報を右側においてスペースを広く取る一方、その他の情報を左側に集約させている。スクリーンショットが大型化して目立つ位置にあり、拡張機能作者に掲載を促しているとみられる。拡張機能の説明も最初の段落だけが表示され、それ以上はユーザーが「詳しく見る」をクリックしないと出てこない。これも簡潔的確な説明を最初に載せるよう促す狙いだろう。なお、『作者のコメント』欄は見当たらなくなっている。

また、拡張機能をインストールするボタンは切り替え式になった。アドオンマネージャーの〔アドオンを入手〕で採用済みだが、オンにしてインストールすることはもちろん、オフにしてアンインストールすることも可能だ。WebExtensions拡張機能はすべて再起動が不要なので、アンインストールが簡単にできるメリットが際立つ。ただ、ボタンのサイズが小さい点と右端に寄りすぎている点は気になるところだ。

それから、レビューを書かなくても五つ星のレーティングが簡単に行えるようになっている。逆にレビューは、従来のように最新の一部が表示されることもなく、サブページに追いやられた。そのほうがユーザーの声を集めやすいという配慮だと思うが、賛否が分かれそうだ。

ちなみに、リニューアル後もFirefox ESR 52のサポートサイクルが続く2018年6月までは、AMOにおいて旧式アドオンの掲載が継続される。旧式アドオンは最大バージョンが56.*となっているが、バージョン別の互換性フィルタが初期設定で無効化されているため、Firefox Quantumのリリース後もただちにWebExtensions未対応の拡張機能が探せなくなるわけではない。もっとも、WebExtensionsベースの拡張機能が検索の上位に表示されるような調整は施されているようだ。

AMOのリニューアルにあたってもう1つ大きな変化がある。それは、Firefox向け(デスクトップ版・Android版)への特化だ。Thunderbird/SeaMonkey向けのアドオンはAMOから切り離され、コミュニティベースで管理することになる。Thunderbirdであれば、Thunderbird Councilが管理を担当する。当面はMozillaがインフラを提供し、AMOから新サイトにリダイレクトされるものの、たとえばレビューチームは自分たちで組まなければならない。インフラの運用についても同様だ。

スケジュールによれば、リダイレクトの開始は2017年11月10日がデッドラインとなっているが、その後11月2日のAMOリニューアルが決定されたため、リダイレクトもその日だろう。リダイレクト後は引継ぎ期間に移行し、2017年12月22日までに、Thunderbird向けアドオンを掲載する新サイトはThunderbird Councilが管理と運用を行う形となる。

以上のとおり、今回のAMOのリニューアルは根本的な変革だ。Firefoxの歴史にとってFirefox Quantumが重要なものとなるように、11月2日のリニューアルもAMOの歴史に深く刻まれることになるだろう。他方で、ユーザーは当初かなり戸惑うことになると思われる。フィードバック次第では、デザインの一部に修正が加えられる可能性もありそうだ。

(17/11/03追記)
予定通りAMOのリニューアルが実施された。開発には1年半以上を要したとのこと。表示速度の向上も大きなアピールポイントのようだ。

(17/11/05追記)
Mozilla launches redesigned Firefox Add-ons website - gHacks Tech Newsで、リニューアル後のAMOにおいて利用可能なURLパラメータが紹介されている。以下のパラメータを「&」記号でつなげると検索内容の調整が可能だ。

  • sort=updated, relevance, users, rating, hotness
  • type=extension, persona
  • platform=windows, mac, linux
  • featured=true

(17/11/06追記)
現行のAMOのデザインは、パブリックベータ版からも若干変わっている。個別の拡張機能のページでは、インストール用のボタンについて、切り替え式を廃して大きく目立つものを手の届きやすい場所に置いた。また、拡張機能を評価する欄を上側に移動させたほか、欄と欄の間隔や欄内の文字の配置に余裕をもたせた。今後もユーザーのフィードバックを受けながら調整を続けていくのだろう。

f:id:Rockridge:20171106233234p:plain
AMO正式版のデザイン

Firefox QuantumでThe Book of Mozillaも新章へ

Firefoxにはその前身であるNetscape Navigatorの時代から、about:mozillaのページに『モジラ書(The Book of Mozilla)』の一節を表示するイースター・エッグがある。文章が更新されるのは開発にとって大きな節目の時期となっており、Firefox Quantumもその節目に選ばれた(Bug 1370613)。つまりFirefox 57のabout:mozillaは、Firefox 56とは内容が違う。

f:id:Rockridge:20171010003218p:plain
about:mozillaの11章14節

about:mozillaの履歴は公式サイトに掲載されているが、英語版Wikipediaの"The Book of Mozilla"の記事のほうが、背景の解説など関連情報まで載せてくれていて、はるかにわかりやすい。Firefox Quantumの新しい文章も反映されているなど目配りも利いており、資料的価値は高いといえる。

そのWikipediaの記事にも書かれているとおり、The Book of Mozillaは聖書うちの一書という体裁を強く意識している。いわばオープンソース聖書のようなものがある中で、旧約聖書の『ダニエル書』や新約聖書の『ヨハネの黙示録』のように、『モジラ書』は獣(the beast)が登場する黙示文学なのである。この獣(the beast)は、赤い恐竜のような姿で描かれたマスコットとしてのMozillaをイメージしたもので、炎を吐く存在とされている。

The Book of Mozillaの初出は、1995年のNetscape Navigator 1.1である。以後Netscape Communicator 4.xまで、「12章10節」が掲載された。この章と節は記念となる出来事の月日を反映していて、12章10節というのも1994年12月10日にNetscape Navigator 1.0がリリースされたことを踏まえている。その文章を私訳とともに紹介しよう。

And the beast shall come forth surrounded by a roiling cloud of vengeance. The house of the unbelievers shall be razed and they shall be scorched to the earth. Their tags shall blink until the end of days.

獣は復讐に燃える群衆に囲まれて現れるであろう。不信仰者らの住処は打ち壊され、焦土と化す。彼らの印は世の終わりまで明滅することとなる。

ここでいう「不信仰者」は、Web標準に従わない人々を指す。Netscape 3までは内蔵のHTMLビューワでソースを見ると、誤ったタグ(印)が明滅する仕様になっていたことが、巧みに文章に盛り込まれている。

次の節目は、Netscapeのコードがオープンソース化された1998年3月31日だ。同年5月には早くもabout:mozillaの「3章31節(赤文字版)」が出来上がったものの、Mozillaのコードが書き換えられていく中でいったん失われた。2000年2月に復活し、Netscape 6から7.1に掲載されたのが次の文章である。

And the beast shall be made legion. Its numbers shall be increased a thousand thousand fold. The din of a million keyboards like unto a great storm shall cover the earth, and the followers of Mammon shall tremble.

獣は大群となり、その数は千の千倍にも増える。無数のキーボードを打ち鳴らす音が大いなる嵐の如くなりて地を覆い、強欲の化身を奉ずる者らは打ち震えるであろう。

ここで初めてマモン(Mammon)という言葉が出てくる。富を擬人化した存在で、悪魔学では強欲を司る悪魔とされているが、文章内ではMicrosoftの暗喩として用いられている。一神教の世界観なので書き手がマモンを「神」と呼ぶことはないが、悪魔と明示されているわけでもないので、訳文では「強欲の化身」とした。

文章に描かれているのは、Internet Explorerの攻勢にいったん破れたNetscapeが、オープンソースとして広く拡散し、反撃を開始する様だ。黙示文学の体裁ではあるが、キーボードという言葉が出てくるのは、宗教的な雰囲気になりすぎるのを避けたかったからだろう。ちなみに、「赤文字版」の赤文字(Red Letter)は「特筆すべき」くらいの意味だが、イエス・キリストの言葉のみ赤文字で書かれた新約聖書というものが存在するらしく、そのことも踏まえた凝ったネーミングになっている。

2003年7月15日、AOLがNetscape部門を閉鎖し、Mozilla Foundationが創設された。しかし、オープンソースであるMozillaのコードベースは存続し、後のFirefox(初期の名前はFirebird)やThunderbirdへと繋がっていく。Mozilla 1.5からFirefox 3.0 Beta 2まで、Thunderbirdの最初のバージョンから2.0.0.24まで、Netscape 7.2から8.1.3までなどに掲載されたのが次の「7章15節」である。

And so at last the beast fell and the unbelievers rejoiced. But all was not lost, for from the ash rose a great bird. The bird gazed down upon the unbelievers and cast fire and thunder upon them. For the beast had been reborn with its strength renewed, and the followers of Mammon cowered in horror.

そのようにして獣はついに倒れ、不信仰者たちは歓喜した。しかし消え去ってはいなかった。その灰より大いなる鳥が蘇ったからである。鳥は不信仰者たちを睥睨し、炎と雷を彼らに浴びせた。獣が力を新たにして生まれ変わったことにより、強欲の化身を奉ずる者らは恐怖に身をすくめた。

Netscape部門の閉鎖でMozillaという獣はいったん倒れたが、Firebird(=フェニックス)として灰より蘇った。文章内ではThunderbirdのイメージとも重なり、炎と雷を操る存在として描かれている。なお、ここで出てくるマモンもMicrosoftの暗喩である。

公式サイトにはないが、Wikipediaの記事には「8章20節」がある。Netscapeがブラウザ部門を再開し、Netscape Navigatorの新バージョンを社内で開発する可能性があることを社内メールで明らかにしたのが、2006年8月20日なのだそうだ。Netscape Navigator 9.0b1から9.0.0.6までに次の文章が掲載された。

And thus the Creator looked upon the beast reborn and saw that it was good.

かくして主は獣の再誕をご覧になり、それを良きものとされた。

Mozillaを作ったNetscapeが開発を再開したのでこうした文章になっているようだが、黙示文学というより旧約聖書『創世記』の天地創造のイメージだ。製品自体がMozillaプロジェクトから外れているだけでなく、about:mozillaの書きぶりとしても「異端」であり、公式サイトに掲載されていないのもそうした理由だと思われる。

MozillaにとってMozilla Foundationの創設に次いで節目となるのは、Firefox 1.0のリリースである。2004年11月9日のリリースを記念して、2008年1月、「11章9節(第10版)」が作られた(Bug 411352)。オープンソース化から10年が経ったので、「第10版」の表記がある。Firefox 3.0 Beta 3から20.0.1までなどに掲載されたのが、次の文章だ。

Mammon slept. And the beast reborn spread over the earth and its numbers grew legion. And they proclaimed the times and sacrificed crops unto the fire, with the cunning of foxes. And they built a new world in their own image as promised by the sacred words, and spoke of the beast with their children. Mammon awoke, and lo! it was naught but a follower.

強欲の化身は眠りについた。獣の生まれ変わりは地に広がり、その数は増えて大群となった。それらは狐の抜け目なさをもって、時が満ちたことを宣言し、収穫物を捧げものとして火にくべた。それらは御言葉において約束されたとおり自らの思い描く新世界を作り上げ、子らに獣のことを語り伝えた。強欲の化身が目覚めたとき、見よ、それはただの模倣者と成り果てていた。

この文章には多くの出来事が盛り込まれている。まず、マモンはMicrosoftを指しており、Internet Explorer 6から7までの開発期間が5年空いたことを指して、眠りについたと表現している。Microsoftが「眠っている」間にいわゆるWeb 2.0の時代になり、「目覚めた」ときにはイノベーターではなくなっていたというわけだ。

一方MozillaはSpread Firefoxというプロモーションサイトを起ち上げ、Mozillaマニフェストを公表し、about:mozillaニュースレターを発行した。FirefoxのサポーターたちはNew York Times紙に広告を載せ、Firefoxのロゴマークのミステリーサークルを作った。こうした様々な情報を文章に落とし込むスタイルは、その後も継承されている。代わりに、黙示文学的な預言の雰囲気は薄れていく。

Firefox OS 1.0がコードフリーズとなった2013年1月15日も、Mozillaにとって重要な時期であった。デスクトップからモバイルへと開発の重心が大きく傾いたからだ。この動きを反映して、「15章1節」が作られた(Bug 830767)。Firefox 21.0 Alpha 1から現在(56.0)まで掲載されているのが、次の文章である。

The twins of Mammon quarrelled. Their warring plunged the world into a new darkness, and the beast abhorred the darkness. So it began to move swiftly, and grew more powerful, and went forth and multiplied. And the beasts brought fire and light to the darkness.

双子なる強欲の化身らは対立した。その争いは世界を新たなる闇に沈め、獣はその闇を忌み嫌った。そこで獣は素早く動き始め、力強さを増し、打って出てその数を増やした。そして獣らは闇に灯火をもたらした。

双子のマモンとは、言うまでもなくAppleとGoogleのことである。両社が相争い、アプリ市場を寡占した。オープンなWebが損なわれることを嫌って、Mozillaは動き始め、Android版FirefoxやFirefox OSをリリースした。そうした出来事を描いているわけだが、残念ながらMozillaはその後、大幅な撤退を余儀なくなされた。

満を持しての反転攻勢は、Firefox Quantumから始まる。そのリリース予定日は2017年11月14日だ。というわけで、about:mozillaの「11章14節」は次のようになっている。

The Beast adopted new raiment and studied the ways of Time and Space and Light and the Flow of energy through the Universe. From its studies, the Beast fashioned new structures from oxidised metal and proclaimed their glories. And the Beast's followers rejoiced, finding renewed purpose in these teachings.

獣は新たな衣服を身にまとい、時空と光、宇宙内のエネルギーの流れについて、それらのあり方を学んだ。学びにより獣は錆びた金属から新たな構造物を作り上げ、その栄光を宣言した。獣を奉ずる者らは教えの中に新たな目的を見出し歓喜した。

時空はQuantum(量子)プロジェクトを指し、光はPhoton(光子)プロジェクトを指す。Photonの新UIにより、Firefoxは新たな衣服を身にまとうことになった。そして、Quantum CSSなど、Rust(錆)言語で書かれたコードがFirefoxに力を与えた。なお、スピードアップへの貢献度が高いQuantum Flowは、サブプロジェクトながら大きな扱いを受けている。

この一節が「預言」として現実のものとなるかどうか。それは神のみぞ知る、だろう。

ブックマークからタブを開く際の隠し設定(Firefox 57以降)

Firefox Quantumは旧式の拡張機能がサポートされなくなるバージョンであり、本体の挙動をカスタマイズする拡張機能が動かなくなるケースも少なくないだろう。Mozillaも対策として、タブのコンテキストメニューにタブを複製する項目を追加したりしている。今回は、ブックマークからタブを開く際の挙動を変更する新設定を2つ紹介しておく。

新設定はいずれもオプション画面からは変更することができない隠し設定だ。なのでまずはアドレスバーに"about:config"と打ち込んでページを開き、「動作保証対象外になります!」という警告が出たときは、「危険性を承知の上で使用する」をクリックして先へ進む。そして、検索ボックスに以下の設定名を入力してみよう。

1つ目の設定は、browser.tabs.loadBookmarksInTabs。これをtrueに変更すると、ブックマークされたページを常に新しいタブで開くことができる(Bug 658245)。うっかり現在のタブを上書きしてしまうことを防げるわけだ。ただし、本記事執筆現在、ブックマークメニューとブックマークサイドバーでは正常に動作するが、メニューパネルのブラウジングライブラリーからページを開いた場合は挙動がおかしい。

2つ目の設定は、browser.bookmarks.openInTabClosesMenu。これをfalseに変更すると、ブックマークの項目を中ボタンクリックするかCtrlキーを押しながらクリックした場合、ページを開いた後もブックマークが閉じなくなる(Bug 260611)。フォルダ内の項目を順次開いていくときなどに便利だろう。

f:id:Rockridge:20171008222150p:plain:w619
ページを開いた後もブックマークが閉じない