浏览器中的Markdown编辑器StackEdit

news2024/9/28 3:27:54

在这里插入图片描述

目前博客的 Pageviews 大约是之前的 10%,而 Uniques 则大约是 15% 左右。看来很多同学已经彻底迷路了

大家可以关注CSDN,地址: https://blog.csdn.net/wbsu2004

微信公众号也可以关注起来


什么是 StackEdit ?

StackEdit 是基于 PageDownStack Overflow 和其他 Stack Exchange 站点使用的 Markdown 库)的全功能开源 Markdown 编辑器。

StackEdit 提供了无与伦比的写作体验,具有丰富的 Markdown 编辑器,提供了所见即所得控件,能使用滚动同步实时预览,不仅可以将您的文件与 Google DriveDropboxGitHub 同步,还可以将它们作为博客文章发布到 BloggerWordPressZendesk,还可以通过同步机制共享协作工作区。

但是需要注意的事,项目更新比较慢,虽然项目年代久远,但找不到详细的说明,从官方 issues看,累积的 bug 也较多;

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 stackedit ,选择第一个 benweet/stackedit,版本选择 latest

本文写作时, latest 版本对应为 v5.15.4

这个镜像比较大

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
77818080

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 stackedit 和 子目录
mkdir -p /volume1/docker/stackedit/data

# 进入 stackedit 目录
cd /volume1/docker/stackedit

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name stackedit \
   -p 7781:8080 \
   benweet/stackedit:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  stackedi:
    image: benweet/stackedit:latest
    container_name: stackedit
    restart: always
    ports:
      - 7781:8080

然后执行下面的命令

# 新建文件夹 stackedit 和 子目录
mkdir -p /volume1/docker/stackedit/data

# 进入 stackedit 目录
cd /volume1/docker/stackedit

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:7781 就能看到主界面

在这里插入图片描述

点顶部的 SRART WRITING进入文档编辑界面,第一次会有向导

左侧 Toggle explorer 可以浏览整个目录结构

右侧 Toggle side bar 可以看到各种设置项

中间可以切换视图

在这里插入图片描述

CSDN 是一模一样的

进入 阅读模式

插件

原本 StackEdit 是有 chrome 插件的,但是现在似乎已经不可用了

在这里插入图片描述

工作区

StackEdit 编辑的 markdown 文件似乎是保存在本地的,所以要持久化,需要有工作区,老苏选择了 CouchDB,原因很简单,因为最近刚刚安装过,而且数据在自己的服务器上

文章传送门:Obsidian多端同步插件LiveSync

在浏览器中输入 http://群晖IP:5984/_utils 打开 CouchDB 的后台设置

Database name 用了全部小写的 stackedit

在这里插入图片描述

创建成功后

回到 StackEdit,右侧 Toggle side bar --> Workspaces --> Add a CouchDB workspace

根据前面设置的 Database nameDatabase URLhttp://群晖IP:5984/stackedit

成功的话右下角会有提示,当前的 Workspace 会切换到 stackedit

新建一个文件,数据库里显示创建了文件

回到数据库界面,Size 已经不再是 0

在这里插入图片描述

其他人要有 CouchDB 的账号、密码,以及 Database URL,就可以看到 Markdown笔记了

下拉,找到 Workspace backups

可以做导入、导出操作

在这里插入图片描述

打开下载的 StackEdit workspace.json 看看

参考文档

benweet/stackedit: In-browser Markdown editor
地址:https://github.com/benweet/stackedit/

StackEdit – In-browser Markdown editor
地址:https://stackedit.io/

Introduction | stackedit.js
地址:https://benweet.github.io/stackedit.js/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/805032.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pyspark 笔记 cast 转换列的类型

1 不借助 pyspark.sql.types from pyspark.sql.functions import coldata [("Alice", "28"), ("Bob", "22"), ("Charlie", "30")] columns ["name", "age_str"] df spark.createDataFram…

如何使用vscode连接远程服务器

1、安装remote-ssh 在应用商店搜索remote-ssh,安装remote-ssh 2、安装完成后会出现远程资源管理器 3、点击远程资源管理器 --ssh的➕号,在输出框内输入要连接的服务器ip及账户名 如:ssh 账户名ip地址 4、输入后回车保存 5、保存后刷新一下 6…

SOLIDWORKS磁力配合工具

在我们平常的工作中,很多人都会面临大型装配体相互配合的问题。有很多用户,由于设计的产品体积很大,零件数量非常多。即使将设备分成不同的部件进行组装,不同的部件之间进行配合也非常困难。因为这种时候软件运行的速度会变得非常…

【UE5 多人联机教程】06-显示玩家名称

效果 可以看到玩家输入各自的名称,会显示到自己控制的角色头上。但是目前有一个BUG就是,当客户端加入游戏时会多创建一个服务端的角色。 步骤 1. 打开“BP_ThirdPersonCharacter”,添加一个控件组件,用于显示玩家名称 作为网格体…

国产内存惹人爱,光威的价格战太凶猛,海外品牌已无力招架

