高城高「函館水上警察」

高城高「函館水上警察」(東京創元社)
高城高「函館水上警察」(東京創元社)

図書館で棚の前を通りがかって、タイトルにひかれて借りてしまった。
まったくの偶然の出会いである。

函館出身なもので、函館と書いてあると気になってしまうが、
函館を舞台にした作品は、数はあまり多くはない。
数は多くないのに、
箱館戦争関係は食傷だし(幕末も興味ない)、
ノスタルジック青春群像は
舞台が函館である必要性を感じないので、あまり興味がない。
というわけで、手に取る作品は本当に少ない。

同じ作家の作品ばかり読んでいると読みつくしてしまうので、
時々、このように飛躍をすることがある。
表紙のイラストレーターで借りてみたり(中島梨絵さんステキー!)
新聞の書評を参考にしてみたり、
お気に入り作家の作品紹介本をたどってみたり、
お気に入りのweb論客のおススメ本をたどってみたり。
で、図書館の棚でこの本に出会った。

書かれているのは、私の知っている函館だけど、
ちゃんと知らなかった函館だった。
フィクションではあるのだが、
たぶん、本当にこういう風景が広がっていたのだと思う。
矢車草やライラックの咲く民家の庭。
ハリストス正教会の薄暗い室内。
五島軒の白い外壁。
イギリス領事館のこじんまりした佇まい(実は現在のとは違うらしい)。
ロシア領事館の入ってすぐの豪華な階段の手すりと、
サロンから見おろす函館港の景色。
(1996年までは研修施設として宿泊できたので、何度も宿泊した)
私が知っているのは「文化財」としてのそれらだ。
でも当時は文化財ではなくて、
函館に生活する人々の暮らしに身近なものだった。
五島軒でロシアンな洋食を食べたり、
宝来町の花町にくりだしたり、
基坂(もといざか、と読む)をあがって市役所に行ったり、
亀田川の水を汲んで飲料にしていたり、
ラッコの毛皮が金森倉庫に運び込まれたり、
そんな生活が確かにあったはずだ。
この本で書かれている函館を知るまで、
私はそんな景色を想像したことがなかった。
もったいないことをしたなと思う。
ま、まだ10代前半だったから、私には難しかったと思うが。

主人公は、私のおじいさんのおじいさんくらいの年齢ではないかと思う。
ひいひいおじいさん、かな。
北海道に入植したてのひいひいおじいさんと、
ひょっとしたら、街ですれ違ったかもしれない。

この本を手に、函館に帰りたくなった。
きっと新しい景色が見えると思う。
[PR]
# by xiaoxia | 2016-04-27 22:10 | 読む | Comments(4)
PuTTY で Ubuntu に接続して、
emacs 起動してるんだが、
背景が黒いので、青い字が読めない。
見づらい。
a0003075_1846485.png

なので、emacs の色を変えてみた。
PuTTY の設定で背景を白にすればいいのだろうけど、
そういうことじゃないです。
目が弱いので、背景は黒がいい。
そして emacs の設定を変えたいわけです。

参考:
(1)
Emacsの背景色の設定方法をまとめてみた - @kei10in の日記
http://kei10in.hatenablog.jp/entry/20101101/1288617632

(2)
Emacsでgitのdiffを見るときのfont colorを変える - a-bit’s blog
http://a-bit.hatenablog.com/entry/2015/05/04/234918

(3)
GNU Emacs Lisp Reference Manual: Defining Faces
http://www.gnu.org/software/emacs/manual/html_node/elisp/Defining-Faces.html#Defining-Faces

(4)
GNU Emacs Lisp Reference Manual: Face Attributes
http://www.gnu.org/software/emacs/manual/html_node/elisp/Face-Attributes.html#Face-Attributes


設定方法には複数あるようだが、
参考(1)のページを見て、
custom-set-faces での設定がおすすめられていたので、それにする。
以下のような感じのを、.emacs に追記する。

