So-net無料ブログ作成
RSS [RSS1.0] [RSS2.0]
共謀罪を含む改悪組織犯罪処罰法は
【「共謀罪」法 衆参両院議員の投票行動(東京新聞 2017/6/16)】

”-no-remote”付きで起動したFirefoxが日本語入力を拒否する

 Firefox を 55.0(64ビット) にアップデートしてから日本語が入力できなくなった。いろいろと試したら、「詳細なテキストサービス」をオフにした「MS Office IME 2010」では"-no-remote"付きで起動したFirefoxで日本語を入力できないらしい。アップデート前は問題なかった。「詳細なテキストサービス」を使用する設定であれば、"-no-remote"付きで起動したFirefoxに「MS Office IME 2010」で日本語を入力できる。現在は、そのように対処している。

 この問題は報告されていないのかインターネットで検索したら次のページを見つけた。

Google日本語入力で日本語の入力が出来なくなりました。
Microsoft IMEの場合は正常で、Google日本語入力とBeta版の組み合わせでのみ発生します。
通常版やそれ以外のソフトでは一切発生しません。

最近発生した問題で「基本的なトラブルシューティング」など思いつく限りのことはしましたが、治りませんでした。
何かご存知の方がいらっしゃいましたら、教えて頂けますと幸いです。

環境
・Windows7 SP1 x64
・Firefox Beta 55.0b9
・Firefox 54.0.1

試したこと
・基本的なトラブルシューティングの内容すべて
・ウイルス対策ソフトの削除
・Windows Update
・Google日本語入力の再インストール

MozillaZine.jp フォーラム • トピック - Beta版とGoogle日本語入力の組み合わせで日本語が入力できない

b10になっても全然治らないから変だと思って
調べたらここ見て-no-remoteがIMEに影響するというコメント見て
-pのみで直接プロフィール選択して起動したらIMEで日本語入力が普通にできたので

私の方でも-no-remoteがIMEに影響して日本語入力がバグったのは再現性アリで確定しました
本家で不具合報告してくれる人いないかな
こういうFirefoxの挙動に詳しい人いないのかな

MozillaZine.jp フォーラム • トピック - Beta版とGoogle日本語入力の組み合わせで日本語が入力できない

bugzilla にバグを上げようと思ったのですが、再度最新の Nightly 56.0a1 build:20170721030204
で確認したところ、最初反応しなかったのですが、既定IMEを切り替えてるうちにGoogle 日本語入力がオンにできるようになりました。
修正されたのか、たまたまなのかわかりませんが、様子を見たいと思います。

MozillaZine.jp フォーラム • トピック - Beta版とGoogle日本語入力の組み合わせで日本語が入力できない

b13 -no-remoteで起動するとまだIME駄目ですね
55はこのまま日本語だめなのにリリースされちゃうのかな

MozillaZine.jp フォーラム • トピック - Beta版とGoogle日本語入力の組み合わせで日本語が入力できない

なにぶん、Windows 10 では問題ないですし、ふつうは -no-remote 付けませんし、Google 日本語入力だけですから。
56 では大丈夫だったのでバグ報告はしませんでした。
一応、Mozilla の人に話してみましたが、後回しになってるようです。

MozillaZine.jp フォーラム • トピック - Beta版とGoogle日本語入力の組み合わせで日本語が入力できない

 「Nightly 56.0a1 build:20170721030204」では無いけれど既定IMEを切り替えてるうちに直らないかと、「MS Office IME 2007」や「MS Office IME」を追加して変更したら日本語入力できた。しかし、「MS Office IME 2010」に戻したら日本語を入力できなかった。
 その際に奇妙なことに気付いた。IMEのツールバー(言語バー)が二つも表示されていた。

言語バーが二つ

 下の言語バーが「MS Office IME 2010」を使っていた通常の言語バーであり、IMEを切り替えることができる上の言語バーが新たに追加された言語バーである。「MS Office IME 2010」も通常は上の言語バーと同じである。しかし、私は「詳細なテキストサービス」の設定で「詳細なテキストサービスを使用しない」を選択しているので下のツールバーになっている。

詳細なテキストサービスの設定

 「詳細なテキストサービス」の設定を「詳細なテキストサービスを使用する」に変えると下のツールバーは表示されなくなる。そして、「MS Office IME 2010」でも"-no-remote"付きで起動したFirefoxで日本語を入力できるようになる。
 しばらくは「詳細なテキストサービス」の設定を「詳細なテキストサービスを使用する」ことで対処するが、私は「MS Office IME 2010」の通常の言語バーが好きではない。一番の理由は、半角のアルファベットなどを入力して言語バーを使ってないときに言語バーが半透明になるだけで非表示にならないからである。「詳細なテキストサービスを使用しない」を選択している時に表示される言語バーは非表示にすることができる。タスクバーに入れられない欠点が批判されることもあるが、次のサイトで紹介されている方法を使うと、タスクトレイ(通知領域)に格納できてコンパクトになる。

