ArtSaltのサイドストーリー

音楽、フリーウェア、WEBサービス、食べものなどに関する日記。トラックバック、コメント歓迎。
トップ FirefoxとOpera

今さらだけど、Firefoxシェア拡大の理由がわかった

Mozilla Re-Mix: Firefox 3の各種メニューアイコンなどをグラフィカルにカスタマイズできるアドオン「Menu Icons Plus」

自分はこの Menu Icons Plus ってのを使いたいとは思わないけど、こういうお手軽さがFirefoxの良いところであり、強みなんだな、とあらためて思った。

Firefoxユーザ同士の会話って、こんな感じ ↓ でもちゃんと成立するんだからね。

101 名無しさん@狐つき [] Date:2008/05/28(水) 14:28:34 ID: Be:
スクリプトの許可をきめ細かくやりたいんですけど、どの設定を変えたらいいかわかりません。
102 名無しさん@狐つき [] Date:2008/05/28(水) 14:29:34 ID: Be:
>>101
hostperm.1をいじる手もあるが、めんどくさかったらNoScriptでも使っとけ
103 名無しさん@狐つき [] Date:2008/05/28(水) 14:30:34 ID: Be:
Firefoxって、キーボードショートカット変えられないじゃん
何なの、この糞ブラウザwww
104 名無しさん@狐つき [] Date:2008/05/28(水) 14:31:34 ID: Be:
>>103
keyconfig入れれ
105 名無しさん@狐つき [] Date:2008/05/28(水) 14:32:34 ID: Be:
おまえら、俺様に教えろ。右クリックメニューをいじるにはどうすればいい?
106 名無しさん@狐つき [] Date:2008/05/28(水) 14:33:34 ID: Be:
>>105
つ MenuManipulator
107 名無しさん@狐つき [] Date:2008/05/28(水) 14:34:34 ID: Be:
なんだよ、メモリーリーク、まだなおってねーじゃねえか
つかえねーな
108 名無しさん@狐つき [] Date:2008/05/28(水) 14:35:34 ID: Be:
>>107
(・∀・)< 巣に帰れ

基本的に1行レス。Operaではこういうふうにはいくまい。

Operaを片手キーボード操作で使う知恵

パソコン用Operaの spatial navigation って、あまり話題にならない地味な機能ですけど、モバイルの操作に慣れ親しんだ人たちが「パソコンでも同様のことをやりたい」という理由で脚光を浴びる日が来るかもしれない、と妄想する今日このごろです。

k ctrl=navigate down
i ctrl=navigate up
j ctrl=navigate left
l ctrl=navigate right

Opera(9.5)ユーザ shift + 矢印がめんどくさい人へ - hiru日記

「凸の字」状に配列されている i, j, k, l をカーソルキーがわりに使う点は私と似ていますね。

以下は私の事例です。modifier key をあまり使いたくない(片手だけですませたい)主義なので、single key shortcut です。これと全く同じことをやっている人が地球上に20人ぐらいいると思います。

i=Navigate up
j=Navigate left
k=Navigate down
l=Navigate right

当ブログ内の関連エントリ(2008年07月30日以前)

  • 選択しているフォームの記入部をハイライトして目立たせることができるユーザCSS
    input要素とかtextarea要素にフォーカスが当たっていることが瞬時にわかるUserCSS。
    初期設定のOpera9.5は single key shortcut を殺しています。初心者を戸惑わせないための配慮だと思います。しかし、このCSSを使えば、混乱するユーザはかなり減るはずです。Opera本体に実装されてはいかがでしょう?
  • SpaceキーをEnterキーのかわりに使う贅沢
    QWERTYキーボードのキーバインディングの話。
    • コロン(アスタリスク)を右Ctrlに変えてしまう。
    • "Ctrl + Space" を擬似的なEnterにしてしまう。
    • そのほか。
    ようするに、
    • コロンが擬似的な右Ctrlになる。
    • コロンを押しながらSpaceを押せば、それは「Enterを押すこと」と同義になる。
    これにより、右手の小指を本物のEnterキーまで伸ばす必要がなくなります。ホームポジションが崩れません。

クリックしたときのテキスト選択の話

このエントリはあくまでもポインティングディバイス (pointing device) でテキストをクリックしたとき選択される範囲について語っている。ドラッグして選択するやり方はとりあえず脇に置いとく。

Firefoxのテキスト選択は日本語の文節を解釈できる

FirefoxがOperaよりも圧倒的に優れている点があるんだ。それはテキスト選択時の挙動。

