enhanced archive and rss
This commit is contained in:
parent
3d5534e6d7
commit
0082064358
5 changed files with 38 additions and 8 deletions
32
project.el
32
project.el
|
@ -119,13 +119,30 @@
|
|||
(menu '("<a href=\"#preamble\">↑ Top ↑</a>"))
|
||||
"</div>"))
|
||||
|
||||
(defun y/org-get-keywords ()
|
||||
(org-element-map (org-element-parse-buffer 'element) 'keyword
|
||||
(lambda (keyword) (cons (org-element-property :key keyword)
|
||||
(org-element-property :value keyword)))))
|
||||
|
||||
(defun y/org-get-meta (keyword)
|
||||
(cdr (assoc keyword (y/org-get-keywords))))
|
||||
|
||||
(defun y/get-meta (file meta-name)
|
||||
"Return the value of the meta of an org-mode file.
|
||||
|
||||
(y/get-meta file \"DESCRIPTION\")
|
||||
"
|
||||
(org-babel-with-temp-filebuffer file (y/org-get-meta meta-name)))
|
||||
|
||||
(defun date-format-entry (entry _style project)
|
||||
"Return string for each ENTRY in PROJECT."
|
||||
(when (string-match "posts/.*" entry)
|
||||
(let* ((file (org-publish--expand-file-name entry project))
|
||||
(title (org-publish-find-title entry project))
|
||||
(date (format-time-string "%Y-%m-%d" (org-publish-find-date entry project))))
|
||||
(format "- [%s] [[file:%s][%s]]\n" date file title))))
|
||||
(date (format-time-string "%Y-%m-%d" (org-publish-find-date entry project)))
|
||||
(keywords (y/get-meta file "KEYWORDS"))
|
||||
(description (y/get-meta file "DESCRIPTION")))
|
||||
(format "- [%s] [[file:%s][%s]] /(%s)/ \n %s" date file title keywords description))))
|
||||
|
||||
(defun org-blog-sitemap-fn-descr (descr title list)
|
||||
"Return sitemap using TITLE and LIST returned by `org-blog-sitemap-format-entry'."
|
||||
|
@ -207,6 +224,9 @@ Return output file name."
|
|||
(cond ((not (directory-name-p entry))
|
||||
(let* ((file (org-publish--expand-file-name entry project))
|
||||
(title (org-publish-find-title entry project))
|
||||
(subtitle (y/get-meta (format "%s/%s" posts-dir entry) "SUBTITLE"))
|
||||
(keywords (y/get-meta (format "%s/%s" posts-dir entry) "KEYWORDS"))
|
||||
(description (y/get-meta (format "%s/%s" posts-dir entry) "DESCRIPTION"))
|
||||
(date (format-time-string "%Y-%m-%d" (org-publish-find-date entry project)))
|
||||
(link (concat "posts/" (file-name-sans-extension entry) ".html")))
|
||||
(with-temp-buffer
|
||||
|
@ -214,6 +234,14 @@ Return output file name."
|
|||
(org-set-property "RSS_PERMALINK" link)
|
||||
(org-set-property "PUBDATE" date)
|
||||
(org-set-property "ID" (org-auto-id-format title))
|
||||
(when subtitle
|
||||
(org-set-property "SUBTITLE" subtitle))
|
||||
(when keywords
|
||||
(insert "Keywords: ")
|
||||
(insert keywords)
|
||||
(insert "\n\n"))
|
||||
(when description
|
||||
(insert description))
|
||||
(buffer-string))))
|
||||
((eq style 'tree)
|
||||
(file-name-nondirectory (directory-file-name entry)))))
|
||||
|
|
BIN
project.el.sig
BIN
project.el.sig
Binary file not shown.
|
@ -2,8 +2,9 @@
|
|||
#+AUTHOR: Yann Esposito
|
||||
#+EMAIL: yann@esposito.host
|
||||
#+DESCRIPTION: Articles
|
||||
- [2019-08-18] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/project-el/index.org][Autoload Script by project]]
|
||||
|
||||
- [2019-08-17] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/troll-2/index.org][Troll 2]]
|
||||
|
||||
- [2019-08-17] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/new-blog.org][New Blog]]
|
||||
- [2019-08-18] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/project-el/index.org][Autoload Script by project]] /(programming, blog, org-mode)/
|
||||
A script I use to load safely an eLISP file when entering a new project directory.
|
||||
- [2019-08-17] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/troll-2/index.org][Troll 2]] /(movie)/
|
||||
I watched what may be the worse movie of all time and I still enjoyed greatly the show.
|
||||
- [2019-08-17] [[file:/Users/yaesposi/y/her.esy.fun/src/posts/new-blog.org][New Blog]] /(programming, blog, org-mode, web, css)/
|
||||
Meta article about how I generate this blog.
|
|
@ -4,6 +4,7 @@
|
|||
#+EMAIL: yann@esposito.host
|
||||
#+DATE: [2019-08-18 Sun]
|
||||
#+KEYWORDS: programming, blog, org-mode
|
||||
#+DESCRIPTION: A script I use to load safely an eLISP file when entering a new project directory.
|
||||
#+OPTIONS: auto-id:t
|
||||
|
||||
#+begin_quote
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#+Email: yann@esposito.host
|
||||
#+Date: [2019-08-17 Sat]
|
||||
#+KEYWORDS: movie
|
||||
#+DESCRIPTION:
|
||||
#+DESCRIPTION: I watched what may be the worse movie of all time and I still enjoyed greatly the show.
|
||||
#+LANGUAGE: en
|
||||
#+LANG: en
|
||||
#+OPTIONS: H:5 auto-id:t
|
||||
|
|
Loading…
Reference in a new issue