コンピュータの最近のブログ記事

ツイッター

ツイッターを加えてみた。
いろいろあるみたいだけどとりあえず
http://widgets.twimg.com/j/2/widget.js
を使う形で。

Finaleの五線ツールでのハンドルの選択

Finaleの五線ツールで、ページ表示の時、組段の最適化を行っていれば、ハンドルが五線の上下(第1線と第5線)にひとつずつ付きます。
このハンドルを複数一度に選択する方法。


  • 五線の上から下に向かってドラッグしてハンドルを囲むと、上のハンドルだけが選択されます。

  • 五線の下から上に向かってドラッグしてハンドルを囲むと、下のハンドルだけが選択されます。


JEditからFireFox上でYahoo英和辞書を開く

JEditのApplescriptマクロです。
JEditで選択した単語に従い、FireFox上でYahooの英和辞書を開きます。
まわりくどいスクリプトですが、どうも、これがうまく動くみたいです。


tell application "Jedit X"
tell front document
set theURL to "http://dic.yahoo.co.jp/dsearch?enc=UTF-8&stype=0&dtype=1&p=" & selected text
--set CLBD to the clipboard うまくいかない
tell application "Firefox"
activate
delay 0.1
set the clipboard to theURL
tell application "System Events" to keystroke "t" using {command down}
--delay 1
tell application "System Events" to keystroke "l" using {command down}
tell application "System Events" to keystroke "v" using {command down}
tell application "System Events" to keystroke return
end tell
--set the clipboard to CLBD
end tell
end tell

Tab Mix PlusとAuto Dial 8

Firefox 3.5に、Tab Mix Plusというアドオンを入れた。
そうしたら、Auto Dial 8が使えなくなった。

どうやら、Tab Mix Plusには、新しいタブを開いたときのページを指定する機能があるらしい。
ツール>Tab Mix Plusのオプション>イベント>タブを開く>新しいタブに
という項目があるのが、その証拠。
これがAuto Dial 8とバッティングしているんだろう。
困ったことに、Tab Mix Plusのこの機能を無効にするオプションがない。
Tab Mix Plusを使えば、新しいタブはTab Mix Plusがページを決めてしまう....

仕方がないので、先の
新しいタブに

「指定のページを表示」
にして、その下(指定のページ)に
chrome://autodial/content/autodial.xul
と入れてみた。
これ、Auto Dial 8が効いているときに、新しいタブが開くとき、URL欄に一瞬出るURL。
このオートダイヤルが表示されているときに
ツール>ページの情報
で確認できる。
結果、成功。

MTとディレクトリ

Movable Typeで新しいブログを作った。
同じサーバーなら、MT本体と公開ページのドメイン名が違っていても、大丈夫...
と思ったのだが、条件があったらしい。
条件は、MT本体と公開ページのドメイン名が違っていても大丈夫だが、その両方のドメインが指すディレクトリが同一でないとだめだ、ということ。
MT本体から公開ページを参照しているだけでなく、公開ページの方からもMT本体のファイルを参照していて、それがだいたいが相対ディレクトリになっている。
だから、両方のルートディレクトリの実体が違ってしまうと、えらくめんどう。


ところで、気がついたら、

Fatal error: Cannot redeclare is_valid_email() (previously declared in /virtual/shigeta/public_html/mt/php/mt.php:824) in /virtual/shigeta/public_html/mt/php/mt.php on line 830.

というエラーが、このブログの公開ページの一番下に出いていた。
どうも、1度しか読み込んではいけないファイルを2回読み込んでいる、というのが、原因らしい。

調べてみたら、公開ディレクトリにあるmtview.phpファイルが、

<?php

include('/virtual/shigeta/public_html/mt/php/mt.php');
$mt = new MT(3, '/virtual/shigeta/public_html/mt/mt-config.cgi');
$mt->view();

include('/virtual/shigeta/public_html/mt/php/mt.php');
// $mt = new MT(1, '/virtual/shigeta/public_html/mt/mt-config.cgi');
// $mt->view();
//
?>

となっていた。
php/mt.phpを2回読み込んでいるじゃないか。
なんでなんだろう。
2回目の

include('/virtual/shigeta/public_html/mt/php/mt.php');

をコメントアウトして、解決。

Finale2009の認証

Finale2009は、認証という面倒な手続きがある。

ところが、2台目のコンピュータの認証でつまずいた。
『認証に失敗しました』とエラーが出続けたのに、あるとき『これ以上の台数は認証できません』に変わった。

イーフロンティアに問い合わせてみた。

ひとつのライセンスで、同時に2台のコンピュータまで認証できるという。
そして、認証コードが送られてきた。
インターネットが接続していない状態でFinaleの認証画面を出すと、最後にこの認証コードを入力する画面になるので、入力せよ....
どうやら、これが、ネットが接続できない場合の認証方法らしい。

Excelで文字列をrankする