このページを開いて検証してみる。
質問箱3/259 - ウェブブラウザOpera みんなで作るまとめページ (Opera-PukiwikiPlus!)

「それはOperaではなく、Windowsの設定で出来ます。」と書いてある部分。

「それは」の真ん中をダブルクリック。

Firefoxスクリーンショット

「Opera」の真ん中をダブルクリック。

Firefoxスクリーンショット

「Operaではなく」の「a」と「で」の間をダブルクリック。

Firefoxスクリーンショット

「設定で」の「定」と「で」の間をダブルクリック。

Firefoxスクリーンショット

すばらしい。国際的な open source software がここまで日本語の文節というものを解釈してくれるなんて【後注】。っていうか、日本のMozilla開発者のみなさんに感謝しなくちゃいかんね。

ただし上4枚のスクリーンショットはFirefox2系です。bugzillaに「Firefox3とFirefox2が微妙に違う」というバグが報告されている。fixしてるらしいから、Firefox3.0.2あたりで直るかも。
Bug 6224 -- 日本語の単語をダブルクリックしたときの選択範囲がFx2とFx3以降で異なる

後注

厳密に言えば、「文節の解釈」ではなく、漢字、ひらがな、カタカナ、句読点、半角英数字等を機械的に区別しているだけだと思うけど。

Firefox3のトリプルクリック

それからトリプルクリック。こいつの扱いはFirefox3で大きく変わった。
Firefox2までは当該行が選択されるだけだった。これはこれで直感的に理解しやすかった。
Firefox3では、paragraphの場合はbr要素までが選択される。listの場合はli要素の単位で選択される。ようするに論理的に無理がない仕様になってる。
(ただし、これは browser.triple_click_selects_paragraph を初期値 true にしている状態での動き)。

いわゆる「長いURLが改行されない問題」の解決と合わせて、Firefoxが大きく前進してることを実感する。

Operaのテキスト選択は理解に苦しむ

Operaの場合、"select" というより "highlight" ということばを使ったほうが正確なのかな。
当然Operaにも、クリックしたときの選択範囲に何らかの法則があると思うんだけど、その法則がわかったようで、わからない。特に、ピリオド、スラッシュ、アンパサンド、エクスクラメーション等のような記号の扱いが複雑すぎて、理解できないよ。

日本語の文節をまったく解釈できないのは我慢する。Firefox3で実現された複数テキスト選択ができないのも許容範囲だ。「GeckoとPrestoの思想の違い」というふうに解釈してもいい。
しかし、下記コードからなるHTMLファイルをOperaで開いた場合、

<p>http://www.example.com/<br />
http://www.example.com/index.php?E3%E3%E3%E3%E3%E3%E3%E3%</p>

1行目の

"http://www.example.com/"

をトリプルクリックしたり、クワドループルクリック (quadruple click) したり、ダブルクリックしてからシングルクリックすると、その下の、

"http://www.example.com/index.php?E3%E3%E3%E3%E3%E3%E3%E3%"

まで選択されてしまうことがあるのはいただけない。br要素を飛び越えちゃうのかよw 1行目だけを選択したいのに。
おまけに、途中に特殊な記号があると、選択範囲が微妙に変わっちゃうんだよね。

なんとなくわかったこと。

  • クワドループルクリックすると、ブロック要素の単位で選択されるみたい。失敗することもある。
  • 単語間にスペースを確保する言語(アルファベットを使う言語など)と、分かち書きをしない言語(日本語など)を比較してみると、ダブルクリック、トリプルクリックしたときの選択される範囲がかなり違う。
  • 日本語に関しては、単語と文節は認識できないけど、句読点とか中黒(なかぐろ)は認識できるみたい。

タッチパッドでドラッグしてる人たちのことも忘れないでね

こういう問題はマウスのドラッグでテキストを器用に選択してる人たちにとってはどうでもいいことだろうけど、タッチパッドを使って苦労してクリックとかドラッグしてる人には切実な問題なんですよ。
もともとOperaってのは、 Highlight next heading とか Highlight next element なんていう離れ業を簡単にやってのける変態仰天ブラウザであるわけで、テキスト選択時の動きが意味不明、理解不能、かつ混沌としているのは、このへんとの関係じゃないかなあ。

そんなダメOperaにもふたつだけ良い点があって、ひとつはテキストの選択をEscキー押下で解除できること。もうひとつは前述の Highlight next element っていうアクション(← コピペするとき、ほんの少しだけ便利)。いずれもFirefoxで実現することはまず不可能でしょうね。

  • Mozilla/5.0 (Windows; U; Windows NT 5.1; en-us; rv:1.8.1.16) Gecko/20080702 Firefox/2.0.0.16
  • Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
  • Opera/9.51 (Windows NT 5.1; U; ja)

