mirror of
https://github.com/pestctrl/emacs-config.git
synced 2026-02-16 08:14:15 +00:00
44 lines
1.5 KiB
EmacsLisp
44 lines
1.5 KiB
EmacsLisp
(defun my/convert-to-format ()
|
|
(interactive)
|
|
(cl-flet ((add-drawer (regex label)
|
|
(save-excursion
|
|
(when (re-search-forward regex nil t)
|
|
(goto-char (line-beginning-position))
|
|
(insert ":" label ": ")))))
|
|
(re-search-forward "^\\*\\*\\*\\* ")
|
|
(goto-char (line-beginning-position))
|
|
(org-narrow-to-subtree)
|
|
(add-drawer "^https://goo.gl" "GOOGLE_MAPS_URL")
|
|
(add-drawer (rx line-start (+ digit) "." (+ digit) ", ")
|
|
"COORDINATES")
|
|
(add-drawer "Tainan City"
|
|
"ADDRESS")
|
|
(add-drawer "^http"
|
|
"WEBSITE")
|
|
(add-drawer "^English:"
|
|
"ENGLISH_TRANSLATION")
|
|
(goto-char (line-end-position))
|
|
(insert "\n:PROPERTIES:")
|
|
(re-search-forward "goo.gl" nil t)
|
|
(goto-char (line-end-position))
|
|
(insert "\n:END:")
|
|
(widen)))
|
|
|
|
(defun my/populate-taiwan-fields (english address website maps-url coordinates)
|
|
(interactive
|
|
(list
|
|
(read-string "English? ")
|
|
(read-string "Address? ")
|
|
(read-string "Website? ")
|
|
(read-string "Google Maps URL? ")
|
|
(read-string "Coordinates? ")))
|
|
(cl-flet ((add-valid (key value)
|
|
(when (not (string-empty-p value))
|
|
(org-entry-put (point) key value))))
|
|
(add-valid "ENGLISH_TRANSLATION" english)
|
|
(add-valid "ADDRESS" address)
|
|
(add-valid "COORDINATES" coordinates)
|
|
(add-valid "WEBSITE" website)
|
|
(add-valid "GOOGLE_MAPS_URL" maps-url)))
|
|
|
|
(provide 'taiwan)
|