Giter Club home page Giter Club logo

picgo-plugin-folder-name's Introduction

picgo-plugin-folder-name

version license downloads fork

Use part of the local path as part of the cloud path.

将部分本地路径,作为部分云端路径。便于分文件夹管理文件。

picgo-plugin-folder-name

上图通过配置,包含 PNG 图片的向上 1 层路径,但遇到 assets 时不计入已向上层数。其中 imgs 是云端路径, picgo 是本地路径。

一、示例

以下目录结构作为示例:

Repos
└─ picgo-plugin-folder-name
	└─ test
		│-README.md
		└─assets
    		*evgo2017.png

将图片拉入 md 文件,此时图片路径为 assets/evgo2017.png。修改插件相关参数,以下为图片路径变化的测试结果:

序号 向上层数 忽略名称 结果
1 xxx/evgo2017.png
2 assets xxx/evgo2017.png
3 assets test xxx/evgo2017.png
4 1 xxx/assets/evgo2017.png
5 2 xxx/test/assets/evgo2017.png
6 3 xxx/picgo-plugin-folder-name/test/assets/evgo2017.png
7 1 assets xxx/test/evgo2017.png
8 2 assets xxx/picgo-plugin-folder-name/test/evgo2017.png
9 3 assets xxx/Repos/picgo-plugin-folder-name/test/evgo2017.png

二、安装

1. 命令行 CLI

picgo install folder-name

2. 界面 GUI

在 PicGo 插件设置内搜索 folder-name

3. 离线安装

命令行或者界面均可这样离线安装,会在对应 node_modules 内建立一个快捷方式到克隆的项目内。

需要注意 npm 命令的调用位置,CLI 存储地址GUI 存储地址不同。

git clone https://github.com/evgo2017/picgo-plugin-folder-name
// 到对应安装目录
npm install [clone后的本地项目地址]

三、配置

1. 配置项

配置项 类型 含义 默认值
height Number 向上层数,包含几层父文件夹 1
ignore String 忽略名称,空格隔开多个名称

2. 详细解释

height 为 0,则不会包含其父文件夹名称,插件此时不进行任何操作。

若文件路径中某文件夹的名称,存在于 ignore 配置项中,则会自动忽略,不加入 height 层数的计算,可查看示例。

3. 修改配置

① 命令行修改

picgo set folder-name

② GUI 修改

在 PicGo 的插件设置中,点击此插件的右下角,选择配置plugin - folder-name即可,可参考插件设置

③ 配置文件

修改配置文件。

"picgoPlugins": {
  "picgo-plugin-folder-name": true
},
"picgo-plugin-folder-name": {
  "height": "1",
  "ignore": "assets"
}

四、最后

1) 开发此插件起始原因

我的每篇文章为独立文件夹,内部 README.md 为主内容,assets 用来存放图片,可参考 test 文件夹结构。为了便于管理每一篇文章图片,需要对应文章的图片在对应的文件夹下,但不需要 assets 这一层。

使用 Typora 书写 Markdown 文章,配置好图片上传服务后,移入的图片会通过 PicGo 自动上传至云端,地址随后改为云端地址,自己不想每次手动配置存储路径,所以开发了此插件。

2)我的 Typora 图像设置

typora-image-setting

3)联系方式

若有问题,请先查阅以下相关文档,最后欢迎提 issues,或发邮件至 [email protected]

欢迎到我的个人网站 https://evgo2017.com/repo 浏览其他项目。也许你会对这款 Typora 主题 typora-theme-orange-heart 感兴趣。

4)参考文档

MIT © Evgo2017

picgo-plugin-folder-name's People

Contributors

evgo2017 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

picgo-plugin-folder-name's Issues

图片的高度影响上传路径

typora + PicGo + github搭建的图床
typora 版本: 1.3.8
PicGo(app) 版本:2.3.1-beta.6

测试过程中发现,不同的图片上传的路径不一样,主要为以下两种情况。

  1. 图片高度小于阈值(未测试)时,图片上传的路径符合预期;

  2. 图片高度高于阈值(未知)时,图片上传的路径会变为picgo的如下路径:

    C:\Users\Administrator\AppData\Roaming\picgo

为什么开启了插件后上传路径未改变?

我的测试文件 test.md 位置为 D:\Users\Lenovo\Desktop\test.md,在 Typora 的 偏好设置 -> 图像 中,不管是

  1. 开启了 插入图片时自动上传 然后在文档中粘贴图片,还是
  2. 不开启自动上传然后在粘贴完图片后右键手动上传,

这两种方式 PicGo 返回的 URL 都没有包含父文件夹名称。我已经在插件中设置 向上层数 为1,忽略名称 没有填写,如图:

image

所以我想这样设置后,PicGo 上传的路径应该为类似 https://cdn.jsdelivr.net/gh/burgessx/imgbed@main/img/Desktop/20210412134726.png 才对,然而实际上为 https://cdn.jsdelivr.net/gh/burgessx/imgbed@main/img/20210412134726.png

下面是我的一种 Typora 设置:

image

初次使用 PicGo,望不吝赐教,感谢~

与rename-file冲突

同时安装folder-name与rename-file时folder-name隐藏path规则不起作用,不知到底那个插件影响那个

单次上传多个文件时,插件不起作用

typora + PicGo + github搭建的图床
typora 版本: 0.11.18
PicGo(app) 版本:2.3.0

点击typora菜单栏的"格式" -> 图像 -> 上传所有本地图片,当上传数量超过一张时,此插件不起作用。只有1张图片,或右键某张图片上传时有效。
多张图片时PicGo日志(最后显示的文件名前少了一层目录MWA):

2022-10-12 15:15:50 [PicGo INFO] [PicGo Server] get the request {"list":["D:\WorkSpace\Utilities\MarkDown\Images\MWA\image-20221012151431469.png","D:\WorkSpace\Utilities\MarkDown\Images\MWA\image-20221012151543072.png"]}
2022-10-12 15:15:50 [PicGo INFO] [PicGo Server] upload files in list
2022-10-12 15:15:50 [PicGo INFO] Before transform
2022-10-12 15:15:50 [PicGo INFO] Transforming... Current transformer is [path]
2022-10-12 15:15:50 [PicGo INFO] Before upload
2022-10-12 15:15:50 [PicGo INFO] beforeUploadPlugins: folder-name running
2022-10-12 15:15:50 [PicGo INFO] beforeUploadPlugins: renameFn running
2022-10-12 15:15:50 [PicGo INFO] Uploading... Current uploader is [githubPlus]
2022-10-12 15:15:51 [PicGo SUCCESS]
https://cdn.jsdelivr.net/gh/star-tong/PicturesBed/img/image-20221012151431469.png
https://cdn.jsdelivr.net/gh/star-tong/PicturesBed/img/image-20221012151543072.png

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.