朱比特语法
识字的Jupyter,用于可获取和可再生的数据分析.
扩展
编辑器与 语法扩展数字 :
此软件包的每个行为都是在 src/extensions,以及
JupyterLexicalExtension 把他们都捆起来 主机取决于捆绑从
名称空间、主题、初始
状态, 将焦点放在挂载上—— 并使内容可以编辑到它想要的地方 :
import { AutoFocusExtension } from '@lexical/extension';
import { LexicalExtensionComposer } from '@lexical/react/LexicalExtensionComposer';
import { ContentEditable } from '@lexical/react/LexicalContentEditable';
import {
JupyterLexicalExtension,
commentTheme,
} from '@datalayer/jupyter-lexical';
import { defineExtension } from 'lexical';
// Module scope: the composer rebuilds the editor whenever this reference changes.
const extension = defineExtension({
name: 'my-app/Document',
namespace: 'my-document',
theme: commentTheme,
dependencies: [JupyterLexicalExtension, AutoFocusExtension],
});
export const Document = () => (
<LexicalExtensionComposer extension={extension} contentEditable={null}>
<ContentEditable className="editor-input" />
</LexicalExtensionComposer>
);
从根部将捆绑的行为重新配置为 configExtension,用于
实例 configExtension(HistoryExtension, { disabled: true }) (单位:千美元)
协作文档,或 configExtension(ListMaxIndentLevelExtension, { maxDepth: 3 })。 。 。 .
其中一些暴露了输出中的信号 这样一个活编辑器就可以了
未重建而重新配置——列表天花板,或 lexicalId 财务报告和审定财务报表
serviceManager 联 合 国 LexicalStateExtension 将编辑器注册到
用于代理工具的共享存储 .
两种行为需要主机:只有主机有的(内核,
完成提供者)和挂出主机DOM(浮动菜单)的东西.
第一个是产出组成部分—— JupyterInputOutputExtension, (中文(简体) ),
ComponentPickerMenuExtension 财务报告和审定财务报表 InlineCompletionExtension 设置在
useExtensionComponent 或者说 <ExtensionComponent lexical:extension={…} />· ;
作曲家儿女的第二站 执行插头
工具栏、注释面板和协作提供者.
每个扩展保留一个同名的回声插件 src/plugins 用于
编辑器仍然使用 LexicalComposer; 插件是一个薄薄的包件结束
扩展名 register… 函数,因此两个路径共享一个执行.
视频、地板和甲板块
3个街区类型与捆绑 / 在编辑器中:
- 视频 (单位:千美元)
VideoExtension, (中文(简体) ),VideoNode: 记录屏幕或相机 与浏览器自己的MediaRecorder——没有帐户,没有钥匙,没有上传. 这个 文件留在页面内存中 : 重装页面时丢失,以及 没有人会看到该文件。 下载保存副本 。 之后a 重新装入该块 说它的视频已经消失 而不是假装它从来没有. - Loom 视频 (单位:千美元)
LoomExtension, (中文(简体) ),LoomNode: 记录 a 闲置 作者在Loom上签名 账号,保存录像的地方,或取一个地址,然后 显示它。 粘贴一个Loom地址 提议嵌入它. - 底片幻灯片 (单位:千美元)
DeckExtension, (中文(简体) ),DeckNode: 由@datalayer/decks从其DeckSpec,首先使用一个标题幻灯片. 双击以编辑规格为JSON; 用它保存检查validateDeckSpec并且只在没有错误的时候保留它.
用 Loom 录音需要一个 Loom 公共应用代码。本软件包不保留;主机 从自己的配置中给出 :
configExtension(LoomExtension, { publicAppId: process.env.LOOM_PUBLIC_APP_ID });
(单位:千美元)<Editor extensions={[…]} /> 拿着那张名单,和 <LoomPlugin publicAppId={…} />
对搭建在 LexicalComposer.) 无一出,禄姆
块仍然显示并嵌入了视频;只关闭了记录。 实例如下:
LOOM_PUBLIC_APP_ID 从外壳,或从 .env.local 在这个包,
被忽略的 .env 它不——不让那一个id:
npm run install:react18 # once, see below
echo 'LOOM_PUBLIC_APP_ID=…' >> .env.local # once
npm run start:vite # or start:webpack
记录者, @loomhq/record-sdk, (中文(简体) ), 运行于 React 18: 它导入反应
从页面起起并挂起 ReactDOM.render,该反应19删除。 下
JupyterLab,它分享回放18,不需要什么。 反应 19 页必须给出
记录器本身的回放 18 —— SDK 只有在有人时才会被导入
按下记录, 所以没有记录, 只有记录失败, 和块
这么说的 此软件包的 Dev 服务器以双向显示
npm run install:react18 装入 vendor/react18数字 :
- 网络软件包 (单位:千美元)
webpack.config.js: SDK 及其导入的全部加入一个模块 层,loom18时react财务报告和审定财务报表react-dom下定决心; - 维特 (单位:千美元)
vite.config.ts:一个插件将SDK与Esbuild捆绑在一起, 每个react导入指向该对,并服务于任何结果 源导入 SDK.
格式
文档通过其他格式进出 src/convert数字 :
-
标记 —— 说
$convertToMarkdownString编号 :$convertFromMarkdownString与包件的变压器(表、图像、等式、规则和 作为可执行的Jupyter输入的栅栏码). -
无格式 —— 说
lexicalToNbformat(nodes)每个Jupyter写一个代码单元格 输入其产出和每跑一跑一马克倒数单元格;nbformatToLexical(notebook, editor)将笔记本读回 输入/输出插件必须安装在代码单元格上. -
拉特克语Name —— 说
$convertToLatexString(transformers?, { document, documentClass, classOptions, title, author, date })财务报告和审定财务报表$convertFromLatexString(latex, transformers?),建在以后形状的变压器上@lexical/markdown是因为 (单位:千美元)LATEX_TRANSFORMERS: 标题块 (\title, (中文(简体) ),\author, (中文(简体) ),\date, (中文(简体) ),\maketitle页:1\part改为\subparagraph,段落和 文本格式、引文和摘要、定理环境和证明, 清单、核对清单和说明清单、清单lstlisting, (中文(简体) ),minted, (中文(简体) ),verbatim),算法,表格(tabular朋友们,\multicolumn、数字、规则、内线和显示 数学(包括AMS环境),链接,YouTube嵌入,脚注, 引用和thebibliography,TeX破折出并引用.\newcommand序言中的宏有所扩展。 列被读入布局 节点 :multicols(单位:千美元)\columnbreak或均匀地)columns, (中文(简体) ), 并肩作战minipages,以及twocolumn类选项; 它们是 回写为multicols。光标框变成区域及其blocka. 可折叠箱;moderncv条目和letter类 (单位:千美元)\opening, (中文(简体) ),\closing, (中文(简体) ),\signature, (中文(简体) ),\ps)读作道. 一个主机添加 增加变压器的节点.$importLatex还返回什么 序言说(LatexDocumentInfo) (中文(简体) ). -
LaTeX 模板 —— 说
LATEX_TEMPLATES每页各保存一个文件 模板类别(期刊文章、书目、书籍、日历、简历、, 信件、任务、通讯、海报、演讲、论文) 类最出名模板的idiom. -
专题报告 - 4个路线,每个一个扩展,全部在浏览器和所有 类型脚本( T)
PdfExportExtension捆绑它们; 命令和函数在src/extensions/PdfExportExtension.ts:PdfPrintExtension编号 :PRINT_PDF_COMMAND- 提供的文件, 复制到隐藏的 iframe 中, 包含页面样式表和打印 样式表,由浏览器打印(JupyterLab的工作)。 最高 忠诚; 阅读器从对话框中保存为 PDF .PdfDocumentExtension编号 :EXPORT_PDF_DOCUMENT_COMMAND——向量 PDF 从文件模式中列出的src/convert/pdf: 一个 PDF 小作家 超过标准 14 字体,用于标题、段落的布局引擎, 列表、代码、表格、列、引文、框。 文本保留文本; 图片 通过 KaTeX 绘制的等式、图像、图画、丰富的产出——由 浏览器并定位为 JPEG 。 无头运行pictures: false。 。 。 .PdfSnapshotExtension编号 :EXPORT_PDF_SNAPSHOT_COMMAND- 编辑 绘制到有 html2 canvas 的画布上, 并切入页面图像 每个切口附近最白的一行. 一切如来,无所可选.PdfTypesetExtension编号 :EXPORT_PDF_TYPESET_COMMAND- 文件为: Typst 标记( $src/convert/typst),由 Typst 引擎编译于 Web Assembly, 首次使用时从 CDN 获取(loadTypstEngine; 两者 URLs可配置). 真正的类型设置; LaTeX 数学通过mitextypst 注册的软件包.
这个 LexicalFormats 示例在一个文档上显示全部: Markdown
和 LaTeX 源, 您可以编辑和应用程序, 一个活的笔记本, nbformat
JSON,和LaTeX通过将它读回只读编辑器而得到.
这个 LexicalLatex 示例(“LaTeX模板”)将每个模板读入一个
可编辑编辑器的源头旁边, 各自在离开时写给对方 .
这个 LexicalPdf 示例 (“ PDF 导出 ”) 运行
文档样本并存, 并预览每个结果; 两者
示例带有“Export PDF”菜单.