Windows7(x64)の邪魔なIME言語バーをタスクトレイ(通知領域)に入力モードのみ小さく表示させる

 残念ながらFirefox を 55.0(64ビット) にアップデートしてからは「詳細なテキストサービスを使用しない」にすることはできないので、通知領域に格納するのは諦めなければいけない。次回のアップデートで改善されることを期待するしかない。ただ、上記の「MozillaZine.jp フォーラム」の議論を見ると、少なくとも56.0にアップデートするまでは待たなければいけないかもしれない。

続きを読む


タグ:不具合 Firefox
nice!(1)  コメント(0) 
カテゴリー:サイトを見て
共通テーマ:パソコン・インターネット

FirefoxでFlashの音声が聞こえないことがある

 FirefoxでNHKの動画を見た時に音声が聞こえなかった。動画のボリュームはオフになっていない。音量ミキサーで確認したがミュートになっていない。IE11で確認したら音声が聞こえた。Firefox 53.0(64ビット)に変えてからFlashの音量を音量ミキサーで調整できなくなった仕様変更を思い出した。NHKの動画はFlashである。以前(2017/4/24)はFlashの音量が小さくなっていて問題に気付いた。

 複数のプロファイルでFirefoxを起動して、一つのプロファイルでFlashを再生した時に音量ミキサーで音量を下げたら、その設定が全てのプロファイルに残ってしまって、音量ミキサーで見るとスライダーが下がっていないにもかかわらず、Flashを再生した時だけは音量が小さくなっているバグだった。

 今回(2017/6/3)は音が全く聞こえないトラブルだった。

 以前(2017/4/24)の音が小さくなっていたトラブルから次のバグを予想した。複数のプロファイルでFirefoxを起動して、一つのプロファイルでFlashを再生した時に音量ミキサーでミュートしたら、その設定が全てのプロファイルに残ってしまって、音量ミキサーで見るとミュートされていないにもかかわらず、Flashを再生した時に音が出ないバグだろう。バグの再現は難しかったが、何とか再現した。

 GIFアニメなので音が聞こえないが、Flashの再生中にPCから音が出ているかどうかは音量ミキサーの「スピーカー」の所を見れば分かる。GIFアニメの最後でFirefoxの所をいったんミュートにしてから元に戻しているが、その手順の後は音が出ている。その様子は「スピーカー」の所を見れば分かる。

 対処法が分かったのでもう騒がないと思うが、できれば改善してほしい。以前のようにFlashの音量を音量ミキサーでFirefoxの音量とは別に調整できるようにしてくれれば、このようなトラブルは起こらないだろう。以前のように戻すのが嫌ならば、FirefoxでFlashの音量も調整できるようにしてほしい。Firefoxの開発者はFlashのプラグインも使えないようにする方向で開発しているのだろうから期待できないが…。

 最後に、Firefox 53.0.3とFlash Player 25.0.0.171 と音量ミキサー(Windows 7用)の微妙な三角関係のGIFアニメを並べておく。制限要領を超えていてブログにはアップロードできないので、代わりにアップロードしたツイートを並べておく。以前(2017/4/24)もツイッターに並べたが、今回は音量ミキサーを開きっぱなしにして前回のブログのリンクをクリックして確認した。別プロファイルのFirefoxでFlash動画を再生したら音量ミキサーにもう一つFirefoxのアイコンが表れてしまうバグと、別プロファイルの方を閉じたのに音量ミキサーからFirefoxのアイコンが消えないバグも重なっている。


Firefoxでタブをミュートできないことがある

 Firefox 53.0(64ビット)に変えてからFlashの音量を音量ミキサーで調整できなくなった。ちなみにOSはWindows 7 である。他のOSについては知らない。IE11では以前からFlashの音量はIE11の音量で調整していたのだが、Firefoxでも同じになったと思ったら少し違った。IE11ではウインドウ毎に音量を調整できるのに対して、Firefoxでは別々に調整することはできない。この仕様変更が53.0になってからなのか、64ビットに変えたからなのかは確認していない。とにかく、Flashの音量を音量ミキサーで調整できなくなったのは困った仕様変更である。私はFlashの音量だけを常に小さくしていたのだが、それが不可能になった。対案は、Flashを再生しているタブをミュートすることだが、その確認の最中にバグのようなものを見つけた。

 次の Flash sample ページを開くと、埋め込まれたFlashが再生して音が鳴る。とにかく、20秒以上再生してほしい。

 20秒以上再生したら、タブのスピーカーボタン(表示されないことがあるので注意)をクリックするか、タブの上で右クリックしてから「タブをミュート」を選択してほしい。ちゃんとミュートされただろうか。私の環境では音が消えなかった。しかし、Flashの再生が終了して最初に戻ったタイミングで音が消える。「タブのミュートを解除」も同様である。Flashの再生が終了して最初に戻ったタイミングで音が鳴る。
 Flashが再生されてから終了するまでの20秒以内であれば「タブをミュート」や「タブのミュートを解除」に問題は無さそうである。

 上のサンプルと同じ問題が生じるサンプルを探したのだが見つけられなかった。他に無ければ問題ないと思うが、例えば急に大音量でFlashムービーのCMが再生された時にミュートできないと困る。大丈夫だろうか。

 ところで、例えば、IE11で再生している動画の音量を変えずにFirefoxの音量だけを下げたい時、音量ミキサーを開いてFirefoxのアイコンを見つけてスライダーを下げていたら面倒なので、私はFirefoxに音量切り替え機能を追加した。

