2015-01-01から1年間の記事一覧

GNOME3用アプリケーション開発に入門してみる その3

GIO編。リファレンスをざっと見せよとのこと。 GIO Reference Manual: GIO Reference Manual ファイルシステムにかかわるのは以下の6つ GFile GFileInfo GFileEnumerator GDrive GVolume GMount GFileEnumerator はいわゆるイテレータ。 GDriveがGVolumeのリ…

GNOME3用アプリケーション開発に入門してみる その2

GObject GObject Reference Manual: GObject Reference Manual C言語でオブジェクト指向を実現する仕組み。 他言語用にAPIを提供する仕組みも備えているので、 Cで書けばC++はもちろんPythonやPHPとかからも使えるようになる。 たぶん逆もしかり。 ざっと見…

GNOME3用アプリケーション開発に入門してみる

このへんから情報を取ってきたらよさそう。 GNOME Developer Center PythonとかC++とかValaとか使った方が効率的そうだけど、最初ぐらいCでやるか。 Getting started with writing a GLib/GTK+ application in C GLib core GObject GIO GTK+ の順でやれとの…

PythonでMACDを計算する

MACD (Moving Average Convergence Divergence) | FX・証券取引のマネーパートナーズ -外為を誠実に- このあたりを参考に、EMAはこんなかんじ。 def ema(l, t): result = [] for p in l: i = len(result) if i < t: # t日目までは単純平均 result += [float(…

Rust 1.0 の abs

fn main() { let x: i16 = -32768; println!("{}", x); println!("{}", x.abs()); } とすると arithmetic operation overflowed で落ちる。 doc を見ると、"::MIN will be returned if the number is ::MIN" と書いてあるのだが…。 https://github.com/rust-…

ここ数年で読んだ良さげなチュートリアルまとめ

Python チュートリアル — Python 3.4.2 ドキュメント Python のチュートリアル.僕が初めて読んだ時は 2.7 だった気がする. 今から始めるなら 3 の方が良さそう. 2 系はユニコードの扱いがつらい. Django documentation | Django documentation | Django …

C++でファイルパスを引数にしたコンストラクタだけだとつらい

C++

ファイルパスを引数にして,コンストラクタで読んで…ってのは何も考えていないと結構やりがち. しかし,これだけだとテスト書くのがつらい. テストが実行される場所を気にしないといけないし, 例外どうするかってのもある. istream& を引数にしたやつが…

SSH 越しにクリップボードを操作する

前回と似たようなネタ X の DISPLAY を設定すれば xsel が使える. ssh [HOST] "export DISPLAY=:0.0 && xsel -b" デスクトップの Linux からノートPCに持ってこれる. -bi で設定もできる.

SSH から Gnome の画面をロックする

Gnome shell が新しくなってシンプルにしたらしく, スクリーンセーバーを起動するやつが無くなったらしい. export $(cat /proc/$(pgrep -u `whoami` ^gnome-shell$)/environ |\ grep -z DBUS_SESSION_BUS_ADDRESS | strings) dbus-send --type=method_call…

ブール関数をあつかうC++ライブラリを作った

C++

utisam/boloq utisam/boloq · GitHub BDD を std::shared_ptr とか std::unordered_map で実装してみた. 名前も標準ライブラリを意識した感じでつけてみた.

Boost Test のための gedit 用 snippet

gedit snippets for boost Test