情報科学屋さんを目指す人のメモ(FC2ブログ版)

何かのやり方や、問題の解決方法をどんどんメモするブログ。そんな大学院生の活動「キャッシュ」に誰かがヒットしてくれることを祈って。

ブログ内検索

スポンサーサイト このエントリーを含むはてなブックマーク

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告 | 編集

Adobe Reader X が不安定になる問題について このエントリーを含むはてなブックマーク

Adobe Reader Xをインストールしたら

Adobe Readerの更新をつい先日行い、Adobe Reader 9からAdobe Reader X (Adobe Reader 10)にしたところ、うまく動作しない(不安定)であることに気がつき、簡単にチェックしてみた。

スポンサーサイト
Windows | コメント:0 | トラックバック:0 | 編集

AutoHotkeyで無変換+数字をファンクションキー(F1-F10)にする方法 このエントリーを含むはてなブックマーク

AutoHotkeyで修飾キー(Ctrl,Shift,Alt,Win)の状態(^!+#)を取得する関数を作る方法」で作成したget_modifiers関数と、「AutoHotkeyで変数名を組み立てて変数の中身を取得するちょっと不思議な方法」で作成したget_postfix_key関数を利用して、無変換+数字をF1-F10に割り当ててみます

無変換+数字をFキーに割り当てるAutoHotkeyスクリプト(.ahk)

コードは以下の通りです。

~vk1Dsc07B & 1::
~vk1Dsc07B & 2::
~vk1Dsc07B & 3::
~vk1Dsc07B & 4::
~vk1Dsc07B & 5::
~vk1Dsc07B & 6::
~vk1Dsc07B & 7::
~vk1Dsc07B & 8::
~vk1Dsc07B & 9::
~vk1Dsc07B & 0::
	postfix_key := get_postfix_key()
	if postfix_key = 0
		postfix_key := 10
	modifiers := get_modifiers()
	Send, %modifiers%{F%postfix_key%}
	return

get_modifiers() {
	modifiers := ""
	if GetKeyState("Ctrl", "P")
		modifiers = %modifiers%^
	if GetKeyState("Shift", "P")
		modifiers = %modifiers%+
	if GetKeyState("Alt", "P")
		modifiers = %modifiers%!
	if GetKeyState("Win", "P")
		modifiers = %modifiers%`#
	return %modifiers%
}

get_postfix_key()
{
	StringSplit, hotkey_array, A_ThisHotkey, %A_Space%&%A_Space%
	StringTrimLeft, postfix_key, hotkey_array%hotkey_array0%, 0
	Return postfix_key
}

「vk1Dsc07B」は無変換キーを表していますここでは仮想キーコードとスキャンキーを両方書いていますが、片方で良いかもしれないです

get_postfix_key()では、prefixkey(無変換キー)と同時に押したキー(0,1,...,10)を検出しています。これにより、無変換+数字に対して一貫したコードを記述できています。

また、このようなコンビネーションキーを記述した場合、CtrlやShiftを表す^や+などの修飾キーを「::」の前に含めることが出来ないので、get_modifiers()を利用してCtrlやShiftの状態を取得しています。

このようにして、get_postfix_keyとget_modifiersを使用することできれいに「無変換+数字→ファンクションキー」を実現できています。

Windowsダンプの極意 エラーが発生したら、まずダンプ解析!
Advanced Windows 第5版 上 (マイクロソフト公式解説書)
インサイド Microsoft Windows 第4版〈上〉 (マイクロソフト公式解説書)
APIで学ぶWindows徹底理解

AutoHotkey | コメント:0 | トラックバック:0 | 編集

さくらのVPSにUbuntu 10.04 64bitをインストールしてSSHで接続するまでのメモ このエントリーを含むはてなブックマーク

計画停電に伴い、自宅サーバを維持することが難しくなりました。そこで、さくらのVPSの一番安いプランを契約して利用することにしました。

CentOSが標準なのですが、Ubuntuを利用したかったので、入れ替えを行いました。そのときのメモです。大したことは書いてありません。なので、頭に参考ウェブページを書いておきます。そこへどうぞ。

参考

インストール対象確認

インストールは「さくらのVPS 512」の仮想専用サーバに対して行います。インストールするのは「Ubuntu 10.04 64bit版」です。

作業するPCはWindows 7 SP1 64bitで、ブラウザはChrome 10です。

Javaがインストールされているか確認する

カスタムOSのインストールには、Java Runtime Environment(JRE or JDK)が必要です。インストールされていない場合はhttp://www.java.com/ja/から最新版をインストールできますインストールされているか確認するには、コマンドプロンプトで「java -version」を実行するか、コントロールパネルから「プログラムのアンインストールまたは変更」に「Java(TM) 6 Update xx」があるかどうかで判断できます。

仮登録完了メールをチェックするし、VPSコントロールパネルにログインする

仮登録完了メールに「IPアドレス」と「パスワード」が書かれていると思います。それをチェックして、「VPSコントロールパネル」にログインしてください。おそらくアドレスは「https://secure.sakura.ad.jp/vpscontrol/」だと思います。

再インストールを開始する

まず、「OS再インストール」という大きなボタンを押し、「カスタムOSインストールへ」というリンクをクリックします。

すると、「OS選択」という蘭でOSを選択できます。今回は「Ubuntu 10.04 amd64」を選択しました。選択したら「確認」を押し、次の画面で「実行」を押します。

もしプラグインのバージョンが古いと言われたら

結論から言うと、素早く「今回は実行する」を押してください。のんびりしていると「Network error: remote side closed connection」と表示されて失敗するようです失敗したらやり直せば良いだけですが

OS再インストール用のクライアントから接続する

「アプリケーションのデジタル署名の検証に成功しました。このアプリケーションを実行しますか」と言われたら「実行」を押し、「SSH: Warning」が表示されたら「yes」を押します。

すると、青い画面にキーボードの選択画面が表示されます。このとき、ブラウザにはインストール時に必要な情報(インストール情報)が表示されているので、ページはそのままにしておきます。

キーボードを設定する

ここからは、キーボードの矢印キーとEnterキー、BackSpaceキーなどで操作し、マウスは使用しません。

「Origin of the keyboard」で「Japan」を選択し、「Keyboard layout」で「Japan」を再び選択します。

ネットワークの設定をする

「IP address」にはインストール情報の「IPアドレス(IPv4)」を入力してEnter。

「Netmask」には、デフォルトが「255.255.255.0」と入力されていますが、インストール情報の「ネットマスク」を正確に入力してください。私の場合は「255.255.25【4】.0」でした。

「Gateway」には、インストール情報の「ゲートウェイ」を入力してください。

しばらく待つ

少し待ちます。

ディスクの設定を行う

「Partitioning method」では、上から二番目の「Guided - use entire disk」を選択してEnterを押しますManualでもいいですが、ハードディスクの容量も少ないのでマニュアルの通り自動で行きます。

「Select disk to partition」では、おそらく「SCSII(0,0,0) (sda) - 21.5 GB ATA QEMU HARDDISK」のように1つしか表示されないので、そのままEnterを押します。

「If you continue, the changes listed below will be...」と表示されたら「Yes」を選択してEnterを押します。

ユーザの設定を行う

「Full name for the new user」にはユーザ名を入力します。続いて表示される「Username for your account」にも同様にユーザ名を入力します本当は、前者はフルネームなのですが、区別したことがないです

「Choose a password for the new user」が表示されたら、そのユーザで使うパスワードを入力してください。確認として、もう一度聞かれるので、同じように入力してください。

homeの暗号化を設定

「Encrypt your home directory?」と聞かれたら、「No」を選択して、暗号化しないように設定します。

インストール完了

「Installation complete」が表示されたら「Continue」を選択してEnterを押してインストール作業完了です。接続が切れて「Network error: remote side closed connection」と表示されるので、バツボタンで閉じます。

起動

VPSコントロールパネルの「VPSホーム」を押し、仮想サーバ>仮想サーバ操作にある「起動」をクリックします。

SSHクライアントから接続する

いよいよ、PuTTYなどのSSHクライアントから接続を行います。起動した時点で22番ポートにSSHでパスワード認証にてログインできます。IPアドレスにインストール情報にあった「IPアドレス(IPv4)」を指定し、ポート番号に「22」を指定し、ログインには先ほど設定した「ユーザ名」と「パスワード」を入力します。

これで自由にUbuntuを使って作業することが出来るようになりました。

まとめ

さくらが提供しているマニュアルが非常に充実しており、このエントリの意味がほとんど無くなってしまいました。簡単にインストールすることが出来ました。

おまけ

せっかくなのでPuTTY関連記事をまとめておきました。

Ubuntuスタートアップバイブル
大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ
図解でわかる Linuxサーバ構築・設定のすべて
【改訂新版】 Linuxコマンド ポケットリファレンス (Pocket Reference)

Linux | コメント:0 | トラックバック:0 | 編集

AutoHotkeyで修飾キー(Ctrl,Shift,Alt,Win)の状態(^!+#)を取得する関数を作る方法 このエントリーを含むはてなブックマーク

modifier(修飾キー)を取得する

押し下げ状態は、GetKeyStateで取得できます。今回は、その結果を、Sendの引数として利用できる形式(^、+、!、#の結合)で取得する関数get_modifiers()を作成します

get_modifiers()

定義は次の通り。

get_modifiers() {
	modifiers := ""
	if GetKeyState("Ctrl", "P")
		modifiers = %modifiers%^
	if GetKeyState("Shift", "P")
		modifiers = %modifiers%+
	if GetKeyState("Alt", "P")
		modifiers = %modifiers%!
	if GetKeyState("Win", "P")
		modifiers = %modifiers%`#
	return %modifiers%
}

現在キーボードのWinキーをF17キーに変更してしまったのでWinキーについては試せていませんが、他の修飾キーに関しては問題なく動作しています。

modifiers := get_modifiers()
Send, %modifiers%{%key_name%}

のようにして、利用できると思います。特に「AutoHotkeyで変数名を組み立てて変数の中身を取得するちょっと不思議な方法」などと組み合わせるといろいろ出来ると思います。お試しあれ。

Windowsダンプの極意 エラーが発生したら、まずダンプ解析!
Advanced Windows 第5版 上 (マイクロソフト公式解説書)
インサイド Microsoft Windows 第4版〈上〉 (マイクロソフト公式解説書)
APIで学ぶWindows徹底理解

AutoHotkey | コメント:1 | トラックバック:0 | 編集

AutoHotkeyで関数の返値を変数に代入する書き方 このエントリーを含むはてなブックマーク

そのうち忘れそうなのでメモ。

variable_name := function_name()

間違えて

variable_name = function_name()

としてしまうと、変数の中に「function_name()」という文字列が入ってしまう。

AutoHotkey | コメント:0 | トラックバック:0 | 編集
 | HOME |  OLD >>
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。