関連

ConQuery使って複数エンジンで一発検索

ConQuery改造版って便利だなあ。今度は1度に複数の検索エンジンで同時検索なんて機能ができたよ。乙です。
Shadow912's Mozilla/Firefox 日本語版拡張置き場: ConQuery 1.7.3 改造版その4β1

めんどくさいので、スクリーンショットで説明。

ConQueryスクリーンショット

searchpluginsフォルダにサブフォルダをつくる。名前はなんでもいいんだけど、とりあえず english1 としておく。この english1 の中に任意の検索plug-inすなわち「なんとか.xml」を放り込む。
(ここではスペースアルクの英辞郎とLONGMAN英英辞典を放り込んだ)

ConQueryスクリーンショット

Firefoxのコンテキストメニュー(の中のConQueryのコンテキストメニュー)を開き、サブフォルダ english1 をダブルクリックする。

ConQueryスクリーンショット

英辞郎とLONGMANの同時検索♪
(下のスクリーンショットはテキストを選択してない状態、すなわち検索したい語を自分でタイプするモード)

ConQueryスクリーンショット

2点だけ不満。

  • "Open query results in the same window" の場合、同時検索ができないんですね … って、当たり前か。
  • 同時検索はマウスまたはタッチパッド操作のみ対応であって、キーボード操作ではできない。「ダブルクリック」に相当する動作がないから。

当ブログ内の関連エントリ(2008年07月19日以前)

Firefox Portable Edition 使ってみた

先日ネットカフェに行ったとき、使い慣れない Internet Explorer で苦労したので、Firefox Portable Edition を使ってみようかと。
"Mozilla Firefox, Portable Edition | PortableApps.com - Portable software for USB drives" で「なんとか.exe」をダウンロードしてUSBフラッシュメモリーにインストール(?)すればいいんだね。

ネットカフェのパソコンじゃなく自分のパソコンでUSBフラッシュメモリーからその Firefox Portable Edition を起動してみた。あとで気づいたんだけど、最新の Firefox Portable Edition って、当然ながらFirefox3系なんですね。自分はまだFirefox2系を使ってるから、思わぬ形でFirefox3を初体験してしまった

  • 「JavaScriptが速くなった」ともっぱらの評判だけど、別に体感速度は以前と変わんないと思った。USBフラッシュメモリーから起動してるせいかな。
  • IMEがONになってるとスクロールできなくなるという有名かつ歴史的なバグがfixしてるけど、はっきり言ってどうでもいいんですよ。IMEがONになってるかどうか知らせてくれる IME Sound っていうソフトを使ってるから。
  • 半角文字が長々と続くと改行されない件も個人的にはどうでもよかったけど、水平スクロールバーが発生する事例が減るのは良いこと。
  • Firefox1.0.7の頃からのユーザとしてはフルページズーム(テキストだけでなく、イメージもズーム)の実現は感慨深い。なんかFirefoxじゃないみたいで、ちょっと悲しいw
  • テキストの複数選択が可能になったのも新鮮。
  • ブックマークの扱いが大きく変化したんだね。まだ慣れないや。
  • キャレットブラウズモード (caret browsing mode) って、まだ生きてるんですね。こんなのをありがたく使ってるのは私ぐらいのもんなんだから、とっとと氏ねばいいのに。
Firefox Portable Edition のスクリーンショット

Firefox3系に対応してないextensionがいくつかあるけど、極端に言えば keyconfig と functions for keyconfig と Hit-a-Hint0.8 さえ動いてくれればじゅうぶん。functions for keyconfig はもともとFirefox3系に対応していて、keyconfigとHit-a-Hint0.8に関しては「なんとか.xpi」を解凍して中身をいじったら、動くようになった。これでネットカフェに行ったときも快適になると思う。

userChrome.cssとuserContent.cssとuser.jsを常用のFirefox2系からportableのFirefoxにコピーしても反映されないのはなぜなんだろ。現在模索中。

ステータスバーをベタ白ヌキにしたら、かっこよくなった

ステータスバーって地味な存在だけど、けっこう役に立つと思うのですよ。リンク先のURIを表示してくれたりね。
theme(スキン)によって違いがあると思うけど、ステータスバーのフォントって、ちょっと小さいし、見にくいと思ったので、userChrome.cssをいじってベタ白ヌキにしてみた。Firefox2でこれを適用してるけど、Firefox3で使えるかどうかは未確認。

