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


TypeScript js.highlightAuto方法代码示例

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


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

示例1: getRenderedSourceCode

async function getRenderedSourceCode(): Promise<string> {
  let printConfig = vscode.workspace.getConfiguration("print", null);
  let printAndClose = printConfig.printAndClose ? " onload = \"window.print();window.close();\"" : "";
  if (printConfig.renderMarkdown && commandArgs.fsPath.split('.').pop().toLowerCase() === "md") {
    let markdownConfig = vscode.workspace.getConfiguration("markdown", null);
    return `<!DOCTYPE html><html><head><title>${commandArgs.fsPath}</title>
    <meta charset="utf-8"/>
    <style>
    html, body {
      font-family: ${markdownConfig.preview.fontFamily};
      font-size: ${markdownConfig.preview.fontSize}px;
      line-height: ${markdownConfig.preview.lineHeight}em;
    }
    img {
      max-width: 100%;
    }
    h1,h2,h3,h4,h5,h6 {
      page-break-after:avoid;
      page-break-inside:avoid;
    }
    </style>
    ${markdownConfig.styles.map((cssFilename: string) => `<link href="${cssFilename}" rel="stylesheet" />`).join("\n")}
    </head>
    <body${printAndClose}>${markdown_it().render(fs.readFileSync(commandArgs.fsPath).toString())}</body></html>`;
  }
  let x = vscode.extensions.getExtension("pdconsec.vscode-print");
  if (!x) { throw new Error("Cannot resolve extension. Has the name changed? It is defined by the publisher and the extension name defined in package.json"); }
  let stylePath = `${x.extensionPath}/node_modules/highlight.js/styles`;
  let defaultCss = getFileText(`${stylePath}/default.css`);
  let swatchCss = getFileText(`${stylePath}/${printConfig.colourScheme}.css`);
  let sourceCode = await getSourceCode();
  let renderedCode = "";
  try {
    renderedCode = hljs.highlight(sourceCode[0], sourceCode[1]).value;
  }
  catch (err) {
    renderedCode = hljs.highlightAuto(sourceCode[1]).value;
  }
  var addLineNumbers = printConfig.lineNumbers === "on" || (printConfig.lineNumbers === "inherit" && vscode.window.activeTextEditor && (vscode.window.activeTextEditor.options.lineNumbers || 0) > 0);
  if (addLineNumbers) {
    var startLine = selection && !(selection.isEmpty || selection.isSingleLine) ? selection.start.line + 1 : 1;
    renderedCode = renderedCode
      .split("\n")
      .map((line, i) => `<tr><td class="line-number">${startLine + i}</td><td class="line-text">${line}</td></tr>`)
      .join("\n")
      .replace("\n</td>", "</td>")
      ;
  } else {
    renderedCode = renderedCode
      .split("\n")
      .map((line, i) => `<tr><td class="line-text">${line}</td></tr>`)
      .join("\n")
      .replace("\n</td>", "</td>")
      ;
  }
  let editorConfig = vscode.workspace.getConfiguration("print", null);
  let html = `<html><head><title>${commandArgs.fsPath}</title><style>body{margin:0;padding:0;tab-size:${editorConfig.tabSize}}\n${defaultCss}\r${swatchCss}\n${lineNumberCss.replace("{lineSpacing}", (printConfig.lineSpacing - 1).toString())}\n.hljs { max-width:100%; width:100%; font-family: Consolas, monospace; font-size: ${printConfig.fontSize}; }\n</style></head><body${printAndClose}><table class="hljs">${renderedCode}</table></body></html>`;
  return html;
}
开发者ID:natkuhn,项目名称:vsc-print,代码行数:59,代码来源:extension.ts

示例2:

 renderer.code = (code: string, language: string) => {
   return `<pre class="hljs lang-${language}"><code class="${language}">${
     // 如果在支持的语言列表里面就用该语言渲染,否则使用默认语言渲染
     hljs.getLanguage(language) ?
       hljs.highlight(language, code).value :
       hljs.highlightAuto(code).value
     }</code></pre>`
 }
