# 油猴脚本:让 V2EX 评论区支持 markdown,代码高亮,别再纯文本交流了

2022-08-18 20:40:16 +08:00
 lisongeee

v2ex-comment-markdown

脚本使用 vite-plugin-monkey 开发

脚本源码 v2ex-comment-markdown

安装

截图预览

如何使用

安装脚本后刷新帖子页面,可以看到在回复文本框下多出一个按钮 回复 markdown

在编辑框内书写你的 markdown ,然后点击 回复 markdown,你的编辑框后面会追加一条图片链接,然后发送

它大概长这样 https://i.songe.li/1x1.png#xxxx_base64 这是一个 1x1 的图片,在没有安装油猴脚本的用户看来,他的评论区什么变化都没有,在安装了油猴脚本的用户,脚本会自动检测这个图片后面的 base64 然后 解码替换,这样你发出的 markdown 就被渲染出来了

你可以安装脚本后去 https://v2ex.com/t/851687 预览我发的 markdown 看看有没有生效

4943 次点击
所在节点    分享创造
54 条回复
Livid
2022-08-19 06:23:54 +08:00
我只是弱弱的问一下,为什么 comment 里会需要 h1 ?
lisongeee
2022-08-19 10:15:12 +08:00
@Livid 呃呃,我只是想让评论支持 markdown 而已,h1 只是演示
lisongeee
2022-08-19 10:16:34 +08:00
@wxf666 @abc612008

已经修复,具体看第一条附言
fzdwx
2022-08-19 10:22:41 +08:00
test

```go
package main

import (
"fmt"
"github.com/fzdwx/infinite/components"
)

func main() {
input := components.NewInput()

if err := components.NewStartUp(input).Start(); err != nil {
panic(err)
}

fmt.Println("Get:", input.Value())
}
``
fzdwx
2022-08-19 10:23:03 +08:00
test

```go
package main

import (
"fmt"

)

func main() {
input := components.NewInput()

if err := components.NewStartUp(input).Start(); err != nil {
panic(err)
}

fmt.Println("Get:", input.Value())
}
```
lisongeee
2022-08-19 14:53:51 +08:00
@wxf666

`问题已修复,已经支持 www.v2ex.com `

~~测试一下删除线~~
wxf666
2022-08-19 18:19:28 +08:00
@lisongeee 生效了!

很喜欢<u>通过 base64 来保留原始信息</u>的功能啊,为啥要去掉啊

v 站吃缩进吃得我麻了都。。


> 现在代码的缩进会被去掉,我考虑要不要加个代码自动格式化

这个应该是不能完全实现的。比如`Python`:

```python
if condition:
do_something()
return
```

这个`return`,到底是`if`内的呢,还是`if`外的呢?
lisongeee
2022-08-19 18:32:57 +08:00
@wxf666 哈哈,你发的 python 代码被 v2 去缩进后是有语法错误的,if 下面一行至少要缩进一个 pass

> 为啥要去掉啊

我用的图片链接前缀是 `https://github.com/lisonge/lisonge.gitHub.io/raw/main/1x1.png`

这个 在 v2 的评论不装任何插件会直接显示一大串的文本,这个产生效果可以去看我的发言记录 [lisongeee]( https://v2ex.com/member/lisongeee)

不过我发现 v2 好像会直接转 `微博图床` 的链接,我一会试试看把链接前缀换成 `微博图床` 的链接看看行不行

不过有个缺点需要注意,我记得 v2 是有评论最大长度限制的,在评论里补充 `微博图片链接`,可能会被算入文本长度
lisongeee
2022-08-19 18:47:43 +08:00
@wxf666 微博图片链接也不行

对于链接 ` ?k=v#hash`

v2 会直接把前面的 ` ` 替换成链接,后面的文字直接保留在评论区

效果可以直接看 </t/851687#r_12009041>
wxf666
2022-08-19 18:50:05 +08:00
@lisongeee 对啊,如果要做`代码自动格式化`,这个被吃掉缩进的代码,就是你的格式化插件日常要面对的东西了

`do_something()`还能猜一猜,`return`连人工都猜不出来
sugarkeek
2022-08-19 20:41:28 +08:00
@magicdawn 这叫产品的克制 /doge
Cagliostro
2022-08-20 00:35:56 +08:00
@felixcode 并不能,图床寄了?
Cagliostro
2022-08-20 00:39:11 +08:00
@lisongeee yes ,油猴图标,原来支持啊,怪我没试,不过似乎跟 [v2ex 增强] 冲突,楼中楼不好回复
![]( https://s3.bmp.ovh/imgs/2022/08/20/844a16e87fd881b5.png)
sankemao
2022-08-20 01:07:52 +08:00
# Test
fatelight
2022-08-20 01:21:06 +08:00
lisongeee
2022-08-20 01:53:46 +08:00
lkkle
2022-08-20 16:02:05 +08:00
可以用,效果不错
ltkun
2022-08-20 21:34:54 +08:00
- ok
好像没有那个回复按钮啊
lisongeee
2022-08-20 23:21:31 +08:00
@ltkun 现在不需要了,你直接发 markdown 语法就行,缺点是你的代码没有缩进,因为缩进被 V2EX 吃了

```ts
if(true===true){
console.log(`hello`);
}
```
q1angch0u
2022-08-21 13:41:58 +08:00
```
if(true===true){
%20console.log(`hello`);
}
```

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/873825

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX