美文网首页Sublime Text
sublime Markdown 图片直接复制

sublime Markdown 图片直接复制

作者: AlexSun1995 | 来源:发表于2019-05-06 23:02 被阅读16次

需求

sublime 相对VScode有更快的启动速度,这一点是我比较偏爱sublime的原因。 使用sublime编辑markdown的时候,有时候需要频繁插入截图,但是剪切板中的截图不能直接拷贝到文本中,造成markdown插入图片很麻烦。
有一种想法:截图自动保存在本地某一个位置,sublime插件自动找到刚刚获取的截图位置,修改为
的markdown图片形式自动插入到编辑文本中。
幸运的是,有人已经做过这件事情了 https://blog.csdn.net/darkread/article/details/79682380

实现

sublime自定义python插件的方法看这里,介绍相当详细了
https://www.jianshu.com/p/e2558ee1d503
python脚本主要拷贝自https://blog.csdn.net/darkread/article/details/79682380
,此脚本注意以下几点:

  1. 脚本读取当前编辑文件的所在目录下的/image子文件夹,意味着应该把全部截图都放在这里
  2. 图片文件的选择根据编辑时间,脚本自动选择最近编辑的文件。
    脚本:
import sublime
import sublime_plugin
import sys
import os

class SaveImage(sublime_plugin.TextCommand):
    def run(self, edit):
        full = self.view.file_name()
        print("hello world")
        print("full", full)
        [p,f] = os.path.split(full)
        print("path", p)
        print("file",f)
        # 获取剪切板 获取不到图片 不使用
        clipf = sublime.get_clipboard()
        for root,dirs,files in os.walk(os.path.join(p,"image")):
            print("root", root)
            print("dirs", dirs)
            print("files", files)
            mtime=0
            lastfile=""
            for f1 in files:
                (main,ext) = os.path.splitext(f1)
                print("ext",ext)
                if ext and ext.lower() not in [".jpg",".png",".gif",".bmp",".jpeg"]:
                    continue
                mtime1 = os.path.getmtime(os.path.join(root,f1))
                if mtime < mtime1:
                    lastfile = os.path.join(p,"image", f1)
                    mtime=mtime1
            self.flist = files
            self.path = root
            for regoin in self.view.sel():
                self.view.insert(edit,regoin.begin(),"![%s]()"%lastfile)

保存文件名应该和类相同,ctrl + s就可以自动选择sublime的插件目录,文件名为SaveImage.py
ctrl + ` 调出sublime自带的python解释器命令行界面,输入

view.run_command("save_image")

可进行测试,注意到和命令参数为文件/类名称的下划线风格命名。
设置快捷键

{ "keys": ["shift+ctrl+command+p"], "command": "save_image"}

就可以在输入上述快捷点的时候插入图片(快捷点设置为个人喜好)。

相关文章

  • sublime Markdown 图片直接复制

    需求 sublime 相对VScode有更快的启动速度,这一点是我比较偏爱sublime的原因。 使用sublim...

  • 2018-08-08

    Sublime 配置markdown Sublime Text3 + Markdown + 实时预览 Markdo...

  • sublime3集成markdown

    sublime3集成markdown 1、sublime 安装支持markdown的插件 安装Markdown E...

  • Java笔记 day03

    这篇是使用印象笔记直接做的,复制过来格式太渣了,之后用的markdown写的就好多了,还有好几个图片也没有复制过来

  • iPic - MAC图床神器

    原文 有了图床神器 iPic,不论屏幕截图、还是复制图片,都可以自动上传、保存 Markdown 格式的链接,直接...

  • iPic: Mac 下的图床神器(图片上传工具)

    有了图床神器 iPic,不论屏幕截图、还是复制图片,都可以自动上传、保存 Markdown 格式的链接,直接粘贴插...

  • 牛X的图床、文件上传工具推荐

    有了图床神器 iPic,不论屏幕截图、还是复制图片,都可以自动上传、保存 Markdown 格式的链接,直接粘贴插...

  • markdown

    表格文件先在excel生成,然后直接复制粘贴markdown

  • Sublime 配置

    Sublime Text:学习资源篇 Sublime插件:增强篇 Sublime插件:Markdown篇 Subl...

  • markdown in sublime text 3

    1. Config markdown in sublime text 3 Markdown EditingMark...

网友评论

    本文标题:sublime Markdown 图片直接复制

    本文链接:https://www.haomeiwen.com/subject/eubjoqtx.html