当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript MarkdownCodeBlocks.findMarkdownCodeBlocks方法代码示例

本文整理汇总了TypeScript中@jupyterlab/coreutils.MarkdownCodeBlocks.findMarkdownCodeBlocks方法的典型用法代码示例。如果您正苦于以下问题:TypeScript MarkdownCodeBlocks.findMarkdownCodeBlocks方法的具体用法?TypeScript MarkdownCodeBlocks.findMarkdownCodeBlocks怎么用?TypeScript MarkdownCodeBlocks.findMarkdownCodeBlocks使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在@jupyterlab/coreutils.MarkdownCodeBlocks的用法示例。


在下文中一共展示了MarkdownCodeBlocks.findMarkdownCodeBlocks方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1:

    execute: () => {
      let widget = tracker.currentWidget.content;

      if (!widget) {
        return;
      }

      let code = '';
      let editor = widget.editor;
      let text = editor.model.value.text;
      let path = widget.context.path;
      let extension = PathExt.extname(path);

      if (MarkdownCodeBlocks.isMarkdown(extension)) {
        // For Markdown files, run only code blocks.
        const blocks = MarkdownCodeBlocks.findMarkdownCodeBlocks(text);
        for (let block of blocks) {
          code += block.code;
        }
      } else {
        code = text;
      }

      const activate = false;
      if (code) {
        return commands.execute('console:inject', { activate, code, path });
      } else {
        return Promise.resolve(void 0);
      }
    },
开发者ID:AlbertHilb,项目名称:jupyterlab,代码行数:30,代码来源:index.ts

示例2: if

    execute: () => {
      // Run the appropriate code, taking into account a ```fenced``` code block.
      const widget = tracker.currentWidget.content;

      if (!widget) {
        return;
      }

      let code = '';
      const editor = widget.editor;
      const path = widget.context.path;
      const extension = PathExt.extname(path);
      const selection = editor.getSelection();
      const { start, end } = selection;
      let selected = start.column !== end.column || start.line !== end.line;

      if (selected) {
        // Get the selected code from the editor.
        const start = editor.getOffsetAt(selection.start);
        const end = editor.getOffsetAt(selection.end);

        code = editor.model.value.text.substring(start, end);
      } else if (MarkdownCodeBlocks.isMarkdown(extension)) {
        const { text } = editor.model.value;
        const blocks = MarkdownCodeBlocks.findMarkdownCodeBlocks(text);

        for (let block of blocks) {
          if (block.startLine <= start.line && start.line <= block.endLine) {
            code = block.code;
            selected = true;
            break;
          }
        }
      }

      if (!selected) {
        // no selection, submit whole line and advance
        code = editor.getLine(selection.start.line);
        const cursor = editor.getCursorPosition();
        if (cursor.line + 1 === editor.lineCount) {
          let text = editor.model.value.text;
          editor.model.value.text = text + '\n';
        }
        editor.setCursorPosition({
          line: cursor.line + 1,
          column: cursor.column
        });
      }

      const activate = false;
      if (code) {
        return commands.execute('console:inject', { activate, code, path });
      } else {
        return Promise.resolve(void 0);
      }
    },
开发者ID:dalejung,项目名称:jupyterlab,代码行数:56,代码来源:index.ts

示例3: if

    execute: () => {
      // This will run the current selection or the entire ```fenced``` code block.
      const widget = tracker.currentWidget;

      if (!widget) {
        return;
      }

      let code = '';
      const editor = widget.editor;
      const path = widget.context.path;
      const extension = PathExt.extname(path);
      const selection = editor.getSelection();
      const { start, end } = selection;
      const selected = start.column !== end.column || start.line !== end.line;

      if (selected) {
        // Get the selected code from the editor.
        const start = editor.getOffsetAt(selection.start);
        const end = editor.getOffsetAt(selection.end);

        code = editor.model.value.text.substring(start, end);
      } else if (MarkdownCodeBlocks.isMarkdown(extension)) {
        const { text } = editor.model.value;
        const blocks = MarkdownCodeBlocks.findMarkdownCodeBlocks(text);

        for (let block of blocks) {
          if (block.startLine <= start.line && start.line <= block.endLine) {
            code = block.code;
            break;
          }
        }
      }

      const activate = false;
      if (code) {
        return commands.execute('console:inject', { activate, code, path });
      } else {
        return Promise.resolve(void 0);
      }
    },
开发者ID:cameronoelsen,项目名称:jupyterlab,代码行数:41,代码来源:index.ts

示例4: it

 it('should find a block with a language', () => {
   let codeblocks = MarkdownCodeBlocks.findMarkdownCodeBlocks(BLOCK1);
   expect(codeblocks.length).to.equal(1);
   expect(codeblocks[0].code).to.equal('a = 10\nb = 20\n');
 });
开发者ID:7125messi,项目名称:jupyterlab,代码行数:5,代码来源:markdowncodeblocks.spec.ts

示例5: it

 it('should find a simple block', () => {
   const codeblocks = MarkdownCodeBlocks.findMarkdownCodeBlocks(BLOCK1);
   expect(codeblocks.length).to.equal(1);
   expect(codeblocks[0].code).to.equal('a = 10\nb = 20\n');
 });
开发者ID:afshin,项目名称:jupyterlab,代码行数:5,代码来源:markdowncodeblocks.spec.ts


注:本文中的@jupyterlab/coreutils.MarkdownCodeBlocks.findMarkdownCodeBlocks方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。