メモの日々


2001年08月15日(水) 冷夏冷夏カレー

[dev] 各種ソフトウェアのインストール、設定

アイティーブーストによる有名ソフトのインストール説明。PostgreSQL MLより。いろいろ載ってるので便利かも。ほかにPerl、C、PHP、Javaの説明などもある。

(追記) 今はスタックアスタリスクに移転したようだ。@ITを意識している?

会社など

  • カレーはおいしい。
  • サーバ構成の資料を作った。分からんし、疲れた。NASとかSANとか調べたぞ。
  • 結局スクリプトを作ってる時間がなかった。いつになったらできるねん。
  • 明日こそはスクリプトを完成させ、本所の環境を動くようにしたいな。

2002年08月15日(木) 稲本小野中村得点

会社

  • 10:10 早く来れるようになってきたぞ。朝食中。
  • 10:45 色々と雑務を。休暇届を綴じたファイルが見当たらないそうなので、見つけたら教えて。
  • 11:25 日経オープンシステム2001/6月号に負荷分散装置の解説があって、そこにHTTPのセッション管理の問題が載っていたのでメモ。まあレイヤ7スイッチなら何とかなるのかな。SSLがかかる場合はSSアクセスレータも必要になってしまうようだ。どちらにしても導入前に検証する必要があるわな。
  • 〜13:30 勉強の準備をしていた。仕事はこれからです。
  • 清水さんに800円返した。
  • 17:00〜18:30 勉強

[web] 第4回 Webサーバの24×365監視を実現する 〜 その1 - 何を監視すればいいのか? 〜

こんなのもあったわ。ネットベインの人が書いている。金曜日に読むといいかもな。

Iプロジェクト

  • 14:30 議事録を読んだりVBAの雑誌を読んだりしていた。状況をまとめるために資料を作ってみようと思っているところ。
  • 15:10 資料など作れん。代わりにOffice XP Web Services Toolkit 2.0をインストールしてみた。ウェブサービスへアクセスするプロキシクラスを自動で作ってくれるようだ。
  • 〜16:45 ずっとVisual Studio .netをインストールしていた。時間かかるなあ。何しろ2.5GBもディスクを使ったからね。20GBのハードディスクがもう2.5GBくらいしか残っていない。あればあるだけ使ってしまうものですな。
  • Visual Studioなんてインストールして、おれは何者になるのだろうか。あーあ。
  • 19:00〜21:45 Iの資料作ったり。色々。
  • 〜22:40 兒玉くんと高本さんのPCへインストールしてた。手間取りこんな時間に。

2003年08月15日(金)

[tdiary] リンク元記録除外(2)

msnからの検索も意外と多いので除外。

[book] ストロボ (真保裕一)

4101270236 読了。写真家の人生を振り返る小説。変わった構成にしているけれど落ちはなかった。ひたすら退屈。写真好きの人には面白いのかも。2点。

[link] パッセルマンついに公開 (Excel Port)

trialより。Excel上で動くパックマン。セルをドットととして利用している。すごーい。

動かしてみたけど、完全にパックマンだ。楽しい。でも何度死んでもゲームオーバーにならなかった。得点表示もおかしいぞ。でもしかしとにかくすごーい。ほかにもインベーダやブロック崩しなど色々作っているみたい。

やること

  • 電気カミソリを買う
  • 家計簿ソフトを探す

2004年08月15日(日)

  • オリンピック体操放送しているがこれは見ないで寝よう。

[サッカー] オリンピック 女子 日本vsナイジェリア

日本の先発は前回と同じ。ナイジェリアGKはヘナチョコぽかったが前線は上手い。特に4番ンコチャさん上手。日本は澤さんのシュートが相変わらず決まらない。丸山さんのドリブル見られない。

やること

  • プリンタ処分
  • リンク元のスリム化

2005年08月15日(月)

  • 夏休みは終わりじゃ。
  • 先週オーブンレンジ用べんり棚相当の棚を買った。東急ハンズで1200円くらい。

[life] 図書館へ行く

先週行って、

  • 宮本武蔵(二) (吉川英治)
  • 「超能力」から「能力」へ (村上龍、山岸隆)
  • 週刊エコノミスト 2005.7.26 「役職定年の選択」