Firefoxのステータスバーのスクリーンショット
ステータスバーがこういうふうになりました。
ベタ白ヌキは見やすいし、かっこいい。
#statusbar-display, #security-button {
font: 15px Meiryo !important;
color: #fff !important;
background: #235 !important;
}
#colorzilla-statusbar-panel, #noscript-statusIcon, #jsview-status, #statusbar-bbs2chreader {
background: #235 !important;
}

6行目の #colorzilla-statusbar-panel, #noscript-statusIcon, #jsview-status, #statusbar-bbs2chreader というセレクタは ColorZilla, NoScript, JSView, bbs2chreader 用なので、6-8行目はこれらのextensionを使ってない人たちには無用のコード。

Firefox3に引き継ぎたい設定メモ

Firefox3のクリーンインストールを来月あたりにやる予定。Firefox2系から引き継ぎたい設定をメモ。っていうか、Firefox3系でもこれらが有効なのかどうかは全く不明。
本来、こういうのはローカルに置くべきだけど、一身上の都合がある。ここに貼り付けておくのがいちばん安全確実。

user.js

# Mozilla User Preferences
//find toolbar をフラッシュするか否か(デフォルト1)
user_pref("accessibility.typeaheadfind.flashBar", 1);
//ページ内検索でテキストが見つからなかったときの音
user_pref("accessibility.typeaheadfind.soundURL", "beep");
//キャレットブラウズモード開始時に警告
user_pref("accessibility.warn_on_browsewithcaret", true);
//テキスト点滅の制御
user_pref("browser.blink_allowed", false);
//背景の色
user_pref("browser.display.background_color", "#FFFFCC");
//フォーカスされたリンクの背景の色
user_pref("browser.display.focus_background_color", "#ffffff");
//フォーカスリングの大きさ
// /////user_pref("browser.display.focus_ring_width", 3);
//フォーカスされたリンクのテキストの色
user_pref("browser.display.focus_text_color", "#000000");
//リンク以外にもフォーカスリングを表示するか否か
// /////user_pref("browser.display.focus_ring_on_anything", true);
//フォーカスされたリンクの色指定を有効または無効に
user_pref("browser.display.use_focus_colors", true);
//新ウィンドウとして開くリンクを新タブとして開くか否か
user_pref("browser.link.open_newwindow.restriction", 0);
//シングルウィンドウモードか否か
user_pref("browser.tabs.showSingleWindowModePrefs", true);
//ロケーションバー隣のGOボタン
user_pref("browser.urlbar.hideGoButton", true);
//domなんとか
user_pref("dom.disable_window_flip", false);
user_pref("dom.disable_window_open_feature.status", false);
user_pref("dom.disable_window_status_change", false);
user_pref("dom.popup_allowed_events", "change click dblclick mouseup reset submit keypress keyup");
user_pref("dom.popup_maximum", 100);
//extension互換性チェック
user_pref("extensions.checkCompatibility", false);
//gifアニメーションの再生制御
user_pref("image.animation_mode", "once");
//クリック予想機能
user_pref("network.prefetch-next", false);
//IPv6無効にしてFirefox高速化?
user_pref("network.dns.disableIPv6", true);
//暗号化されているページから暗号化されていないページに移るときは毎回警告する(defaultはtrue)
user_pref("security.warn_leaving_secure", false);
//Altキーを押したときメニューバーをフォーカスするか否か
user_pref("ui.key.menuAccessKeyFocuses", false);
//context menu popup delay
user_pref("ui.submenuDelay", 0);
//選択されたテキストの背景の色。ただしXUL/Migemoの場合、なぜか色が変わる
user_pref("ui.textSelectBackgroundAttention", "blueviolet");
//外部テキストエディタでソースを開くか否か
user_pref("view_source.editor.external", true);
user_pref("view_source.editor.path", "C:\\Program Files\\EmEditor\\EmEditor.exe");
user_pref("view_source.wrap_long_lines", true);

keyconfig

