2014-05-08 22:23:52 -07:00
ABlog for Sphinx
================
2014-05-11 21:10:34 -07:00
2018-02-17 19:18:32 +01:00
.. image :: https://travis-ci.org/sunpy/ablog.svg?branch=master
:target: https://travis-ci.org/sunpy/ablog
2018-02-17 19:20:45 +01:00
**Please note that is an official continuation of** `Eric Holscher's Ablog Sphinx extension <https://github.com/abakan/ablog/> `_ .**
2018-02-10 18:53:54 +01:00
ABlog is a Sphinx extension that converts any documentation or personal website project into a full-fledged blog with:
2015-03-01 14:13:45 -08:00
2015-06-14 21:27:53 -07:00
* `Atom feeds`_
* `Archive pages`_
* `Blog sidebars`_
* `Disqus integration`_
* `Font-Awesome integration`_
* `Easy GitHub Pages deploys`_
2015-03-01 14:13:45 -08:00
2015-06-14 21:27:53 -07:00
.. _Atom feeds: http://ablog.readthedocs.org/blog/atom.xml
.. _Archive pages: http://ablog.readthedocs.org/blog/
.. _Blog sidebars: http://ablog.readthedocs.org/manual/ablog-configuration-options/#sidebars
.. _Disqus integration: http://ablog.readthedocs.org/manual/ablog-configuration-options/#disqus-integration
.. _Font-Awesome integration: http://ablog.readthedocs.org/manual/ablog-configuration-options/#fa
.. _Easy GitHub Pages deploys: http://ablog.readthedocs.org/manual/deploy-to-github-pages/
2015-03-01 14:13:45 -08:00
2015-06-14 21:27:53 -07:00
.. _installation:
2015-03-29 10:33:03 -07:00
2015-06-14 21:27:53 -07:00
Installation
------------
You can install ABlog using pip_::
pip install -U ablog
2018-02-10 18:53:54 +01:00
This will also install `Sphinx <http://sphinx-doc.org/> `_ , Alabaster_, Werkzeug_, and Invoke_ respectively required for building your website, making it look good, generating feeds, and running deploy commands.
2015-06-14 21:27:53 -07:00
.. _pip: https://pip.pypa.io
.. _Werkzeug: http://werkzeug.pocoo.org/
.. _Alabaster: https://github.com/bitprophet/alabaster
.. _Invoke: http://www.pyinvoke.org/
Getting Started
---------------
If you are starting a new project, see `ABlog Quick Start`_ guide.
If you already have a project, enable blogging by making following changes in `` conf.py `` :
.. code-block :: python
# 1. Add 'ablog' to list of extensions
extensions = [
'...',
'ablog'
]
# 2. Add ablog templates path
import ablog
# 2a. if `templates_path` is not defined
templates_path = [ablog.get_html_templates_path()]
# 2b. if `templates_path` is defined
templates_path.append(ablog.get_html_templates_path())
.. _ABlog Quick Start: http://ablog.readthedocs.org/manual/ablog-quick-start
How it works
------------
2018-02-10 18:53:54 +01:00
If you are new to Sphinx_ and reStructuredText markup language, you might find `reStructuredText Primer`_ useful.
Once you have content (in `` .rst `` files), you can post *any page* using the `` post `` directive as follows:
2015-06-14 21:27:53 -07:00
.. code-block :: rst
.. post :: Apr 15, 2014
:tags: earth, love, peace
:category: python
:author: me
:location: SF
:language: en
2018-02-10 18:53:54 +01:00
ABlog will index all files posted as above and list them in archives and feeds specified in `` :tag: `` , `` :category: `` , etc. options.
2015-06-14 21:27:53 -07:00
You can also include a list of posts using `` postlist `` directive:
.. code-block :: rst
.. postlist ::
:list-style: circle
:category: Manual
:format: {title}
:sort:
2018-02-10 18:53:54 +01:00
For ABlog documentation, this converts to the following where you can find more about configuring and using ABlog:
2015-06-14 21:27:53 -07:00
.. postlist ::
:category: Manual
:list-style: circle
:format: {title}
:sort:
.. _reStructuredText Primer: http://sphinx-doc.org/rest.html
.. only :: html
2018-02-17 13:54:34 +01:00
.. image :: https://secure.travis-ci.org/sunpy/ablog.png?branch=devel
:target: http://travis-ci.org/#!/sunpy/ablog
2015-06-14 21:27:53 -07:00
.. image :: https://readthedocs.org/projects/ablog/badge/?version=latest
:target: http://ablog.readthedocs.org/
.. toctree ::
:hidden:
:glob:
2015-10-11 19:25:04 -07:00
*/*