2011年8月28日日曜日

Firefox と Google Chrome のキャッシュを RAM ディスクへ移動させる

1. ブラウザのキャシュを RAM へ移動させたら、サクサク動くだろうか?

ブラウザのキャッシュを RAM ディスクへ移動させたい。

これまで、Firefox は、ディスクキャッシュを使わない設定で使っていた。RAM ディスクのキャッシュを有効にした場合と比べて、どちらがサクサク動くのだろう?

Google Chrome は、デフォルトで結構レスポンスが良い。しかし、慣れてくると、一瞬待たされるのが気になる。こちらも、キャシュを RAM ディスクへ移動させてみる。

 

2. RAM ディスクを作成

Dataram RAMDisk をダウンロードしてインストール。

窓の杜 - “RAMディスク”構築ソフト「Dataram RAMDisk」 によると、

利用するには、まず[Settings]タブでRAMディスクのサイズを指定しよう。次に、作成するRAMディスクのファイルシステムとブートセクターの種類を選択する。通常は、ファイルシステムを“FAT32”、ブートセクターを“Windows boot sector”に設定しておけばよいだろう。最後に[Start RAMDisk]ボタンを押せば、RAMディスクが作成され、“マイ コンピュータ”から利用可能になる。

(装飾は引用者による)

Disk Size は適当に 512 MB とした。

CropperCapture[314]

これにより、F ドライブが作成された。

F ドライブの中に、Firefox と Google Chrome 用のキャシュフォルダを作成。

  • F:
    • Firefox
    • Chrome

 

3. Firefox におけるキャッシュの設定

チューニング - Mozilla Firefox まとめサイト によると、

browser.cache.disk.parent_directory

OSがWindowsならフォルダの区切りには\\を用いてください

ロケーションバーで about:config を入力して、Firefox の設定を表示。

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

で、上記 browser.cache.disk.parent_directory を作成し、値を以下のように設定。

F:\\Firefox

Firefox を再起動し、キャシュフォルダが作成されたことを確認する。

 

4. Google Chrome の起動オプションでキャッシュの設定したが、PC の再起動後が問題

起動オプション - Google Chrome まとめWiki によると、

--disk-cache-dir="R:\Chrome Cache" RドライブのルートにあるChrome Cacheフォルダをディスクキャッシュフォルダに指定します。

スタートメニューから Google Chrome のアイコンを探して、右クリック > プロパティを選択。

リンク先のフィールドに、以下を追加した。

--disk-cache-dir="F:\Chrome”

ただし、この方法では、再起動後に設定した位置に、キャシュフォルダを作成してくれなかった。別の方法については、後述する。

 

既存のキャッシュの削除

次に、既存のキャッシュフォルダを削除する。Google Chrome が起動していないを確認。

    • C:\Users\ユーザ名\AppData\Local\Google\Chrome\User Data\Default

にある、Cache フォルダを削除。削除できない場合は、プロセスに chrome.exe が存在する可能性があるので、タスクマネージャでプロセスを終了させる。

Google Chrome を起動し、キャシュフォルダが作成されたことを確認する。

追記 (2011.9.30) : Google Chrome(BETA) に切り替えた場合は、再びキャッシュフォルダを削除する必要がある。

 

5. Google Chrome の Cache フォルダを RAM ディスクへ移動し、シンボリックリンクを作成

再起動したら、キャッシュフォルダが RAM ディスクに作成されない

追記 (2011.11.20) : 上記の方法で、Google Chrome のキャッシュを RAM ディスクへ移動させた。しかし、PC を再起動し、Google Chrome を起動したら、RAM ディスクにキャッシュフォルダが作成されれず、元の場所に作成されていた。 Firefox の方は、問題なく、上記の設定で、RAM ディスクにキャッシュを作成してくれる。

これに対処するため、上記の起動オプションで、キャッシュの位置を指定するのをやめた。

 

キャシュフォルダを RAM ディスクへ移動

代わりに、通常のキャッシュフォルダ、

  • C:\Users\ユーザ名\AppData\Local\Google\Chrome\User Data\Default\Cache

