Quantcast
Channel: すぐに忘れる脳みそのためのメモ
Viewing all 383 articles
Browse latest View live

ブラウザで動画の再生中に周囲を暗くする Turn Off the Lights - 動画の検出と、暗さの調整

$
0
0

1. 動画の周囲を暗くしたい

SnapCrab_No-0109Turn Off the Lightsは、ブラウザで動画を再生中に、映像の周りを暗くしてくれるアドオン(拡張機能)。動画の周囲が暗いと、映像が見やすくて眼が疲れにくい。

このアドオン(拡張機能)は、複数のブラウザに対応している。

インストールすると、ブラウザのどこかに Turn Off the LightsのアイコンSnapCrab_No-0103が表示される。Firefox ではアドオンバーに、Google Chrome ではロケーションバーに置かれた。

動画の再生中にアイコンSnapCrab_No-0103を押すと、映像の周囲を暗くしてくれる。

 

2. 動画を検出して、暗さを調節

a. 動画を検出する

多くの動画サイトに対応しているが、中にはアイコンをクリックすると、映像も含めて画面全体が暗くなるサイトがある。

この場合、アドオンのオプションで予め設定しておく

  • オプション > 詳細オプション

において、「Flash コンテンツを検知する」の選択肢で

「全ての Flash コンテンツを表示する」

を選択する。

SnapCrab_No-0102

 

b. 周囲の暗さを設定

次に、動画の周囲を暗くする程度を設定できるようにする。

上記と同じ設定画面 において、「暗度調節バー」の選択肢で、

暗くしているときに調節バーを常に表示する。

を選択する。

暗さを設定するために、適当な動画を再生し、画面右下に Turn Off the Lights の設定ペインが表示されら値を設定する。ここでは、値を 85 とした。

Firefox の場合、スライダーが表示されなかったので、数値を直接入力した。

SnapCrab_No-0107

暗さの設定をした後は設定ペインの右上にある ー をクリックすると、設定ペインが小さくなる。


Flash Player の設定ダイアログで「許可」ボタンを押せない - Web サイトの記憶領域設定の削除

$
0
0

1. ローカル記憶領域の設定

SnapCrab_No-0118Firefox で ニコニコ動画を再生しようとしたら、「Flash Player の設定ダイアログ」が表示され、動画を再生できない。

バージョンは Firefox 19.0.2、Adobe Flash Player 11.6.602.180 。

「Adobe Flash Player 設定」ダイアログには、「ローカル記憶領域」(ローカルストレージ)に対する「許可」「拒否」の選択肢が表示されるが、ボタンを押すことができない。

Adobe - Flash Player:ヘルプ - ローカル記憶領域の設定によると、

Adobe Flash Player で実行されるアプリケーションで、何らかの情報をコンピューターに保存することが必要になる場合があります。

ただし、ユーザーが追加容量の割り当てに合意しない限り、アプリケーションで使用できる容量は 100 KB に制限されています。

ローカル記憶領域の設定では、特定の Web サイトのアプリケーションがコンピューターに情報を保存する際に使用できるディスク容量を指定できます。

 

2. クッキーと、サイトの記憶領域の削除

これに対して、以下の操作を行い、動画を再読み込みしたら正常に再生されるようになった。

  1. Firefox の「クッキーを全て削除」:
    • Firefox のオプション > プライバシー > 「Cookie を個別に削除」 > 「すべての Cookie を削除」ボタンを押す。
  2. Flash Player の「ウェブサイトの記憶領域を全て削除」:
SnapCrab_No-0119

 

参考サイト

CD-ROM から ISO イメージファイルを作成し、イメージファイルをマウントする - ISO Workshop と WinCDEmu を利用してファイル共有によりデータを受け渡す

$
0
0

1. CD-ROM でデータを渡せなかったので、イメージファイルを共有する

ある CD-ROM のデータをコピーした。コピーを作成した PC で、コピーした CD-ROM を読み込めたが、他の PC でそのCD-ROM を認識することができなかった。

そこで、CD-ROM の中身を「イメージファイル」にして受け渡すことにした。手順は、

  1. 「CD-ROM をコピーした PC」で、CD-ROM から ISO イメージファイルを作成。
  2. ISO イメージをファイル共有。
  3. 「CD-ROM のデータを読み込みたい PC」で、共有された ISO イメージをマウント。

 

2. ISO Workshop でイメージファイルの作成

a. ISOイメージ

ISOイメージ – Wikipediaとは、

ISOイメージは、国際標準化機構 (ISO) の定義した形式の光ディスクアーカイブファイル(ディスクイメージ)。…

正しいISOイメージは圧縮していない各種ファイル群を所定の標準フォーマットで1つのファイルにまとめたものである。

ISOイメージの最も重要な特徴は、ライティングソフトウェアを使ってDVDやCD、BDに容易に書き込むことができる点である。7-ZipWinRARといったアーカイバでも対応している。ISOイメージでCD/DVD/BDに書き込むことは、最近のパーソナルコンピュータのOSでは基本的機能の1つとなっている。

 

b. ISO Workshop

SnapCrab_No-0140ISO イメージファイルを作成するために、GlorylogicISO Workshopを用いた。

ISO Workshop : Blu-ray対応のISOイメージ作成、物理ディスク書き込みソフト | フリーソフトコミュによると、

  • マウントせずにイメージファイルから中のファイルを直接参照、取り出し
  • 物理ディスク(CD,DVD,Blu-ray)からISOまたはBINイメージへのバックアップ
  • あらゆる形式のイメージファイルをISOイメージに変換
  • ISOイメージファイルからCD、DVD、Blu-rayの物理ディスクを作成
  • 変換後のベリファイ機能
  • CPUの低負荷での処理
  • サポートディスクイメージフォーマット : iso, bin, nrg, cdi, mdf, img, dmg, gi,pdi, b5i, b6i

Downloads | Glorylogicより、ISO Workshop をダウンロードしてインストール。

 

c. CD から ISO イメージを作成

ISO Workshopを起動し、Backupを選択する。

SnapCrab_No-0139

ISO イメージファイルを作成する場所(Destination image file)を指定し、Backupボタンを押す。

これにより、拡張子が .isoであるイメージファイルが作成された。その後、イメージファイルがあるフォルダを共有した。

 

3. WinCDEmu でイメージファイルをマウント

SnapCrab_No-0143ISO イメージファイルをマウントするために、「データを受け渡す先の PC」に WinCDEmuをインストールした。

小さいけど十分便利。ISOなどを仮想ドライブにマウントできるツール WinCDEmuによると、

WinCDEmuは、数クリックでISOやCUE、BINなどのイメージファイルをマウントできるフリーソフト。超シンプルなツールでWinCDEmuのインストーラーはわずか667kb。
(このジャンルで一番メジャーなDAEMON Tools Liteは、約6.4MB)
操作もファイルサイズも、シンプルですが高機能なツールです。

SnapCrab_No-0144高機能な OSFMountもあったが、使い勝手のシンプルな WinCDEmuを利用することにした。

無料で仮想マシンやISOイメージファイルをマウント可能にする「OSFMount」 – GIGAZINEによると、

VMwareの仮想マシンのVMDKイメージファイルやISO・NRG・AFFイメージファイルなどをマウントできるフリーソフトが「OSFMount」です。VMDKイメージファイルをマウントさせれば、わざわざ仮想マシンを起動せずに、仮想マシンのファイルの確認やファイルを取り出せます。

 

イメージファイルを右クリックしてマウント

SnapCrab_No-0142イメージファイルをマウントするには、

  • ISO イメージファイルを右クリック > Select drive letter & mount

を選択する。

「CD/DEVイメージのマウント」ダイアログが表示されたら、OK ボタンを押す。デフォルトでは、V: ドライブにマウントされる。

これにより、CD-ROM のデータを受け渡すことができた。マウントしたデータが必要なくなったら、V: ドライブを右クリックして、「取り出し」を選択。これにより、V: ドライブは消える。

Haskell で callCC 関数 - 「継続渡しスタイル」をつなげた計算を途中で破棄する

$
0
0

1. Haskell で callCC の定義を考える

これまで Haskell による「継続渡しスタイル」の計算と、その計算を「つなげる」関数について見てきた。

  1. 継続渡しスタイル (CPS)
  2. 「継続渡しスタイル」の計算をつなげる関数

今回は、「継続渡しスタイル」をつなげた計算の流れをコントロールする関数である

callCC

について考える。

 

a. callCC 関数の大雑把なイメージ

はじめに、定義したい関数の大雑把なイメージをしておく。

前回までの復習

「継続渡しスタイル」の計算では、関数が「目的とする結果」を単純に返さない。関数が「目的とする結果」を得るために必要な引数に加え、「目的とする結果を与える関数」を引数に与えることにより、「目的とする結果」の利用先を指定する。

「継続渡しスタイル」の関数に、「目的とする結果」を得るために必要な引数を与えたときの関数の型は、

(a –> r) –> r

型変数 a が「目的とする結果」。関数 a –> r は「目的とする結果を与える関数」。

型が複雑なので、この型に対して別名を付けておく。

type Cont r a = (a -> r) -> r

先回、このような型の計算を「つなげる」 comb 関数を定義した。型のみ示す。

comb :: Cont r a -> (a -> Cont r b) -> Cont r b

SnapCrab_No-0152

comb 関数は、「継続渡しスタイル」の計算を「つなげた」結果、再び「継続渡しスタイル」の計算になるように定義した。そのため、同じ comb 関数を使い、「継続渡しスタイル」の計算を次々につなげていくことができる。

SnapCrab_No-0155

callCC の動作イメージ

今回、定義したい callCC 関数は、計算の流れを分岐させることを目的とする。「つながっている計算」における「任意の時点の計算結果」を、別の計算へとつなげる。

SnapCrab_No-0151

 

b. モナドについて考えない

callCC 関数は Control.Monad.Cont.Classに定義されている。

Continuation モナドによると、

MonadContクラスは callCC関数を提供します.この関数は,Continuation モナド用の脱出継続機構を提供するものです.脱出継続は現在の計算を中断し,即座に値を返します.これにより,Errorモナドでの throwErrorおよび catchError に類似した効果が得られます.

