Add the correct date format when creating post
[blog.git] / blog-tool.el
1 ;;; blog-tool.el --- Some utility functions of blog  -*- lexical-binding: t; -*-
2
3 ;; Copyright (C) 2017  Peng Li
4
5 ;; Author: Peng Li <seudut@gmail.com>
6 ;; Keywords: lisp
7
8 ;; This program is free software; you can redistribute it and/or modify
9 ;; it under the terms of the GNU General Public License as published by
10 ;; the Free Software Foundation, either version 3 of the License, or
11 ;; (at your option) any later version.
12
13 ;; This program is distributed in the hope that it will be useful,
14 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 ;; GNU General Public License for more details.
17
18 ;; You should have received a copy of the GNU General Public License
19 ;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
21 ;;; Commentary:
22
23 ;; Some functions to create post/page
24
25 ;;; Code:
26
27 (require 'org)
28
29 (defconst blog-root-dir (file-name-directory (buffer-file-name)))
30
31
32 (defun blog-tool-create-post ()
33   "Create a post."
34   (interactive)
35   (let ((title (read-from-minibuffer "Title: "))
36         (filename ""))
37     (setq filename
38           (concat blog-root-dir "/posts/"
39                   (replace-regexp-in-string " " "-" title)
40                   ".org"))
41     (find-file filename)
42     (insert (concat
43              "#+TITLE: " title "\n"
44              "#+AUTHOR: " my-name "\n"
45              "#+EMAIL: " my-email "\n"
46              "#+DATE: "))
47     (org-insert-time-stamp (current-time) nil nil nil "\n")
48     (insert "\n")
49     (save-buffer)))
50
51
52
53
54 (provide 'blog-tool)
55 ;;; blog-tool.el ends here