Hexo 新增文章後幫你開啟 markdown 編輯器

每次我們開始撰寫文章的時候…會執行以下的流程:

1. 在 command line 敲下熟悉的指令

1
hexo new "我的新文章"

2. 接著打開 atom、MacDown 或者其他 markdown IDE 開始撰寫文章。

本篇將自動化以上兩個步驟,讓我們看下去如何操作吧。

Commend Line 下完直接幫你開啟編輯器,直接撰寫文章!

大家在新增完文章後的動作應該是會開啟 Finder 找到 Hexo 放置的資料夾然後至路徑 Source/_posts 找到剛剛新增的文章,在開啟 Markdown 編輯器或直接開 Sublime Text 撰寫文章,隨著文章變多找起來是相當不易,且動作也煩瑣。

本文參考 liam0205

  1. 首先在 hexo 目錄下找到 scripts 資料夾如果沒有就新增一個囉!
  2. 新增一個 JavaScript 檔案,加入下面的 Sample code
    • 示範開啟 MacDown
    • 註解中示範的是 Sublime Text

Sample Code:

1
2
3
4
5
6
7
var exec = require('child_process').exec;
// Hexo 2.x
hexo.on('new', function(path){
//exec('open -a "/Applications/Sublime Text.app" ' + path);
exec('open -a "/Applications/MacDown.app" ' + path);
});

原理: 用 JavaScript 監聽 “new” event

tommy351 commented on Jan 26

1
2
3
4
5
6
7
8
9
10
11
12
13
You can try to listen to the new event. For example:
var spawn = require('child_process').spawn;
// Hexo 2.x
hexo.on('new', function(path){
spawn('vi', [path]);
});
// Hexo 3
hexo.on('new', function(data){
spawn('vi', [data.path]);
});

Reference:

http://liam0205.me/2015/05/01/open-editor-after-hexo-new-immediately/
http://hexo.io/zh-tw/docs/plugins.html