开发者ID:linkFly6,项目名称:Said,代码行数:8,代码来源:html.ts

示例3: inferLanguage

function inferLanguage(code: string): string {
  if (/<script>/.test(code)) {
    return 'html';
  }
  if (/Polymer\(\s*\{/.test(code)) {
    return 'javascript';
  }
  return highlight.highlightAuto(code, ['html', 'css', 'javascript']).language;
}
开发者ID:TimvdLippe,项目名称:tedium,代码行数:9,代码来源:markdown-lang-autodetect.ts

示例4:

export const codeToHtml = (code: string, { language = null, interpretHints = true } = {}) => {
  if (language) return `<code>${highlight(language, code).value}</code>`;

  if (interpretHints) {
    const langRegex = /^([\w-.]+):\s/g;
    const match = langRegex.exec(code);
    if (match && listLanguages().includes(match[1])) {
      const restOfCode = code.substring(langRegex.lastIndex);
      return `<code>${highlight(match[1], restOfCode).value}</code>`;
    }
  }

  return `<code>${highlightAuto(code).value}</code>`;
};
开发者ID:luketurner,项目名称:scripsi,代码行数:14,代码来源:code.ts

示例5: catch

 highlight: (str: string, lang: string) => {
     if (hljs) {
         if (lang && hljs.getLanguage(lang)) {
             try {
                 return hljs.highlight(lang, str).value;
             } catch (error) {
                 console.log(error);
             }
         }
         try {
             return hljs.highlightAuto(str).value;
         } catch (error) {
             console.log(error);
         }
     }
     return "";
 },
开发者ID:AbraaoAlves,项目名称:DefinitelyTyped,代码行数:17,代码来源:markdown-it-tests.ts

示例6: highlightAuto

 highlight: (code, lang) => {
   return highlightAuto(code, lang ? [lang] : undefined).value;
 }
开发者ID:kevinphelps,项目名称:kevinphelps.me,代码行数:3,代码来源:markdown.pipe.ts

示例7:

 highlight: (code, language) => language
     ? hljs.highlight(language, code).value
     : hljs.highlightAuto(code).value
开发者ID:MikeJerred,项目名称:homesite,代码行数:3,代码来源:markdown.component.ts

示例8:

renderer.code = (code: string, language: string, isEscaped: boolean): string => {
  code = highlight.highlightAuto(code).value
  return `<code class="lang-${language} md-code">${code}</code>`
}
开发者ID:bbxyard,项目名称:bbxyard,代码行数:4,代码来源:md.ts

示例9: highlight

// h1 - h6
renderer.heading = (text: string, level: number, raw: string): string => {
  return `<h${level} class="md-h${level}">${text}</h${level}>`
}

// code
renderer.code = (code: string, language: string, isEscaped: boolean): string => {
  code = highlight.highlightAuto(code).value
  return `<code class="lang-${language} md-code">${code}</code>`
}

// init
marked.setOptions({
  renderer,
  highlight (code: string, lang: string) {
    return highlight.highlightAuto(code, [lang]).value
  }
})

// MD 转 HTML
function md2html (source: string, isFormat: boolean) {
  source = md.marked(source)

  // 格式化:换行、缩进
  if (isFormat) {
    source = source.replace(/\n/g, '<br/>')
    source = source.replace(/[ ]{2}/g, '<span class="md--tab"></span>')
  }
  return source
}
开发者ID:bbxyard,项目名称:bbxyard,代码行数:30,代码来源:md.ts

示例10: highlight

 public highlight(code: string): string {
   return hljs.highlightAuto(code, ['ts', 'html', 'scss', 'nginx']).value;
 }
开发者ID:kevinheader,项目名称:nebular,代码行数:3,代码来源:highlight.service.ts


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