「ほっ」と。キャンペーン
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)
スーパーボイスレコーダー - Google Play の Android アプリ

録音の音質が7段階から選択できるのだが、
詳細がどこにも載ってない気がする。
みなさん困らないのん?
というわけで、実際に録音して見てみたよ。

┌─────┬──────┬─────────┐
│     │ビットレート│サンプリング周波数│
│     │ (kbps)  │  (kHz)     │
├─────┼──────┼─────────┤
│最高音質 │  64   │  44.1     │
├─────┼──────┼─────────┤
│より高音質│  48   │  44.1     │
├─────┼──────┼─────────┤
│高音質  │  32   │  44.1     │
├─────┼──────┼─────────┤
│中音質  │  24   │  22      │
├─────┼──────┼─────────┤
│低音質  │  16   │  16      │
├─────┼──────┼─────────┤
│より低音質│  16   │  11      │
├─────┼──────┼─────────┤
│最低音質 │   8   │   8      │
└─────┴──────┴─────────┘


ほほーこんな風になってたのか。


■そのたメモ
・録音ファイルの保存先 /mnt/sdcard/SuperVoiceRecorder/
・ファイル名 yyyy-mm-dd_hh'mm'ss.mp3


■感想
愛用はしているのだが、時々音とびする気がする。
最高音質~高音質まで、全部音とびするような。
Android で再生すると音とびするけど、PCだととばないとか、
PCでもMediaPlayerだととぶけど、mp3編集ツールだと平気とか、
再生するものによっても音とびしたりしなかったり。
Xperia SO-03D という古い端末を使ってるせいかもしらん。
リアルタイムに mp3 にソフトエンコしているのがつらいのかも。
数分程度の録音ならば、当然 PCM 録音アプリを使うほうがいいのだろうな。
[PR]
# by xiaoxia | 2015-09-03 17:36 | ソフトウェア | Comments(0)

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


by 小霞