Readme.rst 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297
  1. Pelican Plugins
  2. ###############
  3. Beginning with version 3.0, Pelican supports plugins. Plugins are a way to add
  4. features to Pelican without having to directly modify the Pelican core. Starting
  5. with 3.2, all plugins (including the ones previously in the core) have been
  6. moved to this repository, so this is the central place for all plugins.
  7. How to use plugins
  8. ==================
  9. The easiest way to install and use these plugins is to clone this repo::
  10. git clone --recursive https://github.com/getpelican/pelican-plugins
  11. and activate the ones you want in your settings file::
  12. PLUGIN_PATHS = ['path/to/pelican-plugins']
  13. PLUGINS = ['assets', 'sitemap', 'gravatar']
  14. ``PLUGIN_PATHS`` can be a path relative to your settings file or an absolute path.
  15. Alternatively, if plugins are in an importable path, you can omit ``PLUGIN_PATHS``
  16. and list them::
  17. PLUGINS = ['assets', 'sitemap', 'gravatar']
  18. or you can ``import`` the plugin directly and give that::
  19. import my_plugin
  20. PLUGINS = [my_plugin, 'assets']
  21. Plugin descriptions
  22. ===================
  23. ======================== ===========================================================
  24. Plugin Description
  25. ======================== ===========================================================
  26. Ace Editor Replace default **<code>** by an Ace__ code editor with settings configure on pelicanconf.py.
  27. Always modified Copy created date metadata into modified date for easy "latest updates" indexes
  28. AsciiDoc reader Use AsciiDoc to write your posts.
  29. Asset management Use the Webassets module to manage assets such as CSS and JS files.
  30. Auto Pages Generate custom content for generated Author, Category, and Tag pages (e.g. author biography)
  31. Backref Translate Add a new attribute (``is_translation_of``) to every article/page (which is a translation) pointing back to the original article/page which is being translated
  32. Better code line numbers Allow code blocks with line numbers to wrap
  33. Better code samples Wraps ``table`` blocks with ``div > .hilitewrapper > .codehilitetable`` class attribute, allowing for scrollable code blocks.
  34. Better figures/samples Adds a ``style="width: ???px; height: auto;"`` attribute to any ``<img>`` tags in the content
  35. bootstrap-rst Provides most (though not all) of Bootstrap's features as rst directives
  36. bootstrapify Automatically add bootstraps default classes to your content
  37. Category Order Order categories (and tags) by the number of articles in that category (or tag).
  38. CJK auto spacing Inserts spaces between Chinese/Japanese/Korean characters and English words
  39. Clean summary Cleans your summary of excess images
  40. Code include Includes Pygments highlighted code in reStructuredText
  41. Collate content Makes categories of content available to the template as lists through a ``collations`` attribute
  42. Creole reader Allows you to write your posts using the wikicreole syntax
  43. Custom article URLs Adds support for defining different default URLs for different categories
  44. CTags generator Generates a "tags" file following the CTags in the "content/" directory, to provide autocompletion for code editors that support it.
  45. Dateish Treat arbitrary metadata fields as datetime objects
  46. Dead Links Manage dead links (website not available, errors such as 403, 404)
  47. Disqus static comments Adds a disqus_comments property to all articles. Comments are fetched at generation time using disqus API
  48. Encrypt content Password protect pages and articles
  49. Events Add event start, duration, and location info to post metadata to generate an iCalendar file
  50. Extract table of content Extracts table of contents (ToC) from ``article.content``
  51. Figure References Provides a system to number and references figures
  52. Filetime from Git Uses Git commit to determine page date
  53. Filetime from Hg Uses Mercurial commit to determine page date
  54. Footer Insert Add standardized footer (e.g., author information) at end of every article
  55. GA Page View Display Google Analytics page views on individual articles and pages
  56. Gallery Allows an article to contain an album of pictures
  57. Gist directive This plugin adds a ``gist`` reStructuredText directive.
  58. GitHub wiki Converts a flat github wiki into a structured read only wiki on your site
  59. GitHub activity On the template side, you just have to iterate over the ``github_activity`` variable
  60. Global license Allows you to define a ``LICENSE`` setting and adds the contents of that license variable to the article's context
  61. Glossary Adds a variable containing definitions extracted from definition lists in articles and pages. This variable is visible to all page templates.
  62. Goodreads activity Lists books from your Goodreads shelves
  63. GooglePlus comments Adds GooglePlus comments to Pelican
  64. Gravatar Assigns the ``author_gravatar`` variable to the Gravatar URL and makes the variable available within the article's context
  65. Gzip cache Enables certain web servers (e.g., Nginx) to use a static cache of gzip-compressed files to prevent the server from compressing files during an HTTP call
  66. Headerid This plugin adds an anchor to each heading so you can deeplink to headers in reStructuredText articles.
  67. HTML entities Allows you to enter HTML entities such as &copy;, &lt;, &#149; inline in a RST document
  68. HTML tags for rST Allows you to use HTML tags from within reST documents
  69. I18N Sub-sites Extends the translations functionality by creating internationalized sub-sites for the default site
  70. ical Looks for and parses an ``.ics`` file if it is defined in a given page's ``calendar`` metadata.
  71. Image Process Automates the processing of images based on their class attributes
  72. Interlinks Lets you add frequently used URLs to your markup using short keywords
  73. Jinja2 Content Allows the use of Jinja2 template code in articles, including ``include`` and ``import`` statements. Replacement for pelican-jinja2content.
  74. JPEG Reader Create image gallery pages based on content of JPEG metadata
  75. Just table Allows you to easily create and manage tables. You can embed the tables into posts with a simple way.
  76. Libravatar Allows inclusion of user profile pictures from libravatar.org
  77. Link Class Allows the insertion of class attributes into generated <a> elements (Markdown only)
  78. Linker Allows the definition of custom linker commands in analogy to the builtin ``{filename}``, ``{attach}``, ``{category}``, ``{tag}``, ``{author}``, and ``{index}`` syntax
  79. Liquid-style tags Allows liquid-style tags to be inserted into markdown within Pelican documents
  80. Load CSV Adds ``csv`` Jinja tag to display the contents of a CSV file as an HTML table
  81. Markdown Inline Extend Enables you to add customize inline patterns to your markdown
  82. Markdown-metaYAML Pelican reader to enable YAML-style metadata in markdown articles
  83. Math Render Gives pelican the ability to render mathematics
  84. Mbox Reader Generate articles automatically via email, given a path to a Unix mbox
  85. Multi parts posts Allows you to write multi-part posts
  86. Neighbor articles Adds ``next_article`` (newer) and ``prev_article`` (older) variables to the article's context
  87. Open graph Generates Open Graph tags for your articles
  88. Optimize images Applies lossless compression on JPEG and PNG images
  89. Org Reader Create posts via Emacs Orgmode files
  90. Page View Pull page view count from Google Analytics.
  91. Panorama Creates charts from posts metadata
  92. PDF generator Automatically exports articles and pages as PDF files
  93. PDF Images If an img tag contains a PDF, EPS or PS file as a source, this plugin generates a PNG preview which will then act as a link to the original file.
  94. Pelican Cite Produces inline citations and a bibliography in articles and pages, using a BibTeX file.
  95. Pelican Comment System Allows you to add static comments to your articles
  96. pelican-ert Allows you to add estimated reading time of an article
  97. Pelican-flickr Brings your Flickr photos & sets into your static website
  98. Pelican Genealogy Add surnames and people so metadata and context can be accessed from within a theme to provide surname and person pages
  99. Pelican Gist tag Easily embed GitHub Gists in your Pelican articles
  100. Pelican Github Projects Embed a list of your public GitHub projects in your pages
  101. pelican_javascript Allows you to embed Javascript and CSS files into individual articles
  102. Pelican Jinja2Content Allows the use of Jinja2 template code in articles, including ``include`` and ``import`` statements
  103. Pelican Link Class Set class attribute of ``<a>`` elements according to whether the link is external or internal
  104. Pelican Meetup Info Include your Meetup.com group and event information on generated pages and articles
  105. Pelican Page Hierarchy Creates a URL hierarchy for pages that matches the filesystem hierarchy of their sources
  106. Pelican Page Order Adds a ``page_order`` attribute to all pages if one is not defined.
  107. Pelican Themes Generator Generates theme screenshots from the Pelican Themes repository
  108. pelican-rdf Allows the processing of .rdf vocabularies, and the generation of a lightweight documentation.
  109. pelican-toc Generates a Table of Contents and make it available to the theme via article.toc
  110. Pelican Vimeo Enables you to embed Vimeo videos in your pages and articles
  111. Pelican YouTube Enables you to embed YouTube videos in your pages and articles
  112. pelicanfly Lets you type things like ``i ♥ :fa-coffee:`` in your Markdown documents and have it come out as little Font Awesome icons in the browser
  113. Photos Add a photo or a gallery of photos to an article, or include photos in the body text. Resize photos as needed.
  114. permalink Enables a kind of permalink using html redirects.
  115. Pin to top Pin Pelican's article(s) to top "Sticky article"
  116. PlantUML Allows you to define UML diagrams directly into rst documents using the great PlantUML tool
  117. Post Revision Extract article and page revision information from Git commit history
  118. Post statistics Calculates various statistics about a post and store them in an article.stats dictionary
  119. Random article Generates a html file which redirect to a random article
  120. Read More link Inserts an inline "read more" or "continue" link into the last html element of the object summary
  121. Readtime Adds article estimated read time calculator to the site, in the form of '<n> minutes'.
  122. Related posts Adds the ``related_posts`` variable to the article's context
  123. Render Math Render mathematics in content via the MathJax Javascript engine
  124. Replacer Replace a text of a generated HTML
  125. Representative image Extracts a representative image (i.e, featured image) from the article's summary or content
  126. RMD Reader Create posts via knitr RMarkdown files
  127. Section number Adds section numbers for article headers, in the form of ``2.3.3``
  128. Series Groups related articles into a series
  129. Share post Creates share URLs of article
  130. Show Source Place a link to the source text of your posts.
  131. Simple footnotes Adds footnotes to blog posts
  132. Sitemap Generates plain-text or XML sitemaps
  133. Slim Render theme template files via Plim, a Python port of Slim, instead of Jinja
  134. Static comments Allows you to add static comments to an article
  135. Subcategory Adds support for subcategories
  136. Sub parts Break a very long article in parts, without polluting the timeline with lots of small articles.
  137. Summary Allows easy, variable length summaries directly embedded into the body of your articles
  138. tag_cloud Provides a tag_cloud
  139. Textile Reader Adds support for Textile markup
  140. Thumbnailer Creates thumbnails for all of the images found under a specific directory
  141. Tipue Search Serializes generated HTML to JSON that can be used by jQuery plugin - Tipue Search
  142. Touch Does a touch on your generated files using the date metadata from the content
  143. Twitter Bootstrap Defines some rst directive that enable a clean usage of the twitter bootstrap CSS and Javascript components
  144. txt2tags_reader Reader that renders txt2tags markup in content
  145. Unity WebGL Easily embed Unity3d games into posts and pages
  146. Video Privacy Enhancer Increases user privacy by stopping YouTube, Google, et al from placing cookies via embedded video
  147. W3C validate Submits generated HTML content to the W3C Markup Validation Service
  148. Yuicompressor Minify CSS and JS files on building step
  149. ======================== ===========================================================
  150. __ https://ace.c9.io
  151. Please refer to the ``Readme`` file in a plugin's folder for detailed information about
  152. that plugin.
  153. Contributing a plugin
  154. =====================
  155. Please refer to the `Contributing`_ file.
  156. .. _Contributing: Contributing.rst