name: CloseTab_FocusRightTab, id: xxx_key__CloseTab_FocusRightTab, shortcut: F4, code:
var tab = gBrowser.mCurrentTab; if(tab.nextSibling) gBrowser.mTabContainer.selectedIndex++; gBrowser.removeTab(tab);
name: f4kc_CopyCurrentTitle, id: f4kc_CopyCurrentTitle, shortcut: T, code:
f4kc_CopyCurrentTitle();
name: f4kc_CopyCurrentURI, id: f4kc_CopyCurrentURI, shortcut: Shift+L, code:
f4kc_CopyCurrentURI();
name: f4kc_FocusNextFrame, id: f4kc_FocusNextFrame, shortcut: F, code:
f4kc_FocusNextFrame();
name: f4kc_NextTab, id: f4kc_NextTab, shortcut: Alt+→, code:
f4kc_NextTab();
name: f4kc_PrevTab, id: f4kc_PrevTab, shortcut: Alt+←, code:
f4kc_PrevTab();
name: f4kc_UpperDirectory, id: f4kc_UpperDirectory, shortcut: U, code:
f4kc_UpperDirectory();
name: Focus_Content, id: xxx_key__Focus_Content, shortcut: Alt+[, code:
_content.focus();
name: GetURL++1, id: xxx_key__GetURL++1, shortcut: G, code:
var w = window._content;
var d = w.document;
var txt = '<a href="' + d.location.href + '" title="' + d.location.href + '">' + d.title + '</a>';
const CLIPBOARD = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
CLIPBOARD.copyString(txt);
name: GetURL++2, id: xxx_key__GetURL++2, shortcut: @, code:
var w = window._content;
var d = w.document;
var txt = '<a href="' + d.location.href + '" title="当ブログ内のリンクです">' + d.title + '</a>';
const CLIPBOARD = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
CLIPBOARD.copyString(txt);
name: GetURL++3, id: xxx_key__GetURL++3, shortcut: ^, code:
var w = window._content;
var d = w.document;
var str = d.selection?d.selection.createRange().text:d.getSelection();
var txt = '<blockquote>' + str + '<cite>【<a href="' + d.location.href + '" title="' + d.location.href + '">' + d.title + '</a>】</cite></blockquote>';
const CLIPBOARD = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
CLIPBOARD.copyString(txt);
name: GetURL++4, id: xxx_key__GetURL++4, shortcut: Q, code:
var w = window._content;
var d = w.document;
var str = d.selection?d.selection.createRange().text:d.getSelection();
var txt = '<q cite="' + d.location.href + '" title="' + d.location.href + '"><a href="' + d.location.href + '"><strong>' + str + '</strong></a></q>';
const CLIPBOARD = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
CLIPBOARD.copyString(txt);
name: hatena_comment, id: xxx_key__hatena_comment, shortcut: Alt+Ctrl+H, code:
var sourceURL = 'http://b.hatena.ne.jp/entry/' + content.document.location.href;
gBrowser.selectedTab = gBrowser.addTab(sourceURL);
name: LineDown2, id: xxx_key__LineDown3, shortcut: ↓, code:
goDoCommand('cmd_scrollLineDown');goDoCommand('cmd_scrollLineDown');
name: LineUp2, id: xxx_key__LineUp3, shortcut: ↑, code:
goDoCommand('cmd_scrollLineUp');goDoCommand('cmd_scrollLineUp');
name: Open options, id: xxx_key__Open options, shortcut: Ctrl+F12, code:
openPreferences();
name: Paste and Go, id: xxx_key__Paste and Go, shortcut: Ctrl+P, code:
var paste = readFromClipboard();
if(!paste) return;
loadURI(paste);
name: ScrollLeft_n, id: xxx_key__ScrollLeft_n, shortcut: ←, code:
goDoCommand('cmd_scrollLeft');
name: ScrollRight_n, id: xxx_key__ScrollRight_n, shortcut: →, code:
goDoCommand('cmd_scrollRight');
name: Undo Close Tab, id: key_tm_undoClose, shortcut: Shift+F4, code:
TMP_ClosedTabs.undoCloseTab();
name: View Source in New Tab, id: xxx_key__View Source in New Tab, shortcut: Ctrl+U, code:
var sourceURL = 'view-source:' + content.document.location.href;
gBrowser.selectedTab = gBrowser.addTab(sourceURL);
name: ウィンドウを閉じる, id: key_closeWindow, shortcut: Ctrl+Q, code:
BrowserTryToCloseWindow()
name: タブを閉じる, id: key_close, shortcut: F2, code:
BrowserCloseTabOrWindow()
name: プライバシー情報の消去, id: key_sanitize, shortcut: P, code:
gBrowserGlue.sanitize(window || null); TMP_Sanitizer.tryToSanitize();
name: 進む, id: goForwardKb, shortcut: Ctrl+], code:
BrowserForward();
name: 戻る, id: goBackKb, shortcut: Ctrl+[, code:
BrowserBack();

userContent.css(グローバルに適用)

/********* ページ表示後いきなり音楽が再生されるのを防ぐ */
object[data$=".mid"],
embed[src$=".mid"],
object[data$=".mp3"],
embed[src$=".mp3"]
{display:none !important;}
/********* リンクにアイコンつける */
:-moz-any-link[target="_blank"]:before, :-moz-any-link[target="new"]:before {
margin-right: 2px;
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAVElEQVR4nGP0+f+WAR1sYRT6jyGIBpgIKaC6RhZcEv/xOJaRkRIbTRoxA2ILERrpHzgMDQ3/MQAkaPBjrKGKHKKNjQwMZ+rfMVLNqQOUchobSdcIACN5M7J0SyZ/AAAAAElFTkSuQmCC");
}
/********* pre要素のoutline */
pre:focus {
outline: 2px solid blueviolet; !important;
}
/********* リンクのoutline */
:-moz-any-link:focus {
outline: 2px solid blueviolet; !important;
}
/********* フォームのoutline */
input:not([type]):focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="checkbox"]:focus,
input[type="radio"]:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus,
input[type="image"]:focus,
input[type="file"]:focus,
input[type="hidden"]:focus,
textarea:focus,
select:focus {
outline: 2px solid blueviolet !important;
background: #cfc !important;
}
* {
font-family: inherit !important;
}
textarea, input {
font-family: "MS Pゴシック","MS PGothic" !important;
font-weight: bold !important;
}

