Ответ 1
Расширения Chrome обычно создаются с помощью HTML/CSS/JS, поэтому ClojureScript должен работать отлично, потому что он компилируется на JavaScript. Это, как говорится, я не думаю, что кто-то на самом деле построил большое расширение с ClojureScript. В качестве доказательства концепции здесь приводится общая схема того, как сделать простое расширение предупреждений, которое скажет Zaboomafoo (извините за это имя):
Установите Leiningen и lein-cljsbuild сначала, Прочтите документы для lein-cljsbuild и посмотрите wiki на ClojureScript, чтобы понять, как использовать lein-cljsbuild для проектов и компиляции.
Сделайте файл ClojureScript, в котором отображается предупреждение с надписью "Zaboomafoo" следующим образом:
(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>
manifest.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", когда вы открываете вкладку. Надеемся, что расширение браузера станет немного более популярным, но это общий поток.