SQuirreL SQLのこと その3
その2のつづき。
ここではHSQLDBを使用しているのでその手順となる。
まずは、JDBCドライバを認識させる。
アプリ上からドライバをダウンロードする機能はない*1ので自前で用意する。
HSQLDBはインストールディレクトリのlibにドライバがあるので今回はこれを使う。
ドライバのタブを押して一覧を出し、
設定するドライバを選択する。
[選択したドライバの編集]ボタンを押して編集画面を出し、
追加クラスパスのタブでドライバファイルを追加する。
正しく認識されるとドライバリストにチェックマークが付く。
エイリアスのタブを押し、[エイリアスの追加]から接続設定を追加する。
接続文字列についてはJDBCの記法と同じなので、いつも通り書けば良い。
OKボタンを押して、DB接続すると正しく情報が取得できる。
SQLもこの通り。
コード補完もあるし、なかなか便利。
*1:ドライバ毎にドライバのWebサイトを開く機能はある
SQuirreL SQLのこと その2
その1のつづき。
SQuirreL SQLでのGUI設定やDB接続を含む設定手順のあれこれについて
以下に書いておく。
まず、GUIの変更。
このアプリ、デフォルトではフォントが小さくて自分にはとても見づらい。
幸いにしてフォントが変更できるので早速変更する。
ファイルメニューから、グローバル設定を選び、設定画面を出す。
フォントのタブに4種類のフォント設定があるので、
これらを好みのフォント、サイズに設定し直す。
あと、アプリのロケール設定があるので、
合わせてこれも設定する。
設定変更後、アプリを再起動すると反映される。
さらに再度ファイルメニューから新規セッションプロパティを開き、
SQLエディタのフォントも変更しておく。
SQLタブの下方にフォント設定の項目がある。
これで画面周りの設定は終わり。
ルックアンドフィールなども変更できるので、
こだわる場合は色々と触ってみると面白いかもしれない。
DB接続設定については、その3へつづく。
SQuirreL SQLのこと その1
最近、PyCharmでPythonばかり書いているせいか、Eclipseをとんと起動しなくなってしまった。
そのせいもあって、Javaを書く時用にIntelliJの製品版が欲しくなっている今日このごろ。
また、DBクライアントを探し始めてしまった。
以前は、DBViewerやDBeaverなどのEclipseプラグインで賄っていたけれど、
PyCharmなどでは使えないし、DB参照のためだけにEclipseを立ち上げるのも
なんだか間抜けな感じもするので、いいものはないかと考えていた。
一応、PyCharmやIntelliJと同じくJetBrains社からSQL用IDEとして
DataGripという製品があるけれど、これは有料なので対象外。
使いやすそうなんだけどね。
また、PyCharmやIntelliJにもDBプラグインがあるようだが、
これはOracleやMySQL, Postgresなんかが対象で、
HSQLDBでは使えなさそうなのでこれも見送った。
Linuxでも使えるDBクライアントはなかろうかと、ネットを探してみた結果、
SQuirreL SQLというアプリを見つけた。
Javaで作られていてOSの縛りもなく、基本的な機能はそろっていそう。
また、更新もまだ止まっていないようだったので、
使ってみることにした。
ここのサイトから最新版のインストーラをダウンロードして、
端末から実行する。
java -jar squirrel-sql-3.7.1-standard.jar
GUIのインストーラが起動するので、
説明に従って設定していく。
このあたりは一般的なものと変わらないのでわかりやすい。
このアプリは日本語化もされているので、
インストール時にトランスレーション用のプラグインも忘れずに設定する。
起動用のショートカットも作ってくれるので、
インストール後はアプリケーションメニューから簡単に起動できる。
アンインストーラーはインストールディレクトリにコピーされているので、
削除したい時にはコマンドから実行する。
java -jar {インストールディレクトリ}/Uninstaller/uninstaller.jar
起動イメージはこんな感じ。
DB接続設定についてはその2へ続く。
http記法(はてな記法)でリンクターゲットが指定できないのこと
はてな記法で記事を書いていて、
参考ページを貼り付けることがよくあるのだけれど、
本文中の参考ページは別タブないし、別窓で表したいと思っている。
けれども、http記法ではリンクターゲットが指定できないので、
うっかりアンカーを押すと本文からリンク先へ遷移してしまう。
まぁ、読み終わったあとbackで戻ればいいのだけれど、
ポリシーとしては最初に描いた通りなので、少々の不満がある。
そんなわけで、ぐぐってみたら、
対処法を作ってくれている人がいた。
markdown記法でリンクをtarget="_blank"にする - エンジニアをリングする
また、それを紹介してくれている人がいた。
はてなブログ内のリンクを新しいタブ(別窓)で開く方法 - maroom
すばらしいっですね、これで、リンクについてあまり気にする必要がなくなったよ。
UbuntuにUnity3Dをインストールするのこと
Unity3Dをインストールしてみたくて、インストール方法を調べてみた。
ubutnu-makeでインストールするのが一番簡単だったりするのだが、
これはこれで問題があって、うまくいかなかった。
umake games unity3d
手順としては、これでインストールできる。
・・・・・・はずだが、インストールできたり、できなかったりする。
また、インストールできても起動できなかったりして、
どうにもならなかった。
しかたないので、パッケージファイルを探したら、
本家Unity3Dのフォーラムでパッケージファイルがひっそりと公開されていた。
(ダウンロードページには一言も、Linux対応版の文字がないのにね)
https://forum.unity3d.com/threads/unity-on-linux-release-notes-and-known-issues.350256/
最新の記事から遡って、環境にあったパッケージファイルをダウンロードしてインストールすれば、
簡単にインストールできる。
実際、Linuxでも動かせるのに、なぜ、ダウンロードページに紹介が無いのだろう。
このフォーラムへのリンクくらいはあるとありがたいのだが。。。
pythonで音声を再生するのこと
pythonで音楽を再生したくなったので、やり方を調べてみた。
まずあたったのが、pyAudioというライブラリ。
PyAudio: PortAudio v19 Python Bindings
ページにはpipで入れよと書いてあったけど、
ubuntuならapt-getでもインストールできる。
sudo apt-get install python-pyaudio
けれども、ライブラリのサンプルを眺めてみると
どうやらこれはwave再生のようで、MP3が再生できるかはわからない。
コードを書いて調べるのも面倒だったので、
次に行くことにした。
MP3が再生できそうなライブラリにpygameが当たった。
ダウンロード&リファレンスサイト
http://pygame.org/download.shtml
その日本語訳。
pygame - Pygameドキュメント 日本語訳
これもapt-getでインストールできる。
sudo apt-get install python-pygame
ゲーム制作用のライブラリのようだが、
それなら当然、音声再生もできる。
というわけでこれを使ってみることにした。
音の出し方は意外と簡単だった。
import pygame import time if __name__ == '__main__': # ライブラリの初期化 pygame.mixer.init() # MP3ファイルのロード pygame.mixer.music.load(u"MP3ファイルパス") # 再生回数の指定。-1ならリピート pygame.mixer.music.play(1) # 音楽再生の間、スレッドを止めるためにスリープ。 # これでは中断のために割り込みとかできないから、 # 本当に使うときは色々と作りこみをする必要がある。 time.sleep(300) # 再生の停止。 pygame.mixer.music.stop()
これはストリーム再生なので起動も早く、負荷も少ない。
ただし、音声ファイルの再生時間が取得できない。
ストリーム故にバッファに読み込んだデータの再生時間は取得できるが。。。
とはいえ、waitする時間の根拠値としても、音声の再生時間はどうしても取得したい。
なんとかならないかと探してみた。
mutagenというライブラリでMP3の再生時間が取得できるらしい。
インストールはやはりapt-getでいける。
sudo apt-get install python-mutagen
使い方は簡単で、ファイルを読み込んで該当のプロパティを叩けばいい。
import mutagen.MP3 sound = mutagen.MP3(u"MP3ファイルパス") print sound.info.length
といわけで、これらのライブラリを使うことでMP3の再生はできた。
いやぁ、楽しいなぁ、こういうの。
pythonでポップアップ通知を表示するのこと。
NASAの科学者によると、
30分に1回立ち上がると老化防止になるそうな。
本当かなと思いながら"試してガッテン"を見ていた。
こういうのに乗せられやすい性質なので、
PCが起動している間、30分に1回ポップアップ通知を出すプログラムでも作ってみようと思い、
実装方法を調べてみた。
(まぁ、タイマーなんて腐るほどあるんだろうけれど、なんでも勉強なので)
pythonでポップアップ通知を出す方法については、下記の記事が参考になった。
http://kyoui3350.blog96.fc2.com/blog-entry-258.html
上のサイトにもあるように、下のロジックで通知表示できる。
import pynotify pynotify.init(u"application name") n = pynotify.Notification(u"title", u"message") n.show()
けれども、これには落とし穴があった。
自分が試したところでは、
wxPythonのApplicationクラスと併用しようとするとエラーになる。
さらに調べた結果、notify2というライブラリがあるので、
結局、こっちの方を使うことにした。
インストールはapt-getからインストールできる。
sudo apt-get install python-notify2
で、使い方についてはpynotifyと全く同じ。
インポートするライブラリだけが異なる。
import notify2 notify2.init(u"application name") n = notify2.Notification(u"title", u"message") n.show()
と、まぁ、こんな感じでした。
アプリ?
その後、ちゃんと作りましたとも。