userChrome.css

/* アクティブなタブの色(background指定はテーマによって無効) */
tab {
-moz-appearance: none !important;
}
tab[selected="true"] > * {
	color:       white  !important;
	font-size:   15px   !important;
	font-weight: normal !important;
}
/* 非アクティブな既読タブの色 */
tab:not([selected="true"]) > * {
	color:     black !important;
	font-size: 15px  !important;
}
/* 未読タブの色 */
tab:not([selected]) > * {
	color:     brown !important;
	font-size: 15px  !important;
}
/* メニューバー (色はテーマによって無効) */
menubar {
	height:           25px    !important;
	background-color: #9f9fd8 !important;
}
/* ツールバーの色 */
toolbar {
	background-color: #9f9fd8 !important;
}
/* タブの縦幅(テーマによって無効) */
.tabbrowser-tabs,tab {
	height: 23px !important;
}
/* タブバー右端のクローズボタン表示非表示 */
.tabbrowser-tabs .tabs-closebutton {
	display: none !important;
}
/* リンクのコンテキストメニューから「リンクを新しいウィンドウで開く」を消す */
#context-openlink {
display: none !important;
}
/* メニューバーの縦幅(ロケーションバーが共存していると、短くする設定は無効になる可能性) */
menubar {
	padding:0 !important;
	margin: 0 !important;
}
menubar > menu, menupopup, popup {
	padding: 0px 1px 0px 1px !important;
	margin:  0               !important;
}
/* ロケーションバーの縦幅とフォントサイズ */
#urlbar {
	height:      30px !important;
	font-size:   18px !important;
}
/* ロケーションバーの縦幅とフォントサイズ */
/* #urlbar {                          */
/* 	max-width:   400px !important; */
/* 	height:      30px  !important; */
/* 	font-size:   18px  !important; */
/* 	font-weight: bold  !important; */
/* }                               */
/* ロケーションバー及び検索ツールバーのフォント */
/* .textbox-input-box {                         */
/* 	font-size:   18px   !important;             */
/* 	font-weight: normal !important;             */
/* }                                            */
/* 検索ツールバーの横幅 */
#search-container, #searchbar {
	width:       450px !important;
	height:      30px  !important;
}
/* 不要なメニュー非表示 */
#main-menubar menu[label="編集"], #main-menubar menu[label="移動"], #main-menubar menu[label="履歴"], #main-menubar menu[label="ブックマーク"], #main-menubar menu[label="Scrapbook"]{
	display: none !important;
}
/* Add a keyword when bookmarking */
#keywordRow {
	display: -moz-grid-line !important;
}

Hit-a-Hint

Firefox最終兵器VimperatorとHit-a-Hint

Opera9.50を困らせるCSS発見

CSSがWebブラウザを機能不全に陥れるとは夢にも思わなかった

これはあくまでも自分の環境で起きる現象であると、あらかじめ予防線を張っておく。
mobile AMD Sempron, 1.6GHz 480MB RAM
WindowsXP SP3
Opera/9.50 (Windows NT 5.1; U; ja)

スタイルオプションはこんな感じ。

Operaスタイルオプション

でもって、以下の自家製UserCSS(ユーザースタイルシート)を原則としてほとんどのWebページに適用していた。