现阶段,真的很适合升级内存条和SSD!当然了,我说的是国产的品牌,经过这几年的发展,国产内存和SSD的表现都有了质的飞跃,像是光威之类的品牌,更是成功在玩家群体中获得了良好的口碑,而…

数据库的介绍

无处不在的数据库 信息化社会,无处不在的就是数据。 编程语言可以归纳为,数据的计算一类。 那数据的存储呢? 数据库就是存储数据的库,那么它是如何组织数据并存储的呢? 数据库如何存储数据 我们先来看看,生活中,…

通过社区参与解锁早期增长:Maven 远程医疗平台概览

Maven通过用户导向的渐进式验证,找到了一个被忽视的巨大女性医疗服务市场,作为女性医疗保健的先行者,已服务超过1500万用户,目前估值已达$14亿。本文将深入探索Maven实现产品市场匹配的三个阶段,从如何验证初始的市场机…

Junit5 + YAML 轻松实现参数化和数据驱动(一)

登录:不同的用户名,不同的密码,不同的组合都需要做登录场景的测试,正常的排列组合下可能会产生多个用例 搜索:不同的搜索条件产生不同的搜索结果,搜索也是常见的测试项,单个搜索参数或者多种搜…

手动搭建gateway,项目集成gateway实现Token效果

目录 背景步骤1、首先创建springboot项目2、引入依赖3、配置文件!!!!!(超级重要!!!根据自己的需要进行配置)4、相关类我们在服务中进行的白名单中接口的操作如…

Java8 LocalDate、Date、LocalDateTime、时间戳的转换

文章目录 LocalDateplusminus比较日期 LocalDate、Date、LocalDateTime、时间戳的转换 LocalDate plus LocalDate localDate2 localDate1.plus(15, ChronoUnit.DAYS);LocalDate localDate2 localDate1.plus(Period.ofDays(15));minus LocalDate localDate2 localDate1.minu…

电缆振荡波局部放电检测定位技术

电缆振荡波检测技术主要用于交联聚乙烯电力电缆检测,是属于离线检测的一种有效形式 。该技术基于LCR阻尼振荡原理,在完成电缆直流充电的基础上,通过内置的高压电抗器、高压实时固态开关与试品电缆形成阻尼振荡电压波,在试品电缆上…

新品发布| PPS Tester同步精度测试仪

产品简介 Product introduction 产品概述 PPS 同步精度测试仪,即PPS Tester,是怿星科技开发的一款基于1PPS测量方法的系统时钟同步精度测试设备。它由硬件模块ETS2110、上位机软件ePPSTester以及相关附件组成。PPS Tester支持24路*24小时PPS信号的持续…

NodeJs后端项目使用docker打包部署

docker安装看之前的文章 默认已经安装好docker并且配置没有问题 拉取项目 https://gitee.com/coder-msc/docker-node 本地跑一个看看 pnpm install pnpm start 本地访问 http://localhost:1301/getname?name%E5%93%88%E5%88%A9%E6%B3%A2%E7%89%B9项目整个上传服务器 查看…

8.10 PowerBI系列之DAX函数专题-TopN中实现动态指标

需求 实现 建立一个辅助表供切片器选择 2 建立条件判断度量值top_measure swich(true(),selectedvalue(table[tope_type])"按数量top",sum(order_2[产品数量]),selectedvalue(table[tope_type])"按金额top",sum(order_2[订单金额]),selectedvalue(table…

字符指针和常量字符指针

用来存放字符的地址的指针 还有一种比较特殊的字符指针 有这样一道题:

最小时间差(力扣)排序 + 思维 JAVA

给定一个 24 小时制(小时:分钟 “HH:MM”)的时间列表,找出列表中任意两个时间的最小时间差并以分钟数表示。 示例 1: 输入:timePoints [“23:59”,“00:00”] 输出:1 示例 2: 输入:…

css实现有缺口的border

css实现有缺口的border 1.问题回溯2.css实现有缺口的border 1.问题回溯 通常会有那种两个div都有border重叠在一起就会有种加粗的效果。 div1,div2,div3都有个1px的border,箭头标记的地方是没有处理解决的,很明显看着是有加粗效果的。其实这种感觉把di…

python爬虫-加速乐cookie混淆解析实例小记

注意!!!!某XX网站逆向实例仅作为学习案例,禁止其他个人以及团体做谋利用途!!! 第一步:抓包工具第一次请求页面,得到响应。本次我使用的fiddle进行抓包&#…

如何利用Requestly提升前端开发与测试的效率

痛点 B站最牛的Python接口自动化测试进阶教程合集(真实企业项目实战) 前端测试 在进行前端页面开发或者测试的时候,我们会遇到这一类场景: 在开发阶段,前端想通过调用真实的接口返回响应在开发或者生产阶段需要验证前…

Jmeter post请求传参问题

同线程组引用参数 新增数据bizId,然后将此次新增数据删除 添加新增数据接口,然后查询数据列表,正则表达式提取bizId 在删除接口引用此值${bizId} 添加断言,执行查看结果 json格式的post请求 摘要:正在执行的活动内容…