首页
/ Enki 文本编辑器技术文档

Enki 文本编辑器技术文档

2024-12-17 08:57:42作者:韦蓉瑛

1. 安装指南

1.1 依赖安装

1.1.1 必备依赖

  • Python 3
  • PyQt5(需支持SVG)
  • Qutepart
  • PyQt5 QtWebEngine bindingspython3-pyqt5.qtwebenginepython3-qt5-webengine 包)

1.1.2 可选依赖

  • Python-Markdown:用于Markdown预览
  • Docutils:用于reStructuredText预览
  • ctags:用于文件导航
  • regex:用于预览同步
  • CodeChat:用于源代码到HTML的转换(文学编程)
  • Sphinx:用于构建Sphinx文档
  • Flake8:用于Python代码的Lint检查

1.1.3 Debian及基于Debian的系统

apt-get install python3 libqt5svg5 python3-pyqt5 python3-pyqt5.qtwebengine python3-markdown python3-docutils ctags
pip3 install -r requirements.txt

如果您的仓库中没有 python3-pyqt5.qtwebengine,请移除 python3-pyqt5python3-sip,然后执行 pip3 install PyQt5

1.1.4 其他Unix系统

使用包管理器查找并安装上述依赖包。

1.1.5 其他系统

访问各项目的官方页面,下载并按照说明安装。

1.2 获取源代码

GitHub Releases 下载源代码压缩包。

1.3 安装Enki

python3 setup.py install

1.4 运行Enki

python3 -m enki

2. 项目使用说明

2.1 运行Enki

安装完成后,可以通过命令 python3 -m enki 启动Enki文本编辑器。

2.2 功能介绍

  • 多语言支持:支持多种编程语言的语法高亮和代码补全。
  • 预览功能:支持Markdown和reStructuredText的实时预览。
  • 代码导航:通过ctags实现文件内代码导航。
  • 代码Lint:支持Flake8进行Python代码的Lint检查。

3. 项目API使用文档

3.1 主要模块

  • enki.core:核心模块,负责编辑器的基本功能。
  • enki.plugins:插件模块,包含各种扩展功能。

3.2 常用API

  • enki.core.Editor:编辑器主类,提供文本编辑、保存、加载等功能。
  • enki.plugins.MarkdownPreview:Markdown预览插件,提供Markdown文件的实时预览功能。
  • enki.plugins.CodeLint:代码Lint插件,提供代码检查功能。

4. 项目安装方式

4.1 通过预构建二进制文件安装

对于大多数Linux和Windows用户,可以从 官方网站 下载预构建的二进制文件进行安装。

4.2 从源代码安装

  1. 安装依赖
  2. 获取源代码
  3. 执行安装命令 python3 setup.py install

通过以上步骤,您可以成功安装并使用Enki文本编辑器。如果在使用过程中遇到问题,请及时提交bug报告。

热门项目推荐
相关项目推荐

项目优选

收起
Python-100-DaysPython-100-Days
Python - 100天从新手到大师
Python
267
55
国产编程语言蓝皮书国产编程语言蓝皮书
《国产编程语言蓝皮书》-编委会工作区
65
17
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
196
45
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
53
44
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
268
69
qwerty-learnerqwerty-learner
为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workers
TSX
333
27
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
896
0
advanced-javaadvanced-java
Advanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。
JavaScript
419
108
MateChatMateChat
前端智能化场景解决方案UI库,轻松构建你的AI应用,我们将持续完善更新,欢迎你的使用与建议。 官网地址:https://matechat.gitcode.com
144
24
HarmonyOS-Cangjie-CasesHarmonyOS-Cangjie-Cases
参考 HarmonyOS-Cases/Cases,提供仓颉开发鸿蒙 NEXT 应用的案例集
Cangjie
58
4