Is it possible to add a new option here and bind an evaluator?
Is it possible to take SageMath, Matlab, Maple, etc. as examples to provide a complete process demonstration?
Is it possible to add a new option here and bind an evaluator?
Is it possible to take SageMath, Matlab, Maple, etc. as examples to provide a complete process demonstration?
It was just an attempt to add a ExternalCell, and did not successfully create an evaluator bind.
First create a new package called ExternalEvaluate_*, only this form can be recognized by External Evaluator Manager.
Then add cell icon and set "ShowInFrontendCellQ" as True.
Then run the ExternalEvaluate`RegisterSystem.
ExternalEvaluate`RegisterSystem["SageMath",
<|
"ExecutablePathFunction" -> Function[{vers}, unimplement[]],
"ExecutablePatternFunction" -> Function[{vers}, unimplement[]],
"ProgramFileFunction" -> Function[{version}, PacletManager`PacletResource["ExternalEvaluate_SageMath", "REPL"]],
"ScriptExecCommandFunction" -> Function[{uuid, exec, file, opts}, unimplement[]],
"Icon" -> Import[PacletManager`PacletResource["ExternalEvaluate_SageMath", "Icon"]],
"IconCell" -> ToBoxes@Import[PacletManager`PacletResource["ExternalEvaluate_SageMath", "IconCell"]],
"ShowInFrontendCellQ" -> True,
"VersionExecCommandFunction" -> Function[{exec}, unimplement[]],
"PacletName" -> Automatic,
"SessionProlog" -> None,
"DeserializationFunction" -> BinaryDeserialize,
"SerializationFunction" -> BinarySerialize
|>
];
Then a new kind of External Cell is available.
But it needs to bind executable program, still have no idea.
CurrentValue[EvaluationNotebook[], {StyleDefinitions, "ExternalLanguage", CellFrameLabels}]. It seems the menu there changes aCellEvaluationLanguageoption. – b3m2a1 Oct 17 '19 at 04:20