を借りた。全然いい本見つからない。

[windows] 「Microsoft製品の英語-日本語対訳一覧」 (中の技術日誌ブログ)

マイクロソフトのいろんなソフトの対訳表が

にあるという情報。何かの役に立つかと思いダウンロードしてみた。アーカイブの中にCSVファイルがたくさんあった。はてなより。

やること

  • オーブンレンジ用べんり棚(46x30)
  • ブラウンの安い電動歯ブラシ買う
  • 蛍光灯を捨てる
  • 腕時計(8/18)

2006年08月15日(火)

developerWorks の RSS が www.bim.com を指している

今の RSS 内の「Git を使ってソース・コードを管理する」のリンク先が「http://www.bim.com/jp/developerworks/linux/060809/j_l-git.shtml?ca=drs-」になっていて開けなかった。正しい URL はホスト名が www.bim.com じゃなくて www.ibm.com。http://www.bim.com/ はよくわからんが怪しげなサイトだ。

developerWorksのRSSの生成は自動化されていないのかな?

IBMが www.bim.com をリンクしてしまうことはたまにあるみたい

[net] 「Mobile-IP Implementations」 (Mip4 Working Group Status Pages)

モバイルIPの実装一覧があったのでメモ。最終更新日は一年前。

やること

  • デザイン変更
  • 保険
  • ツールのDVDを観る
  • 単4乾電池
  • スリッパ

2009年08月15日(土)

[life][book] ブックオフでJavaの本を買った

プログラミング言語Java(Arnold,Ken/著 Gosling,James/著 Holmes,David/著 ほか) Java 5.0 Tiger : develober's notebook(Flanagan,David/著 McLaughlin,Brett/著 菅野良二/翻訳 ほか) ブックオフに行ったらプログラミング言語Java 第4版が売られていたので買ってみた。2100円でわりと高い。鉛筆でアンダーラインがたくさん引かれていた。

更に、Java 5.0 Tigerが500円だったのでこれも買った。読むのかなあ。

[tdiary] Amazonプラグイン動いた

tDiaryをバージョンアップしていないのでAmazonプラグインが動かなくなるのだと思っていたが、ちゃんと動くなあ。

あと、上のエントリの最初の字下げの幅が大きすぎる。CSSに変な所があるのかな。

やること

  • 洗顔料
  • ユニクロ

2010年08月15日(日)

  • 昨日は頭痛に加えて原因不明の背中痛もあり生命の危機を感じたが、今日は治ってきたので大丈夫そう。

[life][hard][mobile] ウィルコム端末を機種変更した (2)

再建できるのか不安の残るウィルコムだけれど、2度目の機種変更した。WX310SAからWX341K Pへ。WX310SAを買ったのは4年半前

購入はウェブ上のウィルコムストアで行った。機種変更だと実質負担額0円なんだけど、オプションへの加入が面倒だったので頭金2480円払ったのと、おれの料金プランだと毎月300円×24ヶ月かかるので、9680円で買ったことになる。

古い機種の写真を撮っておく。WX310SA

アンテナの出っ張りと遂におさらば。


2011年08月15日(月)

  • シェルスクリプトを書いた。bashの機能は遠慮なく使う。知ったことをいくつかメモ。

[shell][unix][howto] シェルスクリプトで一時ファイルを作成し、削除する

作成

シェルスクリプトで一時ファイルを作成するのに、プロセスIDを使用するのはセキュアでないので避けたい。

それより、mktempコマンドを使うのがよさそう。このコマンドは適当な名前で空のファイルまたはディレクトリを作成し、そのファイル名を出力してくれる。使うのも簡単だし、手元のLinuxでは標準でインストールされていた。

削除

一時ファイルは、シェルスクリプトが終了たときに自動で削除されて欲しい。これはbashのtrapコマンドで実現できる。「sigspec が EXIT (0) であれば、シェルの終了時にコマンド arg が実行されます。」ということなので、

trap "rm -fv $tmpfile" EXIT

のようにしておけば自動的に $tmpfile は削除される。SIGTERMなどのシグナル受信時にもちゃんと削除される。ただし、SIGKILLシグナル受信時には削除されないようだ。これは仕方ないかな。

複数の一時ファイル