* {
font-family: inherit !important;
}
input, textarea {
font-family: "MS Pゴシック","MS PGothic" !important;
font-weight: bold !important;
}
body {
font-family: 'メイリオ', 'Meiryo' !important;
line-height: 160% !important;
color:       #000 !important;
background:  #ffc !important;
}
a:link {
color:           #900      !important;
text-decoration: underline !important;
}
a:visited {
color:           blue      !important;
text-decoration: underline !important;
}
a[target="_blank"]:before, a[target="new"]:before {
padding-right: 4px;
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAVElEQVR4nGP0+f+WAR1sYRT6jyGIBpgIKaC6RhZcEv/xOJaRkRIbTRoxA2ILERrpHzgMDQ3/MQAkaPBjrKGKHKKNjQwMZ+rfMVLNqQOUchobSdcIACN5M7J0SyZ/AAAAAElFTkSuQmCC");
}
input:focus, textarea:focus, select:focus {
outline: 2px solid blueviolet !important; 
background: #cfc !important;
}
/********* 不快な改行連続を無効にする */
br {
display: run-in;
}

先日、「Amazonの詳細ページとかYahoo!地図をOperaで開くと、CPU使用率100%の状態が延々と続く(後注)と言ったけど、上記UserCSSの最後に書かれているコード、すなわち、

/********* 不快な改行連続を無効にする */
br {
display: run-in;
}

… を取り除いたら、問題が解決した。つまりUserCSSが悪さしていたらしい。
(あと、うちのパソコンの処理能力が低いとか)

後注

誤解のないように言っておくと、Operaがクラッシュするわけではない。

CSSの解釈が変わった?

結論
Opera9.50で、www.amazon.co.jp, www.amazon.com, map.yahoo.co.jp のbr要素に対して display:run-in を適用すると、OperaはCSSの解釈で立ち往生する。

ただし、Opera9.27ではこの現象は起きず、Opera9.50で初めて起きた現象。CSSの解釈が変わったのかもしれない。
本来run-inはブロック要素に使うものであり、それをインライン要素(今回の例で言えば、br要素)に使用することに無理があるんじゃないかなぁ。

当ブログ内の関連エントリ(2008年06月19日以前)

2008年06月22日追記

mattzさんのコメントにあるように、
br+br{display:run-in;}
なら、おk

24時間ダウンロード世界記録を持つソフトウェアは現時点では何?

Mozilla's official community marketing site のひとつである Spread Firefox が "Join us in our mission to set a Guinness World Record for the most software downloaded in 24 hours!" と呼びかけている。
まもなくFirefox3の正式公開が始まると思うんだけど、「じゃあ、24時間でもっともダウンロード回数が多かったソフトウェアは現時点では何なの?」という疑問を持つ人はなぜかほとんどいないらしい。どこのサイトもその名前を発表していない。面倒くさいから、調べないんだろう。
しかたない、自分で調べてみたよ。

Kazaaがダウンロード数世界一に〜CNET Download.com累計で
これはちょっと古い。2003年の INTERNET Watch Title Page の記事。KazaaってのはP2P用のソフトらしい、よく知らないけど。
Top 10 downloads of the past 10 years - CNET.com
おそらく2006年の記事。つまり1996年から2006年までの累計。ICQ, Winamp, Napster に続いてFirefoxの名がある。iTunesや Adobe Reader よりも上位なんだね。
宇多田ヒカルの「Flavor Of Life」、デジタルシングル売上で世界一に - INTERNET Watch Title Page
EMI、宇多田ヒカル楽曲の年間ダウンロード総数が9月末で1,000万件を突破 - INTERNET Watch Title Page
世界一は宇多田ヒカルだって。本当ですか。うーん …

というわけで、現時点での24時間ダウンロード回数の世界記録というのはわかりませんでした。

おまけ、その1

「24時間でどれだけダウンロードされるか」という瑣末なことをカウントした暇人が今まで一人もいなかった、というオチであったら、私、軽く怒りますよ。

おまけ、その2

"Guinness World Records"(通称「ギネスブック」)ってのはアイルランドのビール会社 Guinness & Co. の関連会社である Guinness World Records が出版している本なんだってさ。そういえばギネスっていう名前のビールを飲んだことがあるなぁ。

Opera9.51に期待