を、RAM ディスクへ移動させ、既存のキャッシュフォルダを削除

 

RAM ディスクへ移動させたキャシュフォルダのリンボリックリンクを作成
その後、シンボリックリンクを作るための Link Shell Extension を使い、RAM ディスクへ移動させたキャシュフォルダのシンボリックリンクを、元のキャシュフォルダの場所へ作成した。

Link Shell Extention の使い方は、インストール後、

  1. RAM ディスクへ移動させた Cache フォルダを、右クリックしながら、元のキャシュフォルダのあった位置へ、ドラッグアンドドロップ。
  2. 「ここにリンクを作成 > シンボリックリンク」を選択する。

 

Dataram RAMDisk で、RAM の内容を保存する

最後に、RAM ディスクの内容を、PC の終了時に保存し、起動時に復元する設定に変更する。

先ほど引用した「窓の杜 - “RAMディスク”構築ソフト「Dataram RAMDisk」 によると、

RAMディスクの内容をOS終了時にバックアップしたり、次回起動時に内容を復元したい場合は、RAMディスクのサイズ指定に続いて[Load and Save]タブで設定を行う。

まず、一度もRAMディスクの内容を保存していない場合は、“Save Image Settings”エリアでRAMディスクのイメージを保存するパスを指定したあと、[Save Disk Now]ボタンを押す。すると、イメージがファイルとして保存されるので、“Load Image Settings”エリアで保存したイメージファイルのパスを指定すればよい。なお、RAMディスクのイメージファイルは“*.img”という拡張子で保存されるが、これは本ソフト独自の形式で、一般的に利用されているCDイメージファイルとは互換性がない。

最後に、“Load Disk Image at Startup”と設定画面の“Save Disk Image on Shutdown”というチェックをONにすれば設定は完了。

11-20-20111

 

参考サイト

2011年8月20日土曜日

TeamViewer で接続先 PC を操作しない設定 - 相手の画面を表示するだけ

フルアクセスの状態だと、相手の PC を誤って操作してしまう

TeamViewer を使うと、別の PC をリモートから操作することができる。

ただし、デフォルトでは、接続先 PC の操作が可能な状態になっている。このため、誤って相手 PC の操作を奪ってしまうことがある。

これを次のように変更したい。

  1. 最初に接続した段階では、接続先の PC の画面を表示するだけで、操作はできない。
  2. 必要に応じて、接続先を操作できるようにする。

 

フルアクセスで接続した場合のリモート入力の無効化

接続先にフルアクセスで接続した場合は、接続された側の PC で、リモート入力を無効にする。

接続された側の画面右下に、TeamViewer のタブが表示されるので、その中にある

  • 「リモート入力の有効化/無効化」ボタン

をクリックして、リモート入力を無効化する。

CropperCapture[306]

 

接続時に相手の画面が表示されだけにする

TeamViewer を起動し、メニューより「その他 > オプション」を選択。

  • リモートコントロール > 他のパソコンへのアクセスルール

のアクセスコントロールを「表示」にする。

CropperCapture[300]

ただし、この方法だと、相手にアクセスするたびに許可が必要となる。

 

相手の許可を必要としない設定

接続先の許可を必要とせず、アクセスしたい場合は、同上のアクセスコントロールにおいて

「カスタム設定」

を選択した後、下の「詳細...」ボタンを押す。

表示されたダイアログで、

  • リモート画面表示: 許可
  • リモートコントロール: 確認後

とする。

CropperCapture[301]

2011年8月17日水曜日

Google Chrome でドラッグによる「検索」「リンクを開く」 - Firefox の Easy DragToGo の代替

Google Chrome で、以下の操作をできるようにしたい。

  1. 選択したテキストをドラッグして検索
  2. リンクをドラッグして開く

Firefox では、アドオン Easy DragToGo を使う と実現できる。

 

Gestures for Chrome のスーパードラッグ

Gestures for Chrome は、その名の通り、マウスジェスチャーを設定するための拡張機能。これに上記の機能も含まれている。

Gestures for Chrome(TM) をインストール。

Gestures for Chrome の設定 > Basics タブの「スーパードラッグ」にチェックを入れる。

