タグ

XPCOMに関するmhrsのブックマーク (26)

  • Building PyXPCOM | MDN

    この記事は PyXPCOM のビルド方法を紹介します。 Python をインストール PyXPCOM に必要な条件 PyXPCOM は Python 2.3 もしくはそれ以降が必要です (Python 2.3 と 2.4 では現在テストが完了されています). PyXPCOM は Python の共有ライブラリにアクセスできる必要があります。 Linux Linux では、適切な Python の共有ライブラリを持っているかどうかをビルドスクリプトがチェックをします。 Compiling Mozilla に行き、もし共有ビルドされた Python が見つからなくエラーを受け取った場合、 後の方の記述に従い --enable-shared をつけて Python をコンパイルする必要があります。 現在の Fedora と Ubuntu 上でのビルド これらのディストリビューションではすでに利用

    Building PyXPCOM | MDN
    mhrs
    mhrs 2007/05/13
    “この記事は PyXPCOM のビルド方法を紹介します。”
  • XULPlanet.com

    mhrs
    mhrs 2007/05/06
  • XUL Apps > Tips > ディレクトリのパスを得る - outsider reflex

    内部名を参照すると、現在のプロファイルのディレクトリや prefs.js などのパスを簡単に取得することができます。 const DIR = Components.classes['@mozilla.org/file/directory_service;1'].getService(Components.interfaces.nsIProperties); var fileOrDir = DIR.get('内部名', Components.interfaces.nsIFile); // 'file:///c:/windows/...' の形式 try { const ioService = Components.classes['@mozilla.org/network/io-service;1'].getService(Components.interfaces.nsIIOService

    mhrs
    mhrs 2007/05/06
    @mozilla.org/file/directory_service;1
  • JavaScript XPCOM Component Wizard

    The JavaScript Component Wizard generates an XPCOM component skeleton to meet your needs. It is intended to save the time you would normally spend copying and pasting from your previous extensions or sample extensions.

    mhrs
    mhrs 2007/05/06
  • Reading textual data | MDN

    ネットワークチャンネル (nsIChannel) を使っているのであれば、その contentCharset プロパティを使うことができます。すべてのチャンネルからデータの文字エンコーディングがわかるわけではないので注意してください。代わりに、設定(intl.charset.default、ローカライズされた設定値)で保存されているデフォルトの文字エンコーディングを使うこともできます。 ファイルから読み込むとなると、これは答えづらい質問です。システムの文字エンコーディングを使うとうまくいくかもしれません。また、同様に設定からデフォルトの文字エンコーディングを取得し、それを使ってもいいでしょう。 文字列の読み込み Gecko 1.8 (SeaMonkey 1.0、Firefox 1.5) では、ストリーム (nsIInputStream) から文字列を読み込むのに nsIConverterI

    Reading textual data | MDN
    mhrs
    mhrs 2007/05/05
    「この記事では、ストリーム、ファイル、ソケットからテキストデータを読み込む方法を説明します。」
  • Writing textual data - Archive of obsolete content | MDN

    この記事では、国際化を考慮しつつ、テキストデータをストリーム、ファイル、ソケットに書き込む方法を説明します。 警告:この記事では仕様が未確定のインタフェースを使用しています。これらのインタフェースは新しい Mozilla では変更になる可能性があり、そのときはコードが機能しなくなるかもしれません。 テキストデータを出力ストリームやファイルに書き込むときは、文字エンコーディングを選択する必要があります。 UTF-8、UTF-16、UTF-32 といった文字エンコーディングは、その他が全レパートリの一部しか表せないのに対して、「すべての」文字(Unicode の全レパートリ)を表すことができます。 そのファイルがアプリケーションや拡張機能自身からしか読み込まれないのであれば UTF-8 の使用は最良の選択です。すべての文字を表すことができ、ASCII 文字も効率的に表されます。 ストリームへの

    Writing textual data - Archive of obsolete content | MDN
    mhrs
    mhrs 2007/05/05
    「この記事では、国際化を考慮しつつ、テキストデータをストリーム、ファイル、ソケットに書き込む方法を説明します。」
  • 文字列と UTF-8 バイト列の相互変換: Days on the Moon

    やっていることは「高度な JavaScript 技集」の「UTF-8 <-> UTF16 変換」と同じ。 function toUTF8Octets(string) { return unescape(encodeURIComponent(string)); } function fromUTF8Octets(octets) { return decodeURIComponent(escape(octets)); } encodeURIComponent は encodeURI でもいい (むしろそのほうが処理する文字種が減って速くなりそう) が、decodeURIComponent は decodeURI にすると一部の文字 ("?"、"#" など) がデコードされなくなる。 使いどころ Base64 エンコードする関数 (「高度な JavaScript 技集」の base64encod

    mhrs
    mhrs 2007/05/05
    「ファイル入出力の際に日本語文字などを扱うためには、Gecko 1.8 / Firefox 1.5 から導入された nsIConverterInputStream / nsIConverterOutputStream、または nsIScriptableUnicodeConverter を使う」
  • テキストファイルの入出力 - outsider reflex

    ローカルのテキストファイルの入出力 以下は、テキストファイルの内容を読み込み、文字列として返す関数の例です。 function readFrom(aFile) // nsILocalFile の形でファイルオブジェクトを渡す { var stream = Components.classes['@mozilla.org/network/file-input-stream;1'].createInstance(Components.interfaces.nsIFileInputStream); try { stream.init(aFile, 1, 0, false); // open as "read only" var scriptableStream = Components.classes['@mozilla.org/scriptableinputstream;1'].createI

    mhrs
    mhrs 2007/05/05
  • XULPlanet.com

  • Firefoxで独自プロトコルを定義する方法 - outsider reflex

    Latest topics > Firefoxで独自プロトコルを定義する方法 宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行まんがでわかるLinux シス管系女子の試し読みが可能! « Mozilla Add-ons Main URNサポートを超久しぶりに更新した » Firefoxで独自プロトコルを定義する方法 - Mar 26, 2007 独自のプロトコルというか独自のスキーマを使えるようにしたくてやり方を調べてみたら、あちこちでAdding a New Protocol to Mozillaという文書が紹介されてたんだけど、日語訳が無かったのでとりあえず気合いと勘で訳してみた。誤訳があったらゴメンナサイ。 2004年の資料で、しかもMozilla Suiteを対象とした物なので情報が古い。Fire

  • Embedding Mozilla - Mozilla | MDN

    Gecko allows third-party developers to use the same technology as found in Mozilla. That means you can embed a web browser inside a third-party application, open channels and streams through the network backend, walk through the DOM and so on. You can even construct whole new applications using chrome. Documentation Gecko Embedding Basics An introduction to embedding the Gecko rendering engine. Em

    Embedding Mozilla - Mozilla | MDN
  • XUL Apps > Tips > prefs.js に設定を保存する・設定を読み込む - outsider reflex

    XPConnect を利用すれば、ユーザープロファイルの prefs.js に簡単に情報を書き出せます。 const PREFID = '@mozilla.org/preferences;1'; const nsIPrefBranch = Components.interfaces.nsIPrefBranch const PREF = Components.classes[PREFID].getService(nsIPrefBranch); 設定の保存は以下の要領で行います。 PREF.setBoolPref('package.pref.value1', 真偽値); PREF.setCharPref('package.pref.value2', 文字列); PREF.setIntPref('package.pref.value3', 整数値); 読み込む場合は以下の要領です。 val_bo

  • Internet for people, not profit — Mozilla

    Your system may not meet the requirements for Firefox, but you can try one of these versions:

    Internet for people, not profit — Mozilla
  • PyXPCOM - Mozilla | MDN

    PyXPCOM は Python と XPCOM の間で通信を可能にします。すなわち、Python アプリケーションが XPCOM オブジェクトにアクセスできるように、また XPCOM が XPCOM インタフェースを実装したあらゆる Python クラスにアクセスできるようにします。PyXPCOM によって開発者は Python アプリケーションから XPCOM や組み込み Gecko に通話が可能になります。PyXPCOM は JavaXPCOM (Java と XPCOM のブリッジ) や XPConnect (JavaScript と XPCOM のブリッジ) と類似しています。 Python のクラスとインタフェース: Mozilla は組み込み開発者やコンポーネント開発者が利用できる多くの外部インターフェイスを定義しています。PyXPCOM はこれらのインタフェースを Pyth

    PyXPCOM - Mozilla | MDN
  • Introduction to XPCOM for the DOM - MDC

    Fabian Guisset <fguisset@softhome.net> 注意: この文書はまだ DOM の権威の校正を経ておりませんので、正確でない部分があるかもしれません。 この文書は DOM コードのコンテキストで XPCOM を使用する方法の入門書です。文書に記述されています XPCOM や nsCOMPtr の使用法は DOM コードを読んだり、書いたりするために必要な知識の 8 割をカバーしています。XPCOM の上級向けの内容については XPCOM のページをご参照ください。 この文書のバグの追跡は bug 99592 で可能です。 対象読者: DOM コードに C++ と XPCOM を使用するための手っ取り早い入門書が必要な読者。DOM ハッキングガイド の残りの部分を読むには、この文書の内容を理解している必要があります。 重要な注意事項: この文書は C++

  • Adding a New Protocol to Mozilla

    This article demonstrates how to add a new protocol to Mozilla. JavaScript and XPCOM will be used to implement the protocol, and will also cover adding it to an existing Mozilla installation. Introduction Mozilla supports the generic web protocols, such as http and ftp. It is sometimes usefull to modify existing Mozilla installations to support a new protocol so that Mozilla is able to integrate b

    mhrs
    mhrs 2006/11/05
    Mozillaに獨自のプロトコルを追加する。via http://amb.vis.ne.jp/mozilla/?p=59。日本語譯が http://piro.sakura.ne.jp/latest/blosxom/mozilla/xul/2007-03-26_protocol.htm にある。
  • html テキストを DOMDocument にする - サバニFRP

    Firefox 2.0 の FeedView 用 XPCOM を使えば、XML として正しくない HTML テキストから、DOMDocument を作れるみたい。 var htmlSource = "<p>foo<p>bar"; var doc = document.implementation.createDocument("", "", null); doc.appendChild(doc.createElement("root")); var unescapeHTML = Components.classes["@mozilla.org/feed-unescapehtml;1"] .getService(Components.interfaces.nsIScriptableUnescapeHTML); var fragment = unescapeHTML.parseFragment

    mhrs
    mhrs 2006/10/15
    「Firefox 2.0 の FeedView 用 XPCOM を使えば、XML として正しくない HTML テキストから、DOMDocument を作れるみたい。」
  • 【インフォシーク】Infoseek : 楽天が運営するポータルサイト

    日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。

    mhrs
    mhrs 2006/10/05
  • 【インフォシーク】Infoseek : 楽天が運営するポータルサイト

    日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。

    mhrs
    mhrs 2006/01/12
  • Mozilla DOM Hacking Guide - MDC

    注意: この文書は DOM の専門家からの精査を受けていません。問題のある記述があるかもしません。最近になって DOMClassInfo コードが変更されたため、記述が古い可能性もあります。ご指摘をお待ちしています。 Mozilla を使うと、強力で完全な DOM を単に 使える ようになるというだけではなくて、これまでに培 (つちか) われてきた最も偉大なインターネット技術の世界レベルの実装を 作業できる ようになります。 Mozilla DOM のほとんどは C++ で書かれています。DOM を真剣にハックするには、C++ と Mozilla 独自のコンポーネントモデルである XPCOM に通暁している必要があります。私はこの文書を通じて、実装の中心的要点を解説することにします。まずは、DOM の中心に位置する Class Info 機構から初めて、さまざまなインターフェースやクラスの