callCC の定義は、以下のように示されている。

callCC f = Cont $ \k -> runCont (f (\a -> Cont $ \_ -> k a)) k

ここではモナドについて考えず、「継続渡しスタイル」の計算をつなげ、「つなげた計算を途中で脱出する」という観点から、callCC がなぜこのように定義されているかについて考える。

 

2. Scheme における call/cc の動作を確認する

予め Scheme における  call/cc について確認しておく。

Scheme では、計算の「任意の時点における継続」を取り出すことができる。継続を取り出すための手続きは

Call-with-current-continuation

略して、

call/cc

と呼ばれる。

Scheme の特徴的は、計算を「継続渡しスタイル」で記述しなくても、call/cc により通常の計算式に対して、任意の時点で継続を取り出せること。

Scheme 入門 16. 継続には、一般的な「継続渡しスタイル」の計算と比較しながら、「Scheme の継続」と call/cc について、次のように述べられている。

継続はクロージャの連鎖です。

しかし、継続渡しスタイルでプログラムを読み書きするのはわずらわしいので、 通常の書き方のプログラムで継続を扱えると便利です。

そこで、Scheme では継続はファーストクラスオブジェクト(つまり普通の変数)として実装されており、 call-with-current-continuation という関数を使って任意の時点での継続を取り出すことができます。また、取り出した継続は好きなだけ再利用することができます。

 

a. call/cc を使わない計算式

SnapCrab_No-0173例えば、次の簡単な計算を元にして、call/cc の動作を確認する。

(display
 (- (* (+ 1 2) 3) 4))   ;=> 5

Scheme は「内側の括弧から外側へ」と評価がされる。そのため、上記の式は次の順序で計算が進む。

  • 1 + 2 => 3
  • 3 * 3 => 9
  • 9 – 4 => 5

それぞれの演算子に対応した「計算方法」と「結果」があり、結果が「後続の計算」に与えられる、と見なせる。

 

b. 「継続」を呼び出さない場合

先ほど述べたように、Scheme では「継続渡しスタイル」で計算を記述しなくても、任意の時点における「継続」を call/cc で取り出すことができる

SnapCrab_No-0175例えば、上記の計算に対して、次のように call/cc を呼び出し、「継続」を取り出すことができる。

(display
 (- (call/cc(lambda (exit)
       (* (+ 1 2) 3)))
    4))   ;=> 5

この call/cc 手続きにより取り出された「継続」は、

「ある値から 4 を引いた結果を表示する」

こと。Scheme の call/cc 手続きは、「継続」が call/cc に与えるラムダ式の「引数」に与えられる。(ここでは引数 exit )

上記の計算の場合、ラムダ式本体で「継続」 exit の呼び出しを行なっていない。このとき、ラムダ式本体を評価した結果が返される。計算は先ほどと同じように、次の順序で行われる。

  • 1 + 2 => 3
  • 3 * 3 => 9
  • 9 – 4 => 5

call/cc により継続を取り出したが、継続を全く活用していない。

 

c. 「継続」を呼び出す場合

SnapCrab_No-0176次に、継続を call/cc に与えたラムダ式本体で呼び出す場合の動作を確認する。

(display
 (- (call/cc(lambda (exit)
       (* 
        (exit (+ 1 2)) 
        3)))
    4))   ;=> -1

先ほどと違い、「 1 と 2 を足した結果」から、「 4 を引いた結果が表示」された。

注目する点は、call/cc に与えたラムダ式本体にある「 3 をかける計算」が行われなかったこと。継続 exit を呼び出すことにより、計算が途中でキャンセルされ、実行位置がジャンプしたように見える。

計算は次の順序で行われる。

  • 1 + 2 => 3
  • 3 – 4 => –1

先ほどの計算と比べると、

  • 1 + 2 => 3
  • 3 * 3 => 9   ← この式の実行がキャンセルされた
  • 3 – 4 => –1

 

d. call/cc のまとめ

call/cc 手続きの呼び出しをまとめると、call/cc の評価結果を次のように見なせることが分かる。

call/cc に与えるラムダ式の本体において、

  1. 「継続」が呼び出されない場合、ラムダ式本体が通常通り評価され、その結果が call/cc を呼び出した結果となる。そのため、call/cc 手続きの呼び出しがあってもなくても計算結果は同じ。
  2. 「継続」が呼び出される場合、継続に与える値が call/cc を評価した結果となる。

 

3. Haskell で callCC を定義する

Scheme の call/cc 手続きを参考にして、Haskell で同じような関数を定義したい。

繰り返すが、Scheme では通常の計算に対して、call/cc により「任意の時点における継続」を取り出すことができる。「継続渡しスタイル」の計算を明示的に記述し、継続を扱う必要はない。

Haskell では、通常の計算に対して、継続を取り出す関数は用意されていない。そのため、Scheme のように継続を扱うためには、「継続渡しスタイル」の計算において考えなければならない。

Scheme の call/cc 手続きに相当する関数を Haskell で定義するには、「継続渡しスタイル」の計算の「つなげ方」をコントロールすることにより実現する。

 

a. callCC に与える引数について

Scheme の call/cc に相当する関数を、Haskell で callCC 関数として定義する過程を考える。

最初に call/cc 手続きに与えるラムダ式に注目する。先ほどの Scheme の例(「継続」を呼び出す場合)を再掲。

(display
 (- (call/cc(lambda(exit)
       (* 
        (exit(+ 1 2)) 
        3)))
    4))   ;=> -1

ここで、以下の点について確認しておく。

  1. call/cc に与える引数は「関数」である。
  2. その関数は「一つの引数(ここでは exit )」をとる。
  3. 引数 exit には call/cc を呼び出した時点の「継続」が与えれる。
  4. 「継続」は、値を一つとる関数である。

 

4. 「継続」を適用しない場合

次に、Scheme で call/cc 手続きに与えるラムダ式本体で、「継続を呼び出さない」場合を参考にしながら、Haksell の callCC の定義を考えていく。

(display
 (- (call/cc(lambda(exit)
       (* (+ 1 2) 3)))
    4))   ;=> 5

まずは、この関数と同じ内容の計算を Haskell で定義してみる。

 

a. Haskell で継続渡しスタイルの計算

先ほど述べたように、Scheme では継続渡しスタイルで call/cc 手続きを考えなくても良い。しかし、Haskellでは「継続渡しスタイル」で考えなければならない。

予め、「継続渡しスタイル」にする関数と、「継続渡しスタイル」を「つなげる」関数が、以下のように定義されているとする。

ret x = \k -> k x
comb m n = \k -> m (\x -> n x k)

また、上記の関数を元に、継続渡しスタイルの「足し算・かけ算・引き算」が用意されているとする。

add_cps x y = ret $ x + y
mul_cps x y = ret $ x * y
sub_cps x y = ret $ x - y

 

b. callCC 関数を適用した場合を想像する

SnapCrab_No-0177そして、callCC 関数を次のように使うと想定する。

main = print $ ((callCC $ \exit ->
                 add_cps 1 2 `comb` \x ->
                 mul_cps x 3) `comb` \y ->
                sub_cps y 4) id

最初に callCC 関数に与えられる「無名関数」 に注目。

\exit –> …

これより、callCC 関数に与える引数 f を想定できる。

callCC f =

SnapCrab_No-0179

この「無名関数」 の引数 exit が callCC 関数を適用した後の「継続」を導く。

  1. exit 関数を適当な値に適用すると、
  2. callCC 関数を適用した後の「継続」に値を与え、
  3. exit 関数以降の計算はキャンセルされる。

という仕組みを考えていく。

 

c. callCC の定義

上記の「無名関数」の引数は1つ ( exit ) なので、次のような形で定義できる。

callCC f = f 

ここでは の中身について、とりあえず考慮しない。

繰り返すが、 Haskell では「継続渡しスタイル」の計算の「つながり」に対して callCC 関数の定義する。

SnapCrab_No-0151もし、callCC 関数を適用した結果、「継続渡しスタイル」の型が返されるなら、その結果に対して更に計算をつなげることができる。つまり、callCC 関数を適用した結果、「継続渡しスタイル」が返されると都合が良い。よって、次のように定義する。

callCC f = \k -> f 

問題は「継続」である引数 k を、何に対して適用するのか?それとも、何に対して与えるのか?ということ。

ここでもし、

 f 

の結果が「継続渡しスタイル」として返されることが保証されるなら、callCC 関数の引数 k を

 f 

によって生成された「継続渡しスタイル」の計算に与えることにより、callCC 関数の後にくる計算へとつなげることができる。

callCC f = \k -> f k

上記の計算では、引数 exit を callCC 関数の中で適用していない。そのため、の型がどのようなものであっても、最終的な結果に影響を与えない。

 

d. 具体例で確認する

ここまで定義で、具体的な式を定義で置き換え、動作を確認する。

(callCC $ \exit -> add_cps 1 2 `comb` \x -> mul_cps x 3)
=> \k -> (\exit -> add_cps 1 2 `comb` \x -> mul_cps x 3)  k
=> \k -> (add_cps 1 2 `comb` \x -> mul_cps x 3) k
=> \k -> (\k -> k 9) k
=> \k –> k 9

f の結果が「継続渡しスタイル」であれば、exit 関数を適用しない場合、の中身は何でも良いことが分かる。

そのため、に相当する式としてどのような値を与えても、この場合、計算に影響を与えない。例えば、の代わりに  undefeined を与えても答えを求めることができる。

callCC f = \k -> f undefined k

 

5. 「継続」を適用する場合

SnapCrab_No-0178次に、Scheme で call/cc 手続きに与えるラムダ式本体において、「継続を呼び出す」例を参考にしながら、callCC 関数の定義を考えていく。

先ほどの Scheme の例を再掲する。

(display
 (- (call/cc
     (lambda(exit)
       (* 
        (exit(+ 1 2)) 
        3)))
    4))   ;=> -1

これを Haskell で「継続渡しスタイル」にして書きなおすと、以下のようになる。

main = print $ ((callCC $ \exit ->
                 add_cps 1 2 `comb` \x ->
                 exit x      `comb` \y ->
                 mul_cps y 3) `comb` \z ->
                sub_cps z 4) id