CropperCapture[297]

次に、Drag Actions タブ の for link, for text のそれぞれに対して、add new gesture ボタンを押す。

マウスをドラッグして上下方向の操作を追加し、

  • 下方向の操作により、バックグラウンドで処理
  • 上方向の操作により、フォアグラウンドで処理

という設定にする。

CropperCapture[299]

ブルースクリーンの原因は無線LAN子機だった

再び BSOD が頻発

近頃まで、割と安定していた PC 。オーバークロックしても大丈夫なように BIOS を設定。しかし、最近、また動画の再生中に、突然ブルースクリーンになることが頻発するようになった。

以下の対策をしたけれど、いずれも効果なし。

  • オーバークロックをやめて、定格で運用。
  • Flash Player を再インストール。
  • グラフィックボードのドライバを、最新のものから、安定していると言われるバージョンまでを各々インストール。
  • Flash や Firefox のハードウェアアクセラレーションを切る。
  • デフラグとハードディスクのエラーチェック

 

BlueScreenView で BSOD の原因を探る

ブルースクリーンで強制終了した原因を解析して教えてくれるフリーソフト「BlueScreenView」 – GIGAZINE」 によると、
大体どのドライバが原因でクラッシュしたかがわかるので、あまりにも何度も同じドライバが原因でブルースクリーンが起きる場合には、そのドライバをアンイ ンストールするか、アップデートして最新版にするか、あるいは旧バージョンで安定したドライバに置き換えるとたいていの場合、その問題が解決します。ピンク色になっているのがおそらく原因と思われるドライバです。

Blue screen of death (STOP error) information in dump files. よりダウンロードしてインストール。

BlueScreenView で調べた結果、Caused By Driver の列に何度か記載があるのは、以下の2つ。

  • nwifi.sys
  • ntoskrnl.exe

nwifi.sys は無線LAN に関係しているようだ。

 

無線LAN子機が怪しい

自分が使っている無線LAN の機器は、BUFFALO の WLI-U2-KG54L

