emacs-china / EGO

EGO is a static site generator that depends on Emacs, Git and Org-mode.
94 stars 11 forks source link

Index.org not used #79

Closed tmalsburg closed 8 years ago

tmalsburg commented 8 years ago

This is a really cool package but I have one problem: I edited index.org in the root directory but it isn't used. Instead, I get an index.html that contains a list of my blog posts. Similarly there is an about.org in the root directory but the file about/about.html contains something based on the template (about.mustache). What do I have to do if I want to use about.org and index.org?

Thank you!

kuangdash commented 8 years ago

First, make sure that the file name of 'index.org' and 'about.org' is lowercase. And ...

Can I see your 'ego-project-config-alist'? The variable must be configured because the key ':repository-directory' won't be generated automatically.

tmalsburg commented 8 years ago

The files are in lower case. I think I didn't create them myself but they were created by M-x ego-new-my-repository. Below is my configuration. I hope I haven't made an embarrassing mistake.

(setq ego-project-config-alist
            `(("homepage"
                 :repository-directory "~/Documents/Uni/Blog/www"
                 :repository-org-branch "master"
                 :repository-html-branch "master"
                 :site-domain "http://pages.ucsd.edu/~tvondermalsburg/"
                 :site-main-title "Computational Psycholinguistics, Statistics, R, Emacs, …"
                 :site-sub-title ""
                 :about ("About" "/about/")
                 :theme-root-directory ("/home/malsburg/Documents/Uni/Blog/www/themes/")
                 :summary ()
                 :source-browse-url ("Github" "https://github.com/tmalsburg")
                 :personal-disqus-shortname "tmalsburg"
                 :confound-email nil
                 :ignore-file-name-regexp "README.org"
                 :web-server-docroot "~/Documents/Uni/Blog/www"
                 :web-server-port 8080)))

Thanks for having a look.

kuangdash commented 8 years ago

I tried your configure. There is one problem here: :repository-directory and :web-server-docroot should not be the same, because EGO will delete the whole :web-server-docroot while Full publish and Test full publish in M-x ego-do-publication

Functions ego--generate-default-index and ego--generate-default-about generate the /index.html and /about/index.html while "index.org" and "about.org" don't exist. It seems that in your condition the two functions have executed while there are "index.org" and "about.org" in your repository.

So, use M-: and try: (member (expand-file-name "index.org" "~/Documents/Uni/Blog/www") (ego--git-all-files "~/Documents/Uni/Blog/www"))

If it returns nil (my result is not 'nil' and so do "index.org" and "about.org"), I recommend use ,(expand-file-name "~/Documents/Uni/Blog/www") in ego-project-config-alist.

Otherwise, add #+URI: / and #+URI: /about in the "index.org" and "about.org" though I think it doesn't matter……

tmalsburg commented 8 years ago

Thank you for your suggestions. It is working now and I think the problem was that I only did ego-test-current-page and not ego-do-publication. When I only do the former, I get an index of the blog posts in index.html, only when I do publish the correct index.html is generated from index.org.