(custom-set-faces ;; <- (a)
 '(cursor ;; <- (b)
  ((((class color) (background dark)) ;; <- (c)
   (:background "green"))))) ;; <- (d)


(a) は関数名なので、そのまま書く

(b) は face 名で、これをどのように得るかというと、
参考(2)にあるように
色を変えたい文字にカーソルを合わせ,
M-x eval-expression RET (get-char-property (point) 'face) RET
で名前を取得できる.

Windows のキーボードでやるときは
 M-x eval-expression RET
の部分は
 Esc :
と入力するよ。
これで face 名がわかる。
表示されたあと、なにかキー入力すると、
表示された face 名が消えちゃうので、
setq して変数にバインドしておくといいかも。

(c) はどんなときに色を変えるかという条件部。
最新の日本語のページを見つけられなかったので英語ページだが、
参考(3)のページに書いてある。
複数条件を書くと AND で判定するっぽい。

(d) は設定項目と色。
設定項目は、参考(4)のページに書いてある。
設定できる色は参考(2)にあるようにすると、
その端末で使える色の一覧が出る。
好きな色を探す
M-x list-colors-displayで色とその名前を調べることができる.

8色しか使えなかったがーん。

最後に、現在のところの設定。
青くて見づらいのを見つけたら追加していくよー
(custom-set-faces
 '(font-lock-builtin-face
  ((t (:background "blue" :foreground "white"))))
 '(font-lock-function-name-face
  ((t (:background "blue" :foreground "red"))))
 '(button ((t (:foreground "cyan" :underline t))))
 '(minibuffer-prompt ((t (:foreground "cyan"))))
 '(comint-highlight-prompt ((t (:foreground "cyan"))))
)

a0003075_1847302.png
これなら読める

a0003075_18474350.png
色のセンスとか気にしない
[PR]
# by xiaoxia | 2016-03-03 18:54 | ソフトウェア | Comments(0)
自分メモ
すごい俺得

cifar10データセットは以下
CIFAR-10 and CIFAR-100 datasets

bmpでファイルに保存する、というソースが意外に見つからない。

extract_cifar10_bmp.py
import cPickle
import argparse
from PIL import Image
import numpy

# 引数で、cifar10ファイルと、何番目のbmpを取り出すか指定する
# ex) extract_cifar10_bmp.py cifar-10-batches-py/data_batch_1 0
#   data_batch_1.0_leptodactylus_pentadactylus_s_000004.png.bmp を作成

parser = argparse.ArgumentParser()
parser.add_argument('dfile', help='cifar10_file')
parser.add_argument('nth', help='number of image(0-)')
args = parser.parse_args()
dfile = args.dfile
nth = args.nth

# cifar10ファイルを開いて読み込む
fh = open(dfile, 'rb')
pickles = cPickle.load(fh)
fh.close()
one_pickle = pickles['data'][int(nth)] # 指定番目の画像データ
# ↑ 3072 要素の配列 ([R....G....B...]のように並んでいる)

# 出力ファイル名作成

outfile = dfile + '.' + nth + '_' + pickles['filenames'][int(nth)] + '.bmp'

# 3072の一次元配列を、3x32x32 の三次元配列に変換
# [ [R(32x32)], [G(32x32)], [B(32x32)] ] の形式になる

3darr = numpy.reshape(one_pickle, (3,32,32))

# RGB のように並べる
# [ [ RGB ... 32個], [ RGB ... 32個],... 32個 ] の形式に変換

rgbarr = numpy.rollaxis(3darr, 0, 3)

# PIL に変換してファイルに出力
pilImg = Image.fromarray(rgbarr, 'RGB')
pilImg.save(outfile, 'BMP')
print outfile


