当前位置: 首页 > news >正文

腾讯云COS+PicGO+截图工具+Obsidian+Typora+蚁小二:打造丝滑稳定的Markdown写作和分发环境

背景

很久很久以前,我写过一篇《有道云笔记+Everything+Typora+GitHub图床+PicGo+jsDelivr加速+截图工具——创造丝滑免费的Markdown写作环境》(https://blog.csdn.net/qq_43721542/article/details/9685957),当时的目的是打造一个云同步免费的Markdown写作环境。

现在,我有了新的诉求:打造一个本地丝滑的Markdown写作环境,且输出的文章可以直接复制到博客平台进行发表,甚至可以一键分发到多个博客平台。

于是,研究了如下做法,供大家参考。

工具说明

腾讯云COS

腾讯云COS(Cloud Object Storage)是腾讯云提供的一种稳定、安全、高效、易用的云端存储服务,您可以通过RESTful API接口、控制台、SDK工具等多种方式将数据安全地存储到腾讯云的存储系统上,实现海量数据的存储、备份和归档。

在这里,我们用COS代替之前的GitHub,作为新的图床。

为什么用COS,一是因为COS稳定而且速度很快,而是因为COS性价比极高,50G的存储容量一年不到10块钱。而GitHub在国内访问的速度实在不敢恭维。

腾讯云COS网址:https://console.cloud.tencent.com/cos

PicGO图片上传工具

目的:将图片自动上传到你的GitHub图床,并返回一个Markdown格式的图片地址。

网址:https://github.com/Molunerfinn/PicGo/releases

截图工具

目的:截图并编辑图片。

这里使用Snipaste,网址:https://www.snipaste.com/

Obsidian

目的:只用于管理Markdown文件。

网址:https://obsidian.md/

Typora

目的:只用于编辑Markdown文件(之所以不用Obsidian编辑,是因为我觉得Typora编辑起来更爽哈哈)。

官网:https://typora.io/

蚁小二

目的:用于将写好的文章一键分发到各个博客平台。

官网:https://www.yixiaoer.cn/

首次配置完整演示步骤

腾讯云COS

来到腾讯云“访问管理”控制台(https://console.cloud.tencent.com/cam/capi),点击“访问密钥”-->“API密钥管理“-->“新建密钥”,记录下APPID, SecretId, SecretKey。

6fd04a896f78595f889df523798ad2eb.jpeg

来到COS“存储桶列表”,创建存储桶(如果还没用过COS,需要新建COS)。注意:这里要设置访问权限为“公有读私有写”,否则外界无法访问你的URL。

6c44c05927f434661bd5d0c7e2d007bd.jpeg

在确认配置之后,就创建完存储桶了。这时,我们需要把“存储桶名称”和“所属地域“的英文名记下来,后面需要使用。

8c2b3c15cbfebba8705dafa328b1e525.jpeg

然后,在桶中创建文件夹,这个文件夹就可以用来存储你的图片啦。

605e79333a711dacf395aad855b34648.jpeg

至此,COS配置完毕。

PicGO图片上传工具

对于MAC中apple芯片的电脑(M1、M1 pro、M2等),在安装完PicGO打开时可能会遇到提示文件损坏的问题。

这时我们我要打开终端输入这两行命令:

 sudo spctl --master-disable
 xattr -cr /Applications/PicGo.app

sudo spctl --master-disable 这条命令是用来关闭Mac的Gatekeeper功能的。Gatekeeper是Mac系统中用来防止用户运行恶意软件的一种安全机制。默认情况下,它只允许用户从App Store和已知开发者处安装应用。这条命令可以暂时关闭这个功能,允许从任何来源安装应用。sudo是一个在Unix和类Unix系统中的命令,用来以超级用户的身份执行命令。spctl是Gatekeeper的命令行工具,--master-disable是禁用Gatekeeper的选项。

xattr -cr /Applications/PicGo.app 这条命令是用来清除一个文件或目录的扩展属性的。在Mac系统中,某些文件会被系统自动添加扩展属性,比如下载的程序会被添加一个标记,表明这个程序是从Internet上下载的。这个标记会导致Gatekeeper阻止这个程序的运行。xattr是一个命令行工具,用来查看和修改文件的扩展属性,-c选项是清除所有属性,-r选项是递归处理目录。/Applications/PicGo.app是要处理的目录。

这两条命令通常一起使用,用来允许从未知来源安装的程序在Mac上运行。

打开PicGO后,选择“图床设置”-->“腾讯云COS”,根据之前在COS中记录的信息对应填写:

d4a1260576a0b22be4e2749ece3af724.jpeg

可以自定义配置一些PicGo设置,比如快捷键、上传后自动复制URL等:

201993365434ba075ae2c4fccfc9e402.jpeg

至此,PicGO配置完毕。

截图工具

我使用的是Snipaste,好处是在截图当时有很多好用的编辑功能

da19e07ae8d21782d01f7705ca1aa43c.jpeg

402445ee387b83671724289aaf399270.jpeg

当然,用其他的也可以,主要就是把需要上传到图床的图片放到我们电脑的剪切板中,随时准备上传。

Obsidian

Obsidian其实是一个非常好用的笔记软件,用来构建自己的知识图谱非常合适

(奈何我还没完全学会它的使用,所以我这里用来管理.md文件)

61978c623b9734495cb08fa0d702dadb.jpeg

Typora

管理不是Typora的强项,编辑才是,因此,我选择使用Typora作为我认为完美的Markdown编辑器。

在这里要说一下相关的配置,要结合PicGo来无缝获取上传图片后的markdown格式,需要配置如下:

11413b81013f6a3424c3111b562ada11.jpeg

这样配置之后,我们使用Snipaste得到的截图,就可以直接粘贴到Typora了(Typora会为我们自动上传该截图),得到的就是一个标准的Markdown图片格式,如:

33b9293860d30fbd08e32ae91ce5f378.jpeg

蚁小二

我们在本地编辑完成Markdown文件后,“蚁小二”这样的一键分发平台就派上用场了。它能将我们的文章一键发布到多个平台,如:知乎、B站、CSDN、微信公众号等。

因为免费版最多支持5个不同的平台,我就绑定了5个平台的账号(我觉得差不多也够用了)

(如果大家有更好用的一键分发软件,也欢迎评论推荐哈)

10fb03227db8ccf292b55d6de1333ca5.jpeg

实际上它支持很多平台:

5d343fa9f0b42072bcacd9efc572538e.jpeg

我们可以在“一键发布”页面进行发布

首选选择需要发布的账号:

517c6399c819996baef198e6eaf07520.jpeg

在Typora中将想要发布的文章Ctrl+A全选后粘贴到“一键发布”中的编辑器:

bcb4b95a7434c342697aff9c392a6f4e.jpeg

填写各个平台的发布设置后点击下面的”发布“,等待发布完成即可。

使用总结(简单又丝滑的编辑步骤)

配置完成后,我们来一个使用的示例来结尾:

  • 使用Obsidian创建一个新的.md文件

  • 使用Typora打开新建的.md文件

  • 使用截图工具截取想要放到文章中的图片,期间可以进行图片编辑

  • 直接ctrl+v粘贴到Typora

  • 最后,到蚁小二进行一键发布到各平台

相关文章:

腾讯云COS+PicGO+截图工具+Obsidian+Typora+蚁小二:打造丝滑稳定的Markdown写作和分发环境

背景 很久很久以前,我写过一篇《有道云笔记EverythingTyporaGitHub图床PicGojsDelivr加速截图工具——创造丝滑免费的Markdown写作环境》(https://blog.csdn.net/qq_43721542/article/details/9685957),当时的目的是打造一个云同…...

LeetCode--HOT100题(18)

目录 题目描述:73. 矩阵置零(中等)题目接口解题思路1代码解题思路2代码 PS: 题目描述:73. 矩阵置零(中等) 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都…...

ES6的语法兼容IE浏览器

案例1 zdsxData.zdsxData.forEach(el>{let str <tr> <td><a href${el.url} target"_blank"><font color"#79EEFF">${el.sxms}</font></a></td> <td>${el.gjjd}</td> <td>${el.zrr}<…...

【opencv学习】鼠标回调函数、鼠标控制画矩形

#include <iostream> #include <opencv2/opencv.hpp> using namespace cv; #define WinDow "程序窗口"void MouseHandle(int event, int x, int y, int flags, void* param);//鼠标回调函数 void Drawrectangle(cv::Mat& img, cv::Rect box);//矩形绘…...

Typescript面试题

文章目录 了解过TS吗&#xff1f;使用ts写一个对象属性约束说一下typescript中的泛型如何在TS中对函数的返回值进行类型约束ts和js相比有什么区别 了解过TS吗&#xff1f; ts是一种基于静态类型检查的强类型语言 let num:number20 console.log(num) console.log("str&qu…...

GB28181智能安全帽方案探究及技术实现

什么是智能安全帽&#xff1f;​ 智能安全帽是一种集成先进科技的安全帽&#xff0c;可基于GB28181规范&#xff0c;适用于铁路巡检、电力、石油化工等高风险行业的作业人员&#xff0c;以及消防、救援等紧急情况下的安全防护。 智能安全帽通常具有以下功能&#xff1a; 实时…...

【css】解决元素浮动溢出问题

如果一个元素比包含它的元素高&#xff0c;并且它是浮动的&#xff0c;它将“溢出”到其容器之外&#xff1a;然后可以向包含元素添加 overflow: auto;&#xff0c;来解决此问题&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html> <head> <style>…...

SOC FPGA之流水灯设计

一、DS-5简介 Altera Soc EDS开发套件的核心是Altera版ARM Development Studio 5(DS-5)工具包&#xff0c;为SoC器件提供了完整的嵌入式开发环境、FPGA自适应调试和对Altera工具的兼容。 1.1 DS-5 eclipse破解 首先下载破解器 然后进入cmd运行&#xff0c;进入到破解器所在文…...

无涯教程-Lua - Iterators(迭代器)

迭代器是一种构造&#xff0c;使您可以遍历所谓的集合或集合的元素。在Lua中&#xff0c;这些集合通常引用表&#xff0c;这些表用于创建各种数据结构(如数组)。 通用迭代器 通用的 for 迭代器提供集合中每个元素的键值对。下面给出一个简单的示例。 array{"Lua",…...

HTML+CSS+JavaScript:实现B站评论发布效果

一、需求 1、用户输入内容&#xff0c;输入框左下角实时显示输入字数 2、为避免用户输入时在内容左右两端误按多余的空格&#xff0c;在发送评论时&#xff0c;检测用户输入的内容左右两端是否带有空格&#xff0c;若有空格&#xff0c;发布时自动取消左右两端的空格 3、若用…...

实战 - 利用 ThreadLocal 线程局部变量实现数据缓存

文章目录 1. 利用 ThreadLocal 缓存 AssetBranchCache 数据1. 定义 AssetBranchCache 类2. 定义 BranchContext 类操作 AssetBranchCache 对象3. 配置拦截器实时更新和清除缓存数据4. 定义 SaasThreadContextDataHolderBranch 类持有 AssetBranchCache 对象5. 定义 SaasThreadC…...

wxwidgets Ribbon使用简单实例

// RibbonSample.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <wx/wx.h> #include "wx/wxprec.h" #include "wx/app.h" #include "wx/frame.h" #include "wx/textctrl.h" #include "…...

2023年第四届“华数杯”数学建模思路 - 案例:最短时间生产计划安排

文章目录 0 赛题思路1 模型描述2 实例2.1 问题描述2.2 数学模型2.2.1 模型流程2.2.2 符号约定2.2.3 求解模型 2.3 相关代码2.4 模型求解结果 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; 最短时间生产计划模型 该模型出现在好几个竞赛赛题上&#x…...

LeetCode404. 左叶子之和

404. 左叶子之和 文章目录 [404. 左叶子之和](https://leetcode.cn/problems/sum-of-left-leaves/)一、题目二、题解方法一&#xff1a;递归方法二&#xff1a;迭代 一、题目 给定二叉树的根节点 root &#xff0c;返回所有左叶子之和。 示例 1&#xff1a; 输入: root [3,9…...

Nginx 高性能内存池 ----【学习笔记】

跟着这篇文章学习&#xff1a; c代码实现一个高性能内存池&#xff08;超详细版本&#xff09;_c 内存池库_linux大本营的博客-CSDN博客https://blog.csdn.net/qq_40989769/article/details/130874660以及这个视频学习&#xff1a; nginx的内存池_哔哩哔哩_bilibilihttps://w…...

iOS--frame和bounds

坐标系 首先&#xff0c;我们来看一下iOS特有的坐标系&#xff0c;在iOS坐标系中以左上角为坐标原点&#xff0c;往右为X正方向&#xff0c;往下是Y正方向如下图&#xff1a; bounds和frame都是属于CGRect类型的结构体&#xff0c;系统的定义如下&#xff0c;包含一个CGPoint…...

docker logs 使用说明

docker logs 可以查看某个容器内的日志情况。 前置参数说明 c_name容器名称 / 容器ID logs 获取容器的日志 , 命令如下&#xff1a; docker logs [options] c_name option参数&#xff1a; -n 查看最近多少条记录&#xff1a;docker logs -n 5 c_name--tail与-n 一样 &#…...

Ceph入门到精通-Ceph PG状态详细介绍(全)

本文主要介绍PG的各个状态&#xff0c;以及ceph故障过程中PG状态的转变。 Placement Group States&#xff08;PG状态&#xff09; creating Ceph is still creating the placement group. Ceph 仍在创建PG。activating The placement group is peered but not yet active.…...

【数据结构】二叉树、二叉搜索树、平衡二叉树、红黑树、B树、B+树

概述 二叉树&#xff08;Binary Tree&#xff09;&#xff1a;每个节点最多有两个子节点&#xff08;左子节点和右子节点&#xff09;&#xff0c;没有限制节点的顺序。特点是简单直观&#xff0c;易于实现&#xff0c;但查找效率较低。 二叉搜索树&#xff08;Binary Search…...

【JVM】(二)深入理解Java类加载机制与双亲委派模型

文章目录 前言一、类加载过程1.1 加载&#xff08;Loading&#xff09;1.2 验证&#xff08;Verification&#xff09;1.3 准备&#xff08;Preparation&#xff09;1.4 解析&#xff08;Resolution&#xff09;1.5 初始化&#xff08;Initialization&#xff09; 二、双亲委派…...

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇&#xff0c;在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下&#xff1a; 【Note】&#xff1a;如果你已经完成安装等操作&#xff0c;可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作&#xff0c;重…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域&#xff0c;MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步&#xff0c;这两种通讯协议也正在被逐步融合&#xff0c;形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作&#xff1a;ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等&#xff08;ArcGIS出图图例8大技巧&#xff09;&#xff0c;那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...