技术文档工具『Writerside』抢鲜体验
前言
2023 年 10 月 16 日,JetBrains 宣布以早期访问状态推出 Writerside,基于 IntelliJ 平台的 JetBrains IDE,开发人员可使用它编写、构建、测试和发布技术文档,可以作为 JetBrains IDE 中的插件使用,也可以作为独立工具使用
Writerside 允许开发人员和编写人员在产品文档、API 参考、开发人员指南、教程和操作方法方面进行协作;基于人工智能的拼写检查和语法纠正工具支持超过 25 种语言,包括英语、德语、西班牙语和中文
云服务器部署示例文档:About TestWriterside | TestWriterside (returntmp.fun)
官网地址:Writerside - a new technical writing environment from JetBrains.

技术文档
开发者们花费大量时间编码和构建新产品、服务和技术,但所有这些代码在上线后都需要维护,在不同阶段,特别严谨的软件开发流程,需要有大量的设计文档,详细文档。即便是缺少设计文档,也要在后期有一些资料来记录它的功能以及它是如何做的
对于开发者来说,写代码是很快乐的事,但写文档属实不容易,如果不写后期会引更多不必要复杂度,文档对于开发人员的生产力和客户满意度非常重要,它可以决定产品的采用或失败
根据 GitHub 相关报告数据,通过易于理解的文档,开发人员的生产力提高了近 50%
功能
- 文档即代码管道:使用单一创作环境,免除对多种工具的需求。借助内置
Git UI、集成式构建工具、自动化测试以及现成和可自定义的布局,专注于您的内容 - 结合
Markdown和XML:现在,您可以将Markdown与语义标记的优势相结合。选择一种格式,或使用语义特性和元素、Mermaid图和LaTeX数学公式丰富Markdown - 文档质量自动化:通过编辑器中的超过
100项即时检查以及实时预览和构建期间的测试确保文档质量和完整性 - 实时预览:预览显示的文档与读者将看到的完全相同。在
IDE中预览单个页面,或在浏览器中打开整个帮助网站而不运行构建 - 单一来源:从较小的内容块到整个主题或目录部分,重用一切。灵活使用筛选器和变量。为复杂标记元素使用预定义模板,或者配置您自己的模板
REST API文档生成:创建用户文档和API参考时无需在不同工具之间跳转。现在,您可以将API文档合并到帮助网站中,以相同的布局发布,并通过手动编写的内容补充自动生成的参考
体验
安装插件
官网下载链接:下载 Writerside – 文档创作工具 (jetbrains.com)

我们可以看到目前 Writerside 可以支持 Winddows、macOS、Linux 平台,同时目前处于抢先体验计划(Early Access Program,EAP)阶段,可以免费使用,以后可能会有社区免费版和旗舰付费版
我们可以下载完整的 Writerside 独立工具,如果我们已经安装 IDEA 的话,也可以使用插件方式安装,当然插件形式可能功能会不如独立工具完整,本次将会使用 IDEA 插件形式进行评测
官方最新插件
安装插件链接:Writerside - IntelliJ IDEs Plugin | Marketplace (jetbrains.com)

之后我们点击 Get 下载插件安装包
然后按照如下步骤安装插件:
- 打开你的集成开发环境(IDE),按下Ctrl+Alt+S打开IDE设置。
- 选择 插件,点击⚙️,然后点击 从磁盘安装插件。
- 选择插件的存档文件并点击 确定。
- 如果提示,点击 确定 应用更改并重新启动你的IDE。

其中可能会因为 IDEA 版本过低而出错,直接升级 IDEA 即可,操作方法如下
点击右上角的搜索图标,输入 “Check for Updates” ,然后点击搜索到的功能,然后不断 Update 即可,最后安装完插件重启即可

内置插件市场
我们也可以直接进入 IDEA ,然后进入设置界面,然后搜索插件 Writerside,然后安装插件,更加简单快捷
注:本种方法不推荐,我们可以看到下面图片中 IDEA 官方插件市场并不是 10 月的最新插件,与最新版功能有偏差

项目体验
创建项目
注:使用插件此步骤可省略
- 从主菜单中,选择文件 | 新 | 项目。
- 在新建项目向导中,选择
Starter Project并单击Next。 - 指定新项目的名称和位置,然后单击“完成”。
创建文档
在IDEA中打开在Writerside工具窗口,打开之后有引导页,点击Add documentation按钮,然后点击 To Current Project,选择 New,然后我们添加实例名称(类似文档目录名称),之后生成即可,然后会自动生成帮助实例文档

