Shopping」カテゴリーアーカイブ

Canzona

連休前で忙しくプログラミングしていないので久々に音楽。

palepoli で検索すると今でもマニアックな漫画が一番上。
つーてもこの作者さんも間違いなく名前のネタ元は同じで Osanna だろう。

まぁこれと The Who の Tommy は何度も紹介していると思うが。
その Osanna のアルバムに Milano Calibro 9 ってのがある。
サントラだと聞いていたので避けていたがつい最近 YouTube で曲を見つけた。

YouTube – OSANNA – Canzona

こんなにグッとくる曲が入っていたとは知らなかった。
CD が全然売れないとかネットでよく見かけるようになった昨今。
やっぱり音楽はどこかで一度は耳にしないと購入するキッカケすら無いよね。

どうでもいいけどイタリアンでカンツォーネとはストレートな名前を付ける
new trolls のコンチェルト・グロッソも合奏協奏曲という意味だし。

テレビをまったく見ないので最近マスゴミが何を流行らせようとしているか知らないけど。
どっちにしろこういう音楽はどうせ流してくれないだろう。

そういえば昔 Il Balletto Di Bronzo の Ys の良さがイマイチ解らなかった。
今なら解るかな?と思ってこれを書きながら聴いてみた。

やっぱり悪くは無いけど自分にはイマイチ良さが解らないや。
評判は恐ろしくイイのだがイタリアン・プログレッシブなら全部オケではないわな。
PFM だけは万人受けすると思うけど。

YouTube – Premiata Forneria Marconi (PFM) – River of life

日本人なんて全然解らない。
ランカとシェリルくらいなものか、いやマジでマクロスの曲は結構いいと思う。

Logicool Mouse M505

ここ最近 Opera でマウス動作の調子が悪い。
クリックが勝手に文字列選択になったりマウスジェスチャ後に右メニューが出たりetc…
Chrome ではなんともない、やっぱりこんなところが Opera だなぁ…

と思っていたけど Chrome でも何か動作が変になってきた!
それどころか GEdit や Nautilus でもマウスで上手く選択ができなくなってきた!

試しにドスパラ BTO 付属の超握りにくいマウスに繋ぎ替えてみる。
Opera のバグだと思っていたマウス動作が全部解決…

Opera ちゃん疑ってごめんよ!

単純に Opera は設計上マウスカーソルに対して強烈に敏感だったということだろう。
Linux Opera の動作がおかしくなったら先にマウスかキーボードを先に疑ったほうがいいかも。
フォント表示がおかしいのは昔からというか毎度のことだけど…

ということで、ようするにマウスが壊れた。

しばらくは今繋いでいるドスパラ BTO 付属のマウスを使ってみよう。
Windows Vista の時に世間の反応と自分の使用感のあまりの違いを見て
「今までと違う考えは積極的に受け入れよう」
と自分で決めたのだから。

と思っていたけど超握りにくいわ軽過ぎるわ反応鈍いわでタマラン!
マウスは自動車のタイヤがクソじゃどうにもならんのと同じでストレスが凄すぎる。
素直に新しいのを買おう…

価格.com – マウス 売れ筋ランキング

Logicool 製ばっかだなぁ…
ちなみに私は今まで Logicool 製しか買ったことが無いのは前に書いたっけ。

しかし今でも Logicool 製か Microsoft 製かの選択肢しか無いんだね。
この二社以外は余程のことがないかぎり、その余程のことなんてありえるのか?

次もやはり Logicool かとも思うけど Windows 7 ノート用にコレを使っている。
Logicool の Bluetooth はコレしか見つからなかっただけなのだが。

反応とか握りやすさはまったく不満が無いてか最高だけどホイールクリックを間違えるのよね。
Bluetooth のせいかスリープ復帰が一瞬遅れる場合がある、2.4GHz タイプなら大丈夫なのかな?
高速ホイールはあんまり使わないしやはりホイールをクリックする方式なマウスががイイ。