遅ればせながら、ようやくpythonを書き始めたので、
まだエラー処理とかわからないんです(笑

追記:
pngで保存する場合は、以下が参考になりそう。
https://github.com/mitmul/chainer-cifar10/blob/master/dataset.py
87行目あたりとか
[PR]
# by xiaoxia | 2016-03-01 19:49 | プログラム言語 | Comments(0)
…というのは割と真実。
体験から。

XXX

会社マシンで VMware Player を使っていて、
ネットワークはブリッジ接続にしている。
本当は NAT にしたいのだが、
NAT にすると、出たパケットが戻ってこない。
社内 LAN は 192.168.*.* を全部使っている。
自部署 LAN と違う LAN の 192 系を振ると、
同じ名前のやつが社内の別の部署にいるから、
そっちに行っちゃうのだろう。
VM に 192 系以外を振ることができれば良いのだが、
VMware Player ではどうもダメっぽい。
有料版だと 172 系も振れるみたいなのだけど。
なわけで、わざわざ VM 用に自部署 LAN の 192 系 IP を1個取ってある。
(ネットワーク管理者から払い出してもらわなくてはいけないので、
 申請書を出したりなんだり、結構面倒くさいのである)

VM (Ubuntu) から久しぶりに apt-get してみたら、
unreachable と怒られた。
この前まではできていたので、まったく謎。
ゲスト OS から見てみると、proxy までは ping も通るのだが、
LAN の外に出られないぽい。
社内マシンであれば、名前解決はできている。
社外は名前解決ができない。
ホスト OS からはいずれも問題なし。
ホスト OS の Wireshark で見てみたところ、
ゲスト→ホスト→外は良いのだが、
戻りが、外→ホストで止まっている。
こういうとき考えられるのは、ウィルスチェッカやファイアウォールなのだが、
Windowsファイアウォールの設定は変えていないし、
いったい誰が閉じているのやら。
スキルがなくて追えない。

そして翌日、出社してすぐ試してみたところ、
ウソのように apt-get がするりと通った。
まったく謎。

XXX

ネットワークのトラブルは、
時間が経つと解決されることが結構ある。
どこかのサーバで
ある一定時間でキャッシュがクリアされたり、
夜中に定期リブートされたりするのだろう。
もしくは端末をリブートしたことで、
何かに刺さってたサービスが正常動作になったり。
端末からすると、なぜか治った、という現象に見える。
というわけで、ネットワークのトラブルは寝ると治る。
急がないならば、
日を置いて試してみるのも手なのよね。
[PR]
# by xiaoxia | 2016-02-24 17:43 | コンピュータ関係 | Comments(0)

三行で説明


ランチャの CD のアイコンを間違えて削除しちゃったので、
ツールなしでコマンドだけで
復活させました。

はじめに


OS : Ubuntu 14.04 LTS デスクトップ版

共用の Ubuntu14 を使っていて、
CD アイコンの右クリックメニューで
間違えて「Launcherへの登録を解除」を選択してしまいました。
「取り出し」のすぐ上にあったので、つい手が滑って。
がーん。

CD を入れると、
自動マウントされて、ランチャにアイコンが出ます。
このアイコンの右クリックメニューで CD を取り出します。
解除してしまうと、ランチャにアイコンが出ません。
アイコンが出なければ、
右クリックメニューでの CD 取出しができません。
自分のマシンなら eject コマンドで出すのですが、
Linux に大層不慣れな2年生君が勉強も兼ねて構築しているマシンなので、
元に戻してあげたいわけです。
ついでに、余計なアプリも入れたくない。

自分の普段使い Ubuntu はコマンドラインのみのサーバ版なので、
デスクトップ版の GUI の勝手がわかりません。
Linux はウィンドウマネージャとランチャとファイラが
全部違うアプリ名だったりするので、
昔からわかりづらくて苦手で、
再インストールが必要なほどめちゃめちゃにしたこともあり、
なんとなく避けて通ってきました。
でもなぁ LASER5 Linux とかの頃だしなぁ(懐)
今はもうキレイに洗練されてるんだろうなぁ。

この画面の横のランチャは GNOME 上のユーザインタフェース Unity の中の
Launcher という名前の機能だそうです。

通常のアプリをランチャに登録


通常のアプリを登録する場合は、
起動するとランチャにアイコンが表示されるので、
右クリックメニューから「ランチャーに常に表示」を選択すれば
登録されます。
UbuntuでRails3.2.3 (2) 端末アプリを使いやすくする
http://www.supportdoc.net/topic/linux/ubuntu-ror2.html


自分で作ったコマンドなどの場合は、
以下のページが参考になります。
Unityランチャーに自分でインストール/ビルドしたアプリケーションを登録する - reppets.log.1
http://d.hatena.ne.jp/reppets/20111109/1320846292


Unity のランチャに登録する方法 (追記: Lubuntu でも) - 見上げれば、空
http://tohka383.hatenablog.jp/entry/20120331/1333156658


でもいずれもアプリやソフトなどがある場合の方法です。
CD は入れたときだけアイコンが表示されるので、
固定のアプリがあるわけではないです。
そもそも、アイコンが表示されなくなった場合は
この方法ではダメですね。

一般的な直し方:dconf-editor を使う


Launcher の設定は dconf に保存されています。
dconf は windows でいうとレジストリみたいなものだそうで、
GNOME 関係のアプリは dconf に設定を保存します。
設定はバイナリで保存されており、
編集には専用エディタ dconf-editor のインストールが必要です。

dconf については、以下のページが、絵が多くてわかりやすいです。
Ubuntu dconfエディター その1 - dconfについて・インストールと使い方 - kledgeb
http://kledgeb.blogspot.jp/2012/12/ubuntu-dconf-1-dconf.html


Launcharの登録を解除したアイコンを復活する関係は、
日本語のページには見当たらなくて、
以下のページがどんぴしゃです。
unity - How can I remove launcher drive icons? - Ask Ubuntu
http://askubuntu.com/questions/195988/how-can-i-remove-launcher-drive-icons


コマンドだけで直す:gsettings を使う


Unity は GNOME 関連のアプリということで、
gsettings コマンドでも設定ができます。
dconf-editor と同じ設定ができます。

以下のコマンドで、設定の一覧(設定項目、設定値)が出力されます。
$ gsettings list-recursively

で、Unity 関連だけ見てみます。
さらに Unity の表示/非表示に関連した項目だけを見てみます。
$ gsettings list-recursively | grep Unity | grep list
com.canonical.Unity.Devices blacklist ['-UDF Volume']

これだー!この blacklist だー!
この blacklist の設定値を変更して、リストを空にします。
$ gsettings set com.canonical.Unity.Devices blacklist "[]"

結果を確認すると、空になっていますね(3行目)。
$ gsettings list-recursively | grep blacklist
com.canonical.unity-gtk-module blacklist @as []
com.canonical.indicator.sound blacklisted-media-players @as []
com.canonical.Unity.Devices blacklist @as []


CD を入れてみると、ちゃんとアイコンが出ました。
やったー!
再起動や再ログインなどは不要でした。

余談:gconf, dconf, gsettings, dconf-editor


Gconf, Dconf, Gsettings and the relationship between them - Ask Ubuntu
http://askubuntu.com/questions/249887/gconf-dconf-gsettings-and-the-relationship-between-them


いったいどれを使えばいいの?どういう関連なの?という質問を持った人。
そうだよね、そう思うよね。
GNOME3 を使っているなら、
gconf とか dconf とかは直では触らずに、
dconf-editor や gsettings を使うべきだよ、という話のようです。
この2つは、どちらを使ってもいいみたい。

redhat のページに説明があったわ。
9.1. 用語の説明: GSettings、gsettings、および dconf
[PR]
# by xiaoxia | 2016-02-18 17:43 | コンピュータ関係 | Comments(0)

ダメ女プログラマ&主婦&腐女子&バイオリン弾き


by 小霞