調べてみると、同じ無線LAN子機を使い、ブルースクリーンになる状況が自分とよく似ている人がいた。

  • ブルースクリーンの発生は、100%がブラウジング中。
  • IE9またはFirefoxを起動、4~10ページブラウジングすると、急に回線が不安定になりだす。
  • 「あれ?Webページが開かなくなったぞ?」と思ったら、その10秒後くらいにブルースクリーン発生。

    6月20日のWindowsアップデート直後からブルースクリーン連発。。。 より)

  • 自分の場合は、ブルースクリーンになる前、ブラウザの動画が不穏になり、マウスを動かしたときの感触から、直前に「ブルースクリーンの画面になる…!」ということがわかる。同じ型のものを予備でもう一つ持っているけれど、同じ現象が生じる。

    同ブログによると、

    無線LAN機器を新調したら、通信環境が驚くほど改善しました。

    とのこと。

     

    新しい無線LAN子機にしたら、ブルースクリーンにならない

    価格.com - 無線LANアダプタ を確認すると、WLI-UC-G301N が価格が手頃で、評価も高く、売れ筋。

    このまま BSOD が続くようであれば、マザーボード、CPU、メモリを変えるしかない。それに比べれば、無線LAN子機だけ購入するなら出費が少なくて済む。

    半信半疑で無線LAN子機を購入。

    その結果、ブルースクリーンに全くならない。複数の動画を同時に再生しても、何の問題もない。 ^^

    あまりにも劇的な変化に驚いた。ブルースクリーンの原因は、メモリかマザーボードにあると思い込んでいたため。まさか、USB に接続していた無線LANが問題だったとは…。 (@_@;

     

    オーバークロックしても問題なし

    定格でブルースクリーンにならないので、再びオーバークロックすることにした。

    その結果、以前よりも低い電圧で、高いクロック周波数で動作させることができるようになった。

     

    BIOS の設定

    PC で利用しているパーツは以下のもの。

    BIOS の Advanced 設定。

    • Ai Overclock Tuner : Manual
    • CPU Ratio Setting : 9.0
    • FSB Strap to North Bridge : 400MHz
    • FSB Frequency : 420
    • PCIE Frequency : 100
    • DRAM Frequency : DDR2-840MHz

    CPU, DRAM, North Bridge の電圧。

    • CPU Voltage : 1.275V
    • NB Voltage : 1.40V

    ( cf. とりあえず基礎知識を, DRAM Frequency の設定に気をつける )

    上記の設定で、とりあえずブルースクリーンにならない。

    ただし、メモリのレイテンシと電圧を設定した方が動きが良いようだ。

    DRAM Timing Conrtol : Manual
    • CAS# Latency : 6 DRAM Clocks
    • RAS# to CAS# Delay : 6 DRAM Clocks
    • RAS# PRE Time : 6 DRAM Clocks
    • RAS# ACT Time : 20 DRAM Clocks

    (cf. メモリに無理をさせない設定

    • DRAM Voltage : 1.95V

    ( cf. メモリの電圧を少し上げる )

     

    その他、変わったこと

    以前は、USB セレクティブ サスペンドの設定を無効にしないと、スリープから復帰できなかった。 この設定を「有効」にしても問題なくなった。

    また、2つのCPU の使用率を観察していると、以前よりもそれぞれが独立して動いているような感じに見受けられる。

    マウスの動きも少し良くなった気がする。

    2011年8月7日日曜日

    Firefox の Tab Mix Plus で直前にフォーカスがあったタブにキーボードで素早く切り替える - 2つのタブ間をショートカットキーで行き来するには

    タブを切り替えるためのショートカットキー

    Firefox, Google Chrome, IE などのブラウザにおいて、キーボードでタブを切り替えるには

    Ctrl + Tab

    を押す。 デフォルトでは、Ctrl + Tab を押すたびに、右側のタブにフォーカスが移る。

    しかし、この動作はイマイチ便利ではない。理由は、キーボードでタブを切り替えるときによく行う操作は、2つのタブ間で内容を見比べることだから。例えば、一つのタブで Google Docs に記入しながら、別のタブに切り替える。この切替を頻繁に行う。

     

    Tab Mix Plus の設定

    Tab Mix Plus を使うと、この動作をカスタマイズできる。

    • オプション > イベント > タブ機能

    における「Ctrl + Tab で最近表示した順にフォーカスを移す」にチェックを入れる。

    CropperCapture[287]

    これにより、Ctrl + Tab を押すたびに、直前にフォーカスがあったタブに素早く戻ることができる。ただし、タブを順にフォーカスを移動させたい場合は、Ctrl キーを押下したまま Tab を押し続ければよい。

    Google Chrome も同じ設定にしたいんだけれど、どの機能拡張を利用すればいいんだろう (?_?)

    Ruby で簡単なテキスト処理

    1. 目的

    テキストファイル内の、特定の文字列を変換し、新たなファイルに保存したい。

     

    2. 問題

    例えば、あるディレクトリ中の HTML ファイルを対象にして、img 要素の属性を変更したい。ただし、元のファイルを直接変更せず、拡張子を .php に変更したファイルを新たに作成する。

    img 要素の属性を変更する仕様は、

    <img class=”XXXXX” src=”YYYYY” alt=”ZZZZZ” />

    と記述があったら、

    <img clas=”XXXXX” src=”<?php echo PATH . "YYYYY"; ?>" alt="ZZZZZ" />

    とする。

     

    3. 方法

    ファイルの操作。

    • Dir.glob : ディレクトリの中のファイル名を取得する。
    • File
      • open : ファイルを開く。
      • basename : 拡張子を除く、ファイル名を取得する。

    エンコーディング。

    特殊な記法。

     

    4. ソースコード

    # -*- coding: utf-8 -*-
    
    Encoding.default_external = 'UTF-8'
    
    Dir.glob("*.html") do |f|
      File.open(f, "r") do |rf|
        File.open(File.basename(f, ".*") + ".php", "w") do |wf|
          rf.each do |line|
            if %r|(.*<img.+src=")(.+?)"| =~ line
              wf.puts %Q|#$1<?php echo PATH . "#$2"; ?>"#$'|
            else
              wf.puts line
            end
          end
        end
      end
    end

    上記は、UTF-8 で記述。

     

    5. 変更したい点

    上記は、以下の点が固定されている。

    • 対象とするファイル
    • ファイル名の変換の方法
    • 特定の文字列の変換の仕方

    これらの値と処理を変更できるようにしたい。

     

    手続きオブジェクトの利用

    処理を変更可能にする場合、関数の引数に、関数を渡せるように変更すれば良い。シンプルな処理なので、ストラテジーパターンを適用するほどでもない。 Ruby は関数を直接渡せないので、この場合、手続きオブジェクト を代わりに与える。

    手続きオブジェクトとはブロックをコンテキスト(ローカル変数のスコープやスタックフレーム)とともにオブジェクトしたものです。Proc クラスのインスタンスとして実現されています。

    関数の引数に、関数を渡せる言語では、素直に与えられた関数を呼び出すだけ良い。これに対して、Ruby で手続きオブジェクトを呼び出すには、Proc#call メソッドを使う。例えば、f を手続きオブジェクトだとすると、

    f.call(引数)

    と書いて呼び出す。

    上記 f に対応した、無名関数に相当する手続きオブジェクト作るには、

    lambda { |引数| 式 }

    と記述。lambda の代わりに proc と書くことができるが、lambda の方がシンプルのようだ。

    ( cf. Ruby のブロックと Proc )

     

    正規表現にマッチした変数を遅延評価

    パターンマッチに成功した値を格納する $1 のような特殊な変数の値は、パターンマッチが行われたタイミングに依存する。そのため、$1 を含む正規表現リテラルを交換できるように処理から抽出する場合、変数の評価が、パターンマッチ後に行われるようにしなければならない。

    評価を遅延させるためには、上記の手続きオブジェクトを利用する。

    ( cf. メタプログラミングRuby, p123 )

     

    オープンクラス

    拡張子を除いたファイル名を取得するメソッド名が一見したところわかりづらいので、既存の File クラスにメソッドを追加する。

     

    変更したソースコード
    # -*- coding: utf-8 -*-
    
    Encoding.default_external = 'UTF-8'
    
    class File
      def self.without_ext(filename)
        self.basename(filename, ".*")
      end
    end
    
    def convert(targets, cnv_filename, f)
      Dir.glob(targets) do |filename|
        File.open(filename, "r") do |read_file|
          File.open(cnv_filename.call(filename), "w") do |write_file|
            read_file.each do |line|
              write_file.puts(f.call(line))
            end
          end
        end
      end
    end
    
    re = %r|(.*<img.+src=")(.+?)"|
    rplc = lambda{ %Q|#$1<?php echo PATH . "#$2"; ?>"#$'| }
    
    convert("*.html", 
            lambda { |filename| File.without_ext(filename) + ".php" }, 
            lambda { |line| if re =~ line then rplc.call else line end })

     

    矢印ラムダ

    Ruby 1.9 より、lambda の代わりに矢印ラムダを使える。

    使い方は、Arrow Lambdas, a Ruby 1.9 Vignette | Rails Fire によると、

    -> { } # the basic form
    ->(x) { x * 2 } # with an argument
    -> x { x * 2} # (without parenthesis, too)
    ->(x, y) { x * y } # multiple arguments
    ->(x, y = 2) { x * y } # default arguments
    ->(x, y, &z) { x * y * z.call } # take a block

    cf. The Ruby programming language - Google ブックス

    こちらの書き方のほうが、引数が、関数の引数らしく見えるかも。

     

    関連記事

    2011年8月5日金曜日

    Excel, LibreOffice, SQL のワイルドカード

    Excel でワイルドカード

    Excel で文字データを入力した。入力中、不明なデータについては、半角で

    ?

    とした。

    後になって、不明なデータを検索しようと `?’ を検索。しかし、上手くヒットしない。

    ただし、全角の

    で検索すると、半角の ? もヒットする。デフォルトでは、半角と全角を区別しないため。

    「*」と「?」を検索する:Excel即効テクニック によると、

    Excelでデータを検索するときに文字列の一部が分からなくても、ワイルドカードと呼ばれる特別な記号「*」と「?」を使って検索できるのはご存知の通り。「*」は任意の文字列を表し「?」は任意の1文字を表す。…

    「*」と「?」を検索文字として指定するときは「~*」「~?」のように「~」を付けて入力すればよい

    正規表現 – Wikipedia の書き方とは異なるで気をつける。

     

    LibreOffice で正規表現による検索

    これに対して、LibreOffice では、

  • 編集 → 検索と置換を選択します。
  • ダイアログを展開するには、詳細オプションをクリックします。
  • 正規表現チェックボックスを選択します。
  • (Writer/Using Wildcards in Text Searches/ja - LibreOffice Help より)

    正規表現なので、素直に書ける。

  • 任意の 1 文字を表すワイルドカードは、ピリオド記号 (.) です。
  • 直前の文字の任意回数の繰り返し (ゼロ回を含む) を示すワイルドカードは、アスタリスク記号です。
  • LibreOffice の方がシンプルで好きだなぁ。

     

    SQL との比較

    ちなみに、SQL では、

    (4) LIKE条件
    文字の検索条件を指定します。ここで、%と_(アンダースコア)は特殊な意味が割り当てられており、%は「任意の文字数の任意の文字」_は「1文字の任意の文字」を表します。

    SQLの基礎「SELECT」文を覚えよう より)

    Access は 「あいまいな条件抽出 - LIKE演算子 : SQL入門講座」 によると、

    アスタリスク (*)
    パーセント(%)

    0文字以上の任意の文字列を表す。

    疑問符(?)
    アンダスコア(_)

    任意の一文字を表す。

    使ってないと、すぐにごっちゃになる。 (+_+)

    (上記の引用の装飾は引用者による)

    上方向への視線移動は辛い

    モニタが広いと視線の移動が疲れる

    でかくて、解像度が高いモニタが普通となった、昨今のデスクトップPC。小さなモニタを使っていたのは、今は昔。アクティブなウィンドウを画面一杯に広げ、アプリケーションを利用していた頃がなつかしい。その頃の名残か、さすがにワイドモニタでウィンドウを横方向に目一杯広げることはないが、縦方向には目一杯広げる。

    現在、自分が使っているモニタの解像度は WUXGA(1920×1200)価格.com で調べると、売れ筋のサイズは フルHD(1920×1080) 。このサイズより縦方向にやや解像度が高い。このため、ブラウザのウィンドウを縦一杯に広げた場合、表示領域が結構広い。下図で、WUXGA と HD1080 を見比べた場合、それほど違いはないように見えるけど。

     

    視線の上方向へ移動が特に辛い

    当初、表示領域が広くて、一覧性に優れていたため、嬉嬉として、ウィンドウを縦方向に目一杯広げていた。

    Windows 7 の新機能にも、「Aero スナップ」として、画面いっぱいにウィンドウを広げる手助けをする機能が付いている。

    ウィンドウをドラッグする場所によって、垂直方向に広げたり、全画面表示にしたり、または別のウィンドウと左右に並べて表示することができます。スナップを使えば、ウィンドウの閲覧や整理、比較が簡単になります…

    スナップ - Windows 7 の機能 - Microsoft Windows より )

    モニタの表示領域が広いのは快適。しかし、なぜかブラウザを使っているときに、ストレスを感じるようになった。理由を考えてみると、ブラウザを利用するときは、複数のタブを開きながら、同時に色々なサイトをチェックする。タブはタイトルバーの下に位置している。記事を下方向へと読んでいった後、次に視線が移るのは、上部のタブ。この視線移動を繰り返すのが結構しんどい。 (+_+)

    視線の横方向への動きや、下方向への動きは、画面が広くなっても全く辛くない。人の視線は、上方向に向けることが苦手なのだろうか?

    そういえば、昔は、ブラウザで文章を読み進めていくとき、スペースキーを押して一画面分をスクロールさせていた。それが今ではマウスホイールを多用している。視線の移動を最小限に抑えるため、読みたい内容を、視線の先に移動させることが多い。結果、画面が広いにもかかわらず、見ている範囲は割と狭い。

     

    画面が広いと目に飛び込んでくる情報が多くなる

    これに加え、表示領域が広いと、目に入る情報量も増える。

    視界が広いことは良いことに思えるが、反って情報に惑わされている気がする。ちょうど、電車の中で携帯で話している人がいると気になるのと同じように。聞くつもりはないけれど、音声が強制的に耳に入る。頭の中で自動的に意味の解釈が進み、話している内容を嫌でも意識してしまう。

    ところで、iPad のようなタブレット型のデバイスは、割と使いやすそうに見える。その理由は、表示できる範囲が限られているためなのかもしれない。

     

    上下方向の視線移動を抑えるには

    ウィンドウの縦方向を狭める

    結局、上下方向の視線移動を抑えるには、ウィンドウを縦方向目一杯に広げるのをやめればいいだけ。

    生来、貧乏性のため、「あるものは使わなきゃ損だ」という意識が強すぎた。使わない空間をそのまま開けておくのはもったいない。このため、ウィンドウを狭めて使用すれば良いという考えになかなか至らなかった。

    CropperCapture[276]-vert

    上図のウィンドウの大きさを Firefox アドオン – Firesizer で測ると、下のウィンドウは、100ピクセルほど縦方向に狭い。見た目はあまり変わらないが、視線の上下運動は結構楽になる。

     

    Aero スナップを無効にする

    CropperCapture[277]これに伴い、ウィンドウを画面いっぱいに広げる機能は必要なくなったので、Aero スナップを無効にした。

    • コントロール パネル\コンピューターの簡単操作\コンピューターの簡単操作センター\マウスを使いやすくします

    の「ウィンドウの管理を簡単にします」における

    • 「ウィンドウが画面の端に移動されたとき自動的に整列されないようにします」

    にチェックを入れる。

    スタートメニューより、「プログラムとファイルの検索」フィールドに

    「端」

    と入力すれば、上記項目にすぐにアクセスできる。

     

    ウィンドウの大きさ変えるには hMouseLimit を利用する

    Aero スナップに頼らず、ウィンドウの大きさを変えなければならない。この場合、hMouseLimit を使うと便利。

     

    Firefox の Tab Mix Plus でタブをウィンドウの下部に表示

    CropperCapture[266]ブラウザでタブを見るには、視線を上に持っていかなくてはならない。下にタブがあった方が視線の移動が楽なので、Tab Mix Plus を使って表示を変更する。

    • Tab Mix Plus のオプション > 表示 > タブバー > タブバーの位置

    を「Bottom」に設定。

     

    画面の情報量を減らすには仮想デスクトップを利用

    2011年8月2日火曜日

    AutoHotkey で Esc キーを別のキー入力により代替

    入力や操作を取り消すための「エスケープキー」。キーボードの左上に位置する。ホームポジションから遠いために、使う度に左腕をわずかに動かす必要がある。(+_+) 押すのが面倒なので、いい加減、別のキーを割り当てることに。

     

    Ctrl + [ で Esc を入力

    ところで、どんなキーコンビネーションを Esc に割り当てようか。。

    Emacs では、「10.14 Escape キーがない場合はどうしたらいいのですか?」によると、

    C-[ を代わりに使ってください。これは ESC と同じく ASCII コードの 27 を送信します。

    vi では、「Escキーが遠い - このブログは証明できない。」によると、

    Vimの悩ましき問題点といえば、Escキーが遠いことです。よく使うのに、遠い。

    そこで、Ctrl+[を押すと、Escキーを押したことになるそうです。

    ということで、

    Ctrl + [

    を Esc キーに割り当てることにした。

     

    AutoHotkey で キー入力の変更

    予め、AutoHotkey Download より、AutoHotkey_L をインストール。

    エディタで以下を記述。

    ^[::Send {Esc}

    拡張子を .ahk として、適当に名前をつける。 ( remap_key.ahk )

    後は、スタートアップに入れて、起動するようにしておく。

    キーを変更したところ、思っていた以上に快適になった。

     

    関連記事

    参考サイト