今回は、callCC 関数に与える無名関数の引数である exit を、callCC 関数に与えた無名関数の中で適用している。そのため、先ほどの callCC 関数の定義では思うような結果は得られない。

callCC f = \k -> f undefined k

とりあえず undefinedとして、保留していた部分を考えなければならない。

 

a. exit 関数の役割

ところで、この undefinedは、callCC 関数を適用した場合、exit 関数に与えられる。

SnapCrab_No-0183

exit 関数の役割は、exit 関数を値に適用したら、

  • その値が callCC 関数の「後に続く計算」(継続)に与えられること。 … 【条件A】
  • exit 関数を適用した「後に続く計算」を破棄すること。 … 【条件B】

【条件A】より、callCC 関数の「後に続く計算」を表す引数 k に「値を渡す」関数を想定できる。

callCC f = \k –> f (\x –> k x) k

しかし、この定義ではコンパイルエラーとなる。なぜなら、【条件B】が満たされていないため。

 

b. 後続の「継続」を破棄する

では、どのような定義にすれば、【条件B】を満たすことができるのだろう?

もう一度、「継続渡しスタイル」について、簡単な例で考えてみる。

main = print $ (add_cps 1 2 `comb` \x ->
                mul_cps x 3) id  -- 9

ここでは、2つの「継続渡しスタイル」の計算をつなげている。この2つの計算の間に、次のような「継続渡しスタイル」の計算を挿入してみる。

main = print $ (add_cps 1 2 `comb` \x ->
                (\k -> k x) `comb` \y ->
                mul_cps x 3) id  -- 9

新たに挿入した「継続渡しスタイル」の計算は、全体の計算に影響を与えない。

これに対して、「継続」に値を与えないように式を変更すると、結果として挿入した「継続渡しスタイル」の x の値が返される。なぜなら、後続する計算に中間結果を与えないため。

main = print $ (add_cps 1 2 `comb` \x ->
                (\k -> x)   `comb` \y ->
                mul_cps x 3) id  -- 3

変数 k は使われないので、ワイルドカードで良い。

main = print $ (add_cps 1 2 `comb` \x ->
                (\_ -> x)   `comb` \y ->
                mul_cps x 3) id  -- 3

確認のため、この式を定義で置き換えてみる。

add_cps 1 2 `comb` \x -> (\_ -> x) `comb` \y -> mul_cps x 3
=> (\_ -> 3) `comb` \y -> mul_cps x 3
=> \k -> (\_ -> 3)(\x -> (\y -> mul_cps x 3) x k)
=> \k -> 3

「継続」に値を与えないことにより、後続の計算が破棄されたのが分かる。

次に、上記の式を exit 関数を与える test 関数として定義しなおしてみる。

test exit = (add_cps 1 2 `comb` \x ->
             exit x      `comb` \y ->
             mul_cps x 3) id

先ほどと同じように、途中で「継続」を破棄するためには、test 関数に次の無名関数を与えれば良い。

main = print $ test (\x -> \_ -> x)

callCC の定義に戻る。先ほどコンパイルエラーとなったのは、下記の式だった。

callCC f = \k –> f (\x –> k x) k

これを「後続する継続を破棄するときに与えた無名関数」を真似て、次のように変更する。

callCC f = \k –> f (\x –> \_ –> k x) k

これにより、先ほど挙げた【条件B】を満たすことができる。

確認のため、callCC を使った式を定義で置き換えてみる。

