diff --git a/README.rst b/README.rst index 109f6b9f..3a62d0ca 100644 --- a/README.rst +++ b/README.rst @@ -1,14 +1,14 @@ Pelican -####### +======= .. image:: https://secure.travis-ci.org/getpelican/pelican.png?branch=master :target: http://travis-ci.org/#!/getpelican/pelican :alt: Travis-ci: continuous integration status. -Pelican is a simple weblog generator, written in `Python `_. +Pelican is a static site generator, written in Python_. * Write your weblog entries directly with your editor of choice (vim!) - in `reStructuredText `_ or `Markdown `_ + in reStructuredText_ or Markdown_ * Includes a simple CLI tool to (re)generate the weblog * Easy to interface with DVCSes and web hooks * Completely static output is easy to host anywhere @@ -22,40 +22,49 @@ Pelican currently supports: * Comments, via an external service (Disqus). (Please note that while useful, Disqus is an external service, and thus the comment data will be somewhat outside of your control and potentially subject to data loss.) -* Theming support (themes are created using `jinja2 `_) +* Theming support (themes are created using Jinja2_ templates) * PDF generation of the articles/pages (optional) * Publication of articles in multiple languages * Atom/RSS feeds * Code syntax highlighting +* Compilation of `LESS CSS`_ (optional) * Import from WordPress, Dotclear, or RSS feeds * Integration with external tools: Twitter, Google Analytics, etc. (optional) -Have a look at `the documentation `_ for -more information. +Have a look at the `Pelican documentation`_ for more information. Why the name "Pelican"? ------------------------- +----------------------- -Heh, you didn't notice? "Pelican" is an anagram for « Calepin » ;) +"Pelican" is an anagram for *calepin*, which means "notebook" in French. ;) Source code ----------- -You can access the source code via git at: https://github.com/ametaireau/pelican +You can access the source code at: https://github.com/getpelican/pelican -If you feel hackish, have a look at the explanation of `Pelican's internals -`_. +If you feel hackish, have a look at the explanation of `Pelican's internals`_. Feedback / Contact us --------------------- -If you want to see new features in Pelican, don't hesitate to offer suggestions, -clone the repository, etc. There are many ways to `contribute -`_. That's open source, dude! +If you want to see new features in Pelican, don't hesitate to offer +suggestions, clone the repository, etc. There are many ways to contribute_. +That's open source, dude! -Contact me at "alexis at notmyidea dot org" for any request/feedback! You can -also join the team at `#pelican on irc.freenode.org -`_ -(or if you don't have any IRC client, use `the webchat -`_) -for quick feedback. +Send a message to "alexis at notmyidea dot org" with any requests/feedback! You +can also join the team at `#pelican on Freenode`_ (or if you don't have an IRC +client handy, use the webchat_ for quick feedback. + +.. Links + +.. _Python: http://www.python.org/ +.. _reStructuredText: http://docutils.sourceforge.net/rst.html +.. _Markdown: http://daringfireball.net/projects/markdown/ +.. _Jinja2: http://jinja.pocoo.org/ +.. _`LESS CSS`: http://lesscss.org/ +.. _`Pelican documentation`: http://docs.getpelican.com/latest/ +.. _`Pelican's internals`: http://docs.getpelican.com/en/latest/internals.html +.. _`#pelican on Freenode`: irc://irc.freenode.net/pelican +.. _webchat: http://webchat.freenode.net/?channels=pelican&uio=d4 +.. _contribute: http://docs.getpelican.com/en/latest/contribute.html diff --git a/docs/changelog.rst b/docs/changelog.rst index da77f97e..1d50b9d0 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -1,8 +1,8 @@ Release history ############### -3.0.0 (XXXX-XX-XX) -================ +3.0.0 (2012-08-06) +================== * Refactored the way URLs are handled * Improved the English documentation @@ -20,7 +20,7 @@ Release history * Fixed a bunch of bugs :-) 2.8.0 (2012-02-28) -================ +================== * Dotclear importer * Allow the usage of Markdown extensions diff --git a/docs/faq.rst b/docs/faq.rst index 542d1b74..dd7428eb 100644 --- a/docs/faq.rst +++ b/docs/faq.rst @@ -26,7 +26,8 @@ suggestions or problems you might have via IRC or the issue tracker. If you want to contribute, please fork `the git repository `_, create a new feature branch, make your changes, and issue a pull request. Someone will review your changes as soon -as possible. Please refer to the :ref:`contribute` section for more details. +as possible. Please refer to the :doc:`How to Contribute ` section +for more details. You can also contribute by creating themes and improving the documentation. diff --git a/docs/getting_started.rst b/docs/getting_started.rst index 3733812b..5150fcf6 100644 --- a/docs/getting_started.rst +++ b/docs/getting_started.rst @@ -14,13 +14,15 @@ If you don't have ``pip`` installed, an alternative method is ``easy_install``:: $ easy_install pelican While the above is the simplest method, the recommended approach is to create -a virtual environment for Pelican via `virtualenv `_ -and `virtualenvwrapper `_ -before installing Pelican:: +a virtual environment for Pelican via virtualenv_ and virtualenvwrapper_ before +installing Pelican. Assuming you've followed the virtualenvwrapper +`installation `_ +and `shell configuration +`_ +steps, you can then open a new terminal session and create a new virtual +environment for Pelican:: - $ sudo pip install --upgrade virtualenv virtualenvwrapper $ mkvirtualenv pelican - $ pip install pelican Once the virtual environment has been created and activated, Pelican can be be installed via ``pip`` or ``easy_install`` as noted above. Alternatively, if @@ -43,9 +45,9 @@ Markdown library as well:: Upgrading --------- -If you installed a stable Pelican release via pip or easy_install and wish to -upgrade to the latest stable release, you can do so by adding ``--upgrade`` to -the relevant command. For pip, that would be:: +If you installed a stable Pelican release via ``pip`` or ``easy_install`` and +wish to upgrade to the latest stable release, you can do so by adding +``--upgrade`` to the relevant command. For pip, that would be:: $ pip install --upgrade pelican @@ -72,11 +74,11 @@ Kickstart a blog ================ Following is a brief tutorial for those who want to get started right away. -We're going to assume Pelican was installed in a virtual environment via the -following steps (if you're not using a virtual environment for Pelican, you can -skip to the ``pelican-quickstart`` command):: +We're going to assume that virtualenv_ and virtualenvwrapper_ are installed and +configured; if you've installed Pelican outside of a virtual environment, +you can skip to the ``pelican-quickstart`` command. Let's first create a new +virtual environment and install Pelican into it:: - $ sudo pip install --upgrade virtualenv virtualenvwrapper $ mkvirtualenv pelican $ pip install pelican Markdown @@ -107,11 +109,21 @@ instead:: $ make regenerate -To serve the site so it can be previewed in your browser:: +To serve the site so it can be previewed in your browser at +http://localhost:8000:: $ make serve -Visit http://localhost:8000 in your browser to see your site. +Normally you would need to run ``make regenerate`` and ``make serve`` in two +separate terminal sessions, but you can run both at once via:: + + $ make devserver + +The above command will simultaneously run Pelican in regeneration mode as well +as serve the output at http://localhost:8000. Once you are done testing your +changes, you should stop the development server via:: + + $ ./develop_server stop When you're ready to publish your site, you can upload it via the method(s) you chose during the ``pelican-quickstart`` questionnaire. For this example, we'll @@ -295,3 +307,5 @@ Or run a simple web server using Python:: cd output && python -m SimpleHTTPServer +.. _virtualenv: http://www.virtualenv.org/ +.. _virtualenvwrapper: http://www.doughellmann.com/projects/virtualenvwrapper/ diff --git a/docs/index.rst b/docs/index.rst index 711f28bc..b04557eb 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,16 +1,16 @@ Pelican -####### +======= -Pelican is a static site generator, written in Python. +Pelican is a static site generator, written in Python_. -* Write your weblog entries directly with your editor of choice (vim!) in - reStructuredText or Markdown -* A simple CLI tool to (re)generate the weblog +* Write your weblog entries directly with your editor of choice (vim!) + in reStructuredText_ or Markdown_ +* Includes a simple CLI tool to (re)generate the weblog * Easy to interface with DVCSes and web hooks * Completely static output is easy to host anywhere Features -======== +-------- Pelican currently supports: @@ -18,40 +18,38 @@ Pelican currently supports: * Comments, via an external service (Disqus). (Please note that while useful, Disqus is an external service, and thus the comment data will be somewhat outside of your control and potentially subject to data loss.) -* Theming support (themes are created using `Jinja2 `_) +* Theming support (themes are created using Jinja2_ templates) * PDF generation of the articles/pages (optional) * Publication of articles in multiple languages * Atom/RSS feeds * Code syntax highlighting -* Compilation of `LESS CSS `_ (optional) +* Compilation of `LESS CSS`_ (optional) * Import from WordPress, Dotclear, or RSS feeds * Integration with external tools: Twitter, Google Analytics, etc. (optional) Why the name "Pelican"? -======================== +----------------------- -Heh, you didn't notice? "Pelican" is an anagram for « Calepin » ;) +"Pelican" is an anagram for *calepin*, which means "notebook" in French. ;) Source code -=========== +----------- -You can access the source code at: http://github.com/getpelican/pelican/ +You can access the source code at: https://github.com/getpelican/pelican Feedback / Contact us -===================== +--------------------- -If you want to see new features in Pelican, don't hesitate to chime in, clone -the repository, etc. That's open source, dude! +If you want to see new features in Pelican, don't hesitate to offer suggestions, +clone the repository, etc. There are many ways to :doc:`contribute`. +That's open source, dude! Send a message to "alexis at notmyidea dot org" with any requests/feedback! You -can also join the team at -`#pelican on Freenode `_ (or if you don't have -a IRC client handy, use `the webchat -`_) -for quick feedback. +can also join the team at `#pelican on Freenode`_ (or if you don't have an IRC +client handy, use the webchat_ for quick feedback. Documentation -============= +------------- A French version of the documentation is available at :doc:`fr/index`. @@ -70,3 +68,15 @@ A French version of the documentation is available at :doc:`fr/index`. contribute report changelog + +.. Links + +.. _Python: http://www.python.org/ +.. _reStructuredText: http://docutils.sourceforge.net/rst.html +.. _Markdown: http://daringfireball.net/projects/markdown/ +.. _Jinja2: http://jinja.pocoo.org/ +.. _`LESS CSS`: http://lesscss.org/ +.. _`Pelican documentation`: http://docs.getpelican.com/latest/ +.. _`Pelican's internals`: http://docs.getpelican.com/en/latest/internals.html +.. _`#pelican on Freenode`: irc://irc.freenode.net/pelican +.. _webchat: http://webchat.freenode.net/?channels=pelican&uio=d4 \ No newline at end of file diff --git a/docs/settings.rst b/docs/settings.rst index 9ea6071d..c219ed12 100644 --- a/docs/settings.rst +++ b/docs/settings.rst @@ -468,7 +468,7 @@ template tag, for example: .. code-block:: jinja {% assets filters="cssmin", output="css/style.min.css", "css/inuit.css", "css/pygment-monokai.css", "css/main.css" %} - + {% endassets %} will produce a minified css file with the version identifier: diff --git a/pelican/tools/templates/Makefile.in b/pelican/tools/templates/Makefile.in index df00ffbf..9a26e315 100644 --- a/pelican/tools/templates/Makefile.in +++ b/pelican/tools/templates/Makefile.in @@ -24,12 +24,15 @@ help: @echo 'Usage: ' @echo ' make html (re)generate the web site ' @echo ' make clean remove the generated files ' + @echo ' make regenerate regenerate files upon modification ' @echo ' make publish generate using production settings ' - @echo ' make serve run develop_server.sh restart ' - @echo ' ftp_upload upload the web site via FTP ' + @echo ' make serve serve site at http://localhost:8000' + @echo ' make devserver start/restart develop_server.sh ' @echo ' ssh_upload upload the web site via SSH ' + @echo ' rsync_upload upload the web site via rsync+ssh ' @echo ' dropbox_upload upload the web site via Dropbox ' - @echo ' rsync_upload upload the web site via rsync/ssh ' + @echo ' ftp_upload upload the web site via FTP ' + @echo ' github upload the web site via gh-pages ' @echo ' ' @@ -46,20 +49,23 @@ regenerate: clean $$(PELICAN) -r $$(INPUTDIR) -o $$(OUTPUTDIR) -s $$(CONFFILE) $$(PELICANOPTS) serve: + cd $$(OUTPUTDIR) && python -m SimpleHTTPServer + +devserver: $$(BASEDIR)/develop_server.sh restart publish: $$(PELICAN) $$(INPUTDIR) -o $$(OUTPUTDIR) -s $$(PUBLISHCONF) $$(PELICANOPTS) -dropbox_upload: publish - cp -r $$(OUTPUTDIR)/* $$(DROPBOX_DIR) - ssh_upload: publish scp -P $$(SSH_PORT) -r $$(OUTPUTDIR)/* $$(SSH_USER)@$$(SSH_HOST):$$(SSH_TARGET_DIR) rsync_upload: publish rsync -e "ssh -p $(SSH_PORT)" -P -rvz --delete $(OUTPUTDIR)/* $(SSH_USER)@$(SSH_HOST):$(SSH_TARGET_DIR) +dropbox_upload: publish + cp -r $$(OUTPUTDIR)/* $$(DROPBOX_DIR) + ftp_upload: publish lftp ftp://$$(FTP_USER)@$$(FTP_HOST) -e "mirror -R $$(OUTPUTDIR) $$(FTP_TARGET_DIR) ; quit" @@ -67,4 +73,4 @@ github: publish ghp-import $$(OUTPUTDIR) git push origin gh-pages -.PHONY: html help clean regenerate serve publish ftp_upload ssh_upload rsync_upload dropbox_upload github +.PHONY: html help clean regenerate serve devserver publish ssh_upload rsync_upload dropbox_upload ftp_upload github