问题标签 [prismjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
189 浏览

regex - Prismjs:正则表达式正后视等效?

我正在使用 Prism.js,它是语法荧光笔,它突出显示匹配某些正则表达式的单词。
我想匹配单词之后的任何单词git,所以我尝试像这样使用积极的lookbehind。

不幸的是,似乎不支持积极的后视,所以我必须找到它的等效正则表达式。有什么方法可以匹配单词后面的任何单词git而不使用正面的lookbehind?

例如,我想在没有积极向后看的情况下做到这一点。

另外,我不能使用组,因为我不能告诉 Prism 选择某个组。它将始终突出整场比赛。例如,(?:git )(\w+)将保存第一组中单词之后的任何单词git,但它匹配单词 git 和 git 之后的单词。所以会突出显示

这不是我想要的。

0 投票
1 回答
84 浏览

prismjs - 如何正确地将 PrismJS 集成到 Eleventy 项目中?

我正在使用 11 构建一个站点并希望包含带有代码突出显示的代码示例。棱镜看起来是一个很好的选择。我如何将它正确地添加到构建过程中(而不是作为 CDN)?

0 投票
1 回答
244 浏览

webpacker - 将 PrismJs 添加到 rails 6 webpacker 站点

我想添加 PrismJS。

https://prismjs.com/index.html

所以我跑了

然后更新 application.js:

和 application.scss:

现在它像这样突出显示 JS 和 CSS:

但是,我不能再添加任何语言了。例如液体。

我尝试按照说明使用https://github.com/mAAdhaTTah/babel-plugin-prismjs。所以在 babel.config.js 中:

但是没有为液体添加高亮标记。

我在 webpack-dev-server 中收到错误:

那么,我应该如何正确地将 prism-js babel 插件添加到 babel.config.js ?

0 投票
0 回答
63 浏览

javascript - Reacht JS:渲染异步创建的数组时未正确应用 CSS

我正在尝试在 React JS 应用程序上显示代码片段。为此,我有一组使用fetchAPI 获得的片段。

为此,我将必要的信息存储在一个数组中,然后使用该方法创建Snippet对象。Array::map

但是,当我尝试显示这些片段时,我发现Snippet's CSS 未正确应用。问题似乎是fetch通话延迟。如果不执行这些调用,一切正常。

一些注意事项: - 为了找到罪魁祸首,我对代码片段的参数进行了硬编码。- 为了获得 MWE,我用调用替换了对fetchAPI 的调用sleep - 如果我删除对 的调用sleep,则片段将正确呈现。

这是我负责类的代码:

不正确的结果如下所示不好

这是预期的结果:预期的

我正在使用prismjs来突出显示片段。这是我的实现:

我添加了console.log语句以查看属性是否设置正确,这两种情况似乎都是如此。

0 投票
0 回答
142 浏览

javascript - 如何在 HTML 中显示 JavaScript 文件中的代码

我正在尝试建立一个网站,在其中显示各种场景的通用 JavaScript 代码片段。我想在 HTML 中显示来自选定 JavaScript 文件的代码(不执行,只是显示)。我尝试使用 jQuery 加载函数加载文件

& 然后使用 Prism 库突出显示语法

问题是当您在 div 中动态加载 JavaScript 内容时,Prism 无法正确呈现它。(只有在 div 中硬编码 JavaScript 代码时,它才会正确呈现它)。这种情况有一个简单的解决方案吗?

0 投票
1 回答
47 浏览

javascript - MEVN 堆栈中的 Prismjs 语法高亮显示

我正在使用 MEVN 堆栈开发一个博客,我使用的是tiny-mce-vue编辑器。现在,所有工作都很好,除非我添加一些代码示例,它们不会在编辑器之外保留语法突出显示,请参见屏幕截图:

在此处输入图像描述

我一直在网上冲浪以找到答案,我发现最好的是这篇文章,我发现我应该使用函数 Prism.highlightAll()

但它不会从我的 post.vue 组件中的 mount() 运行任何东西,但是如果我从浏览器控制台运行 Prism.highlightAll ,它会按预期工作。

所以简而言之,我不知道我在这里做错了什么。

这是我的 post.vue的代码笔

0 投票
1 回答
68 浏览

angular - 开玩笑 - 导入节点模块

我有一个导入节点模块的 Angular 组件(在本例中是 prismjs)。

我有一段代码引用Prism.highlightElement()

但是,当我运行测试时,我得到了错误: TypeError: Cannot read property 'highlightElement' of undefined

我假设 Jest 正在嘲笑 node_module,但不知道如何阻止它。

我正在使用 Angular Preset Jest 库,并且我尝试过:

unmockedModulePathPatterns: ['./node_modules/prismjs']在配置中,它不起作用。

我也试过:有 unmockedModulePathPatterns: ['prismjs'] 什么想法吗?

0 投票
1 回答
646 浏览

reactjs - Prismjs 没有突出显示 React 组件

我正在尝试使用 PrismJS 突出显示一些 javascript 代码,但我输入的文本根本没有改变颜色。我已经尝试将 CDN 用于 prismjs 和 npm,但是当我使用 Prism.highlightAll() 时我没有看到任何变化。这是编辑器组件代码:

0 投票
1 回答
670 浏览

tinymce - 在 HCL Connections 6.5 CR1 TinyMCE 中向 PrismJS 添加额外的语法高亮插件

我在全新的 Connections 6.5.1 安装之上安装了TinyMCE 编辑器。虽然使用codesample 插件的语法突出显示是开箱即用的,但它仅适用于某些语言。我找到了codesample_languages,它们像本文中描述的那样被覆盖

现在可以在编辑器中选择它们。但它们不起作用,因为编辑器中嵌入的 PrismJS 仅支持extend, insertBefore, DFS, markup, xml, html, mathml, svg, css, clike, javascript, js, c, csharp, cs, dotnet, cpp, java, markup-templating, php, python, py, ruby, rb.

所以我从一个 CDN 加载了缺少的插件,例如批处理插件。将其包含在内header.jsp不起作用,因为Prism名称空间未初始化。在footer.jsp它似乎没有任何效果,假设 PrismJS 已经初始化。

自定义网络资源存档

PrismJS 似乎是从中提取的,https://cnx65.internal/connections/resources/web/tiny.editors.connections/render/prism.js所以我提取tiny.editors.connections_4.2.1.1.jar/opt/IBM/shared/provision/webresources,修改resources/render/prism.js并重新打包了这些 folter:

重新启动 Common 和 Wiki(我正在测试 TinyMCE 的应用程序)后,Bash 仍然没有语法高亮显示。当我导航到 时https://cnx65.internal/connections/resources/web/tiny.editors.connections/render/prism.js,我看到了我插入的 Bash 插件代码。要查看可用的语言,我附加

在文件的末尾。这给了我一个包含bash. 所以插件是可用的,但为什么 TinyMCE 不显示语法高亮?

0 投票
1 回答
192 浏览

gradle - 使用 Prism 突出显示 build.gradle 的语法

为了在我的博客上显示 build.gradle 示例代码,我想使用Prism突出显示语法。

但 gradle 不包含在支持的语言列表中。有没有language-xxxx突出gradle的替代方法?使用language-nginx是一个不错的选择?