No Such Blog or Diary

«Prev || 1 | 2 | 3 |...| 1082 | 1083 | 1084 |...| 1325 | 1326 | 1327 || Next»

何故に土曜に混んでいる?

中央食堂で赤門ラーメン食おうと思ったけど階段の上にまで並ぶ人の列を見て絶望した.今日は何かあったのか?

TeXでファイルに何か書き込む

TeXのソース中の何箇所かでメモっておいたことを,dvi出力の最後にまとめて列挙してもらいたいなぁと.で,メモをファイルに書き出しておいて最後にそのファイルをインクルードすりゃいいんじゃねとやって見た記録.

\newwriteで使ってないストリームを確保.\openoutでファイルオープン.\jobnameでtexファイルの名前がわかるから,それに合わせた名前のファイルを出力先にするといいかもしれない.ついでに,\immediateつけて即座に処理させる(つけないとdviへの出力時に処理されることになる).

  \newwrite\hogestream
  \def\todofile{\jobname.hoge}
  \immediate\openout\hogestream=\hogefile

用意したストリームに文字列出力するのは\writeだそうで.用意したストリームに出力を投げるマクロとか書いとくと次みたいになる.ただ,文字列中のマクロ展開をその場でやってほしいので,\edefで引数を処理してから投げる.ついでに,\writeの書き込み時に展開してほしくないマクロには\stringとつけるといいらしい.\immediateはdvi出力を待たずにその場で出力するため.

\def\hoge#1{%
  \edef\hogetxt{#1}%
  \immediate\write\hogestream{\string\item{} \hogetxt}%
}

最後の出力.とりあえず\closeoutでストリームを閉じて.\inputでファイル読み込めばいい.ほかにも,ファイルを一行ずつ読み込むこともできるらしい(\writeが一行ずつ出力することに対応).

\immediate\closeout\hogestream%
\section*{HOGEs}%
\begin{itemize}%
\input{\hogefile}%
\end{itemize}%

あとはラベルと参照を対応して付けておけばhyperrefでメモ一覧からメモの場所に飛べるようになるでしょう.セクション単位で飛ばすのは楽だけど,もっと細かく段落とかの単位で飛ばすにはどうするか?

最大値を取りたいだけだけど

コンテナxに入ってる正整数(int)の最大値をとるのに

std::accumulate(x.begin(), x.end(), 0, (const int& (*)(const int&,const int&))std::max<int>)

とか書くのはバカなのかなぁ.素直にstd::max_element使えと言われそう.イテレータが返ってくることに注意する必要があるけど.

emacsで

hoge | huhe | kk
ge | he | ho | ee
jij| | fff | u
||kk
とかなっているのを
hoge | huhe | kk
ge   | he   | ho  | ee
jij  |      | fff | u
     |      |kk
のように一発で整形したい.

そんな機能は既存のものが絶対あるに違いないのだがそんな機能を探すのも面倒なので自前でプログラム組んでみた.elispは久々なので思いのほか時間食ったなぁ.

詐欺だ…

楽天にオンラインの店を出しているところは在庫情報をオンラインに同期すべきだ.注文した後に「欠品ですので入荷までお待ちください」とか言われても正直むかつく.

腱鞘炎?

東方の新作が手に入るころに起きる現象.矢印キーを操作する右手薬指根元の甲側が痛い….パッド使ったほうがいいのだろうか?

«Prev || 1 | 2 | 3 |...| 1082 | 1083 | 1084 |...| 1325 | 1326 | 1327 || Next»
Search
Feeds

Page Top