當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript coreutils.MarkdownCodeBlocks類代碼示例

本文整理匯總了TypeScript中@jupyterlab/coreutils.MarkdownCodeBlocks的典型用法代碼示例。如果您正苦於以下問題:TypeScript MarkdownCodeBlocks類的具體用法?TypeScript MarkdownCodeBlocks怎麽用?TypeScript MarkdownCodeBlocks使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了MarkdownCodeBlocks類的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的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

示例6: it

 it('should return true for a valid markdown extension', () => {
   let isMarkdown = MarkdownCodeBlocks.isMarkdown(".md");
   expect(isMarkdown).true;
 });
開發者ID:cameronoelsen,項目名稱:jupyterlab,代碼行數:4,代碼來源:markdowncodeblocks.spec.ts


注:本文中的@jupyterlab/coreutils.MarkdownCodeBlocks類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。