创建主题
有了带帮助实例的文档项目之后,就可以右键目录向其中添加主题并开始编写内容,目前有5种 Markdown 主题和5种 XML 主题。
新建MD格式主题,并在其下面新建两个二级主题,左侧编写,右侧预览效果,并且可以通过拖动更改主题的层次结构。

构建网站

在Writerside工具窗口中上方有个按钮,单击”Open in Browser“或“Save as ZIP Archive”
直接本地打开网站选”Open in Browser“,文档无报错即可在浏览器中浏览文档了
如果需要发布可以选择“Save as ZIP Archive”生成压缩文件,再部署到服务器中访问
Nginx 部署
将上面的压缩包解压到服务器的目录/usr/share/nginx/writerside 中,下面是我的 nginx.conf 配置,大家可以酌情参考
server {listen 80;listen [::]:80;server_name www.returntmp.fun;root /usr/share/nginx;location ^~ / {root /usr/share/nginx/blog/dist;index index.html index.htm;try_files $uri $uri/ /index.html;}location ^~ /writerside/{index index.html index.htm;try_files $uri $uri/ /index.html;}
}
部署文档示例链接:About TestWriterside | TestWriterside (returntmp.fun)
参考链接
- Writerside-JetBrains的全新技术写作环境 - 知乎 (zhihu.com)
- JetBrains 推出 Writerside,创建技术文档的工具 - 知乎 (zhihu.com)
- 新AI工具来了!开发者再也不用写文档发愁 (21cto.com)
- JetBrains 首次推出“Writerside”:技术文档的新颖方法 | AppMaster
本文由博客一文多发平台 OpenWrite 发布!
相关文章:
技术文档工具『Writerside』抢鲜体验
前言 2023 年 10 月 16 日,JetBrains 宣布以早期访问状态推出 Writerside,基于 IntelliJ 平台的 JetBrains IDE,开发人员可使用它编写、构建、测试和发布技术文档,可以作为 JetBrains IDE 中的插件使用,也可以作为独立…...
Centos磁盘爆满_openEuler系统磁盘爆满清理方法---Linux工作笔记060
磁盘爆满,监控部门就会报警,报警就要处理,但是程序员并不擅长做运维的工作,记录一下把...以后用到会方便: 使用df -h命令可以看到,对应的磁盘占用情况,这里我的/dev/mapper/openeuler-root这个目录 占用的磁盘比较多,到了百分之95了.. 往往就是这个跟目录,我这里/data目录是自…...
dubbo启动提示端口号已经被占用
本地dubbo项目启动提示: java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132) at org.sp…...
LeetCode每日一题——2678. Number of Senior Citizens
文章目录 一、题目二、题解 一、题目 You are given a 0-indexed array of strings details. Each element of details provides information about a given passenger compressed into a string of length 15. The system is such that: The first ten characters consist o…...
按摩 推拿上门服务小程序源码 家政上门服务系统源码
按摩 推拿上门服务小程序源码 家政上门服务系统源码 上门服务系统是一款基于互联网和移动应用的高端家政服务预订平台,它集成了用户、服务员、客户三方的需求于一体,为广大市民提供方便、高效、安全、舒适的家居服务体验,让你在家当皇帝&…...
排列排序问题---2023 年华中科技大学程序设计竞赛新生赛
解析: 将序列分为多段,每段必须连续并且单调,输出段数-1即可 #include<bits/stdc.h> using namespace std; #define int long long const int N1e65; int n,a[N]; signed main(){scanf("%lld",&n);for(int i1;i<n;i)…...
数据恢复怎么做?记好这款堪比数据恢复专家的软件!
“我真的受够了数据总是莫名其妙丢失了!但是我的电脑知识又很有限,文件丢失后我都不知道应该采取什么方法来进行恢复。谁能给我介绍一些方法呀?” 数据丢失是一场噩梦,无论是因为误删除、硬盘损坏、病毒攻击还是其他原因。然而&am…...
远程监控高并发高吞吐java进程
文章目录 背景工具jconsole和jvisualvm 压测实战以太坊Java程序监控1.使用jconsole监控2.使用jvisualvm监控 问题分析堆内存使用异常通过调整内存策略来应对: 交易虚增问题 背景 作为使用java技术栈的金融类公司,确保Java程序在生产环境中的稳定性和性能…...
MapperStruct实现类为空
问题描述: MapperStruct生成的实现了为空 按照在MapperStruct官网Installation – MapStruct中的方法配置后,生成的实现了是空的,如下: Overridepublic DeployHistory toEntity(DeployHistoryDto arg0) {if ( arg0 null ) …...
【webpack】wabpack5 知识梳理
1、简单介绍 默认功能 可处理 js、json文件,处理 js 文件引入将其打包; 可处理字体、图片、音视频等静态资源(webpack5有内置loader:asset); 将es6的import规范编译为浏览器可识别的commonjs规范…...
ThinkPHP 3.2 常用内置函数
ThinkPHP 3.2 内置函数CDM疑问: D与M方法的相同点与不同点IAR 内置函数 C C方法是用于获取或修改,系统配置参数 语法: 获取:C(需要获得的配置参数Name) $value C(config_name);设置:C&…...
STM32F4_USB读卡器(USB_Slave)/USB U盘(Host)
前言 STM32F4芯片自带了USB OTG FS(FS,即全速,12Mbps)和USB OTG HS,支持USB Host和USB Device。 1. USB简介 USB,是英文Universal Serial BUS(通用串行总线)的缩写,是一…...
【网络安全入门】学习网络安全必须知道的100 个网络基础知识
前言 先领取资料再阅读哦 【282G】网络安全&黑客技术零基础到进阶全套学习大礼包(附面试题答案),免费分享! 【282G】网络安全&黑客技术零基础到进阶全套学习大礼包(附面试题答案),免…...
96核的AMD锐龙Threadripper PRO 7995WX性能如何?
AMD新推出的锐龙Threadripper 7000系列可以说是目前最快的工作站处理器,最顶级的锐龙Threadripper PRO 7995WX拥有96个Zen 4内核,共192线程,基础频率2.5GHz,加速频率5.15GHz,拥有384MB L3缓存和多达128条PCI-E 5.0通道…...
TS和JS的区别
1.TS和JS的区别 ts 是js的超集。 从执行环境上来看,浏览器、node.js 可以直接执行js,但不能执行ts;编译层面,Ts 有编译阶段,js 没有,只有转译阶段和lint阶段;ts更难写一点,但类型更安全。ts 代码写出来就是…...
顺序栈的实现----数据结构
栈的概念 对于栈(Stack),后进先出(Last In First Out,LIFO),栈也是一种线性表,只不过是一种操作受限的线性表,只能在一端操作,也就是不允许在中间进行查找、…...
k8s calico 网络原理
一、cluster ip Cluster IP 是 Kubernetes 中 Service 的 IP 地址,它是一个虚拟 IP 地址,用于集群内的 Pod 相互通信。 例如: Cluster IP:2.2.2.2负载的真实Pod IP:1.1.1.1 场景: Pod A 的 IP 地址是 …...
【Python学习笔记】循环
Python中有两种类型的循环: while 循环 和 for 循环 1. while 循环 while循环是: 检查一个条件表达式,只要条件表达式计算结果为True 时, 就执行下面缩进的代码。 如此反复,直到条件表达式计算结果为False时,结束 循…...
1 如何入门TensorFlow
近年来人工智能的火爆吸引了很多人,网上相关的热门课程报名的人很多,但是坚持下去的人却少。那些晦涩的原理没有一定知识的积累很难能理解。 如果你对人工智能感兴趣,且想利用人工智能去实现某项功能,而不是对人工智能本身感兴趣&…...
QTday02(常用类、UI界面下的开发、信号与槽)
今日任务 1. 使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin"&#x…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...
深度学习水论文:mamba+图像增强
🧀当前视觉领域对高效长序列建模需求激增,对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模,以及动态计算优势,在图像质量提升和细节恢复方面有难以替代的作用。 🧀因此短时间内,就有不…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...
windows系统MySQL安装文档
概览:本文讨论了MySQL的安装、使用过程中涉及的解压、配置、初始化、注册服务、启动、修改密码、登录、退出以及卸载等相关内容,为学习者提供全面的操作指导。关键要点包括: 解压 :下载完成后解压压缩包,得到MySQL 8.…...
嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)
目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 编辑编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...
基于开源AI智能名片链动2 + 1模式S2B2C商城小程序的沉浸式体验营销研究
摘要:在消费市场竞争日益激烈的当下,传统体验营销方式存在诸多局限。本文聚焦开源AI智能名片链动2 1模式S2B2C商城小程序,探讨其在沉浸式体验营销中的应用。通过对比传统品鉴、工厂参观等初级体验方式,分析沉浸式体验的优势与价值…...
数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)
目录 🔍 若用递归计算每一项,会发生什么? Horners Rule(霍纳法则) 第一步:我们从最原始的泰勒公式出发 第二步:从形式上重新观察展开式 🌟 第三步:引出霍纳法则&…...
