clojurescript を使用して chrome 拡張機能を作成したいと考えています。
4 に答える
Chrome 拡張機能は通常 HTML/CSS/JS で作成されるため、ClojureScript は JavaScript にコンパイルされるため、問題なく動作するはずです。そうは言っても、ClojureScript を使って大規模な拡張機能を実際に構築した人はまだいないと思います。概念実証として、Zaboomafoo (その名前は申し訳ありません) と言う単純なアラート拡張機能を作成する方法の概要を次に示します。
最初にLeiningenとlein-cljsbuildをインストールします。lein-cljsbuild のドキュメントを読み、ClojureScript のwikiをチェックして、プロジェクトとコンパイルに lein-cljsbuild を使用する方法を理解してください。
次のように「Zaboomafoo」という警告を表示する ClojureScript ファイルを作成します。
(ns Zaboomafoo.hello)
(js/alert "Zaboomafoo")
これを でコンパイルしlein cljsbuild
て、JavaScript ファイルを取得します。次に、基本的な HTML ファイルと拡張機能の manifest.json を追加します。
Zaboomafoo.html:
<!Doctype html>
<html>
<head>
<title>Zaboomafoo!</title>
</head>
<body>
<script type="text/javascript" src="Zaboomafoo.js"></script>
</body>
</html>
マニフェスト.json:
{
"name": "Displays Zaboomafoo when opening a new tab",
"version": "0.1",
"incognito": "split",
"chrome_url_overrides": {
"newtab": "Zaboomafoo.html"
},
"manifest_version": 2
}
新しいmanifest.json、Zaboomafoo.html、およびZaboomafoo.jsをわかりやすいフォルダに入れます。最後に、Chrome 拡張機能のページに移動し、開発者モードをオンにし、展開された拡張機能をロードして、新しいタブを開きます。この拡張機能は、タブを開くと「Zaboomafoo」といううっとうしいアラートをロードするはずです。ブラウザ拡張機能の作成がもう少し普及することを願っていますが、これが一般的な流れです。
簡単な Chrome 拡張機能のサンプル プロジェクトといくつかのドキュメントをリリースしました: https://github.com/binaryage/chromex-sample
Chromex ライブラリを使用します: https://github.com/binaryage/chromex
免責事項: 私はライブラリの作成者です
ClojureScript を使用して Chrome 拡張機能を作成するという正確な目的で、このプロジェクトを開始しました。
答えは一般的な指示をgreenyouse
提供しますが、ClojureScript の初心者として、使用lein
に問題がありcljsbuild
、最初に基本的なセットアップを行うことにしました。多分それは誰かを助けるでしょう。
サイドノート:物事をよりよく理解したら、プロジェクトをlein
andに移行する予定です。cljsbuild
その時点で、この回答を更新します。
例として、選択によってブラウザーで clojure コードを評価できるようにする、cljs で記述されたこのchrome 拡張機能を見てください。