追記(2016/2/13):

 Firefoxを44.0にアップデートしてから【Custom Buttons】が使えなくなったので、代わりに about:config の値をツールバーのメニューで変えられるアドオン【PrefBar】をインストールして、次のように security.csp.enable の切り替えチェックボックス(CSP)と media.volume_scale の変更メニュー(音量)を PrefBar に追加した。

PrefBarにCSPの切り替えボタンと音量変更ボタンを設置

追記(2016/3/28):

PrefBarで音量調整したいのですが、カスタマイズ方法が分かりません。良ければ方法を教えて下さい。
by wan (2016-03-28 21:33)

 私は次のように設定しています。

PrefBarの音量変更ボタンの設定

 PBのメニューで「カスタマイズ」を選択すると追加できるボタンのリストが登場しますが、そのメニューの中で右クリックすると「編集」や「コピー」などのメニューがあるので、その中から「作成」を選択して、表示されたメニューの中から「メニューリスト」を選択します。
 その後は上の図のように入力したら、音量変更ボタンができました。

Firefoxに音量切り替えボタンを設置

 しかし、この方法ではHTML5動画の音量しか調整できない。Flashの音量についても media.volume_scale に相当するものがあれば良いのだが見つからない。どうにかFlashの音量をFirefox内で調整したいのだが、良い方法は無いだろうか?


ついっぷる、Twilog、favologをTwitter公式埋め込み表示に変えるブックマークレット

 ついっぷる、Twilog、favolog内のツイートをTwitter公式の埋め込み表示に変えるためのブックマークレットを作った。例えば、Twitter公式のホームタイムラインではツイートの取得漏れがあって見逃してしまうのでついっぷるを使いたいけれど画像を確認する手間が面倒な場合に、ついっぷる内でTwitter公式の埋め込み表示に変えちゃえば楽になる。Twilog、favologでは必要なツイートを検索した後に、Twitterカードによるリンク先の情報も一度に確認したいなど、Twitter公式の表示でしか見られないものをTwitter公式ページを開かずに見ることができる。

埋込表示(元のツイートを含める場合)
埋込表示(元のツイートを含めない場合)

 それぞれのソースは次の通り。見やすいように改行やスペースを追加した。また、ついっぷる、Twilog、favologの仕様変更で、このブックマークレットは使えなくなる可能性もあるので、注意が必要。

元のツイートを含める場合

javascript:
(function(){
var url=document.location.href;
switch(url.split("/")[2]){
    case "twilog.org":
        var tweetclass="tl-tweet";
        var linkclass="tl-posted";
        var turn=0;
    break;
    case "favolog.org":
        var tweetclass="tl-tweet";
        var linkclass="rtime";
        var turn=0;
    break;
    case "twipple.jp":
        var tweetclass="tweetBox";
        var linkclass="tweetBottomInfo";
        var turn=0;
    break;
}
var script=document.createElement("script");
script.src="//platform.twitter.com/widgets.js";
script.charset="utf-8";
script.async="async";
document.body.appendChild(script);
var gettweet=document.getElementsByClassName(tweetclass);
for(var i=0;i<gettweet.length;i++) {
    var link=gettweet[i].getElementsByClassName(linkclass)[0];
    if(typeof link!=="undefined") {
        var id=gettweet[i].getAttribute("id");
        link=link.getElementsByTagName("a")[turn].outerHTML;
        document.getElementById(id).innerHTML='<blockquote class="twitter-tweet" data-lang="ja">'+link+'</blockquote>';
    };
};
alert("There are "+i+" tweets.");
})();

元のツイートを含めない場合

javascript:
(function(){
var url=document.location.href;
switch(url.split("/")[2]){
    case "twilog.org":
        var tweetclass="tl-tweet";
        var linkclass="tl-posted";
        var turn=0;
    break;
    case "favolog.org":
        var tweetclass="tl-tweet";
        var linkclass="rtime";
        var turn=0;
    break;
    case "twipple.jp":
        var tweetclass="tweetBox";
        var linkclass="tweetBottomInfo";
        var turn=0;
    break;
}
var script=document.createElement("script");
script.src="//platform.twitter.com/widgets.js";
script.charset="utf-8";
script.async="async";
document.body.appendChild(script);
var gettweet=document.getElementsByClassName(tweetclass);
for(var i=0;i<gettweet.length;i++) {
    var link=gettweet[i].getElementsByClassName(linkclass)[0];
    if(typeof link!=="undefined") {
        var id=gettweet[i].getAttribute("id");
        link=link.getElementsByTagName("a")[turn].outerHTML;
        document.getElementById(id).innerHTML='<blockquote class="twitter-tweet" data-conversation="none" data-lang="ja">'+link+'</blockquote>';
    };
};
alert("There are "+i+" tweets.");
})();