事出有因

在使用hex new "Post title"命令添加文章时,每次都需要手动定位到source/_post目录下的相关文件进行编辑.
弊端如下:

  1. 目录较深,定位麻烦;
  2. source/_post目录下文件较多时,想找到刚刚创建的文件也是件麻烦事.

如果能在创建文件后,自动打开编辑器并打开markdown文件,那件舒适很多.
github上也有人提出如此想法.

实现思路:在Hexo博客根目录下的scripts目录中新建一个JavaScript脚本(如果没有scripts则手动创建),在其中捕获new事件.

解决方案

win10下配置gvim自动打开markdown文件

前提条件:

  • 已安装gvim,并将gvim安装目录配置到系统环境变量path中,即cmd下执行gvim能打开gvim.
  • 获取hexo版本号,hexo2与hexo3配置方法不一致.
  1. 查询hex版本
    1
    hex version

输出如下:
hexo: 3.9.0

  1. 创建文件scripts/gvim.js

    文件名随意,此处用gvim.js纯粹为了表明调用gvim.

文件内容如下:

1
2
3
4
5
6
var spawn = require('child_process').spawn;

// Hexo 3
hexo.on('new', function(data){
spawn('gvim', [data.path]);
});

附录

hexo2 版本文件内容如下:

1
2
3
4
5
6
var spawn = require('child_process').spawn;

// Hexo 2.x
hexo.on('new', function(path){
spawn('gvim', [path]);
});