(defun blog-tool-create-post ()
"Create a post."
(interactive)
- (let ((title (read-from-minibuffer "Title:"))
- (date (format-time-string "%Y-%m-%d"))
+ (let ((title (read-from-minibuffer "Title: "))
(filename ""))
(setq filename
(concat blog-root-dir "/posts/"
- date "-"
(replace-regexp-in-string " " "-" title)
".org"))
(find-file filename)
"#+TITLE: " title "\n"
"#+AUTHOR: " my-name "\n"
"#+EMAIL: " my-email "\n"
- "#+DATE: " date " " (format-time-string "%A") "\n"
- "\n"))))
+ "#+DATE: "))
+ (org-insert-time-stamp (current-time) nil nil nil "\n")
+ (insert "\n")
+ (save-buffer)))
+
+(defun blog-tool-start-server ()
+ "Start a http server on local folder for test."
+ (interactive)
+ ;; need to check if 8000 port is in use or not
+ (let ((process-name "blog-server")
+ (buffer-name "blog-srv-buf")
+ (port-number "8000")
+ (default-directory "~/project/blog/_site/"))
+ (when (get-buffer buffer-name)
+ (with-current-buffer buffer-name
+ (erase-buffer)))
+ (start-process process-name buffer-name "python" "-m" "SimpleHTTPServer" port-number)
+ (split-window-below (- (/ (window-total-height) 3)))
+ (other-window 1)
+ (switch-to-buffer buffer-name)
+ (other-window 1)))
+
+(defun blog-tool-stop-server ()
+ "Stop the http server."
+ (interactive)
+ (kill-process (get-process "blog-server")))