OK, this isn't better than 'crude-but-working', but tooling is in place for further work.

This commit is contained in:
Simon Brooke 2025-09-27 11:42:01 +01:00
parent 480032492a
commit 0f06fb501f
6 changed files with 1659 additions and 24 deletions

View file

@ -160,3 +160,14 @@ Troubleshooting
(Optional) ✅ Smoke-test on iOS Safari / Android Chrome.
### Scittle framework included
**NOTE THAT** this repository includes virtually the whole of [Michiel
Borkent](https://github.com/borkdude)'s [Scittle](https://github.com/babashka/scittle) framework, which is copyright Michiel Borkent and others, and is licensed under the Eclipse Puplic License; and Scittle in turn includes a great deal of Clojurescript
This program and the accompanying materials are made available under the
terms of the Eclipse Public License 2.0 which is available at
http://www.eclipse.org/legal/epl-2.0.
### Original code and audio recordings of the Japji project

View file

@ -1,4 +1,8 @@
;; converted from japji-nihung-timings.json using http://cljson.com/
;; TODO: NOTE THAT, because I have found no way to import EDN into
;; a running Scittle session, this file is not currently used --
;; but it is left here as a reminder that it would be the right thing
;; to do!
[{:words [{:text "ੴ", :start 3.482, :end 5.761}],
:lineStart 3.482,

View file

@ -1,4 +1,6 @@
data-js = [
/* Timings as supplied by Lucy */
data = [
{
"words": [
{

View file

@ -78,8 +78,10 @@
<meta charset="UTF-8">
<meta Content-Language="pa, en-GB">
<script src="scripts/scittle.js" type="text/javascript"></script>
<script src="scripts/jquery-3.7.1.slim.min.js" type="text/javascript">
<!-- script src="data/japji-nihung-timings.json" type="text/javascript">
parsed=JSON.parse(data);
</script -->
<script src="scripts/japji.cljs" type="application/x-scittle"></script>
</script>
<!-- Have to pull react and react-dom from CDN during development because of obnoxious
Cross Origin Request nonsense. Makes me wonder whether we should seek not to use them
@ -88,25 +90,24 @@
<script crossorigin src="https://cdn.jsdelivr.net/npm/react-dom@18/umd/react-dom.production.min.js"></script>
<script src="scripts/scittle.reagent.js" type="text/javascript"></script>
</script>
<script type="application/x-scittle">
</script>
</script>
</head>
<body>
<div id="popup"></div>
<h1><span class="en-GB" lang="en-GB">Japji Sahib</span></h1>
<p>Select words to hear them. Select the bullet • to hear the whole line. Select three dots ... to record your own
voice.</p>
<h1><span class="gurmukhi" lang="pa">ਜਪੁਜੀ ਸਾਹਿਬ</span> <span class="en-GB" lang="en-GB">(Japji Sahib)</span></h1>
<p><span class="gurmukhi" lang="pa">ਸੁਣਨ ਲਈ ਸ਼ਬਦ ਚੁਣੋ। ਪੂਰੀ ਲਾਈਨ ਸੁਣਨ ਲਈ ਬੁਲੇਟ • ਚੁਣੋ। ਆਪਣੀ ਆਵਾਜ਼ ਰਿਕਾਰਡ ਕਰਨ ਲਈ ਤਿੰਨ ਬਿੰਦੀਆਂ ਚੁਣੋ ...।</span> </p>
<p class="en-GB" lang="en-GB">(Select words to hear them. Select the bullet • to hear the whole line. Select three dots ... to record your own
voice.)</p>
<audio id="japji-bindranwale" controls src="audio/japji_bindranwale.mp3"></audio>
<div id="content"><span class="gurmukhi" lang="pa">ਕ੍ਰਿਪਾ ਕਰਕੇ ਉਡੀਕ ਕਰੋ...</span></div>
<footer>
Page scripts copyright &copy; Simon Brooke and Lucy Fyfe 2025 <br>
Made with <a href="https://babashka.org/scittle/">Scittle</a>
<span class="gurmukhi" lang="pa">ਪੇਜ ਸਕ੍ਰਿਪਟਾਂ ਕਾਪੀਰਾਈਟ ਸਾਈਮਨ ਬਰੂਕ ਅਤੇ ਲੂਸੀ ਫਾਈਫ 2025</span> <span class="en-GB" lang="en-GB">Page scripts copyright &copy; Simon Brooke and Lucy Fyfe 2025</span><br>
<span class="gurmukhi" lang="pa">ਨਾਲ ਬਣਾਇਆ ਗਿਆ</span> <span class="en-GB" lang="en-GB">Made with</span> <a href="https://babashka.org/scittle/">Scittle</a>
</footer>
</body>

View file

@ -1,7 +1,7 @@
var shadow$provide = {};
var CLOSURE_NO_DEPS = true;
var CLOSURE_BASE_PATH = '/js/cljs-runtime/';
var CLOSURE_DEFINES = {"shadow.cljs.devtools.client.env.repl_pprint":true,"shadow.cljs.devtools.client.env.reload_strategy":"optimized","shadow.cljs.devtools.client.env.devtools_url":"","shadow.cljs.devtools.client.env.autoload":true,"shadow.cljs.devtools.client.env.proc_id":"51640c77-bf55-4017-9da5-bcee301cb9ac","shadow.cljs.devtools.client.env.use_document_protocol":false,"goog.ENABLE_DEBUG_LOADER":false,"shadow.cljs.devtools.client.env.server_port":9630,"shadow.cljs.devtools.client.env.server_token":"2e23abc3-0e39-4ba7-8595-82221208d40e","shadow.cljs.devtools.client.env.use_document_host":true,"shadow.cljs.devtools.client.env.module_format":"goog","goog.LOCALE":"en","shadow.cljs.devtools.client.env.build_id":"main","shadow.cljs.devtools.client.env.ignore_warnings":false,"goog.DEBUG":true,"shadow.cljs.devtools.client.env.log":true,"shadow.cljs.devtools.client.env.ssl":false,"shadow.cljs.devtools.client.env.enabled":true,"shadow.cljs.devtools.client.env.server_host":"localhost","shadow.cljs.devtools.client.env.worker_client_id":2,"goog.TRANSPILE":"never"};
var CLOSURE_DEFINES = {"shadow.cljs.devtools.client.env.repl_pprint":true,"shadow.cljs.devtools.client.env.reload_strategy":"optimized","shadow.cljs.devtools.client.env.devtools_url":"","shadow.cljs.devtools.client.env.autoload":true,"shadow.cljs.devtools.client.env.proc_id":"e0125c76-3c44-423b-9581-c966fb3a8c47","shadow.cljs.devtools.client.env.use_document_protocol":false,"goog.ENABLE_DEBUG_LOADER":false,"shadow.cljs.devtools.client.env.server_port":9630,"shadow.cljs.devtools.client.env.server_token":"ca420fcb-fc2f-467a-8312-a2f4d2ca0255","shadow.cljs.devtools.client.env.use_document_host":true,"shadow.cljs.devtools.client.env.module_format":"goog","goog.LOCALE":"en","shadow.cljs.devtools.client.env.build_id":"main","shadow.cljs.devtools.client.env.ignore_warnings":false,"goog.DEBUG":true,"shadow.cljs.devtools.client.env.log":true,"shadow.cljs.devtools.client.env.ssl":false,"shadow.cljs.devtools.client.env.enabled":true,"shadow.cljs.devtools.client.env.server_host":"localhost","shadow.cljs.devtools.client.env.worker_client_id":2,"goog.TRANSPILE":"never"};
var COMPILED = false;
var goog = goog || {};
goog.global = this || self;

File diff suppressed because it is too large Load diff