有線にするか無線にするかも悩む、なんたって Linux で無線マウスは使えるのか?
検索しまくったら上記の一番人気である M505 ならば何も問題無いみたい。
なにより今更接続コードの存在に制約を受けるのも嫌だしやはり無線式を選びたい。
そうなると M505 を選ぶのが一番いいみたい。

黒が人気だけどシルバーが汚れが目立たないしよさそう。
アマゾンで見つけたけど早速パソコンショップに行って(ぉい!
だってこういうのは実際に手で握って感触を確かめたいんだもの。

と思ったけどショップで握ってみてもイマイチ感覚が解らないや!
とっとと購入し家で試す、二千九百八十円だったからそんなに差は無いし。
どうでもいいけど先日電気屋で買った炊飯器の値段をアマゾンで調べてガックリした…

単三電池二本は付属していたのでそのまま入れる。
重さや重心は M555 とほぼ同じ、形状が全然違うはずなのに握った感触も似ている。
ホイールの位置や高さ、ボタンの傾斜角、親指と薬指が収まる位置関係、床面のすべり具合
といったところを並べて見比べると見事に一致、さすが同じメーカー。

気になっていた無線は Linux マシンなのにスイッチを入れただけで当然のように動いた。
あっけなさすぎ、あぁケーブルの無いマウスってすばらしい。

ということで使いごこちが悪いはずもなくとても快適。
スリープしているのか?というくらい反応も敏感、精度も有線時代と変わらない。
どうしても Bluetooth がいいというのでなければコレ最高です。

ただホイールクリックが少々固いのとホイール左右倒しがボタンとして機能している。
そのせいで Opera でホイールクリックしようとすると「戻る」になってしまったり…
そういうときは

の2つを上記に変更すれば横倒しは左右スクロールになるみたい。
Chrome や GEdit とかはデフォルトで横スクロールしてくれるのに…

Logicool Bluetooth Mouth

Aspire AS1410 をもっと便利に使いたい。

以前書いたが CULV ノート用に Bluetooth マウスを買った。
せっかくこのマシンには Bluetooth が標準装備なのでということで。
私は今まで Logicool 製マウスしか使ったことが無いので迷わずコレに決めた。

価格.com には再起動で Bluetooth 接続を認識しないとか見かけたがそんなことはなかった。
しかし正直買った直後このマウスを選んだのは失敗だと思った。

なんかやたらマウスカーソルの移動速度が早い、調節するとタッチパッドが逆に遅すぎる。
高速スクロール機能のせいでホイールクリックが使えない、今までと操作感が違う。
その高速スクロールのおかげでスクロールがやたら使いにくい。

せっかく買ったんだからなんとかしたい。
ということで今まで単に Bluetooth 認識させただけだったけどドライバーを入れてみた。
外付け CD-ROM はまだ手に入れていないので公式からダウンロードする。

Bluetooth® Mouse M555b

の「サポート」をクリック、Opera では中ボタンクリックしか認識しない…
するとダウンロードページへのリンクが見つかった。

mouse_driver

Windows 7 用はまだ無いの?まぁ Vista 用でいいだろう。

setpoint64bit

しっかり 64bit 用もあるね、ドライバーについては WOW64 とはいかないわけで。
64bit 用を落としてインストール、「テストされていない OS 」とか出るけど無視。
んでお約束の再起動、Bluetooth 認識のやり直しを行う必要があった。
Vista 用で問題なく動くようである、やはり Windows 7 は只の Vista 改ですね。

mouse_speed

おぉマウスのポインタスピードが別個で調節できるようになった。
タッチパッドは以前の速度に戻してと、それだけで一気に使いやすくなった。

他 SetPoint でマウス電池の残量も確認できる、高速スクロールの量も調節できる。
今更だがこういうドライバ統合ユーティリティは入れておくべきだ本当に。

ところで高速スクロールの件だが…
マウスホイールを強くクリックすればノッチ動作と切り替えできると今更知った。

Bluetooth® Mouse M555b

書いていないんですけど…
切り替えしてみたらホイールの不満はアッサリ解決、今まで何をやっていたのだ?
つまり普段はノッチ動作で使う、イザ高速に動かしたい時は切り替えすればいい。
なんだよ、そっちのほうが断然イイジャン!

ホイールクリックについては改めて考えるとそのほうが不自然だと今更思う。
デスクトップの Linux で使っているマウスもこのタイプに変えようかな?

つかマウスポインタ速度を遅くするとなんだか画面が広く感じるようになった。
やっぱり 11.6 型は画面が狭いなぁと思っていたけどそれはマウスのせいだった。
人間の感覚って我ながら本当にいいかげんです。

IronPython で WPF

IronPython には nt という os の代替モジュールがあることを今更知った。
ということは前回のコードは

# -*- coding: UTF-8 -*-

# 環境変数の書き出し

import nt

keys = nt.environ.keys()
result = ""
for key in keys:
	result += key + "\n" + nt.environ[key] + "\n\n"

f = open("env2.txt", "w")
f.write(result)
f.close()

あーあ、os を nt に書き換えるだけで動いてしまったお。
open() とかは組み込み関数だからそのまま使えるし。

とはいえ IronPython ではコッチで書く人はほとんどいないだろう。
C# コードからの変換ばかりやるはめになるのは目に見えているし。

ということで

の本で WPF アプリのコードがあまりに不親切だったので補完。
部品を作るのにいきなり XAML を利用では IronPython の意味が無いでしょみたく。
XAMLPAD では Glade のようにはいかないと思うし、機能がショボすぎる。

マイレビューを一つ、CPython コードを書くのにも少し役に立ったよと。
ちなみに上記の nt モジュールの存在はコレを読み直して知った…
しかし mono の本同様にコレしかなく選べない状態が続いているのは悲しい。

さて最小限のコードを書いてみる。

# -*- coding: UTF-8 -*-

import clr

# 最小限下記ライブラリ(dll)が必要
clr.AddReferenceByPartialName("PresentationCore")
clr.AddReferenceByPartialName("PresentationFramework")
clr.AddReferenceByPartialName("WindowsBase")

import System

w = System.Windows.Window()
w.Title = "実験"
a = System.Windows.Application()
a.Run(w)

最小限のライブラリとは VC# とかを持っている人なら解るかな?
ソリューションエクスプローラにある参照設定以下のことね。
VC# なら右クリックして「参照の追加」をするけど IronPython はコードで行う。

se

本当は System も必要だけど最初から含まれているっぽい。

後、上記の本ではいきなり from 文を使っているけど理解してから使いましょう。
Window や Application というクラスは System.Windows 名前空間にあります。

知っていると思うけど Python の名前空間はモジュール名そのままである。
partial 指定ができないのが場合によっては辛いかもしれない。
boo という Python そっくりな言語はココの画像を見るとできるっぽい。

【ハウツー】F#、IronPython、Booまで使えるフリーの統合開発環境「SharpDevelop」 (3) 利用できるプログラミング言語 | エンタープライズ | マイコミジャーナル

まあそれはよくて。
上記を拡張しても後々で困るのでさっさとクラスに変更します。

# -*- coding: UTF-8 -*-

import clr

# 最小限下記ライブラリ(dll)が必要
clr.AddReferenceByPartialName("PresentationCore")
clr.AddReferenceByPartialName("PresentationFramework")
clr.AddReferenceByPartialName("WindowsBase")

from System import *
from System.Windows import *

class TestWin(Window):
    def __init__(self):
        self.Title = "class の実験"
        self.Closing += self.onClosing
    
    def onClosing(self, sender, e):
        MessageBox.Show("閉じます")

if __name__ == "__main__":
    w = TestWin()
    a = Application()
    a.Run(w)

やっぱり面倒なので from を利用、これで C# の using と同じ意味。

VC# で作るのと同じように Window を継承したクラスを __main__ で作る。
最後に Application インスタンスの Run() にぶち込めばクラス化は完了である。
これで C# コードからの変換が簡単になりました。

ついでに終了時にダイアログを出すようにハンドラを追加してみた。
Python のクラスなので引数に必ず self が必要です、よく忘れるんだこれが。

最後にコントロールを追加してみます。
XAML を使わずにコードで作る方法をば。

# -*- coding: UTF-8 -*-

import clr

# 最小限下記ライブラリ(dll)が必要
clr.AddReferenceByPartialName("PresentationCore")
clr.AddReferenceByPartialName("PresentationFramework")
clr.AddReferenceByPartialName("WindowsBase")

from System import *
from System.Windows import *
from System.Windows.Controls import *

class TestWin(Window):
    def __init__(self):
        self.Title = "Controls"
        # ボタン作成及びクリックハンドラ登録
        button = Button()
        button.Content = "ボタンだよ"
        button.Click += self.onClick
        # 一行エディットの作成
        # 内容を他で使うのでアトリビュートにしておく
        self.textbox = TextBox()
        self.textbox.Text = "なんか書け"
        # TextBlock の作成
        tb = TextBlock()
        tb.Text = "何か書き込んでボタンを押してね"
        # レイアウタを作成してこれらをセット
        sp = StackPanel()
        sp.Orientation = Orientation.Vertical
        sp.Children.Add(button)
        sp.Children.Add(self.textbox)
        sp.Children.Add(tb)
        # レイアウタを Window にセット
        self.Content = sp
        # この指定でコンテンツの大きさ固定なウインドウになる
        self.SizeToContent = SizeToContent.WidthAndHeight
        self.ResizeMode = ResizeMode.NoResize
    
    def onClick(self, sender, e):
        MessageBox.Show(self.textbox.Text)

if __name__ == "__main__":
    a = Application()
    a.Run(TestWin())

Button 等のクラスは System.Windows.Controls にあるので import する。
Window や Button に何かを乗せるには Content プロパティに代入する。
レイアウタにコントロールを追加するには Children.Add() メソッドを利用する。
という簡単な例である、最後に Run() の中で Window を作る小技をば。

seira

C# でウインドウをコードで作った人なら解るだろうけどほとんど同じに書けます。
C++ から Pascal への変換を経験した人なら「え?それだけ???」ですよね。
今回はここまで。

STL の本

そういえば去年財布を盗まれてクレカの再発行をしたのを忘れていた。
SAKURA から「引き落とし不能」のメールが…やっちまったい!
再発行すると番号が変わっちゃうのよ。

たった今オンラインで振り込んだけどもし止められたらゴメン。
多分今年中に移転するような気がするんですけど、今は決定していないけど。
といっても急に無くなったら行方不明だしマイッタわ。

つーことで久々に本の紹介。

今コレを読んでいます。
今度は STL かい…と呆れないでくれ。

この本は、、、、、恐ろしく解りにくい!

とにかく難しい、といっても STL 自体が解りにくいのであるが。
だいたい反復子って名前はなんじゃい、もっとイイ翻訳は無かったのか?

知識がある人が本を書くと、ついうっかり深い所まで説明しようとする。
だから難しさが倍増して投げ出したくなってしまう、その典型な文章。

でもだから深い所まで書いているので今はとても嬉しい。
素晴らしい内容の本です、人間って調子がいい生物だなと。

STL は一端使い方を覚えてしまえば楽ちんなのはポインタと同じだね。
てゆーか std::vector だけなら反復子は完全にポインタと同じだと。
それが解るようになる本という事ならとても勧められない文章である。
逆に解っている人であれば買いです、自分でコンテナを作る方法まで解説してる。

プログラミング本を買う決めてがなんとなく解った。
とにかく文字ばっかで画像がほとんど無い本を選びましょう。
今は全然解読できなくても後で役に立つ場合がある。