ExcelにはRankという関数がある。
=RANK(A1,A$1:A$10)
のようにすると、A$1:A$10の範囲の中でA1が何番目になるか、を、返してくれる。
ところが、RANKは、数字しか使えない。
文字列のRANKはないものか、と思った。

こんな方法があった。
意外にうまくいく。
=COUNTIF(A$1:A$10,"<"&A1)+1

IE8のリリース候補1というのを入れてみた。

起動時に

「このアドオンは Internet Explorer 8 で正しく動作するには、更新する必要があります」
と言うのが出たから、いやな気がした。
とりあえず、
「このアドオンをこのセッションに対して有効にする」
ではなくて
「このアドオンを無効にする」
「更新プログラムを確認」
を選んだ。

そうしたら、ページを移動するごとに、

「アドオンを無効にした状態で Internet Explorer を実行中です。アドオンを管理、無効か、または削除するには、ここをクリックしてください。」
と言う情報バーが出る。

いろいろいじってみたけど、情報バーが出ないようにならない。

結果。

この方法でなんとか。

起動時に、

「このアドオンは Internet Explorer 8 で正しく動作するには、更新する必要があります」

が出たら、そのあとに表示されたアドオンの名前を覚えておいてから、

「このアドオンをこのセッションに対して有効にする」
「更新プログラムを確認」

を選ぶ。

情報バーが出たら、クリックして、
「アドオンの管理」
を選ぶ。

最初の覚えたアドオンを探して、右クリックし、「無効化」を選ぶ。
これで、どうやらやっと恒久的に無効になるらしい。

そうしたら、管理画面を閉じて、IEを再起動。
めでたく。

onPropertyChange

ウェブページで、テキストボックスの内容を、もうひとつのテキストボックスに飛ばす、というのは、JavaScriptではお馴染みのパターン。
使うイベントハンドラは、onChange。
ところが、これが、IEで、思ったように動かないことがあることがわかった。
Submitボタンを押せば、飛ぶ。
ところが、Submitボタンを押さずに改行キーを押すと、直前の入力分が、飛ばない。
モジラ系、サファリ系、オペラでは、こういうことはない。

もちろん、普通のページでは、Submitボタンを押しても、改行キーを押しても、ページがすぐリロードしてしまうので、結果は似たようなもの。
でも、よく見ていると、Submitボタンを押したときには一瞬飛んでいるのが確認できるのに対して、改行キーの場合には飛んでいること自体が確認できない。
どういうときに違いが明確になるかというと、たとえば、飛ばし先を、frameを使って別ページにしているような場合。
<input type="text" name="thisBox" onChange="parent.otherPage.document.forms.formID.theBox.value = this.form.thisBox.value;">
なんてときだ。
ページがリロードしても、飛んだ結果は別ページの方に残るから。

入力したあとに、Submitボタンでなくても、どこかをマウスで空打ちするなど、明示的にフォーカスを外せば、正常にonChangeが発生する。
ところが、改行キーを押してしまうと、onChangeが発生しない。
なんとも不思議である。
そういえば、エクセルでも似たようなことがあったなあ、などとは思うが。

解決策はあればあるもので、onPropertyChangeというのを代わりに使えばいいらしい。
つまり、
<input type="text" name="thisBox" onChange="parent.otherPage.document.forms.formID.theBox.value = this.form.thisBox.value;" onPropertyChange="parent.otherPage.document.forms.formID.theBox.value = this.form.thisBox.value;">
のように書き足すだけ。

あまり紹介されていないイベントハンドラだし、どうもIE以外では使えないようなのだが。

onPropertyChangeは、本来は、「プロパティーが変化したとき」だから、色が変わったりしたときに発生するらしいのだが、テキストボックスの中身が変わったときにも発生してくれる。

もっとも、onChangeが、フォーカスが外れたときにはじめてイベントが発生するのに、onPropertyChangeは1字入力するごとに発生する。
なんとも、ぜいたく、お節介すぎるのだが、実用としては、同じように使える。

Red Cats

| コメント(0)

私がいちばんよく使うブラウザはFirefox 3rc
最初のうちはあまり対応しているアドオンがなかったが、最近は3に対応するアドオンも増えてきた。
で、ようやく先日、Red Catsというテーマが3に対応した。
(上のリンクは「ブルーフレーバー」だが、「グリーンフレーバー」もある。)
このテーマ、これまで、インストールしてあったものの、2.0では使えるのに使っていなかった。
でも、せっかく3に対応してきたのだから使ってみた。
うん。いい。
デザインがかわいい、とか以前に、とても使いやすいのだ。
これまでいろんなテーマを使ってきたが、「使いやすい」と思ったテーマはこれが初めて。
Firefox使いの方には、(バージョン2.0の方にも)おすすめである。

このアーカイブについて

このページには、過去に書かれたブログ記事のうちコンピュータカテゴリに属しているものが含まれています。

前のカテゴリはお知らせです。

次のカテゴリは鉄道です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。