4時40~50分位に起きないとまずかったのに orz
迷いつつ、とりあえず家を出ることに。
ねこさんのぐうたらなにちじょう
昨日とりあえずブートできるようにしたので、ここを見ながら残り作業やらhost OSとのディレクトリ共有やら依存性解決やらサービス化やら仕事に必要なソフトウェアのインストールやらを進める。
やっぱり夜遅くなった orz
仕事でFortran使いな人用に急いでコードを書かなければいけないんですが、いつも参考にしているサイトが無くなっているのに気付いて、えらく焦りました。
ホントになくなってなくてよかった。
ついでに見つけたここいらも参考にしよう。
今日も若干の変更・新たに見つかったミスの修正・レイアウトの修正をして用紙サイズの変更。
で一通りのチェックを受けてやっと印刷屋さんへ提出したらしい。
やっと一息つけるかな?
…残念、次の仕事の予定がボスに投入された…今週末も持ち帰り残業かな orz
いつも拝見させて頂いている(でも書いていることはあんまり理解できていない)こちらでこんなサービスが紹介されていた。
妄想だけは逞しいねこさんも同じようなことは考えたことはあったりして、MediaWikiに付いているtexvcでWeb Serviceを作ったらちょっとは需要ありそうだよなーと、思っただけなんですが。
で試しに使ってみるー
入力している傍からリアルタイムでレンダリング結果が見えるのでLaTeXの数式入力にも普通に便利すぎるし、表示は綺麗だし、何より自前で何かをインストールする必要もないので、とっても便利そう。
ほとんどヲイラが夢見たそのもの過ぎるー。
惜しむらくは背景色が白以外だと微妙 orz
さすがに大体終わった(と思った)ので久しぶりに夕べは本当に安らかにゆっくりと眠れました…6時間半くらい。
で、原稿のチェックで内容の齟齬とレイアウトのミスがいくつか見つかったのでその修正をして、時間の労力の関係で見送られていた扉と目次をついでに作成して、プログラムの差し替えに対応して、今度こそ大体できた…だろう。
やっぱり寝るとだいぶ違うですね。
それほど大きな変更はもうないだろうし、たぶんもう大丈夫。
終わったー…たぶん orz
大体もう終わったと思っていたのに、大ボスのチェックで「これはないでしょ?ちょっと恥ずかしいよ?」と言われて、レイアウトやり直しに orz いや、気にはなっていたのですよ?でも、それ以前に言い渡されていた制約条件を守るためにあえて諦めていた所で、それに対するよしあしは自分には判断できない所だったし、誰も指摘できる余裕はなかったので、本当の所は是非指摘して欲しかった所ではあったし、必要なら修正する気満々だったのですが、流石にこのタイミングだと… orz
もうね、体力的にも精神的にもほとんど限界…だったと思う。最後は単純作業を繰り返しても気が付くと手も頭も止まってて「…何してるんだっけ?」って一拍置かないと作業が再開できなくなったり、ちょっと仮眠を取ろうとすると何か夢を見た感じはするんだけど覚えてなくて、だけどその夢の中で強烈な強迫観念を植え付けられたらしくて、目が覚めた瞬間完全に頭がパニックを起こしてて30分以上心臓をバクバクさせながら何も出来ないでいたり。
まぁとにかく終わった…たぶん
帰省の際の移動中の新幹線の中で読んで(ほとんど寝てたので読み終えられなかった)、残りを読み終わった。
今回の本も、もてなしのこころというか、細かいところに目が行き届いた素敵な本でした。
数学の参考書だと思うと物足りないようにも思うけど、たぶんそういう本じゃないんだと思いました。
この本はこれから数学を勉強したいと思う人が読む、もしくはこの本を読んで数学を勉強したくなる、そういう本なんだと思うのです。
ただもうちょっと引いてみると、数学を題材にして入るけど、これは何かを学ぼうとする人への心構えとかエールとかが語られた本なんだなと思ったりもしたり。
じじぃになり果ててしまったねこさんも、もう少しは勉強をしようかと思ったりもするわけです…ぐうたらなので、3日くらいしか持たないとも思うのですが。
まだ受け取っていない原稿があるので完全には終わっていないのですが、細かい原稿の修正・差し替え・レイアウト・マクロ書きは終わったと見ていいみたいです。仮に何かあっても現時点で用意されている技術のみでどうにかなると思います。技術的な検討はほぼ終了とします。
それでも個人的には「こうした方がより良いんだけど」と思うところはいくつか残っていますが、とりあえず時間切れです。仕事と別にして、個人的にどうにかしてみるかもしれませんが。
LaTeXを使って既製のスタイルでないレイアウト設計をするということは、それなりにTeXのシステムに没入することが要求されます。最初の見積もりではそれほど深く突っ込む必要はないと踏んでいたわけですが、結果としてかなりの深度まで潜ることが要求されました。マクロ付きの組版システムを使うわけですから、文書の構造とスタイル(スタイル)を分離することで作業の効率化を図りたかったのです。実際、今回まとめた原稿量は与えられた時間内で一人でこなすにはかなりの負担だったわけで、マクロによる効率化を望む以外に選択肢はありませんでした。今回は運良く(?)制限時間ギリギリでどうにかすることができました。もっとも、途中で意味不明なエラーで悩まされ「これはダメか」と思いつつ、とりあえずデバッグのために追加した「動作に影響を与えるはずのない」あるデータ出力コードを挿入すると何故か思った通りの動作をする、という幸運な発見に救われなければどうなっていたか判りません(笑)…いや、それじゃダメだろ orz
最後は昨日の昼から20時間以上ぶっ通しの作業の末にどうにかなったわけでして、いい加減いい歳のねこさんとしては、こんなつらい作業はしばらくはしたくないかなーと思うわけなのですが、まだ目の前には大量の残務リストが orz
お盆休みがこの作業でほぼ消滅してしまいましたので、ここいらで休みたいんですがどうにかならない…いやわかってるんだ、ごめん orz
できない筈はないと思いつつ判らないでいたのですが、判らないとちょっとまずい事情に迫られて調べたところ、Shiftキーを押しながら行の左端(列の上端)を移動先までドラッグすればいいらしい。
助かった。
まったく挙動が理解できずに完全に煮詰まってましたが、理由がよく判りませんがデバッグ時に挿入した動作に影響を与えるはずのないコードを挿入する事で解決されることを発見 orz
もはや時間の猶予が無くなりましたので、このまま作業を続けます orz
めったにしないけど、以前ハマッた罠に再びハマッたのでここにメモ。
a2psでLaTeXのソースを印刷しようとすると、勝手にコンパイルされて印刷イメージそのものが印刷されてしまう。 これはこれで正しい挙動な気もするけど、目的とする動作ではない。
$ a2ps --encoding=japanese --delegate=no main.texとするとちゃんとソースが印刷される。
\$ g++ -I /C/msys/1.0/include -I /C/Python25/include -c hello.cpp
\$ g++ -shared -o hello_ext.pyd hello.o -Wl,--out-implib,libhello.a /C/msys/1.0/lib/boost_python-mgw34-mt.lib /C/Python25/libs/libpython25.aこんなんでいいみたい。
\$ /mingw/bin/gcc -DHAVE_GTK -DBUILD_DLL -Isrc -pipe -Wall \`pkg-config --cflags gtk+-2.0 libglade-2.0\` -I../lua-5.1.3/src/ src/*.c -c
\$ /mingw/bin/gcc -shared -Wall *.o \`pkg-config --libs gtk+-2.0 libglade-2.0\` -L.. -llua51 -o _lgui.dll
\$ /mingw/bin/gcc -DHAVE_GTK -DBUILD_DLL -Isrc -pipe -Wall \`pkg-config --cflags gtk+-2.0 libglade-2.0\` -I../lua-5.1.3/src/ -I../lgui-0.8.0/ src/*.c -c
\$ /mingw/bin/gcc -shared -Wall *.o \`pkg-config --libs gtk+-2.0 libglade-2.0\` -L../lua-5.1.3/src/ -llua51 -o _ldraw.dllでどうにかできた!
\$ make
Please do
make PLATFORM
where PLATFORM is one of these:
aix ansi bsd freebsd generic linux macosx mingw posix solaris
See INSTALL for complete instructions.とか出てくるので、適当に
\$ make mingwとかしたら、あっさりできた。
\$ gcc -I../include/ -I../../SDL-1.2.12/include/ \
TwSimpleSDL.c -L../../SDL-1.2.12/build/.libs/ \
../lib/AntTweakBar.lib -lSDL -lglu32 -lopengl32で問題ないや。
\$ dlltool.exe -U -d ./AntTweakBar.def -l libAntTweakbar.aで出来た。
\$ gcc -I../include/ -I../../SDL-1.2.12/include/ \
TwSimpleSDL.c -L../../SDL-1.2.12/build/.libs/ -L. \
-lAntTweakBar -lSDL -lglu32 -lopengl32
\$ find . -mtime +8 -print0 | xargs -0 -i find {} -mtime -10
みたいなの。
\$ find \`find . -mtime +8\` -mtime -10 -printで十分なことに今頃気が付いた。orz
\$ ls -ltr \`find . -type f -mtime +8 -print0 | xargs -0 -i find {} -mtime -10 -print\`とか。
\$ find . -type f -mtime +8 -print0 | xargs -0 -i find {} -mtime -10 -exec ls -ltr {} \;でいいかな…と思ったけど、ちゃんと時系列順にならない。
\$ ruby -e 'require "date"; print "#{Date.today-Date.new(2007,4,1)}\n"'
javascript:void(document.getElementById("textarea").value=document.getElementById("textarea").value.replace(/\x0D\x0A|\x0D|\x0A/g,'<br />\n'))
#include <iostream>
#include <cstdlib>
#include <vector>
#include <string>
#include <boost/regex.hpp>
#include <boost/lexical_cast.hpp>
struct Spectrum {
double freq, power;
};
int main(int argc, char* argv[]) {
std::istream& is = std::cin;
std::string line;
boost::regex reg("^\\s*(\\S+)\\s*(\\S+)\\s*");
boost::smatch results;
std::vector<Spectrum> spec;
while (!is.eof()) {
std::getline(is,line);
Spectrum sp;
if (boost::regex_search(line,results,reg)) {
try {
sp.freq = boost::lexical_cast<double>(results.str(1));
sp.power = boost::lexical_cast<double>(results.str(2));
}
catch (boost::bad_lexical_cast &) {
// do anything....
}
spec.push_back(sp);
}
}
std::vector<Spectrum>::iterator it;
for (it=spec.begin();it!=spec.end();++it) {
std::cout << it->freq << " " << it->power << std::endl;
}
return EXIT_SUCCESS;
}コンパイルはこんな感じ
g++ -O3 -o spec spec.cc -lboost_regex-gcc-mt-1_32(参考)