summaryrefslogtreecommitdiffstats
path: root/player/scripting.c
diff options
context:
space:
mode:
authorAvi Halachmi (:avih) <avihpit@yahoo.com>2014-12-13 18:27:47 +0200
committerwm4 <wm4@nowhere>2017-06-14 12:29:32 +0200
commitd223a63bc5de423bca7337795fe165678cf6d236 (patch)
treeea803184506cec7c5bc1aac8250ace9d93604907 /player/scripting.c
parent82aa1ea87f1c83e9c32f8aa1bc8ce6acb14fa4e6 (diff)
downloadmpv-d223a63bc5de423bca7337795fe165678cf6d236.tar.bz2
mpv-d223a63bc5de423bca7337795fe165678cf6d236.tar.xz
js: add javascript scripting support using MuJS
Implements JS with almost identical API to the Lua support. Key differences from Lua: - The global mp, mp.msg and mp.utils are always available. - Instead of returning x, error, return x and expose mp.last_error(). - Timers are JS standard set/clear Timeout/Interval. - Supports CommonJS modules/require. - Added at mp.utils: getenv, read_file, write_file and few more. - Global print and dump (expand objects) functions. - mp.options currently not supported. See DOCS/man/javascript.rst for more details.
Diffstat (limited to 'player/scripting.c')
-rw-r--r--player/scripting.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/player/scripting.c b/player/scripting.c
index 46379b4151..dc8e7d5b2b 100644
--- a/player/scripting.c
+++ b/player/scripting.c
@@ -38,6 +38,7 @@
extern const struct mp_scripting mp_scripting_lua;
extern const struct mp_scripting mp_scripting_cplugin;
+extern const struct mp_scripting mp_scripting_js;
static const struct mp_scripting *const scripting_backends[] = {
#if HAVE_LUA
@@ -46,6 +47,9 @@ static const struct mp_scripting *const scripting_backends[] = {
#if HAVE_CPLUGINS
&mp_scripting_cplugin,
#endif
+#if HAVE_JAVASCRIPT
+ &mp_scripting_js,
+#endif
NULL
};