Write blog in emacs with hexo/org-page
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 60 commits behind CodeFalling:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
tests
.gitignore
.travis-build.sh
.travis.yml
Cask
LICENSE
README.org
blog-admin-backend-hexo.el
blog-admin-backend-org-page.el
blog-admin-backend.el
blog-admin.el

README.org

https://travis-ci.org/CodeFalling/blog-admin.svg https://cdn.rawgit.com/syl20bnr/spacemacs/442d025779da2f62fc86c2082703697714db6514/assets/spacemacs-badge.svg

blog-admin

Write blog in emacs with hexo or org-page.

Preview

https://cloud.githubusercontent.com/assets/5436704/12700452/1aa686ea-c81e-11e5-92c6-5cd5e810ba35.gif

Install

Melpa

Manual

  1. git clone https://github.com/CodeFalling/blog-admin /path/to/blog-admin -b master
  2. (add-to-load-path "/path/to/blog-admin")
  3. (require 'blog-admin)
  4. You may have to install s f ctable as depends

Spacemacs

blog-admin

or install from github(not melpa)

(blog-admin :location (recipe
                       :fetcher github
                       :repo "codefalling/blog-admin"))

in your layer’s packages, then

(use-package blog-admin
  :init
  (progn
    ;; do your configuration here
    ))

Usage

  • (require 'blog-admin) first
  • M-x blog-admin-start to start this.
  • d to delete current post
  • w to write new post
  • s to switch between draft and categories

Open post after create new post

(add-hook 'blog-admin-backend-after-new-post-hook 'find-file)

hexo

orgmode & markdown

Both orgmode or markdown works well.You can even use them at the same time.But this plugin do nothing about render.If you want to make orgmode work with hexo,you’d better use hexo-renderer-org.

configure

(setq blog-admin-backend-path "~/blog")
(setq blog-admin-backend-type 'hexo)
(setq blog-admin-backend-new-post-in-drafts t) ;; create new post in drafts by default
(setq blog-admin-backend-new-post-with-same-name-dir t) ;; create same-name directory with new post

org-page

org-page is pure emacs static blog generator.

configure

(setq blog-admin-backend-type 'org-page)
(setq blog-admin-backend-path "~/code/blog")
(setq blog-admin-backend-new-post-in-drafts t)
(setq blog-admin-backend-new-post-with-same-name-dir t)
(setq blog-admin-backend-org-page-drafts "_drafts") ;; directory to save draft

Thanks

  1. I stole idea that operating posts in table from org-octopress.
  2. The table build on a awesome library: emacs-ctable.
  3. Thanks for s and f who provide a modern API for emacs.