<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-76550672307031307</id><updated>2012-02-01T13:32:25.416+09:00</updated><category term='つぶやき'/><category term='Windows XP'/><category term='メモリ'/><category term='Visual Studio'/><category term='冷却'/><category term='計画'/><category term='ブックマークレット'/><category term='再帰'/><category term='写真加工'/><category term='アクセス制御'/><category term='動画'/><category term='UI'/><category term='継続'/><category term='スマートキーワード'/><category term='Wine'/><category term='音量'/><category term='Either'/><category term='デコレータ'/><category term='薬'/><category term='ログ'/><category term='リスト内包表記'/><category term='整合性制約'/><category term='バックアップ'/><category term='Greasemonkey'/><category term='ZOHO'/><category term='ノートPC'/><category term='配列'/><category term='WebRunner'/><category term='プロキシ'/><category term='ショートカット'/><category term='GIMP'/><category term='関数型'/><category term='空文字列'/><category term='Inkscape'/><category term='Apache'/><category term='vodafone'/><category term='色付け'/><category term='BIOS'/><category term='Dropbox'/><category term='バッグ'/><category term='エクスプローラ'/><category term='Google+'/><category term='Meadow'/><category term='集合'/><category term='Firefox 8'/><category term='スパム'/><category term='CSS'/><category term='Zoho DB and Reports'/><category term='Subversion'/><category term='タグクラウド'/><category term='Yahoo Pipes'/><category term='ブックマーク'/><category term='Tips'/><category term='Word'/><category term='Mozc'/><category term='食べ物'/><category term='グラフ'/><category term='VBA'/><category term='PEAR'/><category term='ShowMyPC'/><category term='検証'/><category term='Firefox'/><category term='バージョン管理'/><category term='パターンマッチ'/><category term='Google Notebook'/><category term='CD'/><category term='関数合成'/><category term='ラベル'/><category term='FileMaker'/><category term='型'/><category term='SKKIME'/><category term='ファイル転送'/><category term='表'/><category term='電圧'/><category term='Vista'/><category term='エディタ'/><category term='つかむ'/><category term='LibreOffice'/><category term='花火'/><category term='コードアシスト'/><category term='数値'/><category term='キー入力'/><category term='お絵描き'/><category term='FriendFeed'/><category term='ニコニコ'/><category term='楽天'/><category term='Seesaa'/><category term='Nifty'/><category term='英語配列'/><category term='制限'/><category term='イコライザ'/><category term='SNS'/><category term='プリンタ'/><category term='導出インスタンス'/><category term='テープ起こし'/><category term='お灸'/><category term='Access'/><category term='Chrome'/><category term='Firefox 6'/><category term='Notepad++'/><category term='ZOHO Sheet'/><category term='CGI'/><category term='SSL'/><category term='時刻'/><category term='PDT'/><category term='差'/><category term='顔文字'/><category term='見積り'/><category term='画面共有'/><category term='アニメーション'/><category term='reduce'/><category term='WordPress'/><category term='型推論'/><category term='チャット'/><category term='モナド'/><category term='整理整頓'/><category term='総称型'/><category term='Calc'/><category term='比較'/><category term='XPC'/><category term='文字入力'/><category term='日本語'/><category term='テキスト'/><category term='code reading'/><category term='移動'/><category term='英語'/><category term='PHP'/><category term='GTD'/><category term='Firefox 4'/><category term='共同作業'/><category term='タブ'/><category term='Google AJAX API'/><category term='Google 日本語入力'/><category term='Ruby'/><category term='twitter'/><category term='ユーティリティ'/><category term='Flickr'/><category term='ATI'/><category term='ウイルス'/><category term='Subclipse'/><category term='エラー処理'/><category term='正規表現'/><category term='ワイルドカード'/><category term='確率'/><category term='情報収集'/><category term='IME'/><category term='掲示板'/><category term='日付'/><category term='ドキュメント'/><category term='プロトコル'/><category term='フィールド'/><category term='京都'/><category term='URL短縮'/><category term='畳み込み関数'/><category term='文字'/><category term='中華'/><category term='述語'/><category term='暖房'/><category term='C'/><category term='Google Docs'/><category term='モニタ'/><category term='リレーショナルモデル'/><category term='Logicool'/><category term='検索エンジン'/><category term='XAMPP'/><category term='HTTP'/><category term='切替え'/><category term='Scuttle'/><category term='ライブラリ'/><category term='インポート'/><category term='Flash'/><category term='Git'/><category term='解凍'/><category term='埋め込み'/><category term='Google Bookmarks'/><category term='ウィルス'/><category term='高階関数'/><category term='Basic 認証'/><category term='Safari'/><category term='SketchUp'/><category term='福祉'/><category term='Google スプレッドシート'/><category term='音質'/><category term='写メール'/><category term='LifeHacks'/><category term='表計算'/><category term='cron'/><category term='サブフォーム'/><category term='タスクスケジューラ'/><category term='ネットショップ'/><category term='windows live messenger'/><category term='ZOHO Creator'/><category term='おちゃのこネット'/><category term='印刷'/><category term='Lubuntu'/><category term='jQuery'/><category term='繰延'/><category term='Google Reader'/><category term='ディスプレイ'/><category term='インストール'/><category term='Thunderbird'/><category term='DOCTYPE'/><category term='IO'/><category term='リフレッシュ'/><category term='URL'/><category term='UML'/><category term='XML'/><category term='外部キー'/><category term='ブロック'/><category term='文字列'/><category term='接頭辞'/><category term='ストリーミング'/><category term='クエリ'/><category term='選択'/><category term='クラスメソッド'/><category term='テスト'/><category term='Drupal'/><category term='掃除'/><category term='ヘッドホン'/><category term='スープ'/><category term='Google Analytics'/><category term='Read'/><category term='真偽値'/><category term='有理数'/><category term='ブックマックレット'/><category term='BSOD'/><category term='料理'/><category term='等値'/><category term='自己管理'/><category term='ネットワーク'/><category term='拡張機能'/><category term='垂直方向'/><category term='メール'/><category term='OpenOffice Draw'/><category term='プリントスクリーン'/><category term='抽出'/><category term='MVC'/><category term='インターネット'/><category term='セッション'/><category term='Windows Update'/><category term='ニーチェ'/><category term='map'/><category term='ブラウザ'/><category term='サクラエディタ'/><category term='Google Sites'/><category term='言語'/><category term='環境変数'/><category term='壁紙'/><category term='or'/><category term='Ameba'/><category term='代入'/><category term='iKnow'/><category term='組込み'/><category term='優先度'/><category term='変換'/><category term='付箋'/><category term='CPU'/><category term='文房具'/><category term='pragger'/><category term='洋食'/><category term='圧縮'/><category term='Shuttle'/><category term='ポップ'/><category term='スコープ'/><category term='拡張'/><category term='メンテナンス'/><category term='クラス'/><category term='無名関数'/><category term='Maybe'/><category term='HDD'/><category term='文書'/><category term='エクスポート'/><category term='リンク'/><category term='入力'/><category term='YouTube'/><category term='MS'/><category term='Java'/><category term='操作'/><category term='API'/><category term='Google App Engine'/><category term='null'/><category term='C#'/><category term='K-Meleon'/><category term='Google Page Creator'/><category term='GitHub'/><category term='米'/><category term='構造の抽象化'/><category term='はてな'/><category term='OpenOffice Base'/><category term='ドラム'/><category term='Google Web Fonts'/><category term='障害'/><category term='エンコーディング'/><category term='おもちゃ'/><category term='Google Calendar'/><category term='Stylish'/><category term='レジストリ'/><category term='ODBC'/><category term='Web カメラ'/><category term='枠'/><category term='マウス'/><category term='Wiki'/><category term='画像'/><category term='Google Apps'/><category term='日本語入力'/><category term='アンカー'/><category term='Google Spreadsheets'/><category term='クラス図'/><category term='キーボード'/><category term='last.fm'/><category term='拡大'/><category term='ショートタグ'/><category term='Windows'/><category term='カレンダー'/><category term='SBM'/><category term='基本'/><category term='リスト'/><category term='Skype'/><category term='高齢者'/><category term='ドメイン'/><category term='Scribus'/><category term='Puppy Linux'/><category term='FTP'/><category term='Monad'/><category term='影舞'/><category term='クリップボード'/><category term='Photoscape'/><category term='Google ガジェット'/><category term='fold'/><category term='置換'/><category term='Aero'/><category term='Show'/><category term='高速化'/><category term='医薬品'/><category term='飲み物'/><category term='FreeMind'/><category term='ロボット'/><category term='オーバークロック'/><category term='Windows Vista'/><category term='Web フォント'/><category term='PDF'/><category term='検索'/><category term='デザインパターン'/><category term='Pipes'/><category term='UnitTest'/><category term='OpenOffice'/><category term='Perl'/><category term='lambda'/><category term='NetBeans'/><category term='果物'/><category term='オブジェクト指向'/><category term='USB'/><category term='相関サブクエリ'/><category term='かわいい'/><category term='生活'/><category term='Google SketchUp'/><category term='skk'/><category term='インターフェイス'/><category term='集約'/><category term='テンプレート'/><category term='地図'/><category term='写真'/><category term='オブジェクト'/><category term='Django'/><category term='簿記'/><category term='Eclipse'/><category term='Iterator'/><category term='図形描画'/><category term='AT'/><category term='家電'/><category term='考える技術'/><category term='タスクバー'/><category term='イコライザー'/><category term='修理'/><category term='クロージャ'/><category term='サウンド'/><category term='エンターテイメント'/><category term='LISP'/><category term='Excel'/><category term='動画変換'/><category term='ウィンドウ'/><category term='Python'/><category term='ドライバ'/><category term='段組'/><category term='PyScripter'/><category term='OpenOffice Impress'/><category term='LibreOffice Calc'/><category term='USTREAM'/><category term='タグ'/><category term='eval'/><category term='パスタ'/><category term='エフェクタ'/><category term='Windows Live Writer'/><category term='端'/><category term='tumblr'/><category term='IDE'/><category term='Chromium'/><category term='GUI'/><category term='抽象化'/><category term='Windows Media Player'/><category term='Scala'/><category term='アルゴリズム'/><category term='オンラインストレージ'/><category term='Webアプリ'/><category term='ラジオ'/><category term='携帯'/><category term='Google デスクトップ'/><category term='DVD'/><category term='複利'/><category term='Facebook'/><category term='Scheme'/><category term='トラブル'/><category term='開発環境'/><category term='水平方向'/><category term='テーマ'/><category term='ビデオチャット'/><category term='ジェネレータ'/><category term='プロセス'/><category term='学習'/><category term='ファイル比較'/><category term='コンテナ'/><category term='OpenOffice Calc'/><category term='セキュリティ'/><category term='無線LAN'/><category term='型クラス'/><category term='寒さ対策'/><category term='まとめ'/><category term='鍋物'/><category term='村上春樹'/><category term='フォント'/><category term='パソコン'/><category term='ネスト'/><category term='コメント'/><category term='bitly'/><category term='Google'/><category term='飲酒'/><category term='ユーザビリティ'/><category term='JDBC'/><category term='AutoHotkey'/><category term='コマンドプロンプト'/><category term='簡単'/><category term='等値性'/><category term='データコンストラクタ'/><category term='Google Desktop'/><category term='ZOZOTOWN'/><category term='Linux'/><category term='Emacs List'/><category term='仮想マシン'/><category term='Script-Fu'/><category term='システムツール'/><category term='パッケージ'/><category term='コマンドライン'/><category term='Ubuntu'/><category term='テクノ'/><category term='スリープ'/><category term='レンタルサーバ'/><category term='年配'/><category term='スタートメニュー'/><category term='いいね'/><category term='量化'/><category term='SQL'/><category term='RTM'/><category term='ソート'/><category term='パスワード'/><category term='フィード'/><category term='Tutorial D'/><category term='アニメ'/><category term='入力機器'/><category term='ぬいぐるみ'/><category term='ファッション'/><category term='自作'/><category term='EcoLinux'/><category term='モジュール'/><category term='Enumerable'/><category term='Rel'/><category term='スクレイピング'/><category term='ブログ'/><category term='靴'/><category term='デスクトップ'/><category term='Telnet'/><category term='デバッグ'/><category term='DOM'/><category term='RSS'/><category term='ファイラ'/><category term='自作PC'/><category term='Mac'/><category term='and'/><category term='AZIK'/><category term='ぼかす'/><category term='スケジュール管理'/><category term='関数'/><category term='CakePHP'/><category term='温度'/><category term='モデリング'/><category term='クロス集計'/><category term='漢方薬'/><category term='MySQL'/><category term='カスタマイズ'/><category term='夏'/><category term='ランチャー'/><category term='ファイアーウォール'/><category term='デザイン'/><category term='エラー'/><category term='メモ'/><category term='Gmail'/><category term='少数'/><category term='スピーカー'/><category term='ピアノ'/><category term='決算'/><category term='スパイウェア'/><category term='補完'/><category term='畳み込み'/><category term='Blogger'/><category term='揃える'/><category term='設定'/><category term='Haskell'/><category term='SMF'/><category term='シンプル'/><category term='ボサノバ'/><category term='解像度'/><category term='userscript'/><category term='スタック'/><category term='共有'/><category term='パス'/><category term='MSIME'/><category term='VSTHost'/><category term='統計'/><category term='HTML'/><category term='イベント処理'/><category term='Firefox 3'/><category term='Emacs'/><category term='表示'/><category term='JavaScript'/><category term='アドオン'/><category term='ファイル共有'/><category term='互換シェル'/><category term='バッチファイル'/><category term='型変数'/><category term='Nero'/><category term='無線'/><category term='ノート'/><category term='proxy'/><category term='状態'/><category term='慣習'/><category term='麺'/><category term='SQL Server'/><category term='リモート'/><category term='MySQL Workbench'/><category term='XUL'/><category term='Firewall'/><category term='ビデオ'/><category term='体'/><category term='Picasa'/><category term='制約'/><category term='健康'/><category term='SMTP'/><category term='Google Map'/><category term='Visual Basic'/><category term='bat'/><category term='はまった'/><category term='認証'/><category term='タスク'/><category term='遅延評価'/><category term='Windows 7'/><category term='ALPSLAB'/><category term='通販'/><category term='XREA'/><category term='暗号化'/><category term='バッチ処理'/><category term='ガジェット'/><category term='テーブル'/><category term='コミュニケーション'/><category term='ショートカットキー'/><category term='時間'/><category term='分割'/><category term='TeamViewer'/><category term='時間計測'/><category term='Zoundry'/><category term='色'/><category term='読書'/><category term='和食'/><category term='条件'/><category term='仮想デスクトップ'/><category term='音声'/><category term='vb6'/><category term='機能拡張'/><category term='金'/><category term='マインドマップ'/><category term='Firebug'/><category term='スクリプト'/><category term='3D'/><category term='Ubiquity'/><category term='レポート'/><category term='タスク管理'/><category term='イタリア料理'/><category term='IE'/><category term='SOBA'/><category term='ソースコード'/><category term='音楽'/><category term='スクリーンショット'/><category term='aptana'/><category term='REPL'/><category term='R'/><category term='イテレータ'/><title type='text'>すぐに忘れる脳みそのためのメモ</title><subtitle type='html'>書いて忘れて頭スッキリ</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default?start-index=101&amp;max-results=100'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1059</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-7924773472513906029</id><published>2012-01-23T00:39:00.001+09:00</published><updated>2012-01-30T23:33:44.234+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='バッチファイル'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='音量'/><category scheme='http://www.blogger.com/atom/ns#' term='バッチ処理'/><title type='text'>Windows でアプリケーションを再起動するバッチ処理 - タスクの強制終了、タスクリスト、エラーレベルによる条件分岐</title><content type='html'>&lt;h4&gt;1. Tray Volume が動作しなくなる&lt;/h4&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://shirosai.web.fc2.com/trayvolume/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Tray Volume - マウスホイールで音量調整を行うフリーソフト" alt="http://shirosai.web.fc2.com/trayvolume/" src="http://kwout.com/cutout/n/w8/38/pmv_bor.jpg" width="273" height="56" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://shirosai.web.fc2.com/trayvolume/"&gt;&lt;font size="2"&gt;Tray Volume &lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/nw838pmv"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; PC の音量を素早く変更するために、&lt;a href="http://shirosai.web.fc2.com/trayvolume/"&gt;Tray Volume&lt;/a&gt; を利用している。   &lt;ul&gt;   &lt;li&gt;&lt;a href="http://jutememo.blogspot.com/2010/05/tray-volume.html"&gt;タスクバーでマウスホイールによって音量を調整 – Tray Volume&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;設定は、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;マウスポインタをタスクバーに移動し、 &lt;/li&gt;    &lt;li&gt;マウスホイールを動かす &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;ことにより、音量を変更するようにしている。&lt;/p&gt;  &lt;p align="left"&gt;しかし、何が原因か分からないけれど、アプリケーションが起動しているにもかかわらず、音量を変更できなくなることがある。&lt;/p&gt;  &lt;p align="left"&gt;Tray Volume のバージョンは、1.4.4.0。使用環境は Windows 7 64bit 。&lt;/p&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. Tray Volume を再起動するためのバッチファイル&lt;/h4&gt;  &lt;p align="left"&gt;動作しなくなる度に、アプリケーションを再起動。&lt;/p&gt;  &lt;p align="left"&gt;毎回、起動しなおすのは面倒なので、Tray Volume を再起動するバッチファイルを作成しておく。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;@echo off

tasklist | findstr &amp;quot;TrayVolume.exe&amp;quot;

if errorlevel 1 goto START
if errorlevel 0 taskkill /f /im &amp;quot;TrayVolume.exe&amp;quot;

:START
start &amp;quot;&amp;quot; &amp;quot;C:\Program Files (x86)\TrayVolume\TrayVolume.exe&amp;quot;&lt;/pre&gt;

&lt;p align="left"&gt;上記を、適当に restartTrayVolume.bat と名前を付けて保存。&lt;/p&gt;

&lt;p align="left"&gt;Tray Volume が動作しなくなったら、バッチファイルを起動する。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h4 align="left"&gt;3. バッチファイルの内容&lt;/h4&gt;

&lt;h5 align="left"&gt;タスクの強制終了&lt;/h5&gt;

&lt;p align="left"&gt;タスクを終了するためのコマンドは taskkill 。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;cf. &lt;a href="http://jutememo.blogspot.com/2010/04/skype.html"&gt;Skype の再起動をバッチファイルで行う&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;&lt;a href="http://ykr414.com/dos/dos04.html#29"&gt;taskkill - コマンドプロンプトを使ってみよう！ －設定・システム操作－&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p align="left"&gt;強制終了をするための /f オプションを付けないと、終了できないことがあった。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;タスクリストから、タスクが起動しているか確かめる&lt;/h5&gt;

&lt;p align="left"&gt;Tray Volume を終了する前に、Tray Volume が起動しているか確かめておく。&lt;/p&gt;

&lt;p align="left"&gt;動作しているタスクの一覧を得るには、tasklist コマンドを利用する。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;cf. &lt;a href="http://jutememo.blogspot.com/2011/12/windows-tasklist-ruby.html"&gt;Windows で特定のアプリケーションのメモリ使用量を監視する - コマンドラインの tasklist とバッチファイル、Ruby を利用&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;&lt;a href="http://ykr414.com/dos/dos04.html#30"&gt;tasklist - コマンドプロンプトを使ってみよう！ －設定・システム操作－&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;tasklist コマンドで、当該タスクが存在するか判定するには、findstr コマンドを併用し、条件分岐でエラーレベルを取得する。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=48548&amp;amp;forum=7"&gt;【バッチファイル】tasklistの実行結果取得方法について － Insider.NET － ＠IT&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;下記のコマンドで起動成功失敗のerrorlevelが取れました。 
    &lt;br /&gt;tasklist /FI &amp;quot;USERNAME eq ユーザ名&amp;quot; | findstr プロセス名 

    &lt;br /&gt;echo %errorlevel% &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;findstr コマンドは、文字列の検索を行うためのもの。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://ykr414.com/dos/dos02.html#09"&gt;findstr - コマンドプロンプトを使ってみよう！ －ファイル操作－&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;エラーレベルによる条件分岐は、順序に注意&lt;/h5&gt;

&lt;p&gt;上記のコマンドは、実行すると結果を返す。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://news.mynavi.jp/articles/2009/02/03/bat/index.html"&gt;【ハウツー】ゼロからはじめるバッチプログラミング - 制御編 (1) 分岐を使うバッチプログラミング&amp;#160; | マイナビニュース&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;アプリケーションは、終了時にシステムに対して値を返すことができます。例えば、C言語でプログラムを作ったことがあればmain()関数の最後に return文で整数を返したはずです。この値がどのような意味を持っているのかはアプリケーションが定めますが、システムはアプリケーションが返した終了コードを受け取り、ifコマンドでバッチ処理できます。多くの開発者にとってもあまり意識されない終了コードですが、エラーの発生などによって返す値を定めることで、バッチファイルによる管理が可能になります。&lt;/p&gt;

  &lt;pre&gt;&lt;code&gt;if errorlevel 番号 コマンド
&lt;/code&gt;&lt;/pre&gt;

  &lt;p&gt;このifコマンドは、直前に実行したアプリケーションの終了コードが指定した番号と同じかそれより上であれば、続くコマンドを実行します。多くのアプリケーションは、正常終了した場合は0を返し、そうでなければ0以外の値を返します。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;注意する点は、ERRORLEVEL の数値を並べる順序。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.fpcu.jp/dosvcmd/batch.htm#if"&gt;バッチファイルの制御用コマンド [FPCU]DOS/V&amp;amp;Windowsコマンド・プロンプト・リファレンス&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;&lt;dt&gt;&lt;a name="errorlevel"&gt;≪条件書式1≫ &lt;b&gt;ERRORLEVEL 数値&lt;/b&gt;&lt;/a&gt;&lt;/dt&gt;&lt;dd&gt;IFより前に実行されたプログラムが、指定した「数値」&lt;b&gt;以上&lt;/b&gt;の「終了コード」をDOSに返しているときに、条件が成立します。&lt;/dd&gt;&lt;/blockquote&gt;

&lt;p&gt;例えば、&lt;a href="http://fpcu.on.coocan.jp/dosvcmd/bbs/log/cat3/if/errorlevel/2-0904.html"&gt;ERRORLEVELでの条件分岐が意図した結果にならない (DOSプロンプト活用相談室LOG)&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;… 仕様として IF ERRORLEVEL の判定が「以上」であることが原因だと思います。等号じゃないんですね。 
    &lt;br /&gt;なので、 

    &lt;br /&gt;＞IF ERRORLEVEL 0 GOTO NG 

    &lt;br /&gt;＞IF ERRORLEVEL 1 GOTO OK 

    &lt;br /&gt;という順序で記述されると、最初の行は errorlevel が 1 の場合でも成り立ってしまって GOTO NG してしまうと思います。 

    &lt;br /&gt;IF ERRORLEVEL 1 GOTO OK 

    &lt;br /&gt;IF ERRORLEVEL 0 GOTO NG 

    &lt;br /&gt;というように、判定順序を数字の大きい方からにすればよいのではないでしょうか。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;ERRORLEVEL は、比較演算子。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.ne.jp/asahi/hishidama/home/tech/windows/bat.html#if"&gt;バッチメモ(Hishidama's bat-file Memo)&lt;/a&gt; によると、、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;条件には、以下の比較演算が使える。（大文字でも小文字でもよい）…&lt;/p&gt;

  &lt;p&gt;単項演算子…&lt;/p&gt;

  &lt;p&gt;&lt;code&gt;&lt;a name="ERRORLEVEL"&gt;ERRORLEVEL&lt;/a&gt;&lt;/code&gt; 

    &lt;br /&gt;&lt;a href="http://www.ne.jp/asahi/hishidama/home/tech/windows/bat.html#ERRORLEVEL"&gt;%ERRORLEVEL%&lt;/a&gt;が値以上 

    &lt;br /&gt;なぜこんな演算子がわざわざあるかについては、&lt;a href="http://www.ne.jp/asahi/hishidama/home/tech/windows/bat.html#%E7%92%B0%E5%A2%83%E5%A4%89%E6%95%B0%E3%81%AF%E5%AE%9F%E8%A1%8C%E9%96%8B%E5%A7%8B%E5%89%8D%E3%81%AB%E5%B1%95%E9%96%8B%E3%81%95%E3%82%8C%E3%82%8B"&gt;注意点&lt;/a&gt;を参照。 

    &lt;br /&gt;&lt;code&gt;if errorlevel 1 echo エラー&lt;/code&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;バッチ処理の仕様に辟易 (+_+)&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;4. Windows 7 でクイック起動により、バッチファイルを起動する&lt;/h4&gt;

&lt;p&gt;Windows 7 では、タスクバーにバッチファイルを登録することができない。Windows XP や Vista のようにクイック起動を利用したい。&lt;/p&gt;

&lt;p&gt;以下を参照して、Windows 7 でクイック起動を作成。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://pasofaq.jp/windows/taskbar/7quicklaunch.htm"&gt;Windows 7 で「クイック起動」を表示させる方法&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;要するに、以下のフォルダを作成すれば良いとのこと。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;C:\Users\ユーザ名\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch&lt;/li&gt;
&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-7924773472513906029?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/7924773472513906029/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=7924773472513906029' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7924773472513906029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7924773472513906029'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/tray-volume.html' title='Windows でアプリケーションを再起動するバッチ処理 - タスクの強制終了、タスクリスト、エラーレベルによる条件分岐'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-7083925815154833865</id><published>2012-01-16T01:58:00.001+09:00</published><updated>2012-01-16T12:53:44.590+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Puppy Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Chrome'/><category scheme='http://www.blogger.com/atom/ns#' term='無線LAN'/><category scheme='http://www.blogger.com/atom/ns#' term='Chromium'/><title type='text'>Lucid Puppy を古いノート PC で利用する - Chromium, Wine をインストール</title><content type='html'>&lt;h4&gt;1. Puppy Linux 日本語版を利用する&lt;/h4&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Puppy Linux 日本語版" alt="http://openlab.jp/puppylinux/" src="http://kwout.com/cutout/m/vb/sv/7gy_bor.jpg" width="113" height="111" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;&lt;font size="2"&gt;Puppy Linux 日本語版&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;        &lt;br /&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/mvbsv7gy"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Puppy Linux は動作が軽い。CPU Celeron 2.66GHz, メモリ 512 MB の&lt;a href="http://jutememo.blogspot.com/2012/01/pc-puppy-linux.html"&gt;壊れそうな古いデスクトップ PC でもサクサク動作する&lt;/a&gt;。&lt;/p&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: left; padding-top: 10px" class="kwout"&gt;&lt;a href="http://lubuntu.net/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="lubuntu | light Ubuntu for faster computing" alt="http://lubuntu.net/" src="http://kwout.com/cutout/7/f8/h4/x5a_bor.jpg" width="191" height="47" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://lubuntu.net/"&gt;&lt;font size="2"&gt;lubuntu &lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/7f8h4x5a"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Lubuntu は、Puppy Linux よりも重い。CPU Pentium M 1.5GHz, メモリ 1G である&lt;a href="http://jutememo.blogspot.com/2012/01/pc-lubuntu-chromium-ime-mozc-wine.html"&gt;古いノート PC に、Ubuntu の派生品である Lubuntu をインストールした&lt;/a&gt;ら、ブラウズ・文書作成では、問題のないパフォーマンスが得られた。Wine により、Windows アプリケーションも利用できた。&lt;/p&gt;  &lt;p&gt;今回は、Lubuntu をインストールした古いノート PC で、Puppy Linux を利用してみる。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;Puppy Linux 日本語版&lt;/a&gt; の &lt;a title="http://openlab.jp/puppylinux/download/" href="http://openlab.jp/puppylinux/download/"&gt;http://openlab.jp/puppylinux/download/&lt;/a&gt; より、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://openlab.jp/puppylinux/download/wary-511-01j-k2.6.32.28-small.iso" href="http://openlab.jp/puppylinux/download/wary-511-01j-k2.6.32.28-small.iso"&gt;http://openlab.jp/puppylinux/download/wary-511-01j-k2.6.32.28-small.iso&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をダウンロードして、CD-ROM に書き込む。&lt;/p&gt;  &lt;p&gt;CD-ROM から、ノート PC を起動したら、Lubuntu に比べて動作が早かった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;無線 LAN の設定 (WPA, AES)&lt;/h5&gt;  &lt;p&gt;ノート PC は、無線 LAN を利用している。ネットワークの設定から行う。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;デスクトップの「接続」 &amp;gt; Desktop/tray の Network Wizard を選択。 &lt;/li&gt;    &lt;li&gt;タイプがワイアレスの方を選択。(wlan0) &lt;/li&gt;    &lt;li&gt;「ワイアレス」ボタンを押す。 &lt;/li&gt;    &lt;li&gt;スキャンして、接続先を選択。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;接続先の無線ネットワークは、&lt;a href="http://jutememo.blogspot.com/2009/04/lan-wep-wpa.html"&gt;WPA で、暗号化方式に AES を利用&lt;/a&gt;している。&lt;/p&gt;  &lt;p&gt;試しに WPA/TKIP を選択し、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;「暗号化なし」のチェックを外し、 &lt;/li&gt;    &lt;li&gt;暗号化キーを入力し、保存。 &lt;/li&gt;    &lt;li&gt;「このプロファイルを使う」を押す。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;しかし、ネットワークに接続出来なかった。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nakabin.my-sv.net/puppy_lan.php"&gt;軽量Linux まだまだ使う旧パソコン ｜ PuppyLinux4.2 無線LAN設定 AES WLI3-CB-G54L&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;アクセスポイントの暗号方式はWPA-PSK(AES)なので、WPA-PSK(AES)での接続が目的。…&lt;/p&gt;    &lt;p&gt;今回は「WPA/TKIP」を選んだ。      &lt;br /&gt;プロファイルを保存後、以下のファイルを手修正する。       &lt;br /&gt;「/etc/network-wizard/wireless/wpa_profiles/xx:xx:xx:xx:xx:xx.WPA.conf」を修正。       &lt;br /&gt;------------------------------       &lt;br /&gt;pairwire=TKIP       &lt;br /&gt;group=TKIP       &lt;br /&gt;↓ 以下に変更       &lt;br /&gt;pairwire=CCMP       &lt;br /&gt;group=CCMP       &lt;br /&gt;------------------------------&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;上記の説明に従い、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;/etc/network-wizard/wireless/wpa_profiles/xx:xx:xx:xx:xx:xx.WPA.conf &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を編集して、再度、接続を試みたら、接続できた。&lt;/p&gt;  &lt;p&gt;次に、「自動 DHCP」を選択して、ネットワークの終了。&lt;/p&gt;  &lt;p&gt;これでパッケージを利用するために、ネットワークからダウンロードできるようになった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. Lucid Puppy を利用する&lt;/h4&gt;  &lt;h5&gt;a. Lucid Puppy は、Puppy Linux 日本語版とは系統が異なる&lt;/h5&gt;  &lt;p&gt;デスクトップ PC に Puppy Linux をインストールしたとき、&lt;a href="http://jutememo.blogspot.com/2012/01/pc-puppy-linux.html#googlechrome"&gt;ブラウザとして Google Chrome をインストール&lt;/a&gt;した。このとき利用したパッケージは、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://openlab.jp/puppylinux/download/packages-stray/tomo3/google_chrome-puppy-4.31.pet"&gt;http://openlab.jp/puppylinux/download/packages-stray/tomo3/google_chrome-puppy-4.31.pet&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;ダウンロード先の URL を見ると、&lt;a href="http://openlab.jp/puppylinux/"&gt;Puppy Linux 日本語版&lt;/a&gt; と同じドメインであることがわかる。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Chromium#.E3.82.B3.E3.83.9F.E3.83.A5.E3.83.8B.E3.83.86.E3.82.A3.E3.81.B8.E3.81.AE.E6.8F.90.E4.BE.9B"&gt;Chromium - Wikipedia&lt;/a&gt; には、Google Chrome のオープンソース版として、次のように説明がある。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Puppy_Linux"&gt;Puppy Linux&lt;/a&gt;ではChromium 5.0.342をUbuntuのリポジトリから流用したLucid Puppy 5.0.0から提供されている&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Chromium#cite_note-Puppy-49"&gt;[50]&lt;/a&gt;&lt;/sup&gt;。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Lucid Puppy とは、何だろう？&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Puppy_Linux#.E3.83.90.E3.83.BC.E3.82.B8.E3.83.A7.E3.83.B3"&gt;Puppy Linux - Wikipedia&lt;/a&gt; で、これまでのバージョンを確認すると、&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Puppy Linux - Wikipedia" alt="http://ja.wikipedia.org/wiki/Puppy_Linux#.E3.83.90.E3.83.BC.E3.82.B8.E3.83.A7.E3.83.B3" src="http://kwout.com/cutout/h/xt/tm/v7g_bor.jpg" width="600" height="266" usemap="#map_hxttmv7g" /&gt;&lt;map id="map_hxttmv7g" name="map_hxttmv7g"&gt;&lt;area href="http://ja.wikipedia.org/wiki/Puppy_Linux#cite_note-release-501.htm-12" shape="rect" alt="" coords="104,29,122,42" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Puppy_Linux#cite_note-release-501.htm-12" shape="rect" alt="" coords="104,79,122,92" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Puppy_Linux#cite_note-5.1_released-13" shape="rect" alt="" coords="104,130,122,143" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Puppy_Linux#cite_note-5.1_released-13" shape="rect" alt="" coords="104,230,122,243" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Puppy_Linux#cite_note-5.0_released-14" shape="rect" alt="" coords="118,180,136,193" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Puppy_Linux#cite_note-15" shape="rect" alt="" coords="188,230,205,243" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ja.wikipedia.org/wiki/Puppy_Linux#.E3.83.90.E3.83.BC.E3.82.B8.E3.83.A7.E3.83.B3"&gt;&lt;font size="2"&gt;Puppy Linux - Wikipedia&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/hxttmv7g"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Lucid Puppy は、日本語版の Puppy とは別系統。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://itpro.nikkeibp.co.jp/article/COLUMN/20110427/359912/"&gt;「KNOPPIX 6.4.4」と「Puppy Linux5.2」が登場 - Linuxレポート：ITpro&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Puppy Linuxは、日本語版の最新バージョンが2009年秋リリースの「4.3.1」である。だが本家の英語版は4.3.1以降、大きく2つの系統で進化している。 &lt;/p&gt;    &lt;p align="left"&gt;一つは4.3.1の直系となる「Wary Puppy」だ。…&lt;/p&gt;    &lt;p align="left"&gt;もう一つはUbuntuベースの派生版「Lucid Puppy」。こちらは2011年1月6日、従来のバージョン5.1.1から「5.2」になっている&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;Lucid Puppy は、Ubuntu ベースだからパッケージがたくさんありそう。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.puppylinux.com/"&gt;Puppy Linux の本家サイト&lt;/a&gt;を見ると、ページ右上に３つの系統があった。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Puppy Linux" alt="http://www.puppylinux.com/" src="http://kwout.com/cutout/n/py/bp/mv7_bor.jpg" width="537" height="112" usemap="#map_npybpmv7" /&gt;&lt;map id="map_npybpmv7" name="map_npybpmv7"&gt;&lt;area href="http://bkhome.org/blog/?viewDetailed=02418" shape="rect" alt="" coords="281,7,356,25" /&gt;&lt;area href="http://distro.ibiblio.org/quirky/wary-5.2.2/release-Wary-5.2.2.htm" shape="rect" alt="" coords="365,7,438,25" /&gt;&lt;area href="http://bkhome.org/blog/?viewDetailed=02621" shape="rect" alt="" coords="447,7,527,25" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.puppylinux.com/"&gt;&lt;font size="2"&gt;Puppy Linux&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/npybpmv7"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;a href="http://bkhome.org/blog/?viewDetailed=02621"&gt;Barry Kauler - Powered by PPLOG&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Slacko Puppy 5.3, our flagship Puppy, premiered on October 25, 2011&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Slacko Puppy がフラッグシップということらしい。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5 align="left"&gt;b. Pupppy Linux 日本語版では、Lucid Puppy のリポジトリにある Chromium が動作しなかった&lt;/h5&gt;  &lt;p&gt;とりあえず、Puppy Linux 日本語版のままで作業を続けた。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;メニューより、セットアップ &amp;gt; Puppy パッケージマネージャ &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を起動。 &lt;/p&gt;  &lt;p&gt;パッケージのダウンロード先のリポジトリを確認するために、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;PETgetパッケージマネージャの設定 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;データベース更新において、「ただちに更新」をする。その後、ダイアログを閉じて、再度開くと、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;puppy-lucid-officel &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;が表示された。&lt;/p&gt;  &lt;p&gt;パッケージレポジトリの選択において、puppy-lucid-officel がチェックされていることを確認する。&lt;/p&gt;  &lt;p&gt;一度、Puppyパッケージマネージャ を終了し、再度開くと、puppy-lucid-officel のリポジトリの内容が表示された。&lt;/p&gt;  &lt;p&gt;次に、Internet カテゴリにある &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Chromium-18-Lucid&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;のインストールした。しかし、Chromium-18-Lucid は起動できなかった。このパッケージは Lucid Puppy 専用のようだ。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;c. Lucid Puppy にインストールできるパッケージの一覧&lt;/h5&gt;  &lt;p align="left"&gt;Lucid Puppy にインストールできるパッケージを確認する。データベース更新の「ただちに更新」において表示される、接続先である&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://distro.ibiblio.org/" href="http://distro.ibiblio.org/"&gt;http://distro.ibiblio.org/&lt;/a&gt; &lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;にブラウザでアクセス。検索フィールドがあったので `lucid’ で検索。その結果、以下に Lucid Puppy でインストールできるパッケージの一覧が表示された。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://distro.ibiblio.org/pub/linux/distributions/puppylinux/pet_packages-lucid/" href="http://distro.ibiblio.org/pub/linux/distributions/puppylinux/pet_packages-lucid/"&gt;http://distro.ibiblio.org/pub/linux/distributions/puppylinux/pet_packages-lucid/&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;上記を見ると、たくさんのパッケージがあることがわかる。Wine も含まれていることがわかった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;d. Lucid Puppy を利用してみる&lt;/h5&gt;  &lt;p&gt;そこで、Puppy Linux 日本語版ではなく、Lucid Puppy を利用することにした。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://bkhome.org/blog/?viewDetailed=02418"&gt;Barry Kauler - Powered by PPLOG&lt;/a&gt; の &lt;a href="http://bkhome.org/blog/?viewDetailed=02418"&gt;Lucid Puppy 5.2.8 released&lt;/a&gt; より、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://distro.ibiblio.org/puppylinux/puppy-5.2.8/lupu-528.iso"&gt;http://distro.ibiblio.org/puppylinux/puppy-5.2.8/lupu-528.iso&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をダウンロードし、CD-ROM に書き込み、ノート PC で CD-ROM から起動。 &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;e. Lucid Puppy で、無線 LANへ接続 (WPA, AES)&lt;/h5&gt;  &lt;p&gt;Lucid Puppy 日本語版と同じように、無線 LAN の設定から行う。&lt;/p&gt;  &lt;p&gt;先ほどと同じように、予め無線の設定ファイルを修正しておく。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「/etc/network-wizard/wireless/wpa_profiles/xx:xx:xx:xx:xx:xx.WPA.conf」を修正。      &lt;br /&gt;------------------------------       &lt;br /&gt;pairwire=TKIP       &lt;br /&gt;group=TKIP       &lt;br /&gt;↓ 以下に変更       &lt;br /&gt;pairwire=CCMP       &lt;br /&gt;group=CCMP       &lt;br /&gt;------------------------------&lt;/p&gt;    &lt;p&gt;（&lt;a href="http://nakabin.my-sv.net/puppy_lan.php"&gt;軽量Linux まだまだ使う旧パソコン ｜ PuppyLinux4.2 無線LAN設定 AES WLI3-CB-G54L&lt;/a&gt;より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;次に、ネットワークの設定を行う。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;menu &amp;gt; Setup &amp;gt; Internet Connection Wizard &lt;/li&gt;    &lt;li&gt;Desktop/tray の Network Wizard を選択 &lt;/li&gt;    &lt;li&gt;Interfaces で wlan0 を選択。 &lt;/li&gt;    &lt;li&gt;Configure wireless network の Wiress ボタンを押す。 &lt;/li&gt;    &lt;li&gt;Scan ボタンを押し、接続先のネットワークを選択する。 &lt;/li&gt;    &lt;li&gt;WPA/TKIP を選択。 &lt;/li&gt;    &lt;li&gt;「Security: Open」のチェックを外す。 &lt;/li&gt;    &lt;li&gt;暗号化キーを入力し、保存。 &lt;/li&gt;    &lt;li&gt;Configure interface で Auto DHCP ボタンを押し、接続できたら、設定を保存するか促されるので yes を選択。 &lt;/li&gt;    &lt;li&gt;Done ボタン を押して、終了。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;これでブラウザを起動すると、ネットに接続できるようになった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;f. Lucid Puppy の日本語化&lt;/h5&gt;  &lt;p&gt;Lucid Puppy を起動すると、メニューやメッセージが英語で表示がされる。これを日本語にローカライズしたい。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;Puppy Linux 日本語版&lt;/a&gt;｀によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;2.16.1〜4.31まではオリジナルのPuppy Linuxをベースに直接日本語リソースを組み込んだものを日本語版として提供してきましたが、開発の省力化の為、5.1x以降は国際化の仕組みを備えた Puplets&amp;quot;Lucid Puppy QuickSet edition&amp;quot;(Lupq) と日本語リソースのpet又はsfsを組み込んだものをベースに開発中です。 &lt;/p&gt;    &lt;p&gt;lupq-5.xに lang_pack_ja-lupq-0.x.pet をインストールすることで日本語版と同等に使えるようになります。正式に最新版の日本語版が公開される前に5.x系を試したい方はこの組み合わせでお使いください。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://sakurapup.browserloadofcoolness.com/viewtopic.php?f=23&amp;amp;t=1963"&gt;sakurapup.browserloadofcoolness.com • トピック - Lucid Puppy 5.2.x の日本語化&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;本家版 Lucid Puppy の最新版は Lucid Puppy 5.2.8.004 になります。      &lt;br /&gt;&lt;a href="http://www.murga-linux.com/puppy/viewtopic.php?t=70855"&gt;http://www.murga-linux.com/puppy/viewtopic.php?t=70855&lt;/a&gt;       &lt;br /&gt;パッケージマネージャより System のところにある lang_pack_ja-lupq-0.5.pet をインストールすると日本語が使えるようになります。       &lt;br /&gt;ただし日本語化パッケージは大きいので、実装RAMが 512MB以下の場合、初回起動でタイムゾーンとキーボードのみ選択し（この時点では言語の選択肢に日本語は現れない）、何もインストールせず、ただちにシャットダウンして pupsave(lupqsave)をまずは作成することをお勧めします。       &lt;br /&gt;むしろ、PETによらず SFSの使用をお奨めします。       &lt;br /&gt;日本語化SFSは lang_pack_ja-1.4.sfs (2011年10月15日update) を       &lt;br /&gt;&lt;a href="http://shino.pos.to/party/bridge.cgi?puppy/opt/"&gt;http://shino.pos.to/party/bridge.cgi?puppy/opt/&lt;/a&gt; から。       &lt;br /&gt;SFSをロードするには、       &lt;br /&gt;menu --&amp;gt; Setup --&amp;gt; Setup Puppy のところに SFS-Load on-the-fly があります。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;ここでは、PET を利用して、日本語化する。&lt;/p&gt;  &lt;p&gt;パッケージマネージャを起動するため、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;menu &amp;gt; Setup &amp;gt; Setup Puppy &amp;gt; Puppy Package Manager &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を選択。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;System &amp;gt; lang_pack_ja-lupq-0.5 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をインストール。ダウンロード先は、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;ibiblio.org &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;にしておいた。次に、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Desktop &amp;gt; Contry Settings &amp;gt; Choose locale country localisation &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;で ja_JP: Japanese, Japan を選択すると、X Windows を再起動することを促されるので、再起動。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Desktop &amp;gt; Country Settings &amp;gt; Countrywizard 言語、タイムゾーン、キーボード &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;で、ja_JP 日本語,JAPAN, GMT+8, jp106 (日本語キーボード) を選択。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;g. パッケージマネージャでリポジトリの更新&lt;/h5&gt;  &lt;p&gt;アプリケーションをインストールする前に、リポジトリの更新を行う。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;menu &amp;gt; Setup &amp;gt; Setup Puppy &amp;gt; Puppy Package Manager &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;で、Configure package manager ボタンを押し、Update now する。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;h. ブラウザ chromium のインストール&lt;/h5&gt;  &lt;p&gt;パッケージマネージャで、ブラウザとして chromium をインストールする。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;menu &amp;gt; Setup &amp;gt; Setup Puppy &amp;gt; Puppy Package Manager &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を起動し `chromium’ で find 。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Chromium-18-Lucid &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をインストール。&lt;/p&gt;  &lt;p&gt;上記の Puppy Linux 日本語版では動作しなかったが、今回は問題なく動いた。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;i. Windows アプリケーションを動かすために&lt;/h5&gt;  &lt;h6&gt;&lt;/h6&gt;  &lt;h6&gt;7zip&lt;/h6&gt;  &lt;p&gt;Windows アプリケーションにおける、一般的なアーカイブ形式を解凍できるように、7-zip をインストールする。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://bkhome.org/blog/?viewDetailed=02319"&gt;Barry Kauler - Powered by PPLOG&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;I have created a 'p7zip' PET and uploaded it to the 'Puppy-common' repo (953K, 67K):      &lt;br /&gt;&lt;a href="http://distro.ibiblio.org/quirky/pet_packages-common/p7zip-9.20.1-i486-w5.pet"&gt;http://distro.ibiblio.org/quirky/pet_packages-common/p7zip-9.20.1-i486-w5.pet&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://distro.ibiblio.org/quirky/pet_packages-common/p7zip_DOC-9.20.1-i486-w5.pet"&gt;http://distro.ibiblio.org/quirky/pet_packages-common/p7zip_DOC-9.20.1-i486-w5.pet&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;上記をブラウザでダウンロードし起動すると、パッケージマネージャが起動して、インストールされる。&lt;/p&gt;  &lt;h6&gt;Wine&lt;/h6&gt;  &lt;ul&gt;   &lt;li&gt;menu &amp;gt; Setup &amp;gt; Setup Puppy &amp;gt; Puppy Package Manager &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;において `wind’ で find 。&lt;/p&gt;  &lt;p&gt;Wine-1.3.13-Lucid52 をインストール。インストール後、以下のエラーが表示された。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-ySBbEcxqekE/TxMFn_tLqZI/AAAAAAAABs0/idSiVGNZhhA/s1600-h/img_0047%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="img_0047" border="0" alt="img_0047" src="http://lh3.ggpht.com/-2NRJ2vp4jkE/TxMFofmC7VI/AAAAAAAABs8/G99Mnuj2Uq4/img_0047_thumb.png?imgmax=800" width="331" height="282" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;メニューを見ると、Windows のメモ帳やワードパッドがインストールされていることが確認できる。&lt;/p&gt;  &lt;p align="left"&gt;試しに、&lt;a href="http://www.vector.co.jp/soft/win31/game/se005521.html"&gt;SameGame for Windows&lt;/a&gt; をブラウザでダウンロード。ダウンロードしたフォルダで、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;右クリック &amp;gt; ウィンドウ &amp;gt; ここで Xterm を起動&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;blockquote&gt;   &lt;p align="left"&gt;7z x アーカイブ名&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;により解凍。 XXXXXX.exe をダウンロードすると、起動できた。&lt;/p&gt;  &lt;p align="left"&gt;しかし、&lt;a href="http://www.vector.co.jp/soft/win95/game/se224921.html"&gt;スライドぽぷん &lt;/a&gt;は起動できなかった。Lubuntu をインストールしたときは、動いたのになぜだろう？&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-7083925815154833865?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/7083925815154833865/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=7083925815154833865' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7083925815154833865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7083925815154833865'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/lucid-puppy-pc.html' title='Lucid Puppy を古いノート PC で利用する - Chromium, Wine をインストール'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-2NRJ2vp4jkE/TxMFofmC7VI/AAAAAAAABs8/G99Mnuj2Uq4/s72-c/img_0047_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-3255622724685233033</id><published>2012-01-12T01:40:00.001+09:00</published><updated>2012-01-12T01:40:19.828+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='アドオン'/><category scheme='http://www.blogger.com/atom/ns#' term='タブ'/><category scheme='http://www.blogger.com/atom/ns#' term='Firefox'/><title type='text'>Firefox のタブの保存と復元に Session Manager - タブを復元できないときに備えて</title><content type='html'>&lt;h4&gt;1. Firefox がクラッシュしたとき、タブの復元ができないことがある&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-F-1WUGqrZP0/Tw27WLzII0I/AAAAAAAABr0/keoETYs3gQ8/s1600-h/img_0040%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0040" border="0" alt="img_0040" align="right" src="http://lh6.ggpht.com/-Nc1NcYaKiPk/Tw27Wy6JSdI/AAAAAAAABr4/tM7zRsW6dcI/img_0040_thumb.png?imgmax=800" width="312" height="90" /&gt;&lt;/a&gt;Firefox では、よく利用するサイトに対して&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;タブを右クリック &amp;gt; 「タブをピン留め」&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;により、&lt;a href="http://support.mozilla.org/ja/kb/what-are-app-tabs"&gt;アプリタブ&lt;/a&gt; にしておくことができる。&lt;/p&gt;  &lt;p&gt;Firefox がクラッシュすると、次回起動したときに、タブの復元が促される。しかし、たまに、開いていたタブを復元できないことがある。その度に、アプリタブを設定しなければならい。たくさんある場合、結構面倒。(+_+)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. Session Manager で現在のタブの状態を保存&lt;/h4&gt;  &lt;p&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/session-manager/"&gt;Session Manager&lt;/a&gt; は、セッションを管理するためのアドオン。&lt;/p&gt;  &lt;p&gt;現在のタブを開いている状態を保存するには、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Firefox ボタン &amp;gt; セッションマネージャ &amp;gt; セッションマネージャ &amp;gt; セッションを保存&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-pcF8bwSRFTA/Tw27XtpBQfI/AAAAAAAABsA/HBFzYVWxp9o/s1600-h/img_0039%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0039" border="0" alt="img_0039" src="http://lh5.ggpht.com/-C0Vg4WHebHw/Tw27YclmGkI/AAAAAAAABsM/uq7G1bMxc_Q/img_0039_thumb%25255B1%25255D.png?imgmax=800" width="728" height="191" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;ダイアログが表示されたら、適当に名前をつけて、保存。&lt;/p&gt;  &lt;p&gt;例えば、 default と名前をつけて保存したとする。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. タブを復元する&lt;/h4&gt;  &lt;h5 align="left"&gt;Firefox の起動時における復元&lt;/h5&gt;  &lt;p&gt;試しに、タスクマネージャで Firefox を強制的に終了させた後、Firefox を起動してみた。&lt;/p&gt;  &lt;p&gt;Session Manager をインストールしていると、デフォルトのタブの復元画面が、セッションマネージャに置き換えられ、いつの時点に復元するか尋ねられるようになる。&lt;/p&gt;  &lt;p&gt;この際、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;直前に開いてたタブの状態に戻したければ、「現在のブラウジングセッション」を選択する&lt;/li&gt;    &lt;li&gt;または、上記で保存した default のセッションの状態に戻したければ、default を選択する&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;「セッションを回復」ボタンを押せば、元のタブの状態が復元された。&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-Ej6vk1sghB0/Tw27ZglQp8I/AAAAAAAABsU/4EZPQAVjzBw/s1600-h/img_0041%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0041" border="0" alt="img_0041" src="http://lh4.ggpht.com/-aEASDBuSQ6Y/Tw27a02zWxI/AAAAAAAABsc/gX4-u-DhWNY/img_0041_thumb%25255B1%25255D.png?imgmax=800" width="573" height="514" /&gt;&lt;/a&gt;&lt;/p&gt;      &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Firefox の起動中における復元&lt;/h5&gt;  &lt;p&gt;Firefox が起動している状態では、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Firefox ボタン &amp;gt; セッションマネージャ &amp;gt; セッションマネージャ &amp;gt; セッションの読み込み&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;により、表示されたダイアログでセッションを選択し、「読み込み」を行う。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;4. セッションの保存先を Dropbox へ変更&lt;/h4&gt;  &lt;p&gt;Firefox を新しくインストールする場合に備えて、バックアップも兼ねて、セッションの保存先は &lt;a href="https://www.dropbox.com/"&gt;Dropbox&lt;/a&gt; にした。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;アドオンの設定 &amp;gt; セッションマネージャ &amp;gt; 詳細&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;の「セッションの保存先」で変更。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-r9y7Cz0pIEA/Tw27biE1v5I/AAAAAAAABsg/H3AaR2CnzEQ/s1600-h/img_0042%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0042" border="0" alt="img_0042" src="http://lh4.ggpht.com/-RGzdkYxEleQ/Tw27cd2R7aI/AAAAAAAABso/nX76ztRvMwA/img_0042_thumb%25255B1%25255D.png?imgmax=800" width="704" height="181" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;5. 複数のタブを保存する目的には、デフォルトのブックマーク機能を使えば良い&lt;/h4&gt;  &lt;p&gt;Session Manager は、複数のセッションをグループ分けして管理・保存できる。保存したセッションは、復元の際に、セッションを置換するだけでなく、追加することも可能。&lt;/p&gt;  &lt;p&gt;ところで、&lt;a href="http://jutememo.blogspot.com/2011/04/firefox-4-panorama-chrome-tab-sugar.html"&gt;Firefox には、タブをグループ分けする機能&lt;/a&gt;がある。この機能のおかげで、複数の事柄を調べている場合、タブをグループ分けし、分類しておける。あまりにもグループ分けが多くなってしまったり、グループ分けしたまま放置しているものがあれば、セッションに保存しておけばいいかもしれない。&lt;/p&gt;  &lt;p&gt;ただし、Firefox には、１つのウィンドウに複数のタブがある場合、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;任意のタブで右クリック &amp;gt; &lt;strong&gt;全てのタブをブックマーク&lt;/strong&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;により、複数のブックマークを一気に保存できる。&lt;/p&gt;  &lt;p&gt;保存したブックマークは、当該ブックマークが保存されたフォルダにおいて、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;タブで全て開く&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;により復元できる。このため、複数のタブを保存・復元する目的には、デフォルトの機能を使えば良い。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-3255622724685233033?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/3255622724685233033/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=3255622724685233033' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/3255622724685233033'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/3255622724685233033'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/firefox-session-manager.html' title='Firefox のタブの保存と復元に Session Manager - タブを復元できないときに備えて'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-Nc1NcYaKiPk/Tw27Wy6JSdI/AAAAAAAABr4/tM7zRsW6dcI/s72-c/img_0040_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-5053929186709208081</id><published>2012-01-10T00:06:00.001+09:00</published><updated>2012-01-11T11:53:25.814+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ユーティリティ'/><category scheme='http://www.blogger.com/atom/ns#' term='タスクスケジューラ'/><category scheme='http://www.blogger.com/atom/ns#' term='メモリ'/><title type='text'>Windows 7 で タスク スケジューラ を利用し、定期的にメモリを解放する</title><content type='html'>&lt;h4 align="left"&gt;1. empty.exe によるメモリの開放は軽くて早い&lt;/h4&gt;  &lt;p align="left"&gt;ブラウザにアドオンを詰め込み、仮想化ソフトを起動し、開発環境を立ち上げ、同時に別のブラウザで動画を見ながら、バックグラウンドで何個もプロセスを常駐させていると、かなりメモリを消費する。そのため、定期的にメモリを開放するアプリケーション「&lt;a href="http://jutememo.blogspot.com/2011/07/process-lasso.html#mclean"&gt;めもりくりーなー&lt;/a&gt;」を利用している。&lt;/p&gt;  &lt;p align="left"&gt;メモリに余裕がないときに、メモリを開放させると、処理がもたつく。メモリに余裕をもたせた使い方をするべきなのだけれど、一度、便利な環境に身を置くと、それを維持すべく、どんどんアプリを開いてしまう。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://nagabuchi.jugem.jp/?eid=162"&gt;最強安全メモリ開放ソフト（マイクロソフト） | Windows XP/Vista/7の裏技&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「​e​m​p​t​y​.​e​x​e​」​こ​の​ソ​フ​ト​は​ほ​か​の​メ​モ​リ​開​放​ソ​フ​ト​と​は​違​い​、​強​制​的​に​開​放​す​る​こ​と​は​あ​り​ま​せ​ん​の​で​安​全​で​す​。 し​か​も​、​効​果​抜​群​！      &lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd&amp;amp;displaylang=en"&gt;W​i​n​d​o​w​s​ ​S​e​r​v​e​r​ ​2​0​0​3​ ​R​e​s​o​u​r​c​e​ ​K​i​t​ ​T​o​o​l​s&lt;/a&gt; ​こ​れ​を​ダ​ウ​ン​ロ​ー​ド​し​て&lt;a href="http://goo.gl/s34L"&gt;W​i​n​R​A​R&lt;/a&gt; な​ど​で​解​凍​し​ま​す​。       &lt;br /&gt;解 ​凍​し​た​中​に​「​r​k​t​o​o​l​s​.​m​s​i​」​が​あ​る​の​で​、​こ​れ​も​解​凍​す​る​。​（​右​ク​リ ​ッ​ク​で​プ​ロ​グ​ラ​ム​か​ら​開​く​＞​解​凍​ソ​フ​ト​を​選​択​＞​「​e​m​p​t​y​.​e​x​e​」​を​取​り ​出​す​。​）       &lt;br /&gt;面​倒​な​ら​イ​ン​ス​ト​ー​ル​し​て​「​e​m​p​t​y​.​e​x​e​」​を​取​り​出​し​て​も​構​い​ま​せ​ん​。       &lt;br /&gt;「​e​m​p​t​y​.​e​x​e​」​を​ ​C​:​¥​W​I​N​D​O​W​S​¥​s​y​s​t​e​m​3​2​ ​の​中​に​入​れ​ま​す​。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;上記に従い、empty.exe を指定の位置におき、試しに empty.exe をコマンドプロンプトで実行してみた。その結果、ちょっとの間動作するだけで、実行しているアプリには、ほとんど影響を与えないことがわかった。ただし、メモリ解放が効果的に行われているのかよくわからない。&lt;/p&gt;  &lt;p align="left"&gt;メモリの状況を見ていると、Firefox のアドオン &lt;a href="https://addons.mozilla.org/ja/firefox/addon/memory-fox/"&gt;Memory Fox&lt;/a&gt; が動作しているときに似ているような気がする。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;a name="task_scheduler"&gt;&lt;/a&gt;2. タスク スケジューラ で定期的に empty.exe を実行する&lt;/h4&gt;  &lt;p&gt;タスク スケジューラを使い、empty.exe を定期的に実行させることにした。&lt;/p&gt;  &lt;p&gt;以下の動作となるように設定。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;ログオンしてから、１時間後にタスクを実行する &lt;/li&gt;    &lt;li&gt;その後、定期的に１時ごとにタスクを実行する。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://jutememo.blogspot.com/2011/12/windows-7.html"&gt;タスク スケジューラを起動&lt;/a&gt;し、メニューより、操作 &amp;gt; タスクの作成。&lt;/p&gt;  &lt;p&gt;「全般」タブにおいて、適当にタスクの名前を付ける。ここでは `empty’ とした。&lt;/p&gt;  &lt;p&gt;「トリガー」タブにおいて、新規ボタンを押し、新しいトリガーを作成。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;タスクの開始を「ログオン時」 &lt;/li&gt;    &lt;li&gt;詳細設定      &lt;ul&gt;       &lt;li&gt;遅延時間を「１時間」に指定 &lt;/li&gt;        &lt;li&gt;繰り返し間隔を「１時間」に設定 &lt;/li&gt;        &lt;li&gt;継続時間を「無期限」に設定 &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-dN2Vt58RPvQ/TwsCVwkMrcI/AAAAAAAABrE/RmwzL-i3M7s/s1600-h/img_0043%25255B5%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="img_0043" border="0" alt="img_0043" src="http://lh4.ggpht.com/-rEXcRPl4j4s/TwsCWh_edMI/AAAAAAAABrM/1-c94TqupuM/img_0043_thumb%25255B3%25255D.png?imgmax=800" width="678" height="441" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;「操作」タブにおいて、新規ボタンで、新しい操作を作成。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;操作を「プログラムの開始」 &lt;/li&gt;    &lt;li&gt;プログラム/スクリプトを empty と指定 &lt;/li&gt;    &lt;li&gt;引数の追加で `*’ を指定 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-Dc6mXwH0POM/TwsCXfpgZhI/AAAAAAAABrU/OiT7zIu5pOQ/s1600-h/img_00442.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="img_0044" border="0" alt="img_0044" src="http://lh3.ggpht.com/-Gt8keTwnbls/TwsCYZ2Cj1I/AAAAAAAABrc/10dSm_8kAdY/img_0044_thumb.png?imgmax=800" width="555" height="365" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これで、次回のログインから、タスクが有効になる。&lt;/p&gt;  &lt;p&gt;ただし、この方法だと、プログラムが実行される度にウィンドウが一瞬表示される。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;a name="vbs_without_window"&gt;&lt;/a&gt;3. VBS を利用し、タスクの実行時にウィンドウを表示させない&lt;/h4&gt;  &lt;p&gt;タスクが実行される度に、ウィンドウが表示されないようにしたい。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://d.hatena.ne.jp/Mook/20090824/1251124084"&gt;コマンドウィンドウを表示しないで実行するには - Mookノート&lt;/a&gt; を参考に、以下のスクリプトを書き保存した。ファイル名は empty.vbs とした。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;CreateObject(&amp;quot;WScript.Shell&amp;quot;).Run &amp;quot;empty *&amp;quot;, 0&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;&lt;a name="taskedit"&gt;&lt;/a&gt;タスクスケジューラでタスクを編集&lt;/h5&gt;

&lt;ol&gt;
  &lt;li&gt;タスク スケジューラを開き、タスク スケジューラ ライブラリを選択。&lt;/li&gt;

  &lt;li&gt;タスク empty を探し、右クリック &amp;gt; プロパティ を選択。&lt;/li&gt;

  &lt;li&gt;「操作」タブで、編集ボタンを押す。&lt;/li&gt;

  &lt;li&gt;プログラム/スクリプト で、上記の保存したスクリプトを参照して、指定する。引数の追加は、空にした。&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="http://lh3.ggpht.com/-UM0wQ9fnTZQ/TwsCZGtnXbI/AAAAAAAABrk/LUPp_sfnS60/s1600-h/img_0037%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="img_0037" border="0" alt="img_0037" src="http://lh4.ggpht.com/-dwtUn7jww_w/TwsCaMhIaFI/AAAAAAAABrs/AaF2F84jGyc/img_0037_thumb.png?imgmax=800" width="618" height="378" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-5053929186709208081?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/5053929186709208081/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=5053929186709208081' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5053929186709208081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5053929186709208081'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/blog-post_10.html' title='Windows 7 で タスク スケジューラ を利用し、定期的にメモリを解放する'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/-rEXcRPl4j4s/TwsCWh_edMI/AAAAAAAABrM/1-c94TqupuM/s72-c/img_0043_thumb%25255B3%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-6761737885922439299</id><published>2012-01-09T15:47:00.001+09:00</published><updated>2012-01-11T12:21:09.473+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='文房具'/><title type='text'>どんな紙でもポストイットにする糊 - 「貼ってはがせる糊」も１００円ショップにあった</title><content type='html'>&lt;h4&gt;1. スコッチ (Scotch) は、貼ってはがせるのり&lt;/h4&gt;  &lt;p&gt;ちょっとしたメモには、ポストイットを使う。 TODO やアイディアをさっと書き、ディスプレイの端や、ノートに貼り付ける。貼りつけた後に移動できるので、後で分類したり、考えをまとめたりするときの必需品。&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013N1TWG/sakura39-22/" target="_blank"&gt;強粘着ノート 5個パック&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013N1TWG/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0013N1TWG" src="http://ec2.images-amazon.com/images/I/415uKarZzJL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013MW3PO/sakura39-22/" target="_blank"&gt;強粘着ふせん &lt;/a&gt;            &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013MW3PO/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0013MW3PO" src="http://ec2.images-amazon.com/images/I/41TuOs666aL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000IGOFAW/sakura39-22/" target="_blank"&gt;透明見出し&lt;/a&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000IGOFAW/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B000IGOFAW" src="http://ec2.images-amazon.com/images/I/31vuMF8wkYL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;印刷に失敗した裏紙も、メモ用紙として活用するため、ポストイット程度の大きさにして、机に常備している。こちらもポストイットのように、糊で貼り付けた後、はがして整理したい。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.mmm.co.jp/office/adhesive/gr.html"&gt;３Mのスコッチは、はってはがせるスティックのり&lt;/a&gt;。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;きれいにはがせて、貼り直しもできる、仮止めや切り貼り作業に最適なスティックのりです。&lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;なめらかでのびがよくつかえます。 &lt;/li&gt;      &lt;li&gt;ムラなく塗れてしわになりません。 &lt;/li&gt;      &lt;li&gt;重ね塗りすれば、粘着力が強くなります。 &lt;/li&gt;   &lt;/ul&gt; &lt;/blockquote&gt;  &lt;div align="center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013N1WBO/sakura39-22/" target="_blank"&gt;７ｇ入&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013N1WBO/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0013N1WBO" src="http://ecx.images-amazon.com/images/I/411QDfQzMZL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013N1WBY/sakura39-22/" target="_blank"&gt;１４ｇ&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013N1WBY/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0013N1WBY" src="http://ec2.images-amazon.com/images/I/41vwdwCXqML._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013MW5UC/sakura39-22/" target="_blank"&gt;フックタイプ&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0013MW5UC/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0013MW5UC" src="http://ec2.images-amazon.com/images/I/317JicBbORL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;近くの文房具店で、売ってなかったため、Amazon で検索。送料のことを考えると、まとめ買いした方がお得。&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="300" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005R1BS1W/sakura39-22/" target="_blank"&gt;７ｇ ５本&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005R1BS1W/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005R1BS1W" src="http://ec2.images-amazon.com/images/I/41Rv5WTWouL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="300" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005R1BS9E/sakura39-22/" target="_blank"&gt;１４ｇ５本&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005R1BS9E/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005R1BS9E" src="http://ec2.images-amazon.com/images/I/41pWjMvWvXL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;しかし、よほどまとめ買いをしないと、値段に対して送料が高くつく。。(@_@;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. ダイソーにあった「貼ってはがせる糊」&lt;/h4&gt;  &lt;p&gt;先日、１００円ショップのダイソーに、&lt;a href="http://www.moleskine.co.jp/" target="_blank"&gt;モレスキン&lt;/a&gt;の手帳ならぬ、&lt;a href="http://www18.atwiki.jp/daiskine/" target="_blank"&gt;ダイスキン&lt;/a&gt;を探しに行った。&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/888370102X/sakura39-22/" target="_blank"&gt;Moleskine Pocket Squared Notebook Classic &lt;/a&gt;            &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/888370102X/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="888370102X" src="http://ec2.images-amazon.com/images/I/31bwRWaIUKL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/8883701038/sakura39-22/" target="_blank"&gt;Moleskine Plain Notebook Pocket (Moleskine Classic) &lt;/a&gt;            &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/8883701038/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="8883701038" src="http://ec2.images-amazon.com/images/I/313PNPGeg%2BL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/8883701135/sakura39-22/" target="_blank"&gt;Moleskine Squared Notebook Large &lt;/a&gt;            &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/8883701135/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="8883701135" src="http://ec2.images-amazon.com/images/I/31EQRKjnGkL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;運良く、ダイスキンの A7 サイズが置いてあった。手にとって見ると、ノートとしてはこれで十分。モレスキンの１０分の１以下の値段を考えれば、自然とこちらを選択する。長期間の保存に適しているのか分からないけれど、どうせ大したことは書かなので、必要にして十分。&lt;/p&gt;  &lt;p&gt;来たついでに、貼ってはがせる糊「スコッチ」の類似品もあるかと思い、探してみた。期待せずに、糊のコーナーを見ていたら、「貼って剥せるのり」を発見。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-cwvcO3rfYHo/TwqNkT6Ag4I/AAAAAAAABq0/D_7HUiLeHIo/s1600-h/DSC03617%25255B8%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03617" border="0" alt="DSC03617" src="http://lh6.ggpht.com/-Ch57dn84540/TwqNlGyvtMI/AAAAAAAABq4/XzSD2nSx0TY/DSC03617_thumb%25255B3%25255D.jpg?imgmax=800" width="285" height="473" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;２本で１００円なので、およそスコッチの６分の１くらいの価格。&lt;/p&gt;  &lt;p&gt;モレスキンの模造品がダイスキンなら、こちらは、さしずめ「ダイスコッチ」とでも呼べばいいだろうか？&lt;/p&gt;  &lt;p&gt;１週間使ってみたが、接着に問題を感じない。貼り跡が残ることもなく、逆に接着が弱いわけでもない。長期間の場合、どうなるか分からないけれど。&lt;/p&gt;  &lt;p&gt;それにしても、商売って、何でもありの殺し合いの世界だな。中国のパチモノもびっくりの１００円品質。恐るべし、類似品。どんどん、先発品をパクっ…、倣って下さい。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. 色々な「貼ってはがせる」シリーズ&lt;/h4&gt;  &lt;p&gt;「&lt;a href="http://www.google.co.jp/search?q=%E3%81%AF%E3%81%A3%E3%81%A6%E3%81%AF%E3%81%8C%E3%81%9B%E3%82%8B" target="_blank"&gt;貼ってはがせる&lt;/a&gt;」をキーワードに検索すると、色々と便利そうなものが見つかった。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.kokuyo-st.co.jp/stationery/dotliner/series/dotliner/"&gt;ドットライナー - コクヨS&amp;amp;T&lt;/a&gt; の貼って剥せるテープ。 &lt;/li&gt; &lt;/ul&gt;  &lt;div align="center"&gt;   &lt;table border="1" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="299" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000I41D1I/sakura39-22/" target="_blank"&gt;テープのり&amp;lt;ドットライナー&amp;gt;つめ替えタイプ8.4mm×13m弱粘着&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000I41D1I/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B000I41D1I" src="http://ec2.images-amazon.com/images/I/41uUjgZn-ZL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="299" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000I3Y0KU/sakura39-22/" target="_blank"&gt;つめ替えテープ弱粘着DM401-08用&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000I3Y0KU/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B000I3Y0KU" src="http://ec2.images-amazon.com/images/I/41Z0pt92wOL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;画鋲の代わりになる、&lt;a href="http://www.tombow.com/petats/?link=7"&gt;ペタッツ｜トンボ鉛筆&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div align="center"&gt;   &lt;table border="1" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="299" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AON630/sakura39-22/" target="_blank"&gt;粘着グミ ペタッツ M カラーミックス&lt;/a&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AON630/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B004AON630" src="http://ec2.images-amazon.com/images/I/41P-t-1e0IL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="299" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004A7SOWA/sakura39-22/" target="_blank"&gt;粘着グミ ペタッツ M&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004A7SOWA/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B004A7SOWA" src="http://ec2.images-amazon.com/images/I/41xFZ7o-ITL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;div align="center"&gt;&amp;#160;&lt;/div&gt;  &lt;div align="center"&gt;   &lt;table border="1" cellspacing="0" cellpadding="2" width="601" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td width="199" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AOR0OQ/sakura39-22/" target="_blank"&gt;ペタッツ L カラーミックス&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AOR0OQ/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B004AOR0OQ" src="http://ec2.images-amazon.com/images/I/31xFO4D9mgL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AOVYN4/sakura39-22/" target="_blank"&gt;ペタッツ L&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AOVYN4/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B004AOVYN4" src="http://ec2.images-amazon.com/images/I/41A9LU0wfUL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="200" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AOW5J6/sakura39-22/" target="_blank"&gt;ペタッツ L クリア&lt;/a&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004AOW5J6/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B004AOW5J6" src="http://ec2.images-amazon.com/images/I/415EJbSg9tL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.obun.co.jp/keserushi/white.html"&gt;消せる紙（けせるし）｜持ち運び可能な貼ってはがせるホワイトボードマーカー用シート｜欧文印刷&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div align="center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="600" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="598" align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0069E3W4M/sakura39-22/" target="_blank"&gt;紙製のホワイトボード 消せるタック紙 A4判 （2枚入り）&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0069E3W4M/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0069E3W4M" src="http://ecx.images-amazon.com/images/I/516yVdjjGmL._SL500_.jpg" width="371" height="371" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://wol.nikkeibp.co.jp/article/column/20110922/114103/"&gt;新感覚の“はってはがせる”付箋「PETA」：日経ウーマンオンライン【川島屋百貨店】&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="新感覚の“はってはがせる”付箋「PETA」：日経ウーマンオンライン【川島屋百貨店】" alt="http://wol.nikkeibp.co.jp/article/column/20110922/114103/" src="http://kwout.com/cutout/9/y6/es/2uk_bor.jpg" width="525" height="251" usemap="#map_9y6es2uk" /&gt;&lt;/div&gt; &lt;map id="map_9y6es2uk" name="map_9y6es2uk"&gt;&lt;area href="http://wol.nikkeibp.co.jp/article/column/20110922/114103/?SS=zoom&amp;amp;FD=46728356" shape="rect" alt="" coords="22,156,241,168" /&gt;&lt;area href="http://wol.nikkeibp.co.jp/article/column/20110922/114103/?SS=zoom&amp;amp;FD=46728356" shape="rect" alt="" coords="186,174,241,186" /&gt;&lt;area href="http://wol.nikkeibp.co.jp/article/column/20110922/114103/?SS=zoom&amp;amp;FD=47651877" shape="rect" alt="" coords="282,156,501,168" /&gt;&lt;area href="http://wol.nikkeibp.co.jp/article/column/20110922/114103/?SS=zoom&amp;amp;FD=47651877" shape="rect" alt="" coords="446,174,501,186" /&gt;&lt;/map&gt;  &lt;p style="text-align: center; margin-top: 10px" class="kwout"&gt;&lt;a href="http://wol.nikkeibp.co.jp/article/column/20110922/114103/"&gt;&lt;font size="2"&gt;新感覚の“はってはがせる”付箋「PETA」：日経ウーマンオンライン【川島屋百貨店】&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/9y6es2uk"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-6761737885922439299?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/6761737885922439299/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=6761737885922439299' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/6761737885922439299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/6761737885922439299'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/blog-post.html' title='どんな紙でもポストイットにする糊 - 「貼ってはがせる糊」も１００円ショップにあった'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-Ch57dn84540/TwqNlGyvtMI/AAAAAAAABq4/XzSD2nSx0TY/s72-c/DSC03617_thumb%25255B3%25255D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-8267570090572445747</id><published>2012-01-09T05:09:00.001+09:00</published><updated>2012-01-10T10:00:21.330+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Wine'/><category scheme='http://www.blogger.com/atom/ns#' term='Mozc'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Lubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='Chromium'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>古いノート PC に Lubuntu をインストール - ブラウザは Chromium, IME にMozc, wine で Windows アプリケーションも利用</title><content type='html'>&lt;h4 align="left"&gt;1. Lubuntu で、Google Chrome, Google 日本語入力、Windows アプリケーションを使いたい&lt;/h4&gt;    &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://www.vaio.sony.co.jp/Products/PCG-V505W/feat1.html"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="ソニー製品情報 ｜ 「バイオノート505」 PCG-V505W/P・V505F/B・V505T3/P・V505T3" alt="http://www.vaio.sony.co.jp/Products/PCG-V505W/feat1.html" src="http://kwout.com/cutout/m/w6/es/2uk_bor.jpg" width="331" height="123" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.vaio.sony.co.jp/Products/PCG-V505W/feat1.html"&gt;&lt;font size="2"&gt;「バイオノート505」&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/mw6es2uk"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;    &lt;p&gt;家に古いノート PC がある。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.vaio.sony.co.jp/Products/PCG-V505W/"&gt;バイオノート505(PCG-V505W/P)&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;CPU Pentium M 1.5GHz, メモリ 1G。OS は Windows XP。&lt;/p&gt;  &lt;p&gt;普段、自分が使っているデスクトップ PC の方が動作が早いため、このノート PC を使うと、余りの遅さに辟易する。&lt;/p&gt;  &lt;p&gt;Linux をインストールすれば、サクサク動いてくれるだろうか？&lt;/p&gt;  &lt;p&gt;以前に、&lt;a href="http://jutememo.blogspot.com/2010/06/ubuntu-virtualbox.html"&gt;Ubuntu を VirtualBox へインストールしたことがある。&lt;/a&gt;このとき、軽い動作にするために、Ubuntu の派生である Lubuntu をインストールした。今回、ノート PC に、この Lubuntu をインストールしてみるとにした。&lt;/p&gt;  &lt;p&gt;要件は、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;ブラウザは、Google Chrome を使いたい。 &lt;/li&gt;    &lt;li&gt;IME は、Google 日本語入力を使いたい。 &lt;/li&gt;    &lt;li&gt;Windows アプリケーションも利用したい &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. はじめに Ubuntu をインストール&lt;/h4&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://lubuntu.net/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="lubuntu | light Ubuntu for faster computing" alt="http://lubuntu.net/" src="http://kwout.com/cutout/6/8a/jf/ehr_bor.jpg" width="245" height="62" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://lubuntu.net/"&gt;&lt;font size="2"&gt;lubuntu&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/68ajfehr"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; Lubuntu は、Ubuntu から派生したディストリビューション。&lt;a href="http://ja.wikipedia.org/wiki/Ubuntu#.E6.B4.BE.E7.94.9F.E5.93.81"&gt;Ubuntu の派生品&lt;/a&gt;の一覧を見ると、   &lt;blockquote&gt;   &lt;p&gt;比較的「軽い」ディストリビューション。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;と紹介されている。&lt;/p&gt;  &lt;p&gt;Lubuntu の特徴を確認しておく。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p align="left"&gt;&lt;a href="http://ja.wikipedia.org/wiki/Ubuntu"&gt;Ubuntu&lt;/a&gt;から派生したディストリビューションであり、「軽量で、リソース消費量が少なく、省エネ」なことを目指したプロジェクトである。…&lt;/p&gt;    &lt;p align="left"&gt;LubuntuのRAM使用量は通常インストール状態でデスクトップとして使われたXubuntuやUbuntuのほぼ半分であり、Live CDを使った場合1/3になることが示された。&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Lubuntu#cite_note-Linux-mag-3"&gt;[4]&lt;/a&gt;&lt;/sup&gt;また、現在のUbuntu公式派生ディストリビューションの中で一番の人気を誇っている&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Lubuntu#cite_note-DistroWatch-14"&gt;[15]&lt;/a&gt;&lt;/sup&gt;(2011年12月現在)…&lt;/p&gt;    &lt;p align="left"&gt;（&lt;a href="http://ja.wikipedia.org/wiki/Lubuntu"&gt;Lubuntu - Wikipedia&lt;/a&gt; より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;軽くて、メモリ使用量が少なく、派生品の中では一番人気。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Lubuntu はインストールの途中でエラー&lt;/h5&gt;  &lt;p&gt;当初、&lt;a href="http://lubuntu.net/"&gt;lubuntu&lt;/a&gt; より、 &lt;a href="https://help.ubuntu.com/community/Lubuntu/GetLubuntu"&gt;Lubuntu/GetLubuntu&lt;/a&gt; にある&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://cdimages.ubuntu.com/lubuntu/releases/11.10/release/"&gt;Lubuntu 11.10 Standard&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をインストールしようと試みた。しかし、インストールの途中でエラーとなった。&lt;/p&gt;  &lt;p&gt;そこで、&lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt; をインストールした後、Lubuntu へ変更することにした。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt; の &lt;a href="http://www.ubuntu.com/download/ubuntu/download"&gt;Download&lt;/a&gt; より、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Ubuntu 11.10, 32-bit &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をダウンロードし、インストールウィザードに従う。 Ubuntu は、何の問題もなくインストールできた。詳しくは、&lt;a href="http://japan.zdnet.com/os/analysis/35002389/"&gt;Ubuntu 11.04インストールガイド - ZDNet Japan&lt;/a&gt; を参照。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;見慣れない Unity&lt;/h5&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Unity - Wikipedia" alt="http://ja.wikipedia.org/wiki/Unity" src="http://kwout.com/cutout/a/s8/qh/rwd_bor.jpg" width="297" height="227" usemap="#map_as8qhrwd" /&gt;&lt;map id="map_as8qhrwd" name="map_as8qhrwd"&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Ubuntu_11.10_Final.png" shape="rect" alt="" coords="0,103,296,120" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ja.wikipedia.org/wiki/Unity"&gt;&lt;font size="2"&gt;Unity - Wikipedia&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/as8qhrwd"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; 久しぶりにインストールしたら、随分 UI が変更されていたので違和感を感じた。この UI は Unity と呼ばれる。   &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Unity"&gt;Unity - Wikipedia&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;縦に配置されたLauncher&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Unity#cite_note-0"&gt;[1]&lt;/a&gt;&lt;/sup&gt;と呼ばれるアプリケーションスイッチャー&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Unity#cite_note-1"&gt;[2]&lt;/a&gt;&lt;/sup&gt;などのインターフェイスが特徴で、タブレットやネットブックなど画面サイズが限定された環境でもスペースを有効に利用できるよう設計されている。Ubuntu11.04から採用され、Ubuntu11.10から本格的に採用された。…&lt;/p&gt;    &lt;p&gt;あまりにもタブレットに最適化されすぎていて、デスクトップで使用するのは好ましくないとの意見や、まだ実用レベルではないという意見もある。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://japan.zdnet.com/os/sp/35012734/"&gt;2012年のオープンソース界を大胆予想--今年のLinuxとOSSはどうなる？ - ZDNet Japan&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AB%E3%83%8E%E3%83%8B%E3%82%AB%E3%83%AB"&gt;Canonical&lt;/a&gt;がこの変更を行ったのは、Ubuntuをすべてのデバイスでサポートできるようにするためであり、当然それにはタブレット端末も含まれているはずだ。… &lt;a href="http://ja.wikipedia.org/wiki/%E3%83%9E%E3%83%BC%E3%82%AF%E3%83%BB%E3%82%B7%E3%83%A3%E3%83%88%E3%83%AB%E3%83%AF%E3%83%BC%E3%82%B9"&gt;Mark Shuttleworth&lt;/a&gt;氏も、Unityで行くという判断をした際に、技術の未来に無関心だったはずがない。その計画にはタブレットが必ず含まれているはずだ。 &lt;/p&gt;    &lt;p&gt;たしかに、Shuttleworth氏が述べた計画では、UbuntuおよびUnityを2年間でタブレットに対応させるということだった。わたしの考えでは、2012年にサプライズが起こり、最初のLinuxタブレットが登場するだろう。 &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Unity の UI は、慣れれば使いやすいのかもしれない。しかし、直感的なカスタマイズができないことと、インストールしたノート PC では、動作が重くて利用する気になれなかった。&lt;/p&gt;  &lt;h6&gt;ランチャーに登録したアプリケーションの位置を変更する方法&lt;/h6&gt;  &lt;p&gt;左横のランチャーに登録してあるアプリケーションの位置を変更する方法が、最初わからなかった。ランチャーにアプリケーションを登録する方法は、Windows 7 と同じように、アプリケーションを起動したら、そのアイコンを右クリックして、登録すれば良い。しかし、アイコンをつかんで移動させようとすると、ランチャー全体が帯のように縦方向に移動してしまう。アイコンの位置を変更するには、アイコンをクリックしたまま、ちょっと待ち、その後移動させる。Windows 7 とは少し勝手が違った。&lt;/p&gt;  &lt;p&gt;ランチャーのアイコンを移動させる方法は、直感的だった。しかし、Dash ホームで表示される内容を、直感的な操作により自由に変更することができなかった。これが簡単にできるようになれば、使いやすい UI かもしれない。&lt;/p&gt;  &lt;h6&gt;ハイバネートとサスペンドができない&lt;/h6&gt;  &lt;p&gt;ハイバネート、サスペンドをさせると、その後、復帰できなかった。 PC は動作しているが、画面が真っ黒なまま。なぜか、一度ログアウトし、再ログインするとハイバネートとサスペンドが正常に動作した。&lt;/p&gt;  &lt;p&gt;ハイバネート、サスペンドの後に、パスワードの入力を求めないように設定したかったので、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;gconf-editor&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をインストール。設定エディタを起動し、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;/ &amp;gt; desktop &amp;gt; gnome &amp;gt; lockdown の disable lock screen &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;にチェックしたけれど、ダメだった。&lt;/p&gt;  &lt;p&gt;xubuntu, lubuntu では、ハイバネートとサスペンドは正常に動いた。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;ブラウザのインストール&lt;/h5&gt;    &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Chromium - The Chromium Projects" alt="http://dev.chromium.org/Home" src="http://kwout.com/cutout/9/5i/bp/mv7_bor.jpg" width="339" height="59" usemap="#map_95ibpmv7" /&gt;&lt;map id="map_95ibpmv7" name="map_95ibpmv7"&gt;&lt;area href="http://dev.chromium.org/" shape="rect" alt="" coords="60,6,332,34" /&gt;&lt;area href="http://dev.chromium.org/chromium-projects" shape="rect" alt="" coords="7,58,151,58" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://dev.chromium.org/Home"&gt;&lt;font size="2"&gt;Chromium&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/95ibpmv7"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; Google Chrome に相当するアプリケーションは、&lt;a href="http://ja.wikipedia.org/wiki/Chromium"&gt;Chromium&lt;/a&gt; 。    &lt;blockquote&gt;   &lt;p&gt;Chromiumのスナップショットは、Googleによるいくつかの追加機能を除いて、Google Chromeの最新ビルドと本質的に似ている&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Chromium#cite_note-3"&gt;[4]&lt;/a&gt;&lt;/sup&gt;。Google Chromeに含まれているがChromiumには含まれていない代表的なものには、Googleブランド、自動アップデート機能、クリックラップ契約（利用許諾に「同意する」を押下することで承諾するもの）、RLZトラッキング機能、&lt;a href="http://ja.wikipedia.org/wiki/Adobe_Flash"&gt;Adobe Flash Player&lt;/a&gt;の同梱などがある。&lt;/p&gt;    &lt;p&gt;Chromiumプロジェクトの名前の由来は、鉄などの&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%81%E3%81%A3%E3%81%8D"&gt;めっき&lt;/a&gt;に使われることで知られる金属系&lt;a href="http://ja.wikipedia.org/wiki/%E5%85%83%E7%B4%A0"&gt;元素&lt;/a&gt;の&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%AD%E3%83%A0"&gt;クロム&lt;/a&gt;（&lt;a href="http://ja.wikipedia.org/wiki/%E8%8B%B1%E8%AA%9E"&gt;英語&lt;/a&gt;でchromium）である。そのクロムめっきを施した金属を英語で chrome と呼ぶことから、「(Google) Chromeを作るのに使うモノ」という意味でこの名称となった&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Chromium#cite_note-4"&gt;[5]&lt;/a&gt;&lt;/sup&gt;。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;Ubuntu ソフトウェアセンターで `&lt;strong&gt;Chromium’&lt;/strong&gt; で検索して、インストール。&lt;/p&gt;  &lt;p align="left"&gt;Adobe Flash Player もインストールしておく。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5 align="left"&gt;IME のインストール&lt;/h5&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Google_%E6%97%A5%E6%9C%AC%E8%AA%9E%E5%85%A5%E5%8A%9B"&gt;Google 日本語入力&lt;/a&gt;に相当するのは、Mozc 。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;      &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="mozc - Mozc - Japanese Input Method for Chromium OS, Windows, Mac and Linux - Google Project Hosting" alt="http://code.google.com/p/mozc/" src="http://kwout.com/cutout/f/ik/ci/feh_bor.jpg" width="242" height="71" usemap="#map_fikcifeh" /&gt;&lt;map id="map_fikcifeh" name="map_fikcifeh"&gt;&lt;area href="http://code.google.com/p/mozc/" shape="rect" alt="" coords="5,48,59,63" /&gt;&lt;area href="http://code.google.com/p/mozc/" shape="rect" alt="" coords="67,1,152,47" /&gt;&lt;area href="http://code.google.com/p/mozc/" shape="rect" alt="" coords="67,48,241,63" /&gt;&lt;/map&gt;         &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;/p&gt;       &lt;a href="http://code.google.com/p/mozc/"&gt;&lt;font size="2"&gt;mozc&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/fikcifeh"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;   &lt;/p&gt; オープンソース&lt;/a&gt;版は&lt;b&gt;Mozc&lt;/b&gt;（モズク）という名称で公開されている。        &lt;p&gt;2010年&lt;a href="http://ja.wikipedia.org/wiki/5%E6%9C%8811%E6%97%A5"&gt;5月11日&lt;/a&gt;、&lt;a href="http://ja.wikipedia.org/wiki/Google_Chrome_OS"&gt;Google Chrome OS&lt;/a&gt;で必要な部分のみが「mozc」という名称で、&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9"&gt;オープンソース&lt;/a&gt;化された&lt;sup&gt;&lt;a href="http://ja.wikipedia.org/wiki/Google_%E6%97%A5%E6%9C%AC%E8%AA%9E%E5%85%A5%E5%8A%9B#cite_note-googleblog20100511-3"&gt;[4]&lt;/a&gt;&lt;/sup&gt;。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;ただし、Mozc は Ubuntu ソフトウェアセンターで検索しても、見つからなかった。&lt;/p&gt;  &lt;p&gt;そこで、Synaptic Package Manager を使う。予め、Ubuntu ソフトウェアセンターで `synaptic’ で検索し、インストールしておく。&lt;/p&gt;  &lt;p&gt;その後、Synaptic パッケージマネージャで `&lt;strong&gt;ibus-mozc&lt;/strong&gt;’ を検索し、インストール指定し、適用する。&lt;/p&gt;  &lt;p&gt;インストール後、一度、ログインしなおす。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;メニューバーのキーボードのアイコン &amp;gt; 設定 &amp;gt; インプットメソッド &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;で Mozc を選択する。&lt;/p&gt;  &lt;p&gt;日本語と英数を切り替えるには、&lt;strong&gt;Ctrl + Space&lt;/strong&gt; を押す。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5 align="left"&gt;Windows アプリケーションを動かすために&lt;/h5&gt;  &lt;h6 align="left"&gt;7-zip&lt;/h6&gt;  &lt;p&gt;Windows で使われる圧縮形式を解凍できるように、7-zip をインストールしておく。Ubuntu ソフトウェアセンターで `7 zip’ で検索して、インストール。&lt;/p&gt;  &lt;p&gt;7-zip で解凍するには、端末を起動し、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;7z x アーカイブ名&lt;/p&gt; &lt;/blockquote&gt;    &lt;h6&gt;Wine&lt;/h6&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="WineHQ - Run Windows applications on Linux, BSD, Solaris and Mac OS X" alt="http://www.winehq.org/" src="http://kwout.com/cutout/c/ms/vx/5az_bor.jpg" width="290" height="106" usemap="#map_cmsvx5az" /&gt;&lt;map id="map_cmsvx5az" name="map_cmsvx5az"&gt;&lt;area href="http://www.winehq.org/" shape="rect" alt="" coords="100,74,285,89" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.winehq.org/"&gt;&lt;font size="2"&gt;WineHQ&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/cmsvx5az"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; Windows アプリケーションを動かすためのソフトは &lt;a href="http://ja.wikipedia.org/wiki/Wine"&gt;Wine&lt;/a&gt; 。    &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;Wine&lt;/b&gt; （ワイン）は、&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9"&gt;オープンソース&lt;/a&gt;の &lt;a href="http://ja.wikipedia.org/wiki/Windows_API"&gt;Windows API&lt;/a&gt; 実装を通じて、主として &lt;a href="http://ja.wikipedia.org/wiki/80x86"&gt;x86&lt;/a&gt; &lt;a href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%BB%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%81%E3%83%A3"&gt;アーキテクチャ&lt;/a&gt;上の &lt;a href="http://ja.wikipedia.org/wiki/Unix%E7%B3%BB"&gt;Unix 系&lt;/a&gt; OSにおいて &lt;a href="http://ja.wikipedia.org/wiki/Microsoft_Windows"&gt;Microsoft Windows&lt;/a&gt; 用&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2"&gt;アプリケーション&lt;/a&gt;をネイティブ動作させることを目標とする&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0_%28%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%29"&gt;プログラム&lt;/a&gt;群である。…&lt;/p&gt;    &lt;p&gt;Windows プログラムが要求する &lt;a href="http://ja.wikipedia.org/wiki/%E3%83%80%E3%82%A4%E3%83%8A%E3%83%9F%E3%83%83%E3%82%AF%E3%83%AA%E3%83%B3%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA"&gt;DLL&lt;/a&gt; の代替品を供給し、また &lt;a href="http://ja.wikipedia.org/wiki/Windows_NT%E7%B3%BB"&gt;Windows NT&lt;/a&gt; &lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB"&gt;カーネル&lt;/a&gt;の&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9"&gt;プロセス&lt;/a&gt;を再現することによって、Windows プログラムをネイティブ動作させる。簡単に言えば Wine は、Linux 上で Windows を動作させているのではなく、Linux に Windowsと同じ挙動をさせているのである。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Ubuntu ソフトウェアセンターで `&lt;strong&gt;wine&lt;/strong&gt;’ で検索。現在、バージョンが 1.2, 1.3, Beta とある。&lt;/p&gt;  &lt;h6&gt;サウンドが正常に出力されない&lt;/h6&gt;  &lt;p&gt;試しに、&lt;a href="http://www.vector.co.jp/soft/win95/game/se224921.html"&gt;スライドぽぷん&lt;/a&gt; を動作させてみた。&lt;/p&gt;  &lt;p&gt;ダウンロードし、解凍後、ダブルクリックで起動するには、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;アプリケーションで右クリック &amp;gt; プロパティ &amp;gt; 開き方 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;で `Wine Windows Program Loader’ を選択する。ただし、バージョン 1.2 では、プロパティのアクセスで、「プログラムとして実行可能」にチェックをする必要がある。&lt;/p&gt;  &lt;p&gt;バージョン 1.3 では、サウンドが正常に出力されるが、動きが悪くなった。バージョン 1.2 では、サウンドが一部出力されない代わりに、動きがよくなった。Configure Wine のオーディオの設定で、「音のテスト」音が出た EsounD を選択したら、全てのサウンドが出力されたが、音がでるタイミングがおかしくなった。&lt;/p&gt;  &lt;p&gt;アプリケーションによって、ちゃんと動いてくれるものと、そうでないものがある。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;3.&amp;#160; Ubuntu から Lubuntu へ変更&lt;/h4&gt;  &lt;p align="left"&gt;&lt;a href="http://viva-ubuntu.com/viva-ubuntu/10-04%E3%81%AA%E3%82%89%E3%80%8Clubuntu%E3%80%8D%E5%8C%96%E3%81%8C%E8%B6%85%E7%B0%A1%E5%8D%98%EF%BC%81xubuntu%E3%82%88%E3%82%8A%E3%82%82%E3%82%B5%E3%82%AF%E3%82%B5%E3%82%AF%E5%8B%95%E3%81%8F%E3%83%87.html"&gt;10.04なら「Lubuntu」化が超簡単！Xubuntuよりもサクサク動くデスクトップが一気に導入可能！ « LiberOS | Viva! Ubuntu!!&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Ubuntuが採用しているパッケージ管理システム”apt”には一気にパッケージをまとめて導入できる&lt;a href="https://wiki.ubuntulinux.jp/MetaPackages"&gt;「メタパッケージ」&lt;/a&gt;という便利な機能があります。&lt;/p&gt;    &lt;p&gt;デスクトップ環境関連のメタパッケージとしては、「kubuntu-desktop」、「xubuntu-desktop」、「ubuntustudio-desktop」、「mythbuntu-desktop」、「edubuntu-desktop」（教育用）、「Ichthux desktop」（キリスト教向け）、「matchbox-desktop」（8.04までで終了）などがあり、Synapticパッケージマネージャからこれらをインストールするだけで、デスクトップ環境をガラリと変えてしまうパッケージ類を一気に導入することが可能です。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Synapticパッケージマネージャを起動し`lubuntu-desktop’ を検索し、インストール指定したら、適用する。&lt;/p&gt;  &lt;p&gt;一旦ログアウトし、ログイン画面で、lubuntu を選択。&lt;/p&gt;  &lt;p&gt;さすがに、Lubuntu の方が Unity よりも、メモリ使用量が少なく、動きも良かった。また、ハイバネート、サスペンドも正常に利用できるようになった。&lt;/p&gt;  &lt;p&gt;デスクトップをカスタマイズするには、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;メニューより、設定 &amp;gt; Openbox Configuration Manager&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を利用する。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-8267570090572445747?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/8267570090572445747/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=8267570090572445747' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8267570090572445747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8267570090572445747'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/pc-lubuntu-chromium-ime-mozc-wine.html' title='古いノート PC に Lubuntu をインストール - ブラウザは Chromium, IME にMozc, wine で Windows アプリケーションも利用'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-5066128998679638360</id><published>2012-01-07T00:43:00.001+09:00</published><updated>2012-01-11T09:41:33.978+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='EcoLinux'/><category scheme='http://www.blogger.com/atom/ns#' term='Puppy Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Lubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='Ubuntu'/><title type='text'>壊れそうな古い PC で、動作の軽い Puppy Linux を利用する</title><content type='html'>&lt;h4 align="left"&gt;1. 壊れそうな古い PC で、軽い Linux を動作させたい&lt;/h4&gt;  &lt;p align="left"&gt;今にも壊れそうな PC がある。おそらく数年前のもので、CPU は Celeron 2.66GHz, メモリ 512 MB。しばらく使っていると、ファンが唸りだし、HDD へアクセスする度に異音がする。近々、廃棄予定とのこと。しかし、都合上、この PC で作業しなければならなかった。&lt;/p&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Microsoft Windows XP - Wikipedia" alt="http://ja.wikipedia.org/wiki/Microsoft_Windows_XP" src="http://kwout.com/cutout/x/ig/jf/ehr_bor.jpg" width="247" height="62" usemap="#map_xigjfehr" /&gt;&lt;map id="map_xigjfehr" name="map_xigjfehr"&gt;&lt;area href="http://ja.wikipedia.org/wiki/Microsoft_Windows" shape="rect" alt="" coords="29,0,160,2" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Windows_XP_wordmark.svg" shape="rect" alt="" coords="9,22,258,44" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ja.wikipedia.org/wiki/Microsoft_Windows_XP"&gt;&lt;font size="2"&gt;Microsoft Windows XP - Wikipedia&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;        &lt;br /&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/xigjfehr"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;OS は Windows XP。動作は軽いかと思いきや、メモリの使用量の多い、アンチウィルスソフトを常駐させているため、ブラウザを起動しただけで、物理メモリを超えてしまう。 そのため、&lt;a href="https://docs.google.com/"&gt;Google ドキュメント&lt;/a&gt;で文書を作成しようとしても、なかなか反応がない。同時に、オフィス系のアプリケーションを起動すると、余りのレスポンスの悪さのために睡魔に襲われる。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Notepad%2B%2B"&gt;Notepad++&lt;/a&gt; のような、軽いエディタを使うくらいなら、何とかいける。しかし、HDD が昇天するかもしれない今、この PC のローカルに文書を保存することは躊躇われる。できることなら、クラウドに保存しておきたい。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Dropbox"&gt;Dropbox &lt;/a&gt;のような、ローカルのデータを、オンラインにも保存してくれるサービスを使い、今を乗り切る手もある。しかし、作業中の文書を、既に Google ドキュメントで管理しているので、ブラウザを利用できることが望ましい。&lt;/p&gt;  &lt;p align="left"&gt;また、ローカルに消すことのできないデータがあり、OS を再インストールする時間的余裕もない。&lt;/p&gt;  &lt;p align="left"&gt;そこで、CD-ROM から、軽い動作の Linux を起動し、ブラウザで Google ドキュメントにアクセスし、文書を作成することにした。&lt;/p&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. 軽いディストリビューションの候補を探す&lt;/h4&gt;  &lt;p align="left"&gt;&lt;/p&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://lubuntu.net/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="lubuntu | light Ubuntu for faster computing" alt="http://lubuntu.net/" src="http://kwout.com/cutout/9/dz/kc/36t_bor.jpg" width="241" height="64" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://lubuntu.net/"&gt;&lt;font size="2"&gt;lubuntu&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/9dzkc36t"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; 普段は、Windows を使っている。 Linux を日常的に利用したことはない。そのため、何を使えばいのかわからない。&lt;a href="http://jutememo.blogspot.com/2010/06/ubuntu-virtualbox.html"&gt;使わなくなった古い PC に、軽いLinux をインストールするため、Windows 上の VirtualBox へ Ubuntu をインストールして検討したことはある&lt;/a&gt;。(2010.6.6) このときは、&lt;a href="http://ja.wikipedia.org/wiki/Ubuntu"&gt;Ubuntu&lt;/a&gt; の派生である、&lt;a href="http://ja.wikipedia.org/wiki/Lubuntu"&gt;Lubuntu&lt;/a&gt; を使用した。   &lt;p align="left"&gt;Ubuntu の推奨環境は、&lt;/p&gt;  &lt;blockquote&gt;   &lt;li&gt;Pentium 4 1GHz プロセッサ &lt;/li&gt;    &lt;li&gt;1GBのシステムメモリ      &lt;p align="left"&gt;（&lt;a href="http://ja.wikipedia.org/wiki/Ubuntu#.E3.83.87.E3.82.B9.E3.82.AF.E3.83.88.E3.83.83.E3.83.97.E7.89.88"&gt;Ubuntu - Wikipedia&lt;/a&gt; より）&lt;/p&gt;   &lt;/li&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;Ubunu を利用したら、現状より動作が緩慢になるかもしれない。CPU は大丈夫だけれど、メモリに余裕がない。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="https://forums.ubuntulinux.jp/viewtopic.php?id=2124"&gt;Ubuntu日本語フォーラム / 古いＰＣだと難しいのでしょうか&lt;/a&gt;(2008-05-31) には、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;&lt;a href="http://ja.ecolinuxos.com/"&gt;The Ecolinux Project&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;Puppy Linux 日本語版&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;が、軽いディストリビューションとして紹介されていた。&lt;/p&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h5 align="left"&gt;EcoLinux&lt;/h5&gt;  &lt;p align="left"&gt;&lt;/p&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="The Ecolinux Project" alt="http://ja.ecolinuxos.com/" src="http://kwout.com/cutout/w/q2/es/2uk_bor.jpg" width="226" height="100" usemap="#map_wq2es2uk" /&gt;&lt;map id="map_wq2es2uk" name="map_wq2es2uk"&gt;&lt;area href="http://ja.ecolinuxos.com/" shape="rect" alt="" coords="4,110,303,126" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;/p&gt;   &lt;a href="http://ja.ecolinuxos.com/"&gt;&lt;font size="2"&gt;The Ecolinux Project&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/wq2es2uk"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/div&gt; &lt;a href="http://ja.wikipedia.org/wiki/Ecolinux"&gt;Ecolinux - Wikipedia&lt;/a&gt;&lt;/a&gt; によると、   &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;Ecolinux&lt;/b&gt;（エコリナックス）は日本で開発されている&lt;a href="http://ja.wikipedia.org/wiki/Ubuntu"&gt;Ubuntu&lt;/a&gt;ベースの軽量&lt;a href="http://ja.wikipedia.org/wiki/Linux%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3"&gt;Linuxディストリビューション&lt;/a&gt;。&lt;/p&gt;    &lt;p&gt;EcolinuxはUbuntuのソフトウェアを用いて、ロースペックマシンの利用者等に最新かつ軽量なオペレーティングシステムを提供することを目指している。…&lt;/p&gt;    &lt;p&gt;Ubuntuには収録されていないような&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%BC%E3%83%89%E3%82%A6%E3%82%A7%E3%82%A2"&gt;ハードウェア&lt;/a&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90"&gt;ドライバ&lt;/a&gt;のパッケージが多くインストールされており、Ubuntuが動作しないマシンでも動作する可能性がある。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/Ubuntu#.E9.9D.9E.E5.85.AC.E5.BC.8F"&gt;Ubuntu - Wikipedia&lt;/a&gt; には、Ubuntu の非公式な派生物として挙げられている。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Puppy Linux&lt;/h5&gt; &lt;a href="http://ja.wikipedia.org/wiki/Puppy_Linux"&gt;Puppy Linux - Wikipedia&lt;/a&gt;&lt;/a&gt; によると、   &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Puppy Linux 日本語版" alt="http://openlab.jp/puppylinux/" src="http://kwout.com/cutout/s/6x/ft/94x_bor.jpg" width="113" height="111" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://openlab.jp/puppylinux/"&gt;&lt;font size="2"&gt;Puppy Linux 日本語版&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;font size="2"&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/s6xft94x"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;Puppy Linux&lt;/b&gt;（&lt;b&gt;パピーリナックス&lt;/b&gt;）とは、&lt;a href="http://ja.wikipedia.org/wiki/Linux%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3"&gt;Linuxディストリビューション&lt;/a&gt;の一つである。独自に開発された&lt;a href="http://ja.wikipedia.org/wiki/Live_CD"&gt;Live CD&lt;/a&gt;の&lt;a href="http://ja.wikipedia.org/wiki/Linux%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3"&gt;Linuxディストリビューション&lt;/a&gt;であり、3.0以前は&lt;a href="http://ja.wikipedia.org/wiki/Slackware"&gt;Slackware&lt;/a&gt;と高い互換性を持っていた。…&lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;RAMを利用する仕組みを採用するので、ハードディスクが無くても運用できる。また、この機能のおかげで起動時以外はLive CDが不要… &lt;/li&gt;      &lt;li&gt;個人設定はメディアやハードディスクへ恒久的に保存… &lt;/li&gt;      &lt;li&gt;       &lt;div align="left"&gt;CPUの最低ラインがMMXPentiumクラスと、他のLive CDに比べてとても軽い。…&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align="left"&gt;パッケージの基本的な管理は、PETパッケージ・マネージャーによって行う。…&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align="left"&gt;&lt;a href="http://ja.wikipedia.org/wiki/Debian"&gt;Debian&lt;/a&gt;パッケージの利用も可能。…&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;4.2以降の版ではパッケージマネージャがUbuntuパッケージ(.deb)に対応。… &lt;/li&gt;   &lt;/ul&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;動作が軽いことに加え、&lt;a href="http://ja.wikipedia.org/wiki/Live_CD"&gt;Live CD&lt;/a&gt; を利用した場合でも、設定を保存できるところが興味深い。 &lt;/p&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="KNOPPIX - Wikipedia" alt="http://ja.wikipedia.org/wiki/KNOPPIX" src="http://kwout.com/cutout/w/ui/bp/mv7_bor.jpg" width="121" height="111" usemap="#map_wuibpmv7" /&gt;&lt;map id="map_wuibpmv7" name="map_wuibpmv7"&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Knoppix-logo.svg" shape="rect" alt="" coords="9,42,108,68" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ja.wikipedia.org/wiki/KNOPPIX"&gt;&lt;font size="2"&gt;KNOPPIX - Wikipedia&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;        &lt;br /&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/wuibpmv7"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; 同じような機能は、&lt;a href="http://ja.wikipedia.org/wiki/KNOPPIX"&gt;KNOPPIX&lt;/a&gt; にもある。    &lt;blockquote&gt;   &lt;p align="left"&gt;… CD/DVDから起動するため、書き込み（&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF"&gt;データ&lt;/a&gt;の変更）を行うことができるユーザのホーム・&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA"&gt;ディレクトリ&lt;/a&gt;などが&lt;a href="http://ja.wikipedia.org/wiki/RAM%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF"&gt;RAMディスク&lt;/a&gt;上に置かれており、パソコンの&lt;a href="http://ja.wikipedia.org/wiki/%E5%86%8D%E8%B5%B7%E5%8B%95"&gt;再起動&lt;/a&gt;や&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%A3%E3%83%83%E3%83%88%E3%83%80%E3%82%A6%E3%83%B3"&gt;シャットダウン&lt;/a&gt;で保存したデータは消えてしまう。しかし、それらを&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%83%AD%E3%83%83%E3%83%94%E3%83%BC%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF"&gt;フロッピーディスク&lt;/a&gt;、&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%BC%E3%83%89%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF"&gt;ハードディスク&lt;/a&gt;、&lt;a href="http://ja.wikipedia.org/wiki/USB%E3%83%A1%E3%83%A2%E3%83%AA"&gt;USBメモリ&lt;/a&gt;などに保存することもできる。&lt;/p&gt;    &lt;p align="left"&gt;（&lt;a href="http://ja.wikipedia.org/wiki/KNOPPIX"&gt;KNOPPIX - Wikipedia&lt;/a&gt; より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;独自のパッケージマネージャを持っているのに加え、Debian, Ubuntu パッケージも利用できるところが便利そう。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://ja.wikipedia.org/wiki/Linux%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3"&gt;Linuxディストリビューション&lt;/a&gt;には、&lt;a href="http://ja.wikipedia.org/wiki/Linux%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3#Slackware.E7.B3.BB"&gt;Slackware系&lt;/a&gt;の１つとして挙げられている。また、&lt;a href="http://ja.wikipedia.org/wiki/Linux%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E6%AF%94%E8%BC%83"&gt;Linuxディストリビューションの比較 - Wikipedia&lt;/a&gt; では、ベースとなるディストリビューションは、none となっている。&lt;/p&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;3. Puppy Linux は軽かった&lt;/h4&gt;  &lt;p align="left"&gt;Ubuntu, EcoLinux, Puppy Linux の &lt;a href="http://ja.wikipedia.org/wiki/Live_CD"&gt;Live CD&lt;/a&gt; を入手して、実際に起動してみた。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;&lt;a href="http://ftp.jaist.ac.jp/pub/Linux/ubuntu-jp-cdimage/releases/11.10/ubuntu-ja-11.10-desktop-i386.iso"&gt;ubuntu-ja-11.10-desktop-i386.iso&lt;/a&gt; (&lt;a href="http://www.ubuntulinux.jp/News/ubuntu1110-desktop-ja-remix"&gt;Ubuntu 11.10 Desktop 日本語 Remix CD リリース&lt;/a&gt;)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a href="http://sourceforge.jp/projects/ecolinux/downloads/52806/ecolinux-11.04.3.iso/"&gt;EcoLinux 11.04.3&lt;/a&gt; (&lt;a href="http://ja.ecolinuxos.com/Entry/150/"&gt;The Ecolinux Project ダウンロード&lt;/a&gt;)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://openlab.jp/puppylinux/download/wary-511-01j-k2.6.32.28-small.iso"&gt;wary-511-01j-k2.6.32..&lt;/a&gt; (&lt;a href="http://openlab.jp/puppylinux/#dl"&gt;Puppy Linux 日本語版&lt;/a&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;その結果、Puppy Linux の動作が圧倒的に軽かった。次に EcoLinux で、Ubuntu は重くて使えなかった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;&lt;a name="googlechrome"&gt;&lt;/a&gt;Google ドキュメントの入力のために、Google Chrome をインストール&lt;/h5&gt;    &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://www.seamonkey.jp/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="SeaMonkey.jp" alt="http://www.seamonkey.jp/" src="http://kwout.com/cutout/x/mt/m2/ukn_bor.jpg" width="230" height="112" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.seamonkey.jp/"&gt;&lt;font size="2"&gt;SeaMonkey.jp&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/xmtm2ukn"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; ただし、上記バージョンの Puppy Linux のデフォルトブラウザでは、Google ドキュメントで、日本語入力が上手くできなかった。当初、エディタで文字を入力してから、Google ドキュメントにコピペしていた。デフォルトのブラウザである &lt;a href="http://ja.wikipedia.org/wiki/SeaMonkey"&gt;SeaMonkey&lt;/a&gt; との相性が悪いようだった。文書作成ですら、非効率で困った。    &lt;p&gt;そこで、ブラウザを変更するために、Google Chrome をインストール。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://moonkids.seesaa.net/article/144541626.html"&gt;Puppy Linux 4.3.1 google-chromeのインストール: ペンギンの壺&lt;/a&gt;&amp;#160; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を参考にして、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://openlab.jp/puppylinux/download/packages-stray/tomo3/google_chrome-puppy-4.31.pet"&gt;http://openlab.jp/puppylinux/download/packages-stray/tomo3/google_chrome-puppy-4.31.pet&lt;/a&gt;&amp;#160; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;をダウンロードして、PETget パッケージマネージャで開き、インストールした。&lt;/p&gt;  &lt;p&gt;これにより、日本語入力での問題がなくなった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5 align="left"&gt;Windows の共有フォルダへアクセス&lt;/h5&gt;  &lt;ul&gt;   &lt;li&gt;メニューより、ネットワーク &amp;gt; Pnethood Samba 共有 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を起動し、ネットワーク内の共有フォルダに connect ボタンで、接続。show ボタンにより、内容を表示させることができた。&lt;/p&gt;  &lt;p&gt;とりあえず、文書作成用の PC として、使えるようになった。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-5066128998679638360?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/5066128998679638360/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=5066128998679638360' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5066128998679638360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5066128998679638360'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2012/01/pc-puppy-linux.html' title='壊れそうな古い PC で、動作の軽い Puppy Linux を利用する'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-6459294367233232064</id><published>2011-12-28T02:35:00.001+09:00</published><updated>2011-12-28T02:35:31.985+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='スタートメニュー'/><category scheme='http://www.blogger.com/atom/ns#' term='Google 日本語入力'/><title type='text'>Windows 7 のスタートメニューで、プログラムを検索するときは、プログラム名に含まれる空白を忘れずに</title><content type='html'>&lt;h4 align="left"&gt;1. プログラムやコントロールパネルの設定は、検索して起動する&lt;/h4&gt;  &lt;p align="left"&gt;Windows XP を使っていたときは、プログラムを起動するために、スタートメニューから、階層を辿り、目的のプログラムを選択した。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh5.ggpht.com/-Se-bvLdrbg4/TvoB1Tn9VMI/AAAAAAAABo0/IIBvVOEyDDk/s1600-h/img_0029%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0029" border="0" alt="img_0029" align="right" src="http://lh6.ggpht.com/-MnqS0J82qTk/TvoB2HID2xI/AAAAAAAABo8/gnUgcr8v27I/img_0029_thumb%25255B2%25255D.png?imgmax=800" width="329" height="502" /&gt;&lt;/a&gt;これに対し、Windows 7 では、スタートメニューを開くと、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p align="left"&gt;「プログラムとファイルの検索」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;フィールドにフォーカスが移るため、プログラム名の一部を入力して、起動することが多くなった。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://jutememo.blogspot.com/2011/04/os-xp-windows-7.html"&gt;Windows 7 のコントロールパネルの設定も、プログラム名がうろ覚えであっても、検索することで起動できる&lt;/a&gt;。&lt;/p&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. プログラムに空白がある場合に気をつけること&lt;/h4&gt;  &lt;p&gt;ただし、プログラム名に、空白が含まれるときは、空白も入力する必要がある。&lt;/p&gt;  &lt;p&gt;例えば、「タスク スケジューラ」を起動したいのに、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;タスクスケジューラ&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;と入力しては、プログラムの候補として一覧に表示されない。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;タスク&lt;/strong&gt; &lt;strong&gt;スケジューラ&lt;/strong&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;のように、「タスク」と「スケジューラ」の間に、スペースを入力する必要がある。&lt;/p&gt;  &lt;p&gt;最初、これに気付かず、タスク スケジューラを起動するとき、「タスク」とだけ入力し、それ以上入力しないように意識していた。たたし、この場合、他に「タスク」と名前が付くプログラムがなかったので、何の問題もなかった。しかし、検索のされ方がおかしいなと感じていた。&lt;/p&gt;  &lt;p align="left"&gt;Google 検索のように、システムが、入力に対して、柔軟に対応してくれるといいんだけれど。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. コントロールパネルの設定項目は、空白がなくても候補に表示される&lt;/h4&gt;  &lt;p&gt;不思議なことに、「タスクバー」に関する設定項目のように、コントロールパネルの候補を、スタートメニューで表示させたいときは、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;タスクバー&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;と入力しても、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;タスク&lt;/strong&gt; &lt;strong&gt;バー&lt;/strong&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;としても、同じように「タスク バー」の候補が表示される。&lt;/p&gt;  &lt;p&gt;なぜなのかな？？？&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;4. &lt;a name="googleIME"&gt;&lt;/a&gt;Google 日本語入力で、変換前にスペースを入力するには&lt;/h4&gt;  &lt;p&gt;ところで、Google 日本語入力を使っている場合、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「タスク スケジューラ」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を変換前に&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「たすく すけじゅーら」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;と入力するには、「たすく」と「すけじゅーら」の間で、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Ctrl + Space&lt;/strong&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を押すことによって、半角スペースを入力することができる。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Google 日本語入力のプロパティ &amp;gt; キー設定&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を見ると、設定されているキーを確認できる。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-1JJf8BJtVqU/TvoB3aSANWI/AAAAAAAABpE/EMBWRZLCavI/s1600-h/img_0030%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0030" border="0" alt="img_0030" src="http://lh3.ggpht.com/-A-g1oxZbEfo/TvoB4FkQDRI/AAAAAAAABpM/06QZB2-YaI0/img_0030_thumb.png?imgmax=800" width="560" height="431" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-6459294367233232064?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/6459294367233232064/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=6459294367233232064' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/6459294367233232064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/6459294367233232064'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/windows-7.html' title='Windows 7 のスタートメニューで、プログラムを検索するときは、プログラム名に含まれる空白を忘れずに'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-MnqS0J82qTk/TvoB2HID2xI/AAAAAAAABo8/gnUgcr8v27I/s72-c/img_0029_thumb%25255B2%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-5569301118417441167</id><published>2011-12-27T10:01:00.001+09:00</published><updated>2011-12-27T10:20:09.550+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='エラー'/><category scheme='http://www.blogger.com/atom/ns#' term='タスクスケジューラ'/><category scheme='http://www.blogger.com/atom/ns#' term='システムツール'/><title type='text'>タスク スケジューラを起動したら、エラーが表示される - 起動できないタスクと、タスク イメージの問題</title><content type='html'>&lt;h4&gt;1. タスク スケジューラを起動したら、エラーが表示される&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://lh5.ggpht.com/-WgiE3Lt1_KY/TvkctQiWXQI/AAAAAAAABok/drqDaaIVcXk/s1600-h/img_0030%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0030" border="0" alt="img_0030" align="right" src="http://lh6.ggpht.com/-qz6pYL-rA-Y/TvkcuP4gwyI/AAAAAAAABos/UUlmpQzenWg/img_0030_thumb.png?imgmax=800" width="326" height="177" /&gt;&lt;/a&gt;スタートメニュー &amp;gt; アクセサリ &amp;gt; システム ツール &amp;gt; タスク スケジューラ&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を起動したら、以下の２つのエラーが表示された。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;タスク PC Probe の起動 でエラーが発生しました。エラー メッセージ: 指定されたアカウント名が有効ではありません。&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;タスク イメージは破損しているか、または変更されています。 (HRESULT からの例外: 0x80041321)&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;環境は、Windows 7 Professional 64bit 。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. タスクを削除するには、エクスプローラで、ファイルを削除&lt;/h4&gt;  &lt;p&gt;１つ目の問題は、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;PC Probe の起動&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;という名前のタスクの起動で、問題が発生するようだ。&lt;/p&gt;  &lt;p&gt;しかし、タスク スケジューラを起動し、当該のタスク名を探しても見つからなかった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;コマンドプロンプトで、タスクは表示されるが、削除できない&lt;/h5&gt;  &lt;p&gt;&lt;a href="http://ykr414.com/dos/dos04.html#24"&gt;コマンドプロンプトを使ってみよう！ －設定・システム操作－&lt;/a&gt;を参考にして、コマンドプロンプトより、タスクの一覧を表示。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;schtasks /query&lt;/pre&gt;

&lt;p&gt;その結果、確かに問題となるタスクが、存在することがわかった。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;タスク名                                 次回の実行時刻         状態
======================================= ====================== =============
PC Probe の起動                          N/A                    準備完了&lt;/pre&gt;

&lt;p&gt;コマンドプロンプト上で、削除しようと試みた。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;schtasks /delete /tn &amp;quot;PC Probe の起動&amp;quot;&lt;/pre&gt;

&lt;p&gt;しかし、エラーが表示され、削除できない。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;エラー: 指定のタスク名 &amp;quot;PC Probe の起動&amp;quot; はシステムに存在しません。&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;エクスプローラでタスクを削除&lt;/h5&gt;

&lt;p&gt;&lt;a href="http://ashiato1.blog62.fc2.com/blog-entry-29.html"&gt;タスクスケジューラでイメージの破損 Ashiat 0：&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;タスク スケジューラに登録されているタスクは C:\Windows\System32\Tasks 内にあり、階層も下の画像の左ペインと全く同じになっています。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
  &lt;li&gt;C:\Windows\System32\Tasks &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;をエクスプローラで開いてみたら、ファイル“PC Probe の起動”が存在したので削除。&lt;/p&gt;

&lt;p&gt;これにより、１つ目のエラーは表示されなくなった。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;3. タスク イメージの問題&lt;/h4&gt;

&lt;p&gt;上記のエラーが出なくなっても、２つ目のエラーは、相変わらず表示される。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;タスク イメージは破損しているか、または変更されています。 (HRESULT からの例外: 0x80041321)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://ashiato1.blog62.fc2.com/blog-entry-29.html"&gt;先ほど参考にしたサイト&lt;/a&gt;では、エクスプローラ上で、タスクに対応したファイルを移動させ、問題となるファイルを見つける方法が書かれている。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;1. タスクスケジューラが起動していたら終了させる。
    &lt;br /&gt;2. C:\Windows\System32\Tasks 内のすべてのフォルダをデスクトップなりに移動させる。

    &lt;br /&gt;3. その状態でタスクスケジューラを起動させてエラーが出ないことを確認する。

    &lt;br /&gt;4. あとは「退避させたフォルダ・ファイルを少し戻してタスクスケジューラを起動する。」を繰り返せばいい。

    &lt;br /&gt;5. ファイル単位で割り出せたらそのファイルを調べて、削除してもいいタスクか判断する。削除できればそこで解決。重要なものそうなら再スケジュールの方法を調べて(Microsoft等に聞いて)実行する必要がある。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;調べてみると、以下のタスクに問題があることがわかった。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;C:\Windows\System32\Tasks\Microsoft\Windows\&lt;strong&gt;PerfTrack&lt;/strong&gt;\&lt;strong&gt;BackgroundConfigSurveyor&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;偶然にも、参考にしたサイトと同じタスク。このタスクは、壊れやすいのかな？&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;3. タスクを修復&lt;/h4&gt;

&lt;p&gt;できれば、タスクを削除せずに、修復したい。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://www.sevenforums.com/general-discussion/75441-task-backgroundconfigsurveyor-task-image-corrupt.html#post753457"&gt;task backgroundconfigsurveyor:The task image is corrupt - Windows 7 Forums&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;には、タスク &lt;strong&gt;BackgroundConfigSurveyor &lt;/strong&gt;を修復する方法が書かれている。これに従ったら、エラーが表示されなくなり、タスクを元に戻せた。&lt;/p&gt;

&lt;p&gt;以下に、行ったことをまとめる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;A. タスクと、レジストリのバックアップ&lt;/h5&gt;

&lt;ol&gt;
  &lt;li&gt;C:\Windows\System32\Tasks\Microsoft\Windows\&lt;strong&gt;PerfTrack&lt;/strong&gt; の &lt;strong&gt;BackgroundConfigSurveyor&lt;/strong&gt; を適当なフォルダへ移動させる。 &lt;/li&gt;

  &lt;li&gt;regedit を起動し、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\&lt;strong&gt;Tree\Microsoft\Windows\PerfTrack&lt;/strong&gt; を右クリックしてエクスポート。&lt;/li&gt;

  &lt;li&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\&lt;strong&gt;Plain&lt;/strong&gt; もエクスポート。 &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;B. レジストリ項目の削除&lt;/h5&gt;

&lt;ol&gt;
  &lt;li&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\&lt;strong&gt;Tree\Microsoft\Windows\PerfTrack\BackgroundConfigSurveyor&lt;/strong&gt; の Id の値をメモ。&lt;/li&gt;

  &lt;li&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\&lt;strong&gt;Plain&lt;/strong&gt; の中にある、上記でメモした値と同じフォルダ名を削除。 &lt;/li&gt;

  &lt;li&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\&lt;strong&gt;Tree\Microsoft\Windows\PerfTrack\BackgroundConfigSurveyor&lt;/strong&gt; を削除。 &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;これにより、タスク スケジューラを起動しても、エラーがでなくなる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;C. タスクを作り直す&lt;/h5&gt;

&lt;ol&gt;
  &lt;li&gt;タスク スケジューラを起動し、タスク スケジューラ ライブラリの中の \Microsoft\Windows\&lt;strong&gt;PerfTrack&lt;/strong&gt; を選択。&lt;/li&gt;

  &lt;li&gt;真ん中のペインが空であることを確認し、右クリック &amp;gt; タスクのインポート。 &lt;/li&gt;

  &lt;li&gt;最初に、&lt;strong&gt;BackgroundConfigSurveyor&lt;/strong&gt; を移動させたフォルダを開き、ファイル名の横にあるセレクトボックスで、「すべてのファイル」を選択。 &lt;/li&gt;

  &lt;li&gt;上記の BackgroundConfigSurveyor を開くと、ダイアログが表示されるので、OK ボタンを押す。 &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
  &lt;p&gt;これで、タスクが元に戻った。&lt;/p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-5569301118417441167?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/5569301118417441167/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=5569301118417441167' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5569301118417441167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5569301118417441167'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/blog-post.html' title='タスク スケジューラを起動したら、エラーが表示される - 起動できないタスクと、タスク イメージの問題'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-qz6pYL-rA-Y/TvkcuP4gwyI/AAAAAAAABos/UUlmpQzenWg/s72-c/img_0030_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-2066693872966842639</id><published>2011-12-24T03:48:00.001+09:00</published><updated>2011-12-24T03:48:28.266+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='バッチファイル'/><category scheme='http://www.blogger.com/atom/ns#' term='Ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='タスク'/><title type='text'>Windows で特定のアプリケーションのメモリ使用量を監視する - コマンドラインの tasklist とバッチファイル、Ruby を利用</title><content type='html'>&lt;h4 align="left"&gt;1. 特定のアプリケーションのメモリの使用状況を手軽に把握したい&lt;/h4&gt;  &lt;p align="left"&gt;アドオンをたくさんインストールした状態で、Firefox を使っていると、メモリを大量に消費する。メモリの消費量が増えると、動作が緩慢になるので、メモリの使用状況を、逐次、確認しておきたい。&lt;/p&gt;  &lt;p&gt;Firefox には、メモリの使用状況を表示してくれるアドオンがある。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/memory-restart/"&gt;Memory Restart&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;また、メモリの状況を把握するなら、タスクマネージャを起動すれば良い。Process Lasso のようなプロセスを監視するアプリケーションにも、メモリの使用状況が、細かく表示される。&lt;/p&gt;  &lt;p&gt;しかし、一つアプリケーションのメモリの使用状況だけを、監視したい目的には大げさすぎる。もっと、小さなウィンドウで表示させておきたい。&lt;/p&gt;  &lt;p&gt;Firefox 以外のアプリケーションでも利用できるように、コマンドラインを利用することにした。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. tasklist でタスクの状態を把握する&lt;/h4&gt;  &lt;p&gt;Windows のコマンドラインで、タスク一覧を表示させるコマンドは、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;talklist&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;一覧の中から、特定のアプリケーションだけを表示させたい。&lt;/p&gt;  &lt;p&gt;例えば、firefox だけを表示させたい場合、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;/fi オプション&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;により、次のように指定する。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;tasklist &lt;strong&gt;/fi &amp;quot;imagename eq firefox.exe&amp;quot;&lt;/strong&gt;&lt;/pre&gt;

&lt;p&gt;書式については、help tasklist を参照。&lt;/p&gt;

&lt;p&gt;コマンドを実行した結果は、以下のようになった。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;イメージ名&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; PID セッション名&amp;#160;&amp;#160;&amp;#160;&amp;#160; セッション# メモリ使用量
============= ======== ============= =========== ============
firefox.exe&amp;#160;&amp;#160; 9048 Console&amp;#160;&amp;#160; 1  1,003,824 K&lt;/pre&gt;

&lt;p&gt;プロセスの ID で抽出したい場合は、tasklist で一覧した後、目的の PID を覚えておく。&lt;/p&gt;

&lt;p&gt;例えば、PID が 9048 の場合、次のようにコマンドを入力すれば良い。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;tasklist /fi &amp;quot;PID eq 9048&amp;quot;&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;3. バッチファイルで定期的にコマンドを実行&lt;/h4&gt;

&lt;p align="left"&gt;1秒おきに、メモリの使用量を表示させたい場合、以下の内容のバッチファイル (task.bat) を作成し、実行。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;@echo off
:LOOP
	tasklist /fi &amp;quot;imagename eq firefox.exe&amp;quot;
	sleep 1
	cls
goto :LOOP&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;4. Ruby のキャリッジリターンを使い、表示のチラツキを抑える&lt;/h4&gt;

&lt;p&gt;ただし、上記の方法では、更新されるたびに、画面がちらつく。&lt;/p&gt;

&lt;p&gt;これに対処するためには、&lt;a href="http://read2ch.com/r/tech/1317790320/#187"&gt;Ruby 初心者スレッド Part 46 - READ2CH&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;&lt;dt&gt;&lt;a href="http://read2ch.com/r/tech/1317790320/#187"&gt;176 + 1：&lt;/a&gt;&lt;b&gt;デフォルトの名無しさん&lt;/b&gt;[sage] 2011/10/16(日) 21:39:16.43 &lt;/dt&gt;&lt;dd&gt;clsはWindowsのcmd.exeのコマンドじゃまいか &lt;/dd&gt;&lt;dd&gt;一行だけクリアすればいいのなら &lt;/dd&gt;&lt;dd&gt;&amp;#160;&lt;/dd&gt;&lt;dd&gt;&lt;/dd&gt;&lt;dd&gt;loop { print Time.now; sleep 1; print &amp;quot;\r&amp;quot; } &lt;/dd&gt;&lt;dd&gt;&amp;#160;&lt;/dd&gt;&lt;dd&gt;&lt;/dd&gt;&lt;dd&gt;とかできるけど、数行とかそれ以上のことがしたいなら &lt;/dd&gt;&lt;dd&gt;Ruby向けのライブラリを探すかWindowsのコンソール用のAPIを &lt;/dd&gt;&lt;dd&gt;使うはめになるんじゃないだろうか &lt;/dd&gt;&lt;/blockquote&gt;

&lt;p&gt;print メソッドにおける “\r” は、&lt;a href="http://doc.ruby-lang.org/ja/1.9.3/doc/spec=2fliteral.html#backslash"&gt;バックスラッシュ記法&lt;/a&gt; によると、&lt;/p&gt;

&lt;blockquote&gt;
  
  &lt;dt&gt;\r 
    
  &lt;/dt&gt;&lt;dd&gt;
    &lt;p&gt;キャリッジリターン(0x0d) &lt;/p&gt;
  &lt;/dd&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%A3%E3%83%AA%E3%83%83%E3%82%B8%E3%83%BB%E3%83%AA%E3%82%BF%E3%83%BC%E3%83%B3"&gt;キャリッジ・リターン - Wikipedia&lt;/a&gt; とは、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;b&gt;キャリッジ・リターン&lt;/b&gt;（carriage return）は本来、&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%86%E3%83%AC%E3%82%BF%E3%82%A4%E3%83%97%E7%AB%AF%E6%9C%AB"&gt;テレタイプ端末&lt;/a&gt;の &lt;a href="http://ja.wikipedia.org/wiki/Baudot_Code"&gt;Baudot Code&lt;/a&gt; における&lt;a href="http://ja.wikipedia.org/wiki/%E5%88%B6%E5%BE%A1%E6%96%87%E5%AD%97"&gt;制御文字&lt;/a&gt;を指す用語で、行末から行頭に戻す&lt;b&gt;復帰コード&lt;/b&gt;であって、&lt;a href="http://ja.wikipedia.org/wiki/%E6%94%B9%E8%A1%8C%E3%82%B3%E3%83%BC%E3%83%89"&gt;改行コード&lt;/a&gt;を含まない。…&lt;/p&gt;

  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0"&gt;コンピューティング&lt;/a&gt;では、&lt;b&gt;キャリッジ・リターン&lt;/b&gt; (&lt;b&gt;CR&lt;/b&gt;) は&lt;a href="http://ja.wikipedia.org/wiki/ASCII"&gt;ASCII&lt;/a&gt;、&lt;a href="http://ja.wikipedia.org/wiki/Unicode"&gt;Unicode&lt;/a&gt;、&lt;a href="http://ja.wikipedia.org/wiki/EBCDIC"&gt;EBCDIC&lt;/a&gt;における&lt;a href="http://ja.wikipedia.org/wiki/%E5%88%B6%E5%BE%A1%E6%96%87%E5%AD%97"&gt;制御文字&lt;/a&gt;の一種で、&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AA%E3%83%B3%E3%82%BF%E3%83%BC"&gt;プリンター&lt;/a&gt;または何らかの表示装置に&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AB%E3%83%BC%E3%82%BD%E3%83%AB"&gt;カーソル&lt;/a&gt;を同一行の先頭位置に移動させる意味を持つ。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Ruby で、コマンドを実行するには、&lt;/p&gt;

&lt;p&gt;&lt;a href="http://doc.ruby-lang.org/ja/1.9.2/doc/spec=2fliteral.html#command"&gt;コマンド出力&lt;/a&gt;&amp;#160;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;バッククォート(`)で囲まれた文字列は、ダブルクォートで囲まれた文字列と同様に&lt;a href="http://doc.ruby-lang.org/ja/1.9.2/doc/spec=2fliteral.html#backslash"&gt;バックスラッシュ記法&lt;/a&gt; の解釈と&lt;a href="http://doc.ruby-lang.org/ja/1.9.2/doc/spec=2fliteral.html#exp"&gt;式展開&lt;/a&gt; が行なわれた後、コマンドとして実行され、その標準出力が文字列として与えられます。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://rubyinstaller.org/"&gt;RubyInstaller for Windows&lt;/a&gt; などで、Ruby がインストール済みだとする。以下の内容を task.rb として、実行。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;loop do 
    lines = `tasklist /fi &amp;quot;imagename eq firefox.exe &amp;quot;`.split(&amp;quot;\n&amp;quot;)
    line = lines[3].split
    print &amp;quot;#{line[0]}: #{line[4]}&amp;quot;
    sleep 1
    print &amp;quot;\r&amp;quot;
end&lt;/pre&gt;

&lt;p&gt;実行した後、ウィンドウの大きさを小さくしした。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://lh3.ggpht.com/-OsZbByxIZ_A/TvTM957fxnI/AAAAAAAABnU/1SeIQglIiDg/s1600-h/img_0020%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="img_0020" border="0" alt="img_0020" src="http://lh6.ggpht.com/-nn92OGS3dWs/TvTM-pyTsLI/AAAAAAAABnY/03wF3T-of_0/img_0020_thumb.png?imgmax=800" width="257" height="117" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;常にウィンドウを前面に表示し、監視するには、&lt;a href="http://jutememo.blogspot.com/2011/05/dexpot.html" target="_blank"&gt;Dexpot を使い&lt;/a&gt;、&lt;a href="http://jutememo.blogspot.com/2011/05/dexpot.html#titlebars" target="_blank"&gt;ウィンドウを全面に表示させる機能&lt;/a&gt;を利用した。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;参考サイト&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://www.atmarkit.co.jp/fwin2k/xp_feature/013commandtool/commandtool4.html"&gt;＠IT：Windows XPの正体 強化されたコマンドライン・ツール（中編） 3．タスク制御ユーティリティ&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://sgry.jp/pgarticles/batch.html"&gt;碧落 - 知られざるバッチファイル&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://d.hatena.ne.jp/simply-k/20100821/1282490379"&gt;バッチファイルで無限ループを作る - とあるソフトウェア開発者のブログ&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-2066693872966842639?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/2066693872966842639/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=2066693872966842639' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2066693872966842639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2066693872966842639'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/windows-tasklist-ruby.html' title='Windows で特定のアプリケーションのメモリ使用量を監視する - コマンドラインの tasklist とバッチファイル、Ruby を利用'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-nn92OGS3dWs/TvTM-pyTsLI/AAAAAAAABnY/03wF3T-of_0/s72-c/img_0020_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-2300757287509218387</id><published>2011-12-19T05:52:00.001+09:00</published><updated>2011-12-19T06:23:19.702+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Logicool'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><category scheme='http://www.blogger.com/atom/ns#' term='マウス'/><title type='text'>Logicool のマウスポインタのスピード設定 - Mac のような感触にしたい</title><content type='html'>&lt;h4&gt;1. Mac のマウスの加速は最高だった&lt;/h4&gt;    &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;div style="text-align: center" class="kwout"&gt;&lt;a href="http://images.apple.com/jp/ftp-info/images/kt753-notice.gif"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="kt753-notice.gif (GIF 画像, 580x640 px)" alt="http://images.apple.com/jp/ftp-info/images/kt753-notice.gif" src="http://kwout.com/cutout/n/x4/ib/qs2_bor.jpg" width="321" height="353" /&gt;&lt;/a&gt;       &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://images.apple.com/jp/ftp-info/images/kt753-notice.gif"&gt;&lt;font size="2"&gt;kt753-notice.gif (GIF 画像, 580x640 px)&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;          &lt;br /&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/nx4ibqs2"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/div&gt; &lt;/div&gt; 昔は、Mac を長いこと使っていた。そのためか、マウスポインタの移動・加速の感覚は、未だに Mac が最高だったと感じる。Windows に乗り換えた当初は、マウスの移動がやりにくくて仕方がなかった。    &lt;p&gt;Mac のマウスポインタの動きの特徴は、ゆっくりと操作すると、精密な動きをする。手首のスナップを効かせ、素早く操作すれば、思いの位置へ、加速して飛んでいった。これに対して、Windwos では、べたっとした動きをする。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. これまでの SetPoint の加速・移動の設定&lt;/h4&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: left; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;LOGICOOL&amp;#160; M905&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B002SRT8F6" src="http://ecx.images-amazon.com/images/I/410hWNOfpTL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; 今は Windows で、&lt;a href="http://jutememo.blogspot.com/2011/11/1.html"&gt;Logicool のマウスを使っている&lt;/a&gt;。SetPoint という専用のアプリが付属し、加速設定のための画面存在する。   &lt;p&gt;最近まで、ポインタのスピード設定は、加速は「普通」で、ややポインタのスピードを速くしていた。理由は、大きな画面を左右移動するために、ある程度、速く設定しておかないと、手首が疲れるため。&lt;/p&gt;  &lt;p&gt;しかし、この設定では、左右の大きな移動は問題ないけれど、細かな動きがやりずらい。かと言って、速さを遅くすると、今度は、左右の移動でストレスを感じるようになる。&lt;a href="http://lh3.ggpht.com/-tL_LZs0p2Fo/Tu5RtwH9EbI/AAAAAAAABjs/e9sv8esM2WI/s1600-h/12-19-20113%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-19-20113" border="0" alt="12-19-20113" src="http://lh6.ggpht.com/-87iF6SqbMHo/Tu5SdWryCGI/AAAAAAAABj0/B9JTaGes2Xc/12-19-20113_thumb.png?imgmax=800" width="669" height="413" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. スピードを抑え、加速を高める設定に変更した&lt;/h4&gt;  &lt;p&gt;以前のような、Mac のような感触にするには、どうすればいいか、色々と試したところ、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;ポインタの加速を「高」 &lt;/li&gt;    &lt;li&gt;ポインタのスピードを「少し遅め」 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;に設定するのが良いみたい。しばらくは、この設定で手首を慣らすことにする。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-YcR7R0NPdAM/Tu5SeWJDR4I/AAAAAAAABj4/edzE_i96RN4/s1600-h/12-19-20112%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-19-20112" border="0" alt="12-19-20112" src="http://lh5.ggpht.com/-e372muTe9F8/Tu5Sg7277OI/AAAAAAAABkE/bwMQFVzxUss/12-19-20112_thumb%25255B3%25255D.png?imgmax=800" width="666" height="407" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;ただ、欲を言えば、もう少し細かく段階を設定できるといいのだけれど。無段階で、設定できるようにならないかな。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-2300757287509218387?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/2300757287509218387/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=2300757287509218387' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2300757287509218387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2300757287509218387'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/logicool-mac.html' title='Logicool のマウスポインタのスピード設定 - Mac のような感触にしたい'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-87iF6SqbMHo/Tu5SdWryCGI/AAAAAAAABj0/B9JTaGes2Xc/s72-c/12-19-20113_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-7509460087625742809</id><published>2011-12-18T05:05:00.001+09:00</published><updated>2011-12-18T11:59:18.438+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='無線'/><category scheme='http://www.blogger.com/atom/ns#' term='共有'/><category scheme='http://www.blogger.com/atom/ns#' term='プリンタ'/><category scheme='http://www.blogger.com/atom/ns#' term='ネットワーク'/><title type='text'>放置していたプリントサーバ (BUFFALO LPV3-U2-G54) を設定 - ファームウェアの更新により、双方向通信に対応</title><content type='html'>&lt;h4&gt;1. プリントサーバを使ってなかった理由&lt;/h4&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000C1G862/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;BUFFALO LPV3-U2-G54          &lt;br /&gt;無線USBプリントサーバ&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000C1G862/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B000C1G862" src="http://ecx.images-amazon.com/images/I/313AHB4WXHL._SL500_.jpg" width="114" height="263" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; 随分前に、プリンタを家族で共有するために、プリンタサーバを購入した。   &lt;ul&gt;   &lt;li&gt;&lt;a href="http://buffalo.jp/products/catalog/item/l/lpv3-u2-g54/"&gt;無線USBプリントサーバ|LPV3-U2-G54&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;しかし、次の理由で、結局使わなくなり、放置。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;思ったより簡単に設定ができなかった &lt;/li&gt;    &lt;li&gt;写真の印刷では、直接接続するよりも、耐え難いほど遅かった &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;ただし、文字中心の文書の印刷は、それほど問題はなかった。&lt;/p&gt;  &lt;p&gt;このまま使わないでいるのは、もったいないので、久しぶりに設定することに。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. 家庭内を無線化する技術は進歩しているけれど、わかりづらい&lt;/h4&gt;  &lt;p&gt;家庭内のネットワークは、一度設定すると、よほど何かしたいことがない限り、変更することはない。&lt;a href="http://jutememo.blogspot.com/2009/04/lan-wep-wpa.html"&gt;無線LAN の設定を WEP から WPA へ&lt;/a&gt; 変更したのが 2009/4 。もう、２年以上も前から、ネットワークの構成に変更はない。&lt;/p&gt;  &lt;p&gt;最近の、家庭内のネットワーク化について調べると、今は家電をネットワークに参加させることが、当たり前のように語られている。ハイビジョンを無線で劣化なく見ることができるほどに、無線のスピードが早くなっているとは、全然知らなかった。 (@_@&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;バッファローのプリントサーバは、新しい機種が発売されてなかった&lt;/h5&gt;  &lt;p&gt;そこで、プリントサーバに関しても、同様に次々と製品が発売されてるのか確認してみた。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://buffalo.jp/products/catalog/network/printserver.html"&gt;プリントサーバー｜BUFFALO バッファロー&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;意外だったのは、無線対応のプリントサーバは、新しい機種が出てなかったこと。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;USB につなげる汎用的なデバイス&lt;/h5&gt;  &lt;p&gt;他社では、IODATA が、プリントサーバのような需要に答えるため、&lt;strong&gt;net.USB&lt;/strong&gt; という名前で製品を売り出している。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.iodata.jp/promo/network/netusb/"&gt;net.USBを使ってUSB機器をネットワークでつなごう！｜IODATA アイ・オー・データ機器&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;バッファローで、同様の機能を持った製品を、&lt;strong&gt;デバイスサーバ&lt;/strong&gt;と呼んでいるらしい。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://buffalo.jp/product/wired-lan/device-server/ldv-2uh/"&gt;USBがネットワークでつながる 地デジもつなげて楽しめる USB2.0用デバイスサーバー LDV-2UH : LDV-2UH | BUFFALO バッファロー&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;(via &lt;a href="http://internet.watch.impress.co.jp/docs/column/shimizu/20100914_393609.html"&gt;地デジや光学ドライブなどのUSB機器も手軽に共有&lt;/a&gt;（2010/9/14）) &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;ただし、この製品は、ルータまで有線でつなげるようだ。&lt;/p&gt;  &lt;p style="text-align: center" class="kwout"&gt;&lt;a href="http://buffalo.jp/product/wired-lan/device-server/ldv-2uh/#feature-1"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="USBがネットワークでつながる　地デジもつなげて楽しめる　USB2.0用デバイスサーバー　LDV-2UH : LDV-2UH | BUFFALO バッファロー" alt="http://buffalo.jp/product/wired-lan/device-server/ldv-2uh/#feature-1" src="http://kwout.com/cutout/n/jt/dn/ife_bor.jpg" width="600" height="172" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p style="text-align: center; margin-top: 10px" class="kwout"&gt;&lt;a href="http://buffalo.jp/product/wired-lan/device-server/ldv-2uh/#feature-1"&gt;&lt;font size="2"&gt;USB2.0用デバイスサーバー LDV-2UH : LDV-2UH | BUFFALO バッファロー&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/njtdnife"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;現在では、プリンタ側で、無線でネットワークに繋げる機能がついているものがある。もしかすると、低価格帯のプリンタでも、それが当たり前になる日は、遠くないようにも思える。価格.com で、無線LAN のインターフェイスを持ち、「売れ筋ランキングの高い順」に表示すると、ランキング上位をほとんど占めるというには驚いた。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="価格.com - プリンタ スペック検索・性能比較" alt="http://kakaku.com/specsearch/0060/?st=2&amp;amp;_s=2&amp;amp;Sort=ranking_asc&amp;amp;DispSaleDate=on&amp;amp;Wireless=on" src="http://kwout.com/cutout/w/q4/ib/qs2_bor.jpg" width="534" height="600" usemap="#map_wq4ibqs2" /&gt;&lt;map id="map_wq4ibqs2" name="map_wq4ibqs2"&gt;&lt;area href="http://kakaku.com/item/K0000282895/" shape="rect" alt="" coords="35,124,109,133" /&gt;&lt;area href="http://kakaku.com/item/K0000282895/" shape="rect" alt="" coords="120,93,162,105" /&gt;&lt;area href="http://kakaku.com/item/K0000282895/" shape="rect" alt="" coords="120,108,214,120" /&gt;&lt;area href="http://kakaku.com/item/K0000282895/" shape="rect" alt="" coords="120,123,134,135" /&gt;&lt;area href="http://kakaku.com/item/K0000282895/" shape="rect" alt="" coords="230,99,284,114" /&gt;&lt;area href="http://kakaku.com/item/K0000284589/" shape="rect" alt="" coords="35,250,109,259" /&gt;&lt;area href="http://kakaku.com/item/K0000284589/" shape="rect" alt="" coords="120,226,157,238" /&gt;&lt;area href="http://kakaku.com/item/K0000284589/" shape="rect" alt="" coords="120,241,191,253" /&gt;&lt;area href="http://kakaku.com/item/K0000284589/" shape="rect" alt="" coords="230,224,284,239" /&gt;&lt;area href="http://kakaku.com/item/K0000282896/" shape="rect" alt="" coords="35,375,109,384" /&gt;&lt;area href="http://kakaku.com/item/K0000282896/" shape="rect" alt="" coords="120,344,162,356" /&gt;&lt;area href="http://kakaku.com/item/K0000282896/" shape="rect" alt="" coords="120,359,217,371" /&gt;&lt;area href="http://kakaku.com/item/K0000282896/" shape="rect" alt="" coords="120,373,142,385" /&gt;&lt;area href="http://kakaku.com/item/K0000282896/" shape="rect" alt="" coords="230,349,284,364" /&gt;&lt;area href="http://kakaku.com/item/K0000282923/" shape="rect" alt="" coords="35,493,109,502" /&gt;&lt;area href="http://kakaku.com/item/K0000282923/" shape="rect" alt="" coords="120,469,211,481" /&gt;&lt;area href="http://kakaku.com/item/K0000282923/" shape="rect" alt="" coords="120,483,170,495" /&gt;&lt;area href="http://kakaku.com/item/K0000282923/" shape="rect" alt="" coords="230,467,284,482" /&gt;&lt;area href="http://kakaku.com/item/K0000282930/" shape="rect" alt="" coords="35,589,109,598" /&gt;&lt;area href="http://kakaku.com/item/K0000282930/" shape="rect" alt="" coords="120,572,211,584" /&gt;&lt;area href="http://kakaku.com/item/K0000282930/" shape="rect" alt="" coords="239,563,285,578" /&gt;&lt;/map&gt;    &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://kakaku.com/specsearch/0060/?st=2&amp;amp;_s=2&amp;amp;Sort=ranking_asc&amp;amp;DispSaleDate=on&amp;amp;Wireless=on"&gt;価格.com - プリンタ スペック検索・性能比較&lt;/a&gt; via &lt;a href="http://kwout.com/quote/wq4ibqs2"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;有線LAN 接続を持っている製品を無線化するデバイス&lt;/h5&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B003RIU3YA/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;BUFFALO          &lt;br /&gt;有線LANポート搭載接続機器用           &lt;br /&gt;ワイヤレスユニット           &lt;br /&gt;WLAE-AG300N&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B003RIU3YA/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B003RIU3YA" src="http://ec2.images-amazon.com/images/I/41dw52w6rsL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;  &lt;p&gt;有線LAN のみ持っているプリンタに対しては、無線子機で、ネットワークに参加させるという形の製品の方がある。こちらの方が、独立したプリントサーバよりも、力を入れているように見える。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://buffalo.jp/products/catalog/network/wireless_client_digitalkaden.html"&gt;デジタル家電対応無線LAN子機 | BUFFALO バッファロー&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;今あるプリントサーバを使ってみよう&lt;/h5&gt;  &lt;p&gt;とにかく、調べてみると、無線関係は、色々新しいものが出ていて、知識がないと、携帯の割引サービス並にわかりずらかった。しかし、プリントサーバ自体は、以前に購入した古いものでも、現役で使えそうだ。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. プリントサーバの設定の概略&lt;/h4&gt;  &lt;p&gt;設定は、以下の順に行った。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;PC から、有線LAN で、ブラウザ経由でプリントサーバに接続。 &lt;/li&gt;    &lt;li&gt;プリントサーバの設定画面において、      &lt;ol&gt;       &lt;li&gt;ファイームウェアの更新&lt;/li&gt;        &lt;li&gt;暗号化した無線ネットワークに、接続するための設定。 &lt;/li&gt;        &lt;li&gt;         &lt;div align="left"&gt;プリントサーバに、&lt;strong&gt;固定した IP アドレス&lt;/strong&gt;を設定。&lt;/div&gt;       &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;プリントサーバを利用する PC で、プリントサーバの&lt;strong&gt; TCP/IP アドレスを指定&lt;/strong&gt;することにより、プリンタを認識させる。&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;4. 有線LAN でプリントサーバの設定&lt;/h4&gt;  &lt;p align="left"&gt;まずは、PC とプリントサーバ（&lt;a href="http://buffalo.jp/products/catalog/item/l/lpv3-u2-g54/"&gt;LPV3-U2-G54&lt;/a&gt; ）を、有線LAN で接続。&lt;/p&gt;  &lt;p&gt;エクスプローラーを起動し、ネットワークを選択すると、「その他のデバイス」に、接続したプリントサーバが表示される。ここでは、以前にプリントサーバに `PRINTSERVER01’ と名前を付けたので、そのように表示された。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-qJIswlPLhTI/Tuz1kIZbxhI/AAAAAAAABfs/IYU5p23hbKw/s1600-h/12-18-201114.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-18-20111" border="0" alt="12-18-20111" src="http://lh6.ggpht.com/-6q9h-VI60MA/Tuz1l56SbCI/AAAAAAAABf0/De3XBZtVBEI/12-18-20111_thumb2.png?imgmax=800" width="561" height="443" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;プリントサーバのアイコンで、右クリック &amp;gt; デバイスのWebページを表示&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;を選択。&lt;/p&gt;  &lt;p align="left"&gt;root でログインすると、プリントサーバの設定画面が、ブラウザで表示される。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;ファームウェアの更新&lt;/h5&gt;  &lt;p&gt;昔のことなので、はっきりと覚えていないが、以前はプリントサーバを介した場合、プリンタの状態がわからなかった。これに対して、&lt;/p&gt;  &lt;p&gt;&lt;a href="http://buffalo.jp/products/new/2009/001058.html"&gt;無線LAN対応プリントサーバー「LPV3-U2-G54」が双方向通信対応！&lt;/a&gt;（2009年12月02日） によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;複数のパソコンから印刷することができるプリントサーバー「&lt;strong&gt;LPV3-U2-G54&lt;/strong&gt;」を、無料バージョンアップできる内部プログラム（ファームウェア）を公開いたしました。       &lt;br /&gt;このバージョンアップで、インク／トナー残量や紙切れ、トラブルなどの情報をパソコンで確認できるように双方向通信に対応します。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;これにより、プリントするデータを、プリンタサーバに投げるだけではなくなるようだ。&lt;/p&gt;  &lt;p&gt;また、32bit バージョンの Windows を使っている場合は、以下のことができる。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「&lt;strong&gt;LPV3-U2-G54&lt;/strong&gt;」にUSB接続タイプのプリンターを接続し、パソコン側に専用ユーティリティ『LPV3ダイレクト接続マネージャ』をインストールすることにより、Windows 7(32bit)/Vsita(32bit)/XP/2000で、印刷はもちろん、スキャナ機能およびインク残量チェックがネットワーク経由で可能になります。&lt;/p&gt;    &lt;p&gt;従来のプリントサーバで必要だったTCP/IP印刷設定が不要で、プリンタの標準ソフトをインストールした後、物理的な配線の変更を行い、『LPV3ダイレクト接続マネージャ』からプリンタを選択するだけの簡単設定。&lt;/p&gt;    &lt;p&gt;（同上より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;家の環境では、Windows 7 64bit があるので、従来通り、TCP/IP の印刷設定をする。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://buffalo.jp/download/driver/lan/lpv3-u2-g54.html"&gt;ドライバーダウンロード LPV3-U2-G54 | BUFFALO バッファロー&lt;/a&gt; より、ファームウェアをダウンロードし、解凍。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;プリントサーバの管理設定 &amp;gt; ファームウェア更新 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;において、ファームウェアを更新した。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;暗号化方式を変更&lt;/h5&gt;  &lt;p&gt;昔、プリントサーバを設定したときは、無線の暗号化方式に WEP を利用していた。その後、&lt;a href="http://jutememo.blogspot.com/2009/04/lan-wep-wpa.html"&gt;無線LAN の設定を WEP から WPA へ&lt;/a&gt; 変更。そのため、プリントサーバの「無線設定」の「暗号化」において、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;TKIP &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を選択し、ネットワークに接続するための暗号を入力した。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-zzlnmzPfH6o/Tuz1m7gvjfI/AAAAAAAABf8/aaBXCLODn30/s1600-h/12-16-201194.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-20119" border="0" alt="12-16-20119" src="http://lh5.ggpht.com/-j7Y7pmQI-GA/Tuz1oFy8ufI/AAAAAAAABgE/XVnQ8UH80h0/12-16-20119_thumb2.png?imgmax=800" width="636" height="267" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これで、プリントサーバが、無線のネットワークに接続できるようになる。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;プリントサーバの IP アドレスを固定する&lt;/h5&gt;  &lt;p&gt;プリントサーバの「ネットワーク設定」において、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;手動設定&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を選択し、IP アドレスに適当な値を入力する。&lt;/p&gt;  &lt;p&gt;無線ルータでは、DHCP を利用して、各 PC に IP アドレスを割り当てている。DHCP による、IP アドレスは、番号が小さい順に割り振られる。そこで、他の PC の IP アドレスとバッティングしないように、&lt;strong&gt;DHCP が割り当てる範囲のアドレスの中で、番号が大きい値&lt;/strong&gt;を設定しておく。&lt;/p&gt;  &lt;p&gt;ここでは値を 192.168.11.30 とした。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-0jcrugq7cZg/Tuz1pJCJjTI/AAAAAAAABgM/-VF3r5LiIDg/s1600-h/12-16-201116%25255B1%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201116" border="0" alt="12-16-201116" src="http://lh5.ggpht.com/-fxRmHIM8WG4/Tuz1qCNwRjI/AAAAAAAABgQ/lRIZPNroxJU/12-16-201116_thumb.png?imgmax=800" width="626" height="216" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;5. プリントサーバを利用する PC で、プリントサーバを認識させる&lt;/h4&gt;  &lt;p&gt;スタートメニューより、「デバイスとプリンター」を選択。&lt;/p&gt;  &lt;p&gt;「プリンターの追加」ボタンを押し、「ネットワーク、ワイヤレスまたは Bluetooth プリンターを追加します」を選択。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-xkWbaVQHb40/Tuz1rArwWBI/AAAAAAAABgY/V-QwZyI0emY/s1600-h/12-16-201114%25255B1%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201114" border="0" alt="12-16-201114" src="http://lh3.ggpht.com/-tZRD3jEr4cI/Tuz1sKe-gtI/AAAAAAAABgg/gnBE1oUes4o/12-16-201114_thumb.png?imgmax=800" width="509" height="313" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;プリンタの追加において、「&lt;strong&gt;探しているプリンターはこの一覧にはありません&lt;/strong&gt;」を選択。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-9_ayiy4ODXQ/Tuz1s0gWD2I/AAAAAAAABgo/4MeSpCSEQ3w/s1600-h/12-16-201115%25255B1%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201115" border="0" alt="12-16-201115" src="http://lh6.ggpht.com/-v3Ljz_UtdkU/Tuz1uOZ5VEI/AAAAAAAABgw/X86U_WC0K1E/12-16-201115_thumb.png?imgmax=800" width="500" height="310" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;「TCP/IP アドレスまたはホスト名を使ってプリンターを追加する。」を選択。&lt;a href="http://lh5.ggpht.com/-hk6z_OA6Sxo/Tuz1ux5JnlI/AAAAAAAABg4/7F5rCyAJRyw/s1600-h/12-16-201117%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201117" border="0" alt="12-16-201117" src="http://lh3.ggpht.com/-zk6no64_wgA/Tuz1w4Jr_zI/AAAAAAAABhE/0ivOdxj2BUs/12-16-201117_thumb%25255B1%25255D.png?imgmax=800" width="512" height="228" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;ホスト名または IP アドレスのフィールドに、プリントサーバに割り振った&lt;strong&gt;固定 IP アドレス&lt;/strong&gt;を入力。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh6.ggpht.com/-wYOiBEZb9YQ/Tuz1xRL0dgI/AAAAAAAABhI/N3wm2hJvwCg/s1600-h/12-16-2011192.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201119" border="0" alt="12-16-201119" src="http://lh6.ggpht.com/-CXZTQeV3VVA/Tuz1yEetUFI/AAAAAAAABhQ/e5JgcNwEWAk/12-16-201119_thumb.png?imgmax=800" width="442" height="259" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;デバイスの種類を「Generic Network Card」にする。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh4.ggpht.com/-_H6bJovDuVI/Tuz1zKz7Y_I/AAAAAAAABhY/OhVF74Ykl78/s1600-h/12-16-2011206.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201120" border="0" alt="12-16-201120" src="http://lh4.ggpht.com/-AvWkfPKIzb4/Tuz10BkLNyI/AAAAAAAABhk/ethF0sryx_w/12-16-201120_thumb2.png?imgmax=800" width="539" height="335" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;プリンタサーバにつないだプリンタは、USB で接続して使用していた。そのため、既にドライバはインストール済みだったため、「製造元」「プリンター」に表示された。表示されない場合は、Windows Update ボタンを押す。それでもだめなら、予め、プリンターのドライバをインストールしてから、再度、一連の設定をする。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh3.ggpht.com/-ZKkJKoymx2g/Tuz11ZUBTeI/AAAAAAAABho/n7Bbf_0YeWs/s1600-h/12-16-2011223.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201122" border="0" alt="12-16-201122" src="http://lh6.ggpht.com/-JmNRwiHCKak/Tuz12BlhMQI/AAAAAAAABhw/l4PrCAojjCQ/12-16-201122_thumb1.png?imgmax=800" width="539" height="285" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;ドライバーの使用については、どちらを選択しても良さげ。ここでは、「現在のドライバーを置き換える」を選択しておいた。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh6.ggpht.com/-EE4vwj_7AWw/Tuz13Iv1SdI/AAAAAAAABh4/UaQzFBA9TzA/s1600-h/12-16-20112331.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201123" border="0" alt="12-16-201123" src="http://lh6.ggpht.com/-bkCAWK6jZm8/Tuz137cqHHI/AAAAAAAABiA/Cd8JlwMZxz8/12-16-2011233_thumb.png?imgmax=800" width="385" height="222" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;プリンターの名前には、プリントサーバを利用していることがわかる、適当な名前を入力。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh3.ggpht.com/-G5c0sQJGBm8/Tuz14nqMzyI/AAAAAAAABiI/XEBxqNfLa4U/s1600-h/12-16-2011246.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201124" border="0" alt="12-16-201124" src="http://lh4.ggpht.com/--WIQQUqe8HU/Tuz15fHiHlI/AAAAAAAABiQ/poH4s-eWU7g/12-16-201124_thumb2.png?imgmax=800" width="380" height="178" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;ついでなので、プリンタの共有もしておいた。これにより、他の PC でプリントサーバの設定をしなくても、この設定をした PC から印刷することができる。&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh6.ggpht.com/-sKy8GbnyhFg/Tuz16GZxhjI/AAAAAAAABic/InUpd1Znj6w/s1600-h/12-16-201125%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-201125" border="0" alt="12-16-201125" src="http://lh6.ggpht.com/-qYhfz1cfE34/Tuz17LhJYrI/AAAAAAAABig/rlT3RRLpThs/12-16-201125_thumb%25255B1%25255D.png?imgmax=800" width="502" height="274" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;試しに印刷してみると、昔より、レスポンスが良くなった気がする。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-7509460087625742809?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/7509460087625742809/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=7509460087625742809' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7509460087625742809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7509460087625742809'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/buffalo-lpv3-u2-g54.html' title='放置していたプリントサーバ (BUFFALO LPV3-U2-G54) を設定 - ファームウェアの更新により、双方向通信に対応'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-6q9h-VI60MA/Tuz1l56SbCI/AAAAAAAABf0/De3XBZtVBEI/s72-c/12-18-20111_thumb2.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-4625252231645215087</id><published>2011-12-16T12:35:00.001+09:00</published><updated>2011-12-23T16:53:02.710+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='アドオン'/><category scheme='http://www.blogger.com/atom/ns#' term='bitly'/><category scheme='http://www.blogger.com/atom/ns#' term='URL短縮'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><category scheme='http://www.blogger.com/atom/ns#' term='Firefox 8'/><title type='text'>Firefox で bitly Sidebar のブックマークレットを起動すると表示が崩れるので、ハードウェアアクセラレーションを切った</title><content type='html'>&lt;h4&gt;1. bitly のブックマークレットの表示が崩れる&lt;/h4&gt;  &lt;p&gt;URL を短縮するためのサービスとして、&lt;a href="https://bitly.com/"&gt;bitly&lt;/a&gt; を使うことが多い。読んでいるウェブページに対して、Twitter でつぶやくのにも、しばしば用いる。&lt;/p&gt;  &lt;p&gt;bitly を、表示しているページのサイドに、被せるように表示させるブックマークレットが、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://bitly.com/pages/tools"&gt;Sidebar Bookmarklet&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;このブックマークレットが、Firefox 8 くらいから、起動すると、表示が崩れるようになった。表示される文字が薄く、字が読めない。なぜか、マウスを上に移動させると、微妙に表示が濃くなったりする。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-QOlNhWDckqE/Tuq8d_aXsLI/AAAAAAAABeI/e_nNoOgoDQI/s1600-h/12-16-20111%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-20111" border="0" alt="12-16-20111" src="http://lh6.ggpht.com/-Yd--18G3Dac/Tuq8egXtsRI/AAAAAAAABeQ/f2I5l4JRsEo/12-16-20111_thumb%25255B1%25255D.png?imgmax=800" width="347" height="391" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;同じブックマークレットを、Google Chrome で利用した場合は、問題なく表示された。&lt;/p&gt;  &lt;p&gt;グラフィックボードのドライバを最新のものにしたけれど、表示は変わらず。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;追記 (2011.12.23)&lt;/strong&gt; : Firefox 9 にしたら、表示が崩れなくなった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. 正常に表示させるには、ハードウェアアクセラレーションを切る&lt;/h4&gt;  &lt;p&gt;直接の原因が何かわからなかったが、以下の方法により、ちゃんと表示されるようになった。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Firefox ボタン &amp;gt; オプション &amp;gt; 詳細 &amp;gt; ブラウズの「ハードウェアアクセラレーション機能を使用する」 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;のチェックを外す。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-AcbIrzBLAYg/Tuq8f5i1V3I/AAAAAAAABeY/LyHK5qhFy2I/s1600-h/12-16-20114%25255B7%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-20114" border="0" alt="12-16-20114" src="http://lh6.ggpht.com/-3Gk1A8M-GJY/Tuq8gytQtqI/AAAAAAAABeg/7IxuRYILZYo/12-16-20114_thumb%25255B2%25255D.png?imgmax=800" width="552" height="361" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Configuration Mania による設定&lt;/h5&gt;    &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Configuration Mania :: Add-ons for Firefox" alt="https://addons.mozilla.org/ja/firefox/addon/configuration-mania-4420/" src="http://kwout.com/cutout/9/3n/xd/c36_bor.jpg" width="330" height="76" usemap="#map_93nxdc36" /&gt;&lt;map id="map_93nxdc36" name="map_93nxdc36"&gt;&lt;area href="https://addons.mozilla.org/ja/firefox/user/99862/" shape="rect" alt="" coords="120,46,332,62" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/configuration-mania-4420/"&gt;&lt;font size="2"&gt;Configuration Mania&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/93nxdc36"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; アドオン「&lt;a href="https://addons.mozilla.org/ja/firefox/addon/configuration-mania-4420/"&gt;Configuration Mania&lt;/a&gt;」を利用しているなら、    &lt;ul&gt;   &lt;li&gt;ブラウザ &amp;gt; ページ表示制御 &amp;gt; Direct2D を使用しない &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;のチェックを付ける。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-qLROSrNDR3o/Tuq8h_m0ieI/AAAAAAAABeo/XCzuVVNGjL4/s1600-h/12-16-20115%25255B3%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-20115" border="0" alt="12-16-20115" src="http://lh4.ggpht.com/-RCpoHi6SaVA/Tuq8izNmW8I/AAAAAAAABew/u-PGZ6vrXq0/12-16-20115_thumb%25255B1%25255D.png?imgmax=800" width="533" height="417" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;この場合、「ハードウェアアクセラレーションを使用しない」のチェックは付けなくても、問題なかった。&lt;/p&gt;  &lt;p&gt;以下のように、正常に表示されるようになった。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-B2C4BKjv6XA/Tuq8j4EXEZI/AAAAAAAABe4/2AFfu9m6k54/s1600-h/12-16-20113%25255B11%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="12-16-20113" border="0" alt="12-16-20113" src="http://lh4.ggpht.com/-ucU5eCRseAI/Tuq8k-VO9mI/AAAAAAAABfA/jn6QJe3OUZ4/12-16-20113_thumb%25255B3%25255D.png?imgmax=800" width="336" height="392" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-4625252231645215087?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/4625252231645215087/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=4625252231645215087' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/4625252231645215087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/4625252231645215087'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/firefox-bitly-sidebar.html' title='Firefox で bitly Sidebar のブックマークレットを起動すると表示が崩れるので、ハードウェアアクセラレーションを切った'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-Yd--18G3Dac/Tuq8egXtsRI/AAAAAAAABeQ/f2I5l4JRsEo/s72-c/12-16-20111_thumb%25255B1%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-8488890345863624095</id><published>2011-12-15T22:47:00.001+09:00</published><updated>2011-12-15T22:47:33.011+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tumblr'/><title type='text'>AutoPager を利用して Tumblr のサイトを見ると、同じページが 2 回表示されてしまう</title><content type='html'>&lt;h4&gt;1. AutoPagerize から AutoPager へ乗り換えた&lt;/h4&gt;  &lt;p&gt;Firefox で、ページをスクロールさせたときに、自動的に次のページを読み込ませるアドオンとして、&lt;a href="http://autopagerize.net/"&gt;AutoPagerize&lt;/a&gt; を、以前は利用していた。&lt;/p&gt;  &lt;p&gt;   &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="AutoPager :: Add-ons for Firefox" alt="https://addons.mozilla.org/ja/firefox/addon/autopager/" src="http://kwout.com/cutout/y/4n/xd/c36_bor.jpg" width="279" height="63" usemap="#map_y4nxdc36" /&gt;&lt;map id="map_y4nxdc36" name="map_y4nxdc36"&gt;&lt;area href="https://addons.mozilla.org/ja/firefox/user/16310/" shape="rect" alt="" coords="127,38,175,54" /&gt;&lt;/map&gt;      &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/autopager/"&gt;&lt;font size="2"&gt;AutoPager&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/y4nxdc36"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/div&gt; しかし、今では、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/autopager/"&gt;AutoPager &lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を使っている。理由は、未対応のサイトに対して、ウィザード形式で設定を手軽に作成できるため。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. Tumblr 用の設定ファイルを変更する&lt;/h4&gt;  &lt;p&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/autopager/"&gt;AutoPager&lt;/a&gt; を利用して、Tumblr のサイトを見ると、特定のテンプレートを使用しているサイトで、表示がおかしくなる。 &lt;a href="http://autopagerize.net/"&gt;AutoPagerize&lt;/a&gt; では、正常に表示されていたサイトが、次のページを順に読み込ませていると、２回同じページが表示されてしまう。&lt;/p&gt;  &lt;p&gt;このため、Tumblr 用の設定ファイルを変更する。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;メニューより、ツ－ル &amp;gt; AutoPager &amp;gt; オンラインのページ定義を検索&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を選択。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-td9tF2FbqqM/Tun6aOciipI/AAAAAAAABdo/RvhLJNvqapo/s1600-h/12-15-20111%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="12-15-20111" border="0" alt="12-15-20111" src="http://lh6.ggpht.com/-5zPiAQEJsRY/Tun6a8dJIOI/AAAAAAAABdw/hoqPjEluawE/12-15-20111_thumb.png?imgmax=800" width="240" height="372" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;表示されたページにおいて、Creator が swdyh の行の、チェックボックスにチェックを入れる。&lt;/p&gt;    &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-H1rnyhMt0rA/Tun6biipMhI/AAAAAAAABd4/YTwfEUqKWGU/s1600-h/12-15-20113%25255B11%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="12-15-20113" border="0" alt="12-15-20113" src="http://lh5.ggpht.com/-RnYFH-RrPBU/Tun6ckndmPI/AAAAAAAABeA/0X_onZB7PM0/12-15-20113_thumb%25255B5%25255D.png?imgmax=800" width="644" height="162" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これにより、正常に表示されなかったサイトで再読み込みすると、&lt;a href="https://addons.mozilla.org/ja/firefox/addon/autopager/"&gt;AutoPager&lt;/a&gt; を使ったときのように、正常に読み込みが行われるようになった。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-8488890345863624095?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/8488890345863624095/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=8488890345863624095' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8488890345863624095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8488890345863624095'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/12/autopager-tumblr-2.html' title='AutoPager を利用して Tumblr のサイトを見ると、同じページが 2 回表示されてしまう'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-5zPiAQEJsRY/Tun6a8dJIOI/AAAAAAAABdw/hoqPjEluawE/s72-c/12-15-20111_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-753641947280670734</id><published>2011-11-19T10:26:00.001+09:00</published><updated>2011-11-26T21:09:11.471+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Logicool'/><category scheme='http://www.blogger.com/atom/ns#' term='修理'/><category scheme='http://www.blogger.com/atom/ns#' term='マウス'/><title type='text'>トラッキング能力が高いDarkfield テクノロジーを利用した Logicool の Anywhere Mouse M905 - クリックの調子が悪くなったので、分解して応急処置をした</title><content type='html'>&lt;h4&gt;1. 今まで自分に合ったマウスが、なかなか見つからなかった&lt;/h4&gt;  &lt;p&gt;これまで、マウスをいくつか買い換えてきた。入力デバイスは、長時間使うものだから、できるだけ自分に合ったものを使いたい。それでいて、値段が高すぎないものを。&lt;/p&gt;  &lt;p&gt;キーボードに関して、愛用の製品は、既に決まっている。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://jutememo.blogspot.com/2008/07/majestouch.html"&gt;Majestouch Tenkeyless の黒軸&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;同じ価格帯で、よほどいいものがでない限り、壊れたら、また同じ製品を買うつもり。&lt;/p&gt;  &lt;p&gt;これに対し、マウスは、良いものがなかなか見つからない。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;ケンジントンのトラックボールを使っていた&lt;/h5&gt;  &lt;p style="text-align: center; margin-top: 10px" class="kwout"&gt;&lt;a href="http://kwout.com/quote/bmt9rwdc"&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;   &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;     &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0006J09M4/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;ケンジントン OrbitOptical            &lt;br /&gt;(USB/PS2) 64327&lt;/font&gt;&lt;/a&gt;         &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0006J09M4/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0006J09M4" src="http://ecx.images-amazon.com/images/I/41JS5FEJGBL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/div&gt; &lt;/div&gt;  &lt;p&gt;昔、&lt;a href="http://www.kensington.com/kensington/en/jp/p/1444/64327F/orbit%e2%84%a2-optical-trackball.aspx"&gt;Kensington -&amp;#160; Orbit™ Optical Trackball&lt;/a&gt; の、型の古いものを使っていた。そのときは、ダブルクリックのし過ぎで、親指の関節が腱鞘炎になり、クリックするだけで、関節に激痛が走るようになった。現在市販されれいるものは、クリックが柔らかくなっている。&lt;/p&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: left; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0006J09LU/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;ケンジントン ExpertMouse          &lt;br /&gt;(OpticalBlack) (USB/PS2)&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0006J09LU/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0006J09LU" src="http://ec2.images-amazon.com/images/I/41HYXS04FJL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; その後、&lt;a href="http://www.kensington.com/kensington/en/jp/p/1444/64325/expert-mouse-optical-trackball.aspx"&gt;Expert Mouse Optical Trackball&lt;/a&gt; の、古い型を使っていたことがある。トラックボールが大きく、操作性が良かった。慣れてくると、ピーンと指で弾いて、ポインタを移動させる操作が小気味よかった。   &lt;p&gt;こちらは、腱鞘炎にはならなかったが、４つのボタンのクリックに慣れなかったのと、ドラッグ操作がやりにくかったこと、ゴミがすぐに溜まり、マウスの移動が正確にできなくなったので、結局、使うのをやめた。&lt;/p&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004QJYBAG/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;ケンジントン SlimBlade          &lt;br /&gt;Trackball 72327JP&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B004QJYBAG/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B004QJYBAG" src="http://ec2.images-amazon.com/images/I/31FoD0jj6QL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;  &lt;p&gt;現在のものは、改良されているだろうから、トラックボールを買うなら、この製品かな。もしくは、デザイン的には、&lt;a href="http://www.kensington.com/kensington/en/jp/p/1444/72327JP/slimblade%e2%84%a2-trackball.aspx"&gt;Kensington - SlimBlade™ Trackball&lt;/a&gt; 。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;手に自然にフィットする形のマウスが好き&lt;/h5&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: left; padding-top: 10px" class="kwout"&gt;&lt;a href="http://ascii.jp/elem/000/000/310/310960/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="ASCII.jp：ロジクール、トラッキングとホイールに光学式センサーを採用したマウスを発表" alt="http://ascii.jp/elem/000/000/310/310960/" src="http://kwout.com/cutout/m/nk/n3/6t9_bor.jpg" width="177" height="191" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ascii.jp/elem/000/000/310/310960/"&gt;&lt;font size="2"&gt;ASCII.jp：          &lt;br /&gt;ロジクール、トラッキングと           &lt;br /&gt;ホイールに光学式センサーを           &lt;br /&gt;採用したマウスを発表&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/mnkn36t9"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; その後、普通のマウスに戻り、Logitech MouseMan Wheel を購入。右手専用のマウスで、人差し指の部分がせり上がり、斜めに傾斜していた。このときから、自然に手にフィットする形状のマウスに傾倒するようになった。しかし、手の小さい自分にとって、このマウスは大き過ぎた。   &lt;p&gt;そのため、右手の操作に疲れると、右手専用にもかかわらず、左手で使っていた。はじめは慣れなかったけれど、左手で使うときは、中指が右クリックだと、意識せずに使えるようになったときには、マウスを左右どちらでも使えるようになっていた。&lt;/p&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://www.microsoft.com/japan/hardware/laser/wi_laser6000.mspx"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Microsoft Wireless Laser Mouse 6000 | ホーム" alt="http://www.microsoft.com/japan/hardware/laser/wi_laser6000.mspx" src="http://kwout.com/cutout/s/84/xd/c36_bor.jpg" width="122" height="172" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.microsoft.com/japan/hardware/laser/wi_laser6000.mspx"&gt;&lt;font size="2"&gt;Microsoft Wireless          &lt;br /&gt;Laser Mouse 6000&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/s84xdc36"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; 次に購入したのが、ワイヤレスマウス、&lt;a href="http://www.microsoft.com/japan/hardware/laser/wi_laser6000.mspx"&gt;Microsoft Wireless Laser Mouse 6000&lt;/a&gt; 。これも、右手で使いやすいように、右にやや傾斜している。   &lt;p&gt;長いこと使っていたために、左側面は、ボロボロに剥げてしまった。このマウスも、自分にとっては、少し大きかった。&lt;/p&gt;  &lt;p&gt;使用場所にも問題があった。自分が使っている机は、木製でとても古く、表面は真っ黒。マウスを使用する位置の表面は、微妙に湾曲しているため、マウスを動かしても、マウスポインタを思うように動かすことが出来ない。マウスパッドを使っても、薄いタイプのものでは、効果がなかった。そのため、精度の高い、マウスが欲しかった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;購入候補だったマウス&lt;/h5&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: left; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000LPQ2VU/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;Natural Wireless          &lt;br /&gt;Laser Mouse 6000           &lt;br /&gt;69K-00004&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000LPQ2VU/sakura39-22/" target="_blank"&gt;&lt;img style="margin: 10px" border="0" alt="B000LPQ2VU" src="http://ecx.images-amazon.com/images/I/41qrbLergEL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; その後、&lt;a href="http://jutememo.blogspot.com/2008/01/o-o.html"&gt;購入するマウスをどうしようか、検討した結果&lt;/a&gt;、手にフィットするタイプである、   &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000LPQ2VU/sakura39-22/"&gt;マイクロソフト ワイヤレス レーザー マウス Natural Wireless Laser Mouse 6000&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt; &lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000YJJMKG/sakura39-22/"&gt;   &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;     &lt;p align="center"&gt;&lt;/p&gt;   &lt;/div&gt; &lt;/a&gt;&lt;/a&gt;&lt;/a&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000YJJMKG/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;Mobile Memory          &lt;br /&gt;Mouse 8000           &lt;br /&gt;BSA-00008&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000YJJMKG/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B000YJJMKG" src="http://ecx.images-amazon.com/images/I/41ApKxF1g1L._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;  &lt;p&gt;か、または、小さくても操作性の良い&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B000YJJMKG/sakura39-22/"&gt;マイクロソフト ワイヤレス レーザー マウス Mobile Memory Mouse 8000&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;にしようか迷っているうちに、時は過ぎた。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. 操作性が良くと、トラッキング能力の高い、ロジクールの Darkfield テクノロジーを利用したマウスを購入&lt;/h4&gt;  &lt;p&gt;先ほど述べたように、今使っている机を利用している限り、マウスのトラッキング能力は必須。これを満たしてくれそうなマウスが、ロジクールから発売された。ガラスの上でも利用できるというのが特徴。&lt;/p&gt;  &lt;p&gt;「&lt;a href="http://plusd.itmedia.co.jp/pcuser/articles/0908/21/news029.html"&gt;元麻布春男のWatchTower：四半世紀を過ぎて進化し続けるロジクール製マウスに迫る (1/2) - ITmedia +D PC USER&lt;/a&gt;」に、この技術に関して詳しく説明がされている。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Darkfieldレーザートラッキングテクノロジーは、高精度のセンサーを採用し、既存のレーザートラッキングテクノロジーをさらに高度化させたうえで、ガラスのような極端にコントラストの低いサーフェイスでもマウスが利用可能なよう、&lt;font color="#ff0000"&gt;暗視野検鏡技術を応用&lt;/font&gt;したものだ。名称のDarkfieldとは、暗視野検鏡（Dark field microscopy）からきたものである。&lt;/p&gt;    &lt;p&gt;肉眼や光学センサーは、一般に対象物の表面からの反射光を検知する。&lt;font color="#0000ff"&gt;暗視野検鏡は、反射光ではなく、散乱光を検知することで、コントラストを飛躍的に高め、微細な構造を検知可能にする技術だ。&lt;/font&gt;この技術を用いた暗視野顕微鏡は、数10ナノメートル程度のキズや構造を検知することができる。&lt;/p&gt;    &lt;p&gt;Darkfieldレーザートラッキングテクノロジーは、通常時は従来のマウスと同様、1つのレーザー光源によるサーフェイスからの反射光（物質表面のテクスチャ）を高精度センサーで検出する。&lt;font color="#008000"&gt;マウスがガラスなどの上にあり、反射光が検出できない（レーザー光がガラスを透過してしまうため）場合は、2つ目のレーザー光源を照射し、擬似的な暗視野検鏡の環境を作り出し、ガラス表面の微細なキズやホコリなどを光学センサーが検出して、トラッキングを行う。&lt;/font&gt;したがって、ガラスの上で使うとバッテリー駆動時間が短くなるが、利用できないより格段にいい。&lt;/p&gt;    &lt;p&gt;（装飾は、引用者による）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;発売されたのは 2009 年に、２機種。2011年現在でも、それ以降、後継版は出ていないようで、以下の２機種が、ロジクールのサイトで紹介されている。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="500"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="250"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8FG/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;LOGICOOL ワイヤレスマウス                &lt;br /&gt;パフォーマンスマウス                 &lt;br /&gt;高速スクロール対応ホイール搭載 M950&lt;/font&gt;&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8FG/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B002SRT8FG" src="http://ec2.images-amazon.com/images/I/41FXF7k%2ByKL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="250"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;LOGICOOL ワイヤレスマウス                &lt;br /&gt;エニウェアマウス                 &lt;br /&gt;Darkfieldレーザーセンサー搭載 M905&lt;/font&gt;&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B002SRT8F6" src="http://ecx.images-amazon.com/images/I/410hWNOfpTL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;左側のマウスは、大きかったので、選択肢は &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/"&gt;Anywhere Mouse M905&lt;/a&gt;&amp;#160; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;しかなかった。もし、&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8FG/sakura39-22/"&gt;Performance Mouse M950&lt;/a&gt; が、一回り小さければ、間違いなくこちらを購入していた。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/"&gt;Anywhere Mouse M905&lt;/a&gt; は、左右のどちらの手でも使えるように、傾斜がない。これでま、手のフィット感を、一番重視していたので、購入前はかなり躊躇した。また、小さいマウスも使い慣れてないので、果たして、操作性が良いのか不安だった。&lt;/p&gt;  &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002S0N8QI/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;SANYO NEW eneloop          &lt;br /&gt;急速充電器セット           &lt;br /&gt;(単3形4個セット)           &lt;br /&gt;N-TGR01AS&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002S0N8QI/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B002S0N8QI" src="http://ec2.images-amazon.com/images/I/413XV5A4lNL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; しかし、実際に使ってみたら、これほど良いマウスはない。側面のラバーは、感触がよく、何よりもトラッキング能力が高い。以前のマウスでは、まともに操作出来なかった場所でも、何の影響もなく、普通にポインタの操作が可能。電池は、２本入れる場所があるけれど、片方でも動作するので、それほど重くもない。   &lt;p&gt;ただし、上記の解説でもあったように、電池の減りは早い。充電できる電池は必須。&lt;/p&gt;  &lt;p&gt;それにしても、このマウスのトラッキング能力はすごい。操作性も良いので、マウスが壊れたら、この後継版を買うつもり。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. マウスの調子が悪い&lt;/h4&gt;  &lt;p&gt;そんな &lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B002SRT8F6/sakura39-22/"&gt;Anywhere Mouse M905&lt;/a&gt; が、少し前から調子が悪い。&lt;/p&gt;  &lt;p&gt;症状は、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;テキストを範囲選択しようと、ドラッグすると、途中で選択が解除されてしまう。 &lt;/li&gt;    &lt;li&gt;ウィンドウのタイトルをつかんでドラッグすると、途中で離れたり、ダブルクリックして最大化したときのようになる。 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;ただし、以前よりも力を込めて、操作をすれば上記の症状は起こらなかった。&lt;/p&gt;  &lt;p&gt;悪いことに、これまでマウスが壊れた経験がなかったので、保証書をちゃんと管理しておらず、行方不明。 (@_@; 修理に出すことは諦めた。&lt;/p&gt;  &lt;p&gt;症状から調べたら、&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%81%E3%83%A3%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B0"&gt;チャタリング – Wikipedia&lt;/a&gt; の可能性があった。&lt;/p&gt;  &lt;blockquote&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%BC%E3%82%BD%E3%83%8A%E3%83%AB%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF"&gt;PC&lt;/a&gt;用の古い&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89_%28%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%29"&gt;キーボード&lt;/a&gt;を操作したとき、キーを一度押しただけなのに、複数回入力されることがある。あるいは、&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%A6%E3%82%B9_%28%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%29"&gt;マウス&lt;/a&gt;のシングル&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF_%28%E3%83%9E%E3%82%A6%E3%82%B9%29"&gt;クリック&lt;/a&gt;が、意図せず&lt;a href="http://ja.wikipedia.org/wiki/%E3%83%80%E3%83%96%E3%83%AB%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF"&gt;ダブルクリック&lt;/a&gt;として入力されてしまう。これは、接点の劣化によってチャタリングが発生し、細かいオンオフがキー入力と判定されるためである。&lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://www.vector.co.jp/soft/winnt/util/se455786.html"&gt;マウスチャタリングキャンセラ&lt;/a&gt; を使い、Readme.txt に書かれていた設定、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;ボタンを押し込んだ状態でチャタリングが発生するマウスでは、チャタリングが発生するとドラッグが出来ません。ドラッグ失敗が多発している場合は、「イベントディレイ方式」を使用してください。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を試し、色々値を変えても、問題は解決されず。 (+_+)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;4. スイッチを押さえる部分が劣化していたので、応急処置をした&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://www.logicool.co.jp/ja-jp/mice-pointers/mice/devices/5846"&gt;Anywhere Mouse M905&lt;/a&gt; の保証期間は 3年間。&lt;/p&gt;  &lt;p&gt;しかし、保証書が見つからなかったので、分解して、応急処置が出来るか検討することに。&lt;/p&gt;  &lt;p&gt;分解の方法は、以下のブログを参考にした。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://zettlog.blogspot.com/2010/05/anywhere-mouse-m905.html"&gt;zett*log: Anywhere Mouse M905 の分解&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.gravity-works.jp/yotsuya/kininaru/002247.html"&gt;Logicool Anywhere Mouse M905改造│気になること│四谷NOW〜gravity works ブログ&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;まず、マウスの裏面を向ける。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-g1F2qlHOHSs/TscFf96KWaI/AAAAAAAABLQ/3rRZJ11LwFs/s1600-h/DSC03467%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03467" border="0" alt="DSC03467" src="http://lh3.ggpht.com/-tnMNv6RVl8I/TscFgtBF7JI/AAAAAAAABLU/u_bzbeN7azA/DSC03467_thumb.jpg?imgmax=800" width="211" height="286" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;最初、右上の樹脂を外した。しかし、そこにあるはずのネジが見えず。両面テープのようなものが張り付いているようなので、これをマイナスドライバーではがした。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/--aUJ-MLDV3o/TscFhbSQIKI/AAAAAAAABLg/wiDE_cbsXcE/s1600-h/DSC03468%25255B8%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03468" border="0" alt="DSC03468" src="http://lh6.ggpht.com/-4Q4yclknNLA/TscFh2FP0JI/AAAAAAAABLk/wSTi9BlXNEE/DSC03468_thumb%25255B2%25255D.jpg?imgmax=800" width="254" height="193" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;マウス後方のネジは、電池を入れる部分にある、シールをはがすと見えてくる。カッターの先で慎重にシールを浮かせ、ピンセットでつまんで浮かせた。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-bC1i0GeaZ2M/TscFiiJ56BI/AAAAAAAABLs/kcDox3Qxl6I/s1600-h/DSC03472%25255B6%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03472" border="0" alt="DSC03472" src="http://lh5.ggpht.com/-0n9MOZOLkPk/TscFjcEYvvI/AAAAAAAABL4/lsR-7BuqaSY/DSC03472_thumb%25255B2%25255D.jpg?imgmax=800" width="213" height="304" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これで、マウスの上部を外すことができた。下の写真は、左右で上下逆にして、写してしまった。丸で囲んだ所が、クリックでスイッチを押さえる部分と、スイッチ。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-C7g__y5zFpI/TscFkoKySRI/AAAAAAAABMA/NgSKoDPeamk/s1600-h/DSC03473%25255B3%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03473" border="0" alt="DSC03473" src="http://lh3.ggpht.com/-cnTPK-VlAQc/TscFll-t7yI/AAAAAAAABMI/3ebcFunQG7I/DSC03473_thumb%25255B1%25255D.jpg?imgmax=800" width="604" height="488" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これは、スイッチを拡大したところ。この状態で、スイッチをドライバーで押さえたら、何の問題もなく操作できた。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-Ew1sE6V8deQ/TscFmt9J5TI/AAAAAAAABMQ/RpoI_1glZeM/s1600-h/DSC03473%252520%2525282%252529%25255B7%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03473 (2)" border="0" alt="DSC03473 (2)" src="http://lh5.ggpht.com/-Hdd48W1SDCI/TscFniczRII/AAAAAAAABMY/ZKa00RkpA2A/DSC03473%252520%2525282%252529_thumb%25255B3%25255D.jpg?imgmax=800" width="446" height="217" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;スイッチを押さえる側を拡大して見たら、スイッチに対応する溝ができていた。元々あった溝かどうか分からないが、右クリックに対応した部分は、左クリックに対応した部分より、溝が少し浅かった。&lt;/p&gt;  &lt;p&gt;もしかすると、この溝があるために、軽くクリックしたときに、スイッチが OFF の状態になってしまうのではないだろうか？&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-ph-oaft9Kcs/TscFoFkcijI/AAAAAAAABMg/jiXJmc7OHLU/s1600-h/DSC03477%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03477" border="0" alt="DSC03477" src="http://lh3.ggpht.com/-_KMI794Nvuk/TscFpHyfrsI/AAAAAAAABMo/E82MMgn0iQw/DSC03477_thumb.jpg?imgmax=800" width="404" height="402" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;溝を塞げば、直るかと思い、薄いプラスチックの板を接着することにした。身の回りにあったプラスチック製の薄いものと言えば、書類を挟むためのクリアフォルダ。これをハサミで小さく切り、瞬間接着剤で貼り付け、よく乾かした。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-w_FqBQh9MYg/TscFqEQDm0I/AAAAAAAABMs/kiQGzncSGws/s1600-h/DSC03479%25255B5%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03479" border="0" alt="DSC03479" src="http://lh6.ggpht.com/--NnRwyZzKfA/TscFqvuwWGI/AAAAAAAABM4/zNXcRMwP9zE/DSC03479_thumb%25255B1%25255D.jpg?imgmax=800" width="404" height="241" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;下の写真は、ピンぼけだけれど、貼り付けた後の状態。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-45KKL1bRRns/TscFrokAxKI/AAAAAAAABM8/HJz6b81tm18/s1600-h/DSC03481%25255B2%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03481" border="0" alt="DSC03481" src="http://lh3.ggpht.com/--U-_cTXgqv4/TscFsVU6m_I/AAAAAAAABNE/kfVEwb9ieu4/DSC03481_thumb.jpg?imgmax=800" width="404" height="372" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これでマウスを使ってみたところ、全く問題がなくなった。^^ ついでに、少しだけクリック音が小さくなった。&lt;/p&gt;  &lt;p&gt;こんな素人の応急処置が、どの程度持つのかわからない。できるだけ、長く持ってくれるのを祈るばかり。&lt;/p&gt;  &lt;p&gt;それにしても、ロジクールのマウスが、3年間も保証してくれるとは、全然知らなかった。今度からは、保証書を大事に保管しておこう。。 (+_+)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;a name="support"&gt;&lt;/a&gt;5. その後、ロジクールのサポートへ連絡したら、新品と交換してくれた&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://jutememo.blogspot.com/2011/11/1.html?showComment=1321668589268#c8005516505914781927"&gt;匿名 さん&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;発売から3年未満の製品なので、保証書がなくても保証してくれる可能性がありますね。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;保証書は、見つからなかったけれど、Amazon の購入履歴が残っていた。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-KIoaeTJfPG8/TtDW4alZVVI/AAAAAAAABPc/dll0Swlx4Hw/s1600-h/mouse%25255B4%25255D.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="mouse" border="0" alt="mouse" align="right" src="http://lh4.ggpht.com/-AJHnWo4xwEU/TtDW5DK36_I/AAAAAAAABPk/3mmWOSW_NIA/mouse_thumb%25255B1%25255D.jpg?imgmax=800" width="197" height="249" /&gt;&lt;/a&gt;ロジクールのサポートへ、マウスの症状と、応急処置をしたことを伝え、Amazon の購入履歴を添付して、Eメ－ルで相談した。&lt;/p&gt;  &lt;p&gt;その結果、次の回答を得た。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;ご申告の症状より、ハードウェアの不具合と判断いたしました。     &lt;br /&gt;つきましては、保証対象として製品一式を交換させて頂きます&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;ロジクール、なんて良い対応なんだろう。 ＾＾&lt;/p&gt;  &lt;p&gt;もちろん、製品が壊れないのがベストだけれど、サポートが想像以上によかったので、今後、マウスを買うときはロジクールに決まり。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-753641947280670734?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/753641947280670734/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=753641947280670734' title='3 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/753641947280670734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/753641947280670734'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/1.html' title='トラッキング能力が高いDarkfield テクノロジーを利用した Logicool の Anywhere Mouse M905 - クリックの調子が悪くなったので、分解して応急処置をした'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-tnMNv6RVl8I/TscFgtBF7JI/AAAAAAAABLU/u_bzbeN7azA/s72-c/DSC03467_thumb.jpg?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-8341062893072372072</id><published>2011-11-10T15:47:00.001+09:00</published><updated>2011-11-10T22:56:36.604+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows Live Writer'/><title type='text'>Windows Live Writer で遠い過去の記事を編集するために、投稿内容を直接取得するプラグイン - WLW Post Downloader Plugin</title><content type='html'>&lt;h4&gt;過去の投稿一覧を取得するのに時間がかかる&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://explore.live.com/windows-live-writer"&gt;Windows Live Writer&lt;/a&gt; で、遥か昔に投稿した記事を編集したい場合、以下の手順を踏まなければならない。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;「ホーム」タブの左横にある Live Writer ボタン &amp;gt; &lt;strong&gt;最近の記事を開く&lt;/strong&gt; &lt;/li&gt;    &lt;li&gt;ダイアログが表示されたら、編集したい投稿のある&lt;strong&gt;ブログを選択&lt;/strong&gt; &lt;/li&gt;    &lt;li&gt;「表示する項目の数」で「&lt;strong&gt;すべて&lt;/strong&gt;」を選択 &lt;/li&gt;    &lt;li&gt;タイトルの一覧が表示されたら、「&lt;strong&gt;記事のフィルター処理&lt;/strong&gt;」に、編集したいタイトルを入力 &lt;/li&gt;    &lt;li&gt;対象の記事をダブルクリック &lt;/li&gt; &lt;/ol&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/-M_GpQhWJfn4/TrtzaIQlN3I/AAAAAAAABJE/Q-Vla0GMAlw/s1600-h/11-10-20111%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-10-20111" border="0" alt="11-10-20111" src="http://lh6.ggpht.com/-LNSf23fQW5c/TrtzbBwKRMI/AAAAAAAABJM/83MFqLxy-CA/11-10-20111_thumb%25255B2%25255D.png?imgmax=800" width="681" height="276" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;たくさんの記事があると、投稿記事の一覧を取得するの時間がかかる。過去の記事を、直接取得することはできないだろか？&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;WLW Post Downloader Plugin を利用して、直接記事を取得&lt;/h4&gt;  &lt;p&gt;「&lt;a href="http://codeclimber.net.nz/archive/2010/07/10/How-to-edit-very-old-posts-with-Windows-Live-Writer.aspx"&gt;How to edit very old posts with Windows Live Writer&lt;/a&gt;」には、プラグイン&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://aovestdipaperino.com/downloads/WLWDownloader.msi"&gt;WLW Post Downloader Plugin&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を利用して、直接記事を WLW で取得する方法が紹介されていた。早速、上記プラグインをダウンロードして、インストール。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;記事の取得方法&lt;/h5&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-OKJMjadBbo8/TrtzbiqT9pI/AAAAAAAABJU/N_R9qvFDkgo/s1600-h/11-10-20112%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-10-20112" border="0" alt="11-10-20112" align="right" src="http://lh3.ggpht.com/-CfhC9W2QId4/TrtzcrvhjaI/AAAAAAAABJY/pl1Jm8prh0s/11-10-20112_thumb.png?imgmax=800" width="328" height="203" /&gt;&lt;/a&gt;過去の記事を編集する場合は、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;過去に投稿した、編集したい記事のページを開く。 &lt;/li&gt;    &lt;li&gt;ロケーションバーに表示されている URL の &lt;font color="#0000ff"&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;http&lt;/font&gt;&lt;/strong&gt; &lt;/font&gt;を &lt;strong&gt;&lt;font color="#ff0000"&gt;wlw&lt;/font&gt;&lt;/strong&gt; に置き換えて Enter キーを押す。 &lt;/li&gt;    &lt;li&gt;WLWPostDownloader の起動が促されるので、許可する。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;ただし、Firefox 8 では、ロケーションバーに http が表示されていないので、URL の先頭に&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;wlw://&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を追加すれば良い。&lt;/p&gt;  &lt;p&gt;これで、直接対象の記事を Windows Live Writer で開いてくれる。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-8341062893072372072?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/8341062893072372072/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=8341062893072372072' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8341062893072372072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8341062893072372072'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/windows-live-writer-wlw-post-downloader.html' title='Windows Live Writer で遠い過去の記事を編集するために、投稿内容を直接取得するプラグイン - WLW Post Downloader Plugin'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-LNSf23fQW5c/TrtzbBwKRMI/AAAAAAAABJM/83MFqLxy-CA/s72-c/11-10-20111_thumb%25255B2%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-6503117053933518804</id><published>2011-11-08T08:13:00.001+09:00</published><updated>2011-12-01T11:40:07.571+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Chrome'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows Media Player'/><category scheme='http://www.blogger.com/atom/ns#' term='Firefox'/><title type='text'>Firefox, Google Chrome で Windows Media Player プラグインが動作しない場合</title><content type='html'>&lt;h4&gt;1. Firefox 用の Windows Media Player のプラグインを、何度インストールしても再生されない&lt;/h4&gt;  &lt;p&gt;ブラウザ上で動画を再生するのに、未だ Windows Media Player プラグインが必要なサイトある。&lt;a href="http://ja.wikipedia.org/wiki/Microsoft_Silverlight"&gt;Silverlight&lt;/a&gt; ではなく、Windows Media Player の方。&lt;/p&gt;    &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Interoperability Bridges and Labs Center" alt="http://www.interoperabilitybridges.com/windows-media-player-firefox-plugin-download" src="http://kwout.com/cutout/s/92/hs/2uk_bor.jpg" width="193" height="99" usemap="#map_s92hs2uk" /&gt;&lt;map id="map_s92hs2uk" name="map_s92hs2uk"&gt;&lt;area href="http://www.interoperabilitybridges.com/wmpff/wmpfirefoxplugin.exe" shape="rect" alt="" coords="9,43,63,64" /&gt;&lt;area href="http://interoplabs.blob.core.windows.net/wmpff/wmpfirefoxplugin.exe" shape="rect" alt="" coords="9,65,185,91" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.interoperabilitybridges.com/windows-media-player-firefox-plugin-download"&gt;&lt;font size="2"&gt;Interoperability Bridges and Labs Center&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;        &lt;br /&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/s92hs2uk"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; Firefox で再生するなら、&lt;a href="http://www.interoperabilitybridges.com/windows-media-player-firefox-plugin-download"&gt;Interoperability Bridges and Labs Center&lt;/a&gt; にあるプラグインが必要となる。しかし、なぜか自分の環境では、何度インストールしなおしても、一行に再生される気配がなかった。    &lt;p&gt;ついでに、Google Chrome でも、Windows Media Player のプラグインが必要なサイトで、動画を再生することができない。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. 設定ファイルを修復する&lt;/h4&gt;  &lt;p&gt;それほど、Windows Media Player を必要としたサイトに依存していないので、「まぁ、いっか…」と、長いこと放置していた。しかし、最近、テレビやラジオのコンテンツを再生するサイトを見る機会が増えた。Flash Player で再生するサイトが大半の中、Windows Media Player が必要なところもある。&lt;/p&gt;  &lt;p&gt;仕方がないので、再生するための方法を調べた。&lt;/p&gt;  &lt;p&gt;「&lt;a href="http://ottava.suki.net/blog/2010/06/11/windows-media-player%E3%81%A7%E3%80%8C%E6%BA%96%E5%82%99%E5%AE%8C%E4%BA%86%E3%80%8D%E3%81%A8%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%80%81%E5%86%8D%E7%94%9F%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84%E5%95%8F/"&gt;» Windows Media Playerで「準備完了」と表示され、再生できない 問題の対策法 - [Mi]みたいなもの ottabot版 / Blog Archive&lt;/a&gt;」によると、&lt;/p&gt;  &lt;p&gt;コマンドプロンプトを管理者として起動し、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;regsvr32 wmnetmgr.dll &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を実行すれば良いとのこと。&lt;/p&gt;  &lt;p&gt;これで、自分の環境では、Firefox, Google Chrome で、Windows Mediaplayer が必要なサイトが再生されるようになった。&lt;/p&gt;  &lt;p&gt;ところで、Windows Media Player で再生されるサイトは、一昔前の時代のような感じがする。デザインが、そういう風に見えるんだろうか？とは言え、Flash Player もいつの間にか &lt;a href="http://ja.wikipedia.org/wiki/HTML5"&gt;HTML5&lt;/a&gt; に置き換えられていくのかな？&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-6503117053933518804?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/6503117053933518804/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=6503117053933518804' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/6503117053933518804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/6503117053933518804'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/firefox-google-chrome-windows-media.html' title='Firefox, Google Chrome で Windows Media Player プラグインが動作しない場合'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-2755857691488512693</id><published>2011-11-08T01:23:00.001+09:00</published><updated>2011-11-16T04:52:14.363+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='英語配列'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='キーボード'/><title type='text'>Windows 7 で英語配列のキーボードが、日本語配列と認識された場合</title><content type='html'>&lt;p&gt;Windows 7 をインストールするとき、英語配列のキーボードとして設定。その後、たまに再起動した後、日本語キーボードの配列になっていることがある。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="キー配列 - Wikipedia" alt="http://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%BC%E9%85%8D%E5%88%97#101.E3.82.AD.E3.83.BC.E3.83.9C.E3.83.BC.E3.83.89" src="http://kwout.com/cutout/u/re/u8/pmv_bor.jpg" width="600" height="179" usemap="#map_ureu8pmv" /&gt;&lt;map id="map_ureu8pmv" name="map_ureu8pmv"&gt;&lt;area href="http://ja.wikipedia.org/wiki/NumLock%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="474,62,505,76" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="47,32,57,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="71,32,81,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="95,32,105,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="118,32,129,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="147,32,158,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="172,32,182,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="195,32,206,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="220,32,230,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="249,32,259,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="274,32,290,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="306,32,321,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="337,32,353,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Esc%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="13,32,27,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%81%E3%83%AB%E3%83%80" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Template:101%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%AE%E9%85%8D%E5%88%97" shape="rect" alt="" coords="16,10,24,24" /&gt;&lt;area href="http://ja.wikipedia.org/w/index.php?title=Template%E2%80%90%E3%83%8E%E3%83%BC%E3%83%88:101%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%AE%E9%85%8D%E5%88%97&amp;amp;action=edit&amp;amp;redlink=1" shape="rect" alt="" coords="35,10,43,24" /&gt;&lt;area href="http://ja.wikipedia.org/w/index.php?title=Template:101%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%AE%E9%85%8D%E5%88%97&amp;amp;action=edit" shape="rect" alt="" coords="53,10,61,24" /&gt;&lt;area href="http://ja.wikipedia.org/w/index.php?title=Template:101%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%AE%E9%85%8D%E5%88%97&amp;amp;action=history" shape="rect" alt="" coords="72,10,80,24" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Windows%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="344,9,382,24" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Windows%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Windows%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="400,9,428,24" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AA%E3%83%B3%E3%83%88%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3" shape="rect" alt="" coords="370,32,393,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E3%83%AD%E3%83%83%E3%82%AF" shape="rect" alt="" coords="402,32,426,46" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Break_key" shape="rect" alt="" coords="435,32,461,46" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%84%9F%E5%98%86%E7%AC%A6" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%83%E3%83%88%E3%83%9E%E3%83%BC%E3%82%AF" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E7%95%AA%E5%8F%B7%E8%A8%98%E5%8F%B7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Dollar_sign" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Percent_sign" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Caret" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%B3%E3%83%91%E3%82%B5%E3%83%B3%E3%83%89" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%82%B9%E3%82%BF%E3%83%AA%E3%82%B9%E3%82%AF" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%82%B9%E3%82%BF%E3%83%AA%E3%82%B9%E3%82%AF" shape="rect" alt="" coords="546,60,552,77" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8B%AC%E5%BC%A7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%B3%E3%83%80%E3%83%BC%E3%82%B9%E3%82%B3%E3%82%A2" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%A9%E3%82%B9%E8%A8%98%E5%8F%B7%E3%81%A8%E3%83%9E%E3%82%A4%E3%83%8A%E3%82%B9%E8%A8%98%E5%8F%B7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%A9%E3%82%B9%E8%A8%98%E5%8F%B7%E3%81%A8%E3%83%9E%E3%82%A4%E3%83%8A%E3%82%B9%E8%A8%98%E5%8F%B7" shape="rect" alt="" coords="576,60,580,77" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%A9%E3%82%B9%E8%A8%98%E5%8F%B7%E3%81%A8%E3%83%9E%E3%82%A4%E3%83%8A%E3%82%B9%E8%A8%98%E5%8F%B7" shape="rect" alt="" coords="574,96,582,113" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83%E3%82%AF%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83%E3%82%AF%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B0%E3%83%AC%E3%82%A4%E3%83%B4%E3%83%BB%E3%82%A2%E3%82%AF%E3%82%BB%E3%83%B3%E3%83%88" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/1" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/1" shape="rect" alt="" coords="486,132,492,149" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/2" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/2" shape="rect" alt="" coords="519,132,525,149" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/3" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/3" shape="rect" alt="" coords="546,132,552,149" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/4" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/4" shape="rect" alt="" coords="486,108,492,125" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/5" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/5" shape="rect" alt="" coords="519,108,525,125" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/6" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/6" shape="rect" alt="" coords="546,108,552,125" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/7" shape="rect" alt="" coords="486,84,492,101" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/8" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/8" shape="rect" alt="" coords="519,84,525,101" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/9" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/9" shape="rect" alt="" coords="546,84,552,101" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/0" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/0" shape="rect" alt="" coords="500,156,506,173" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%8F%E3%82%A4%E3%83%95%E3%83%B3" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E7%AD%89%E5%8F%B7" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%BF%E3%83%96%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%BF%E3%83%96%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Q" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Q" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/W" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/W" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/E" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/E" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/R" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/R" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/T" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/T" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Y" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Y" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/U" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/U" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/I" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/I" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/O" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/O" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/P" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/P" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%BC%E3%83%86%E3%82%A3%E3%82%AB%E3%83%AB%E3%83%90%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83%E3%82%AF%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/CapsLock%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/CapsLock%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/A" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/A" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/S" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/S" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/D" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/D" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/F" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/F" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/G" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/G" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/H" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/H" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/J" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/J" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/K" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/K" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/L" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/L" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%AD%E3%83%B3_(%E8%A8%98%E5%8F%B7)" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%AD%E3%83%B3_(%E8%A8%98%E5%8F%B7)" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E5%BC%95%E7%94%A8%E7%AC%A6" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%B3%E3%82%BF%E3%83%BC%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%B3%E3%82%BF%E3%83%BC%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%B3%E3%82%BF%E3%83%BC%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="566,145,590,159" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%9F%E3%82%B3%E3%83%AD%E3%83%B3" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%9D%E3%82%B9%E3%83%88%E3%83%AD%E3%83%95%E3%82%A3%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%95%E3%83%88%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%95%E3%83%88%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%95%E3%83%88%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B7%E3%83%95%E3%83%88%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Z" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/Z" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/X" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/X" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/C" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/C" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/V" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/V" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/B" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/B" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/N" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/N" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/M" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/M" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E7%96%91%E5%95%8F%E7%AC%A6" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Full_stop" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5_(%E8%A8%98%E5%8F%B7)" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5_(%E8%A8%98%E5%8F%B7)" shape="rect" alt="" coords="521,60,525,77" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Alt_key" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Space_bar" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/AltGr_key" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Menu_key" shape="rect" alt="" coords="7,58,359,175" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E6%8C%BF%E5%85%A5%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="375,62,389,76" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%9B%E3%83%BC%E3%83%A0%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="402,62,428,76" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%9A%E3%83%BC%E3%82%B8%E3%82%A2%E3%83%83%E3%83%97%E3%82%AD%E3%83%BC%E3%81%A8%E3%83%9A%E3%83%BC%E3%82%B8%E3%83%80%E3%82%A6%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="437,62,460,76" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%83%9A%E3%83%BC%E3%82%B8%E3%82%A2%E3%83%83%E3%83%97%E3%82%AD%E3%83%BC%E3%81%A8%E3%83%9A%E3%83%BC%E3%82%B8%E3%83%80%E3%82%A6%E3%83%B3%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="437,85,460,99" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E5%89%8A%E9%99%A4%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="375,85,389,99" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%B3%E3%83%89%E3%82%AD%E3%83%BC" shape="rect" alt="" coords="406,85,422,99" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Arrow_keys" shape="rect" alt="" coords="409,132,419,149" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Arrow_keys" shape="rect" alt="" coords="376,156,387,173" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Arrow_keys" shape="rect" alt="" coords="409,156,419,173" /&gt;&lt;area href="http://en.wikipedia.org/wiki/Arrow_keys" shape="rect" alt="" coords="443,156,453,173" /&gt;&lt;area href="http://ja.wikipedia.org/wiki/%E5%B0%8F%E6%95%B0%E7%82%B9" shape="rect" alt="" coords="547,156,550,173" /&gt;&lt;/map&gt;    &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%AD%E3%83%BC%E9%85%8D%E5%88%97#101.E3.82.AD.E3.83.BC.E3.83.9C.E3.83.BC.E3.83.89"&gt;キー配列 - Wikipedia&lt;/a&gt; via &lt;a href="http://kwout.com/quote/ureu8pmv"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;レジストリで設定を修正するには、「&lt;a href="http://d.hatena.ne.jp/kasahi/20070628/1183058337"&gt;Windows Vistaで英語(US)キーボードを認識させる方法 – カサヒラボ&lt;/a&gt;」によると、レジストリエディタを起動したの後、以下の値を変更する。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters]を選択 &lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;LayerDriver &lt;a href="http://d.hatena.ne.jp/keyword/JPN"&gt;JPN&lt;/a&gt; → KBD101.&lt;a href="http://d.hatena.ne.jp/keyword/DLL"&gt;DLL&lt;/a&gt;に変更 (KBD106.&lt;a href="http://d.hatena.ne.jp/keyword/DLL"&gt;DLL&lt;/a&gt;になってた） &lt;/li&gt;      &lt;li&gt;OverrideKeyboardIdentifier → PCAT_101KEYに変更 (PCAT_106KEYになってた) &lt;/li&gt;      &lt;li&gt;OverrideKeyboardSubtype → 0に変更 (2になってた) &lt;/li&gt;   &lt;/ul&gt; &lt;/blockquote&gt;  &lt;p&gt;一度、ログオフして、再ログインしたら、英語配列に戻ってくれた。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-2755857691488512693?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/2755857691488512693/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=2755857691488512693' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2755857691488512693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2755857691488512693'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/windows-7_08.html' title='Windows 7 で英語配列のキーボードが、日本語配列と認識された場合'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-5252233814399434460</id><published>2011-11-06T02:46:00.001+09:00</published><updated>2012-01-09T10:46:30.981+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google+'/><category scheme='http://www.blogger.com/atom/ns#' term='Blogger'/><category scheme='http://www.blogger.com/atom/ns#' term='Flickr'/><category scheme='http://www.blogger.com/atom/ns#' term='Picasa'/><title type='text'>Blogger に載せる画像の保存先を Flickr から Picasa へ変更 - Google+ へ登録して、無料で保存できる画像サイズもアップ</title><content type='html'>&lt;h4 align="left"&gt;1. これまでブログの画像は Flickr に保存していた&lt;/h4&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="https://accounts.google.com/ServiceLogin?service=blogger&amp;amp;passive=1209600&amp;amp;continue=http://www.blogger.com/home&amp;amp;followup=http://www.blogger.com/home&amp;amp;ltmpl=start#s01"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Blogger: 無料でブログを作成" alt="https://accounts.google.com/ServiceLogin?service=blogger&amp;amp;passive=1209600&amp;amp;continue=http://www.blogger.com/home&amp;amp;followup=http://www.blogger.com/home&amp;amp;ltmpl=start#s01" src="http://kwout.com/cutout/f/z3/yy/jbq_bor.jpg" width="166" height="64" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="https://accounts.google.com/ServiceLogin?service=blogger&amp;amp;passive=1209600&amp;amp;continue=http://www.blogger.com/home&amp;amp;followup=http://www.blogger.com/home&amp;amp;ltmpl=start#s01"&gt;&lt;font size="2"&gt;Blogger&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt;via &lt;/font&gt;&lt;a href="http://kwout.com/quote/fz3yyjbq"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; このブログは、&lt;a href="http://www.blogger.com"&gt;Blogger&lt;/a&gt; を利用している。   &lt;p&gt;使いはじめの頃、Blogger へ投稿できる画像の上限は 300M だった。そのため、画像の投稿先は &lt;a href="http://www.flickr.com/"&gt;Flickr&lt;/a&gt; にした。理由は、Flickr では、月毎のアップロードの上限を守れば、無料でずっと使うことができるため。ブログへ投稿する画像の容量は小さいので、上限を超えることはなかった。&lt;/p&gt;  &lt;p&gt;ブログを書くために、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;エディタは、マイクロソフトの &lt;a href="http://explore.live.com/windows-live-writer"&gt;Windows Live Writer&lt;/a&gt; (WLW) を使い、&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;ブログシステムとして、Google に買収された Blogger を利用し、 &lt;/li&gt;    &lt;li&gt;画像の保存先は、Yahoo に買収された Flickr へ保管。 &lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;a href="http://lh4.ggpht.com/-yEWRGFyXEb4/TrV2VenlHkI/AAAAAAAABI0/zcrxAJ9v9ns/s1600-h/11-06-20111%25255B8%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-06-20111" border="0" alt="11-06-20111" src="http://lh3.ggpht.com/-75OrMwZl9nY/TrV2WBgxaSI/AAAAAAAABI8/OKmk4BpvDyA/11-06-20111_thumb%25255B6%25255D.png?imgmax=800" width="517" height="284" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;できることなら、シンプルに一本にまとめたいけれど、快適さを追求すると、便利なものを組み合わせなければならない。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5 align="left"&gt;Windows Live Writer から Flickr へアップロードするためのプラグイン&lt;/h5&gt;  &lt;p&gt;WLW から、Flickr へ投稿するには、プラグイン「&lt;a href="http://plugins.live.com/writer/detail/flickr-upload"&gt;Flickr Upload&lt;/a&gt;」を使う。&lt;/p&gt;  &lt;p&gt;このプラグインは、挿入したい画像を、その場へ配置することには向いている。しかし、Flickr へのアップロードがバックグラウンドで行われないため、画像を挿入する度に、アップロードが完了するのを待たなければいけない。&lt;/p&gt;  &lt;p&gt;できることなら、画像の投稿先を変更したかった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;2. 画像の投稿先を Picasa へ変更した理由&lt;/h4&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Picasa 3: Google から無料でダウンロードできます" alt="http://picasa.google.co.jp/intl/ja/#utm_source=ja-all-more&amp;amp;utm_campaign=ja-pic&amp;amp;utm_medium=et" src="http://kwout.com/cutout/7/c7/jd/c36_bor.jpg" width="164" height="65" usemap="#map_7c7jdc36" /&gt;&lt;map id="map_7c7jdc36" name="map_7c7jdc36"&gt;&lt;area href="http://picasa.google.co.jp/intl/ja/index.html" shape="rect" alt="" coords="4,52,161,62" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;/p&gt;   &lt;a href="http://picasa.google.co.jp/intl/ja/#utm_source=ja-all-more&amp;amp;utm_campaign=ja-pic&amp;amp;utm_medium=et"&gt;Picasa 3:&lt;/a&gt; via &lt;a href="http://kwout.com/quote/7c7jdc36"&gt;kwout&lt;/a&gt;&lt;/div&gt; Google のサービス&lt;/a&gt; には、写真の投稿サービスとして、&lt;a href="https://picasaweb.google.com/"&gt;Picasa ウェブ アルバム&lt;/a&gt; がある。随分前に、Blogger への画像の投稿は、Picasa へ保存されると聞いたことがある。   &lt;blockquote&gt;   &lt;p&gt;Picasa ウェブ アルバムには、Blogger（カスタム ドメインを含む）にアップロードされたすべての写真が保存されます。&lt;/p&gt;    &lt;p&gt;（&lt;a href="http://picasa.google.com/support/bin/answer.py?hl=jp&amp;amp;answer=61627"&gt;Picasa と Picasa ウェブ アルバムの ヘルプ&lt;/a&gt; より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;しかし、 Picasa にも利用の上限があり、Flickr のように、月毎のアップロードの上限を設けるという形態ではなかったため、相変わらず Flickr を利用し続けた。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Google+ に登録すると大きな写真も無料の保存容量にカウントされない&lt;/h5&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="https://plus.google.com/"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Google : ウェブ上の情報共有をもっと簡単に。" alt="https://plus.google.com/" src="http://kwout.com/cutout/w/w9/e4/x5a_bor.jpg" width="258" height="189" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="https://plus.google.com/"&gt;Google : &lt;/a&gt;via &lt;a href="http://kwout.com/quote/ww9e4x5a"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; 少し前から、&lt;a href="https://plus.google.com/"&gt;Google+&lt;/a&gt;&amp;#160; が話題になっている。それに伴い、Picasa について、ヘルプを見直したら、   &lt;blockquote&gt;   &lt;p&gt;Blogger に投稿された写真はすべて、Picasa ウェブ アルバムに無料で割り当てられている 1 GB の保存容量に含まれます。&lt;strong&gt;特定のサイズに満たない&lt;/strong&gt;ファイルは、&lt;a href="http://picasa.google.com/support/bin/answer.py?answer=1224181"&gt;無料の保存容量にはカウントされません&lt;/a&gt;。&lt;/p&gt;    &lt;p&gt;（同上より、太字は引用者による）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;と書かれていた。&lt;/p&gt;  &lt;p&gt;「特定のサイズ」って何のことだろう？と思ったら、&lt;/p&gt;  &lt;p&gt;&lt;a href="http://picasa.google.com/support/bin/answer.py?answer=1224181"&gt;無料の保存容量の制限 - Picasa と Picasa ウェブ アルバムの ヘルプ&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;h4&gt;無料の保存容量の制限 &lt;/h4&gt;    &lt;p&gt;Picasa ウェブ アルバムでは、写真と動画にのみ 1 GB の保存容量を無料でご利用いただけます。ただし、特定のサイズに満たないファイルは、この無料の保存容量にはカウントされません。これは、Picasa ウェブ アルバムに写真や動画を保存する他の Google サービス（Blogger、Google マップを含む）でのアップロードにも適用されます。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;ここで重要なのは、画像のサイズ。以下のように説明がある。&lt;/p&gt;  &lt;blockquote&gt;   &lt;h6&gt;無料の保存容量の制限&lt;/h6&gt;    &lt;p&gt;800×800 ピクセル以内の写真や 15 分以内の動画は、無料の保存容量にカウントされません。&lt;/p&gt;    &lt;p&gt;（同上 より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;それに加え、以下のような記述もあった。&lt;/p&gt;  &lt;blockquote&gt;   &lt;h5&gt;Google+ に登録済みの場合 &lt;/h5&gt;    &lt;h6&gt;無料の保存容量の制限&lt;/h6&gt;    &lt;p&gt;2048×2048 ピクセル以内の写真や 15 分以内の動画は、無料の保存容量にカウントされません。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Google+ に登録すれば、こんな大きな画像も無料の対象になることに驚いた。 (@_@;&lt;/p&gt;  &lt;p align="left"&gt;念のため、自分の &lt;a href="https://picasaweb.google.com/home"&gt;Picasa ウェブ アルバム&lt;/a&gt; を確認したら、なぜか WLW から投稿した画像が保存されているアルバムを発見。写真の枚数が 500 枚以上あったので、そこそこ容量は消費していそうに思えた。しかし、&lt;a href="https://picasaweb.google.com/home"&gt;Picasa ウェブ アルバム&lt;/a&gt; のページ下部にある利用容量を見たら、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;現在、1024 MB 中 0 MB (0%) を使用しています。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;となっていた。&lt;/p&gt;  &lt;p&gt;これで何の心配もなく、画像の投稿先を Flickr から Picasa へと変更できる。&lt;/p&gt;  &lt;p&gt;WLW に画像を挿入するのも一瞬で済む。画像が投稿されるのは、全体の記事が投稿されるタイミングなので、使い勝手がとても良い。 ^^&lt;/p&gt;  &lt;p align="left"&gt;(cf. &lt;a href="http://jutememo.blogspot.com/2011/11/windows-live-writer.html"&gt;Windows Live Writer で挿入する画像の、余白のデフォルトを設定するには&lt;/a&gt; )&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-5252233814399434460?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/5252233814399434460/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=5252233814399434460' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5252233814399434460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5252233814399434460'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/blogger-flickr-picasa-google.html' title='Blogger に載せる画像の保存先を Flickr から Picasa へ変更 - Google+ へ登録して、無料で保存できる画像サイズもアップ'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-75OrMwZl9nY/TrV2WBgxaSI/AAAAAAAABI8/OKmk4BpvDyA/s72-c/11-06-20111_thumb%25255B6%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-5851569396244928953</id><published>2011-11-05T04:34:00.001+09:00</published><updated>2011-11-05T10:48:48.135+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows Live Writer'/><title type='text'>Windows Live Writer で挿入する画像の、余白のデフォルトを設定するには</title><content type='html'>&lt;h4&gt;画像を挿入し、余白を設定する&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://explore.live.com/windows-live-writer"&gt;Windows Live Writer&lt;/a&gt; (以降、WLW と略す）に、「画像」を挿入するためには、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;画像ファイルを WLW にドラッグ・アンド・ドロップ &lt;/li&gt;    &lt;li&gt;大きさ、配置、余白などを調整 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-QIHuydW0rxU/TrQ-Ux-UdBI/AAAAAAAABIU/vcjzoJGg1gk/s1600-h/11-05-20118%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-05-20118" border="0" alt="11-05-20118" align="right" src="http://lh3.ggpht.com/-WsNn15Oy28o/TrQ-VqYksAI/AAAAAAAABIY/VCxEo7SI_Nc/11-05-20118_thumb.png?imgmax=800" width="321" height="225" /&gt;&lt;/a&gt;という手順を踏む。&lt;/p&gt;  &lt;p&gt;ここで、「余白」を調整するためには、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;画像をダブルクリックして、画像ツ－ルの「形式」タブを表示させる。 &lt;/li&gt;    &lt;li&gt;リボンの右隅にある「余白」をクリック。 &lt;/li&gt;    &lt;li&gt;上下左右の余白をピクセル単位で入力 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;一度行った設定を「既定に設定」する&lt;/h4&gt;  &lt;p&gt;余白は、デフォルトでは、上下左右 0 ピクセルとなっている。しかし、実際に画像を挿入するときは、文章との間を少し空けた方が見栄えがいいので、適当に画像の周りに余白を付ける。&lt;/p&gt;  &lt;p&gt;この設定を画像ごとに毎回していたら、面倒で嫌になる。デフォルトとなる値を設定しておきたい。&lt;/p&gt;  &lt;p&gt;そのためには、一度、ある画像で余白を設定したら、その後、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;設定 &amp;gt;&lt;strong&gt; 既定に設定&lt;/strong&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;を押しておく。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/-qkHcn40L03o/TrQ-WWUP1nI/AAAAAAAABIg/wLN1olL0oy4/s1600-h/11-05-20119%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-05-20119" border="0" alt="11-05-20119" src="http://lh5.ggpht.com/-W1xgj6gmFQg/TrQ-XSXLoZI/AAAAAAAABIs/UeI9rPivKqQ/11-05-20119_thumb.png?imgmax=800" width="635" height="177" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これにより、次回から、画像を WLW にドラッグ・アンド・ドロップすると、「既定」とした余白が自動的に適用される。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;既定に設定の意味&lt;/h5&gt;  &lt;p&gt;「既定に設定」の説明には、次のように書かれている。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;配置、余白、画像のスタイル、及びこの画像のプロパティを他の画像に適用する既定として設定します。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;余白以外にも、一番よく使う画像のサイズ、配置などを設定した後、「既定に設定」をしておくと便利。&lt;/p&gt;  &lt;p&gt;長いこと WLW 使っていて、この機能があること、最近まで気が付かなかった。。 (+_+) &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;WLW は画像を扱うのが、面倒だな&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;と思っていた。。 (^^;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-5851569396244928953?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/5851569396244928953/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=5851569396244928953' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5851569396244928953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/5851569396244928953'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/windows-live-writer.html' title='Windows Live Writer で挿入する画像の、余白のデフォルトを設定するには'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-WsNn15Oy28o/TrQ-VqYksAI/AAAAAAAABIY/VCxEo7SI_Nc/s72-c/11-05-20118_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-3632705007556892983</id><published>2011-11-05T01:25:00.001+09:00</published><updated>2011-11-16T04:52:14.437+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ウィンドウ'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='マウス'/><category scheme='http://www.blogger.com/atom/ns#' term='UI'/><category scheme='http://www.blogger.com/atom/ns#' term='タスクバー'/><title type='text'>Windows 7 において、マウスオーバーでウィンドウをアクティブにする時間と、タスクバーのプレビュー表示の時間を、レジストリで設定する</title><content type='html'>&lt;h4&gt;マウスオーバーでウィンドウをアクティブにする時間を早くする&lt;/h4&gt;  &lt;h5&gt;コントロールパネルの設定&lt;/h5&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-E8CPiCVeMT8/TrQeJrN7qlI/AAAAAAAABHg/RsNm3InxeLc/s1600-h/11-05-20111%25255B8%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-05-20111" border="0" alt="11-05-20111" align="right" src="http://lh4.ggpht.com/-2_DCsKoFmV0/TrQeKm1JfdI/AAAAAAAABHo/ZBhGLdV2Nf8/11-05-20111_thumb%25255B6%25255D.png?imgmax=800" width="457" height="423" /&gt;&lt;/a&gt;Windows 7 の標準の設定として、マウスオーバーで、ウィンドウをアクティブにすることができる。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;コントロール パネル\コンピューターの簡単操作\コンピューターの簡単操作センター\マウスを使いやすくします &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;の「ウィンドウの管理を簡単にします」における&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;マウスポインターをウィンドウ上に合わせたときにウィンドウを選択します&lt;/strong&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;にチェックを入れる。&lt;/p&gt;  &lt;p&gt;ただし、デフォルトでは、反応が今一遅い。これを調整するのに、&lt;a href="http://jutememo.blogspot.com/2011/02/windows-7-64bit.html"&gt;「ぴたすちお」 &lt;/a&gt;を使っていたが、一部アプリと相性が悪かったので、今は利用していない。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;レジストリによる時間の設定&lt;/h5&gt;  &lt;p&gt;ウィンドウをアクティブにする反応速度を早くするには、レジストリエディタを利用する。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Windows キー ＋ R を押して、「ファイル名を指定して実行」 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;regedit&lt;/strong&gt; と入力して OK 。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sevenforums.com/tutorials/9000-mouse-hover-makes-window-active-enable.html"&gt;Mouse Hover Makes Window Active - Enable - Windows 7 Forums&lt;/a&gt; によると、時間を調整するには、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;HKEY_CURRENT_USER\Control Panel\Desktop &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;の &lt;strong&gt;ActiveWndTrkTimeout&lt;/strong&gt; の値を設定する。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/-bKIYKnvs7BA/TrQeLtmqHyI/AAAAAAAABHw/TPqHCyV7Mdo/s1600-h/11-05-20115%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-05-20115" border="0" alt="11-05-20115" src="http://lh3.ggpht.com/-kr1zkNOy6DY/TrQeMhagvvI/AAAAAAAABH4/8P5UWFUV8ck/11-05-20115_thumb.png?imgmax=800" width="696" height="267" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;自分の場合、&lt;a href="http://jutememo.blogspot.com/2008/01/firefox-tab-mix-plus.html"&gt;Firefox の Tab Mix Plus でタブを、マウスオーバーでアクティブにする&lt;/a&gt;時間を 150ミリ秒にしているので、この値と同じ値にした。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;上記レジストリエディタ中の ActiveWndTrkTimeout の項目をダブルクリック 。 &lt;/li&gt;    &lt;li&gt;「表記」を 10 進数にして、 値として 150 を入力。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;設定を有効にするためには、一度ログオフしてから、再ログインする。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;タスクバーのプレビューを表示する時間を設定&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://www.windows7news.com/2009/02/09/change-windows-7-taskbar-hover-time/"&gt;Change Windows 7 Taskbar Hover Time&lt;/a&gt; によると、レジストリエディタで、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;HKEY_CURRENT_USER\Control Panel\Mouse &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;MouseHoverTime&lt;/strong&gt; の値を設定する。&lt;/p&gt;  &lt;p&gt;デフォルトは 400 なので、50 にした。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/-LM71SiuVOmk/TrQeNkC2rXI/AAAAAAAABIA/80Ft4jcHrLE/s1600-h/11-05-20114%25255B2%25255D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="11-05-20114" border="0" alt="11-05-20114" src="http://lh5.ggpht.com/-A9DBcQqzKAs/TrQeO75FUPI/AAAAAAAABII/7QV02IBuRCA/11-05-20114_thumb.png?imgmax=800" width="680" height="385" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これにより、タスクバーにあるアイコンにマウスを乗せると、すぐにウィンドウプレビューが表示される。これだけ早くしておけば、プレビューの表示が、アニメーションであってもイライラすることがない。&lt;/p&gt;  &lt;p&gt;先ほどと同じく、設定を有効にするためには、一度ログオフしてから、再ログインする。&lt;/p&gt;  &lt;p&gt;ちなみに、アニメーションを切るには、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;コントロール パネル\すべてのコントロール パネル項目\パフォーマンスの情報とツール\詳細ツール &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;の「Windows のデザインとパフォーマンスの調整」における「&lt;strong&gt;タスクバーとスタートメニューでアニメーションを表示する&lt;/strong&gt;」のチェックを外す。&lt;/p&gt;  &lt;p&gt;プレビューの表示が早くなった以外に、マウスオーバーでサブメニューが表示される UI も、同様に早くなった。例えば、スタートメニューより、「シャットダウン」の右横にある三角の印に、マウスを乗せると、以前よりサブメニューが早く表示される。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;Dexopt の画面の切り替えのストレスがなくなった&lt;/h5&gt;  &lt;p align="left"&gt;ところで、&lt;a href="http://jutememo.blogspot.com/2011/05/dexpot.html"&gt;仮想デスクトップ に Dexpot&lt;/a&gt; を利用している。&lt;/p&gt;  &lt;p align="left"&gt;以前は、仮想画面を切り替えるために、&lt;a href="http://jutememo.blogspot.com/2011/05/dexpot.html#tasktray_icon"&gt;タスクトレイのアイコンを使っていた&lt;/a&gt;。今は、&lt;a href="http://jutememo.blogspot.com/2011/05/dexpot.html#taskbar_preview"&gt;タスクボタンのプレビューで切り替えている&lt;/a&gt;。上記の設定により、さっと各仮想画面のプレビューが表示されるようになったため、気持よく切り替えができるようになった。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-3632705007556892983?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/3632705007556892983/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=3632705007556892983' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/3632705007556892983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/3632705007556892983'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/windows-7.html' title='Windows 7 において、マウスオーバーでウィンドウをアクティブにする時間と、タスクバーのプレビュー表示の時間を、レジストリで設定する'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/-2_DCsKoFmV0/TrQeKm1JfdI/AAAAAAAABHo/ZBhGLdV2Nf8/s72-c/11-05-20111_thumb%25255B6%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-3649891900394511751</id><published>2011-11-03T15:13:00.001+09:00</published><updated>2012-01-08T17:59:53.526+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='生活'/><title type='text'>便座を拭くだけで、トイレの悪臭はかなり抑えられる</title><content type='html'>&lt;h4&gt;トイレ掃除はつかれる&lt;/h4&gt;  &lt;p&gt;トイレが臭いと、テンションが下がる。&lt;/p&gt;  &lt;p&gt;立ちションをした場合、飛び散る水滴の数が半端無いのを知って以来、座ってするのが習慣化した。それでも、定期的に便器の外・中から床・壁まで掃除をしないと、すぐに臭くなる。結構体力がいるので、掃除をする前は、心身ともにテンションダダ下がり。 (+_+)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;便座を拭くのが良い&lt;/h4&gt;  &lt;p&gt;もう少し、掃除の回数を減らすことができないだろうか？と、思い購入したのが、便座や床をさっとふくための&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&amp;#160;&lt;a href="http://www.st-c.co.jp/product/category/081/164.html"&gt;トイレの消臭ポット 香りのクリーナースプレー&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div style="text-align: center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="500"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="166"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW20Q/sakura39-22/" target="_blank"&gt;ソープシャワー              &lt;br /&gt;210ml&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW20Q/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005CIW20Q" src="http://ecx.images-amazon.com/images/I/41lw1JxOyBL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="166"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW1UC/sakura39-22/" target="_blank"&gt;フラワーファンタジー 210ml&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW1UC/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005CIW1UC" src="http://ec2.images-amazon.com/images/I/41EidbI5MuL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="166"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW288/sakura39-22/" target="_blank"&gt;フルーツハピネス 210ml&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW288/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005CIW288" src="http://ec2.images-amazon.com/images/I/41Y0HedwdhL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="166"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW2JM/sakura39-22/" target="_blank"&gt;詰替 ソープＳ&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW2JM/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005CIW2JM" src="http://ec2.images-amazon.com/images/I/51a7j2erpEL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="166"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW2EM/sakura39-22/" target="_blank"&gt;フラワーＦ&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW2EM/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005CIW2EM" src="http://ec2.images-amazon.com/images/I/51t%2BIVvwfeL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="166"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW2OM/sakura39-22/" target="_blank"&gt;フルーツＨ&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005CIW2OM/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005CIW2OM" src="http://ec2.images-amazon.com/images/I/51izUipDGrL._SL160_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;これが思いのほか良かった。便座を拭くだけで、かなりトイレの臭いを抑えることができる。臭いの原因は、便器の方だと考えていたが、むしろ便座の方がやばいらしい。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;a name="soap"&gt;&lt;/a&gt;ソープの香りが無難&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-zZPHbhs3AxA/TrIw8ls9aPI/AAAAAAAABHQ/HyFmFGeJBG4/s1600-h/DSC03458-2%25255B7%25255D.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DSC03458-2" border="0" alt="DSC03458-2" align="right" src="http://lh5.ggpht.com/-_NvWD8t2ccM/TrIw9gQY6VI/AAAAAAAABHY/wBneTlxrTVI/DSC03458-2_thumb%25255B1%25255D.jpg?imgmax=800" width="293" height="442" /&gt;&lt;/a&gt;香りは 3 種類あった。「ソープ」は、爽やかで、間違いなく一番無難。「フラワー」は、やや香りが甘いので、トイレの気分がしない。次回は買わない。&lt;/p&gt;  &lt;p&gt;「フルーツ」は、トイレに合わないと思い、未購入。次は、試しに買ってみようかな。&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;追記(2012.1.8)&lt;/strong&gt;: 「フルーツ」の香りは、さわやかだった。一番いいかもしれない。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;インテリア性も重要&lt;/h4&gt;  &lt;p&gt;この製品で、もう一つ感心したのは、購入時のパッケージはゴテゴテしているのに、全部綺麗にはがせること。右の写真が、全部取り外したところ。&lt;/p&gt;  &lt;p&gt;他の製品で、臭いを消す気満々のデザインが、ベッタリと印刷されているものがある。あれはやめて欲しい。&lt;/p&gt;  &lt;p&gt;さりげない、周りに溶け込むデザインが気に入った。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-3649891900394511751?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/3649891900394511751/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=3649891900394511751' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/3649891900394511751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/3649891900394511751'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/11/blog-post.html' title='便座を拭くだけで、トイレの悪臭はかなり抑えられる'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-_NvWD8t2ccM/TrIw9gQY6VI/AAAAAAAABHY/wBneTlxrTVI/s72-c/DSC03458-2_thumb%25255B1%25255D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-2135958046218606716</id><published>2011-10-31T03:34:00.001+09:00</published><updated>2011-11-03T14:07:54.844+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='生活'/><title type='text'>手肌が弱いなら、エステーのうす手 指先強化 手袋が良さげ</title><content type='html'>&lt;h4&gt;洗剤で手はボロボロになった&lt;/h4&gt;  &lt;p&gt;一人暮らしをしていたとき、食費を抑えるために、なるべく自炊をしていた。食洗機はなかっので、洗ものはガシガシと手洗い。&lt;/p&gt;  &lt;p&gt;しばらくしたら、手の皮膚はぼろぼろになり、水を触るのでさえ、痛みを感じるようになった。指先の皮膚は、所々めくれ上がり、割と強めの薬を塗り続けても、改善しなかった。寝る前に、薬を指に塗り、サランラップで巻いておくと、少しよくなる。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;一度治っても、またぶり返す&lt;/h4&gt;  &lt;p&gt;家事をしなくなったら、2年ほどで、手の皮膚は元の通り再生された。完全に治ったと思い、洗剤を使って食器を洗っていたら、1ヶ月ほどで、また、皮膚はボロボロ。 (+_+) 元々の皮膚が弱いためか、それとも、一度壊れた皮膚は元には戻らないのだろうか。&lt;/p&gt;  &lt;p&gt;今は、仕方がないので、料理をするとき、手袋をしている。最初、手袋をしたままだと、包丁の感覚がつかめず苦労した。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;エステーの指先強化された手袋&lt;/h4&gt;  &lt;p&gt;料理用の手袋には、色々種類がある。まず、100円ショップで売っているものは、問題外。質が悪すぎて、手を入れているだけで、痛くなる。これは買ってはいけない。&lt;/p&gt;  &lt;p&gt;長いこと愛用していたのは、手袋の内側に毛が付いているタイプ。さわり心地がよいくて、使いやすい。しかし、問題は、一度使うと、手から出る汗が毛に付着し、頻繁に洗濯をする必要がある。洗わずにそのままにしていると、すぐにベタベタとして、気持ち悪くなる。&lt;/p&gt;  &lt;p&gt;&lt;img style="border-bottom: medium none; border-left: medium none; margin: 0px; border-top: medium none; border-right: medium none" border="0" alt="" src="http://www.assoc-amazon.jp/e/ir?t=toubyouland-22&amp;amp;l=as2&amp;amp;o=9&amp;amp;a=B0058QKSH6" width="1" height="1" /&gt; これに対して、最近、愛用しているのは、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;エステー の &lt;a href="http://www.st-c.co.jp/product/category/040/078.html"&gt;ファミリービニールうす手 指先強化&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div style="text-align: center" align="center"&gt;   &lt;table border="0" cellspacing="0" cellpadding="2" width="500"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="250"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0058QKSH6/sakura39-22/" target="_blank"&gt;【Sサイズ ピンク】&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B0058QKSH6/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B0058QKSH6" src="http://ecx.images-amazon.com/images/I/315TpCXt51L._SL500_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td valign="top" width="250"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005QK60Q2/sakura39-22/" target="_blank"&gt;グリーン Mサイズ&lt;/a&gt;             &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B005QK60Q2/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B005QK60Q2" src="http://ecx.images-amazon.com/images/I/31C98guuVKL._SL500_.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h5&gt;手袋の内側が、サラサラの状態が続いて気持ちがいい&lt;/h5&gt;  &lt;p&gt;この製品の特徴は、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;●指先を強化しているので、やぶれにくく、丈夫です。      &lt;br /&gt;●「ドライタッチ加工」を施しているので、着脱がスムーズです。       &lt;br /&gt;●ノンパウダーなので、白い粉が手につきません。       &lt;br /&gt;&lt;strong&gt;●「抗菌・防臭加工」により、カビ・雑菌の繁殖を防ぎ、臭いも抑え衛生的です。&lt;/strong&gt;       &lt;br /&gt;●うす手タイプなので細かな作業に適しています。       &lt;br /&gt;●洗剤、漂白剤に強い塩化ビニル樹脂製です。 &lt;/p&gt;    &lt;p&gt;（同上より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;この中で、重宝しているのは、「抗菌・防臭加工」。これにより、手袋の中がなかなか臭くならないし、サラっとした感触が長く続いている。&lt;/p&gt;  &lt;p&gt;難点は、手袋が薄いので、誤って包丁を当ててしまうと、割と簡単に切れて、穴が開いてしまうこと。今は、なるべるく包丁を当てないよう練習をしている。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-2135958046218606716?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/2135958046218606716/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=2135958046218606716' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2135958046218606716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2135958046218606716'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/10/blog-post.html' title='手肌が弱いなら、エステーのうす手 指先強化 手袋が良さげ'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-8968497852096557948</id><published>2011-10-30T06:07:00.001+09:00</published><updated>2011-10-30T15:51:47.461+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='いいね'/><category scheme='http://www.blogger.com/atom/ns#' term='Facebook'/><title type='text'>Facebook のプロフィールに表示される画像を消すには Delete キーを押す</title><content type='html'>&lt;h4&gt;Facebook ページ上で「いいね」の取り消し&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-DMOBuw4h5Co/Tqzz56hvqfI/AAAAAAAABGI/gY7XO_9tWgs/s1600-h/10-30-20111%25255B8%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="10-30-20111" border="0" alt="10-30-20111" align="right" src="http://lh3.ggpht.com/-xwTZ9ts09oY/TqzxS1dD2qI/AAAAAAAABGQ/7JF1fzKROY4/10-30-20111_thumb.png?imgmax=800" width="373" height="442" /&gt;&lt;/a&gt;Facebook ページで、&lt;strong&gt;画面の上部中央&lt;/strong&gt;にある&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「いいね」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を押すと、対象の分類に従って、自分のプロフィールに当該の画像（アイコン）が表示される。&lt;/p&gt;  &lt;p&gt;「いいね」を取り消したい場合は、同じページの&lt;strong&gt;左下の方&lt;/strong&gt;にある、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「いいね！を取り消す」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を押せば良い。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;外部サイトにあった「いいね」ボタンがなくなっている場合&lt;/h4&gt;  &lt;p&gt;しかし、この方法では、プロフィールから削除できない場合がある。それは、外部サイトに設置されている「いいね」ボタンを押した場合。押したことにより、自分のウォールに「いいね」が表示されると同時に、プロフィールに画像が表示されることがある。&lt;/p&gt;  &lt;p&gt;意図せず、プロフィールに表示されてしまった場合、画像を削除したい。&lt;/p&gt;  &lt;p&gt;その方法は、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;削除したい画像をクリックして、「いいね」をクリックしたページへ飛ぶ。 &lt;/li&gt;    &lt;li&gt;再度「いいね」ボタンを押して、「いいね」を取り消す。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;この操作ができればいいのだけれど、問題は、「いいね」を押したページがなくなっているとき。こういうことは、テレビ局のニュースのページでよくある。一定の期間が過ぎると、ページが削除されてしまう。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-S4mwtPBJ7MI/Tqzz9lt7_6I/AAAAAAAABGU/9ivqlzQUw2M/s1600-h/10-30-20114%25255B4%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="10-30-20114" border="0" alt="10-30-20114" align="right" src="http://lh3.ggpht.com/-uO_hrOdJ9QA/TqzxTqt0J7I/AAAAAAAABGc/8BvRY2dDERI/10-30-20114_thumb.png?imgmax=800" width="316" height="136" /&gt;&lt;/a&gt;この場合は、自分のウォールで、当該の「いいね」をした投稿を探し、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「投稿を削除して「いいね！」を取り消す」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;を選択すればよい。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;ウォールの投稿から、「いいね」を取り消さなかった場合&lt;/h4&gt;  &lt;p&gt;しかし、ここで誤って、&lt;strong&gt;投稿のみを削除&lt;/strong&gt;してしまった場合、プロフィールに削除したい画像が残ってしまう。プロフィールの内容によっては、☓印 があるので、クリックすれば削除できる。しかし、音楽やテレビなどの、娯楽の表示には、これがない。&lt;/p&gt;  &lt;p&gt;どうやっても、削除できないので、困ったなと思っていたら、「&lt;a href="https://www.facebook.com/help/?page=217483488270399"&gt;プロフィール - Facebook ヘルプセンター&lt;/a&gt;」 に、以下のように書かれていた。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;b&gt;テレビ番組を削除するには:&lt;/b&gt; 削除するテレビ番組の画像をクリックし、ボックスの右にある[削除]リンクをクリックするか、キーボードのDeleteキーを押します。&lt;/p&gt;    &lt;p&gt;（&lt;a href="https://www.facebook.com/help/?faq=131692573574228#%E3%83%97%E3%83%AD%E3%83%95%E3%82%A3%E3%83%BC%E3%83%AB%E3%81%A7%E5%A5%BD%E3%81%8D%E3%81%AA%E3%83%86%E3%83%AC%E3%83%93%E7%95%AA%E7%B5%84%E3%82%92%E7%B7%A8%E9%9B%86%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%E3%80%82"&gt;プロフィールで好きなテレビ番組を編集するにはどうすればよいですか。 - Facebook ヘルプセンター&lt;/a&gt; より, via &lt;a href="http://mov-love.blogspot.com/2011/10/facebook.html"&gt;mov-love.blogspot.com: FACEBOOK | プロフィールの編集は「編集」とは言えない を訂正&lt;/a&gt;)&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;この方法には、全く気が付かなかった。(@_@; まさか、そんな方法があるとは知らず、削除するためのページを探したり、「いいね」を取り消す方法を、検索したり。&lt;/p&gt;  &lt;p&gt;ブラウザ上で、文字でもない画像をクリックしたら、消すことができるとは、想定外だった。ブラウザを使って Facebook を見ていたので、無意識に、これまでのブラウザの使い方に思考が縛られていたようだ。&lt;/p&gt;  &lt;p&gt;だんだんと、ブラウザの操作の常識も、サイトの作りによって、変わってくる。&lt;/p&gt;  &lt;p&gt;しかし、プロフィールの編集という、同じ意味合いの操作に対しては、全く同じ UI を提供してくれるといいんだけどなぁ。特に、「好きな活動と趣味・関心」という設定画面は、「アクティビティ」には、☓印があるのに、「趣味・関心」ではないので、まさか、画像を選択して、Delete キーを押せばいいなんて思いもつかなかった。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/-8fvE2Xoown8/Tqzz_X57T4I/AAAAAAAABGg/OuUwvFrMBzM/s1600-h/10-30-20115%25255B5%25255D.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="10-30-20115" border="0" alt="10-30-20115" src="http://lh4.ggpht.com/-pzHehkoCjCk/TqzxU-sEz-I/AAAAAAAABGo/tc27m1APCdQ/10-30-20115_thumb.png?imgmax=800" width="624" height="336" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-8968497852096557948?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/8968497852096557948/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=8968497852096557948' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8968497852096557948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/8968497852096557948'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/10/facebook-delete.html' title='Facebook のプロフィールに表示される画像を消すには Delete キーを押す'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-xwTZ9ts09oY/TqzxS1dD2qI/AAAAAAAABGQ/7JF1fzKROY4/s72-c/10-30-20111_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-7623313645446092900</id><published>2011-10-30T00:30:00.001+09:00</published><updated>2012-01-30T00:12:36.591+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='高階関数'/><category scheme='http://www.blogger.com/atom/ns#' term='fold'/><category scheme='http://www.blogger.com/atom/ns#' term='畳み込み関数'/><category scheme='http://www.blogger.com/atom/ns#' term='データコンストラクタ'/><category scheme='http://www.blogger.com/atom/ns#' term='reduce'/><category scheme='http://www.blogger.com/atom/ns#' term='Haskell'/><title type='text'>Haskell でデータコンストラクタを置き換える高階関数 - reduce について誤解していたこと</title><content type='html'>&lt;h4&gt;0. 目次：&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;1. 型を処理する高階関数を考える視点&lt;/li&gt;    &lt;li&gt;2. リストのデータコンストラクタを置き換える関数&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;a. reduceList 関数の定義&lt;/li&gt;      &lt;li&gt;b. reduceList で要素を足し上げる&lt;/li&gt;      &lt;li&gt;c. reduceList で同じ値を返す&lt;/li&gt;      &lt;li&gt;d. reduceList から map 関数を導く&lt;/li&gt;      &lt;li&gt;e. reduceList から filter 関数&lt;/li&gt;      &lt;li&gt;f. 述語を満たす要素に、特定の関数を適用する&lt;/li&gt;      &lt;li&gt;g. reduceList からリストを結合する関数&lt;/li&gt;      &lt;li&gt;h. reduceList でリストを逆順にする関数&lt;/li&gt;      &lt;li&gt;i. Haskell の標準ライブラリにある foldr &lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;3-1. 二分木でデータコンストラクタを置き換える関数 (1) – 左右の子が必ずある場合&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;a. reduceBinaryTree 関数の定義&lt;/li&gt;      &lt;li&gt;b. reduceBinaryTree 関数から、map, filter 関数を導く&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;3-2. 二分木でデータコンストラクタを置き換える関数 (2) – 左右の子が必ずしも存在しない場合&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;a. reduceBinaryTree 関数の定義&lt;/li&gt;      &lt;li&gt;b. reduceBinaryTree 関数から、map, filter 関数を導く&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;4-1. 0 個以上の子を持つ木で、データコンストラクタを置き換える関数&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;a. reduceTree 関数を定義&lt;/li&gt;      &lt;li&gt;b. 定義済の List a 型の reduceList 関数を利用する場合&lt;/li&gt;      &lt;li&gt;c. reduceTree 関数から map 関数を導く&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;4-2. 木のリストで、データコンストラクタを置き換える関数&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;a. 木のリストのデータコンストラクタを置き換える関数&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;5. 余談： 他の関数を導くための reduce 関数と、畳み込み関数を混同していた&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;a. reduce 関数は、畳み込み関数とは違う&lt;/li&gt;      &lt;li&gt;b. 「畳み込み関数」とは&lt;/li&gt;      &lt;li&gt;c. リストの foldr の定義により混同した&lt;/li&gt;      &lt;li&gt;d. その型を処理する高階関数を何と呼ぶべきか？&lt;/li&gt;      &lt;li&gt;e. fold, reduce の言葉の意味について&lt;/li&gt;      &lt;li&gt;f. reduce 関数を理解するために重要な点&lt;/li&gt;      &lt;li&gt;g. reduce 関数とは何か？&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;1. 型を処理する高階関数を考える視点&lt;/h4&gt;  &lt;p&gt;「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数プログラミングは重要か&lt;/a&gt;」には、&lt;a href="http://ja.wikipedia.org/wiki/%E9%AB%98%E9%9A%8E%E9%96%A2%E6%95%B0"&gt;高階関数&lt;/a&gt;の利点について、次のように述べられている。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;… 高階関数は、一度定義すると、非常に簡単に数多くの演算をプログラムすることができる。&lt;strong&gt;新しいデータ型を定義したときにその型を処理する高階関数を書くべきである&lt;/strong&gt;。そうすれば、そのデータ型の取り扱いが簡単になり、その表現の詳細に関する知識を局所化できる。&lt;/p&gt;    &lt;p&gt;（「3. 関数の貼り合せ」より、装飾は引用者による、以下、「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数...&lt;/a&gt;」と略す）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;上記で述べられている、高階関数を定義するポイントは、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;対象となる型の「データコンストラクタを置き換える関数」を与える関数 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;を考えること。 &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;&lt;a name="list"&gt;&lt;/a&gt;2. リストのデータコンストラクタを置き換える関数&lt;/h4&gt;  &lt;p align="left"&gt;Haskell では、リストを書くのに、特別な記法が用意されている。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.sampou.org/haskell/report-revised-j/basic.html#basic-lists"&gt;The Haskell 98 Report: 定義ずみの型とクラス&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;tt&gt;data [a] = [] | a : [a] deriving (Eq, Ord)&lt;/tt&gt;&lt;/p&gt;    &lt;p&gt;リストは、二つの構築子をもつ代数的データ型であるが、&lt;a href="http://www.sampou.org/haskell/report-revised-j/exps.html#lists"&gt;3.7&lt;/a&gt; 節で述べたように特別な構文をもつ。最初 の構築子は空リストで、`&lt;tt&gt;[]&lt;/tt&gt;' (「ニル」)と書く。二つ目の構築子 は、`&lt;tt&gt;:&lt;/tt&gt;' (「コンス」)と書く。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="left"&gt;ただし、「データコンストラクタを置き換えること」を考える場合、Haskell で用意されているリストの記法を使うよりも、自分でリスト型を定義して考える方が理解しやすい。&lt;/p&gt;  &lt;p align="left"&gt;理由は、リストに適用する関数を定義するとき、パターンマッチで、(:) を二項演算子のようにして書くことが多いため。例えば、リストの長さを知るための関数 length を、以下のように定義したとする。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;length []     = 0
length (x&lt;strong&gt;:&lt;/strong&gt;xs) = 1 + length xs&lt;/pre&gt;

&lt;p align="left"&gt;2行目のパターンマッチを、二項演算子のような扱いをせず、以下のように書くこともできる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;length (&lt;strong&gt;(:)&lt;/strong&gt; x xs) = 1 + length xs&lt;/pre&gt;

&lt;p align="left"&gt;このように書いた方が、「データコンストラクタを置き換える」ことを考えるとき、置き換える対象の対応をつけやすい。しかし、あまり、後者のような書き方をしているのを見たことがない。&lt;/p&gt;

&lt;p&gt;そのため、ここではリスト型を、以下のように定義したものを使う。Haskell のリストと同じように、リストの末尾が空リスト。リストに追加する要素を、リストの先頭に追加することを意図した代数的データ型の定義。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;data List a = Nil
            | Cons a (List a)
              deriving Show&lt;/pre&gt;

&lt;p&gt;List a 型のデータコンストラクタは 2 つ。これを次のようなものだと考える。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Cons は 2 つの引数を取る関数。 &lt;/li&gt;

  &lt;li&gt;Nil は引数がない関数、もしくは、定数。 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;実際、データコンストラクタの型を調べて見ると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Main&amp;gt; :t Cons
Cons :: a -&amp;gt; List a -&amp;gt; List a
*Main&amp;gt; :t Nil
Nil :: List a&lt;/pre&gt;

&lt;p&gt;この List a 型のデータコンストラクタを使い、適当に値を作る。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;xs = Cons 1 (Cons 2 (Cons 3 Nil))&lt;/pre&gt;

&lt;p&gt;ここで、上記の変数 xs の値を見ながら、「データコンストラクタを置き換えるを関数」をイメージする。&lt;/p&gt;

&lt;p&gt;データコンストラクタと置き換える関数とは、具体的には、&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Cons に対応した、2 つの引数を取る任意の関数 f &lt;/li&gt;

  &lt;li&gt;Nil に対応した、任意の値である z &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;データコンストラクタを、任意の関数 f, z で置き換えた状態を、変数 xs で考えると、以下のようになる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&lt;strong&gt;f&lt;/strong&gt; 1 (&lt;strong&gt;f&lt;/strong&gt; 2 (&lt;strong&gt;f&lt;/strong&gt; 3 &lt;strong&gt;z&lt;/strong&gt;))&lt;/pre&gt;

&lt;p align="center"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="09-26-20111" border="0" alt="09-26-20111" src="http://lh3.ggpht.com/-JpGaJu7qSic/TqwcBrOo80I/AAAAAAAABEA/Uu4FsudpsSM/09-26-201113.png?imgmax=800" width="361" height="125" /&gt;&lt;/p&gt;

&lt;p&gt;上記の計算において、関数 f, z に具体的な関数を与え、変数を評価すれば、値を得ることができる。f, z は任意の関数なので、目的に応じて、行いたい計算を与えれば、データコンストラクタが持っていた値を用いて、計算できる。&lt;/p&gt;

&lt;p&gt;データコンストラクタは、パターンマッチに利用できる特殊な関数であることを除けば、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;f 1 (f 2 (f 3 z))&lt;/pre&gt;

&lt;p&gt;という計算から導かれた、特殊な一形態に過ぎないと見ることができる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;a. reduceList 関数の定義&lt;/h5&gt;

&lt;p&gt;では、リストのデータコンストラクタを、任意の関数に置き換える reduceList を定義する。&lt;/p&gt;

&lt;p&gt;データコンストラクタ Nil に対する定義は簡単。 Nil を z で置き換えればいいので、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceList f z &lt;strong&gt;Nil&lt;/strong&gt;         = &lt;strong&gt;z&lt;/strong&gt;   &lt;/pre&gt;

&lt;p align="left"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6183976168/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="09-26-20112" border="0" alt="09-26-20112" align="right" src="http://lh4.ggpht.com/-l7RONYF9M-8/TqwcCTAGxgI/AAAAAAAABEI/dmWWXZzp_xc/09-26-201123.png?imgmax=800" width="191" height="150" /&gt;&lt;/a&gt;データコンストラクタ Cons は、再帰的な視点が必要になる。まずは、細かいことを考えずに、Cons の部分を f に置き換えてみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceList f z (&lt;strong&gt;Cons&lt;/strong&gt; x xs) = &lt;strong&gt;f&lt;/strong&gt; x xs   &lt;/pre&gt;

&lt;p align="left"&gt;この定義では、パターンマッチで Cons が分解した、List a 型の値である xs に対して、何も行なっていない。&lt;/p&gt;

&lt;p align="left"&gt;試しに、この定義のまま、reduceList 関数の型を確認すると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*List&amp;gt; :t reduceList
reduceList :: (t1 -&amp;gt; &lt;strong&gt;List t1&lt;/strong&gt; -&amp;gt; t) -&amp;gt; t -&amp;gt; List t1 -&amp;gt; t&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6271718809/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-23-20113" border="0" alt="10-23-20113" align="right" src="http://lh4.ggpht.com/-iubkcanCMuA/TqwcDFS3p2I/AAAAAAAABEM/l-ULcaiGL1Y/10-23-201133.png?imgmax=800" width="235" height="192" /&gt;&lt;/a&gt;reduceList 関数の第1引数には、二項演算子を与える。ただし、今のままでは、その第1引数は、&lt;strong&gt;List t1 型&lt;/strong&gt;に固定されている。この型を、reduceList 関数の第1引数が返す値と同じ、任意の型 t になるような定義にしたい。そのためには、データコンストラクタ Cons の、再帰的な定義に注目する。&lt;/p&gt;

&lt;p&gt;reduceList 関数の第１引数 f は、データコンストラクタ Cons を置き換えることを目的としていた。reduceList 関数の適用対象である、第３引数の Cons x xs のの xs はリスト型。この変数 xs の個々の要素に対して、 Cons を、関数 f で置き換えたい。そのためには、再帰的に、reduceList 関数を適用していけばよい。&lt;/p&gt;

&lt;p&gt;よって、以下の定義となる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceList f z (Cons x &lt;strong&gt;xs&lt;/strong&gt;) = f x (&lt;strong&gt;reduceList f z xs&lt;/strong&gt;)&lt;/pre&gt;

&lt;p&gt;これにより、reduceList の第1引数の関数の型が、リスト型から解放される。&lt;/p&gt;

&lt;p&gt;もう一度、reduceList 関数の型を確認してみると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*List&amp;gt; :t reduceList
reduceList :: (t1 -&amp;gt; &lt;strong&gt;t&lt;/strong&gt; -&amp;gt; t) -&amp;gt; t -&amp;gt; List t1 -&amp;gt; t&lt;/pre&gt;

&lt;p&gt;繰り返しになるが、 reduceList の引数 z は Nil と置き換えることを意図し、f は Cons と置き換えることを意図していた。この 2 つ引数が必要なのは、リストのデータコンストラクタは２種類存在し、reduceList 関数は、その２つを置き換えることを目的としていたから。&lt;/p&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/d9f95fae9fe974a8e3ed3e7f59801c3c2eef7294"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;b. reduceList で要素を足し上げる&lt;/h5&gt;

&lt;p&gt;最初に、reduceList 関数を使い、リストの要素を足し上げてみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*List&amp;gt; reduceList (+) 0 xs
6&lt;/pre&gt;

&lt;p&gt;これは、リストのデータコンストラクタ Cons を (+) で置き換え、Nil を 0 で置き換えて、計算を行なっている、とイメージすることができる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&lt;strong&gt;(+)&lt;/strong&gt; 1 (&lt;strong&gt;(+)&lt;/strong&gt; 2 (&lt;strong&gt;(+)&lt;/strong&gt; 3 &lt;strong&gt;0&lt;/strong&gt;))&lt;/pre&gt;

&lt;p&gt;この例から、reduceList 関数は、リストのデータコンストラクタに位置するものを、他の関数や値に置き換えていることを実感できる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;c. reduceList で同じ値を返す&lt;/h5&gt;

&lt;p&gt;次に、与えられたリストを、変化させずに返す関数を定義してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;idList = reduceList Cons Nil&lt;/pre&gt;

&lt;p&gt;これは、以下のように元の値が生成される。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&lt;strong&gt;Cons&lt;/strong&gt; 1 (&lt;strong&gt;Cons&lt;/strong&gt; 2 (&lt;strong&gt;Cons&lt;/strong&gt; 3 Nil))&lt;/pre&gt;

&lt;p&gt;一度、与えられた値を分解し、それをまた同じ種類の関数で、貼り付け直すイメージ。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;d. reduceList から map 関数を導く&lt;/h5&gt;

&lt;p align="left"&gt;リストの各要素に、関数を適用する関数を mapList とする。&lt;/p&gt;

&lt;p align="left"&gt;これまでと同様に、データコンストラクタを置き換えるイメージで行えばよい。&lt;/p&gt;

&lt;p align="left"&gt;考えるための元の計算の形は、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;f 1 (f 2 (f 3 z))&lt;/pre&gt;

&lt;p align="left"&gt;まずは、関数 f に相当するものは何か？その適用対象は何か？を考える。&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;関数 f の第１引数は、データコンストラクタ Cons が持っている値。（ Cons x xs の x の方）&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;第 2 引数は、後方のリスト。( Cons x xs の xs の方)&lt;/div&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p align="left"&gt;mapList 関数は、リストの要素に対して、関数を適用したいので、Cons x xs の x に対して関数を適用する。 xs の方はそのままで、何もしない。よって、関数 f は以下のように定義できる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;\x xs -&amp;gt; Cons (&lt;strong&gt;f x&lt;/strong&gt;) xs&lt;/pre&gt;

&lt;p&gt;上記の無名関数を、f と置き換え、適用するところを、一部イメージすると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;(\x xs -&amp;gt; Cons (f x) xs) &lt;strong&gt;1 (...)&lt;/strong&gt;&lt;/pre&gt;

&lt;p&gt;最後まで書くと、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;(\x xs -&amp;gt; Cons (f x) xs) 1 ((\x xs -&amp;gt; Cons (f x) xs) 2 ((\x xs -&amp;gt; Cons (f x) xs) 3 Nil))&lt;/pre&gt;

&lt;p&gt;よって、mapList 関数の定義は、以下のようになる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapList f = reduceList (\x xs -&amp;gt; Cons (f x) xs) Nil&lt;/pre&gt;

&lt;p&gt;関数を合成するための関数 &lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#v:."&gt;(.)&lt;/a&gt; を使うなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapList f = reduceList (Cons . f) Nil&lt;/pre&gt;

&lt;p align="left"&gt;&lt;/p&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/3d8365b9cc75aec65c5e71ef4231d6052a7b641d"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;e. reduceList から filter 関数&lt;/h5&gt;

&lt;p&gt;次に、リストの要素から、述語 p を満たす要素のみを抽出する filterList 関数を定義したい。&lt;/p&gt;

&lt;p&gt;この場合も、mapList を定義したときと同じように、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;「データコンストラクタを置き換えた場合、どう定義すればいいのか？」&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;を考えれば良い。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;filterList p = reduceList (\x xs -&amp;gt; 
                             if p x then Cons x xs
                             else xs) 
                          Nil&lt;/pre&gt;

&lt;p&gt;実際に使ってみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*List&amp;gt; filterList even xs
Cons 2 Nil
*List&amp;gt; filterList odd xs
Cons 1 (Cons 3 Nil)&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;f. 述語を満たす要素に、特定の関数を適用する&lt;/h5&gt;

&lt;p&gt;mapList と filterList を定義できたので、2つの関数を合成して、「述語を満たす要素を抽出して、特定の関数を適用する関数」を定義してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapListIf p f = mapList f . filterList p&lt;/pre&gt;

&lt;p&gt;この関数を使うと、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*List&amp;gt; mapListIf even (* 10) xs
Cons 20 Nil
*List&amp;gt; mapListIf odd (* 10) xs
Cons 10 (Cons 30 Nil)&lt;/pre&gt;

&lt;p&gt;ただし、この定義だと、述語を満たさない要素は、取り除かれてしまう。&lt;/p&gt;

&lt;p&gt;述語を満たさない要素も、そのままリストに残したい場合は、reduceList 関数から、導くことができる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapListIf p f = reduceList (\x xs -&amp;gt;
                              if p x then Cons (f x) xs
                              else &lt;strong&gt;Cons x xs&lt;/strong&gt;)
                           Nil&lt;/pre&gt;

&lt;p&gt;試してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*List&amp;gt; mapListIf even (* 10) xs
Cons 1 (Cons 20 (Cons 3 Nil))
*List&amp;gt; mapListIf odd (* 10) xs
Cons 10 (Cons 2 (Cons 30 Nil))&lt;/pre&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/af70af0fc115b8325a47c4227aa2ca9796081816"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;g. reduceList からリストを結合する関数&lt;/h5&gt;

&lt;p&gt;リスト同士を結合したいときは、どうすれば良いだろう？&lt;/p&gt;

&lt;p&gt;これまでと同じように、以下の式に戻り、&lt;strong&gt;z&lt;/strong&gt; に結合したいリストを当てはめればいいことがわかる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;f 1 (f 2 (f 3 &lt;strong&gt;z&lt;/strong&gt;))&lt;/pre&gt;

&lt;p&gt;よって、関数名を appendList とすると、関数 f には Cons を与え、z には結合したいリストを与える。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;appendList xs1 &lt;strong&gt;xs2&lt;/strong&gt; = reduceList Cons &lt;strong&gt;xs2&lt;/strong&gt; xs1&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;h. reduceList でリストを逆順にする関数&lt;/h5&gt;

&lt;p&gt;リストを逆順にするには、以下の計算の形から考えて、関数 f の第1引数を、第2引数の後ろに結合することによって定義できることがわかる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;f &lt;strong&gt;1&lt;/strong&gt; &lt;em&gt;(f 2 (f 3 z))&lt;/em&gt;&lt;/pre&gt;

&lt;p&gt;よって、上記で定義した appendList 関数を用いて、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reverseList = reduceList (\x xs -&amp;gt; xs `appendList` (Cons x Nil)) Nil&lt;/pre&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/1c5ab36d8f5800be6784ece6668d054f236b2f38"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;i. Haskell の標準ライブラリにある foldr &lt;/h5&gt;

&lt;p&gt;ここまで来ると、Haskell の標準ライブラリにある &lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/src/GHC-Base.html#foldr"&gt;foldr&lt;/a&gt; も、リストのデータコンストラクタを、置き換える関数を定義することを考えるだけで良いことがわかる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;foldr            :: (a -&amp;gt; b -&amp;gt; b) -&amp;gt; b -&amp;gt; [a] -&amp;gt; b
foldr _ z []     =  z
foldr f z (x:xs) =  f x (foldr f z xs)&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="binarytree1"&gt;&lt;/a&gt;3-1. 二分木でデータコンストラクタを置き換える関数 (1) – 左右の子が必ずある場合&lt;/h4&gt;

&lt;p&gt;次に、&lt;a href="http://ja.wikipedia.org/wiki/%E4%BA%8C%E5%88%86%E6%9C%A8"&gt;二分木&lt;/a&gt;で、データコンストラクタを置き換える関数を考える。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6271730496/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-23-201123" border="0" alt="10-23-201123" align="right" src="http://lh6.ggpht.com/-Q0PnEFvw6Bk/TqwcDzuOYdI/AAAAAAAABEU/YIkvy2srjFA/10-23-20112314.png?imgmax=800" width="171" height="192" /&gt;&lt;/a&gt;先ほどのリスト型と同じように、型の定義をし、適当に値を作成する。ただし、この二分木は、左右の子を必ず持つとする。（&lt;a href="http://ja.wikipedia.org/wiki/%E4%BA%8C%E5%88%86%E6%9C%A8#.E7.A8.AE.E9.A1.9E"&gt;全二分木&lt;/a&gt;）&lt;/p&gt;

&lt;pre class="prettyprint"&gt;data BinaryTree a = Leaf a 
                  | Branch (BinaryTree a) a (BinaryTree a)
                    deriving Show

btree = Branch (Leaf 1)
               2
               (Branch (Leaf 4)
                       3
                       (Leaf 5)) &lt;/pre&gt;

&lt;p&gt;ここで、上記の変数 btree の値を見ながら、「データコンストラクタを置き換えるを関数」をイメージする。&lt;/p&gt;

&lt;p&gt;データコンストラクタと置き換える関数とは、具体的には、&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Branch に対応した、3 つの引数を取る任意の関数 f &lt;/li&gt;

  &lt;li&gt;Leaf に対応した、 1 つの引数を取る任意の関数 g &lt;/li&gt;
&lt;/ul&gt;

&lt;p align="left"&gt;データコンストラクタを、任意の関数 f, g で置き換えた状態を、変数 btree で考えると、以下のようになる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&lt;strong&gt;f&lt;/strong&gt; (&lt;strong&gt;g&lt;/strong&gt; 1)
  2
  (&lt;strong&gt;f&lt;/strong&gt; (&lt;strong&gt;g&lt;/strong&gt; 4)
     3
     (&lt;strong&gt;g&lt;/strong&gt; 5)) &lt;/pre&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6271725840/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-23-201116" border="0" alt="10-23-201116" src="http://lh6.ggpht.com/-V0Z0_POkB6M/TqwcEfZIQFI/AAAAAAAABEg/zEi3BsoElrw/10-23-20111614.png?imgmax=800" width="368" height="257" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;リストで考えたときと同じように、関数 f, g に具体的な関数を与えれば、値を得ることができる。f, g は任意の関数なので、目的に応じて、データコンストラクタが持っている値を用いて計算できる。&lt;/p&gt;

&lt;p&gt;データコンストラクタによって、生成された値は、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;f (g 1)
  2
  (f (g 4)
     3
     (g 5)) &lt;/pre&gt;

&lt;p&gt;の形から導かれた、特殊な一形態と見ることができる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;a. reduceBinaryTree 関数の定義&lt;/h5&gt;

&lt;p&gt;では、二分木のデータコンストラクタを、任意の関数に置き換える reduceBinaryTree を定義してみる。&lt;/p&gt;

&lt;p&gt;データコンストラクタが Leaf のときは簡単。Leaf を g と置き換えるだけ。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceBinaryTree f g (&lt;strong&gt;Leaf&lt;/strong&gt; x) = &lt;strong&gt;g&lt;/strong&gt; x&lt;/pre&gt;

&lt;p&gt;データコンストラクタ Branch を考えるときは、再帰的な視点が必要。まずは、 Branch を f に置き換えるだけの定義。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceBinaryTree f g (&lt;strong&gt;Branch&lt;/strong&gt; l x r) = &lt;strong&gt;f&lt;/strong&gt; l x r&lt;/pre&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6272257024/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-23-201154" border="0" alt="10-23-201154" src="http://lh3.ggpht.com/-0ftRdXQ7BAY/TqwcFUshPyI/AAAAAAAABEk/Kam6A4wbtAM/10-23-20115414.png?imgmax=800" width="232" height="166" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;この場合、関数の型は、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*BinaryTree&amp;gt; :t reduceBinaryTree
reduceBinaryTree
  :: (&lt;strong&gt;BinaryTree t&lt;/strong&gt; -&amp;gt; t -&amp;gt; &lt;strong&gt;BinaryTree t&lt;/strong&gt; -&amp;gt; t1)
     -&amp;gt; (t -&amp;gt; t1)
     -&amp;gt; BinaryTree t
     -&amp;gt; t1&lt;/pre&gt;

&lt;p&gt;reduceBinaryTree 関数の第1引数に注目すると、その第1, 3引数が、BinaryTree t 型に固定されていることがわかる。この制約をなくすには、BinaryTree a 型の再帰的な構造基づいて、左と右の木に対して、reduceBinaryTree 関数を適用する必要がある。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceBinaryTree f g (Branch l x r) = f (&lt;strong&gt;reduceBinaryTree f g l&lt;/strong&gt;) 
                                        x 
                                        (&lt;strong&gt;reduceBinaryTree f g r&lt;/strong&gt;)&lt;/pre&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6272270960/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-23-201164" border="0" alt="10-23-201164" src="http://lh3.ggpht.com/-aIe_JXnffSI/TqwcGD96sHI/AAAAAAAABEw/tB-Id5yUQJQ/10-23-20116414.png?imgmax=800" width="306" height="202" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;型を確認すると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*BinaryTree&amp;gt; :t reduceBinaryTree
reduceBinaryTree
  :: (&lt;strong&gt;t1&lt;/strong&gt; -&amp;gt; t -&amp;gt; &lt;strong&gt;t1&lt;/strong&gt; -&amp;gt; t1) -&amp;gt; (t -&amp;gt; t1) -&amp;gt; BinaryTree t -&amp;gt; t1&lt;/pre&gt;

&lt;p&gt;これで、データコンストラクタ Branch を関数 f で、Leaf を g で置き換える関数を定義できた。リストのときと同じように、データコンストラクタの形に注目して、置き換えただけ。&lt;/p&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/ed262b2865292cad38763045849e62eb7cbda6a6"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;b. reduceBinaryTree 関数から、map, filter 関数を導く&lt;/h5&gt;

&lt;p&gt;最初に、reduceBinaryTree 関数を使い、二分木の要素から計算を行なってみる。方法は、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;木の子ども同士は、掛け合わせ、 &lt;/li&gt;

  &lt;li&gt;親子の間は、足し上げる &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;とする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*BinaryTree&amp;gt; reduceBinaryTree (\l x r -&amp;gt; x + l * r) id btree
25&lt;/pre&gt;

&lt;p&gt;次に、元の BinaryTree a 型の値を変化させず、元の値と同じ値を返す関数を定義する。reduceBinaryTree 関数に、データコンストラクタを渡すだけなので、簡単。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;idBinaryTree = reduceBinaryTree Branch Leaf&lt;/pre&gt;

&lt;p&gt;木の要素に、関数を適用する関数を、mapBinaryTree 関数とすると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapBinaryTree f = reduceBinaryTree (\l x r -&amp;gt; Branch l (f x) r) (Leaf . f)&lt;/pre&gt;

&lt;p&gt;使ってみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*BinaryTree&amp;gt; mapBinaryTree (*2) btree
Branch (Leaf 2) 4 (Branch (Leaf 8) 6 (Leaf 10))&lt;/pre&gt;

&lt;p&gt;特定の条件を満たすノードをリストとして返す関数を、filterBinaryTree2List とすると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;filterBinaryTree2List p = reduceBinaryTree (\l x r -&amp;gt; 
                                            let lr = l `appendList` r
                                            in if p x then Cons x lr
                                               else lr)
                                           (\x -&amp;gt; if p x then Cons x Nil
                                                  else Nil)&lt;/pre&gt;

&lt;p&gt;使ってみる&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*BinaryTree&amp;gt; filterBinaryTree2List odd btree
Cons 1 (Cons 3 (Cons 5 Nil))&lt;/pre&gt;

&lt;p align="left"&gt;( cf.&lt;a href="https://gist.github.com/1322202/769e3da9d1fd67d9e12828538504b4f4056dccfa"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="binarytree2"&gt;&lt;/a&gt;3-2. 二分木でデータコンストラクタを置き換える関数 (2) – 左右の子が必ずしも存在しない場合&lt;/h4&gt;

&lt;p&gt;上記の二分木は、左右の子どもを必ず持つ二分木だった。これを、左右の子を必ずしも持たない構造に変更する。&lt;/p&gt;

&lt;p&gt;まずは、型の定義から。子がない場合は、データコンストラクタ Empty で表現することにする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;data BinaryTree a = &lt;strong&gt;Empty&lt;/strong&gt;
                  | Leaf a
                  | Branch (BinaryTree a) a (BinaryTree a)
                    deriving Show&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6272571156/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-23-201185" border="0" alt="10-23-201185" align="right" src="http://lh4.ggpht.com/-1tRX0D-jn1c/TqwcGgqxnmI/AAAAAAAABE4/gtJypwnI7e4/10-23-20118514.png?imgmax=800" width="144" height="247" /&gt;&lt;/a&gt;適当に値を作る。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;btree = Branch (Leaf 1)
               2
               (Branch (Branch Empty
                               4
                               (Leaf 5))
                       3
                       Empty)&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;a. reduceBinaryTree 関数の定義&lt;/h5&gt;

&lt;p&gt;今回は、先ほどの二分木と比べ、データコンストラクタが一つ増えた。よって、データコンストラクタを置き換える、reduceBinaryTree 関数を定義するとき、引数を一つ増やす必要がある。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceBinaryTree f g z &lt;strong&gt;Empty&lt;/strong&gt;          = &lt;strong&gt;z&lt;/strong&gt;
reduceBinaryTree f g z (Leaf x)       = g x
reduceBinaryTree f g z (Branch l x r) = f (reduceBinaryTree f g z l)
                                          x
                                          (reduceBinaryTree f g z r)&lt;/pre&gt;

&lt;p&gt;reduceBinaryTree 関数を使い、二分木の要素の値を利用して、計算を行なってみる。方法は、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;木の子ども同士は、掛け合わせ、 &lt;/li&gt;

  &lt;li&gt;親子の間は、足し上げる &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;とする。ただし、Empty に相当する子はの値を 1 として、計算を行う。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Main&amp;gt; reduceBinaryTree (\l x r -&amp;gt; x + l * r) id 1 btree
14&lt;/pre&gt;

&lt;p align="left"&gt;( cf.&lt;a href="https://gist.github.com/1322202/5911c3f66ecafd76b2bc7ff6c6d6a903227de820"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;b. reduceBinaryTree 関数から、map, filter 関数を導く&lt;/h5&gt;

&lt;p&gt;各要素に関数を適用する mapBinaryTree 関数を定義する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapBinaryTree f = reduceBinaryTree (\l x r -&amp;gt; Branch l (f x) r)
                                   (Leaf . f)
                                   Empty&lt;/pre&gt;

&lt;p&gt;使ってみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Main&amp;gt; mapBinaryTree (*2) btree
Branch (Leaf 2) 4 (Branch (Branch Empty 8 (Leaf 10)) 6 Empty)&lt;/pre&gt;

&lt;p&gt;特定の条件を満たすノードをリストとして返す関数を、filterBinaryTree2List とすると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;filterBinaryTree2List p = reduceBinaryTree (\l x r -&amp;gt; 
                                            let lr = l `appendList` r
                                            in if p x then Cons x lr
                                               else lr)
                                           (\x -&amp;gt; if p x then Cons x Nil
                                                  else Nil)
                                           Nil&lt;/pre&gt;

&lt;p&gt;使ってみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*BinaryTree&amp;gt; filterBinaryTree2List even btree
Cons 2 (Cons 4 Nil)&lt;/pre&gt;

&lt;p&gt;これで、データコンストラクタを置き換える関数を定義したい場合、データコンストラクタの数に合わせて、引数を増やさなければならないことが確認できた。&lt;/p&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/c76cd1d8a40f8053e2d15205024af50d104b428e"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="tree"&gt;&lt;/a&gt;4-1. 0 個以上の子を持つ木で、データコンストラクタを置き換える関数&lt;/h4&gt;

&lt;p&gt;次に、0 個以上の子を持つ木で、データコンストラクタを置き換える関数を定義してみる。&lt;/p&gt;

&lt;p&gt;型の定義は、木が、木のリストを子として持つと想定する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;data Tree a = Node a (List (Tree a)) deriving Show&lt;/pre&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6278861619/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-25-201143" border="0" alt="10-25-201143" align="right" src="http://lh3.ggpht.com/-POedwWgrRj0/TqwcHVBZVWI/AAAAAAAABFA/UoYjli7e2U8/10-25-20114314.png?imgmax=800" width="197" height="192" /&gt;&lt;/a&gt;適当に Tree a 型の値を作る。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;tree = Node 1 
            (Cons (Node 2 Nil)      
            (Cons (Node 3 
                        (Cons (Node 5 Nil) 
                        (Cons (Node 6 Nil) Nil)))
            (Cons (Node 4 Nil) Nil)))&lt;/pre&gt;

&lt;p align="left"&gt;変数 tree で使われているデータコンストラクタは 3 つある。よって、データコンストラクタを置き換える関数を 3 つ考える必要がある。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;Node に対応した、2 つの引数を取る任意の関数 f &lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;Cons に対応した、2 つの引数を取る任意の関数 g &lt;/li&gt;

  &lt;li&gt;Nil に対応した、任意の値である z &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;変数 tree を、関数 f, g, z で置き換えたところを考えると、以下のようになる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&lt;p&gt;&lt;strong&gt;f&lt;/strong&gt; 1 
  (&lt;strong&gt;g&lt;/strong&gt; (&lt;strong&gt;f&lt;/strong&gt; 2 &lt;strong&gt;z&lt;/strong&gt;) 
  (&lt;strong&gt;g&lt;/strong&gt; (&lt;strong&gt;f&lt;/strong&gt; 3 
        (&lt;strong&gt;g&lt;/strong&gt; (&lt;strong&gt;f&lt;/strong&gt; 5 &lt;strong&gt;z&lt;/strong&gt;)   &lt;br /&gt;        (&lt;strong&gt;g&lt;/strong&gt; (&lt;strong&gt;f&lt;/strong&gt; 6 &lt;strong&gt;z&lt;/strong&gt;) &lt;strong&gt;z&lt;/strong&gt;)))
  (&lt;strong&gt;g&lt;/strong&gt; (&lt;strong&gt;f&lt;/strong&gt; 4 &lt;strong&gt;z&lt;/strong&gt;) &lt;strong&gt;z&lt;/strong&gt;)))&lt;/p&gt;&lt;/pre&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6278884889/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-25-201156" border="0" alt="10-25-201156" src="http://lh6.ggpht.com/-3LEFSIun8bs/TqwcIHlBsyI/AAAAAAAABFI/T-ZyxpS7mvQ/10-25-20115614.png?imgmax=800" width="558" height="327" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;a. reduceTree 関数を定義&lt;/h5&gt;

&lt;p&gt;reduceTree 関数を定義するために、順にデータコンストラクタを置き換えてみる。&lt;/p&gt;

&lt;p&gt;まずは、Node を f へ 置き換え。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceTree f g z (&lt;strong&gt;Node&lt;/strong&gt; x trees) = &lt;strong&gt;f&lt;/strong&gt; x trees&lt;/pre&gt;

&lt;p&gt;当然ながら、この時点で、型は意図したものではない。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; :t reduceTree
reduceTree
  :: (t2 -&amp;gt; &lt;strong&gt;List (Tree t2)&lt;/strong&gt; -&amp;gt; t3) -&amp;gt; t -&amp;gt; t1 -&amp;gt; Tree t2 -&amp;gt; t3&lt;/pre&gt;

&lt;p&gt;次に、パターンマッチで束縛された変数 trees に対して、データコンストラクタの置き換えを行う。この関数を、とりあえず reduceTree’ としておく。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceTree f g z (Node x &lt;strong&gt;trees&lt;/strong&gt;) =&lt;strong&gt; &lt;/strong&gt;f x (&lt;strong&gt;reduceList' trees&lt;/strong&gt;)
    where
      reduceList' = undefined&lt;/pre&gt;

&lt;p&gt;変数 trees は、Tree a 型のリストだった。「リスト」なので、データコンストラクタ Nil と Cons の置き換えを考える。以下、reduceList’ 関数の部分だけ見ていく。 &lt;/p&gt;

&lt;p&gt;Nil の場合は、z と置き換えるだけなので、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;      reduceList' &lt;strong&gt;Nil&lt;/strong&gt;               = &lt;strong&gt;z&lt;/strong&gt;&lt;/pre&gt;

&lt;p&gt;Cons の場合は、とりあえず、Cons だけ g に置き換える。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;      reduceList' (&lt;strong&gt;Cons&lt;/strong&gt; tree trees) = &lt;strong&gt;g&lt;/strong&gt; &lt;em&gt;tree&lt;/em&gt; trees&lt;/pre&gt;

&lt;p&gt;変数 tree は、Tree a 型なので、再帰的に reduceTree を適用する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;      reduceList' (Cons &lt;strong&gt;tree&lt;/strong&gt; trees) = g (&lt;strong&gt;reduceTree f g z tree&lt;/strong&gt;) &lt;em&gt;trees&lt;/em&gt;&lt;/pre&gt;

&lt;p&gt;変数 trees は Tree a 型のリストなので、これも再帰的に適用する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;      reduceList' (Cons tree &lt;strong&gt;trees&lt;/strong&gt;) = g (reduceTree f g z tree)
                                        (&lt;strong&gt;reduceList' trees&lt;/strong&gt;)&lt;/pre&gt;

&lt;p&gt;これで完成。全体を示す。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceTree f g z (Node x trees) = f x (reduceList' trees)
    where
      reduceList' Nil               = z
      reduceList' (Cons tree trees) = g (reduceTree f g z tree)
                                        (reduceList' trees)&lt;/pre&gt;

&lt;p&gt;型を確認する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; :t reduceTree
reduceTree
  :: (t1 -&amp;gt; t -&amp;gt; t2) -&amp;gt; (t2 -&amp;gt; t -&amp;gt; t) -&amp;gt; t -&amp;gt; Tree t1 -&amp;gt; t2&lt;/pre&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/2ef573138987491797efd7c7b0f164b0b4dfc084"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;b. 定義済の List a 型の reduceList 関数を利用する場合&lt;/h5&gt;

&lt;p&gt;ところで、List a 型の「データコンストラクタを置き換える関数」は、既に定義していた。これを利用して reduceTree 関数を定義しなおしてみる。&lt;/p&gt;

&lt;p&gt;まずは、変数 trees がリストだったので、これに reduceList 関数を適用する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceTree f g z (Node x &lt;em&gt;trees&lt;/em&gt;) = f x (&lt;strong&gt;reduceList g z &lt;em&gt;trees&lt;/em&gt;&lt;/strong&gt;)&lt;/pre&gt;

&lt;p&gt;型を確認したら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; :t reduceTree
reduceTree
  :: (t -&amp;gt; t1 -&amp;gt; t2) -&amp;gt; (&lt;strong&gt;Tree t&lt;/strong&gt; -&amp;gt; t1 -&amp;gt; t1) -&amp;gt; t1 -&amp;gt; Tree t -&amp;gt; t2&lt;/pre&gt;

&lt;p&gt;第2引数の、関数の第1引数に、Tree t 型という制約が付いてしまった。(+_+)&lt;/p&gt;

&lt;p&gt;そういえば、変数 trees は、&lt;strong&gt;Tree a 型のリスト&lt;/strong&gt;だった。よって、リストの要素である Tree a 型の各々の値に対して、reduceTree 関数を適用する必要がある。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceTree f g z (Node x trees) = 
    f x (reduceList g z (&lt;strong&gt;mapList (reduceTree f g z) trees&lt;/strong&gt;))&lt;/pre&gt;

&lt;p&gt;型を確認する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; :t reduceTree
reduceTree
  :: (t -&amp;gt; t11 -&amp;gt; t1) -&amp;gt; (t1 -&amp;gt; t11 -&amp;gt; t11) -&amp;gt; t11 -&amp;gt; Tree t -&amp;gt; t1&lt;/pre&gt;

&lt;p&gt;これで、シンプルに定義することができた。&lt;/p&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/652bbbe20fb5861631ac4e83ddcb934be0138423"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;c. reduceTree 関数から map 関数を導く&lt;/h5&gt;

&lt;p align="left"&gt;リストと同じように考えれば、データコンストラクタを利用した値の生成は、reduceTree 関数の引数 f と g と z に、Node と Cons と Nil を与えたものと見ることができる。&lt;/p&gt;

&lt;p&gt;よって、与えた木に対して何もせず、そのまま返す関数を定義するには、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;idTree = reduceTree Node Cons Nil&lt;/pre&gt;

&lt;p&gt;Node が持つ値と、Cons が持つ値に、特定の関数を適用する関数を mapTree とするなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapTree f = reduceTree (Node . f) Cons Nil&lt;/pre&gt;

&lt;p&gt;使ってみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Main&amp;gt; mapTree (* 2) tree
Node 2 (Cons (Node 4 Nil) (Cons (Node 6 (Cons (Node 10 Nil) (Cons (Node 12 Nil) Nil))) (Cons (Node 8 Nil) Nil)))&lt;/pre&gt;

&lt;p&gt;(cf.&lt;a href="https://gist.github.com/1322202/1dded5ce1d48f4591485138ac62c2e20cf900424"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="listTree"&gt;&lt;/a&gt;4-2. 木のリストで、データコンストラクタを置き換える関数&lt;/h4&gt;

&lt;p&gt;上記の木構造において、特定の要素を持つノードを抽出する filter 関数を定義したい。その際、対象となる Tree a 型を、List [Tree a] 型において、要素を1つだけ持つリストであると考えてから、定義を考えたい。&lt;/p&gt;

&lt;p&gt;例えば、下図の左の木から、「要素 3 を持つノード以外を抽出したい」とする。 filter 関数の適用により、右のような木になるようにしたい。&lt;/p&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6284437790/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-27-201114" border="0" alt="10-27-201114" src="http://lh6.ggpht.com/-4MjkdiER5ZU/TqwcI7ZOSZI/AAAAAAAABFQ/0CyxqYwDTVA/10-27-20111414.png?imgmax=800" width="620" height="277" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;また、上記と同じ木から、「ルートである要素 1 を持つノード以外を抽出したい」とする。この場合、右のように、木のリストとして、結果が返されるようにしたい。&lt;/p&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6284438570/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-27-201122" border="0" alt="10-27-201122" src="http://lh4.ggpht.com/-Lkd6xctNRz4/TqwcJ9C4JkI/AAAAAAAABFY/kd2Ws4d0V-E/10-27-20112214.png?imgmax=800" width="624" height="257" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ということで、List [Tree a] 型で、filter 関数を考えてみる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;a. 木のリストのデータコンストラクタを置き換える関数&lt;/h5&gt;

&lt;p&gt;まずは、List [Tree a] 型の、データコンストラクタを置き換える関数を定義してみる。慣れてきたので、一気に置き換える。関数名は reduceListTree とする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceListTree f g z Nil = z
reduceListTree f g z (Cons tree trees) = f (reduceTree g f z tree)
                                           (reduceListTree f g z trees)&lt;/pre&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/6b23d45939835d65dcab64ca64e047f755cb57be"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;ところで、List [Tree a] 型は、List a 型の特殊なタイプに過ぎない。ということは、わざわざ reduceListTree 関数を定義する必要はない。List a 型に対して定義した、データコンストラクタを置き換える関数から、導けば良いはず。&lt;/p&gt;

&lt;p&gt;Tree a 型のリストに対して、先ほど定義した reduceTree 関数を適用すればいいはずだから、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceListTree f g z = mapList (reduceTree g f z) &lt;/pre&gt;

&lt;p&gt;… と定義したら、思った結果が得られなかった。 (+_+) &lt;/p&gt;

&lt;p&gt;上記を修正する前に、Tree a 型の値を、List [Tree a] 型へ変換する関数 tree2ListTree を定義しておく。与えた木を1つだけ、リストの要素として持つようにする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;tree2ListTree tree = Cons tree Nil&lt;/pre&gt;

&lt;p&gt;List [Tree a] 型の要素に対して、関数を適用する関数を mapListTree とする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapListTree f = reduceListTree Cons (Node . f) Nil&lt;/pre&gt;

&lt;p&gt;使ってみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; mapListTree (* 2) $ tree2ListTree tree
Cons (Node 2 &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (Cons (Node 4 Nil) &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (Cons (Node 6 &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (Cons (Node 10 Nil) &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (Cons (Node 12 Nil) Nil))) &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (Cons (Node 8 Nil) Nil)))) Nil&lt;/pre&gt;

&lt;p&gt;これは上手く動いた。&lt;/p&gt;

&lt;p&gt;では、要素を抽出するための filterListTree 関数を定義してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;filterListTree p = reduceListTree (\n@(Node x trees) ts -&amp;gt; 
                                   if p x then Cons n ts 
                                   else trees `appendList` ts)
                                  Node
                                  Nil&lt;/pre&gt;

&lt;p&gt;動作を試してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; filterListTree (/= 3) $ tree2ListTree tree
Cons (Node 1 &lt;br /&gt;           (Cons (Node 2 Nil) &lt;br /&gt;           (Cons (Node 5 Nil) &lt;br /&gt;           (Cons (Node 6 Nil) &lt;br /&gt;           (Cons (Node 4 Nil) Nil))))) Nil&lt;/pre&gt;

&lt;p&gt;これは、上図の想定通りとなった。しかし、ルートのノードを取り除こうとしたら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; filterListTree (/= 1) $ tree2ListTree tree
Cons (Node 1 &lt;br /&gt;           (Cons (Node 2 Nil) &lt;br /&gt;                 (Cons (Node 3 &lt;br /&gt;                             (Cons (Node 5 Nil) &lt;br /&gt;                             (Cons (Node 6 Nil) Nil))) &lt;br /&gt;                 (Cons (Node 4 Nil) Nil)))) Nil&lt;/pre&gt;

&lt;p&gt;ルートのノードが残ってしまった。やはり、reduceListTree 関数の定義が間違っている。&lt;/p&gt;

&lt;p&gt;そこで、reduceListTree 型を確認すると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; :t reduceListTree
reduceListTree
  :: (t11 -&amp;gt; t1 -&amp;gt; t1)
     -&amp;gt; (t -&amp;gt; t1 -&amp;gt; t11)
     -&amp;gt; t1
     -&amp;gt; List (Tree t)
     -&amp;gt; List t11&lt;/pre&gt;

&lt;p&gt;reduceListTree 関数を、mapList 関数で定義していたので、結果がリストになってしまっている。つまり、データコンストラクタを置き換える関数にはなっていない。&lt;/p&gt;

&lt;p&gt;先ほどの定義を確認する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceListTree f g z = mapList (reduceTree g f z) &lt;/pre&gt;

&lt;p&gt;reduceListTree 関数は、reduceList の、要素が Tree a 型である特殊な場合であると考えれば、reduceList 関数から、関数を導かなければいけなかった。 (+_+)&lt;/p&gt;

&lt;p&gt;まずは、Cons と Nil の置き換えだけを考える。引数 f を Cons に、z を Nil へと置き換えるとする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceListTree f g z trees = reduceList f z &lt;em&gt;undefined&lt;/em&gt;&lt;/pre&gt;

&lt;p align="left"&gt;次に、上記で、未定義になっている部分を考える。関数の引数 trees とは List [Tree a] だった。図示すると、&lt;/p&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6286506294/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="10-28-201113" border="0" alt="10-28-201113" src="http://lh3.ggpht.com/-Dovf5-EuJdU/TqwcKgRMGjI/AAAAAAAABFc/pyTPF042d4s/10-28-20111314.png?imgmax=800" width="506" height="66" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;よって、最初に「木」のリストに対して、reduceTree を適用する必要がある。その後、Cons と Nil の置き換えを考えればいい。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reduceListTree f g z trees = 
    reduceList f z (&lt;strong&gt;mapList (reduceTree g f z) trees&lt;/strong&gt;)&lt;/pre&gt;

&lt;p&gt;この関数の型のチェックすると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; :t reduceListTree
reduceListTree
  :: (t1 -&amp;gt; t -&amp;gt; t) -&amp;gt; (t11 -&amp;gt; t -&amp;gt; t1) -&amp;gt; t -&amp;gt; List (Tree t11) -&amp;gt; t&lt;/pre&gt;

&lt;p&gt;先ほど思った結果にならなかった計算をしてみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Tree&amp;gt; filterListTree (/= 1) $ tree2ListTree tree
Cons (Node 2 Nil) &lt;br /&gt;     (Cons (Node 3 &lt;br /&gt;                 (Cons (Node 5 Nil) &lt;br /&gt;                       (Cons (Node 6 Nil) Nil))) &lt;br /&gt;     (Cons (Node 4 Nil) Nil))&lt;/pre&gt;

&lt;p&gt;これで良さげ。 &lt;/p&gt;

&lt;p&gt;( cf.&lt;a href="https://gist.github.com/1322202/4ceeed0c2073c3df4c5135c21f68c89c9e1ec510"&gt;jutememo's gist: 1322202 — Gist&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="ps"&gt;&lt;/a&gt;5. 余談： 他の関数を導くための reduce 関数と、畳み込み関数を混同していた&lt;/h4&gt;

&lt;p&gt;以下、なぜ、くどくどと、この記事を書いたのか、理由を述べる。&lt;/p&gt;

&lt;p&gt;最初に引用した、「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数プログラミングは重要か&lt;/a&gt;」を再掲。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;… 高階関数は、一度定義すると、非常に簡単に数多くの演算をプログラムすることができる。&lt;strong&gt;新しいデータ型を定義したときにその型を処理する高階関数を書くべきである&lt;/strong&gt;。そうすれば、そのデータ型の取り扱いが簡単になり、その表現の詳細に関する知識を局所化できる。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;上記論文では、高階関数の例として、リストとツリーに対して、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;具体的な計算から、 &lt;/li&gt;

  &lt;li&gt;構造の要素が持つ値を集約するための reduce 関数を導く方法 &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;が説明されている。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;a. reduce 関数は、畳み込み関数とは違う&lt;/h5&gt;

&lt;p&gt;高階関数を定義するには、具体的な計算から、共通部分を取り出し、メタ的な関数を導けばよい。以前、上記論文を手本にして、具体的な関数から、抽象的な関数を導く流れを、なぞったことがある。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://jutememo.blogspot.com/2010/07/haskell.html"&gt;Haskell のデータ構造と高階関数 - 総和・総乗から畳み込み関数へ&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://jutememo.blogspot.com/2009/01/haskell-sum-product-foldl1-foldl.html"&gt;Haskell で関数の抽象化 - sum, product から foldl1 → foldl へ&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;このとき、念頭に置いていたことは、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;具体的な計算を、いくつか定義する。 &lt;/li&gt;

  &lt;li&gt;似たような計算の形に注目する。 &lt;/li&gt;

  &lt;li&gt;類似した計算を共通化できるか考える。その際、関数を与える関数の形で定義。 &lt;/li&gt;

  &lt;li&gt;共通化した計算から、具体的な計算を導くことを確かめる。 &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;この手順自体は、共通に使える部品を取り出すための方法としては、ごく普通の考え方。&lt;/p&gt;

&lt;p&gt;自分が誤解した点は、高階関数 reduce を、値を集約するための「畳み込み関数」と同じもだと思ってしまったこと。そのため、この記事では、reduce 関数を「畳み込み関数」ではなく、「データコンストラクタを置き換える関数」という視点から捉え直した。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;b. 「畳み込み関数」とは&lt;/h5&gt;

&lt;p&gt;ところで、最初に畳み込み関数を見たのは、Ruby の &lt;a href="http://doc.ruby-lang.org/ja/1.9.2/method/Enumerable/i/inject.html"&gt;inject&lt;/a&gt; メソッドだった。&lt;/p&gt;

&lt;p&gt;例えば、1 から 10 まで足し上げるには、&lt;/p&gt;

&lt;pre&gt;p (1..10).inject(0){ |x,y| x + y }    #=&amp;gt; 55&lt;/pre&gt;

&lt;p&gt;100 から、1 から 10 までを引いていくと、&lt;/p&gt;

&lt;pre&gt;p (1..10).inject(100){ |x, y| x – y }   #=&amp;gt; 45&lt;/pre&gt;

&lt;p&gt;最初、複雑に感じたけれど、慣れると for ループが鬱陶しくなる。&lt;/p&gt;

&lt;p&gt;Python では、組み込み関数 &lt;a href="http://www.python.jp/doc/2.5/lib/built-in-funcs.html#l2h-60"&gt;reduce&lt;/a&gt;。&lt;/p&gt;

&lt;pre&gt;print reduce(lambda x,y: x + y, range(1,11), 0)     #=&amp;gt; 55
print reduce(lambda x,y: x - y, range(1,11), 100)   #=&amp;gt; 45&lt;/pre&gt;

&lt;p&gt;Hakell では &lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#g:12"&gt;fold&lt;/a&gt;。foldr と foldl では、計算の方法が異なる。(cf. &lt;a href="http://jutememo.blogspot.com/2008/06/haskell-foldl-foldr.html"&gt;Haskell の foldl , foldr&lt;/a&gt; )&lt;/p&gt;

&lt;pre&gt;*Main&amp;gt; foldr (+) 0 [1..10]
55
*Main&amp;gt; foldl (-) 100 [1..10]
45&lt;/pre&gt;

&lt;p&gt;上記の通り、畳み込み関数は、「リストの要素に対して、任意の二項演算子で、値を順にまとめ上げていく」ために利用できる。&lt;/p&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6179954193/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="09-25-2011122" border="0" alt="09-25-2011122" src="http://lh4.ggpht.com/-i6GauUmJ2qA/TqwcLPmHWII/AAAAAAAABFo/_huPvt8Wooc/09-25-20111222.png?imgmax=800" width="416" height="151" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p align="left"&gt;そのため、「reduce = 畳み込み関数」という構図で記憶してしまった。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;c. リストの foldr の定義により混同した&lt;/h5&gt;

&lt;p&gt;上記の通り、Haskell で、畳み込み関数と言えば、リストに対する &lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#g:12"&gt;fold 系&lt;/a&gt;の関数。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a name="v:foldl"&gt;foldl&lt;/a&gt; :: (a -&amp;gt; b -&amp;gt; a) -&amp;gt; a -&amp;gt; [b] –&amp;gt; a &lt;/li&gt;

  &lt;li&gt;&lt;a name="v:foldr"&gt;foldr&lt;/a&gt; :: (a -&amp;gt; b -&amp;gt; b) -&amp;gt; b -&amp;gt; [a] -&amp;gt; b &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数...&lt;/a&gt;」で定義されている reduce 関数と、Haskell の foldr は似ている。しかし、Haskell の foldr, foldl は、その名前の通り、要素の値を「畳み込み、集約する」目的で定義しているように見受けられる。（理由は、リストが &lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Data-Foldable.html#control.i:Foldable"&gt;Data.Foldable&lt;/a&gt; のインスタンスとなっているため。また、&lt;a href="http://www.haskell.org/ghc/docs/6.6/html/libraries/base/Data-Tree.html"&gt;Data.Tree&lt;/a&gt; も同インスタンスとして定義されており、あくまでも、値を畳み込むために使うのが、fold の役割だと思う。）&lt;/p&gt;

&lt;p&gt;これに対し、「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数...&lt;/a&gt;」で解説されている reduce 関数は、要素の値を畳み込む用途&lt;strong&gt;にも&lt;/strong&gt;使えるという点が異なる。「畳み込みこと」自体が目的ではない。畳み込むことは、用途の一例に過ぎない。&lt;/p&gt;

&lt;p&gt;ただし、リストは、Haskell の foldr と 、論文中の reduce の定義が同じになるため、データコンストラクタを置き換える関数を、畳み込み関数と更に混同してしまった。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;d. その型を処理する高階関数を何と呼ぶべきか？&lt;/h5&gt;

&lt;p&gt;引用した文章の中に、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;新しいデータ型を定義したときに&lt;strong&gt;その型を処理する高階関数&lt;/strong&gt;を書くべきである。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;と述べられている。繰り返しになるが、これは、「畳み込み関数」を定義することを意味しない。&lt;/p&gt;

&lt;p&gt;「畳み込み関数」は、高階関数の一例であり、必ずしも、対象の型を処理するための関数を導くことができる、柔軟な関数ではない。しかし、先ほど述べたように、リストの場合は、畳み込み関数を元にして、いくつかの関数を導くことができる。&lt;/p&gt;

&lt;p&gt;では、「その型を処理する高階関数」とは何と呼べばいいのだろうか？&lt;/p&gt;

&lt;p&gt;適切な言葉見つからなかったので、自分はこれに対して、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;データコンストラクタを置き換える関数&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;もしくは、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;データコンストラクタが保持している値を、データコンストラクタの縛りから解放する関数&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;と呼ぶことにした。こうすれば、自分の中で、畳み込み関数と混同しないで済む。&lt;/p&gt;

&lt;p&gt;もちろん、「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数...&lt;/a&gt;」で、reduce 関数を、「畳み込み関数」とは述べていない。また、reduce 関数を「データコンストラクタを置き換えると考えれば良い」との解説もあった。しかし、最初読んだとき、その意味がわからず、「畳み込む」関数を定義することが、「その型を処理する高階関数」 を定義することに相当すると誤解した。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;e. fold, reduce の言葉の意味について&lt;/h5&gt;

&lt;p&gt;ところで、Haskell で畳み込み関数として使われている `fold’ の単語の意味を調べると、&lt;/p&gt;

&lt;p&gt;&lt;a href="http://dictionary.goo.ne.jp/leaf/ej3/32784/m0u/fold/"&gt;foldの意味 - 英和辞書 - goo辞書&lt;/a&gt; &lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;b&gt;1&lt;/b&gt; … 〈薄い物を〉折る, 折り重ねる((in, over, together))；…を（きちんと）折りたたむ((down, up))；…を折り返す((back))；…をたたんで（…に）する((into ...))；…を折りたたんでかたづける((away)). ⇒&lt;a href="http://dictionary.goo.ne.jp/leaf/ej3/7864/m0u/"&gt;&lt;small&gt;BEND&lt;/small&gt;&lt;sup&gt;1&lt;/sup&gt;(他)1&lt;/a&gt;&lt;/p&gt;

  &lt;p&gt;fold a sheet of paper small ［in thirds］ 
    &lt;br /&gt;紙を小さく［3つに］折る.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://www.yourdictionary.com/fold"&gt;fold - Definition with thesaurus&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;1. a. to bend or press (something) so that one part is over another; double up on itself: to &lt;em&gt;fold&lt;/em&gt; a sheet&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;これより、「折り重ねる」というイメージの言葉だとわかる。ちなみに、この「折り重ねる」という意味で、fold がより一般化された形で定義されているのが &lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Data-Foldable.html"&gt;Data.Foldable&lt;/a&gt; らしい。&lt;/p&gt;

&lt;p&gt;これに対して、reduce について調べると、いくつか意味が書かれている。この場合、適切だと思われるのは、&lt;/p&gt;

&lt;p&gt;&lt;a href="http://dictionary.goo.ne.jp/leaf/ej3/70033/m0u/reduce/"&gt;reduceの意味 - 英和辞書 - goo辞書&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;b&gt;(2)&lt;/b&gt; 〈A（物・事）をB（別の状態・単純な要素）に〉する, 変える, 分解する, 変形する&lt;/p&gt;

  &lt;p&gt;reduce grapes to wine 
    &lt;br /&gt;ブドウをワインにする.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="http://www.yourdictionary.com/reduce"&gt;reduce - Definition with thesaurus&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;4. a. to put into a different form: to &lt;em&gt;reduce&lt;/em&gt; a talk to writing 

    &lt;br /&gt;b. to change to a different physical form, as by melting, crushing, grinding, etc.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;こちらは、「分解して、変形させる」というイメージ。&lt;/p&gt;

&lt;p&gt;「データコンストラクタを置き換えて、別の値にする」という役割に対しては、このニュアンスが相応しい。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p align="left"&gt;&lt;/p&gt;

&lt;h5 align="left"&gt;f. reduce 関数を理解するために重要な点&lt;/h5&gt;

&lt;p align="left"&gt;「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数...&lt;/a&gt;」には、リストに対する関数 reduce の定義の方法に関して、重要なことが次のように書かれている。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;(reduce f a)を理解する一つの方法は、リストのなかで、consが出現するところをすべてfで置換え、nilが出現するところをすべてaで置換える関数だと看倣すことである。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;同様のことが、ツリーに対する redtree 関数の定義の仕方に関して、以下のように記述されている。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;ツリーはnodeと consとnilで組み立てられているので、redtreeはそれぞれを置換える何かという三つの引数をとらなければならない。ツリーとリストは別の型なので、それぞれの型の上の演算に一つずつ、二つの関数を定義する必要がある。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;先ほど述べたように、この部分を初めて読んだとき、どういう意味なのかわからなかった。特に、ツリーの redtree 関数を定義するのに、「なぜ、具体的な計算を考えないで導くことができるのだろう？」と疑問を感じた。&lt;/p&gt;

&lt;p&gt;そのため、自分で「&lt;a href="http://www.sampou.org/haskell/article/whyfp.html"&gt;なぜ関数...&lt;/a&gt;」を手本にして、例をなぞったとき、以下のように、具体的な計算を考えてから、redtree 関数を定義した。&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;&lt;a href="http://jutememo.blogspot.com/2010/07/haskell.html#tree_sum_product"&gt;ツリーで総和、総乗の定義&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;&lt;a href="http://jutememo.blogspot.com/2010/07/haskell.html#tree_fold_1"&gt;ツリーで畳み込み関数 (1)&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;&lt;a href="http://jutememo.blogspot.com/2010/07/haskell.html#tree_fold_2"&gt;ツリーで畳み込み関数 (2)&lt;/a&gt;&lt;/div&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;これにより、確かにツリ－の redtree 関数では、リストの reduce 関数とは違い、与える引数の数が 1 つ多くないと、maptree 関数を定義できないことが理解できた。振り返ってみると、このとき、redtree 関数の定義の仕方について、明確に意識しておくべきことがあった。それは、先ほどから何度も述べているように、データコンストラクタに注目すること。ポイントは、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;データコンストラクタを一関数とみなし、それを可換とする関数を定義する&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;と考えること。この視点があれば、 reduce は複雑な定義でない。&lt;/p&gt;

&lt;p align="left"&gt;先ほど、 reduce の言葉の意味が&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;「分解して、変形させる」というイメージ&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;に対応すると述べた。それは、データコンストラクタを置き換え、全く別の型の値にしてしまうという操作が、「分解して、変形させる」ことに対応していると感じたため。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;p align="left"&gt;&lt;/p&gt;

&lt;h5 align="left"&gt;g. reduce 関数とは何か？&lt;/h5&gt;

&lt;p align="left"&gt;&lt;/p&gt;

&lt;p align="left"&gt;&lt;/p&gt;

&lt;p align="left"&gt;ところで、時は過ぎ、reduce 関数の定義を忘れ、「畳み込み」という言葉だけが、頭に残った。&lt;/p&gt;

&lt;p align="left"&gt;そして、「畳み込む」手段として、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;2 つの要素に関数を適用して、一つの値に集約していく「二項演算子」をどう定義すればいいのか？&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;という問題を考えることが、「新しい型を定義したときに、定義すると便利な高階関数」を導く手段だと、勘違いするようになっていた。&lt;/p&gt;

&lt;p align="left"&gt;今考えると、「畳み込む」という言葉のイメージに流されたのがいけなかった。&lt;/p&gt;

&lt;p align="left"&gt;今では、関数 reduce を、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;データコンストラクタが保持している値を、データコンストラクタの縛りから解放する関数&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;と考えるようになった。そうすれば、具体的な計算から、抽象的な計算を導く過程を考えずに済む。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;「何を何で置き換えればいいのか？」&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;だけに注目すればいい。&lt;/p&gt;

&lt;p&gt;このような役割を持つ reduce 関数って、一体何だろう？普通のオブジェクト指向の言語で例えるなら、既存のオブジェクトを、そのオブジェクトが持っている情報を元に、別のクラスに鞍替えさせるようなものかな？&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-7623313645446092900?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/7623313645446092900/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=7623313645446092900' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7623313645446092900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7623313645446092900'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/10/haskell-reduce.html' title='Haskell でデータコンストラクタを置き換える高階関数 - reduce について誤解していたこと'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-JpGaJu7qSic/TqwcBrOo80I/AAAAAAAABEA/Uu4FsudpsSM/s72-c/09-26-201113.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-7366687435350465061</id><published>2011-09-21T03:17:00.001+09:00</published><updated>2011-09-27T01:52:32.361+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Firefox 6'/><category scheme='http://www.blogger.com/atom/ns#' term='検索'/><title type='text'>Firefox で「検索」「リンクを開く」ためのアドオン DragIt - Easy DragToGo と同じ操作に設定</title><content type='html'>&lt;p&gt;Firefox で、「検索」や「リンクを開く」操作をマウスで行うために、&lt;a href="https://addons.mozilla.org/ja/firefox/addon/easy-dragtogo/"&gt;Easy DragToGo&lt;/a&gt; を使っていた。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;cf. &lt;a href="http://jutememo.blogspot.com/2011/06/firefox-4-easy-dragtogo.html"&gt;Firefox 4 のアドオン Easy DragToGo+ で「検索」「リンクを開く」&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="DragIt (formerly Drag de Go) :: Add-ons for Firefox" alt="https://addons.mozilla.org/ja/firefox/addon/dragit-formerly-drag-de-go/" src="http://kwout.com/cutout/w/zf/rt/94x_bor.jpg" width="340" height="45" usemap="#map_wzfrt94x" /&gt;&lt;map id="map_wzfrt94x" name="map_wzfrt94x"&gt;&lt;area href="https://addons.mozilla.org/ja/firefox/user/3865864/" shape="rect" alt="" coords="123,34,157,50" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="https://addons.mozilla.org/ja/firefox/addon/dragit-formerly-drag-de-go/"&gt;DragIt (formerly Drag de Go) &lt;/a&gt;via &lt;a href="http://kwout.com/quote/wzfrt94x"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;しかし、Firefox の現バージョン (6.0.2) には正式に対応していない。&lt;a href="https://addons.mozilla.org/ja/firefox/addon/configuration-mania-4420/"&gt;Configuration Mania&lt;/a&gt; で、互換性を無視してインストールしている。できることなら、Firefox の動作が不安定にならないよう、インストールするアドオンは、正式対応しているものにしたい。そこで、類似した機能を持つ、アドオン &lt;a href="https://addons.mozilla.org/ja/firefox/addon/dragit-formerly-drag-de-go/"&gt;DragIt&lt;/a&gt; に変更することにした。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;検索の操作&lt;/h4&gt;  &lt;p&gt;設定の方針は、&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;対象を上方向へドラッグで、フォアグラウンドで開く &lt;/li&gt;    &lt;li&gt;対象を下方向へドラックで、バックグラウンドで開く &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;まずは、選択したテキストを検索する設定。&lt;/p&gt;  &lt;p&gt;DragIt の設定 &amp;gt; Gesture &amp;gt; Text において、下図のように設定。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6164532955/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="09-20-20111[4]" border="0" alt="09-20-20111[4]" src="http://lh5.ggpht.com/-jizCyYM9kfI/TnjYlgQafII/AAAAAAAAA-I/3sKxo80cnKs/09-20-2011146.png?imgmax=800" width="361" height="411" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;リンク、画像の操作&lt;/h4&gt;  &lt;p&gt;リンクをドラッグした時の設定。 &lt;/p&gt;  &lt;p&gt;Gesture &amp;gt; Link において、下図のように設定。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6165066820/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="09-20-20113" border="0" alt="09-20-20113" src="http://lh4.ggpht.com/-UluhUiY_PX0/TnjYmGlznrI/AAAAAAAAA-M/8pddQwXXNGA/09-20-201137.png?imgmax=800" width="350" height="411" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;画像をドラッグした時の設定。&lt;/p&gt;  &lt;p&gt;Gesture &amp;gt; Image において、下図のように設定。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6165067362/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="09-20-20116" border="0" alt="09-20-20116" src="http://lh4.ggpht.com/-LoXoRbV3YAk/TnjYmrX9XxI/AAAAAAAAA-Q/5uPCruu9Ym0/09-20-201167.png?imgmax=800" width="345" height="409" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;操作の反応をよくする&lt;/h4&gt;  &lt;p&gt;対象をドラッグしたとき、反応を良くするための設定。&lt;/p&gt;  &lt;p&gt;Extra &amp;gt; Gesture において、Length threshold の値を 1 px に設定。これにより、少ない動作で DragIt が発動してくれる。ただし、&lt;a href="https://addons.mozilla.org/ja/firefox/addon/easy-dragtogo/"&gt;Easy DragToGo&lt;/a&gt; の方がレスポンス良い。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6165458240/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="09-20-20112[5]" border="0" alt="09-20-20112[5]" src="http://lh5.ggpht.com/-3oLle8pKuaM/TnjYnQG7ulI/AAAAAAAAA-U/EDbL9J2ry5w/09-20-201125%25255B1%25255D.png?imgmax=800" width="510" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;また、&lt;a href="https://addons.mozilla.org/ja/firefox/addon/firegestures/"&gt;FireGestures&lt;/a&gt; の設定とバッティングしないために、Enable page gestures のチェックを外した。これにより、右クリックによるマウスジェスチャは、FireGesture が担当することになる。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;その他の検索設定&lt;/h4&gt;  &lt;p&gt;テキストの検索時に、検索エンジンを選択できる。&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Search with in foreground tab &lt;/li&gt;    &lt;li&gt;Search with in background tab &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;上記の操作に、右方向、左方向のジェスチャを割り当てた。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;その他&lt;/h4&gt;  &lt;p&gt;&lt;strong&gt;追記(2011.9.27)&lt;/strong&gt; : DragIt を使っていたら、検索をしたタイミングで、プロパティのウィンドウが表示されてしまうことがある。原因が不明だったので、再び &lt;a href="http://jutememo.blogspot.com/2011/06/firefox-4-easy-dragtogo.html#ps20110926"&gt;Easy DragToGo+&lt;/a&gt; へ戻した。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-7366687435350465061?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/7366687435350465061/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=7366687435350465061' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7366687435350465061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7366687435350465061'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/09/firefox-dragit-easy-dragtogo.html' title='Firefox で「検索」「リンクを開く」ためのアドオン DragIt - Easy DragToGo と同じ操作に設定'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-jizCyYM9kfI/TnjYlgQafII/AAAAAAAAA-I/3sKxo80cnKs/s72-c/09-20-2011146.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-1264936575563390189</id><published>2011-09-18T05:53:00.001+09:00</published><updated>2011-12-28T00:51:58.746+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogger'/><category scheme='http://www.blogger.com/atom/ns#' term='tumblr'/><category scheme='http://www.blogger.com/atom/ns#' term='Google Web Fonts'/><category scheme='http://www.blogger.com/atom/ns#' term='Web フォント'/><title type='text'>Web フォントを利用して、Web サイトで個性的な文字を使う</title><content type='html'>&lt;h4&gt;1. 海外のブログで、シンプルなデザインのサイトは、Blogger を使っていることが多い&lt;/h4&gt;  &lt;p align="left"&gt;海外のブログで、ファッション系のサイトを見ていると、&lt;a href="http://www.blogger.com/"&gt;Blogger&lt;/a&gt; である場合が多い。写真のサイズは大きく、綺麗な画像が載せられている。サイト全体はシンプルで、コンテンツに目が行くように配慮されている。&lt;/p&gt;  &lt;p align="left"&gt;日本では、 &lt;a href="http://ameblo.jp/"&gt;Ameba&lt;/a&gt; を利用する人が結構いるようだが、掲載されている写真を見ると、なんだかなぁ…と。ただし、自分が知る限り、&lt;a href="http://ameblo.jp/mizuhara-kiko/"&gt;水原希子&lt;/a&gt;の画像は綺麗で、&lt;a href="http://ameblo.jp/angelica1205/"&gt;道端アンジェリカ&lt;/a&gt; の写真はでかい。&lt;/p&gt;  &lt;p align="left"&gt;&amp;#160;&lt;/p&gt;  &lt;h4 align="left"&gt;2. Blogger で使えるフォント&lt;/h4&gt;  &lt;p&gt;ところで、&lt;a href="http://yuuka-forget-me-not.blogspot.com/"&gt;Forget*me*not...&lt;/a&gt; を眺めていたら、記事のタイトルの文字が、綺麗な細身のフォントであることに気がついた。&lt;a href="https://addons.mozilla.org/ja/firefox/addon/firebug/"&gt;Firebug&lt;/a&gt; でソースを見たら、使われているフォントは、&lt;/p&gt;  &lt;blockquote&gt;   &lt;div style="text-align: center; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px" class="kwout"&gt;&lt;a href="http://ja.fonts2u.com/josefin-slab.%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Josefin Slab フォント" alt="http://ja.fonts2u.com/josefin-slab.%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88" src="http://kwout.com/cutout/b/5a/gj/bqs_bor.jpg" width="260" height="57" /&gt;&lt;/a&gt;       &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://ja.fonts2u.com/josefin-slab.%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88"&gt;&lt;font size="2"&gt;Josefin Slab フォント&lt;/font&gt;&lt;/a&gt;&lt;font size="2"&gt; via &lt;/font&gt;&lt;a href="http://kwout.com/quote/b5agjbqs"&gt;&lt;font size="2"&gt;kwout&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/div&gt;    &lt;p&gt;Josefin Slab&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;こんなフォントをウェブで使えたかな？と思い調べてみると、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.kuribo.info/2011/02/blogger.html"&gt;Blogger で使用できるフォント一覧&lt;/a&gt; - &lt;a href="http://www.kuribo.info/2011/02/blogger.html"&gt;クリボウの Blogger Tips&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;の中に Josefin Slab があった。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;3. Web フォントにより、サイトで使えるフォントの幅が広がる&lt;/h4&gt;  &lt;p&gt;なぜこのようなフォントを使えるのか、参照先を読んでみると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;A couple of months back we introduced &lt;a href="http://bloggerindraft.blogspot.com/2010/11/more-fonts-means-more-choice.html"&gt;Web Fonts to Blogger in Draft&lt;/a&gt;. Today we’re excited to not only launch Web Fonts to ALL Blogger users, but also announce we’ve added an additional 35 fonts to the mix, for a grand total of 77 fonts! …&lt;/p&gt;    &lt;p&gt;Web Fonts, brought to you by our good friends at &lt;a href="http://code.google.com/webfonts"&gt;Google Fonts&lt;/a&gt;, let you spice up and further personalize your blog. J&lt;/p&gt;    &lt;p&gt;（&lt;a href="http://buzz.blogger.com/2011/01/quick-brown-fox.html"&gt;Blogger Buzz: The Quick Brown Fox&lt;/a&gt; より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://www.google.co.jp/search?q=web+%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88"&gt;Web フォント&lt;/a&gt; と言う技術が使われているようだ。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.itmedia.co.jp/soratoijichi/2011/03/web-font-984c.html"&gt;今、はやりのWeb Fontとは？：Webトレンド：ITmedia オルタナティブ・ブログ&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;ここ1、2年、注目を集めているのがWeb Font。これは、興奮する話です。フォントを全てウェブ上に置いてしまって、誰でも同じようにサイトが見れるようにしようというアイデア。 有名どころで言えば、&lt;a href="http://webfonts.fonts.com/"&gt;fonts.com Web Font&lt;/a&gt; , &lt;a href="http://typekit.com/"&gt;Typekit&lt;/a&gt;, &lt;a href="http://fontdeck.com/"&gt;Font Deck&lt;/a&gt;, そして最近Googleが開始した&lt;a href="http://www.google.com/webfonts"&gt;Google web fonts&lt;/a&gt;などがあります。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;日本語の場合、欧文フォントのように豊富ではないけれど、&lt;a href="http://www.google.co.jp/search?q=web+%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88#pq=web+%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88&amp;amp;hl=ja&amp;amp;sugexp=gsis%2Ci18n%3Dtrue&amp;amp;cp=13&amp;amp;gs_id=2s&amp;amp;xhr=t&amp;amp;q=%E6%97%A5%E6%9C%AC%E8%AA%9E+%E2%80%9Dweb%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88%E2%80%9D&amp;amp;pf=p&amp;amp;sclient=psy-ab&amp;amp;safe=off&amp;amp;source=hp&amp;amp;pbx=1&amp;amp;oq=%E6%97%A5%E6%9C%AC%E8%AA%9E+%E2%80%9Dweb%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88%E2%80%9D&amp;amp;aq=f&amp;amp;aqi=&amp;amp;aql=&amp;amp;gs_sm=&amp;amp;gs_upl=&amp;amp;bav=on.2,or.r_gc.r_pw.&amp;amp;fp=c49ded4736b46767&amp;amp;biw=1103&amp;amp;bih=897"&gt;日本語 ”webフォント” で検索&lt;/a&gt;すると 幾つかサービスが見つかる。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blog.razzle.co.jp/%E6%9C%AA%E5%88%86%E9%A1%9E/691"&gt;日本語WEBフォントサービス（デコもじ＆フォントプラス）を比較してみた。 | ラズル株式会社スタッフブログ&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;英語のWEBフォントサービスが世に現れてから、ブログやニュースサイト等を中心に爆発的に広がりを見せましたが      &lt;br /&gt;日本語フォントのサービスはまだまだ始まったばかりで、私が知っているのは以下２つです。       &lt;br /&gt;「&lt;a href="http://decomoji.jp/"&gt;デコもじ&lt;/a&gt;」       &lt;br /&gt;「&lt;a href="http://webfont.fontplus.jp/"&gt;フォントプラス&lt;/a&gt;」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;4. Google Web Fonts を使ってみる&lt;/h4&gt;  &lt;p&gt;上記で紹介されていた Web フォントの中で &lt;a href="http://www.google.com/webfonts#HomePlace:home"&gt;Google Web Fonts&lt;/a&gt; を試しに使ってみる。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.google.com/webfonts#HomePlace:home"&gt;Google Web Fonts&lt;/a&gt; を開いたら、Start choosing fonst ボタンを押す。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;a href="http://www.google.com/webfonts#HomePlace:home"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Google Web Fonts" alt="http://www.google.com/webfonts#HomePlace:home" src="http://kwout.com/cutout/s/6t/xf/ehr_bor.jpg" width="600" height="323" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.google.com/webfonts#HomePlace:home"&gt;Google Web Fonts&lt;/a&gt; via &lt;a href="http://kwout.com/quote/s6txfehr"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;左側にある Search ボックスに、フォント名 `Josefin Slab’ を入力して、フォントを絞り込む。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Google Web Fonts" alt="http://www.google.com/webfonts#ChoosePlace:select" src="http://kwout.com/cutout/x/if/rt/94x_bor.jpg" width="600" height="177" usemap="#map_xifrt94x" /&gt;&lt;map id="map_xifrt94x" name="map_xifrt94x"&gt;&lt;area href="https://docs.google.com/a/google.com/spreadsheet/viewform?formkey=dDNxOUxqdWJONnczY0NCMENIMmpjbkE6MQ#gid=0" shape="rect" alt="" coords="164,7,271,17" /&gt;&lt;area href="https://profiles.google.com/santiagorozco/about" shape="rect" alt="" coords="209,135,261,142" /&gt;&lt;/map&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.google.com/webfonts#ChoosePlace:select"&gt;Google Web Fonts&lt;/a&gt; via &lt;a href="http://kwout.com/quote/xifrt94x"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;フォントの下にある Quick-use リンクをクリックすると、使いたいサイトに埋め込むコードと、フォントを適用したい要素に対する CSS が表示される。&lt;/p&gt;  &lt;div style="text-align: center" class="kwout"&gt;&lt;a href="http://www.google.com/webfonts#QuickUsePlace:quickUse/Family:Josefin+Slab"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="Google Web Fonts" alt="http://www.google.com/webfonts#QuickUsePlace:quickUse/Family:Josefin+Slab" src="http://kwout.com/cutout/7/fe/wb/qs2_bor.jpg" width="600" height="338" /&gt;&lt;/a&gt;     &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://www.google.com/webfonts#QuickUsePlace:quickUse/Family:Josefin+Slab"&gt;Google Web Fonts&lt;/a&gt; via &lt;a href="http://kwout.com/quote/7fewbqs2"&gt;kwout&lt;/a&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;5. Tumblr で Web フォントを使う&lt;/h4&gt;  &lt;p&gt;例えば、Tumblr のタイトルのフォントを、上記で取得したものに変更したいとする。&lt;/p&gt;  &lt;p&gt;Tumblr を表示させ、customize ボタンを押す。&lt;/p&gt;  &lt;p&gt;メニューより、Theme において、Use custom HTML ボタンを押す。&lt;/p&gt;  &lt;p&gt;表示された HTML 中における head 要素の中に、&lt;a href="http://www.google.com/webfonts#QuickUsePlace:quickUse/Family:Josefin+Slab"&gt;Google Web Fonts&lt;/a&gt; で取得した link 要素を貼り付ける。&lt;/p&gt;  &lt;p&gt;次に、メニューより、Advanced &amp;gt; add custom CSS に、&lt;a href="http://www.google.com/webfonts#QuickUsePlace:quickUse/Family:Josefin+Slab"&gt;Google Web Fonts&lt;/a&gt; で取得した CSS をタイトルに対して適用するように記述する。自分が使っているテーマでは、以下のようにして CSS を適用した。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;#header h1{
font-family: 'Josefin Slab', serif;
}&lt;/pre&gt;

&lt;p&gt;これで、タイトルのフォントが 'Josefin Slab' となった。&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.google.com/webfonts#QuickUsePlace:quickUse/Family:Josefin+Slab"&gt;Google Web Fonts&lt;/a&gt; を使用する前。&lt;/p&gt;

&lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="my brain forget soon" alt="http://jutememo.tumblr.com/" src="http://kwout.com/cutout/c/3i/cc/36t_bor.jpg" width="600" height="374" usemap="#map_c3icc36t" /&gt;&lt;map id="map_c3icc36t" name="map_c3icc36t"&gt;&lt;area href="http://jutememo.tumblr.com/" shape="rect" alt="" coords="39,3,522,71" /&gt;&lt;area href="http://jutememo.tumblr.com/#contents" shape="rect" alt="" coords="141,88,191,98" /&gt;&lt;area href="http://jutememo.tumblr.com/#description" shape="rect" alt="" coords="305,88,342,98" /&gt;&lt;area href="http://jutememo.tumblr.com/post/10315008953" shape="rect" alt="" coords="463,187,541,197" /&gt;&lt;area href="http://theinterviews.jp/php/1123921" shape="rect" alt="" coords="68,210,387,220" /&gt;&lt;area href="http://theinterviews.jp/php/1123921" shape="rect" alt="" coords="56,225,175,235" /&gt;&lt;area href="http://jutememo.tumblr.com/post/10313858733/haskell-php-haskell" shape="rect" alt="" coords="463,309,541,319" /&gt;&lt;/map&gt; 

  &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://jutememo.tumblr.com/"&gt;my brain forget soon&lt;/a&gt; via &lt;a href="http://kwout.com/quote/c3icc36t"&gt;kwout&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;使用後。&lt;/p&gt;

&lt;div style="text-align: center" class="kwout"&gt;&lt;img style="border-bottom: medium none; border-left: medium none; border-top: medium none; border-right: medium none" title="my brain forget soon" alt="http://jutememo.tumblr.com/" src="http://kwout.com/cutout/f/7g/8x/5az_bor.jpg" width="600" height="376" usemap="#map_f7g8x5az" /&gt;&lt;map id="map_f7g8x5az" name="map_f7g8x5az"&gt;&lt;area href="http://jutememo.tumblr.com/" shape="rect" alt="" coords="50,16,468,74" /&gt;&lt;area href="http://jutememo.tumblr.com/#contents" shape="rect" alt="" coords="149,94,197,103" /&gt;&lt;area href="http://jutememo.tumblr.com/#description" shape="rect" alt="" coords="308,94,344,103" /&gt;&lt;area href="http://jutememo.tumblr.com/post/10315008953" shape="rect" alt="" coords="461,190,537,200" /&gt;&lt;area href="http://theinterviews.jp/php/1123921" shape="rect" alt="" coords="78,213,387,222" /&gt;&lt;area href="http://theinterviews.jp/php/1123921" shape="rect" alt="" coords="67,227,182,236" /&gt;&lt;area href="http://jutememo.tumblr.com/post/10313858733/haskell-php-haskell" shape="rect" alt="" coords="461,309,537,319" /&gt;&lt;/map&gt; 

  &lt;p style="text-align: center; margin-top: 10px"&gt;&lt;a href="http://jutememo.tumblr.com/"&gt;my brain forget soon&lt;/a&gt; via &lt;a href="http://kwout.com/quote/f7g8x5az"&gt;kwout&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="http://www.google.com/webfonts#HomePlace:home"&gt;Google Web Fonts&lt;/a&gt; で、日本語フォントも使えるようになるといいなぁ。そうすれば、デザインのために文字を画像として表示する、なんてことをしなくて済む。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-1264936575563390189?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/1264936575563390189/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=1264936575563390189' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/1264936575563390189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/1264936575563390189'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/09/web.html' title='Web フォントを利用して、Web サイトで個性的な文字を使う'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-4920765925127702016</id><published>2011-09-13T20:57:00.001+09:00</published><updated>2011-09-13T20:57:48.255+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='生活'/><title type='text'>アイスコーヒーはティーポットと茶こしで入れる</title><content type='html'>&lt;p align="left"&gt;コーヒーは、毎日の生活に欠かせない。&lt;/p&gt;  &lt;p align="left"&gt;食後の一杯は格別。頭をすっきりさせるには最適。ただし、飲み過ぎると、コーヒーの味を想像するだけで、気持ち悪くなる。脳が拒否する。体が受け付けなくなる。ほどほどが良い。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;コーヒープレスは濃厚な味&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://journal.mycom.co.jp/series/coffee/001/index.html"&gt;自宅でおいしいコーヒーを楽しむために (1) コーヒープレスの使い方を「スターバックス コーヒー」に教わる 前編 | マイコミジャーナル&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;には、コーヒープレスを利用したコーヒーの入れ方が書かれている。&lt;/p&gt;    &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B00264FVCA/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;bodum BRAZIL          &lt;br /&gt;フレンチプレスコーヒーメーカー           &lt;br /&gt;0.35L BK 10948-01&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B00264FVCA/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B00264FVCA" src="http://ecx.images-amazon.com/images/I/41hWtvl-FqL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;    &lt;p&gt;実際に、&lt;a href="http://store.starbucks.co.jp/coffee/brewing/4524785040427/"&gt;スタバのコーヒープレス&lt;/a&gt;を買って試した。確かに、濃厚で独特な風味となる。しかし、自分はこの味が苦手だったので、使うのをやめた。安物の粉を使っていたのがダメだったのだろうか。いつの間にか、コーヒープレスは行方知れずに。。&lt;/p&gt;  &lt;p&gt;ちなみに、なぜ、味が違うかと言えば、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;コーヒープレスはペーパーフィルターを使わない。つまりそれは、抽出された液体の中に、豆の味がそのまま閉じ込められている、ということになる。ペーパーフィルターを使用すると美味しさでもある豆の油分などがペーパーに吸収されていくが、コーヒープレスの場合、そういったことがない。&lt;/p&gt;    &lt;p&gt;（&lt;a href="http://journal.mycom.co.jp/series/coffee/002/index.html"&gt;自宅でおいしいコーヒーを楽しむために (2) 後編 | マイコミジャーナル&lt;/a&gt;より）&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;アイスコーヒーには濃厚な味が最適&lt;/h4&gt;  &lt;p&gt;暑い時期は、アイスコーヒー。&lt;/p&gt;  &lt;p&gt;コーヒーサーバーにドリッパーを乗せ、ペーパーフィルターでコーヒーを入れる。濃いめに淹れて、氷とミルクを注ぐ。しかし、何度やっても、いまいち美味しくない。100g で 100円という、一番安いランクの粉を使っているから、仕方ないと諦めていた。&lt;/p&gt;    &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B001O0Q1XA/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;お茶パック L32枚&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B001O0Q1XA/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B001O0Q1XA" src="http://ec2.images-amazon.com/images/I/31vreUtGWqL._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;    &lt;p&gt;たまたま、ペーパフィルターがなかった日。それでも、どうしてもコーヒーが飲みたかったので、代わりにお茶を淹れるための袋にコーヒーの粉を入れ、ドリッパーに乗せて、お湯を注いだ。&lt;/p&gt;  &lt;p&gt;コーヒーサーバーには、薄くてマズそうな汁が溜まっていく。見た目で飲む気が全く失せた。仕方がないので、濃くするために、袋のまま、サーバーに溜まったコーヒーの中に突っ込み、しばらく待った。&lt;/p&gt;  &lt;p&gt;表面には、うっすらと油分が浮き出て、液の色は濃くなった。相変わらず、不味そうな濁った焦げ茶色。&lt;/p&gt;  &lt;p&gt;しかし、ミルクを入れ、アイスコーヒーにして飲んでみたら、濃厚でうまかった。 ＾＾ コーヒープレスのことは、すっかり忘れていたが、同じ味。アイスコーヒーには、この味が向いているようだ。&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;a name="teapot"&gt;&lt;/a&gt;ティーポットを使った入れ方&lt;/h4&gt;    &lt;div style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; float: right; padding-top: 10px"&gt;   &lt;p align="center"&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B003BEENWS/sakura39-22/" target="_blank"&gt;&lt;font size="2"&gt;【業務用】 18-8          &lt;br /&gt;三角 茶漉し &amp;lt;大&amp;gt;           &lt;br /&gt;C-9586&lt;/font&gt;&lt;/a&gt;       &lt;br /&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/B003BEENWS/sakura39-22/" target="_blank"&gt;&lt;img border="0" alt="B003BEENWS" src="http://ecx.images-amazon.com/images/I/31SM7v%2B-95L._SL160_.jpg" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/div&gt; これ以降、アイスコーヒーを作るときは、次のようにしている。    &lt;ol&gt;   &lt;li&gt;ティーポットの中に、直接、コーヒーの粉を入れる。 &lt;/li&gt;    &lt;li&gt;お湯を注ぐ。 &lt;/li&gt;    &lt;li&gt;スプーンで、軽くかき混ぜる。 &lt;/li&gt;    &lt;li&gt;5分程度待つ。 &lt;/li&gt;    &lt;li&gt;茶こしで、コーヒーを注ぐ。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;これで、コーヒープレスいらず。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6143769948/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="DSC03375" border="0" alt="DSC03375" src="http://lh5.ggpht.com/-la7Bb730x40/Tm9FOl87acI/AAAAAAAAA-E/Pullf_lGckY/DSC03375%25255B7%25255D.png?imgmax=800" width="604" height="281" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;&lt;a name="zutuu"&gt;&lt;/a&gt;カフェインをとりすぎると、頭痛が生じる&lt;/h4&gt;  &lt;p&gt;ところで、コーヒーに含まれるカフェインは、頭痛に効果があると言われる。&lt;/p&gt;  &lt;p&gt;例えば、一般的な頭痛薬である &lt;a href="http://www.interq.or.jp/ox/dwm/se/se11/se1149116.html"&gt;SG顆粒&lt;/a&gt; の成分には、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;カフェイン．．不快感や疼痛反応をやわらげます。また、血管性頭痛に対しては脳血管を収縮して鎮痛作用を示します。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;これに対し、コーヒーの飲み過ぎが、頭痛を生じさせることがあるらしい。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%BC%E3%83%92%E3%83%BC#.E5.8C.BB.E8.96.AC.E7.9A.84.E5.8A.B9.E6.9E.9C"&gt;コーヒー – Wikipedia&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;一日に300mg以上（コーヒー3杯に相当）のカフェインを常用する人には、&lt;b&gt;カフェイン禁断頭痛&lt;/b&gt;と呼ばれる一種の禁断症状が現れることがある。これは最後のカフェイン摂取から24時間以上経過すると偏頭痛様の症状が現れるものである。このカフェイン禁断頭痛は症状が現れてから、カフェインを摂取することで30分以内に消失するが、カフェインを摂取しない場合は2日程度継続する。&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://homepage2.nifty.com/uoh/index.html"&gt;頭痛大学&lt;/a&gt; の &lt;a href="http://homepage2.nifty.com/uoh/gakubu/kaseigakubu.htm#%E3%82%AB%E3%83%95%E3%82%A7%E3%82%A4%E3%83%B3%E7%A6%81%E6%96%AD%E9%A0%AD%E7%97%9B%E3%81%AE%E5%9B%BD%E9%9A%9B%E9%A0%AD%E7%97%9B%E5%AD%A6%E4%BC%9A%E5%AE%9A%E7%BE%A9"&gt;カフェイン禁断頭痛の国際頭痛学会定義&lt;/a&gt; によると、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;新基準(ICHD-Ⅱ) 8.4.1 カフェイン離脱頭痛 診断基準： &lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;A. CおよびDを満たす両側性 および・または 拍動性の頭痛 &lt;/li&gt;      &lt;li&gt;B. 2週間を超えて、1日200mg以上のカフェイン摂取があり、それが中断または遅延されたもの &lt;/li&gt;      &lt;li&gt;C. 頭痛は最後のカフェイン摂取後、24時間以内に発生し、100mgのカフェインにより1時間以内に軽快する &lt;/li&gt;      &lt;li&gt;D. 頭痛はカフェインの完全離脱後、7日以内に消失する &lt;/li&gt;   &lt;/ul&gt; &lt;/blockquote&gt;  &lt;p&gt;同、&lt;a href="http://homepage2.nifty.com/uoh/gakubu/kaseigakubu.htm#%E3%82%AB%E3%83%95%E3%82%A7%E3%82%A4%E3%83%B3%E4%BE%9D%E5%AD%98%E6%80%A7%E9%A0%AD%E7%97%9B"&gt;カフェイン依存性頭痛&lt;/a&gt; には、&lt;/p&gt;  &lt;blockquote&gt;   &lt;ul&gt;     &lt;li&gt;例えば、コーヒーを一日３杯、ドリンク剤を２本、鎮痛薬を毎日のむと        &lt;br /&gt;一日500mgのカフェインをとることになります。 &lt;/li&gt;      &lt;li&gt;そして一日500mgを毎日のように摂るとカフェイン禁断頭痛が起こります(新基準では1日200mg以上)。 &lt;/li&gt;   &lt;/ul&gt; &lt;/blockquote&gt;  &lt;p&gt;飲み過ぎには注意しませう。&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-4920765925127702016?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/4920765925127702016/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=4920765925127702016' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/4920765925127702016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/4920765925127702016'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/09/blog-post_13.html' title='アイスコーヒーはティーポットと茶こしで入れる'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-la7Bb730x40/Tm9FOl87acI/AAAAAAAAA-E/Pullf_lGckY/s72-c/DSC03375%25255B7%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-7315865954392473094</id><published>2011-09-12T00:55:00.001+09:00</published><updated>2011-09-12T00:55:33.413+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google Bookmarks'/><category scheme='http://www.blogger.com/atom/ns#' term='RSS'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Google Bookmarks を RSS で取得</title><content type='html'>&lt;h4&gt;XML で取得&lt;/h4&gt;  &lt;p&gt;Google Bookmarks を XML で取得するには、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="https://www.google.com/bookmarks/lookup?output=xml" href="https://www.google.com/bookmarks/lookup?output=xml"&gt;https://www.google.com/bookmarks/lookup?&lt;strong&gt;output=xml&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;特定の単語を検索したい場合は、以下を追加。&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;amp;q=単語&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;例えば、`hoge’ を対象にしたい場合、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://www.google.com/bookmarks/find?output=xml&amp;amp;q=hoge" href="http://www.google.com/bookmarks/find?output=xml&amp;amp;q=hoge"&gt;http://www.google.com/bookmarks/&lt;strong&gt;find&lt;/strong&gt;?output=xml&amp;amp;&lt;strong&gt;q=hoge&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;( cf. &lt;a href="http://jutememo.blogspot.com/2009/09/google-xml.html"&gt;Google ブックマークを XML で取得&lt;/a&gt; )&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;問題点&lt;/h4&gt;  &lt;p&gt;上記のデータ取得方法は、公式なやり方ではない。そのためか、単語を検索した結果が、以前とは変わってしまったようだ。&lt;/p&gt;  &lt;p&gt;以前は、以下に示す内容だった。&lt;/p&gt;  &lt;pre class="prettyprint"&gt;&amp;lt;xml_api_reply version=&amp;quot;1&amp;quot;&amp;gt;
	&amp;lt;bookmarks&amp;gt;
		&lt;strong&gt;&amp;lt;bookmark&amp;gt;&lt;/strong&gt;
			&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;
			&amp;lt;url&amp;gt;&amp;lt;/url&amp;gt;
			&amp;lt;timestamp&amp;gt;&amp;lt;/timestamp&amp;gt;
			&amp;lt;id&amp;gt;&amp;lt;/id&amp;gt;
			&amp;lt;labels&amp;gt;
				&amp;lt;label&amp;gt;&amp;lt;/label&amp;gt;
			&amp;lt;/labels&amp;gt;
		&lt;strong&gt;&amp;lt;/bookmark&amp;gt;&lt;/strong&gt;&lt;/pre&gt;

&lt;p&gt;これが次のようになった。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&amp;lt;xml_api_reply version=&amp;quot;1&amp;quot;&amp;gt;
	&amp;lt;bookmarks&amp;gt;
		&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;
		&amp;lt;url&amp;gt;&amp;lt;/url&amp;gt;
		&amp;lt;timestamp&amp;gt;&amp;lt;/timestamp&amp;gt;
		&amp;lt;id&amp;gt;&amp;lt;/id&amp;gt;
		&amp;lt;labels&amp;gt;
			&amp;lt;label&amp;gt;&amp;lt;/label&amp;gt;
		&amp;lt;/labels&amp;gt;&lt;/pre&gt;

&lt;p&gt;比較するとわかるように、&amp;lt;bookmark&amp;gt; タグがなくなった。これにより、各ブックマークの境界が不明となった。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4 align="left"&gt;RSS で取得&lt;/h4&gt;

&lt;p&gt;これでは困るので、XML での取得をやめ、RSS で取得することに変更。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a title="http://www.google.com/bookmarks/find?output=rss&amp;amp;q=hoge" href="http://www.google.com/bookmarks/lookup?output=rss"&gt;http://www.google.com/bookmarks/lookup?output=rss&lt;/a&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;ソースを見たい場合は、Firefox ボタン &amp;gt; Web 開発 &amp;gt; ページのソースを表示。&lt;/p&gt;

&lt;p&gt;特定の単語を検索したい場合は、&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a title="http://www.google.com/bookmarks/find?output=rss&amp;amp;q=hoge" href="http://www.google.com/bookmarks/find?output=rss&amp;amp;q=hoge"&gt;http://www.google.com/bookmarks/find?output=rss&lt;strong&gt;&amp;amp;q=hoge&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;この結果は、ブックマークの境界として &amp;lt;item&amp;gt; が使われている。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;
	&amp;lt;rss version=&amp;quot;2.0&amp;quot; xmlns:smh=&amp;quot;http://www.google.com/history/&amp;quot; xmlns:recommend=&amp;quot;http://www.google.com/history/items&amp;quot;&amp;gt;
		&amp;lt;channel&amp;gt;
			&amp;lt;title&amp;gt;Google ブックマーク&amp;lt;/title&amp;gt;
			&amp;lt;link&amp;gt;http://www.google.com/bookmarks/&amp;lt;/link&amp;gt;
			&amp;lt;description&amp;gt;Google - ブックマーク RSS フィード&amp;lt;/description&amp;gt;
			&amp;lt;smh:signature&amp;gt;&amp;lt;/smh:signature&amp;gt;
			&amp;lt;smh:homepage_label&amp;gt;&amp;lt;/smh:homepage_label&amp;gt;
			&lt;strong&gt;&amp;lt;item&amp;gt;&lt;/strong&gt;
				&amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;
				&amp;lt;link&amp;gt;&amp;lt;/link&amp;gt;
				&amp;lt;pubDate&amp;gt;&amp;lt;/pubDate&amp;gt;
				&amp;lt;category&amp;gt;&amp;lt;/category&amp;gt;
				&amp;lt;description&amp;gt;&amp;lt;/description&amp;gt;
				&amp;lt;guid isPermaLink=&amp;quot;false&amp;quot;&amp;gt;&amp;lt;/guid&amp;gt;
				&amp;lt;smh:bkmk&amp;gt;&amp;lt;/smh:bkmk&amp;gt;
				&amp;lt;smh:bkmk_id&amp;gt;&amp;lt;/smh:bkmk_id&amp;gt;
				&amp;lt;smh:bkmk_title&amp;gt;&amp;lt;/smh:bkmk_title&amp;gt;
				&amp;lt;smh:bkmk_label&amp;gt;&amp;lt;/smh:bkmk_label&amp;gt;
			&lt;strong&gt;&amp;lt;/item&amp;gt;&lt;/strong&gt;&lt;/pre&gt;

&lt;p&gt;このデータを元に、DOM に変換したい場合は、「&lt;a href="http://jutememo.blogspot.com/2009/09/javascript-xml.html"&gt;JavaScript で XML を読み込む&lt;/a&gt;」を参照。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;関連記事&lt;/h4&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://jutememo.blogspot.com/2009/10/google-google-greasemonkey.html"&gt;Google 検索と同時に Google ブックマーク の検索結果を表示する Greasemonkey スクリプト&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-7315865954392473094?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/7315865954392473094/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=7315865954392473094' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7315865954392473094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/7315865954392473094'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/09/google-bookmarks-rss.html' title='Google Bookmarks を RSS で取得'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-2358142938196696565</id><published>2011-09-11T01:35:00.001+09:00</published><updated>2011-09-11T01:35:34.417+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogger'/><title type='text'>Blogger の新しいインターフェイスで、改行が自動的に &lt;br /&gt; に変換されないようにする</title><content type='html'>&lt;h4&gt;旧インターフェイスの改行設定&lt;/h4&gt;  &lt;p&gt;ブログを書くときは、&lt;a href="http://explore.live.com/windows-live-writer"&gt;Windows Live Writer&lt;/a&gt; を利用している。&lt;/p&gt;  &lt;p&gt;最近投稿した記事を修正する場合、通常 WLW から過去の記事を開く。これに対し、相当古い記事を修正する場合は、次の方法をとる。理由は、WLW で過去の記事を開くのに時間がかかるため。&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;投稿した記事を、Blogger において、 HTML モードで表示。&lt;/li&gt;    &lt;li&gt;内容を WLW へコピペ。&lt;/li&gt;    &lt;li&gt;記事を修正した後、WLW で HTML 表示にして、コピー。&lt;/li&gt;    &lt;li&gt;Blogger で、HTML をコピーした元の場所へペースト。&lt;/li&gt; &lt;/ol&gt;  &lt;p align="left"&gt;WLW で HTML を表示させると、HTML が整形され、適当に改行が入る。&lt;/p&gt;  &lt;p align="left"&gt;このため、&lt;a href="http://www.blogger.com/"&gt;Blogger&lt;/a&gt; では、エディタに入力された改行は、&amp;lt;br /&amp;gt; タグに変換されないようにしている。Blogger のメニューより、&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;&lt;strong&gt;設定 &amp;gt; フォーマット &amp;gt; 改行の変換&lt;/strong&gt; &lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;で「いいえ」を選択。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6132733819/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="CropperCapture[321]" border="0" alt="CropperCapture[321]" src="http://lh5.ggpht.com/-Me4zqKQ-Clk/TmuRzMipHbI/AAAAAAAAA9w/Qbrp0aks5cM/CropperCapture%25255B321%25255D%25255B7%25255D.png?imgmax=800" width="424" height="472" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;これにより、過去に投稿した記事を、ブラウザ上で編集しようとした場合、「HTMLの編集」モードで表示される。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6132742573/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="CropperCapture[322]" border="0" alt="CropperCapture[322]" src="http://lh6.ggpht.com/-PdkIHVM3SxQ/TmuRzn_EA7I/AAAAAAAAA90/p25_aE23OL0/CropperCapture%25255B322%25255D%25255B6%25255D.png?imgmax=800" width="454" height="364" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;新インターフェイスの改行設定&lt;/h4&gt;  &lt;p&gt;久しぶりに、Blogger のダッシュボードにアクセスしたら、&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;「新しい Blogger インターフェイスを使ってみる」&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;というリンクが表示されたので、新しいインターフェイスに変更した。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6133301772/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="CropperCapture[317]" border="0" alt="CropperCapture[317]" src="http://lh5.ggpht.com/-idcxGd6T60E/TmuR0Cb19HI/AAAAAAAAA94/aeBWFPyzP8Y/CropperCapture%25255B317%25255D%25255B3%25255D.png?imgmax=800" width="506" height="106" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;すっきりとしたデザインになったので、好感が持てた。特に、ブラウザから投稿するときの、エディタの表示領域が広くて使いやすい。&lt;/p&gt;  &lt;p align="left"&gt;しかし、新しいインターフェイスで、以前に投稿した記事を修正した後、プレビューを表示させたところ、ブラウザ上で改行してある箇所が &amp;lt;br /&amp;gt; に変換されてしまった。 (@_@; 上記の通り、そのような設定にはしてなかった。&lt;/p&gt;  &lt;p&gt;新しいインターフェイス上で、改行が &amp;lt;br /&amp;gt; に変換されない設定を探したけれど、メニューから&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;設定 &amp;gt; フォーマット&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;がなくなっている。&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6133337198/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="CropperCapture[323]" border="0" alt="CropperCapture[323]" src="http://lh6.ggpht.com/-J8odd0OcJJE/TmuR0QYtYiI/AAAAAAAAA98/g9Z8Rcm9eYo/CropperCapture%25255B323%25255D%25255B5%25255D.png?imgmax=800" width="132" height="367" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;新しいインターフェイスを使いたかったのに残念。。&lt;/p&gt;  &lt;p&gt;…と思っていたが、記事を編集するエディタの右側に表示される&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;投稿の設定 &amp;gt; オプション &amp;gt; 改行&lt;/strong&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;に「&lt;strong&gt;&amp;lt;br&amp;gt; タグを使用&lt;/strong&gt;」という選択があった。&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6132769149/"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" title="CropperCapture[320]" border="0" alt="CropperCapture[320]" src="http://lh6.ggpht.com/-r7iJlUukzc0/TmuR1SWB3NI/AAAAAAAAA-A/SfwloBcOav0/CropperCapture%25255B320%25255D%25255B6%25255D.png?imgmax=800" width="709" height="455" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;一度、設定を変更したら、それ以降別の記事の編集、新規投稿でも、同じ設定になってくれた。&lt;/p&gt;  &lt;p&gt;これで新インターフェイスに移行できる。 ^^&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/76550672307031307-2358142938196696565?l=jutememo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jutememo.blogspot.com/feeds/2358142938196696565/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=76550672307031307&amp;postID=2358142938196696565' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2358142938196696565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/76550672307031307/posts/default/2358142938196696565'/><link rel='alternate' type='text/html' href='http://jutememo.blogspot.com/2011/09/blogger.html' title='Blogger の新しいインターフェイスで、改行が自動的に &amp;lt;br /&amp;gt; に変換されないようにする'/><author><name>Jute Memo</name><uri>https://profiles.google.com/106927203117448476954</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-7jdDV5i9NMc/AAAAAAAAAAI/AAAAAAAABB0/FuMWX7aouOs/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-Me4zqKQ-Clk/TmuRzMipHbI/AAAAAAAAA9w/Qbrp0aks5cM/s72-c/CropperCapture%25255B321%25255D%25255B7%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-76550672307031307.post-5966744567115467581</id><published>2011-09-06T21:24:00.001+09:00</published><updated>2012-01-30T00:27:57.940+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Scheme'/><category scheme='http://www.blogger.com/atom/ns#' term='Haskell'/><category scheme='http://www.blogger.com/atom/ns#' term='構造の抽象化'/><title type='text'>Haskell で特定の構造を前提としない関数 - 要素を辿る関数を必要に応じて定義</title><content type='html'>&lt;h4&gt;0. 概要&lt;/h4&gt;  &lt;ol&gt;   &lt;li&gt;普通、「特定の構造に対して適用する関数」は、特定の型を前提として考える。 &lt;/li&gt;    &lt;li&gt;これに対して、構造を辿る関数を与えることによって、「特定の型を前提としない関数」を定義することができる。 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;前者の方法と比べながら、後者について見ていく。&lt;/p&gt;  &lt;h5&gt;目次：&lt;/h5&gt;  &lt;ul&gt;   &lt;li&gt;1. 型を決めてから、関数を定義する&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;リストに適用する関数の場合&lt;/li&gt;      &lt;li&gt;木に適用する関数の場合&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;2. 特定の構造を前提としない関数&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;treewalk 関数の引数について&lt;/li&gt;      &lt;li&gt;第4引数 walker がイメージしにくい理由&lt;/li&gt;      &lt;li&gt;ノードを辿っていく関数 walker&lt;/li&gt;      &lt;li&gt;treewalk 関数のまとめ&lt;/li&gt;      &lt;li&gt;treewalk 関数の使い方&lt;/li&gt;      &lt;li&gt;Data.Tree 型の値に対して treewalk 関数を適用&lt;/li&gt;      &lt;li&gt;リストに対して treewalk 関数を適用&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;3. 要素を辿っていく walk 関数について、はじめから再考&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Data.Tree 型に対して、walk 関数を適用&lt;/li&gt;      &lt;li&gt;リストに対して、walk 関数を適用&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;3-1. walk 関数から、要素に適用する関数を分離&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Data.Tree に対して、walk 関数を適用&lt;/li&gt;      &lt;li&gt;リストに対して、walk 関数を適用&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;3-2. walk 関数から、更に述語を分離&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Data.Tree に対して、walk 関数を適用&lt;/li&gt;      &lt;li&gt;リストに対して、walk 関数を適用&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;1. 型を決めてから、関数を定義する&lt;/h4&gt;  &lt;h5&gt;リストに適用する関数の場合&lt;/h5&gt;  &lt;p&gt;リストの要素に、関数を適用するには、&lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#v:map"&gt;map&lt;/a&gt; 関数を使う。&lt;/p&gt;  &lt;p&gt;例えば、要素を 2 倍したいなら、&lt;/p&gt;  &lt;pre class="prettyprint"&gt;*Main&amp;gt; map (* 2) [1..5]
[2,4,6,8,10]&lt;/pre&gt;

&lt;p&gt;map 関数は、「リスト」という構造を前提に定義されている。&lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/src/GHC-Base.html#map"&gt;定義&lt;/a&gt;を確認すると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;map :: (a -&amp;gt; b) -&amp;gt; &lt;strong&gt;[a]&lt;/strong&gt; -&amp;gt; [b]
map _ []     = []
map f (x:xs) = f x : map f xs&lt;/pre&gt;

&lt;p align="left"&gt;第 2 引数は関数の対象であるリスト。&lt;/p&gt;

&lt;p align="left"&gt;第 1 引数である関数 f は、データコンストラクタ (:) を使い、リスト構造を辿っていくかのように見える。 &lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;木に適用する関数の場合&lt;/h5&gt;

&lt;p&gt;2 つの子を持つ「木」を、以下のように定義したとする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;data Tree a = Leaf a&amp;#160;&amp;#160; | Branch (Tree a) (Tree a)
            deriving Show&lt;/pre&gt;

&lt;p&gt;&lt;a name="varTree"&gt;&lt;/a&gt;適当に Tree a 型の値を作る。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;tree = Branch (Leaf 1) 
              (Branch (Branch (Leaf 2)
                              (Leaf 3))
                      (Leaf 4))&lt;/pre&gt;

&lt;p&gt;木の「葉」が持つ値に、関数を適用する関数を mapTree とすると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;mapTree f (Leaf x)&amp;#160;&amp;#160;&amp;#160;&amp;#160; = Leaf (f x)
mapTree f (Branch l r) = Branch (mapTree f l) (mapTree f r)&lt;/pre&gt;

&lt;p&gt;mapTree 関数を、変数 tree に適用してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Main&amp;gt; mapTree (*2) tree
Branch (Leaf 2) (Branch (Branch (Leaf 4) (Leaf 6)) (Leaf 8))&lt;/pre&gt;

&lt;p&gt;mapTree 関数も、先ほどの map 関数のように、適用する対象である Tree a&amp;#160; 型の構造を前提としている。 &lt;/p&gt;

&lt;p&gt;型コンストラクタ Tree を、&lt;a href="http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:Functor"&gt;Functor&lt;/a&gt; クラスのインスタンスにするなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;instance Functor Tree where
    fmap f (Leaf x)&amp;#160;&amp;#160;&amp;#160; = Leaf (f x)
    fmap f (Branch l r) = Branch (fmap f l) (fmap f r)&lt;/pre&gt;

&lt;p&gt;( cf .&lt;a href="http://jutememo.blogspot.com/2008/10/haskell-fmap.html"&gt;Haskell の fmap&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;変数 tree に fmap を適用すると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;*Main&amp;gt; fmap (*2) tree
Branch (Leaf 2) (Branch (Branch (Leaf 4) (Leaf 6)) (Leaf 8))&lt;/pre&gt;

&lt;p&gt;この方法も、fmap を具体的に定義するとき、Tree a 型の構造を前提としている。&lt;/p&gt;

&lt;p&gt;オブジェクト指向で何か考える場合も、問題領域の対象を整理し、クラスと構造を決めながら、メソッドを実装していく。型と構造を考えつつ、操作を割り当てる。構造を離れて、操作だけを考えることは難しい。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;2. 特定の構造を前提としない関数&lt;/h4&gt;

&lt;p&gt;これに対して、「&lt;a href="http://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3A%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91%E8%A1%A8%E7%8F%BE"&gt;Scheme:オブジェクト指向表現&lt;/a&gt;」 の &lt;a href="http://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91%E8%A1%A8%E7%8F%BE#H-iqqfak"&gt;抽象化の方向&lt;/a&gt; には、オブジェクト指向と比べながら、関数指向のメリットが述べられている。&lt;/p&gt;

&lt;p&gt;自分の理解した範囲で、簡単にまとめると、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;オブジェクト指向では、はじめに「型、構造」を想定し、それに相応しい操作を定義していく。これにより、「型、構造」と操作は不可分となり、操作のためのコンテナが必要となる。 &lt;/li&gt;

  &lt;li&gt;関数指向では、「型、構造」を事前に想定しない関数を定義することができる。「型、構造」と操作が独立していることにより、必要な操作を、必要に応じて、定義することができる。これを実現するために、クロージャを用いる。 &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;クロージャに関しては、以下を参照。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://jutememo.blogspot.com/2010/08/javascript.html#closure"&gt;2. クロージャの意味&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;脱線するが、上記に関連して、「&lt;a href="http://www.sics.se/~joe/bluetail/vol1/v1_oo.html"&gt;Why OO sucks&lt;/a&gt;」のオブジェクト指向に対する批判を、また、思い出した。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;h5&gt;Objection 1 - Data structure and functions should not be bound together&lt;/h5&gt;
Objects bind functions and data structures together in indivisible units. I think this is a fundamental error since functions and data structures belong in totally different worlds. Why is this? 

  &lt;ul&gt;
    &lt;li&gt;&lt;font color="#ff0000"&gt;Functions do things&lt;/font&gt;. They have inputs and outputs. The inputs and outputs are data structures, which get changed by the functions. In most languages functions are built from sequences of imperatives: &amp;quot;Do this and then that ...&amp;quot; to understand functions you have to understand the order in which things get done (In lazy FPLs and logical languages this restriction is relaxed). &lt;/li&gt;

    &lt;li&gt;&lt;font color="#0000ff"&gt;Data structures just are&lt;/font&gt;. They don't do anything. They are intrinsically declarative. &amp;quot;Understanding&amp;quot; a data structure is a lot easier than &amp;quot;understanding&amp;quot; a function. &lt;/li&gt;
  &lt;/ul&gt;

  &lt;p&gt;（装飾は引用者による）&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;「&lt;a href="http://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3A%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91%E8%A1%A8%E7%8F%BE"&gt;Scheme:オブジェクト指向表現&lt;/a&gt;」 の &lt;a href="http://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%e3%82%aa%e3%83%96%e3%82%b8%e3%82%a7%e3%82%af%e3%83%88%e6%8c%87%e5%90%91%e8%a1%a8%e7%8f%be#H-2vljgcxm45nfw"&gt;抽象化の方向&lt;/a&gt;に戻り、少し長めに引用する。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;関数指向の考え方をちょっと示してみます。 与えられた「木」のすべての葉を深さ優先で辿り、与えられた処理を施して行く、という処理を考えてみます。&lt;strong&gt; 但し、木の具体的な実装はわかりません&lt;/strong&gt;。…&lt;/p&gt;

  &lt;p&gt;&lt;u&gt;関数型では、抽象的な「木」に関する可能な操作を直接関数で渡してやります。&lt;/u&gt; &lt;/p&gt;

  &lt;pre&gt;  (define (tree-walk tree proc leaf? &lt;strong&gt;walker&lt;/strong&gt;)
    (define (rec node)
      (&lt;strong&gt;walker&lt;/strong&gt; (lambda (n) (if (leaf? n) (proc n) (rec n))) node))
    (if (leaf? tree) (proc tree) (rec tree)))&lt;/pre&gt;

  &lt;p&gt;ここで、leaf? は木のノードを取り、それが葉かそうでないかを返す関数、 &lt;strong&gt;walkerは関数と木のノードを取り、ノードのすべての子供に対して渡された関数を適用する関数&lt;/strong&gt;。…&lt;/p&gt;

  &lt;p align="left"&gt;&lt;u&gt;関数指向のメリットは、tree型に対して適用可能な操作というものを限定していないことです。&lt;/u&gt;tree-walkを適用したくなったら、leaf? と walkerに相当する関数を(なんならその場ででも)作って渡してやれば良いのです。…&lt;/p&gt;

  &lt;ul&gt;
    &lt;li&gt;(&lt;a href="http://practical-scheme.net/wiliki/wiliki.cgi?Shiro"&gt;Shiro&lt;/a&gt;) この木の例に関しては、コンスセルによる表現を全く仮定していないっす。 (walkerはリストを返す、とかいう制約もついていません)。&lt;strong&gt;コンスセルだろうがアレイだろうが適当なコンテナタイプだろうがファイルシステムだろうが、詳細をクロージャの中に隠蔽する、というのがクロージャ指向&lt;/strong&gt; :-) の流儀だと思います。 &lt;/li&gt;
  &lt;/ul&gt;

  &lt;p&gt;（装飾は引用者による）&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;先ほど述べたように、関数を適用する対象の構造を前提とせず、構造は後回しにして、関数を定義。クラス指向のように、型と操作が密結合してないので、必要に応じて、構造に対する操作を関数に渡せば良い。&lt;/p&gt;

&lt;p align="left"&gt;しかし、例としてあげられていた関数を、スラスラと理解できないので、ゆっくりと確認していくことに。 (+_+)&lt;/p&gt;

&lt;p align="left"&gt;とりあえず、Scheme は見慣れてないので、上記 tree-walk を Haskell で書いてみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;treewalk tree proc isLeaf walker = if isLeaf tree 
                                   then proc tree
                                   else rec tree
    where
      rec node = walker (\n -&amp;gt; if isLeaf n
                               then proc n
                               else rec n)
                        node&lt;/pre&gt;

&lt;p align="left"&gt;if の部分を整理して、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;treewalk tree proc isLeaf walker = treewalk' tree
    where
      treewalk' = \n -&amp;gt; if isLeaf n
                        then proc n 
                        else walker treewalk' n&lt;/pre&gt;

&lt;p align="left"&gt;う－ん、これでもまだ、動作のイメージがつかめない。。(@_@;&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;treewalk 関数の引数について&lt;/h5&gt;

&lt;p align="left"&gt;treewalk 関数の引数を、一つ一つ見ていく。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div&gt;第 1 引数 tree : treewalk を適用する対象&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;第 2 引数 proc : 葉に適用する関数&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;第 3 引数 isLeaf : ノードが葉である場合に、真を返す述語&lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p align="left"&gt;イメージしにくいのは、第 4 引数 walker 。この関数が使われているのは、上記コードの3 行目。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;walker treewalk’ n&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;tree-walk 関数の説明より、適用対象が「木」であるとき、walker の&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;第 2 引数は、木のノード。（親ノード）&lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;第 1 引数は、木のノード（子ノード）に適用する関数。&lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p align="left"&gt;となるように、利用が想定されている。ただし、あくまでも「想定」であり、使う側が機能を満たすように実装する必要がある。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;第4引数 walker がイメージしにくい理由&lt;/h5&gt;

&lt;p align="left"&gt;treewalk 関数の機能は、以下の通りだった。&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;与えられた「木」のすべての葉を深さ優先で辿り、与えられた処理を施して行く&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;定義した関数の引数の名前を使い、言い換えると、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;対象 tree に対して、要素が isLeaf 関数で真となる「葉」に、関数 proc を適用する&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;treewalk 関数の実装を見ると、すべての葉を「辿る」ための手段が具体的に書かれていない。いきなりノードに対する処理が記述されおり、walker が何をするか不明なまま、関数が再帰的に定義されているように見える。この点がイメージしにくいところ。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;ノードを辿っていく関数 walker &lt;/h5&gt;

&lt;p align="left"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6098532289/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="CropperCapture[310]" border="0" alt="CropperCapture[310]" align="right" src="http://lh6.ggpht.com/-AW8JXG_65QA/TmYQ5XLO9UI/AAAAAAAAA9k/3C3G3yuYHwE/CropperCapture3105.png?imgmax=800" width="352" height="359" /&gt;&lt;/a&gt;木のノードを辿るには、親ノードから、その子ノードへ辿る方法が必要となる。どこかに定義されていなくては、木の要素を辿れない。 treewalk 関数において、その具体的な方法が期待されるのが walker 。&lt;/p&gt;

&lt;p align="left"&gt;walker を加え、もう一度、言い換えると、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p align="left"&gt;対象 tree に対して、&lt;strong&gt;要素を辿るために walker を使い&lt;/strong&gt;、要素が isLeaf 関数で真となる「葉」に、proc を適用する&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p align="left"&gt;今回は、すべての葉を対象に proc 関数を適用したい。よって、次のように walker の役割を想定することになる。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;第4引数 walker : 与えられたノードから辿ることのできる、子ノードに対して、関数を適用する。&lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;このように、walker にノードの辿り方を任せるメリットは、treewalk 関数のような、特定の構造を前提としない関数を定義できることにある。関数の適用対象の構造が変われば、walker を取り替えるだけで済むため、異なる構造に対して、共通部分を抽出できる。&lt;/p&gt;

&lt;p&gt;結果的に walker を、&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;構造を結びつける関数&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;と見なすことができる。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;treewalk 関数のまとめ&lt;/h5&gt;

&lt;p&gt;treewalk で行っていることをまとめると、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;対象のノードが葉の場合、ノードに proc を適用する。 &lt;/li&gt;

  &lt;li&gt;対象のノードが葉ではない場合、walker に、そのノードと関数を与え、与えたノードから辿ることができる子ノードに関数を適用する。 &lt;/li&gt;
&lt;/ol&gt;

&lt;p align="left"&gt;treewalk 関数の型を調べると、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;treewalk
  :: &lt;strong&gt;t1&lt;/strong&gt; -&amp;gt; (t1 -&amp;gt; t) -&amp;gt; (t1 -&amp;gt; Bool) -&amp;gt; ((t1 -&amp;gt; t) -&amp;gt; t1 -&amp;gt; t) -&amp;gt; t&lt;/pre&gt;

&lt;p align="left"&gt;第1引数が、特定の型に縛られていないことがわかる。&lt;/p&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;h5 align="left"&gt;treewalk 関数の使い方&lt;/h5&gt;

&lt;p&gt;先ほど使った変数 tree に、treewalk 関数を適用するには、次のように引数を与える。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;main = do print $ treewalk tree
                           (\(Leaf x) -&amp;gt; Leaf (x * 2))
                           (\n -&amp;gt; case n of
                                    Leaf _     -&amp;gt; True
                                    Branch _ _ -&amp;gt; False)
                           (\f (Branch l r) -&amp;gt; Branch (f l) (f r))&lt;/pre&gt;

&lt;ul&gt;
  &lt;li&gt;第2引数は、葉に対する処理。 &lt;/li&gt;

  &lt;li&gt;第3引数は、葉であるときに真を返す関数。 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;第 4 引数の walker は、親となるノード（walker の第 2 引数）から、辿ることができる子ノードに対して、関数（walker 関数の第1引数）を適用する。結果は、以下のようになる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;Branch (Leaf 2) (Branch (Branch (Leaf 4) (Leaf 6)) (Leaf 8))&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;Data.Tree 型の値に対して treewalk 関数を適用&lt;/h5&gt;

&lt;p&gt;同じ treewalk 関数を使い、&lt;a href="http://www.haskell.org/ghc/docs/6.6/html/libraries/base/Data-Tree.html"&gt;Data.Tree&lt;/a&gt; 型の値に適用してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;import Data.Tree

tree2 = Node 1 [ Node 2 []
               , Node 3 [ Node 4 []
                        , Node 5 []
                        , Node 6 []]]&lt;/pre&gt;

&lt;p&gt;これに対して、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;main = print $ treewalk tree2
                        (\(Node x xs) -&amp;gt; Node (x*2) xs)
                        (\n -&amp;gt; case n of
                                 Node x [] -&amp;gt; True
                                 otherwise -&amp;gt; False)
                        (\f (Node x xs) -&amp;gt; Node x (map f xs))&lt;/pre&gt;

&lt;p&gt;子を持たない Node を「葉」と見なし、ノードを辿る walker は、先ほどの定義を少し変更するだけで済んだ。&lt;/p&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6099105278/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="CropperCapture[311]" border="0" alt="CropperCapture[311]" src="http://lh6.ggpht.com/-HDbJHbg80_w/TmYQ5zcUn3I/AAAAAAAAA9o/K6VsJv9ilcI/CropperCapture3115.png?imgmax=800" width="340" height="303" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;結果は、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;Node { rootLabel = 1&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = [ Node { rootLabel = &lt;strong&gt;4&lt;br /&gt;                          &lt;/strong&gt;, subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , Node { rootLabel = 3&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = [ Node { rootLabel = &lt;strong&gt;8&lt;br /&gt;                                               &lt;/strong&gt;, subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , Node { rootLabel = &lt;strong&gt;10&lt;br /&gt;                                               &lt;/strong&gt;, subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , Node { rootLabel = &lt;strong&gt;12&lt;br /&gt;                                               &lt;/strong&gt;, subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ]&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ]&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/pre&gt;

&lt;p align="left"&gt;ちなみに、「葉」に対してのみ、関数が適用されるので、子を持つノードの値は変わらない。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;リストに対して treewalk 関数を適用&lt;/h5&gt;

&lt;p align="left"&gt;では、treewalk 関数を使って、リストの要素を 2 倍できるだろうか？&lt;/p&gt;

&lt;p align="left"&gt;リストの場合、各要素をすべて「葉」と見なし、walker が次の要素へと辿るように考えればいいのかな…&lt;/p&gt;

&lt;p align="center"&gt;&lt;a href="http://www.flickr.com/photos/8246127@N08/6108430914/"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="CropperCapture[312]" border="0" alt="CropperCapture[312]" src="http://lh5.ggpht.com/-EK5jLyaKV0Q/TmYQ6KB-OAI/AAAAAAAAA9s/_kluX0lsi4g/CropperCapture3125.png?imgmax=800" width="426" height="142" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;pre class="prettyprint"&gt;          print $ treewalk [0..5]
                           (\(x:xs) -&amp;gt; (x*2) : xs)       
                           (\_ -&amp;gt; True)
                           (\f n -&amp;gt; case n of
                                      x : xs -&amp;gt; x : f xs
                                      [] -&amp;gt; [])&lt;/pre&gt;

&lt;p align="left"&gt;しかし、結果、要素は 2 倍されなかった。。 (+_+)&lt;/p&gt;

&lt;p align="left"&gt;理由は、treewalk が proc を適用するのは「葉」に対してだけれど、walker がノードを辿るのは、葉ではない要素であるため。リストの各要素を、「葉である」と同時に「子ノードを持つ」と見なしたので、proc を適用できなかった。先ほど Data.Tree 型の値に対して、treewalk 関数を適用したら、子を持つノードの値が変わらなかったことと同じ。&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="walk"&gt;&lt;/a&gt;3. 要素を辿っていく walk 関数について、はじめから再考&lt;/h4&gt;

&lt;p&gt;treewalk 関数のように、要素を辿る関数について、単純な形から考えてみる。&lt;/p&gt;

&lt;p&gt;まずは、以下の 2 つの引数を与える関数。&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;div align="left"&gt;第 2 引数: ノード (node) &lt;/div&gt;
  &lt;/li&gt;

  &lt;li&gt;
    &lt;div align="left"&gt;第 1 引数: 上記ノードから辿ることができる要素に、関数を適用していく、と想定する関数 (walker) &lt;/div&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p align="left"&gt;関数名を walk とすると、定義は以下の通り。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walk walker node = walker (\n -&amp;gt; walk walker n) 
                          node&lt;/pre&gt;

&lt;p&gt;改めて、適用対象の「木」の型を、以下のように定義する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;data BinaryTree a = Leaf a 
                  | Branch (BinaryTree a) a (BinaryTree a) 
                  deriving Show&lt;/pre&gt;

&lt;p&gt;適当に値を作る。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;tree = Branch (Leaf 1)
              100
              (Branch (Leaf 2)
                      200
                      (Leaf 3))&lt;/pre&gt;

&lt;p&gt;これに対し、walk 関数を適用してみる。要素を辿るだけで、何もせず、そのまま返すには、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk (\f n -&amp;gt; case n of
                     Leaf x -&amp;gt; Leaf x
                     Branch l x r -&amp;gt; Branch (f l) x (f r))
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Branch (Leaf 1) 100 (Branch (Leaf 2) 200 (Leaf 3))&lt;/pre&gt;

&lt;p&gt;葉を 2 倍し、枝を 3 倍するなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk (\f n -&amp;gt; case n of
                     Leaf x -&amp;gt; Leaf (x*2)
                     Branch l x r -&amp;gt; Branch (f l) (x*3) (f r))
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Branch (Leaf 2) 300 (Branch (Leaf 4) 600 (Leaf 6))&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;Data.Tree 型に対して、walk 関数を適用&lt;/h5&gt;

&lt;p&gt;次に、先ほど使った Data.Tree 型の値 (tree2) に、同じように walk 関数を適用してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  -- 何もしないで、そのまま返す
  print $ walk (\f n -&amp;gt; case n of
                          Node x [] -&amp;gt; Node x []
                          Node x xs -&amp;gt; Node x $ map f xs)
               tree2

  -- 葉を 2 倍し、枝を 3 倍する
  print $ walk (\f n -&amp;gt; case n of
                          Node x [] -&amp;gt; Node (x*2) []
                          Node x xs -&amp;gt; Node (x*3) $ map f xs)
               tree2&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;リストに対して、walk 関数を適用&lt;/h5&gt;

&lt;p&gt;リストに対して、walk 関数を適用してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk (\f n -&amp;gt; case n of
                          []     -&amp;gt; []
                          x : xs -&amp;gt; x : f xs)
               [0..5]

  print $ walk (\f n -&amp;gt; case n of
                          []     -&amp;gt; []
                          x : xs -&amp;gt; (x*2) : f xs)
               [0..5]&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="walk_f"&gt;&lt;/a&gt;3-1. walk 関数から、要素に適用する関数を分離&lt;/h4&gt;

&lt;p&gt;上記の方法は、&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;ノードを辿っていくこと &lt;/li&gt;

  &lt;li&gt;ノードに関数を適用すること &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;の 2 つを同時に行っている。これを分離したい。&lt;/p&gt;

&lt;p&gt;「ある構造を持つ型に対して、各要素を辿り、特定の関数を適用する関数」に変更。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walk f walker node = walker (\n -&amp;gt; walk f walker n) 
                            (f node)&lt;/pre&gt;

&lt;ul&gt;
  &lt;li&gt;第1引数 f は、要素に適用する関数。 &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;その他は同じ。&lt;/p&gt;

&lt;p&gt;これを使い、何もしないで、そのまま返すには、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk id
               (\f n -&amp;gt; case n of
                          Leaf x       -&amp;gt; Leaf x
                          Branch l x r -&amp;gt; Branch (f l) x (f r))
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Branch (Leaf 1) 100 (Branch (Leaf 2) 200 (Leaf 3))&lt;/pre&gt;

&lt;p&gt;要素を辿る関数を使いまわしたいので、別に定義しておく。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walkBinaryTree _ (Leaf x)       = Leaf x
walkBinaryTree f (Branch l x r) = Branch (f l) x (f r)&lt;/pre&gt;

&lt;p&gt;葉は 2 倍し、枝を 3 倍するなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk (\n -&amp;gt; case n of 
                        Leaf x       -&amp;gt; Leaf (x*2)
                        Branch l x r -&amp;gt; Branch l (x*3) r)
               walkBinaryTree
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Branch (Leaf 2) 300 (Branch (Leaf 4) 600 (Leaf 6))&lt;/pre&gt;

&lt;p&gt;要素に適用する関数も使いまわしたいので、別に定義。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;doubleLeafTripleBranch (Leaf x)       = Leaf $ x*2
doubleLeafTripleBranch (Branch l x r) = Branch l (x*3) r&lt;/pre&gt;

&lt;p&gt;要素を辿ったとき、リストを返して欲しいなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walkBinaryTree2List _ (Leaf x)       = [x]
walkBinaryTree2List f (Branch l x r) = x : f l ++ f r&lt;/pre&gt;

&lt;p&gt;これを使い、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk doubleLeafTripleBranch
               walkBinaryTree2List
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; [300,2,600,4,6]&lt;/pre&gt;

&lt;p&gt;逆に辿りたい場合は、辿り方を変更する。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;reverseWalkBinaryTree2List _ (Leaf x)       = [x]
reverseWalkBinaryTree2List f (Branch l x r) = f r ++ f l ++ [x]&lt;/pre&gt;

&lt;p&gt;これを使い、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk doubleLeafTripleBranch
               reverseWalkBinaryTree2List
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; [6,4,600,2,300]&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;Data.Tree に対して、walk 関数を適用&lt;/h5&gt;

&lt;p&gt;次に、&lt;a href="http://www.haskell.org/ghc/docs/6.6/html/libraries/base/Data-Tree.html"&gt;Data.Tree&lt;/a&gt; 型の値を対象にする。&lt;/p&gt;

&lt;p&gt;Node の辿り方と、要素に適用する関数を予め定義。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walkTree f (Node x xs) = Node x (map f xs)

doubleNodeTripleBranch (Node x []) = Node (x*2) []
doubleNodeTripleBranch (Node x xs) = Node (x*3) xs&lt;/pre&gt;

&lt;p&gt;これを使い、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk doubleNodeTripleBranch
               walkTree
               tree2&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Node { rootLabel = 3&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = [ Node { rootLabel = 4&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , Node { rootLabel = 9&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = [ Node { rootLabel = 8&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , Node { rootLabel = 10&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , Node { rootLabel = 12&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; , subForest = []&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ]&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ]&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;リストに対して、walk 関数を適用&lt;/h5&gt;

&lt;p&gt;同じく、リストの場合。&lt;/p&gt;

&lt;p&gt;要素の辿り方と、要素に適用する関数を予め定義しておく。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walkList _ []     = []
walkList f (x:xs) = x : f xs

doubleElem [] = []
doubleElem (x:xs) = (x*2) : xs&lt;/pre&gt;

&lt;p&gt;これを使い、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk doubleElem
               walkList
               xs&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; [2,4,6,8,10]&lt;/pre&gt;

&lt;p&gt;&lt;strike&gt;&lt;font color="#999999"&gt;&lt;/font&gt;&lt;/strike&gt;&lt;/p&gt;

&lt;p&gt;&lt;strike&gt;&lt;font color="#999999"&gt;&lt;/font&gt;&lt;/strike&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a name="walk_p"&gt;&lt;/a&gt;3-2. walk 関数から、更に述語を分離&lt;/h4&gt;

&lt;p&gt;次に、変数 tree に戻り、「偶数であるノードの値」に対して、葉を 2 倍し、枝を 3 倍したいとする。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk (\n -&amp;gt; case n of
                        Leaf x       | even x    -&amp;gt; Leaf (x*2)
                        Branch l x r | even x    -&amp;gt; Branch l (x*3) r
                        node                     -&amp;gt; node)
               walkBinaryTree
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Branch (Leaf 1) 300 (Branch (Leaf 4) 600 (Leaf 3))&lt;/pre&gt;

&lt;ul&gt;
  &lt;li&gt;要素に対して関数を適用する &lt;/li&gt;

  &lt;li&gt;要素が条件を満たしているか検査する &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;という 2 つのことを同時に行っているので、これを分離してみる。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;walk p f walker node = walker (\n -&amp;gt; walk p  f walker n) 
                              (if p node then f node else node)&lt;/pre&gt;

&lt;p&gt;第1引数 p は述語で、これが真である場合、第2引数 f をノードに適用する。&lt;/p&gt;

&lt;p&gt;予め、ノードの値が、偶数である場合、真を返す述語を定義。&lt;/p&gt;

&lt;pre class="prettyprint"&gt;isNodeEven (Leaf x)       | even x = True
isNodeEven (Branch l x r) | even x = True
isNodeEven _                       = False&lt;/pre&gt;

&lt;p&gt;これを使い、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk isNodeEven
               doubleLeafTripleBranch
               walkBinaryTree
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;=&amp;gt; Branch (Leaf 1) 300 (Branch (Leaf 4) 600 (Leaf 3))&lt;/pre&gt;

&lt;p&gt;結果をリストにするなら、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk isNodeEven
               doubleLeafTripleBranch
               walkBinaryTree2List
               tree&lt;/pre&gt;

&lt;pre class="prettyprint"&gt;[300,1,600,4,3]&lt;/pre&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h5&gt;Data.Tree に対して、walk 関数を適用&lt;/h5&gt;

&lt;p&gt;Data.Tree 型の値を対象にする場合、&lt;/p&gt;

&lt;pre class="prettyprint"&gt;  print $ walk (\n -&amp;gt; case n of
                        Node x xs | even x -&amp;gt; True
                        otherwise          -&amp;gt; False)
               doubleNodeTripleBranch
               walkTree
               tree2&lt;/pre&gt;

&lt;pre class="prettyprint
