summaryrefslogtreecommitdiff
path: root/emacs/inits/27-gemini.el
diff options
context:
space:
mode:
Diffstat (limited to 'emacs/inits/27-gemini.el')
-rw-r--r--emacs/inits/27-gemini.el41
1 files changed, 41 insertions, 0 deletions
diff --git a/emacs/inits/27-gemini.el b/emacs/inits/27-gemini.el
new file mode 100644
index 0000000..ff7db33
--- /dev/null
+++ b/emacs/inits/27-gemini.el
@@ -0,0 +1,41 @@
+;; Time-stamp: <2020-11-16 16h06 UTC>
+
+(use-package elpher
+ :ensure t
+ :defer)
+
+(use-package visual-fill-column
+ :ensure t
+ :defer)
+
+(defvar gemlog-directory (expand-file-name "~/hobbies/l-3.space/"))
+(defvar gemlog-file-name "%y%02m%02d")
+(defvar gemlog-time-string "%Y-%02m-%02d %02Hh%02M %Z")
+(defvar gemlog-time-zone "UTC")
+
+(use-package gemini-mode
+ :load-path "~/.emacs.d/scripts/gemini.el/"
+ :hook (gemini-mode . (lambda ()
+ (setq time-stamp-time-zone gemlog-time-zone
+ time-stamp-format gemlog-time-string)
+ (auto-fill-mode -1)
+ (set-fill-column 80))))
+
+(defun gemlog-new-entry ()
+ (interactive)
+ (let* ((title (read-string "Title: "))
+ (number 1)
+ (file (format "%s/log-%s-%d.gmi"
+ gemlog-directory
+ (format-time-string gemlog-file-name nil gemlog-time-zone)
+ number)))
+ (while (file-exists-p file)
+ (setq number (+ 1 number))
+ (setq file (format "%s/log-%s-%d.gmi"
+ gemlog-directory
+ (format-time-string gemlog-file-name nil gemlog-time-zone)
+ number)))
+ (find-file file)
+ (insert "Time-stamp: <>") (newline) (newline)
+ (insert "# " title) (newline) (newline)
+ (time-stamp)))