找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28275|回复: 18

论坛已支持代码高亮

[复制链接]
发表于 2023-8-29 10:21:50 | 显示全部楼层 |阅读模式
本帖最后由 老刘1号 于 2023-8-29 10:23 编辑

由我从 bailong360 的脚本的基础上魔改而来,添加了代码复制、主题切换功能,并调整了使用的字体。

特性
  • 支持多种常见语言
  • 自动检测所用语言
  • 通过设置可以开关
  • 提供亮暗两种主题

支持
  • batch
  • vbscript
  • powershell
  • bash
  • javascript
  • python
  • perl
  • cpp
  • cs
  • rust
  • xml
  • json
  • ini

借物

其它
本文由 Markdown To BBCode Converter 生成。
发表于 2023-8-29 10:51:15 | 显示全部楼层
辛苦了 支持
发表于 2023-8-29 11:09:26 | 显示全部楼层
辛苦了,谢谢你们的付出!
发表于 2023-8-29 11:29:02 | 显示全部楼层
牛叉叉叉叉叉~~~~破音~~~~
发表于 2023-8-29 11:36:20 | 显示全部楼层
本帖最后由 jyswjjgdwtdtj 于 2023-8-29 11:52 编辑

牛逼!
那是不是还缺个选择搞了语言的复选框?reg文件似乎在论坛里出现的也蛮多的
发表于 2023-8-29 12:16:07 | 显示全部楼层
本帖最后由 Nsqs 于 2023-8-29 12:20 编辑

能支持每个人个人的自定义颜色语法高亮就好了

刚看了一下PowerShell的,字符串部分用的绿色的,感觉不太合适吧,一般绿色都是注释部分

而且PowerShell能够同时和vb和c#交互,c#部分的高亮希望也可以加上
发表于 2023-8-29 15:15:14 | 显示全部楼层
本帖最后由 qixiaobin0715 于 2023-8-29 15:23 编辑

修改后,code内行首空格好像变成了“未知不可见字符+空格”,会对复制代码造成影响。
没看到有复制键,这样就行了。选中复制才会出问题。
发表于 2023-8-29 16:27:32 | 显示全部楼层
关闭了,感觉挺花哨的,还是喜欢简洁
另外说下我感想:
代码区域背景颜色跟页面颜色差不多,有点难区分,如果没有高亮颜色,某些看起来就像普通文字一样
代码样式不一样看着脑阔疼,一会儿斜体,一会儿有没有斜体之类的,脑子不好阅读起来有点困难
在firefox上代码字体变得非常小,看着眼睛疼
混合一种以上语言的代码高亮了看起来怪怪的
 楼主| 发表于 2023-8-29 18:12:09 | 显示全部楼层
本帖最后由 老刘1号 于 2023-8-29 19:04 编辑

