yuu_nkjm blog
2012-04-26(Thu) [長年日記] 編集
[Windows 7 (64bit)][FreeSoft][HW] Windowsでハードウェア情報を確認するソフト Speccy
最近は,Speccy - System Information - Free Downloadを使ってます.
2012-04-16(Mon) [長年日記] 編集
[JavaScript][Chrome] Textareaにテキストを入力する (テキスト入力イベントを与える)
JavaScriptを使って,テキストエリアに文字列を挿入したい,テキストエリアの文字列を書き換えたい.そんな時,Textareaのvalueを書きかえると,textareaのvalueが代わり,与えた値が表示される.また,textInputイベントを発行することでもTextareaに文字列を入れることが出来る.
// jQuery使ってます.後半パートでは参考サイトのソースを優先. // targetTextAreaというidをもったtextareaを取得. var element = $(targetTextArea); //textareaに表示される文字列(値)を変更するには,valを書きかえる. element.val(data); // focusがあるNodeをとって. var fn = document.getSelection().focusNode; // textarea(もしくはinput)を取って var el = fn.getElementsByTagName('textarea')[0] || fn.getElementsByTagName('input')[0]; // textareaに"挿入文字列"を挿入 insert_text(el, "挿入文字列"); function insert_text(textarea, text){ // TextEventを生成する. var textEvent = document.createEvent('TextEvent'); // テキスト入力イベントを作成する.これに引数textが組み込まれる. textEvent.initTextEvent ('textInput', true, true, window, text); // 仮引数textareaに対して,作成したイベントをディスパッチする. textarea.dispatchEvent(textEvent); }
なぜこれを調べたかというと,Facebookのtextareaにvalue書き換えにより文字列を与えて,その文字列を投稿させようとしたのだが,うまくいかなかったからだ.Facebookのhtmlを見るとTextareaへのkeypressイベントが何かに渡されている様に読めたので,Javascriptから文字列を書きかえるイベントを発行させた.そうしたところ,意図通り動いた.
2012-04-15(Sun) [長年日記] 編集
[openSUSE][python][32bit-64bit] openSUSEでpythonの32bitと64bitで苦しめられる (未解決)
openSUSE12.1 64bitでは,yastのソフトウェア管理を見ると64bit pythonと32bit pythonがあるようだった.両方をインストールしたのだが,どうやって起動し分ければいいのか分からない.
macだとarchというコマンドを使う様なので,openSUSEでもマネをしてみる.
$ setarch i686 python >>> import platform >>> platform.platform(); 'Linux-3.1.0-1.2-desktop-i686-with-SuSE-12.1-x86_64' $ python Python 2.7.2 (default, Aug 19 2011, 20:41:43) [GCC] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import platform >>> platform.platform(); 'Linux-3.1.0-1.2-desktop-x86_64-with-SuSE-12.1-x86_64'
「勝利か?」と思ったけど,単にplatformの表記が変わっただけの気もする.
pythonが32bitか64bitかどちらで動いているか判定するには,以下のコマンドを叩けば良いらしい.
python import sys from math import log log(sys.maxsize, 2) 63.0
残念ながら,setarch i686(or i586, i386)しようとしまいと63.0でした….結局,分からずじまい.pythonだからこその32bit-64bit切り替え起動方法,openSUSE上のプログラム一般に使える32bit-64bit切り替え起動方法があるのだろうか.