# modell-markedjs-plus
**Repository Path**: undeadway/modell-markedjs-plus
## Basic Information
- **Project Name**: modell-markedjs-plus
- **Description**: 根据 markedjs 的 custom extension 写的一些扩展。
- **Primary Language**: Unknown
- **License**: Artistic-2.0
- **Default Branch**: master
- **Homepage**: http://codes.waygc.net/projects/?modell-markedjs-plus
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-05-24
- **Last Updated**: 2024-12-28
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 说明
因为 markedjs 只有基础功能,不支持很多高级功能,所以只能自己动手造轮子了。
另,因为这里的功能是基于公司内部的需求,所以不会主动更新各种功能。
如果想要体验类似的完整功能,可以查看隔壁的 [HitOn](https://github.com/undeadway/hiton) 。
## 功能
### 1. 修改图片的显示方式
**输入**
```

```
**输出**
```
```
如果图片标题不输入,则不显示图片标题,只显示 `图 1` 。
默认为 left 。
有 left 、right 、center 、justify 可选。
### 2. 图片引用
当输入 `@[image]{图片标题}` 的时候,就可以展现为图片的引用。
**输入**
```
@[image]{图片标题}
```
**输出**
```
图 1
```
如果当写图片时放括号内没有写图片标题(``),这在引用时,需要使用图片地址。
如:
```
@[image]{/pic/addr.jpg}
```
### 3. 标题
当输入 `#` 符号时,会判断是几重标题,并输出对应的内容。
**仅当输入 `#` 时有效。**
**输入**
```
# 第一段
## 第一段第一章
### 第一段第一章第一节
### 第一段第一章第二节
#### 第一段第一章第一节第一小节
#### 第一段第一章第一节第二小节
## 第一段第二章
### 第一段第二章第一节
### 第一段第二章第二节
### 第一段第一章第三节
#### 第一段第二章第三节第一小节
#### 第一段第二章第三节第二小节
### 第一段第二章第三节
# 第二段
```
**输出**
```
1. 第一段
1.1. 第一段第一章
1.1.1. 第一段第一章第一节
1.1.2. 第一段第一章第二节
1.1.2.1. 第一段第一章第一节第一小节
1.1.2.2. 第一段第一章第一节第二小节
1.2. 第一段第二章
1.2.1. 第一段第二章第一节
1.2.2. 第一段第二章第二节
1.2.3. 第一段第一章第二节
1.2.3.1. 第一段第二章第三节第一小节
1.2.3.1. 第一段第二章第三节第二小节
1.2.4. 第一段第二章第三节
2. 第二段
```
### 4. 表格的题注和引用
#### 4.1. 题注
在表格后面加入,可以显示为表格的题注。
表格的名称可以用任意字符。
**输入**
```
@[table]{:表的名称}
```
**输出**
```
表 1
```
#### 4.2. 引用
在任意位置输入,可以引用表格。
**输入**
```
@[table]{表的名称}
```
**输出**
```
表 1
```
### 4.3. 颜色
**输入**
```
#[FF0000]{这里是红字}
```
输出
```
这里是红字
```
## API
### 全局对象
| API | 说明 | 参数 | 返回值 |
| --- | --- | --- | --- |
| parse | 不适用扩展功能,直接使用 markedjs 的原生处理 | markDownString | html |
| create | 创建一个 modell-markedjs-plus 的新实例 | 无 | modell-markedjs-plus 的新实例 |
### modell-markedjs-plus 实例
| API | 说明 | 参数 | 返回值 |
| --- | --- | --- | --- |
| parse | 解析 markdown | markDownString | html |
| addCustomExtension | 添加自定义 customExtension | object | 无 |
| getLexer | 获得 lexer 的实例 | 无 | lexer 实例 |
| getParser | 获得 parser 的实例 | 无 | parser 实例 |
| getRenderer | 获得 renderer 的实例 | 无 | renderer 实例 |
| setFileDefaultUrl | 设置文件解析默认路径
有这个路径则以这个路径+md的定义进行解析
如果没有,则仅按 md 中的内容进行解析 | 路径 | 无 |
| setImageDefaultAlign | 设置图片默认对齐方案
如果md中有定义,则按md中的定义解析,如果没有则按这里的解析,默认居左 | 对齐方式 | 无 |
## 使用方式
```
const { Marked } = require("marked");
const plusInstance = plus(Marked);
const object = plusInstace.create();
object.parse(markdownString);
```