回复 6# Nsqs


    可以用这个bailong360之前写的油猴脚本自定义颜色
  1. // ==UserScript==
  2. // @name          bathome 代码高亮主题
  3. // @namespace     http://userstyles.org
  4. // @description          bathome 代码高亮主题, 默认为 Atom One Dark
  5. // @author        aloxaf
  6. // @homepage      https://userstyles.org/styles/176869
  7. // @include       http://bathome.net/*
  8. // @include       https://bathome.net/*
  9. // @include       http://*.bathome.net/*
  10. // @include       https://*.bathome.net/*
  11. // @include       http://bathome.net/*
  12. // @include       https://bathome.net/*
  13. // @include       http://*.bathome.net/*
  14. // @include       https://*.bathome.net/*
  15. // @run-at        document-start
  16. // @version       0.20191103025706
  17. // ==/UserScript==
  18. (function() {var css = "";
  19. if (false || (document.domain == "bathome.net" || document.domain.substring(document.domain.indexOf(".bathome.net") + 1) == "bathome.net"))
  20.         css += [
  21.                 "/* 高亮主题 */",
  22.                 "/*",
  23.                 "Atom One Dark by Daniel Gamage",
  24.                 "Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax",
  25.                 "base:    #282c34",
  26.                 "mono-1:  #abb2bf",
  27.                 "mono-2:  #818896",
  28.                 "mono-3:  #5c6370",
  29.                 "hue-1:   #56b6c2",
  30.                 "hue-2:   #61aeee",
  31.                 "hue-3:   #c678dd",
  32.                 "hue-4:   #98c379",
  33.                 "hue-5:   #e06c75",
  34.                 "hue-5-2: #be5046",
  35.                 "hue-6:   #d19a66",
  36.                 "hue-6-2: #e6c07b",
  37.                 "*/",
  38.                 "",
  39.                 ".hljs {",
  40.                 "  display: block;",
  41.                 "  overflow-x: auto;",
  42.                 "  padding: 0.5em;",
  43.                 "  color: #abb2bf;",
  44.                 "  background: #282c34;",
  45.                 "}",
  46.                 "",
  47.                 ".hljs-comment,",
  48.                 ".hljs-quote {",
  49.                 "  color: #5c6370;",
  50.                 "  font-style: italic;",
  51.                 "}",
  52.                 "",
  53.                 ".hljs-doctag,",
  54.                 ".hljs-keyword,",
  55.                 ".hljs-formula {",
  56.                 "  color: #c678dd;",
  57.                 "}",
  58.                 "",
  59.                 ".hljs-section,",
  60.                 ".hljs-name,",
  61.                 ".hljs-selector-tag,",
  62.                 ".hljs-deletion,",
  63.                 ".hljs-subst {",
  64.                 "  color: #e06c75;",
  65.                 "}",
  66.                 "",
  67.                 ".hljs-literal {",
  68.                 "  color: #56b6c2;",
  69.                 "}",
  70.                 "",
  71.                 ".hljs-string,",
  72.                 ".hljs-regexp,",
  73.                 ".hljs-addition,",
  74.                 ".hljs-attribute,",
  75.                 ".hljs-meta-string {",
  76.                 "  color: #98c379;",
  77.                 "}",
  78.                 "",
  79.                 ".hljs-built_in,",
  80.                 ".hljs-class .hljs-title {",
  81.                 "  color: #e6c07b;",
  82.                 "}",
  83.                 "",
  84.                 ".hljs-attr,",
  85.                 ".hljs-variable,",
  86.                 ".hljs-template-variable,",
  87.                 ".hljs-type,",
  88.                 ".hljs-selector-class,",
  89.                 ".hljs-selector-attr,",
  90.                 ".hljs-selector-pseudo,",
  91.                 ".hljs-number {",
  92.                 "  color: #d19a66;",
  93.                 "}",
  94.                 "",
  95.                 ".hljs-symbol,",
  96.                 ".hljs-bullet,",
  97.                 ".hljs-link,",
  98.                 ".hljs-meta,",
  99.                 ".hljs-selector-id,",
  100.                 ".hljs-title {",
  101.                 "  color: #61aeee;",
  102.                 "}",
  103.                 "",
  104.                 ".hljs-emphasis {",
  105.                 "  font-style: italic;",
  106.                 "}",
  107.                 "",
  108.                 ".hljs-strong {",
  109.                 "  font-weight: bold;",
  110.                 "}",
  111.                 "",
  112.                 ".hljs-link {",
  113.                 "  text-decoration: underline;",
  114.                 "}"
  115.         ].join("\n");
  116. if (false || (document.domain == "bathome.net" || document.domain.substring(document.domain.indexOf(".bathome.net") + 1) == "bathome.net"))
  117.         css += [
  118.                 "/* 行号等玩意儿的处理 */",
  119.                 ".hljs-ln {",
  120.                 "    table-layout: unset !important;",
  121.                 "}",
  122.                 "",
  123.                 ".hljs-ln-line {",
  124.                 "    font-size: 12px !important;",
  125.                 "}",
  126.                 "",
  127.                 ".hljs-ln-code {",
  128.                 "    color: unset;",
  129.                 "    font-family: monospace;",
  130.                 "    width: 100%;",
  131.                 "}",
  132.                 "",
  133.                 "/* for block of numbers */",
  134.                 ".hljs-ln-numbers {",
  135.                 "    -webkit-touch-callout: none;",
  136.                 "    -webkit-user-select: none;",
  137.                 "    -khtml-user-select: none;",
  138.                 "    -moz-user-select: none;",
  139.                 "    -ms-user-select: none;",
  140.                 "    user-select: none;",
  141.                 "",
  142.                 "    text-align: center;",
  143.                 "    color: #ccc;",
  144.                 "    border-right: 1px solid #CCC;",
  145.                 "    vertical-align: top;",
  146.                 "    padding-right: 5px !important;",
  147.                 "",
  148.                 "    /* your custom style here */",
  149.                 "}",
  150.                 "",
  151.                 "/* for block of code */",
  152.                 ".hljs-ln-code {",
  153.                 "    padding-left: 10px !important;",
  154.                 "}"
  155.         ].join("\n");
  156. if (typeof GM_addStyle != "undefined") {
  157.         GM_addStyle(css);
  158. } else if (typeof PRO_addStyle != "undefined") {
  159.         PRO_addStyle(css);
  160. } else {
  161.         var node = document.createElement("style");
  162.         node.type = "text/css";
  163.         node.appendChild(document.createTextNode(css));
  164.         var heads = document.getElementsByTagName("head");
  165.         if (heads.length > 0) {
  166.                 heads[0].appendChild(node);
  167.         } else {
  168.                 // no head yet, stick it whereever
  169.                 document.documentElement.appendChild(node);
  170.         }
  171. }
  172. })();
复制代码

评分

参与人数 1技术 +1 收起 理由
Nsqs + 1 感谢分享

查看全部评分

 楼主| 发表于 2023-8-29 18:13:20 | 显示全部楼层
回复 7# qixiaobin0715


    这个是论坛很久之前为了兼容 TAB 搞的设置,不是我的锅。
我只能保证按按钮出来的代码没问题这样子~
 楼主| 发表于 2023-8-29 18:14:21 | 显示全部楼层
回复 5# jyswjjgdwtdtj


    reg应该也算ini文件的一个变种
所以其实包含了的
 楼主| 发表于 2023-8-29 18:16:36 | 显示全部楼层
本帖最后由 老刘1号 于 2023-8-29 19:03 编辑

回复 8# Five66


    其实还有一个黑色调的主题,和背景区分还是挺大的。
含多种语言的代码暂时没什么想法,这个可能得大改 hljs 的逻辑了。

对了想自定义颜色和样式也可以参照 9 楼,当然实在不喜欢高亮就算了,不强求。
发表于 2023-8-29 21:13:46 | 显示全部楼层
现在要放大才看清
 楼主| 发表于 2023-8-29 21:36:25 | 显示全部楼层
回复 13# idwma


    请问你用的啥浏览器,缩放是多少?
发表于 2023-8-29 22:15:47 | 显示全部楼层
回复 14# 老刘1号


    firefox默认打开不缩放,现在高亮的字号10px太小了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 03:13 , Processed in 0.022467 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表