(callCC $ \exit -> add_cps 1 2 `comb` \x -> exit x `comb` \y -> mul_cps y 3) 
=> \k -> (\exit -> add_cps 1 2 `comb` \x -> exit x `comb` \y -> mul_cps y 3) (\x -> \_ -> k x) k
=> \k -> (\exit -> exit 3 `comb` \y -> mul_cps y 3) (\x -> \_ -> k x) k
=> \k -> ((\x -> \_ -> k x) 3 `comb` \y -> mul_cps y 3) k
=> \k -> ((\_ -> k 3) `comb` \y -> mul_cps y 3) k
=> \k -> (\k' -> (\_ -> k 3) (\x -> (\y -> mul_cps y 3) x k')) k
=> \k -> (\k' -> (k 3)) k
=> \k -> k 3

これで、callCC 関数の定義における「無名関数」の意味が理解できた。

しかし、自分の頭では直感的に理解できないなぁ。。

「ネットワークアダプター」が原因でインターネットに接続できなかった

$
0
0

1. インターネットに接続できない

ルータの LAN ポートからイーサネットケーブルを伸ばし、PC に接続してもインターネットに接続できなくなった。

 

a. ローカルエリア接続は有効

最初に、「ネットワーク接続」を確認したところ、問題ないように見えた。

  • コントロール パネル > ネットワークとインターネット >ネットワーク接続

における「ローカル エリア接続」を見ると「有効」になっている。また、イーサネットケーブルの抜き差しにより、状態が通知される。SnapCrab_No-0184

 

b. ネットワークアダプタも問題ない

次に、デバイスマネージャで LAN カードの状態を確認した。

  • スタートメニュー > コンピューター で右クリック > プロパティ > デバイス マネージャ

において、「ネットワークアダプター」の状態を見ても、問題は表示されてない。

SnapCrab_No-0186

「ネットワークアダプター」とは、ネットワークカード – Wikipediaによると、

一般的にはLANカード(ラン-)と呼ばれることが多いが、ネットワークアダプタネットワークインタフェースカード(Network Interface Card 、略称 : NIC)などとも呼ばれる。

 

2. ネットワーク接続の情報が表示されない

a. 接続状況の確認

スタートメニューより、「コマンド プロンプト」を起動し、

ipconfig

を実行しても、ネットワークに関する情報が表示されない。

ipconfig - Windowsのネットワーク設定を確認するによると、

Windowsにおいて、おもにIPネットワークの設定情報を表示する。また一部のWindowsネットワーク(プロトコルにNetBIOSを使用したWindowsクライアント向けのネットワーク機能。Windows 3.xで使用されていたLAN Managerと互換性がある)の情報も表示できるほか、DHCPクライアントとして設定されている場合にはIPアドレスのリリース(解放)や更新も行える。

 

b. インターネット プロトコルのプロパティを開けない

また、「ローカル エリア接続のプロパティ」ダイアログにおいて、

  • 「インターネットプロトコル … (TCP/IP)」をのプロパティ

を表示しようとするとエラーが表示される。

TCP/IP を構成するには、インストールし、ネットワーク アダプター カードを有効にする必要があります。

SnapCrab_No-0185

 

3. デバイス マネージャ で ネットワーク アダプターを削除する

エラー メッセージ: TCP/IP を構成するには、する必要があります、ネットワーク アダプター カードを有効にします。によると、

この現象を解決するには、デバイス マネージャーでネットワーク アダプターをアンインストールし、ネットワーク アダプターを再インストールするには、コントロール パネルの [ハードウェアの追加と削除ツールを実行します。

上記のデバイスマネージャで、

  1. 対象のネットワークアダプタを右クリックし、「削除」を選択する。
  2. PC を再起動。

SnapCrab_No-0187

これにより、ネットワークアダプタが自動的にインストールされ、インターネットに接続できるようになった。

 

参考サイト

特定のアプリケーションを実行するときに「ユーザアカウント制御」ダイアログを表示させない - Compatibility Administrator で「カスタムの互換修正プログラム」を作成する

$
0
0

1. 「ユーザアカウント制御」ダイアログを表示してほしくない

アプリケーションを起動するときに、「ユーザアカウント制御」のダイアログが表示されることがある。

例えば、メモリを定期的に開放する Wise Memory Optimizer.exeをクリックすると、

SnapCrab_No-0192

次のプログラムにこのコンピュータへの変更を許可しますか?

起動する度に、「はい」のボタンを押すことが面倒なでの、このダイアログ表示しないようにしたい。

 

「ユーザーアカウント制御」のメリット

「ユーザーアカウント制御」があることにより、「管理者ユーザ」で  Windows をより安全に運用できる。

ユーザーアカウント制御 – Wikipediaによると、

Windows XPまでは、管理者ユーザは管理特権を持っており、マルウェアを含む全てのソフトウェアは管理特権を持った状態で実行し、OSの全てにアクセスすることができた。逆に管理者でない場合、権限が必要な動作を行おうとすると権限がないというエラーメッセージを受け取ることになる。

Windows Vistaからは、管理者のユーザとしてログオンするとアクセストークンが2つ用意される。1つは標準ユーザと同じ権限、もう1つは完全な管理者の権限を持っている。管理者としてログオンしてプログラムを実行しても通常は標準ユーザと同じ権限しかなくセキュリティもしくはOSの安定性に関わる操作を行おうとすると、「昇格のプロンプト」[1]と呼ばれる、実行を許可するか確認を取るダイアログが表示される。ここでユーザが許可すると、権限が「昇格」されてはじめてプログラムは管理者権限で実行される。

「管理者ユーザ」と「管理者権限」は異なる。そのため、特定のプログラムを実行するときに「権限の昇格」を許可するダイアログが表示される。

 

2. 「ユーザアカウント制御」と「タスクスケジューラーの作成」による方法

How to create a whitelist UAC for Windows 7? | #comment: code snippetsによると、

「権限の昇格」を許可するダイアログが表示されないようにするには、次の2つの方法がある。

  1. 「ユーザアカウント制御の設定」でコンピューターに対する変更を通知しない。
  2. タスクスケジューラーで、「最上位の特権で実行する」タスクを作成する。

 

ユーザアカウント制御の設定

ただし、「コンピューターに対する変更を通知しない」設定にすることは、セキュリティ上望ましくない。

  • コントロール パネル > システムとセキュリティ > アクション センター

における「ユーザーアカウント制御設定の変更」で、スライダーを「通知しない」に方に設定することにより、ダイアログの表示を抑制できる。しかし、この設定は、「既定」のままにしておいた。

SnapCrab_No-0193

 

タスクスケジューラーによる設定

タスクスケジューラーを利用する方法は、以下を参照。

ポイントは、「タスクを作成」するときに、「最上位の特権で実行する」にチェックを入れること。

 

3. Compatibility Administrator で「カスタムの互換修正プログラム」を作成する

上記以外に、Compatibility Administrator を利用して、カスタムの互換性修正プログラムを作成する方法がある。

予め前提となる知識を押さえておく。

 

a. 互換モード

互換モード – Wikipediaとは、

Windows XPVista7においては、以前のバージョンのWindowsでしか動かないソフトウェアをインストールや実行を行う際のモードとして互換モードが搭載されている。マイクロソフトの互換性データベースに登録されているソフトは自動的に互換モードで起動されるが、手動で設定することで任意のソフトを互換モードで起動することもできる[1][2]。なお互換性データベースは「Microsoft Application Compatibility Toolkit」(略称ACT)を使用することで閲覧できる[3]

詳しくは、Windowsの互換性テクノロジの仕組み(前編) - @ITによると、

Windows 2000やWindows XPは、NT5カーネルと呼ばれる1990年代に設計されたカーネルをベースに開発されている。一方、Windows VistaやWindows 7は、Longhornカーネルと呼ばれる最新のカーネルをベースに開発されている。

カーネルが異なると、どのような影響が出るのか。それにはいくつか要素が考えられるが、最新カーネルにおけるセキュリティ・アーキテクチャの変更が最も大きな影響を及ぼす。これは、アプリケーションの実行プロセスを高/中/低の3段階で定義するというもので、低プロセスから中プロセス、中プロセスから高プロセスへのメッセージのやり取りを遮断するという機能を実装している。

Windows OSには、上記のようなアプリケーションとOSの間で発生し得る互換性問題を回避するための仕組みとして「Windows互換性テクノロジ」と呼ばれる機能が標準で実装されている。

Windows互換性テクノロジの実体は、アプリケーションとOSの間を取り持つ「shim」と呼ばれる仲介アプリケーション(追加コード)である。shimは、Windows OSへの要求、Windows OSからの応答、またはその両方に変更を加えることができる。要は、互換性のない要求や応答を途中で偽装して、不具合が生じないようにつじつまを合わせてしまうのだ。

Windowsの互換性テクノロジの仕組み(前編) - @IT

Windows XPからWindows 7へ移行する際に互換性問題が生じやすい最大の原因としては、ユーザー・アカウント制御(UAC)と呼ばれるセキュリティ対策機能が挙げられる。UACが有効な環境では、コンピュータの動作に影響する可能性がある操作や、ほかのユーザーに影響する設定を変更する操作が実行される前に、ユーザーに許可を求めるか、管理者パスワードの入力を求められる。

Windows XPの場合、管理者ユーザーの下では、アプリケーションは常に管理者権限で動作していた。しかしWindows 7では、管理者ユーザーであっても普段は標準ユーザー権限でアプリケーションを実行し、UACを介して権限を昇格した場合のみアプリケーションを管理者権限で実行できる。そのため、管理者権限を必要とする従来の(UAC非対応の)アプリケーションは、実行途中で動作を止められてしまう可能性がある。

このようなUACの挙動に対して効果的なshimのうち、代表的なものを下表で紹介する。 …

 

b. Resource Hacker でアプリケーションの「実行モード」を確認する

仮想アプリとUACについて(裏技あり) | アプリ仮想化奉行によると、

UAC の動作を設定するのは、アプリケーションマニフェストと呼ばれる物になります。
大きく分けると以下の3パターンで UAC の挙動を制御します。
・EXE自体に埋め込む場合
・ファイルとしてEXEと同じフォルダに設置
・アプリケーションの互換モードにより設定(EXEを右クリックして管理者として実行等)

UAC の実行モードは以下の3つから選択します。
RequireAdministrator(管理者として実行)
管理者権限を持つユーザーの場合は、昇格を行う画面が表示されます。
一般ユーザーの場合は、管理者のID/PWを入力する画面が表示されます。
HighestAvailable(持ちうる最高の権限で実行)
管理者権限を持つユーザーの場合は、昇格を行う画面が表示されます。
一般ユーザーの場合は、UACの画面が表示されずにアプリが起動します。
RunAsInvoker(そのままの権限で実行)
UACの画面が表示されずにアプリが起動します。

Windows Vista でのユーザー アカウント制御の理解と構成> 「アプリケーション互換性のための、要求実行レベルでのアプリケーションのマーク」によると、

アプリケーションのためにどの要求実行レベルが選択されるのかは、アプリケーションが実行するシステムレベルの操作の種類で決まります。選択できる 3 種類の要求実行レベルを次に示します。

RunAsInvoker : アプリケーションを親プロセスと同じ Windows 特権とユーザー権利で実行する必要があります。この設定は、アプリケーションの互換性データベースがないことに相当します。アプリケーションは、起動元の親プロセスと同じ特権で起動されます。これにより、アプリケーションがセキュリティの脅威にさらされる可能性は減少します。なぜなら、大半のアプリケーションでは、親プロセスは Explorer.exe であり、これは標準ユーザー アプリケーションとして実行されるからです。完全な管理者として実行される cmd.exe シェルから起動される RunAsInvoker アプリケーションは、完全管理者アクセス トークンで "起動者として実行" されます。

RunAsHighest :

  • アプリケーションを現在のユーザーが取得できる最上位の Windows 特権とユーザー権利で実行する必要があります。ただし、ユーザーは必ずしも管理者である必要はありません。…

RunAsAdmin : このアプリケーションは管理者のためにのみ実行し、完全管理者アクセス トークンで起動する必要があります。標準ユーザー コンテキストでは正常に実行されません。…

仮想アプリとUACについて(裏技あり) | アプリ仮想化奉行(先ほどのつづき)

対象のEXEファイルに埋め込まれている、アプリケーションマニフェスト(Application Manifest)を変更する。
ResourceHacker等を使って書き換えます
level="highestAvailable"またはrequireAdministratorの部分を
RunAsInvokerへ変更

Resource Hacker – Wikipediaとは、

対応する形式のファイルを開くとそのファイルのリソースがツリー構造上で表示される。リソースをバイナリ形式で保存したり、格納されているアイコンやポインタ、リソースなどを置き換えたり、リソースを追加、削除することができる。

Resource Hackerより最新のバージョンをダウンロード。

Resource Hacker で WiseMemoryOptimzer.exe を開く。

Ctrl + F で検索ダイアログを開き、

level=

という文字列を検索する。その結果、以下の記述が見つかった。

level="requireAdministrator"

つまり、このアプリケーションは管理者として実行する必要がある。そのため、アプリケーションを実行するときに、UAC のダイアログが表示される。

 

c. Compatibility Administrator のインストールと実行

カスタムの互換性修正プログラムを作成するために、

Download Microsoft Application Compatibility Toolkit from Official Microsoft Download Centerより、

  • ApplicationCompatibilityToolkitSetup.exe

をダウンロードして、インストールする。

Compatibility Administrator の使用によると、

Application Compatibility Toolkit (ACT) では、32 ビットおよび 64 ビット バージョンの Compatibility Administrator がインストールされます。32 ビット アプリケーション用のカスタム データベースの作成と操作を行う場合は、32 ビット バージョンを使用し、64 ビット アプリケーション用のカスタム データベースの作成と操作を行う場合は、64 ビット バージョンを使用する必要があります。

SnapCrab_No-0194

32ビット か64ビットアプリケーションかを確認するには、タスクマネージャーで WiseMemoryOptimzer.exe  のプロセスのイメージ名を見る。末尾に *32 とあるので、32ビットアプリケーション。

よって、Application Compatibility Toolkit (32-bit) を起動。

 

d. 互換修正プログラムの作成とインストール

カスタムの互換性修正プログラムを作成するによると、(※ 実際に入力・選択した値を赤文字で示した。以下同様。)

    1. Compatibility Administrator の左側のウィンドウの [Custom Databases] 見出しの下で、互換性修正プログラムの適用先データベースの名前(New Database(1)[Untitled_1])を右クリックし、[Create New]、[Application Fix] の順にクリックします。

      [Create new Application Fix] ウィザード画面が表示されます。

    2. 互換性修正プログラムの適用先アプリケーションの名前(WiseMemoryOptimzer No UAC とした)を入力し、アプリケーション ベンダーの名前を入力します。コンピューターに保存されているアプリケーション ファイル (.exe) の場所を指定し、[Next] をクリックします。

      [Compatibility Modes] ウィザード画面に、使用できる互換モードが表示されます。

    3. 互換性修正プログラムの適用先オペレーティング システムを選択し、互換性修正プログラムに適用できる互換モードのいずれか(RunAsInvoker)をクリックし、[Next] をクリックします。

      [Compatibility Fixes] ウィザード画面に、使用できる互換性修正プログラムが表示されます。

    4. 作成する互換性修正プログラムに適用する追加の互換性修正プログラムを選択し、[Next] をクリックします。

      [Matching Information] ウィザード画面に、プログラムの識別に使用される既知の照合情報が表示されます。

    5. アプリケーションを AppHelp メッセージに対応付ける基準が他にもある場合は追加で選択し、[Finish] をクリックします。

最後に Save ボタンを押して、Database Name として、適当に WiseMemoryOptimzerと名前を付けて保存した。

次に、作成したデータベースをイントールする。

カスタム互換性データベースのインストールおよびアンインストールによると、

カスタム データベースをインストールするには
  1. Compatibility Administrator の左側のウィンドウで、ローカル コンピューターにインストールするカスタム データベース(WiseMemoryOptimzer)をクリックします。

  2. [Fie] メニューの [Install] をクリックします。

これにより、

  • コントロール パネル > プログラム > プログラムと機能

における「プログラムのアンインストールまたは変更」の一覧の中に

WiseMemoryOptimzer No UAC

が含まれていることが確認できる。

この状態で WiseMemoryOptimzer.exe を実行すると、 UAC のダイアログは表示されなくなる。

`WiseMemoryOptimzer No UAC’ をアンインストールすると、UAC のダイアログが再び表示されるようになる。

 

参考サイト

「Facebook ページ」のフィードを取得するブックマークレット

$
0
0

1. Facebook ページが配信するフィード

a. フィードを表示するブックマークレット

「Facebook ページ」のフィードを取得したい。そのためのブックマークレット。

使い方は、

  1. 予め上記リンクをブックマークに登録する。
  2. 登録したい Facebook ページで登録したブックマークをクリック。

これにより、フィードを配信している URL に移動する。記事のタイトルが文字化けして表示されるが、FeedlyGoogle Readerに登録すると、文字化けは解消される。

ただし、記事の中にある写真は、Facebook のサイトで見るよりも小さい。これに対して、サムネイルをマウスオーバーで拡大するアドオン Thumbnail Zoom Plusを併用すると良い。

 

b. フィードを検出できないのでブックマークレットが必要

Facebook ページは、その場でフィードを配信している URL が指定されていない。そのため、ブラウザがフィードを検出できない。一般的なブログのようにフィードを簡単に取得できないから不便。これは Facebook 内で「ページフィード」を利用させたいからだろう。

Firefox では、標準でフィードを検出する仕組みが備わっている。ツールバーをカスタマイズすることにより、「購読」ボタンを好きな場所へと配置できる。 Google Chrome では、拡張機能 RSS Subscriptions with FEEDで同じ機能を使える。

最近、企業サイトの中に、ホームページをパンフレットの代わりとし、「更新情報」を Facebook ページで提供する形を見かける。フィードリーダーに情報を集約している自分としては、この仕様では困る。なぜなら、わざわざ Facebook を開くのは面倒だから。そのようなサイトを見る度に、自前でフィードを出力するか、フィードを出力するブログで更新情報を通知してほしいと思う。

 

c. 「お知らせ」のフィード

ところで、Facebook の「お知らせ」通知には、フィードが用意されている。

Facebookのお知らせのRSSフィードを作成するにはどうすればよいですか。 | Facebookヘルプセンター

お知らせページでFacebookのお知らせのRSSフィードを作成することができます。ページ上部のRSSリンクをコピーして、RSSリーダーに貼り付けます。

フィードを登録するには、「お知らせ」より、RSS のリンクをクリックし、フィードリーダーに登録する。

 

2. Facebook ページのフィードを得る方法

Facebook ページの フィードを得るには、Facebook APIsGraph APIを利用する。

フィードを取得する流れは、

  1. Facebook ページの idGraph APIを利用して取得する。
  2. idと「フォーマット」を指定して、フィードを得る。

例えば、フェイスブック ジャパン ( https://www.facebook.com/FacebookJapan )のフィードを手動で取得するには、

  1. Graph API Explorerを用いて、Graph API で GET を選択し、フィールドに FacebookJapan と入力し、送信ボタンを押す。
  2. FacebookJapan の idを含んだ情報が表示される。

この id を下記の URL に当てはめる。

  • http://www.facebook.com/feeds/page.php?&format=rss20&id=[ここにidを指定する]

これにより、以下の URL がフィードだと分かる。

 

フォーマットが RSS2.0 だと文字化けしない

フィードの「フォーマット」として、ATOM RSS2.0を指定できる。

両方とも、フィードのプレビューをブラウザで確認するとタイトル部分が文字化けする。しかし、RSS2.0の方は、Feedly へ登録すると文字化けが直る。

 

3. ソースコード

ブックマークレットのソースコードは、以下の通り。

利用したメソッド。

全体の構成。

利用したサイト。

 

対象ページによる場合分け

Facebook ページには、独自のユーザーネームが付けられているページと、そうでないページがある。

例えば、フェイスブック ジャパンにはユーザーネームが設定されている。

これに対して、NICI JAPANは、Facebook ページの URL が異なる。

この場合、末尾の数次が id のようだ。

 

関連記事

再び Flash Player 10 にダウングレードした - Firefox で「ウィンドウの非アクティブ」と「応答なし」への対処

$
0
0

1. 「ウィンドウの非アクティブ」と「応答なし」

一時期、Firefox で Flash Player が原因で「ウィンドウが非アクティブ」になる現象が生じていた。その後のバージョンで改善されたが、再び、同じ現象が発生する。

また、ブラウズ中に固まり、「応答なし」となることが最近頻発する。そのため、もう一度、Flash Player のバージョンをダウングレードすることにした。

利用しているバージョンは、

  • Flash Player : 11.7.700.169
  • Firefox : 20.0.1

 

2. 2つの対処方法

「ウィンドウが非アクティブ」になる問題の対処法には2つある。

  1. Flash Player 11 を「保護モード」を無効にして利用する
  2. Flash Player 10 にダウングレードする。

最初、「保護モードにする」方法を試みた。これにより、「ウィンドウが非アクティブ」になる現象は回避できる。しかし、相変わらず「応答なし」となり、固まることが多い。

そこで、しばらく、Flash Player をダウングレードして利用することにした。

において Flash Player の更新情報を確認すると、「バージョン11」の更新と同じ日に「バージョン10」も更新されている。まだ、しばらくは「バージョン10」を利用しても大丈夫そうだ。

 

3. Flash Player 10 へのダウングレード

a. 「保護モードの無効」にした設定を削除

最初に、「保護モードを無効」にした設定を削除した。Flash Player の設定ファイルである mms.cfgから

ProtectedMode=0

と記述した行を削除して保存。設定ファイルは、以下の場所に存在する。

  • 32 ビット版 Windows : C:\Windows\System32\Macromed\Flash\mms.cfg
  • 64 ビット版 Windows : C:\Windows\SysWOW64\Macromed\Flash\mms.cfg

 

b. 「アンインストーラー」と「インストーラー」の入手と実行

予め、Flash Player の「アンインストーラー」と、バージョン 10 の「インストーラー」をダウンロードしておく。

  1. Flash Player をアンインストール: uninstall_flash_player.exe
  2. バージョン 10 をインストール: install_flash_player_10_plugin.exe

Firefox を終了し、上記の「アンインストーラー」と「インストーラー」を実行する。

 

c. ダウングレードした結果

現在のところ、自分の環境では、Flash Player 11 を「保護モード」を無効にして利用するよりも、Flash Player 10 を利用した方がブラウザのレスポンスが良い。

また、「応答なし」と固まる回数が減った。

 

関連記事


Twitter のフィードを取得する - TwitterGoodRSS または Twilog に乗り換えた

$
0
0

1. API version 1 でフィードを得る

Twitter のフィードを取得するには、How to find twitter RSS feed URLによると、以下のように API を利用する。

http://api.twitter.com/1/statuses/user_timeline.rss?screen_name=accountName

例えば、Twitterサポート (@TwitterHelpJP) のフィードを取得するには、

この方法は、API version 1 に基づいている。

しかし、残念ながら、この API version 1 は使えなくなる。

 

2. API vesroin 1.1 の制約

本の虫: Twitter API 1.1により、Twitterは終了するによると、

Twitter API Version 1.1の登場により、Version 1はdeprecatedとなった。1.1では、RSSがサポートされていない。これでTwitterは完全に終了した。終わりの始まりだ。

API version 1 は、後少しで使えなくなる。

API v1 Retirement Date Extended to June 11, 2013 | Twitter Developersによると、

We're extending the API v1 retirement date from May 7, 2013 to June 11, 2013, in order to accommodate additional blackout testing.

新しい API versoin 1.1 が使いづらい理由は、RSS を返さないことと、「認証」を必要とする。

Twitter APIと開発者規約変更のインパクトまとめ:結局、Twitter API 1.1で何が変わる? 5つのポイント - @ITによると、

多くのAPIはエンドポイントURLが変わるだけですが、一部廃止・変更もあるので、注意が必要です。公式ドキュメントに廃止・変更になるAPIのリストがないので、以下にまとめました。

なお、廃止対象に挙げているAPIでもAPI 1.1のエンドポイントで実際呼び出せてしまうものがいくつかありますが、ドキュメントには記載されておらず、今後呼び出せなくなる可能性がありますので使うべきではないでしょう。

また、これまで一部のAPIはOAuth認可なしで呼び出せましたが、Twitter API 1.1では全てOAuthが必須となります。

ただし、ウェブサイトに埋め込むタイムラインは認証は必要ない。

Following up on API housekeeping | Twitter Developers  によると、

It's possible you may be able to use an Embedded Timelines widget to display these tweets on your internal site as an alternative without OAuth.

Otherwise, you'll need to register an application to dev.twitter.com/apps, learn about OAuth, and use it to fetch a JSON-based feed (instead of RSS) from https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=DeptVetAffairs -- Single-user OAuth with Examples gives some tips on how to perform these kind of requests for a use case like yours.

 

3. API version 1 でフィードを取得する代替サービス

API version 1 を用いたフィードの取得の代替方法には、いくつかある。

a. TwitterGoodRSS

TwitterGoodRSS サービスは、Twitter API 1.1 にも対応している。特に気に入っている点は、画像をインライン展開してくれること。大きな画像で表示してくれるので見やすい。

Twitterの(公式よりまともな)RSSを生成するサービス TwitterGoodRSS をつくったよ! - yayuguのにっき

URL、#ハッシュタグ、@リプライに対応。さらに公式の画像サービスpic.twitter.comの画像をインライン展開できます。

さらに、リストからRSSを生成する機能もつけました。

2013/03/05 追記: Twitter API 1.1に対応しました

利用するには、

  1. http://twittergoodrss.herokuapp.com/に登録。
  2. Twitter で「連携アプリを認証」する。
  3. 提示されるブックマークレット「TwitterGoodRSS 」を登録。

これで、フィードリーダーに登録したいユーザーの Twitter ページで、ブックマークレットをクリックすると、フィードが表示される。

このサービスが一番使いやすそうだ。

 

b. Twilog

Twilogは1日単位でツイートをまとめて表示してくれる。フィードの配信もしている。

ただし、登録ユーザ以外のフィードは配信してないようだ。(昔はしてたような気がするけれど。)

 

c. Twitter RSS

ツイッターの更新情報をRSSで受け取れる『Twitter RSS』 | 100SHIKI

Twitter RSSを使えば、気になる人のつぶやきを、フォローせずにチェックすることができますな。

なんらかの理由でフォローをしたくない、もしくはRSSリーダーで見たい、という人におすすめだろう。

Twitter RSSで配信されるフィードを確認したところ、画像の展開は行われなかった。表示が見やすいくない。

 

d. Topsy

Topsyを利用していたこともあるが、最近、配信されなくなってしまった。

 

 

Tumblr で公式が用意している使い方をできるだけ利用する

$
0
0

1. できるだけアドオンに頼らない

SnapCrab_No-0202Tumblr の仕様が変更され、ダッシュボードに必須だったアドオン Missing eが使えなくり、更新もされなくなって久しい。再び利用できるようになることを期待していたが、なかなか厳しそう。

SnapCrab_No-0204また、ダッシュボードにおいて tomblooで reblog すると、なぜかエラーが出ることが多くなった。

そのため、できるだけダッシュボードでは、公式がサポートしている使い方に慣れるようにした。

 

2. キーボードによる操作

SnapCrab_No-0201Tips | Tumblr> Keyboard shortcutsより、

  1. j, kで上下にスクロール
  2. Shift + Rで reblog
  3. 投稿をキューに入れるには、Shift + E

reblog するショートカットキーより、「キューに入れる」ショートカットキーの方がキーボードを押下しやすい。これは都合が良い。

なぜなら、各ポストをマウスオーバーすると、投稿の右上が折り返される。この位置にマウスを持って行くと、投稿時間が表示される。投稿時間として、実際に投稿した時間が表示されると都合が悪いこともある。必要なときには、キューに入れるようにしたい。

キューに入れたものを投稿する設定は、

  1. ダッシュボードの右側メニューにある Queue を選択。
  2. ポスト数を 50 にして、キューに入れたものをポストする時間を適当に指定する。

 

3. マウスによる操作

キーボードによる操作は、常に両手をキーボードに添えておく必要がある。そのため、実際にはマウス片手にダラダラと操作することの方が多い。

 

a. ワンクリックで reblog

現在、reblog ボタンを押すと、対象のポストがポップアップする。ポップアップさせず、速攻で reblog するには、alt キーを押しながら、reblog ボタンを押す。

 

SnapCrab_No-0205FlashGot の設定

ただし、FlashGotをインストールしている場合、ダウンロードを促すダイアログが表示されてしまう。

この場合、FlashGot の設定の「一般」より、

Alt + Click = FlashGot を使用

のチェックを外しておく。

 

全画面表示、または、メニューバーを常に表示しておく

Firefox では、Alt キーを押すと、隠れていたメニューバーが表示される。

このため、ワンクリックで reblog しようとする度に、ブラウザに表示されている内容が少し下に下る。このため、ダッシュボードを開くときには、F11 キーを押して「全画面表示」にする。

または、「メニューバー」を常に表示しておくのが良い。「メニューバー」を表示するには、

  • ナビゲーションバーの適当な位置で右クリック > メニューバー

のチェックを入れる。

SnapCrab_No-0206

ただし、「ナビゲーションバーを表示」するのはやりにくい。なぜなら、「ナビゲーションバー」のボタンのない位置で「右クリック」をしなければいけないため。できるなら、キーボードショートカットキーを覚えておくと良い。

  • 表示(V) > ツールバ(T)ー > メニューバー(M)

alt –> v –> t –> m

というように、項目の名称と対応しているので覚えやすい。

 

alt キーを押すタイミング

ワンクリックで reblog するとき、

  1. マウスを reblog ボタンに移動する。
  2. alt キーを押す。
  3. マウスをクリックする。

という順序で行うと疲れにくい。先に alt キーを押下したまま、マウスを reblog ボタンまで移動すると、alt キーを押下している時間が長い分、手が疲れる。

 

b. 2ページ目から開いて、自動的なスクロールを抑制

いつでもワンクリックで reblog する訳ではない。

この場合、reblog ボタンを押すと、記事がポップアップする。その後、左下に表示される reblog ボタンを押すと、reblog したポストが上へと自動的にスクロールする。この仕様には辟易した。目が回って気持悪くなる。 (@_@;

これを回避するには、「ダッシュボードの2ページ目」から開くと良い。この場合、reblog 後に自動的にスクロールがされない。

また、同様に特定の時間へ遡ることのできる

を利用した場合も自動的なスクロールがされない。

 

4. その他の設定

現在では、Settings | Tumblr

  • Enable endless scrolling

の読み込みが早くなり、実用的なレベルになっている。

そのため、AutoPagerは無効にしている。

「手書き」で大雑把に予定を立てるための「スケジュール表」テンプレート

$
0
0

何事もいきなり詳細を見据えて考えることは難しい。

日程が詰まっており、状況に応じて予定を組み立てる必要がある場合、「手書き」に優るものはない。

そのようなとき、A4 用紙に以下の表を印刷し、鉛筆で書いたり消したりしながら予定を詰めていく。

SnapCrab_No-0195

  • メニューより、ファイル > 形式を指定してダウンロード

OpenDocument 形式 であれば、オープンソースの LibreOfficeで開ける。

後は、

  1. 必要なら、左上の 0:00 は適当に時間を変更する。
  2. 「列の幅」を必要な日付だけ調整する。
  3. 「行の高さ」を1ページに収まるようにする。
  4. スケジュール表を印刷する。

案外アナログなツールの方が効率が良い。

最終的にスケジュールが決まったら、Google カレンダーに転記する。

PC がアイドル状態になったら、自動的に「電源プロファイル」を変更する - Process Lasso の Energy Saver

$
0
0

1. アイドル状態になったら、自動で節電モードにしたい

PC を操作しているときは「パフォーマンスを優先」し、アイドル状態になったら自動的に「節電モード」に移行してほしい。

SnapCrab_No-0198Process LassoEnergy Saverを利用すると、「電源オプション」をアイドル状態と経過時間により、自動的に切り替えられる。

この機能は、以前より実装されていたが、PC の挙動が不安定になったので利用していなかった。最近のバージョンでは問題ないようだ。

これまで、電源オプションを切り替えるには、手動で行なっていた。

 

設定方針

次のような運用をしたい。

  • PC を操作中
    • CPU を 100% 活用。
    • スリープしない。
  • アイドル状態
    • CPU の動作を半分に抑える。
    • 早目に画面を消し、スリープ状態に移行する。
    • ただし、「休止状態」に入るまでに時間は長めに設定する。

 

2. 電源プランの作成

高パフォーマンス

「高パフォーマンス」の設定は、OS に標準で用意されている。

  • コントロール パネル > ハードウェアとサウンド > 電源オプション

から「高パフォーマンス」の「プラン設定の変更」を選び、「詳細な電源設定の変更」を確認する。

 

CPU の動作を抑えたプラン : 50%

アイドル状態の設定を作成方法は、「電源プランの作成」を参照。

電源オプションの名前を「50%」と名付け、以下の詳細設定を行った。

  • 「プロセッサの電源管理 > 最大プロセッサの状態」: 50%
  • スリープ >
    • 次の時間が経過後スリープする : 10 分
    • 次の時間が経過後休止状態にする : 1440分

SnapCrab_No-0196

スリープまでの時間を短くし、休止状態に入るまでを長くしたのは、通常はすぐに PC を操作できるスリープ状態で運用したいから。休止状態を設定したのは、PC の電源を切り忘れたときの対策。

 

3. Process Lasso の Energy Saver の設定

Process Lasso で「電源オプション」の切り替えを自動的に行うには、

  • メニューより、Options > Configure Enegy Saver…

を選択する。

  • 通常の設定
    • Force this power profile when the PC leaves the IDLE state: にチェックを入れる。
    • Currently Active Power Profile : で「高パフォーマンス」を選択する。
  • アイドル時の設定
    • Enable Enegy Saverにチェックを入れる
    • When my PC is idle for:10 seconsを選択する。これにより、アイドル状態が 10秒続くと、電源オプションが切り替わる。
    • Switch to Power Pfofile:では、先ほど作成した「50%」を選択。

SnapCrab_No-0197

Power Saver を有効にするには、

  • タスクトレイにある Process Lasso のアイコンを右クリック > Energy Saver Enabled

にチェックを入れる。

 

関連記事

feedly の最新版のアドオンをインストールする

$
0
0

1. feedly の最新版アドオン

feedlyのアドオンは、feedly のトップページから入手できる。

SnapCrab_No-0210

feedly にログインしている場合、左側メニューの一番したにある

Product Updates

から、トップページにジャンプできる。

SnapCrab_No-0209

 

2. Firefox のアドオンサイトからインストールするには、バージョンをすべて表示する

現在、最新のアドオンのバージョンは、

14.0.485

ただし、Add-ons for Firefoxから feedly のアドオンをたどると、

Feedly :: Add-ons for Firefox 14.0.482というように少し古い。

SnapCrab_No-0211

これに対して、Feedly :: Add-ons for Firefoxから、Feedly のすべてのバージョンを表示すると、最新の 14.0.485 が表示される。

SnapCrab_No-0212

インストールを試みると、下記の注意が表示される。

注意:このアドオンは Mozilla のレビューを受けていません。サードパーティ製のソフトウェアはコンピュータに危害を加える可能性があるため、インストールする場合はご注意ください。

SnapCrab_No-0208

とうやら、Mozilla の審査に時間がかかるようだ。

最新版を使いたければ、feedlyのトップページか、Feedly のすべてのバージョンを開き、 よりインストールする。

Gmail からの電話・Google ハングアウトが使えなくなったら、Google Talk Plugin を一度アンインストールする

$
0
0

1. Gmail からの電話とハングアウトが使えなくなった

固定電話や携帯に Gmailから電話をかけることが多くなった。なぜなら、通話料が安く、使用するための料金の追加方法が簡単なため。

この機能が、何の前触れもなく、突然使えなくなった。症状としては、

  1. Gmail において、
  • 連絡先」のコンタクトにある電話番号の欄に「電話のアイコン」が表示されない。
  • 設定 > チャット> ボイス & ビデオチャット の「設定確認」が表示されない。
  • Google ボイス&ビデオチャットを何度インストールしても、電話をかけようするとインストールが促される。
  • Google ハングアウトが使えなくない。
  • 最初、ウェブカメラが壊れたかと思ったが、Skypeでは問題ない。スタートメニューより、

    • 「デバイスとプリンター」

    を確認すると、ウェブカメラは認識されている。しかし、ブラウザ、PC を何度か再起動しても使えるようにならない。

     

    2. Google Talk Plugin のアンインストールが必要だった

    これに対して、以下の操作をしたら、Gmail からの電話、ハングアウトが再び使えるようになった。

    1. Google Talk Pluginをアンインストール
    2. Google ボイス&ビデオチャットを再インストール
    3. ブラウザを再起動

    Google Talk Pluginをアンインストールするには、

    • コントロール パネル > プログラム > プログラムと機能

    から行う。

    SnapCrab_No-0217

    再インストールするだけでは、ダメなことってあるんだなぁ。

    文字をコピーすると文字化し、内容を検索できない PDF ファイルを Adobe Acrobat Standard で OCR

    $
    0
    0

    1. PDF の内容を検索できない

    ある PDF 文書の内容を検索したが、文字列がヒットしなかった。文字は画像ではなく、「選択ツール」で選択できる。しかし、目の前に見えている文字を検索しても、見つからない。

    PDF 内の文字列を選択しコピーして、テキストエディタに貼りつけたら、なぜか文字化けした。恐らく、これが文字を検索できない原因と関係していそうだ。

    これに対して、Adobe® Acrobat® Standard を利用し、
    1. PDF を画像に変換した後、
    2. OCR 機能を使い、
    3. PDF を作りなおした。

    これにより、PDF 内を検索できるようになった。

     

    2. 画像として保存する

    最初に、対象の PDF ファイルを開き、画像として保存する。

    • ファイル > 名前を付けて保存 > 画像 > JPEG

    複数のページがある場合、

    XXXXX_ページ[ページ番号].jpg

    という名前のファイルが複数できる。

     

    3. ファイルを降順に表示し、追加

    まず、1 ページ目となる画像ファイルを Adobe Acrobat で開く。

    「ページサムネイル」ボタンを押す。

    SnapCrab_No-0221

    複数の画像ページがある場合、エクスプローラーでファイルの「名前」の降順に並び替える。

    SnapCrab_No-0219

    2ページ目以降の画像ファイルを選択し、先ほど Adobe Acrobat で開いた 1ページ目のサムネイルの後ろに D&D する。

    ちなみに、「名前」を降順にしないと、ページが逆順になってしまった。

     

    4. OCR 機能を利用

    SnapCrab_No-0222メニューより、

    • 表示 > ツール > テキスト認識

    を選択し、

    このファイル内

    をクリックする。

    「すべてのページ」を対象にテキストの認識を行う。

    最後に、メニューより、

    • ファイル > 名前を付けて保存

     

    Adobe Acrobat Standard

    Adobe® Acrobat® Standard は、ScanSnap iX500 : 富士通を購入したら、付属してきた。

    Adobe Acrobat XI Standardの値段を見ると、このスキャナーはお得だったのかな。

     

    参考サイト


    Google+ ハングアウトからログアウトしてないと、Gmail の「ステータス」を隠せない

    $
    0
    0

    1. Google チャットのステータスを隠す

    SnapCrab_No-0226オンとオフの使い分けは大事。必要以上につながることは好まないし、オフのときに思わぬ割り込みがあるとペースが崩れる。

    やりたいことを進めるには、ノイズが入らない環境に身を置くしかない。

     

    Gmail におけるステータス

    Gmailには、チャット機能がある。

    Gmail の画面左下で、自分が「オンライン」であるか、または、「取り込み中」なのかステータスを示すことができる。

    自分は、意図的に「オンライン」状態であることを示したいときだけ、「オンライン」にしている。デフォルトでは、「非表示」を選択している。これにより、

    ステータスを隠しています

    と表示される。

     

    ステータスを隠せない

    SnapCrab_No-0224最近、ステータスを隠していたつもりが、「オンライン」状態になっていることに気がついた。ステータスに関する情報として、以下のように表示されている。

    「ステータスの非表示をサポートしていない別のクライアント/デバイス/場所から Google トークにログインしているので、ステータスを隠すことができません」

    Google トークを利用するためのクライアントをインストールしていなかったので、なぜこのような表示になるか分からなかった。

     

    2. 「ハングアウト」からログアウトしておく

    原因は、Google+ ハングアウトにログインしていたため。

    Google+を開き、画面上部のメニューの右隅にある「ダブルクォーテーション」マークをクリックすると、サイドバーに「ハングアウト」が表示される。

    「新規ハングアウト」の右にある ▼メニュー を開き、「ハングアウトからログアウト」を選択する。

    SnapCrab_No-0227

    これにより、Gmail におけるチャットのステータスを隠すことができる。

    HTML の「ブロックレベル、インライン要素」内における改行は空白となる場合がある

    $
    0
    0

    1. 「ブロックレベル要素」と「インライン要素」の違い

    HTML のタグには「ブロックレベル要素」と「インライン要素」がある。

    7.5.3 ブロックレベル要素と行内要素によると、

    HTMLの要素のうち、BODY要素に出現し得る要素のあるものは「ブロックレベル」と呼ばれ、他のものは「行内」 (これは「テキストレベル」としても知られている)と呼ばれる。

    大雑把に言えば、ブロックレベル要素とインライン要素-HTMLの基本によると、

    ブロックレベル要素には、以下のものがあります。

    <address>、<blockquote>、<center>、<div>、<dl>、<fieldset>、<form>、<h1>-<h6>、
    <hr>、<noframes>、<noscript>、<ol>、<p>、<pre>、<table>、<ul>

    インライン要素には、以下のものがあります。

    <a>、<abbr>、<acronym>、<b>、<basefont>、<bdo>、<big>、<br>、<cite>、<code>、<dfn>、
    <em>、<font>、<i>、<img>、<input>、<kbd>、<label>、<q>、<s>、<samp>、<select>、
    <small>、<span>、<strike>、<strong>、<sub>、<sup>、<textarea>、<tt>、<u>、<var>

    この2つの要素には「配置のルール」が存在する。

    ブロックレベル要素の中には、他のブロックレベル要素やインライン要素を配置することができます。

    一方、インライン要素の中には、文字データや他のインライン要素を配置することができますが、 インライン要素の中にブロックレベル要素を配置することはできません。

    (同上より)

    詳しくは、HTML 4 Document Type Definitionを参照。

    <!--
        HTML has two basic content models:
    
            %inline;     character level elements and text strings
            %block;      block-like elements e.g. paragraphs and lists
    -->

    上記の読み方は、Document Type Definition – Wikipediaを参考に。

     

    2. HTML における改行、空白文字の扱われ方

    a. インライン要素に改行を入れてしまった場合

    注意することは、「改行」や「空白文字」の扱われ方。

    例えば、インライン要素である a タグの中に span タグを、次のように配置してみる。

    <div>
    	<a href="">
    		<span>
    			ほげ
    		</span>
    	</a>
    </div>
    <div>
    	<a href=""><span>ぴよ</span></a>
    </div>
    <div>
    	<a href=""><span>ふが</span></a>
    </div>

    SnapCrab_No-0239ブラウザ(Firefox 21)に表示される「ほげ ぴよ ふが」の文字は、一見変わらないように見える。しかし、ソースを表示すると、「ほげ」と入力した文字の周囲に空白が表示されている。

    Firefox 上で文字をコピーし、テキストエディターに貼り付ければ、空白があるのが分かる。ただし、ブラウザによって、コピーされた内容が異なる。Google Chrome 27, IE 10 では全く違う。

    このように「空白」が表示される理由は、「インライン要素」に「改行」が含まれているため。

    ブロックレベル要素とインライン要素 - Web標準普及プロジェクト> インライン要素によると、

    要素中に改行が混じるとやや複雑な形で表示されます。 これはインライン要素によって生成されるボックスは改行によって複数に分割されることがあるためです。

    この場合、整形するつもりで、誤ってインライン要素である span タグ内に改行を2つ入れてしまった。そのため、改行が空白に変換された。

    <span>
    			ほげ
    		</span>

     

    b. 改行が空白になる仕様

    改行が空白に解釈される理由は、仕様による。

    9.1 空白類によると、

    HTMLでは、次に挙げる文字だけが空白類文字であると定義される。

    • ASCIIスペース (&#x0020;)
    • 水平タブ (&#x0009;)
    • 書式送り (&#x000C;)
    • ゼロ幅スペース (&#x200B;)

    行区切り類もまた、空白類文字である。

    9.3.2 行区切り類の制御

    1つの行区切りは、1つの復帰 (&#x000D;)か、1つの改行 (&#x000A;)か、1つの復帰/改行組であると定める。すべての行区切り類は、空白類である。

     

    3. ブロックレベル要素内における改行

    ブロックレベル要素でも、改行に注意しなければならない。改行が空白となる場合がある。

    落とし穴になる空白文字と改行文字によると、

    以下のHTMLファイル(かなり簡略化してある)は2段落のテキストを表示する。表示後の見かけは段落ごとに同じか、違うか。違う場合はどこが違うか。

    1: <html>
    2: <body>
    3: <p>abcdef</p>
    4: <p>abc
    5: def</p>
    6: </body>
    7: </html>

    何が問われているのかピンとこなかった人は、少し考えてみよう。

    正解は、「表示後の見かけは違う」「相違点は2段落目のcとdの間に空白が挿入されている」というものだ。

    なぜ、こういう動作になるのかは、英語テキストを頭に描いてみれば分かるだろう。例えば、以下の2行があったとしよう。

    1: The Extensible Markup Language (XML) is a subset
    2: of SGML that is completely described in this document.

    1行目のsubsetと2行目のofを結合するときには、そのまま結合して"subsetof"としてはおかしくなる。ここは単語の区切りなので、空白文字を入れねばならない。つまり、HTMLでは、改行は空白文字に等しい扱いを受けているのである。ただしここで補足しておくと、日本語などの文字を区切る改行は、空白扱いしないのが現在のHTMLである。

     

    改行が問題とならない場合

    ただし、ブロックレベル要素を見やすいように整形しても「空白」が入らない。

    [HTML] ソース上の改行・タブ・空白(スペース)の扱い――インライン要素とブロック要素 | Ouka Studio

    インライン要素以外の要素(ブロックレベル要素など)では、開始タグと終了タグそれぞれの前後の改行・タブ・半角スペースは、すべて無視される

    よって、以下の整形は問題とならない。インライン要素とは異なることに注意する。

    <div>
    	<a href=""><span>ぴよ</span></a>
    </div>

    HTML における「空白」の仕様は、以下を参照。

     

    4. 画像における空白

    a タグimg タグを組み合わせるときは、特に注意が必要。両者とも「インライン要素」に分類されるため、上記の span タグと同じ扱いにしなければならない。

    <div>
    	<a href="">
    		<img src="http://goo.gl/FgON8" alt="メニュー1">
    	</a>
    </div>
    <div>
    	<a href=""><img src="http://goo.gl/1SIHV" alt="メニュー2"></a>
    </div>
    <div>
    	<a href=""><img src="http://goo.gl/5WFw0" alt="メニュー3"></a>
    </div>

    Firefox 21 で表示したところ、1番目と2番めの画像の間に隙間ができてしまった。

    SnapCrab_No-0242

    ただし、ブラウザによって表示が異なる。Google Chrome 27 では隙間ができない。

    IE 10 では、画像にアンカーが付いていることを示すために枠が表示され、その分全体の高さが長くなる。ただし、1番目と2番目の画像に隙間はないようだ。

    SnapCrab_No-0246

    これに対して、HTML ソースの改行を半角スペースにしない方法 : full of universeには、以下の2つ書き方が述べられている。

    タグ「後」の改行が表示されるんだったら、タグ「中」で改行してしまえ、という方法。

    改行なんてコメントアウトしてしまえ、という方法。

    しかし、どうもすっきりしないなぁ。。

    タグの属性ごとに改行して書くことがある。属性が 0 個だと考えて、次のように記述するのも… うーん。

    <ul>
    	<li
    		>1</li><li
    		>2</li><li
    		>3</li><li
    		>4</li><li
    		>5</li>
    </ul>

     

    参考サイト

    Firefox で Feedly v16 にアップグレードしてサイドバーの中身が消えたら、最小フォントサイズを 12 ポイント以下に設定する

    $
    0
    0

    1. サイドバーのカテゴリーが消えた

    Firefox 21 で Feedlyのバージョンを 16 にアップグレードした。その結果、サイドバーに表示されていたカテゴリーが消えてしまった。ただし、Google Chrome 27 では正常に表示されている。

    ウィンドウを横に目一杯広げ、常にカテゴリーを表示する状態にしても何も表示されない。

    feedly

    アップグレードは、http://www.feedly.com/index.htmlより行った。インストールされたバージョンは 16.0.500 。

    からもインストールすることができる。 (2013/06/17 現在、削除されてしまった。)

    このバージョンは、Google Reader から Feedly へ完全に移行する上で重要なものと位置づけられている。

    [IMPORTANT] Preparing to be upgraded to the new feedly cloud | Building Feedlyによると、

    We are in the process of finalizing the migration from the Google Reader back end to the new feedly cloud backend. …

    On the desktop, you can go to http://www.feedly.com/index.html and manually re-install the app and restart the browser. The latest feedly desktop number is 16.0.512.

    Over the next 2-3 days you should expect to receive a green banner message (desktop) or a green card (mobile). This is the notification that your feeds and categories and up to 1,000 starred items have been successfully migrated to the feedly cloud and the articles you are seeing are coming from the feedly service.

    Firefox では、2013/06/17 現在、バージョンは 16.0.500。Google Chrome の方は、16.0.512となっている。

    追記(2013/06/17 23:47):その後、再びアップグレードを行ったら、Firefox でもバージョンが 16.0.512となった。

     

    Feedly Cloud では問題ない

    追記(2013/06/21)クラウドに対応した Feedlyでは、最小フォントサイズを指定しても、サイドバーが消えることはなくなった。 バージョンは16.0.515。このバージョンでは、アドオンが不要となる。

    利用するためには、Feedly Cloud is Now Available to All Users | Building Feedlyによると、

    Step #1: Go to http://cloud.feedly.com
    Step #2: Login
    Step #3: Restart feedly and your browser on all your devices

    その後、これまで利用していた Feedly のアドオンを削除した。

     

    2. 最小フォントサイズを 12 以下に設定する

    サイドバーのカテゴリーが表示されない原因は、Firefox の「最小フォントサイズ」の設定だった。

    自分の場合、「最小フォントサイズ」を 13にしていた。これを 12 以下に変更したら、サイドバーのカテゴリーが標示されるようになった。

    [Q&A] My firefox left sidebar has disappeared | Building Feedlyによると、

    This was due to the fact that he had a setting where he was using custom fonts and had a minimum font size configured in firefox. Unfortunately feedly is not flexible enough to adapt to those constraints (we opened a bug to look into this). Between now and then, the solution is to change the firefox settings:

    “Yep! I changed the minimum font size to 12 point from 17 point and selected “Allow pages to choose their own fonts”, and now the sidebar is populated.”

    Firefox で「最小フォントサイズ」を変更するには、

    • Firefox ボタン > オプション > コンテンツ > フォントと配色 > 詳細設定 > 最小フォントサイズ

    で行う。

    SnapCrab_No-0289

    しかし、なぜか Google Chrome で最小フォントサイズを 12 以上に設定しても、サイドバーのカテゴリーは表示される。

    Firefox でフィードの登録先を設定する - Feedly Cloud へ追加したい場合

    $
    0
    0

    1. 「購読」ボタンの設定

    Firefox でサイトのフィードを登録したい場合、フィードの「購読」ボタンを押す。

    購読」ボタンの配置は、「ツールバーのカスタマイズ」で行う。

    • メニューより、表示 > ツールバー > カスタマイズ…

    SnapCrab_No-0294

    「購読」ボタンを押すと、フィードのプレビューが表示され、登録先を選択する画面が表示される。「この購読に使用するフィードリーダー」をカスタマイズしたい。

    SnapCrab_No-0296

     

    2. 購読に使用するフィードリーダーを追加

    a. 設定名と値

    登録先を追加するには、about:configの設定より、以下の設定名に準じた値を設定する。

    • browser.contentHandlers.types.0.title
    • browser.contentHandlers.types.0.type
    • and browser.contentHandlers.types.0.uri

    ただし、上記に含まれる数字(ここでは 0)は、「他の登録先で使われている数字」と重複しないこと。

    (cf. Browser.contentHandlers.types.*.uri - MozillaZine Knowledge Base)

    手順としては、最初にブラウザのロケーションバーに about:config と入力する。

    その後、検索フィールドに

    browser.contentHandlers.

    と入力して、設定名を絞り込み、既に設定してある値を表示。

    設定名に含まれる数字を確認し、「これまでに使われている数字」を控えておく。

     

    b. Feedly Cloud の場合

    SnapCrab_No-0298例えば、フィードの追加先として、Feedly Cloudを追加したいとする。

    自分の環境では、「これまでに使われている数字」の中で最も大きい数は 5 だった。そこで、新しく追加する設定名には、重複しないように 6 を使うことにした。

    設定名を追加するには、設定値が表示されている部分で、

    • 右クリック > 新規作成 > 文字列

    を選択し、下記の値を入力する。

    設定名

    browser.contentHandlers.types.6.title

    feedly

    browser.contentHandlers.types.6.type

    application/vnd.mozilla.maybe.feed

    browser.contentHandlers.types.6.uri

    http://cloud.feedly.com/#subscription/feed/%s

    一度、Firefox を再起動する。これにより、上記の …. title で設定した値がフィードリーダーの候補として、ダイアログに表示されるようになる。

    SnapCrab_No-0297

     

    関連記事

    Xmarks が原因で Firefox が固まる - 関連ファイルの削除とブックマークの整理

    $
    0
    0

    1. Xmarks の同期処理が終了しない

    Firefox と Google Chrome のブックマークを同期するために Xmarksを利用している。

    しかし、アドオン Xmarksが原因で Firefox が固まるようになった。

    Firefox で「応答なし」と表示されるとき、必ずアドオンバーにある Xmarks のアイコンが同期中であることを示している。試しに、Xmarks をアンインストールしたところ、Firefox が固まらなくなった。

    最近、Xmarks が同期を行う時間が長かった。また、手動で同期ボタンを押したところ、一向に処理が終わらない。

    SnapCrab_No-0300

     

    2. Xmarks の関連ファイルを削除する

    最初に、念のためブックマークをバックアップした。

    • Firefox ボタン > ブックマーク

    を選択。「インポートとバックアップ」より、バックアップを行った。

    Firefox を終了する。

    次に、Firefox の「プロファイル」フォルダにある、xmarks に関連するファイルを削除した。

    • xmarks.log
    • xmarks.sqlite
    • xmarks-baseline-ランダムな文字列.json

    通常、プロファイルは、以下のフォルダ内に存在する。

    • %APPDATA%\Mozilla\Firefox\Profiles\

    プロファイル | Firefox ヘルプによると、

    Windows の スタート ボタンをクリックし、スタートメニュー下部の検索ボックスに %APPDATA%\Mozilla\Firefox\Profiles\ と入力してまだ Enter キーは押さないでください。スタートメニューにプロファイルのリストが表示されます。

    Firefox を起動し、再度、Xmarks Syncをインストール。

    Xmarks のセットアップウィザードを起動し、最初の同期で「サーバーに保存されているブックマークを保持し、コンピューター内のブックマークを捨てる」。

    これにより、Xmarks を同期させたとき、すぐに同期されるようになり、Firefox が固まらなくなった。

    もし、Xmarks をインストールしていて、Firefox が「応答なし」となるなら、そのとき xmarks が同期をしていないか確認する必要がある。

     

    3. Xmarks に保存されているブックマークを整理する

    ついでに、重複したブックマークがいくつかあったので整理した。

    にアクセスし、メニューより、 Tools > Duplicate Bookmarks を選択する。

    SnapCrab_No-0299

    次に、「START THE BOOKMARK DUPLICATE DETECTOR」ボタンを押す。

    SnapCrab_No-0301

     

    参考サイト

    Viewing all 383 articles
    Browse latest View live