Amazonだめ、Yahoo!地図だめ。
Opera9.50をOpera9.27に上書きインストールしたのがいけなかったんだろう、と判断し、クリーンインストールしてみた。
ブックマーク、ブックマークレット、検索エンジン、パスワード、Cookie等の移行は成功。

  1. C:\Documents and Settings\userid\Application Data\Opera\Opera\profile\keyboard の中のキーボードショートカット設定は読み込まれる。
  2. C:\Documents and Settings\userid\Application Data\Opera\Opera\profile\styles\user の中のユーザースタイルシートは読み込まれる。
  3. C:\Documents and Settings\userid\Application Data\Opera\Opera\profile\menu の中のmenu.ini が読み込まれない。例によってどこか根本的に間違ったことをやってる可能性が高いけどね。
  4. スキンについて言えば、ステータスバーに配置した自家製ボタンが出てこなくなってしまった。これももう1回勉強しなおさないと。

いちばん困ったのがAmazonとYahoo!地図が相変わらずダメであること。やっぱりCPU使用率100%で落ちる。
他に同様の現象が出ている人がいるかどうか確かめる気力もないよ。Opera9.51に期待します。

2008年06月19日追記

menu.iniが読み込まれない件は解決した。
AmazonとYahoo!地図がだめだめである件はユーザースタイルシートが原因。詳細は「Opera9.50を困らせるCSS発見」に書いた。

2008年06月24日追記

ステータスバーに配置した自家製ボタンを元の状態に戻すことに成功。
Opera9.27のときに使ってた設定(バックアップずみ)をprofileフォルダ内のstandard_toolbar (2).iniの中にペーストしたら、復活した。

Opera9.50の spatial navigation は改善の余地あり

デスクトップ用Opera9.50の spatial navigation 。モバイル機器みたいに青い輪郭線(と呼べばいいのかな?)でリンクを囲むので、見やすくなった。しかしテキストアンカーが途中で改行される場合、むしろ見づらくなる。

下は Highlight next URL というアクションを数回実行したときのスクリーンショット。

Operaスクリーンショット

Operaスクリーンショット

Operaスクリーンショット

2番目の状態だと青い線が邪魔で、どこにフォーカスが当たってるのか判断しにくい。これだったら以前のようにテキスト反転表示だけのほうが良い。

おそらくこの問題を根本的に解決する方策はない。私が Opera Software のプログラマーだったら、青い線を無効にするオプションをつくります。

当ブログ内の関連エントリ(2008年06月14日以前)

脆弱性を修正したOpera9.5を使うべし

Secunia曰く「脆弱性を修正したOpera9.5を使いましょう」
というわけで、きのう(2008年06月12日)正式公開されたOpera9.5の感想をざっと書いてみる。

  1. 履歴上の「戻る/進む」が以前にも増して高速になったような気がする。
  2. YouTubeのオブジェクトをたくさん貼り付けているページを開いたとき、すべてのオブジェクトがちゃんと表示されるようになった()。
  3. アドレスフィールドに文字をタイプするとブックマークから候補を引っ張ってくる仕様は、便利といえば便利かも。
  4. zoom in または zoom out してからカーソルキー (arrow key) でページを垂直方向にスクロールすると、フォントがにじむことが以前はあった。それが改善された。
  5. やっとGmailと Google Reader がまともに使えるようになった ^^
  6. 頼みもしないのに、ステータスバーに zoom, mediumscreen, display images のボタンが登場しやがった。Opera初心者には良い配慮。
  7. キーボードでの spatial navigation 。以前はテキストが反転表示されるだけだったけど、まわりに青い輪郭が出るようになった。下記スクリーンショットに示すように、改良というか、改悪というか。
  8. spatial navigation に関してもう1点。フォーカス移動が行き詰ってしまうページがある。たとえば「教えて!goo」のこのページ。これはwww.goo.ne.jpのHTMLまたはCSSに問題がありそう。
  9. Opera_exダメポ
  10. わが家の非力なパソコンだけで起きている現象だろうけど、amazon.co.jp, amazon.com で商品の詳細を開くと、100%の確率で落ちるようになった orz

spatial navigation スクリーンショット
青い輪郭線は視認性が高いけど、
これでは、どこがフォーカスされてるのか判別しにくい。

タスクマネージャの スクリーンショット

Opera/9.50 (Windows NT 5.1; U; ja)

2008年06月19日追記

AmazonとYahoo!地図に関しては解決した。ユーザースタイルシートがOpera不調の原因だった。詳細は「Opera9.50を困らせるCSS発見」に書いた。

Google
WWW ArtSaltのサイドストーリー
このブログについて

最近のエントリ

カテゴリー
あわせて読みたいブログ

あわせて読みたい

最近のコメント
Internet Explorer
よりも便利です

Opera 9 - Always secure with Opera Firefoxをダウンロード!!
Firefox meter

相互リンク