一時ファイルを複数使うなら、mktempを何度も呼ぶより、mktempでディレクトリを作成してその中にファイルを自由に作る方が、ファイルの削除が簡単に済んで便利。

tmpdir=`mktemp -d`
trap "rm -rfv $tmpdir" EXIT

[shell][unix][howto] シェルスクリプトで連番の生成

連番はseqコマンドで生成できる。このコマンドには色々な機能があって便利なので活用すべし。

が、seqコマンドを使わなくても、手元のbashは {x..y} と書けば連番を展開してくれた。

$ echo {1..10}
1 2 3 4 5 6 7 8 9 10

zshでも同じように動いた。zshだと {00..10} とすることで、seqの -w オプションと同じようなゼロ埋めもできた。手元のbash(version 3.00.15)ではゼロ埋めができなかったが、もっと新しいバージョンだとできるらしい。

また、bashだと文字の連番も生成できたが、これはzshではできなかった。

$ echo {A..Z}
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

{x..y}の展開機能は、JMにあるman bashの日本語訳にはなかった。本家のマニュアルには次のようにある。

A sequence expression takes the form {x..y[..incr]}, where x and y are either integers or single characters, and incr, an optional increment, is an integer.

ここにある ..incr というオプションも手元の古いbashでは動かなかった。

[shell][howto] シェルスクリプトで多重ループを抜ける

シェルスクリプトで多重ループを抜けるのにどう書けばいいのか知らなかったけど、「break 2」とすれば2レベル分のループを抜けられると知った。breakは組み込みコマンドなのか。

なお、引数なしの break は break 1 と同じみたい。


2023年08月15日(火)

[python] pytestのパラメータ化テストでパラメータ名に日本語を使用する設定

pytestでParametrizing fixturesを使った次のテストを実行すると、パラメータの識別子として表示させたい日本語部分がエスケープされてしまった。

import pytest

data = [
    ("テスト", "データ1"),
    ("テスト", "データ2"),
    ("テスト", "データ3"),
]

def data_name(d):
    return f"{d[0]}-{d[1]}"

@pytest.fixture(params=data, ids=data_name)
def parameter(request):
    return request.param

def test_sample(parameter):
    assert True
$ pytest -v test_1.py
=============================== test session starts ===============================
platform linux -- Python 3.11.1, pytest-7.3.1, pluggy-1.0.0 -- /home/kenichi/.anyenv/envs/pyenv/versions/3.11.1/bin/python3.11
cachedir: .pytest_cache
rootdir: /home/kenichi/work/python/pytest
collected 3 items

test_1.py::test_sample[\u30c6\u30b9\u30c8-\u30c7\u30fc\u30bf1] PASSED       [ 33%]
test_1.py::test_sample[\u30c6\u30b9\u30c8-\u30c7\u30fc\u30bf2] PASSED       [ 66%]
test_1.py::test_sample[\u30c6\u30b9\u30c8-\u30c7\u30fc\u30bf3] PASSED       [100%]

================================ 3 passed in 0.01s ================================

調べると、

に次の説明があった。

pytest by default escapes any non-ascii characters used in unicode strings for the parametrization because it has several downsides. If however you would like to use unicode strings in parametrization and see them in the terminal as is (non-escaped), use this option in your pytest.ini:

[pytest]
disable_test_id_escaping_and_forfeit_all_rights_to_community_support = True

Keep in mind however that this might cause unwanted side effects and even bugs depending on the OS used and plugins currently installed, so use it at your own risk.

リスクはあるようだが、pytest.iniを用意してそこに上記の設定を書くことで、次のように日本語が表示されるようになった。

$ pytest -v test_1.py
=============================== test session starts ===============================
platform linux -- Python 3.11.1, pytest-7.3.1, pluggy-1.0.0 -- /home/kenichi/.anyenv/envs/pyenv/versions/3.11.1/bin/python3.11
cachedir: .pytest_cache
rootdir: /home/kenichi/work/python/pytest
configfile: pytest.ini
collected 3 items

test_1.py::test_sample[テスト-データ1] PASSED                               [ 33%]
test_1.py::test_sample[テスト-データ2] PASSED                               [ 66%]
test_1.py::test_sample[テスト-データ3] PASSED                               [100%]

================================ 3 passed in 0.01s ================================