使用Emacs中的org-mode写cnblogs之图片插入

*/-->

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

使用Emacs中的org-mode写cnblogs之图片插入

用Emacs的org-mode来做记录和写博客,真的是太方便了。而其中,原生的org-mode有所欠缺的是图片的插入。

1 效果

2 原生org-mode的图片插入

org-mode中插入图片或者其他的资源,是通过 C-c C-l 把图片的文件路径粘贴进行进行插入。需要在org中显示图片,首先需要Emacs支持图片的显示。这个可以下载一个支持图片的版本(主要是图片显示的lib_png之类的.dll)。

但是这种方式比较麻烦,每次都要创建一个图片,然后,把图片的文件路径粘贴进行进行插入。

3 使用org-download进行图片插入

使用package插件安装org-download,然后配置:

(use-package org-download
:bind ("C-S-y" . org-download-clipboard)
:config
(defun org-download-clipboard ()
"Save the captured image from clipboard to file, and insert into buffer. Or org-download-yank."
(interactive)
(let ((link "http://images2015.cnblogs.com/blog/717724/201703/717724-20170318145647104-177813066.jpg"))
(if (eq 0 (shell-command (format "\"c:/Program\sFiles/ImageMagick-6.9.3-Q16/convert.exe\" clipboard:myimage %s" link) "*screenshot2file*" "*screenshot2file*"))
(org-download-image link)
(org-download-yank)))))

org-download本身会自动在org文档当前目录下创建一个与文档同名的文件夹来保存图片,然后支持多种途径的图片插入,插入之后会复制或者下载一张图片到图片文件夹下面:

  • 用url把图片插入,然后自动下载;
  • 复制图片文件路径,然后插入;
  • 拖拽图片插入。

但是,org-download不会把剪切板中的图片自动保存一个图片文件,然后插入。所以,必须要借助于外部程序。可以使用任意一个带命令行参数的图片保存器将剪切板中的图片进行保存。有人写了一个csharp的程序,很小很小就可以做到了。我这里直接使用ImageMagick ,因为这个软件实在是太强大了,而且是免费的。路径我们可以根据自己的安装路径来进行配置,然后,先调用里面的convert.exe把剪切板里面的图片保存到一个临时目录下面。我这里是 d:/temp/ ,这个可以根据自己的需要来设置。然后,定义了一个快捷键 C-S-Y ,比原来的粘贴键多了一个shift,就可以粘贴图片了。

4 截图软件

剪切板中的图片可以是从另外一个地方复制来的,但更多的场景是使用截图软件进行截图,然后粘贴的。我使用的截图软件是faststone,程序很小,但是功能很强大,既可以截图也可以录视频,还可以编辑视频,对于简单的插入便条,字幕之类的处理,特别方便。还可以设置快捷键,截选择框、窗口、滚动条内窗口内容等等,非常方便。下面截个图粘贴一下做个示例:

Date: 2017-01-13 21:41

Created: 2017-03-18 周六 14:56

Emacs 26.0.50 (Org mode 8.2.10)

Validate

使用Emacs中的org-mode写cnblogs之图片插入的更多相关文章

  1. 用emacs的org2blog组件写cnblogs博客 -- 环境配置及使用

    Table of Contents 配置 使用 创建一篇博文并发布 更新一篇博文 删除一篇博文 待办 本文给出了一个安装.配置org2blog的方法,实现在emacs中书写blog文章.并发布到cnb ...

  2. 在Emacs中使用plantuml画UML图

    在Emacs中使用plantuml画UML图 */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #83 ...

  3. 使用org-mode写cnblogs博客

    使用org-mode写cnblogs博客 */--> pre.src {background-color: #002b36; color: #839496;} pre.src {backgrou ...

  4. Emacs中的拼写检查

    无论是在Emacs中写英文日记(diary).Org mode笔记,还是撰写程序的注释和文档,拼写检查都是一项提高工作效率.保证成果品质的必不可缺的工具.拼写检查对于常见的文字处理软件(如Word.L ...

  5. Emacs 中使用中文插件 eim

    在 Emacs 中输入中文,一般用 ibus 一类的输入法也能应付,但来回切换有点麻烦,这里介绍国人写的一个好插件 eim. - 安装 由于在 list-packages 中没有找到这个插件,所以不能 ...

  6. [转载]生活在 Emacs 中

    Brian Bilbrey2002 年 8 月 20 日发布 教程简介 本教程讲什么? Emacs 是一个流行的无模式文本编辑器,有许多强大的功能.本教程将教您使用 Emacs 的基础知识.为了让您很 ...

  7. 在Emacs中使用ECB(转载)

    转自:http://joerong666.iteye.com/blog/1813876 By:             潘云登 Date:          2009-7-9 Email:       ...

  8. Windows平台下在Emacs中使用plantuml中文乱码问题(已解决)

    Windows平台下在Emacs中使用plantuml中文乱码问题(已解决) */--> code {color: #FF0000} pre.src {background-color: #00 ...

  9. JavaSE复习日记 : 继承关系和super关键字以及继承关系中方法的覆写

    /* * 类的继承和super关键字 * * 软件开发的三大目的: * 可拓展性; * 可维护性; * 可重用性; * * 这里单说下可重用性这一项: * 为了代码复用,复用方式有: * 函数的调用复 ...

随机推荐

  1. sql server 2005导出数据

    */ EXEC sp_configure 'show advanced options', 1 GO */     配置选项 'show advanced options' 已从 0 更改为 1.请运 ...

  2. webstrom自定义代码块的设置方法

    webstrom里面的自定义代码块叫做活动模版 在文件 -> 设置 -> 编辑器 -> 活动模版可以打开 里面的$var$ 代表一个变量  两个相同的$var$在不全后可以同时修改, ...

  3. android 界面悬浮框实现

    // 定义浮动窗口布局 private View mFloatLayout; // 定义浮动窗口布局对象 private WindowManager.LayoutParams wmParams; // ...

  4. Junit单元测试的简单使用(主要是在spring框架下的项目)

    首先是解释什么是单元测试,单元测试是指对于一个大型项目里,对于单一模块或者单一接口的测试. 然后解释为什么要写单元测试,首先对于一个大型的项目,如果你每次都要重启一遍服务器调页面或者接口的bug,那就 ...

  5. 设置自己Eclipse代码风格(内部)

    http://www.cnblogs.com/farseer810/p/4391318.html 经过这几次的代码提交,发现很多人的代码风格不够规范.个人认为很有必要强制性规定一下代码的规范. 整体来 ...

  6. SQL清除所有数据库日志脚本

    --SQL清除所有数据库日志脚本 declare @CurrentDataBaseName nvarchar(100) declare @CurrentDataBaseID nvarchar(100) ...

  7. xshell 图形化连接ubuntu

    原文: http://jingyan.baidu.com/article/d45ad148967fcd69552b80f6.html Xmanager4系列软件是一套非常好的liunx远程操作,尤其是 ...

  8. js选择一个选项 跳出另一个选项 跳出一个输入框

    跳出输入框 <script language="javascript"> function $(obj){return document.getElementById( ...

  9. mahout 查看kmeans结果的命令

    $mahout seqdumper -i  output/clusters-1/part-r-00000 直接在控制台上显示,要写入文件可以在后面加上-o <输出路径> mahout中的k ...

  10. Zigbee协议栈OSAL层API函数【转载】

              OSAL层提供了很多的API来对整个的协议栈进行管理.主要有下面的几类:信息管理.任务同步.时间管理.中断管理.任务管理.内存管理.电源管理以及非易失存储管理.看到这些管理是不是感 ...