Fedora が起動しない †
Ubuntu (10.04)でNFSでマウント †
Ubuntu (10.04)でSSHログイン時のメッセージがダブるのを解消したい †
HT-03Aのホーム画面の壁紙のサイズ †
androidの特定のグループの連絡先が正しくsyncされない †
androidの電話帳で連絡先を「お気に入り」に入れたら,「お気に入り」から外せなくなった †
androidのメールアプリでIMAPS/POP3S接続を試したら"not trusted server certificate"と拒否られた †
overrideしてるのにoverrideして下さいとエラーを言われる †
android:idについて †
リソース(画像や音楽)をプロジェクトに追加しても認識されない †
Randomクラスに関するメモ †
argcとargv †
sizeof †
ダイアログをMFCダイアログから呼び出すと反応が異様に遅い. †
CTimeを使わずに時間を取得する †
floatとdoubleの違いについて †
C++のprivateなポインタ変数をreturnで外に出す †
enumの定義方法 †
実行時にMSVCR80.DLL (MSVCR80D.DLL?) が無いと言われる †
fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。 †
fatal error C1020: 予期しない #endif です。 †
fatal error C1033: †
error C2062: 型 'char' は不要です。 †
error C2064: 引数を取り込む関数には評価されません。 †
error C2065: 'M_PI' : 定義されていない識別子です。 †
error C2381: 'exit' : 再定義 ; __declspec(noreturn) が異なります。 †
error D8016 : コマンド ライン オプション '/GL' と '/ZI' は同時に指定できません †
warning C4819:ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。 †
warning LNK4098: defaultlib '*****' は他のライブラリの使用と競合しています。 †
0xc0150002 アプリケーションを正しく初期化できませんでした †
OpenCV 1.1でプロセス(プログラム)が終了しなくなる †
関数を使用しただけで,突然大量の「型が定義されていません」エラーが発生する †
Visual Studio .NETでプロファイラを使う方法 †
FILE*構造体 †
int fseek(FILE *fp, long offset, int whence); †
void rewind(FILE *fp); †
FILE* fopen(const char *filename, const char *mode); †
コード要素*** が読み取り専用であるため、追加と削除操作は出来ません †
プロジェクトにクラスの追加を行うとVisutal Studioがフリーズする †
DOSプロンプトでファイル比較 †
バッチファイルのパラメータについて †
エラーメッセージを表示させたくない †
Vistaでワイヤレスネットワークにつながらない †
日本語キーボードと英語キーボードの混在について †
校正と較正 †
校正と校閲 †
参考サイト*4 によれば
校正は誤字を直すこと
校閲は文章の意味や整合性まで直すこと
syntax error を直すのが校正でoptimize するのが校閲(ちがう?)
適用と適応 †
参考サイト*5 によれば
非常に簡潔なまとめ方である.
法則やルールは「適用」するのであって「適応」することはできない.
Windowsのプロパティ画面などで目にする「適用(A )」ボタンはA pplyのAだね
たらい回しの語源 †
もともとは、仰向けになって、たらいを足で回す曲芸のこと*6
動いているように見えて、送り回されてるだけで全然事態が進んでいないことを表す様子。*7
用紙のサイズ †
A判 B判
A0 841mm×1189mm B0 1030mm×1456mm
A1 594mm×841mm B1 728mm×1030mm
A2 420mm×594mm B2 515mm×728mm
A3 297mm×420mm B3 364mm×515mm
A4 210mm×297mm B4 257mm×364mm
A5 148mm×210mm B5 182mm×257mm
A6 105mm×148mm B6 128mm×182mm
A7 74mm×105mm B7 91mm×128mm
A8 52mm×74mm B8 64mm×91mm
A9 37mm×52mm B9 45mm×64mm
A10 26mm×37mm B10 32mm×45mm
Letter 215.9mm×279.4mm
文字列置換をする方法 †
日付のフォーマットを変更 †
日付時刻関数のextract †
文字列関数 †
大文字小文字を区別せずに検索する †
WindowsでMD5ハッシュ値を計算する †
mimetexのインストール †
はまった.
mimetex.cgiのコンパイルは問題ない
pluginのインストールも問題なさそう
が,画像で数式が出力されない
所定の位置に画像ファイルは出力されている
しかし403 Forbiddenと表示される
Permissionの関係は777にしても変わらない
んで,原因は.htaccessでした.
.htaccessにはjpgだけ通すという記述が書いてあった
それを書き換えてgifとpngも加えた.
Pukiwiki Plusだとデフォルトでそうなっているらしい.
いやー,はまって解決までが早かった.
ジャンル:Pukiwiki?
mimetexのpluginがこける †
↓mimetexで出力しようとするとmimetexが応答を返してくれない
mimetex.inc.phpの中でfopenでcgiを呼び出している
fopenでcgiをhttp経由で呼び出しているのだが,PHPをCGI版に切り替えたらallow_url_fopenスイッチがoffになっているのが原因だった.
さて,どうするか
CGI版は個人的に設定変更可能
よって,mimetexだけ設定変更した
なんかセキュリティ的によろしく無い気もするけれど・・・
scriptを書いて,allow_url_fopenを,編集するときだけon,編集終わったらoffにするように変更
一度数式を生成してしまえば,あとはキャッシュが残ってる
mimetex †
PukiWikiへnego.inc.phpのインストール †
バージョンは1.4.7 (トラックバックなし)
nego.inc.phpをPukiWikiオフィシャルサイト 自作プラグイン/nego.inc.php からダウンロード
nego.inc.phpをPukiwikiのプラグインフォルダにコピー(パーミッションは644)
一見上手く行ったが,modeを指定すると以下のエラーが出る.
Fatal error: Call to undefined function: tb_get_rdf() in /******/wiki/plugin/nego.inc.php on line 24
トラックバック無しだったので,get_tb_rdfとかref_saveとかをnego.inc.phpが読んでいたのではまった.
nego.inc.phpの24行目を下記のように書き換える
// $body .= tb_get_rdf($vars['page']); //オリジナル行をコメントアウト
if ($trackback) $body .= tb_get_rdf($vars['page']);
// $trackback変数はトラックバック機能の有無を表すグローバル変数っぽい
ついでに,俺の環境では25行目のref_saveでもエラーを吐いた.
Fatal error: Call to undefined function: ref_save() in /******/wiki/plugin/nego.inc.php on line 25
nego.inc.phpの25行目を以下のように書き換える
// ref_save($vars['page']); //オリジナル行をコメントアウト
if ($referer) ref_save($vars['page']);
// $refererは良く分からん.
$refererと$trackbackに関してはPukiWikiオフィシャルサイト 質問箱3/588 を参照した.
あとはSkinの編集が残ってるが,後日記す.
ジャンル:Pukiwiki? :未完成?
Linuxのcommand †
sedでファイルをいじる †
find †
find . -type d
find . -type f -mtime +30
locate updatedb †
updatedb
locate cMyLibrary.h
xargsの使い方 †
cat ip_list | xargs -n1 dig -x > ./host
cutコマンドの使い方 †
cat log | cut -f 5 -d ','
cut -f フィールドの指定 -d '区切り文字'
cut -c フィールドの指定
特定のフィールドを切り出す
fオプションはフィールドごと
cオプションは文字ごと
フィールドの指定は
3:3番目,3文字目
4-:4番目以降 ,4文字目以降
5-6:5番目以降 6番目以前 ,5文字目以降 ,6文字目以前
7,9,14:それぞれの番号のフィールドか文字か.上記3つを内包可能.
dオプションは区切り文字を指定する
unameでマシンのOSを調べる †
uname -a
FreeBSD ???.???.ac.jp 4.7-RELEASE
lnでシンボリックリンクを作る †
ln -s a b
pasteコマンドで文字列を1行ずつつなぎ合わせる †
> cat test1
1
3
4
6
7
12
> cat test2
Waldstein
Weinberg
Ernst
Alstreim
Kururugi
Kruszewski
> paste test1 test2
1 Waldstein
3 Weinberg
4 Ernst
6 Alstreim
7 Kururugi
12 Kruszewski
てな具合にファイルの中身を1行ずつconcatenateしてくれる.
便利
qmHandleでqmailのqueueの中身をチェック †
qmHandle -L
qmHandle -R
1つ目がローカルにたまってるキュー,2つ目がリモートにたまってるキューを表示してくれるらしい.
Linux上のネットワーク系のコマンド †
ジャンル:Ubuntu?
自己解凍型の圧縮ファイルをLinuxで開く †
**.exeのように自己解凍型の圧縮ファイルをLinuxで必要な場合
unzip archive_file
lha -e archive_file
のいずれかで解凍ができる
ファイル名の一括変換 †
tar での解凍と圧縮 †
tar zcvf 圧縮ファイル.tar.gz ファイル一覧...
tar zxvf 圧縮ファイル
dateコマンドで1か月後の日付を表示する方法 †
crontabのログ出力 †
基本的に何も出力されない
MTAを設定しておけば、出力されたメッセージがメールで飛ばされるが、設定されてないと、ただただ破棄される。
下記の様に、ログファイルに出力すれば、取得できる*12 。
0 6 * * * /home/hoge/script.sh >> /tmp/hoge.log 2>> /tmp/hoge-error.log
Crontabで%を引数に使う場合の注意。ちゃんとエスケープしてあげないとだめ。
51 11 * * * echo `date +\%Y\%m\%d \%H\%M\%S` >> /tmp/test.txt // エラーで終了
52 11 * * * echo `date +"\%Y\%m\%d \%H\%M\%S"` >> /tmp/test.txt // 期待通りの動作
53 11 * * * echo `date +'\%Y\%m\%d \%H\%M\%S'` >> /tmp/test.txt // 期待通りの動作
引用元:crontab と date と % | イントフロート スタッフブログ *13
crontabの履歴を管理 †
WindowsのSMB(Samba)接続をクライアント側から切断 †
リモートデスクトップで複数のディスプレイを使う †
右クリックメニュー「プログラムから開く」 †
Excelを起動するとAutoExecNew内でコンパイルエラーが発生しましたと表示される †
外積の計算 †
定義は
Excel, Scilabともに外積を求める関数は用意されておらず,自力で計算する必要がある
ジャンル:Excel? :Scilab?
ウィルスバスターの「フィッシングチェッカー」機能 †
ユーザがアクセスしたURLを自動的にサーバに転送
サーバが先読みをして,フィッシングサイトかどうかを判定
している模様.
結果,1回のアクセスで2回分ログが残る.
サーバのIPは下記のいずれか(xxは変わる)
66.180.82.xx
128.241.20.xx
150.70.84.xx
Dana †
Becky †
bsfilter †
初期化 †
> bsfilter --add-clean --mbox --homedir c:\work\bsfilter\ clean\*
> bsfilter --add-spam --mbox --homedir c:\work\bsfilter\ spam\*
> bsfilter --update
> del clean\*
> del spam\*
homedir オプションを付け忘れてはまった
DOSプロンプトなのはご愛嬌
everioで撮影したムービー †
Power Director Express NEでDVDに書き出す
Power Director Express NEは付属品なので,購入できない可能性がある
デジカメで撮影したビデオが読み込めない †
多くのデジカメにおいて,撮影したビデオはMotion JPEGというコーデックのAVIで保存される.
このMotion JPEGをTMPGEnc 2.5系列で読み込もうとすると,エラる.
TMPGEncにおいて設定(O) →環境設定(E) →VFAPIプラグイン と開く
この中のDirectShow Multimedia File Reader の優先度を一番上に上げる.
該当プラグインが入ってなかったらWindows Media PlayerでWMV形式で書き出すのがベストかも
TeXがらみのトラブル †
Thumbs.dbの削除方法 †
英語キー配列に変えるレジストリ †
英語キーボードで入力中(IMEはoff)に半角カナ入力になってしまった †
3次元空間中の線と点との距離 †
Gnuplotで円グラフ †
Cドライブ直下に1.bmpが勝手に作られる †
CLIEがHotSyncできない †
HotSyncできない症状は諸々あるだろうが,今回はドライバのインストールがらみ
Clie<->USB<->Palm Desktopだったのだが,HotSyncマネージャに「ローカルUSB」という項目がなかった
結果,何度Syncしても反応なし.
ここで,管理者にチェンジ.
通常の作業は通常ユーザ,インストール作業だけ管理者権限で行っていた.
これが原因だったっぽい.
管理者のHotSyncマネージャには「ローカルUSB」の文字があった.
どうやら,USBのドライバが入ってると「ローカルUSB」の文字が現れるらしい
一時的に通常ユーザに管理者権限を与え,USBをインストール.
無事Syncできた.
管理者として再ログインすると,今度はHotSyncマネージャにローカルUSBの文字がない
どうやら,インストールしたユーザにだけ有効になる模様
ってことで,通常ユーザのままでは無理で1度管理者権限を持つ必要がある.
インストール後,管理者権限を外しても問題ない
OpenMPがらみ †
Visual Studio 2008から正式サポート.でも2005でもOK.
Visual Studio 2005の場合はWindows SDK for Windows Server 2008 and .NET Framework 3.5をインストールする.
プロジェクト(P)→プロパティ(P)→C/C++→コマンドラインの追加のオプション内に/openmp フラグをつける
printf()関数は1つの関数なので分割されることは無い
iostreamヘッダ内のcoutを使うと,streamがマルチプロセスによって破壊されるのが分かる.
#include <iostream>
#include <omp.h>
int main( ) {
#ifdef _OPENMP
omp_set_num_threads( 4 ) ; // set 4 threads
#endif
#ifdef _OPENMP
#pragma omp parallel
#endif
{
// This will break the output
//std::cout << "hello world from " << omp_get_thread_num() + 1 <<
// " of " << omp_get_num_threads() << std::endl;
printf ( "hello world from %d of %d\n " ,
omp_get_thread_num( ) + 1 , omp_get_num_threads( ) ) ;
}
return 0 ;
}
実行結果 †
Thunderbirdでメールにファイルを添付しようとしたらフリーズした †
状況
Thunderbirdでメール作成画面において添付ボタンをクリック
もしくは同じ状況にてファイル(F)→添付(T)→ファイル(F)を選択する
するとダイアログも現れずに終了.
原因
前回添付ファイルを利用したフォルダが現在存在しない
USBメモリなどの外部記憶媒体とか,該当フォルダを削除した,などなど
解決方法
CLIE TJ-25でリセットをかける場合 †
ソフトリセットは本体の裏側のリセットボタンを押す
ハードリセットは電源ボタンをスライドさせたまま*17 裏側のリセットボタンを押す
ハードリセットの場合は「データが消えますがいいですか?」と出るので,左ボタンを押すとリセットがかかる.
電池切れして中途半端にデータが残ったときなど,有効
SVNでcommit時にerrorrが表示される †
VPNがらみのトラブル †
viで日本語エンコーディングの変更 †
vimじゃないとダメかも?
基本的に自動的に認識してくれるはずなのだが,手動で変更する場合
:e ++enc=utf-8
ってな具合に変更する.
ただ,OSで利用している文字コード,ターミナルの文字コードなどと相まって結局文字化けすることもある.
vimのタブが ^I と表示されるようになってしまった。 †
wavextでdshow.hが見つからない †
別にこのソフトでなくても良かったのだが,
コマンドラインでwmv→wav変換を探していた.
とりあえずソースがあったので,興味本位でコンパイル
dshow.hが無いといわれる.
たまたま手元にDirectX SDK 2004があったので,以下の2つをツール(T)→オプション(O)→プロジェクトおよびソリューション→VC++ディレクトリ以下のそれぞれに追加
C:\Program Files\Microsoft DirectX 9.0 SDK (December 2004)\Lib\x86 をライブラリファイル に*19
C:\Program Files\Microsoft DirectX 9.0 SDK (December 2004)\Include をインクルードディレクトリ に
現在DirectX SDKは配布を中止していて,Microsoft Windows SDKに含まれているっぽ.
リンク:http://hp.vector.co.jp/authors/VA046927/wavext/
WindowsでのIPのレジストリ †
旅券番号の謎 †
出国審査の自動ゲート †
民国紀元 †
中国、台湾などで使われてる、日本で言うところの「平成」や「昭和」に該当するもの。
2011年が民国100年に相当し、また「大正元年」と「民国元年」は同じ年。
LAME †
LAME公式サイト *25 からLAMEのソースコードをダウンロード
バージョンは
VS6およびVS2005のワークスペースがあるのでそれを開く(俺は2005でやった)
VS2005でコンパイル時,configMS.hをconfig.hに置き換えろとエラーが出るので,
config.h->config.h.bak
configMS.h->config.h
としてコンパイルした
ソースディレクトリ以下のoutputディレクトリにバイナリが生成される
できたファイルはコマンドラインから実行可能
参考:MP3はLAMEでエンコして、コマンドラインオプションを語れ! *26
mp4 から音声を無劣化で抽出する †
LogwatchのNamed Beginに**Unmatched Entries**が大量に出る †
CentOSで"named[****]: network unreachable resolving 'hogehoge': *::*:*:*:53"なログが出つづける †
CentOSのログに dumping master file: tmp-hogehoge: open: permission denied というエラーが出つづける †
Linuxでwaveの抽出やMP3の圧縮 †
GRUBがError 21とか吐いて固まった †
Ubuntuのファイルマネージャ(Nautilus) で Video の Thumbnail が表示されない †
EPSON Scan を起動すると強制終了する †
写真修正ガイド †
週間アスキーより抜粋
余計なものを消す
曇り空を青空にする
GIMP2 で
彩度をあげる,範囲を選択して彩度を上げる,などなど
風景写真をミニチュアふうにする
TiltShift maker で修正
フォーカス(中央付近がお薦め)
フォーカスのグラデーション
ボケの強さ
光の反射具合の設定
フォーカスの大きさは全体の2〜3割を目安に
写真をやわらかくする
フラッシュで出来た顔のてかりを取る
ざらつきを取る
スケッチ風のイラストを作る
暗すぎて見えない部分を修正する
ホワイトバランスくずれを修正する
ピンボケ,手ブレ
Unshake で修正
被写体にあわせて写真に写ってるものの種類を指定
ブレの補正度合いをAmplificationで決めてDeblurで補正する
他にはPhotoshopをお薦めしている.
Microsoft Updateがとにかく失敗する †
DivXコーデックのインストール/アップデートに失敗する(fails for DivX codec install) †
proxy環境下ではインストールに失敗する.
proxy設定をIEで施してもDivXのインストールプログラムはその設定を見に行かない.
こればっかりはネットワーク管理者に相談してproxy通さずにインストールできる方法を考えないといけない.
FFFTPで.htaccessなど,.(ピリオド)でファイル名が始まるファイルが見えない †
まずは表示 →.で始まるファイルの表示 にチェックが入ってるか
それでだめならFTPサーバの問題
サーバの設定変更は現実的ではないので,FFFTPの設定を変更する.
ホスト一覧 →設定変更 →高度 →LISTコマンドでファイル一覧を取得 のチェックを外す
同じくNLSTファイル名/オプション を-alL (標準)にしておく
これで再接続,再読み込みで表示されるはず.
chkrootkitから "Checking `bindshell'... INFECTED (PORTS: 600)"という警告メッセージが出た †
Gnuplotで描いたグラフをパワーポイントにベクターで貼り付ける †
Windowsでscpコマンドラインクライアント(command line SCP client on Windows) †
WindowsのRsyncコマンドラインクライアント(command line rsync client on Windows) †
use cwrsync
Download! から Cwrsync を選択
2011-7-28時点で最新版は4.1.0 (latest)
cwRsync_4.1.0_Installer.zipをダウンロードし,解凍,インストーラを実行する.
XPなら,c:\program files\cwrsync 以下にインストールされる
rsync方法は cwrsync.cmd ファイルを確認すると良い.
ssh上で転送したい場合は,sshのトンネルを張る必要がある
SSHで転送する場合 †
秘密鍵の作り方,置き方 †
作り方 †
作り方ssh-keygenを使う
C:\Program Files\cwRsync\bin>ssh-keygen.exe
Generating public/private rsa key pair.
Enter file in which to save the key (/cygdrive/c/Documents and Settings/bob/.ssh/id_rsa):
ファイル名を聞かれる
ここではhogeという鍵ファイルを作る
HOMEパスを通してない場合,カレントディレクトリに作られる
次はパスワードを聞かれるが,自動ログインのためにはパスワード無しにする
Enter passphrase (empty for no passphrase):
同じパスワードを聞かれるので,再びEnter
Enter same passphrase again:
これだけでファイルが作られる.
置き方 †
DELL Vostro 220s でwake on LAN(WOL)を有効にする †
BIOSの電源回りの設定でWOLを有効にする
WindowsからNIC(ローカルエリア接続)のプロパティ→構成→詳細設定→Wkae on Magic Packet をEnabled に,その下のWake on pattern matchはDisabledに
電源の管理で「デバイスで,コンピュータのスタンバイ状態を解除〜」にチェックを入れる
その下のMagic Packetのみ〜は入れても入れなくてもOKだったが,クライアントソフトがMagic Packet非対応の場合はチェックを外しておこう
DELL XPS 630i で起動時の黒い画面でSetting has failed to POSTとか出る †
正しくはSetting has failed to POST. System is using default settings for this POST attempt. Press F1 to continue, F2 to enter SETUP to adjust OC/OV settings.
解決方法 †
メッセージが出た画面でF2を押してBIOSの設定画面に入る
Press F2 and enter BIOS settings
メッセージがたまにしか出ない場合でも,F2を押しながら電源投入すると,BIOS設定画面に入る
If the messsage didn't appear, just hold F2 down and boot the machine. You'll see the BIOS settings.
BIOS設定画面でF9を押すと,初期設定をロードする.
Press F9 and load the default settings.
その後,Mainタブの中で,Legacy Diskette という項目をNone にする
In the Main tab, change the Legacy Diskette to None .
その後,Bootタブのフロッピーディスクの項目をDisableにする.
In the Boot tab, change the Floppy to Disable.
その後,F10を押す.これで設定が有効になる
Press F10. The change will affect now.
原因 †
原因は不明.何かの折に,オーバークロックが有効になってしまうのか,バッテリー切れでBIOSの設定読み込みがエラーになるのか,この現象が発生する
一度初期設定を読み込みなおすと直るのだが,それに伴って存在しないフロッピーが有効になってしまうため,多少手続きが必要.
DELL OPTIPLEX 960でWindows起動時に Unhandled exception! というエラーメッセージが出る †
現象 †
起動時にUnhandled exception! オブジェクト参照がオブジェクトインスタンスに設定されていません などとメッセージボックスが現れる
詳細は以下の図の通り
原因 †
XPのスキンがデフォルトのままのアカウントでは発生しなかった
少なくともマシン依存でなく,ユーザアカウント依存
スタートアップに登録されているプロセスのいずれかの模様
対処方法 †
システム構成ユーティリティを起動
スタート →ファイル名を指定して実行(R) →msconfig と入力してOKボタンを押す
上部のスタートアップタブを選択する
リスト内,スタートアップ項目 がDELL になってる以下の2項目のチェックボックスを外す
コマンド:C:\Program Files\Dell\Dell ControlPoint\Connection Manager\Dell.UCM.exe
コマンド:C:\Program Files\Dell\Dell ControlPoint\Dell.ControlPoint.exe
OKボタンを押すと,再起動を問われるので,再起動させる
再起動すると,今までのメッセージボックスの代わりに,システム構成ユーティリティ のメッセージボックスが現れる
ここでWindowsの開始時にこのメッセージを表示しない、またはシステム構成ユーティリティを起動しない。 にチェックを入れてOKを押す
以降起動時の邪魔なメッセージボックスは消滅する
CAHeadless Debug Event というダイアログがいきなり表示される †
Samsung Galaxy S II (SC-02C) でメインのカレンダーしかsyncされない. †
Android端末内でのdropbox保存場所 †
PHP で 'gd-jpeg, libjpeg: recoverable error: Corrupt JPEG data: *** extraneous bytes before marker 0xd9 in /hoge/hoge' と出る †
原因はGDライブラリがJPEGファイルを認識しないため
ケータイの写真など,JPEGファイルのデータと,写真の向きが一致しないときなどに起きる(デジカメの縦方向やケータイの横撮りなど)
本来なら,EXIF内の縦横方向情報に基づき,ビュワーで正しく表示してくれる
しかし,GD的に,その情報を何故か正しく読み込んでくれない
***には数字が入るのだが,バイナリで,FFD9の前の***バイト分を削るとうまくいくとの情報あり
GDがJPEGで無いと判断する基準が厳しすぎるために発生している模様
Internet Explorer 8 で「セキュリティの警告」画面が出続ける †
DHCPの固定振り割り †
自宅のADSLルータはNEC WARPSTAR Aterm WD701CV
そして無線LANのAPとしてPCiのBLW-54CW3 を利用している
どちらもDHCPサーバ機能が付いている
現在はADSLルータのWARPSTARのDHCP機能を利用して自宅内のLANを構築した
大事なのはファイルサーバが自宅にあり,それにアクセスできるようにポートを外側から開けていた
しかし先週停電があり,そのせいで今まで割り振っていたDHCPがバラバラになってしまった
DHCPをMACアドレスと紐付けしよう かと思ったのだが,WARPSTAR もBLW-54CW3もMACアドレスとの紐付けをやってくれないという残念仕様
仕方ないのでポートマッピングで転送するIPアドレスを変更した
やはりサーバ類は固定IPの方がいろいろと堅実な気がする
NECのルータにtelnetでログイン †
HDMI †
HDMIの規格は大別してバージョン1.2a以下,1.3,1.4とある
バージョンの違いにより,制定されたコネクタ,伝送帯域や画質などが違う
ただヘンテコな画像を流さない限り,大体下位互換性があるので問題ない
コネクタは一口にHDMIと言っても形状によってA−Eまである
Type A
いわゆる普通のHDMI.テレビやモニタは通常この形.19ピン
Type B
未使用のHDMI.将来使われることを想定した規格でType Aを2本分伝送する規格.29ピン.製品化された事例は2011年現在まだない.
Type C
ミニHDMI.バージョン1.3で制定された.デジカメやタブレットPCなどで使われる.19ピン
Type D
Micro HDMI.バージョン1.4で制定された.19ピン
Type E
車内伝送されることを想定したHDMI.バージョン1.4で制定された.
参照:HDMI - Wikipedia, the free encyclopedia
HDMI給電 †
HDMIの18番ピンは5Vの給電が可能
FAQ*34 によれば、55mAの電流が保証されている
HDMIの仕様書を読めば、もうちょっと書かれてるのだろうが、なんか情報を色々登録しないといけないっぽくて、やってない
USBの給電能力は規格としては500mA*35 なので、USBの給電パワーには及ばない感じ
ヘッダでバイナリのフォーマットチェック †
以下のように、ファイルのヘッダ部分で判定可能*36
形式 ヘッダのバイト列 ヘッダのバイト列(正規表現) JPEG 0xFF 0xD8 /^\xFF\xD8/ PNG 0x89 PNG /^\x89PNG/ GIF GIF87aもしくはGIF89a /^GIF8[79]a/
PuTTyを使ってDynamic Forwarding †
画面解像度(正しくは画素数)の定義 †
幅 高さ 名前,規格 SD/HD 備考
640 480 VGA/480p SD
720 480 525i/525p SD DVD
1280 720 720p HD 750pとも呼ぶ*37
1440 1080 1080i/1080p HD 1125p/1125iとも呼ぶ*38 .スクィーズの4:3
1920 1080 1080i/1080p HD 1125p/1125iとも呼ぶ*38 .アスペクト比16:9
慶應義塾大学の証明書を郵送で取り寄せる †
矢上キャンパスのお話.他のキャンパスは知らない
2012年1月時点での情報
基本的に公式ページ*39 を参照すること
申込書をダウンロードして記入
以下をまとめて学生課学事担当に発送
申込書
身分証明書のコピー
返送用の封筒(宛名書き+返送分の切手付き)
お金(現金 or 郵便為替)
お金について †
手数料
証明書1通400円
定額小為替の場合は400円の為替に手数料100円で500円
郵送料
日本郵便に払う値段
基本的に返送用封筒を入れる以上,定形外郵便(=120円)になる*40
現金書留は420円*41
ただし,現金書留は専用の封筒が20円する*42
もっとも,為替は銀行業務なので,午後4時までしか取り扱ってくれない
まとめ(1通のみ取り寄せる場合)
現金書留 郵便為替 (定額小為替) 郵便為替 (普通為替) 発行手数料 400 返送用送料 120 送料 120 その他 440(現金書留+書留用封筒代) 100(小為替手数料) 420(普通為替手数料) 合計 1080円 740円 1060円
ただしこれは1通だけ証明書を取り寄せる場合
2通以上の場合は定額小為替の組み合わせが生じるので,場合によっては普通郵便為替*43 の方が安くなる場合もある
Office Word 起動時にMicrosoft Visual Basicの画面が起動して「コードの実行が中断されました」というダイアログが表示される †
Sambaでマウントしたディレクトリは見えるのにファイルが見えない †
stub
サーバ上では uid:100 gid:500
ローカルのユーザも uid:100 gid:500だった
ディレクトリのパーミッションが 777 -> ファイル一覧表示○
ディレクトリのパーミッションが 677 -> ファイル一覧表示×
ディレクトリのパーミッションが 767 -> ファイル一覧表示×
ディレクトリのパーミッションが 776 -> ファイル一覧表示○
ファイルのパーミッション 664 -> ファイル一覧表示○
ファイルのパーミッション 665 -> ファイル一覧表示×
どちらもAND,つまりディレクトリが(777 か 776)かつファイルが664 である必要がある
詳細はまた調べる
ファイルのパーミッションはとりあえず664
ディレクトリのパーミッションはとりあえず777
NFSのクライアントと共用してたから原因を突き止めるのに時間がかかった……
Python の list †
pythonのリストをコピーする †
Pythonでのfor文 †
printで改行なし出力 †
関数の定義方法 †
Pythonで日本語を扱う †
Windowsのカレントディレクトリ(Current Directory in Windows) †
Windows Vista, 7のフォルダオプション内に「ファイルの種類タブ」が無い †
XPのようこそ画面からキーボードだけでログオンしたい †
Forepoint Endpoint Protection 2010 install時に(0x80070643 エラー)が起きる †
Windows のタスクが実行されない †
巨大なファイルを作成する †
TMPGEncでcodecを選ぶ画面に一部のcodecしか表れない †
原因が分からず
他のcodec画面,例えばAviUtlやOpenCVでcodecを選択する画面では何も問題無い
が,TMPGEncからAVIファイルを生成する際に,CODECを選択しようとすると,一覧に表れるのは実際のcodec一覧よりずっと少ない
↑DivXやXvid,MS-MPEG4系のcodecが何も無い
どうもI263codecが悪さをしてるとの情報を見つけた
参考:*44 *45
CvSubdiv2DPoint 型の flags メンバ変数 †
CvSubdiv2DPoint 型の flags メンバ変数
Excelで1900年がうるう年と判定される. †
スペインのSIMカード †
2012-09-13 現在,スペインのプリペイドSIMとしては,Yoigoの回線がよいっぽい
20ユーロのプリペイドから購入でき,しかも代金がそのままチャージされる(=手数料はゼロ)*47
定額プランは Internet Para Llevar de Tarjeta というプラン名で,3€/日で100MB/日まで使える*48
100MB越えても料金そのままで64kbpsに変わるだけ
20ユーロだと6日使える計算
APN設定は*47 *48 *49 *50
APN:internet *51
username: (なし)
password: (なし)
ちなみに,どこで買うにしても,パスポートとホテルの住所が必要になるらしい.ホテルにチェックインしたら,ホテルの名刺をもらって持ち歩くのが良いと思う.*52 *53
ケータイの隠しコマンドモード †
SC-02C, SC-03D: *#197328640# *54
SC-02B : *#*#197328640#*#* *55
古いデバイスのドライバ †
Windows 7 でハイバネートを無効にする †
Tor (トーア) †
オートチャージPASMO †
Ubuntu 11.10 (12.04) にしたらTabの補完で無駄なスペースが含まれるようになった †
Ubuntu に mozc をインストールする †
Ubuntu の NetworkManager †
Ubuntu 12.04 で chkconfig しようとしたら、「/sbin/insserv: そのようなファイルやディレクトリはありません」と叱られた †
sshfs †
Windows 7 を NFS クライアントにする方法 †
ドキュメントの変換 †
Mac Book Pro retina ディスプレイのポート †
retinaモデルになってFireWireポートが基本的に廃止になってる*57 *58
MagSafe 2電源ポート
Thunderboltポート x 2
USB 3ポート x 2
HDMIポート x 1
ヘッドフォンポート
SDXCカードスロット
なお、Thunderbold ポートはdisplay ポートも備えるので、変換コネクタ類は使える*59
ETC車載器番号の調べ方 †
ETC車載器によっては音声、もしくは画面で調べられる*60
エクスプレス予約とプラスEXの違い †
どちらも
非接触ICカードで
ネット予約した新幹線に
割引価格で乗車できる
JR東日本発行のViewカードではダメ
しかし、以下の点で違う
エクスプレス予約
○東海道・山陽新幹線が対象
×対象カードがJ-WESTカードかエクスプレスカードのみ
○サービス自体の年会費はタダ
×クレジットカードの年会費が1050円
○特急券だけe特急券として個別に購入できる(特急券を複数人分購入可能)
○割引がでかい(東京新大阪間で1050円割引)
○モバイルSuica対応
○グリーンプログラムあり
プラスEXサービス
×山陽新幹線は対象外(東海道新幹線のみが対象)
○対象カードがJCB/三井住友/三菱UFJニコス/トヨタファイナスなど多い
×サービス自体の年会費が525円
△カードの年会費はカード側に依存
×特急券だけの購入はできない(本人が乗車するだけ限定)
△割引がエクスプレス予約より少ない(東京新大阪間で500円割引)
×モバイルSuica非対応
×グリーンプログラムなし
参考:エクスプレス予約とプラスEXとは何が違いますか?|エクスプレス予約 新幹線の会員制ネット予約*61 *62
そして、とうとう2017年9月30日からスマートEXが始まり、好きなクレジットカードで登録、年会費無しのサービスが始まる!(しかもちょっと安い!)*63 *64 *65 *66
ITMediaによる比較表 がわかりやすい
あるweb上のファイルの更新時刻だけ調べたい †
telnet で HTTP を模してHEADリクエストで取得できる。*67 *68
telnet hogehoge.jp 80
Trying xxx.yyy.zzz.100...
Connected to hogehoge.jp (xxx.yyy.zzz.100).
Escape character is '^]'.
HEAD /hogehoge/hogehoge.file HTTP/1.0
(←空行を入力)
HTTP/1.1 200 OK
Date: Fri, aa Oct bbbb 01:12:35 GMT
Server: Apache
Last-Modified: Wed, xx Dec yyyy 11:23:58 GMT
Accept-Ranges: bytes
Content-Length: xxxxx
Connection: close
Content-Type: hoge/hoge
Connection closed by foreign host.
ただし、コマンドラインから定期的に実行、とはいかない。
同様の目的のためにwgetコマンドにspiderオプションがある*69
wget -S --spider http://hogehoge.jp/hogehoge/hoge.file 2>&1 | grep Last-Modified
これで実際のファイルを取得しなくても更新時刻だけ調べられる。
wget †
コマンドラインからファイルを取得して来られる wget。めっちゃ便利*70 *71
POST †
セッションcookie †
Basic認証 †
HTTPヘッダの中身 †
wgetに直接は関係ないが、HTTPヘッダはこんな形をしている*82
HTTP リクエスト ← 1行
HTTP ヘッダ ← wget でもろもろ書き換える部分
(空行) ←ヘッダとボディの区切り目
HTTP ボディ ← POST通信でのみ発生する。GETでは全部HEADERで収まる
こんな感じ
GET /wiki/ HTTP/1.1
Host: tessy.org
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20100101 Firefox/20.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ja,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Authorization: Basic dG9tb2FraTpoMG11cmE=
Connection: keep-alive
Cache-Control: max-age=0
これでPOSTの場合は1行の空行の後にFORMデータを name1=value1&name2=value2 の形で渡す
Content-length †
Windows Vista/7でsymbolic linkを作る †
Vimで開くを右クリックメニューに追加 †
KNOPPIXでデータ復旧 †
CD/DVD単体で起動するKNOPPIX
レジストリを書き換えてしまったり、MBRを破壊してしまった際に、ハードディスクのデータ救出が可能
ただし、ハードディスクが物理的にクラッシュした場合はKNOPPIXでもダメな場合がある。その場合は素直に業者に頼んだり復旧用ソフトを購入しよう
参考:*85 *86 *87 *88
Virtual Machine 上の時刻がホストPCとずれる †
とりあえず同じNTPを参照することでOK。それでFA。*89
どうやらWindowsホスト+Linuxゲストの時に発生しやすいらしく、Kernelでのタイマー割り込みを取りこぼすのが原因らしい。*90
Windowsでは「インターネット時刻」と呼ばれているが、NTPのことなので、ゲストPCと同じNTPサーバを参照する。
ファイルの関連付けの設定を初期化したい †
レタスとキャベツの違い †
基本的に柔らかいのがレタス、硬いのがキャベツって感じ。
道管と師管の切断面が白と黄色ならばキャベツ、白と赤ならばレタスらしい。*91 *92 *93 *94
初めて明確なラインができた(色の違いが明確かどうかはともかく)
コンテキストメニュー内の「送る」メニューの場所を表示させる方法 †
gcc でアセンブリコードを出力する †
gcc -S でビルドする*95
gcc -S hoge.c
すると、hoge.sというファイルが生成される
中身はこんな感じ(一部抜粋)
. file "hoge.cpp"
. local _ZStL8__ioinit
. comm _ZStL8__ioinit, 1 , 1
. section . rodata
. LC0:
. string "Hello World!"
. text
. globl main
. type main, @function
main:
. LFB957:
. cfi_startproc
. cfi_personality 0x3 , __gxx_personality_v0
pushq % rbp
. cfi_def_cfa_offset 16
. cfi_offset 6 , - 16
movq % rsp, % rbp
. cfi_def_cfa_register 6
subq $16 , % rsp
movl $0 , - 8 ( % rbp)
movl $0 , - 4 ( % rbp)
jmp . L2
. L3:
movl - 4 ( % rbp) , % eax
addl % eax , - 8 ( % rbp)
addl $1 , - 4 ( % rbp)
. L2:
cmpl $10 , - 4 ( % rbp)
ボトルネックを探る場合などに有効。
本当に必要かどうかは考えたほうが良い。*96
gcc でシンボルを取り外す †
gcc -s
BOM を付けたり外したりする †
爆弾のことではない。
Byte Order Markのことである*98
Visual Studioではソースコードにこれが付いていることが前提である。
これを外すにはコマンドプロンプトで、 uconv というコマンドを使う*99
uconv -f utf-8 -t utf-8 --remove-signature foo.cpp > foo_nobom.cpp
逆につけるには以下のオプションを使う
uconv -f utf-8 -t utf-8 --add-signature foo.cpp > foo_bom.cpp
ちなみにuconvはWindowsにもLinuxにも標準でついておらず、インストールする必要がある*100
RHEL系のLinuxだと、yumでインストール可能
sudo yum -y install icu
BOMがついてるかどうかは file コマンドで確認できる*99
$ file foo.cpp
foo.cpp: UTF-8 Unicode (with BOM) C program text
Linux の Kernel †
Windows 7 のアイコンのキャッシュ †
git-svn †
WiMax †
エリアが届いているか、レンタルでチェックできる*102
速い
proc以下のディレクトリ †
GogoWinBench †
メモリの帯域 †
正規表現の確認 †
逆行列と擬似逆行列とSVD †
sh †
分散と平均 †
平均は線型性があるので、同じサンプル数の違う集団ならば、単純に平均値の平均で、両方の集団の平均値が求められる
分散は非線型なので、単純に足し算ではいけない。ただし両方の集団の平均値が同じであれば、全部求めなおさなくても計算できる*110
広告ブロッカー †
Firefox のプラグインAdblock Plus *111
PC遠隔操作容疑者逮捕について †
前回否認してる容疑者を冤罪で逮捕してて、今回真犯人と思しき犯人も否認してるのに、警察がめっちゃリークしてるのはどうなんだろう*112
それから、最近新聞記者さんがあまりにも知識無さすぎることが多すぎるって気がする。チェックする人いなかったのかなぁ。*113
PCのメモリの帯域とレイテンシについて †
PCは容量だけでなく、転送帯域、レイテンシ、動作周波数、メモリの種類、接続ピン数、ECC、Bufferなどなど、いろいろある*114 *115
メモリがbufferedの場合は1clock余計にかかる。CL2とかCL3は何clockでデータが読み出されるか、を表す。
モバイル向けの規格も存在する。*116
mDDRはmobile DDR の略で、LPDDR2とかもその中に含まれる規格。2013年現在LPDDR3まで制定されている。*117
PuTTyとvimとscreenとスクロール †
PuTTyで別セッションのコンソールを奪えないか調べたんだけれど、そういう場合はscreen コマンドが有効。
その場合でもscreenコマンドは事前に仕込んでおく必要がある。
PuTTy+vimだとマウスでスクロールすると、ファイルの前の内容を表示するのではなく、コンソールの前の内容を表示する。
高度な設定内のAlternate端末画面への切り替えを無効にすると、vimのスクリーンが有効になるらしい。*118 *119
WinSXS directory を削除したい †
Windows Installer 以下の削除できるファイル †
Virtual Box と VMWareの変換 †
マシンイメージをVirtual Box から VmWare への変換 *120
Virtual Box からは ovf 形式でエクスポート
vmware では ovf形式でvm形式の仮想マシンを開ける
学生支援機構と借金とブラックリスト †
英国滞在歴と献血制限 †
高速根号計算 †
sqrtを近似計算で速く求める方法 *122 *123
ニュートン法で を求めて を求める
加算、乗算は速いが、割り算は計算コストがかかり、しかしこの近似だとイテレーションに加算と乗算しかないので、高速に計算できる。
燃料電池 †
2012年5月10日のニュースで、Brookstone が燃料電池を発表した*124
当初ニュースでは2012年中に発売とのニュースだったが、結局2013年のCESで製品がお目見えすることになった*125
55000mWh (定格5Vということなので、11000mAh*126 )という発電量を誇るが、本体が$300、燃料缶が1本$10と、かなり高価な感じ*127
製品はNectarという名前で、MIT発の技術ベンチャーLilliputian Systemsの技術*126
約200g程度(燃料缶込み)ホットスワップも可能。機内への持ち込み、及び機内での使用も可能とのこと*128
2013年3月1日現在、発売は2013年5月15日の予定
最近じゃ5000円ぐらいで10000mAのモバイルバッテリーも買えるしなぁ*129
ビューカードとSuicaの還元率 †
ガソリンスタンドの非接触決済について †
どうやら、Visa Touch (昭和シェル石油のGSで使われてる非接触決済用カード)の新規入会が終わっていて、どうやら三菱UFJニコス自体がサービスを取りやめる雰囲気っぽい。
同技術を使用していたSmartPlusも終了する
ENEOS系列はVisaTouch/smartplus が終了したせいでQuicPay一択
一応DCMXにも対応してる*135 って言っても対応端末持ってないしなぁ……
シナジー系列もスピードパスにクイックペイも合わせたスピードパスプラスを展開するらしい。
Quicpayならば、ENEOS、昭和シェル、エクスプレス3系列全部行ける。
quicpayのカード自体は、年会費無料、新規発行手数料が525円、モバイルだと315円かかるが、シナジーカードに付帯して2014年3月31日までに申しこめば、手数料はタダ
JCBカードのポイントはOkiDokiポイントプログラム †
GPLに関する話 †
GPLのものを商品に組み込むこと自体は問題ないが、
ソースコードを公開しなくてはならない
作られた生成物もGPLにしなくてはならない
電子書籍比較サイト †
カメラ用語 †
レンズの業者 †
OEMとODMの違いについて †
国道1号線と国道15号線と第一京浜と第二京浜(と第三京浜) †
現在の対応
国道1号線−第二京浜
国道15号線−第一京浜
国道466号線−第三京浜
数字と名前の対応がチグハグ。
歴史的経緯 †
1885年の「国道表」で現在の国道15号近くの通りが国道1号に指定された
1930年に現在の国道15号沿いに「京浜道路」が制定された。これが自動車が走行できることを想定した道路
1936年に増え続ける交通量に対応するために現在の国道1号線沿いに新京浜道路が制定された。これが「第二京浜」と呼ばれるようになる
1952年の新道路法に基づいて国道の再編が行われ、「第二京浜」が「国道1号線」として制定された
1965年に第三京浜全線開通
参考:国道1号はなぜ「第二」京浜なのか 環状3号に幻の区間 :日本経済新聞 *149
エクセルで16進数で計算する方法 †
通信料制限 †
2013-03-26時点のdocomoのspモードの場合
7GB超えると128kbpsに制限されるもの
「Xiデータプランにねん」
「Xiデータプラン」
「Xiデータプラン フラット にねん」
「Xiデータプラン フラット」
「Xiデータプラン2 にねん」
「Xiデータプラン2」
3GB超えると128kbpsに制限されるもの
「Xiデータプラン ライトにねん」
「Xiデータプラン ライト」
参考: ご注意事項 | サービス・機能 | NTTドコモ *151
コマンドラインで色をつける方法もろもろ †
ディレクトリ内をまるまる比較する方法 †
find hoge -type f | xargs md5sum | sort > hoge-md5sum
これで全ファイルのmd5値をストアしておけばよい
diffでもディレクトリ比較はできるが、ファイル名ベースなので、中身の比較はできない。*154
findのオプションは1度勉強したい所ではあるなぁ。
*155
そういうツールもある
sqlite で終了させる †
vim で検索後にハイライトを消す方法 †
vim で改行コードを変える †
改行コード †
マルチプラットフォームでの悩み。
OS 改行コード バイナリ表記 エスケープシーケンス表記 Windows CR+LF 0x0D 0x0A \r\n Unix、Mac OS X以降 LF 0x0A \n Mac OS 9まで CR 0x0D \r EBCDIC NEL 0x15
Linux 上では file コマンドで確認できる
file filename
AWK †
基本コマンド †
awk -F ":" '{ print $1 }' ./ hogehoge
cat hogehoge | awk -F ":" { print $0}
文字列関数 †
substr(文字列,開始,文字数)。文字列は1オリジン*163 。
switch文 †
外部スクリプト †
16進数と10進数の変換 †
シェルスクリプトで10進数と16進数を交互に変換する †
シェルスクリプトで足し算、引き算 †
シェルスクリプトで空白を含むと厄介 †
シェルスクリプト内で空白を含む文字列は
ダブルクオーテーション(”)でくくる
シングルクォーテーション(’)でくくる
バックスラッシュ(\)でエスケープする
のいずれかをしてやる必要がある
しかし、シェルからコマンドに渡すべきオプションを"で囲むと困る
シェルスクリプトが展開する時点で、バラバラにして渡すらしく、オプションが期待したとおりにならない
この場合は文字列だけをダブルクオーテーションでくくってやると上手く行く
シェルスクリプト内で Syntax error: "(" unexpected と言われてしまった †
シェルスクリプトでの変数のスコープ †
基本的に大局変数 (global scope) な変数ばかり*173
localコマンドやtypeset、declareを使うことでローカル変数を使用できる
bashの場合
シェルスクリプトでのwhile文 †
以下のように書く
read key
while [ "$key" = "a" ]
do
echo "ok"
read key
done
引用元:while 文の使用方法 - UNIX & Linux コマンド・シェルスクリプト リファレンス *174
使用例
#!/bin/bash
grep KeyWord $DOCUMENT > / dev/ null
while [ $? -eq 0 ] # grep は見つかると0を返す (=grepで見つかる限り)
do
hogeoge $DOCUMENT $DOCUMENT2
DOCUMENT =$DOCUMENT2
grep KeyWord $DOCUMENT > / dev/ null
done
grepの返り値は基本的に0、見つからなければ1、不正なパターンなどでは2を返す。-vをつけると、0と1が反転する*175 。
シェルスクリプトでの特別な引数群 †
シェルスクリプトで数字を0パディングする †
マウススキャナ †
ブラウザの通信ヘッダを取得する †
Firefoxの場合
Chromeの場合
Chromeだと、開発者ツールからNetworkで表示できる
ツール(L)→デベロッパーツール(D) もしくは Ctrl+Shift+I
その中のNetworkタブを開くと、ページ内の画像やCSSに至るまで、通信履歴が出る。
msで経過時間も測定してくれるので、通信のボトルネックを探るのに超重要
PDFからテキストデータの抽出 †
当然、セキュリティがかかったPDFは対象外
ツールはそこそこ*184 *185 あるが、そもそも文字コードの問題でファイル内に埋め込んであるテキストが文字化けてる場合、取り出したら文字化けする訳で、結構大変
二度とやりたくないけれど、今回は目コピーする羽目に
コマンドラインからのコピー&ペースト †
あるディレクトリ内のファイル一覧をコンテキストメニューからコピーする †
傘の修理 †
新型出生前診断 †
64bit 版の Windows 7 で PDF のサムネイルが表示されない †
数式は隣接したセルを使用しません †
エクセルで外部データを使う †
声優のギャラ †
コマンドラインでHTMLからPDFを生成するソフトウェア †