magicpatch
Version:
Adds IPython / Jupyter magic commands to IJavascript
34 lines (31 loc) • 962 B
JavaScript
/* global $$ */
const {printAutomagicStatus} = $$.addMagic.utils;
function lsmagic() {
let cmds = [... this.magicMap.entries()];
cmds = cmds
// filter out stubs
.filter((ent) => !ent[1].stub)
// just use the names
.map((ent) => ent[0])
// sort alphabetically
.sort();
let lineMagics = cmds.filter((str) => str[0] === "%" && str[1] !== "%").join(" ");
let cellMagics = cmds.filter((str) => str[0] === "%" && str[1] === "%").join(" ");
console.log(`Available line magics:\n${lineMagics}`);
console.log("");
console.log(`Available cell magics:\n${cellMagics}`);
console.log("");
printAutomagicStatus(this.requireMagic);
}
lsmagic.standard = true;
let {decorateMagic} = $$.addMagic.utils;
decorateMagic(
lsmagic,
__filename,
"List currently available magic functions.",
["name", "%lsmagic"],
);
$$.addMagic("%lsmagic", lsmagic);
module.exports = {
lsmagic,
};