ブラウザ拡張 Tweet Sig を作った。Web Extension 規格に順って作ったので今後、様々なブラウザで利用できるようになるかもしれないが、今のところ Mozilla Firefox と Google Chrome でしか動かないようだ。
Tweet Sig の説明は、
専用ページで行った。まずそちらを読んで欲しい。このページは「サポート」を行うのがメインである。
一応、ここでも軽く説明しておくと、Tweet Sig には、二つのモードがある。一つは、右クリックメニューで選ぶ(for PC)またはボタンを押す(for Android)ことで、セレクションの内容を投稿し、投稿した URL をクリップボードにコピーする。もう一つは、ボタンを押すことで、'#tweet-sig-in' の内容を投稿し、その URL を '#tweet-sig-out'にコピーするというものである。三文判程度の認証に使うことを想定している。
以前から私は、似た用途として、
時間記録デバイスを提案している。それは、読み出しと追記のみができる USB メモリのようなデバイスで、契約文書を作ったとき、それをこのデバイスに書き込むと、その文書にデバイスメーカーによる署名が付されて、保存される…といった用途を想定している。
しかし、そのようなデバイスは今にいたるまで使われていない。それに替わるものとして、時間が記録されるもの…というと、Twitter などへの書き込みがあるな…として今回、このようなものを作ってみた。
専用ページで書いたように削除ができたり非公開にできたりするのは不便だが、まったく似た用途に使えないわけではないと思う。
PC 用のアドオンは、
AMO (Mozilla Add-ons) または
Google Web Store のページから手に入る。Android 用は
AMO for Android から手に入る。このページでは、一応、提出した際のソースのアーカイブを公開しておく。次のリンクが最新のもののはずだが、より以前のものはコメント欄をご参照いただきたい。
なお、tweet_sig.zip には manifest.json が含まれていない。かわりに manifest_for_firefox.json と manifest_for_chrome.json が含まれている。どちらかを manifest.json にリネーム(またはコピー)して使っていただきたい。
更新: |
2018-01-06,2018-01-19 |
初公開: |
2018年01月06日 17:12:04 |
最新版: |
2018年01月19日 17:24:35 |
2018-01-06 17:12:01 (JST) in JRF 作成ソフトウェア Firefox JavaScript | 固定リンク
|
| トラックバック (0)
ブラウザ拡張 PP Interrupter Lite を作った。Web Extension 規格に順って作ったので今後、様々なブラウザで利用できるようになるかもしれないが、今のところ Mozilla Firefox と Google Chrome でしか動かないようだ。
PP Interrupter Lite の説明は、PP Interrupter (Original) の
専用ページで行った。まずそちらを読んで欲しい。このページは「サポート」を行うのがメインである。
PP Interrupter Lite は PP Interrupter (Original) の機能制限版で、PP Interrupter (Original) がすべてのメソッドをブロックできるのに対し、PP Interrupter Lite は GET メソッドしかブロックできない。
ここでも軽く説明しておくと、PP Interrupter Lite は特定の URL へのアクセスを一旦ブロックし、アドレスバーに表示されるアイコンのクリックによってそのブロックを解除するという汎用のアドオンである。このアドオンにより、自動的なリダイレクトの前に一旦ストップする習慣を作ることができる。このアドオンは、他のブロッカーと違い、悪意のあるサイトではなく、健全なサイトをブロックすることを目的とする。
PP Interrupter Lite は
PP Authorizer の姉妹品で、現在の PP Authorizer が一般に使えない状況で、認証の前でアドレスバーのアイコンをクリックしなければならないという点で、PP Authorizer と似た操作を PP Interrupter Lite は実現する。もし、将来、健全なサイトが自動的なリダイレクトを禁じるようになったときには PP Authorizer の出番が来る。
PP Interrupter Lite は現実への対応だが、PP Authorizer は未来への投資である。しかし、PP Interupter Lite は汎用のため、PP Authorizer がなくても、 PP Interrupter Lite は動く。
Original のサポートページでは、ストップしたときにページが表示されるようにしたかったのだが難しかったと書いたが、メソッドを GET に限定すると難しくない。そうすることで、Original ではできなかった Google Chrome や Firefox for Android への対応ができた。
アドオンは、
AMO (Mozilla Add-ons) または
Google Web Store のページから手に入る。このページでは、一応、提出した際のソースのアーカイブを公開しておく。次のリンクが最新のもののはずだが、より以前のものはコメント欄をご参照いただきたい。
なお、ZIP には manifest.json が含まれていない。かわりに manifest_for_firefox.json と manifest_for_chrome.json が含まれている。どちらかを manifest.json にリネーム(またはコピー)して使っていただきたい。
GitHub にも登録してあるが、更新は、ここの更新のあと1日から3日遅れるかもしれない。
更新: |
2017-12-27,2020-11-03 |
初公開: |
2017年12月27日 20:30:49 |
最新版: |
2020年11月03日 15:11:42 |
2017-12-27 20:30:50 (JST) in JRF 作成ソフトウェア Firefox JavaScript | 固定リンク
|
| トラックバック (0)
ブラウザ拡張
PP Interrupter を作った。Web Extension 規格に順って作ったので今後、様々なブラウザで利用できるようになるかもしれないが、今のところ Mozilla Firefox でしか動かないようだ。
PP Interrupter の説明は、
専用ページで行った。まずそちらを読んで欲しい。このページは「サポート」を行うのがメインである。
Google Chrome 用または Firefox for Android 用に機能制限版の PP Interrupter Lite がある。そちらについては
それ専用のサポートページがあるが、こちらに要望・質問を書き込んでもらってかまわない。
一応、ここでも軽く説明しておくと、PP Interrupter は特定の URL へのアクセスを一旦ブロックし、アドレスバーに表示されるアイコンのクリックによってそのブロックを解除するという汎用のアドオンである。このアドオンにより、自動的なリダイレクトの前に一旦ストップする習慣を作ることができる。このアドオンは、他のブロッカーと違い、悪意のあるサイトではなく、健全なサイトをブロックすることを目的とする。
PP Interrupter は
PP Authorizer の姉妹品で、現在の PP Authorizer が一般に使えない状況で、認証の前でアドレスバーのアイコンをクリックしなければならないという点で、PP Authorizer と似た操作を PP Interrupter は実現する。もし、将来、健全なサイトが自動的なリダイレクトを禁じるようになったときには PP Authorizer の出番が来る。
PP Interrupter は現実への対応だが、PP Authorizer は未来への投資である。しかし、PP Interupter は汎用のため、PP Authorizer がなくても、PP Interrupter は動く。
このアドオンを作るキッカケとなったアイデアは [
cocolog:88492515] に書いてある。そこでは、webRequest に関する拡張を調べていて難しそうだ…と書いていたが、よく読んでいるうちにどうもできそうなので作ってみた。当初は、ストップしたときにページが表示されるようにしたかったのだが難しく、 notifications の表示に留めた。
アドオンは、AMO (Mozilla Add-ons)の
PP Interrupter のページから手に入る。このページでは、一応、提出した際のソースのアーカイブを公開しておく。次のリンクが最新のもののはずだが、より以前のものはコメント欄をご参照いただきたい。
GitHub にも登録してあるが、更新は、ここの更新のあと1日から3日遅れるかもしれない。
更新: |
2017-12-08,2017-12-27,2020-11-03 |
初公開: |
2017年12月08日 16:17:00 |
最新版: |
2020年11月03日 15:11:14 |
2017-12-08 16:17:00 (JST) in JRF 作成ソフトウェア Firefox JavaScript | 固定リンク
|
| トラックバック (0)
ブラウザ拡張 PP Authorizer を作った。Web Extension 規格に順って作ったので今後、様々なブラウザで利用できるようになるかもしれないが、今のところ Mozilla Firefox と Google Chrome でしか動かないようだ。
PP Authorizer の説明は、
専用ページで行った。まずそちらを読んで欲しい。このページは「サポート」を行うのがメインである。
一応、ここでも軽く説明しておくと、PP Authorizer は、「Privacy-Protected なログインまたは支払いを実現するための構成要素の一つ」ということになっている。
アドオンは、
AMO (Mozilla Add-ons) または
Google Web Store のページから手に入る。このページでは、一応、提出した際のソースのアーカイブを公開しておく。次のリンクが最新のもののはずだが、より以前のものはコメント欄をご参照いただきたい。
なお、ZIP には manifest.json が含まれていない。かわりに manifest_for_firefox.json と manifest_for_chrome.json が含まれている。どちらかを manifest.json にリネーム(またはコピー)して使っていただきたい。
更新: |
2017-11-27,2017-12-27 |
初公開: |
2017年11月27日 11:54:57 |
最新版: |
2017年12月27日 20:42:35 |
2017-11-27 11:55:00 (JST) in JRF 作成ソフトウェア Firefox JavaScript | 固定リンク
|
| トラックバック (0)
知人のかなり旧いホームページは、HTTP ヘッダの Content-Type に text/x-server-parsed-html が帰ってくるが、これは .htaccess 等の間違いとされるものらしく、Firefox も IE6 も HTML として処理してくれない。最初、Firefox のユーザー設定ファイルである mimeTypes.rdf をいじって個人的な解決を図ったが、調べるうちにどうも不可能であることがわかった。そこで、次善の策として、外部プログラムに URL を渡し、そこで適当な処理をほどこしてから、Firefox に戻して表示させることにした。
2010-04-08 23:19:50 (JST) in Cygwin Perl Firefox | 固定リンク
|
| トラックバック (0)
これはココログのテンプレートで使っている CSS が overflow:hidden を設定しているためです。これがわかるまでは、page-break (改ページ)まわりの設定や自作スクリプトがはく HTML のコードが悪いのかとかなり悩みました。
CSS がエディットできるなら、例えば次を足せば良いはずです。
|
@media print {
#calender, #left, #right, div.comment-form {display:none;}
#container {margin: 0 0 0 0; width:100%; border:0;}
#center {margin: 0 0 0 0; width:100%; overflow:visible;}
.content {margin: 0 0 0 0; /* padding: 0 0 0 0; */ }
}
|
ちなみに display:none はサイドバー等を表示しないようにするために付けています。必要に応じて修正してください。
2006-03-28 のココログのバージョンアップで、ココログプロでないユーザーも CSS が一部使えるようになっているそうなので、できることならば、サイト管理者が対応するべきでしょう。ユーザーが管理者に訴るべきと言いたいです。
2006-03-27 02:07:13 (JST) in ウェブログ・ココログ関連 HTML/XML/CSS Firefox | 固定リンク
|
| トラックバック (0)
Firefox の拡張に
DictionaryTip があります。ダブルクリックすると
goo 辞書などを引いてミニウィンドウを出してくれるものです。同じようなことを《
DDwin.js》を用いてやるには、
JSActions のスタートアップスクリプトを可能にして、そのスクリプト内で、イベントリスナーにダブルクリックに対して DDwin.js を呼ぶよう登録するだけです。
|
0. |
すでに firefox_jsa/selection/DDwin.js があるとします。
|
1. |
JSActions の設定で Enable Startup Script のチェックボックスを on にします。
|
2. |
firefox_jsa/startup というフォルダを作ります。
|
3. |
|
|
以上でできるようになるはずです。
|
// DDwin をダブルクリックで起動。
// firefox_jsa/selection/DDwin.js を呼ぶ。
if (document && "addEventListener" in document) {
document
.addEventListener("dblclick", function (e) {
if (/* e.ctrlKey && */ e.button == 0) {
var scrList = JsActions.getScriptList("selection");
for (var i in scrList) {
var scr = scrList[i];
if (scr.path.match(/DDwin.*\.js$/i)) {
JsActions.execScript(scr.path, scr.uri, e);
e.stopPropagation();
break;
}
}
}
}, true);
}
|
selection/DDwin.js がなく、Button/70_NL_DDwin.js のみがある場合は、もちろん、selection/DDwin.js を置くか、上の JsActions.getScriptList("selection") を JsActions.getScriptList("Button") に換えれば OK です。
更新: |
06/03/01 |
初公開: |
2006年03月01日 19:47:02 |
最新版: |
2006年03月04日 07:49:55 |
2006-03-01 19:46:57 (JST) in Firefox | 固定リンク
|
| トラックバック (0)
Firefox について同じようなことをやってる人がいた。《
chez sugi:firefox と DDWin》を参照すると、EPWING の規格上、独仏語だとアクセント文字がないほうが良いらしい。ちなみに latin-1 の文字列を sjis にencode しようとすると、アクセント記号と文字にわかれるのではなく、文字化けしてしまう。
そういったわけなので、アクセント付の文字をいちいちアクセントなしに変換する関数を書いた。私は独仏語辞典を持ってないから、Deja vu とかそのあたりの国語辞典に載ってる単語でしか確認できないけど。
更新: |
06/02/27 |
初公開: |
2006年02月27日 00:37:55 |
最新版: |
2006年02月27日 10:01:42 |
2006-02-27 00:37:52 (JST) in Emacs/Meadow Windows アプリ Firefox | 固定リンク
|
| トラックバック (0)
|
基本的には一本道で、次のような手順。
1. |
|
2. |
上と同じところから JSAButton をダウンロードし、インストール。 Button フォルダを作っておく。
|
3. |
DDwin 用の javascript ファイルを作る。例えば DDwin.jsを selection/ 以下に置き、さらに、これを Button/ 以下に名前を変えてコピーする。例えば 70_NL_DDwin.js などとする。
|
4. |
DDwin のアイコンを 適当なツールで取り出し、先の Button/ 以下に 70_NL_DDwin.png などとして書き出す。私は 16x16 で書き出した。
|
5. |
ツールバー上でカスタマイズを選択し、JSActionsButton というのを適当な場所に置く。このボタンを一度クリックすると、先のアイコンが表示される。
|
|
|
var query;
if(_jsaCScript.context.isTextSelected){
query = window.getSelection().toString();
} else {
var mes = "検索文字列を入力してください。";
mes = _jsaCScript.convertCharCodeTo(mes, "shift_jis");
query = prompt(mes, "");
}
if(query != null) {
query = remove_latin_1_accent(query);
query = query.replace(/^\s+/, "");
query = query.replace(/\s+$/, "");
query = query.replace(/^[\x21-\x2F\x7B-\x7E]+/, "");
query = query.replace(/[\x21-\x2F\x7B-\x7E]+$/, "");
query = _jsaCScript.convertCharCodeFrom(query, "shift_jis");
_jsaCScript.exec("c:\\Program Files\\DDwin\\ddwin.exe",
",2,Firefox用,G1," + query);
}
function remove_latin_1_accent(s) {
s = s.replace(/[\xC0-\xC5]/g, "A");
// ...省略...
s = s.replace(/[\u017F]/g, "s");
return s;
}
|
|
"Firefox用"は DDwin で使うグループ名。
|
ちなみに、これコマンドラインに渡すとき convertCharCodeFrom なんだよね。これを convertCharCode
To を使うと思ってはまってしまった。 JSActions 2.2.0 のバグかもしれないと思ったが《
掲示板》をよく見ると exec を使う例で、ちゃんと From でやっていた。
JSActions の今の管理人によると
> |
ぶっちゃけ、自分も使ったときに間違ったんですが、JSActions 0.8系にあわせました。
|
……だそうで convertCharCodeFrom であっているよう。FromUnicode にしてくれたらわかりやすかったのに。
なお、通常ここに書いたようなことをやりたければ、
DDwin の配布ページでいっしょに公開している DDpop を使うのが普通なのかもしれません。
■ |
参考
|
■ |
ファイル
DDwin.js |
|
JSActions の selection または JSAButton で使うためのスクリプト。
|
DDwin-by-Dblclick.js |
|
JSActions の startup に置くことで、 DDwin.js をダブルクリックで呼べるようにする。
|
EBWin.js |
|
|
jsactions.patch |
|
jsactions_2.2.0.xpi でテキストエリアなどのセレクションも取れるようにするためのパッチ。要 .xpi の展開、ビルド。ただし、現在のバージョンではすでに統合されていて不要。
|
|
■ |
更新
|
2006-03-10 |
jsactions.patch を使うときフォームの中で button などについてもセレクションを取ろうとしてエラーになっていたので、text と textarea のみ対応することにした。
|
2006-02-28 |
フォーム内のセレクションに対応するための このパッチ を jsactions_2.2.0.xpi にあてた場合に対応。
|
2006-02-26 |
独仏語の検索のために latin-1 のアクセント記号を抜くようにした。単語の前後の非英数の ASCII 文字をとりのぞいた。
|
2006-02-25 |
セレクションがないときに入力ボックスを開くようにした。
|
|
|
更新: |
06/02/25-06/03/10,2009-02-26 |
初公開: |
2006年02月25日 01:08:37 |
最新版: |
2009年02月27日 19:29:25 |
2006-02-25 14:22:08 (JST) in Windows アプリ Firefox | 固定リンク
|
| トラックバック (3)
ローカルなリンクと外部へのリンクを区別したい場合、
Firefox など
CSS3 を使えるブラウザ相手には、次のようにすれば良い。
|
a:link[href^="file:"] { color: lime; }
a:link:not([href*=":"]) { color: green; }
a:visited[href^="file:"] { color: olive; }
a:visited:not([href*=":"]) { color: olive; }
|
ちなみにこのサイトではだいたい次のように設定している。
|
a:link { color: #cc3333; }
a:visited { color: darkred;}
a:active { color: #ffcc33;}
a:hover { color: #ffcc33;}
a:link:not([href^="http://jrf.cocolog-nifty.com/"]) { color: blue; }
a:link:not([href*=":"]) { color: #990000; }
a:visited:not([href^="http://jrf.cocolog-nifty.com/"]) { color: purple; }
a:visited:not([href*=":"]) { color: darkred; }
a:active:not([href^="http://jrf.cocolog-nifty.com/"]) { color: #ffcc33; }
a:active:not([href*=":"]) { color: #ffcc33; }
a:hover:not([href^="http://jrf.cocolog-nifty.com/"]) { color: #ffcc33; }
a:hover:not([href*=":"]) { color: #ffcc33; }
|
更新: |
05/05/07,06/02/16 |
初公開: |
2006年02月16日 03:58:17 |
最新版: |
2006年03月01日 14:16:33 |
2006-02-16 03:58:17 (JST) in HTML/XML/CSS Firefox | 固定リンク
|
| トラックバック (1)
ググって調べるとバージョンアップ時に上書きインストールをし、ダウンロードの履歴がたまっているとそうなるようです。「上書きインストールなんかするな」って論調でしたが、とりあえず履歴を消すことで大幅に改善されました。うーん、
まとめサイトの FAQにのせといて欲しいぐらい。
以上が記事。下がグチ。
グチ1 |
でも、上書きインストールってやりますよね?だって、そうじゃないなら、プラグインのアップデートウィザートなんて出ないだろうし。インストーラじゃなくアーカイブで、その Readme のインストール方法に注意があれば、アンインストール後、再インストールとかもしますけど。
|
グチ2 |
ちなみに、Wiki だけど、開発者側じゃないから、確証できないし、必要最小限これをやるってのがわからないんで、私は書きたくないんです。皆がユーザーだったら自分も同じ立場なんで書く気になるけど、中に開発関係者がいるとどうも気おくれするんですよね。他のユーザーはどうなんでしょ?この辺りオープンソースの意外な弱点なのかも。
|
更新: |
06/02/10 |
初公開: |
2006年02月10日 03:45:20 |
2006-02-10 04:21:45 (JST) in Windows アプリ Firefox | 固定リンク
|
| トラックバック (0)
やっぱ前のほうがイイってことで、オプションの既定のフォントを「MS P明朝」にすると……あれ?1.0.7 でゴシックで表示されてたところも明朝になってしまふ。
そこでそのとなりの「詳細設定」ボタンを押して、プロポーショナルを明朝に、ゴシック体を MS Pゴシックにしたところ、前とだいたい同じになった。
Amazon とかでフォントの斜体を使ってるページ、どうもうちの環境だとゴシックの斜体は美しくないんで、そこは明朝のほうが数倍マシだと思う。
更新: |
06/02/09 |
初公開: |
2006年02月09日 11:29:43 |
2006-02-09 11:29:43 (JST) in Windows アプリ Firefox | 固定リンク
|
| トラックバック (0)
Firefox 1.5 にしてから、これまでポップアップのブロックができていたサイトでポップアップが出るようになってしまった。しかもポップアップが出たあと、タブに吸収されて、そのウィンドウがリサイズされてしまう。
これまでプラグインの管理がメンドウなんで TBE を使ってきて、今回はじめて Tab Mix Plus を使ったんだけど……これで十分っていうか、自分的にはこっちのほうがイイ。ちゃんと自分好みにカスタマイズできるし、閉じたタブの履歴もあるし。
更新: |
06/02/09 |
初公開: |
2006年02月09日 11:08:48 |
2006-02-09 11:08:48 (JST) in Windows アプリ Firefox | 固定リンク
|
| トラックバック (0)
今回はほとんどメジャーバージョンアップなので、過去のプラグインがそのままでは使えないことが多いようで、install 後の起動で、ウィザードの指示に従って、そのバージョンアップを行なった。
ただし、いくつかの物については、firefox 1.5 に対応していないとのことで、自動的に無効にされてしまった。しかし、それらのほとんども手動で update してやれば問題なく動いている。
ちなみに、そこでは、Nightly Tester Tool Lite でも良いような記述に見えるが、私は Lite ではうまくいかなかった。
また、install 時は毎度のことだが、Emacs バインドを使うために、以前使っていた C:\Program Files\Mozilla Firefox\res\builtin\platformHTMLBindings.xml をキーバインドとするために C:\Program Files\Mozilla Firefox\res\forms.css の一部を以下のように書き換えている。
|
$ cd /cygdrive/c/Program\ Files/Mozilla\ Firefox/res/
$ diff forms.css.orig forms.css
--- forms.css.orig 2006-02-08 14:08:17.609375000 +0900
+++ forms.css 2006-02-08 14:11:06.515625000 +0900
@@ -90,7 +90,7 @@
word-spacing: normal;
letter-spacing: normal;
cursor: text;
- -moz-binding: url("chrome://global/content/platformHTMLBindings.xml#inputFields");
+ -moz-binding: url("resource://gre/res/builtin/platformHTMLBindings.xml#inputFields");
text-indent: 0;
-moz-user-select: text;
}
@@ -111,7 +111,7 @@
letter-spacing: normal;
vertical-align: text-bottom;
cursor: text;
- -moz-binding: url("chrome://global/content/platformHTMLBindings.xml#textAreas");
+ -moz-binding: url("resource://gre/res/builtin/platformHTMLBindings.xml#textAreas");
-moz-appearance: textfield;
text-indent: 0;
-moz-user-select: text;
|
ちなみに、書き換える前の platformHTMLBindings.xml は C:\Program Files\Mozilla Firefox\toolkit.jar の content/global に入っている。
更新: |
06/02/08 |
初公開: |
2006年02月08日 15:50:43 |
2006-02-08 15:54:16 (JST) in Windows アプリ Firefox | 固定リンク
|
| トラックバック (0)