孟想成真 发表于 2024-3-27 18:37:58

【帮助文档】Markdown插件使用说明

# Markdown使用说明

论坛通过插件实现了在Discuz论坛解析markdown格式文档,使用的是parsedown引擎,在线编辑预览:https://parsedown.org/demo。

## 使用方法

点击编辑器“MD”按钮,输入代码

~~~
put your markdown code here[ /md]   #实际写作时 [ /md]没有空格
~~~~

# 标题

(http://www.aaronsw.com/2002/atx/) 形式
```markdown
# h1
## h2
### h3
#### h4
....
`````

# h1
## h2
### h3
#### h4
....

类 (http://docutils.sourceforge.net/mirror/setext.html) 形式

```markdown
h1
========

h2
------------
```````

h1
========

h2
------------

# 表格
```
| Tables      | Are         | Cool|
| ------------- |:-------------:| -----:|
| col 3 is      | right-aligned | $1600 |
| col 2 is      | centered      |   $12 |
| zebra stripes | are neat      |    $1 |
```

效果如下:

| Tables      | Are         | Cool|
| ------------- |:-------------:| -----:|
| col 3 is      | right-aligned | $1600 |
| col 2 is      | centered      |   $12 |
| zebra stripes | are neat      |    $1 |



# 粗斜体

```
*斜体文本*    _斜体文本_
**粗体文本**    __粗体文本__
***粗斜体文本***    ___粗斜体文本___
`````

*斜体文本*_斜体文本_

**粗体文本**__粗体文本__

***粗斜体文本***   ___粗斜体文本___

# 链接

## 常用链接方法

```
文字链接 [链接名称](http://链接网址)

网址链接 <http://链接网址>

`````

文字链接 [链接名称](http://链接网址)

网址链接 <http://链接网址>

## 高级链接技巧

```
这个链接用 1 作为网址变量 .
这个链接用 yahoo 作为网址变量 .
然后在文档的结尾为变量赋值(网址)

: http://www.google.com/
: http://www.yahoo.com/
````

这个链接用 1 作为网址变量 .

这个链接用 yahoo 作为网址变量 .

然后在文档的结尾为变量赋值(网址)

: http://www.google.com/
: http://www.yahoo.com/


# 列表

## 普通无序列表

```
- 列表文本前使用 [减号+空格]
+ 列表文本前使用 [加号+空格]
* 列表文本前使用 [星号+空格]
````

- 列表文本前使用 [减号+空格]
+ 列表文本前使用 [加号+空格]
* 列表文本前使用 [星号+空格]

## 普通有序列表

```
1. 列表前使用 [数字+空格]
2. 我们会自动帮你添加数字
7. 不用担心数字不对,显示的时候我们会自动把这行的 7 纠正为 3
`````

1. 列表前使用 [数字+空格]
2. 我们会自动帮你添加数字
7. 不用担心数字不对,显示的时候我们会自动把这行的 7 纠正为 3

## 列表嵌套

~~~
1. 列出所有元素:
    - 无序列表元素 A
      1. 元素 A 的有序子列表
    - 前面加四个空格
2. 列表里的多段换行:
    前面必须加四个空格,
    这样换行,整体的格式不会乱
3. 列表里引用:

      > 前面空一行
      > 需要缩进,顶格将打断列表
      > 换行需要加两个以上空格并回车

4. 列表里代码段:

    ```
    前面四个空格,之后按代码语法 ``` 书写
    ```

      或者直接八个空格,引入代码块
~~~~~

1. 列出所有元素:
    - 无序列表元素 A
      1. 元素 A 的有序子列表
    - 前面加四个空格
2. 列表里的多段换行:
    前面必须加四个空格,
    这样换行,整体的格式不会乱
3. 列表里引用:

      > 前面空一行
      > 需要缩进,顶格将打断列表
      > 换行需要加两个以上空格并回车

4. 列表里代码段:

    ```
    前面四个空格,之后按代码语法 ``` 书写
    ```

      或者直接八个空格,引入代码块


# 引用

## 普通引用

```
> 引用文本前使用 [大于号+空格]
> 折行可以不加,新起一行都要加上哦
```

> 引用文本前使用 [大于号+空格]
> 折行可以不加,新起一行都要加上哦

## 引用里嵌套引用
```
> 最外层引用
>> 多一个 > 嵌套一层引用
>>> 可以嵌套很多层
````

> 最外层引用
>> 多一个 > 嵌套一层引用
>>> 可以嵌套很多层

## 引用里嵌套列表

```
> - 这是引用里嵌套的一个列表
> - 还可以有子列表
>   * 子列表需要从 - 之后延后四个空格开始
`````

> - 这是引用里嵌套的一个列表
> - 还可以有子列表
>   * 子列表需要从 - 之后延后四个空格开始

## 引用里嵌套代码块

~~~~
>   同样的,在前面加四个空格形成代码块
>
> ```
> 或者使用 ``` 形成代码块
> ```
~~~~~~~~

>   同样的,在前面加四个空格形成代码块
>
> ```
> 或者使用 ``` 形成代码块
> ```


# 图片

跟链接的方法区别在于前面加了个感叹号 !,这样是不是觉得好记多了呢?

```
![图片名称](http://图片网址)
````


当然,你也可以像网址那样对图片网址使用变量

```
这个链接用 1 作为网址变量!.
然后在文档的结尾位变量赋值(网址)

:
`````

这个链接用 1 作为网址变量


然后在文档的结尾位变量赋值(网址)

:


# 换行

如果另起一行,只需在当前行结尾加 2 个空格

在当前行的结尾加 2 个空格
这行就会新起一行
如果是要起一个新段落,只需要空出一行即可。

# 分隔符

如果你有写分割线的习惯,可以新起一行输入三个减号 -:

```
---
```

---

上面是分隔符


# 符号转义

如果你的描述中需要用到 markdown 的符号,比如 `_ # *` 等,但又不想它被转义,这时候可以在这些符号前加反斜杠,如 `\_ \# \*` 进行避免。

```
\_不想这里的文本变斜体\_
\*\*不想这里的文本被加粗\*\*
````

\_不想这里的文本变斜体\_
\*\*不想这里的文本被加粗\*\*


# 代码

## 行内代码
如果只想高亮正文中某个词,可以用两个反引号包裹起来

```
`行内代码`
```
这是`行内代码`

如果行内代码包含反引号,可以用多个反引号包裹

```
包含``反引号(`) `` 的行内代码
```

输出:包含``反引号(`)`` 的行内代码

如果行内代码开头就有反引号,需要起始端和结束端各一个空格

```
`` `反引号` ``
```
输出:`` `反引号` ``


## 普通代码

### 反引号包裹
用3个或以上的反引号包裹起来
~~~~~~~~~
```
# rewrite`s rules for wordpress pretty url
LoadModule rewrite_modulemodules/mod_rewrite.so
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
````
~~~~~~~~~~

### 波浪线包裹
使用3个及以上的波浪线包裹代码

`````
~~~
# rewrite`s rules for wordpress pretty url
LoadModule rewrite_modulemodules/mod_rewrite.so
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
~~~~
``````

### 缩进
4个空格或者一个制表符
```
      # rewrite`s rules for wordpress pretty url
      LoadModule rewrite_modulemodules/mod_rewrite.so
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . index.php
````
显示效果

```
# rewrite`s rules for wordpress pretty url
LoadModule rewrite_modulemodules/mod_rewrite.so
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
````

### 特殊字符

当代码中有这些特殊字符时,可以缩进、波浪线、反引号嵌套使用,例如

            ~~~
            ```
                # rewrite`s rules for wordpress pretty url
                LoadModule rewrite_modulemodules/mod_rewrite.so
                RewriteCond %{REQUEST_FILENAME} !-f
                RewriteCond %{REQUEST_FILENAME} !-d
                RewriteRule . index.php
            ````
            ~~~~
输出效果如下:

    ~~~
    ```
      # rewrite`s rules for wordpress pretty url
      LoadModule rewrite_modulemodules/mod_rewrite.so
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . index.php
    ````
    ~~~~


## 指定语言
用以下方式指定语言,当有代码高亮解析器的时候将起作用

~~~~
```javascript
$(document).ready(function () {
    alert('hello world');
});
```
~~~~~~~

请用浏览器的审查元素观念观察结果

```javascript
$(document).ready(function () {
    alert('hello world');
});
```
test


# 数学公式

借助插件 (http://addon.discuz.com/?@zxsq_mathjax.plugin) 可以实现论坛输入 $LaTeX$ 数理化公式


## 行内公式

~~~~
$ax^2+bx+c=55$
or
\\(ax^2+bx+c=55\\)
~~~~~~~~~~

效果如 $ax^2+bx+c=55$

## 跨行公式

~~~~
$$\int_1^{+\infty}\left[\ln\left(1+\frac1x\right)-\sin{\frac1x}\right]\,\mathrm dx$$
or
\\[\int_1^{+\infty}\left[\ln\left(1+\frac1x\right)-\sin{\frac1x}\right]\,\mathrm dx\\]
~~~~~~

显示如下

$$\int_1^{+\infty}\left[\ln\left(1+\frac1x\right)-\sin{\frac1x}\right]\,\mathrm dx$$


## 表情冲突
建议修改默认的表情代码,或者直接关闭

孟想成真 发表于 2024-3-30 21:48:51

最后说明一些常见问题:
1、每次使用Markdown代码发帖的时候,务必点击一下菜单位置的MD插件按钮,这样插件才能被动处理和原来编辑器冲突的问题。
2、关于图片上传编辑,可以使用论坛原有的图片上传功能,上传后通过Discuz原有贴图方法贴到MD正文中即可,不需要使用MD的图片引用语句“![]()”,演示方法戳:https://www.yigonghl.com/misc.php?mod=faq&action=faq&id=7。
3、如果文章中出现字符会导致Discuz自动识别出斜体,可以勾选编辑器下方的“禁用编辑器代码”来解决问题。
4、不支持颜色代码,因为论坛没有开启html支持。
5、C的代码格式不能写成```cpp,需要写成```cpp。
页: [1]
查看完整版本: 【帮助文档】Markdown插件使用说明