diff options
Diffstat (limited to 'nikola/conf.py.in')
| -rw-r--r-- | nikola/conf.py.in | 241 |
1 files changed, 188 insertions, 53 deletions
diff --git a/nikola/conf.py.in b/nikola/conf.py.in index b7a88f7..7ef6927 100644 --- a/nikola/conf.py.in +++ b/nikola/conf.py.in @@ -68,8 +68,8 @@ TRANSLATIONS_PATTERN = ${TRANSLATIONS_PATTERN} # For submenus: # ( # ( -# ('http://apple.com/', 'Apple'), -# ('http://orange.com/', 'Orange'), +# ('https://apple.com/', 'Apple'), +# ('https://orange.com/', 'Orange'), # ), # 'Fruits' # ) @@ -89,6 +89,39 @@ NAVIGATION_LINKS = ${NAVIGATION_LINKS} # Name of the theme to use. THEME = ${THEME} +# Primary color of your theme. This will be used to customize your theme and +# auto-generate related colors in POSTS_SECTION_COLORS. Must be a HEX value. +THEME_COLOR = '#5670d4' + +# POSTS and PAGES contains (wildcard, destination, template) tuples. +# +# The wildcard is used to generate a list of reSt source files +# (whatever/thing.txt). +# +# That fragment could have an associated metadata file (whatever/thing.meta), +# and optionally translated files (example for Spanish, with code "es"): +# whatever/thing.es.txt and whatever/thing.es.meta +# +# This assumes you use the default TRANSLATIONS_PATTERN. +# +# From those files, a set of HTML fragment files will be generated: +# cache/whatever/thing.html (and maybe cache/whatever/thing.html.es) +# +# These files are combined with the template to produce rendered +# pages, which will be placed at +# output / TRANSLATIONS[lang] / destination / pagename.html +# +# where "pagename" is the "slug" specified in the metadata file. +# +# The difference between POSTS and PAGES is that POSTS are added +# to feeds and are considered part of a blog, while PAGES are +# just independent HTML pages. +# + +POSTS = ${POSTS} +PAGES = ${PAGES} + + ############################################## # Below this point, everything is optional ############################################## @@ -96,7 +129,7 @@ THEME = ${THEME} # Post's dates are considered in UTC by default, if you want to use # another time zone, please set TIMEZONE to match. Check the available # list from Wikipedia: -# http://en.wikipedia.org/wiki/List_of_tz_database_time_zones +# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones # (e.g. 'Europe/Zurich') # Also, if you want to use a different time zone in some of your posts, # you can use the ISO 8601/RFC 3339 format (ex. 2012-03-30T23:00:00+02:00) @@ -107,11 +140,11 @@ TIMEZONE = ${TIMEZONE} # Note that this does not affect DATE_FORMAT. # FORCE_ISO8601 = False -# Date format used to display post dates. +# Date format used to display post dates. (translatable) # (str used by datetime.datetime.strftime) # DATE_FORMAT = '%Y-%m-%d %H:%M' -# Date format used to display post dates, if local dates are used. +# Date format used to display post dates, if local dates are used. (translatable) # (str used by moment.js) # JS_DATE_FORMAT = 'YYYY-MM-DD HH:mm' @@ -135,34 +168,6 @@ TIMEZONE = ${TIMEZONE} # LOCALE_DEFAULT = locale to use for languages not mentioned in LOCALES; if # not set the default Nikola mapping is used. -# POSTS and PAGES contains (wildcard, destination, template) tuples. -# -# The wildcard is used to generate a list of reSt source files -# (whatever/thing.txt). -# -# That fragment could have an associated metadata file (whatever/thing.meta), -# and optionally translated files (example for Spanish, with code "es"): -# whatever/thing.es.txt and whatever/thing.es.meta -# -# This assumes you use the default TRANSLATIONS_PATTERN. -# -# From those files, a set of HTML fragment files will be generated: -# cache/whatever/thing.html (and maybe cache/whatever/thing.html.es) -# -# These files are combined with the template to produce rendered -# pages, which will be placed at -# output / TRANSLATIONS[lang] / destination / pagename.html -# -# where "pagename" is the "slug" specified in the metadata file. -# -# The difference between POSTS and PAGES is that POSTS are added -# to feeds and are considered part of a blog, while PAGES are -# just independent HTML pages. -# - -POSTS = ${POSTS} -PAGES = ${PAGES} - # One or more folders containing files to be copied as-is into the output. # The format is a dictionary of {source: relative destination}. # Default is: @@ -208,6 +213,57 @@ COMPILERS = ${COMPILERS} # Warning: this option will change its default value to False in v8! WRITE_TAG_CLOUD = True +# Generate pages for each section. The site must have at least two sections +# for this option to take effect. It wouldn't build for just one section. +POSTS_SECTIONS = True + +# Setting this to False generates a list page instead of an index. Indexes +# are the default and will apply GENERATE_ATOM if set. +# POSTS_SECTIONS_ARE_INDEXES = True + +# Each post and section page will have an associated color that can be used +# to style them with a recognizable color detail across your site. A color +# is assigned to each section based on shifting the hue of your THEME_COLOR +# at least 7.5 % while leaving the lightness and saturation untouched in the +# HUSL colorspace. You can overwrite colors by assigning them colors in HEX. +# POSTS_SECTION_COLORS = { +# DEFAULT_LANG: { +# 'posts': '#49b11bf', +# 'reviews': '#ffe200', +# }, +# } + +# Associate a description with a section. For use in meta description on +# section index pages or elsewhere in themes. +# POSTS_SECTION_DESCRIPTIONS = { +# DEFAULT_LANG: { +# 'how-to': 'Learn how-to things properly with these amazing tutorials.', +# }, +# } + +# Sections are determined by their output directory as set in POSTS by default, +# but can alternatively be determined from file metadata instead. +# POSTS_SECTION_FROM_META = False + +# Names are determined from the output directory name automatically or the +# metadata label. Unless overwritten below, names will use title cased and +# hyphens replaced by spaces. +# POSTS_SECTION_NAME = { +# DEFAULT_LANG: { +# 'posts': 'Blog Posts', +# 'uncategorized': 'Odds and Ends', +# }, +# } + +# Titles for per-section index pages. Can be either one string where "{name}" +# is substituted or the POSTS_SECTION_NAME, or a dict of sections. Note +# that the INDEX_PAGES option is also applied to section page titles. +# POSTS_SECTION_TITLE = { +# DEFAULT_LANG: { +# 'how-to': 'How-to and Tutorials', +# }, +# } + # Paths for different autogenerated bits. These are combined with the # translation paths. @@ -215,8 +271,14 @@ WRITE_TAG_CLOUD = True # output / TRANSLATION[lang] / TAG_PATH / index.html (list of tags) # output / TRANSLATION[lang] / TAG_PATH / tag.html (list of posts for a tag) # output / TRANSLATION[lang] / TAG_PATH / tag.xml (RSS feed for a tag) + # (translatable) # TAG_PATH = "categories" +# See TAG_PATH's "list of tags" for the default setting value. Can be overwritten +# here any path relative to the output directory. + # (translatable) +# TAGS_INDEX_PATH = "tags.html" + # If TAG_PAGES_ARE_INDEXES is set to True, each tag's page will contain # the posts themselves. If set to False, it will be just a list of links. # TAG_PAGES_ARE_INDEXES = False @@ -231,6 +293,13 @@ WRITE_TAG_CLOUD = True # }, # } +# Set special titles for tag pages. The default is "Posts about TAG". +# TAG_PAGES_TITLES = { +# DEFAULT_LANG: { +# "blogging": "Meta-posts about blogging", +# "open source": "Posts about open source software" +# }, +# } # If you do not want to display a tag publicly, you can mark it as hidden. # The tag will not be displayed on the tag list page, the tag cloud and posts. @@ -247,6 +316,7 @@ HIDDEN_TAGS = ['mathjax'] # output / TRANSLATION[lang] / CATEGORY_PATH / index.html (list of categories) # output / TRANSLATION[lang] / CATEGORY_PATH / CATEGORY_PREFIX category.html (list of posts for a category) # output / TRANSLATION[lang] / CATEGORY_PATH / CATEGORY_PREFIX category.xml (RSS feed for a category) +# (translatable) # CATEGORY_PATH = "categories" # CATEGORY_PREFIX = "cat_" @@ -274,11 +344,49 @@ CATEGORY_OUTPUT_FLAT_HIERARCHY = ${CATEGORY_OUTPUT_FLAT_HIERARCHY} # }, # } +# Set special titles for category pages. The default is "Posts about CATEGORY". +# CATEGORY_PAGES_TITLES = { +# DEFAULT_LANG: { +# "blogging": "Meta-posts about blogging", +# "open source": "Posts about open source software" +# }, +# } + # If you do not want to display a category publicly, you can mark it as hidden. # The category will not be displayed on the category list page. # Category pages will still be generated. HIDDEN_CATEGORIES = [] +# If ENABLE_AUTHOR_PAGES is set to True and there is more than one +# author, author pages are generated. +# ENABLE_AUTHOR_PAGES = True + +# Final locations are: +# output / TRANSLATION[lang] / AUTHOR_PATH / index.html (list of tags) +# output / TRANSLATION[lang] / AUTHOR_PATH / author.html (list of posts for a tag) +# output / TRANSLATION[lang] / AUTHOR_PATH / author.xml (RSS feed for a tag) +# AUTHOR_PATH = "authors" + +# If AUTHOR_PAGES_ARE_INDEXES is set to True, each author's page will contain +# the posts themselves. If set to False, it will be just a list of links. +# AUTHOR_PAGES_ARE_INDEXES = False + +# Set descriptions for author pages to make them more interesting. The +# default is no description. The value is used in the meta description +# and displayed underneath the author list or index page’s title. +# AUTHOR_PAGES_DESCRIPTIONS = { +# DEFAULT_LANG: { +# "Juanjo Conti": "Python coder and writer.", +# "Roberto Alsina": "Nikola father." +# }, +# } + + +# If you do not want to display an author publicly, you can mark it as hidden. +# The author will not be displayed on the author list page and posts. +# Tag pages will still be generated. +HIDDEN_AUTHORS = ['Guest'] + # Final location for the main blog page and sibling paginated pages is # output / TRANSLATION[lang] / INDEX_PATH / index-*.html # INDEX_PATH = "" @@ -311,17 +419,25 @@ HIDDEN_CATEGORIES = [] # absolute: a complete URL (that includes the SITE_URL) # URL_TYPE = 'rel_path' +# If USE_BASE_TAG is True, then all HTML files will include +# something like <base href=http://foo.var.com/baz/bat> to help +# the browser resolve relative links. +# In some rare cases, this will be a problem, and you can +# disable it by setting USE_BASE_TAG to False. +# USE_BASE_TAG = True + # Final location for the blog main RSS feed is: # output / TRANSLATION[lang] / RSS_PATH / rss.xml # RSS_PATH = "" -# Number of posts in RSS feeds -# FEED_LENGTH = 10 - -# Slug the Tag URL easier for users to type, special characters are +# Slug the Tag URL. Easier for users to type, special characters are # often removed or replaced as well. # SLUG_TAG_PATH = True +# Slug the Author URL. Easier for users to type, special characters are +# often removed or replaced as well. +# SLUG_AUTHOR_PATH = True + # A list of redirection tuples, [("foo/from.html", "/bar/to.html")]. # # A HTML file will be created in output/foo/from.html that redirects @@ -563,10 +679,10 @@ IMAGE_FOLDERS = {'images': 'images'} # 'Read more...' for the index page, if INDEX_TEASERS is True (translatable) INDEX_READ_MORE_LINK = ${INDEX_READ_MORE_LINK} -# 'Read more...' for the RSS_FEED, if RSS_TEASERS is True (translatable) -RSS_READ_MORE_LINK = ${RSS_READ_MORE_LINK} +# 'Read more...' for the feeds, if FEED_TEASERS is True (translatable) +FEED_READ_MORE_LINK = ${FEED_READ_MORE_LINK} -# Append a URL query to the RSS_READ_MORE_LINK in Atom and RSS feeds. Advanced +# Append a URL query to the FEED_READ_MORE_LINK in Atom and RSS feeds. Advanced # option used for traffic source tracking. # Minimum example for use with Piwik: "pk_campaign=feed" # The following tags exist and are replaced for you: @@ -574,18 +690,18 @@ RSS_READ_MORE_LINK = ${RSS_READ_MORE_LINK} # {feedFormat} The name of the syndication format. # Example using replacement for use with Google Analytics: # "utm_source={feedRelUri}&utm_medium=nikola_feed&utm_campaign={feedFormat}_feed" -RSS_LINKS_APPEND_QUERY = False +FEED_LINKS_APPEND_QUERY = False # A HTML fragment describing the license, for the sidebar. # (translatable) LICENSE = "" # I recommend using the Creative Commons' wizard: -# http://creativecommons.org/choose/ +# https://creativecommons.org/choose/ # LICENSE = """ -# <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"> +# <a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"> # <img alt="Creative Commons License BY-NC-SA" # style="border-width:0; margin-bottom:12px;" -# src="http://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png"></a>""" +# src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png"></a>""" # A small copyright notice for the page footer (in HTML). # (translatable) @@ -715,6 +831,13 @@ PRETTY_URLS = ${PRETTY_URLS} # </script> # """ +# Want to use KaTeX instead of MathJax? While KaTeX is less featureful, +# it's faster and the output looks better. +# If you set USE_KATEX to True, you also need to add an extra CSS file +# like this: +# EXTRA_HEAD_DATA = """<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/KaTeX/0.3.0/katex.min.css">""" +# USE_KATEX = False + # Do you want to customize the nbconversion of your IPython notebook? # IPYNB_CONFIG = {} # With the following example configuration you can use a custom jinja template @@ -771,24 +894,34 @@ MARKDOWN_EXTENSIONS = ['fenced_code', 'codehilite', 'extra'] # them. Generate Atom for tags by setting TAG_PAGES_ARE_INDEXES to True. # Atom feeds are built based on INDEX_DISPLAY_POST_COUNT and not FEED_LENGTH # Switch between plain-text summaries and full HTML content using the -# RSS_TEASER option. RSS_LINKS_APPEND_QUERY is also respected. Atom feeds +# FEED_TEASER option. FEED_LINKS_APPEND_QUERY is also respected. Atom feeds # are generated even for old indexes and have pagination link relations # between each other. Old Atom feeds with no changes are marked as archived. # GENERATE_ATOM = False +# Only inlclude teasers in Atom and RSS feeds. Disabling include the full +# content. Defaults to True. +# FEED_TEASERS = True + +# Strip HTML from Atom annd RSS feed summaries and content. Defaults to False. +# FEED_PLAIN = False + +# Number of posts in Atom and RSS feeds. +# FEED_LENGTH = 10 + +# Include preview image as a <figure><img></figure> at the top of the entry. +# Requires FEED_PLAIN = False. If the preview image is found in the content, +# it will not be included again. Image will be included as-is, aim to optmize +# the image source for Feedly, Apple News, Flipboard, and other popular clients. +# FEED_PREVIEWIMAGE = True + # RSS_LINK is a HTML fragment to link the RSS or Atom feeds. If set to None, # the base.tmpl will use the feed Nikola generates. However, you may want to # change it for a FeedBurner feed or something else. # RSS_LINK = None -# Show teasers (instead of full posts) in feeds? Defaults to True. -# RSS_TEASERS = True - -# Strip HTML in the RSS feed? Default to False -# RSS_PLAIN = False - # A search form to search this site, for the sidebar. You can use a Google -# custom search (http://www.google.com/cse/) +# custom search (https://www.google.com/cse/) # Or a DuckDuckGo search: https://duckduckgo.com/search_box.html # Default is no search form. # (translatable) @@ -815,7 +948,7 @@ MARKDOWN_EXTENSIONS = ['fenced_code', 'codehilite', 'extra'] # If you prefer a Google search form, here's an example that should just work: # SEARCH_FORM = """ # <!-- Google custom search --> -# <form method="get" action="http://www.google.com/search" class="navbar-form navbar-right" role="search"> +# <form method="get" action="https://www.google.com/search" class="navbar-form navbar-right" role="search"> # <div class="form-group"> # <input type="text" name="q" class="form-control" placeholder="Search"> # </div> @@ -914,6 +1047,8 @@ UNSLUGIFY_TITLES = True # LINK_CHECK_WHITELIST = [] # If set to True, enable optional hyphenation in your posts (requires pyphen) +# Enabling hyphenation has been shown to break math support in some cases, +# use with caution. # HYPHENATE = False # The <hN> tags in HTML generated by certain compilers (reST/Markdown) |
