LatexFormatting is a utility used to format LaTeX and Markdown files. For English version, please go to branch main_en.
LatexFormatting 是一个用于格式化 LaTeX 和 Markdown 文件的实用工具。该工具提供了多种选项来规范化数学公式和文本格式,特别是对由 ChatGPT 生成的 LaTeX 公式进行处理。
简单的演示(新的视频还没做) 【数学科研向】将 ChatGPT 的回答复制到 Markdown 文件并正常编译数学公式
-
在中日韩字符和英文或数字之间添加空格
默认启用: ✅ -
将多行空行变成单行空行
默认启用: ✅ -
行内公式:规范
$ ... $
环境
默认启用: ❌ -
行内公式:规范
\( ... \)
环境
默认启用: ❌ -
行内公式:替换
\( ... \)
为$ ... $
环境 【适合ChatGPT的回答】
默认启用: ❌ -
行间公式:规范
equation
环境
默认启用: ❌ -
行间公式:规范
$$ ... $$
环境
默认启用: ❌ -
行间公式:规范
\[ ... \]
环境
默认启用: ❌ -
行间公式:替换
\[ ... \]
为$$ ... $$
环境【适合ChatGPT的回答】
默认启用: ❌ -
行间公式:替换
equation
为$$ ... $$
环境
默认启用: ❌ -
行间公式:替换
\[ ... \]
为equation
环境
默认启用: ❌ -
行间公式:替换
$$ ... $$
为equation
环境
默认启用: ❌ -
将内嵌在
equation
中的aligned
环境变成单独的align
环境
默认启用: ❌ -
去掉
align
和equation
环境中用于不显示tag的*
号
默认启用: ❌ -
规范
\item
格式
默认启用: ❌ -
规范化各级标题
默认启用: ✅ -
将 Markdown 的标题等变成 LaTeX 对应物
默认启用: ❌ -
将 Markdown 的
**
包围变成\textbf
环境
默认启用: ❌ -
将 Markdown 的
*
包围变成\textit
环境
默认启用: ❌ -
去掉所有Markdown特征
默认启用: ❌ -
规范
align
环境
默认启用: ❌ -
一些小的实用功能
默认启用: ❌ -
替换
equation
为equation*
环境,如果没有label
默认启用: ❌
- 可以保存当前复选框情况,下次开启自动复现。
- 可以批量处理文件夹内所有
.md
或.tex
文件。 - 可以选择自动复制或者手动复制修改后内容。
请确认安装了 pyperclip
库
pip install pyperclip
在根目录下运行 main.py
会自动打开使用界面。
python main.py
具体打包方法请看下面开发说明。【警告】 该软件可能会被杀毒软件识别并清除,请加入白名单。详情原因参考 PyInstaller打包的exe被防毒软件报毒怎么办
如果左侧输入框变化时,右侧输出框没有反应。说明出了bug,请关闭重启。
请在 typora
偏好设置中,请在 Markdown
的设置看是否与下图相同
- Python 3.x
- 必要的 Python 库:
tkinter
(tk
是 python 标准库)pyperclip
pyinstaller
(如需另外生成exe文件的话)- 持续开发中,缺什么补什么吧
project/
│
├── main.py # 主程序文件
├── icon.ico # 程序图标
├── text_processing.py # 文本处理模块
├── file_operations.py # 文件操作模块
└── README.md # 开发说明(本文件)
main.py
:主程序文件,包含 GUI 界面及主要逻辑。
text_processing.py
和 file_operations.py
文件包含具体的文本处理和文件操作函数,请根据项目需要进行定义。
详见根目录下另一个 how_add_new_features.md
文件。
在 main.py
所在的目录下运行如下,使用 PyInstaller
创建一个可执行exe文件:
pyinstaller --onefile --noconsole --name formatting --icon=icon.ico --distpath ./ main.py
或者直接在双击 get_exe.bat
。
- Fork 此项目。
- 创建你的功能分支 (
git checkout -b feature/AmazingFeature
)。 - 提交你的更改 (
git commit -m 'Add some AmazingFeature'
)。 - 推送到分支 (
git push origin feature/AmazingFeature
)。 - 创建一个新的 Pull Request。
如有任何问题或建议,请联系作者:
- 邮箱:galvin.lai@outlook.com
- GitHub: GALVINLAI