1
# -*- coding: utf-8 -*-
3
from __future__ import unicode_literals
6
# !! This is the configuration of Nikola. !! #
7
# !! You should edit it to your liking. !! #
10
# ! Some settings can be different in different languages.
11
# ! A comment stating (translatable) is used to denote those.
12
# ! There are two ways to specify a translatable setting:
13
# ! (a) BLOG_TITLE = "My Blog"
14
# ! (b) BLOG_TITLE = {"en": "My Blog", "es": "Mi Blog"}
15
# ! Option (a) is used when you don't want that setting translated.
16
# ! Option (b) is used for settings that are different in different languages.
19
# Data about this site
20
BLOG_AUTHOR = 'Ubuntu-ZA LoCo' # (translatable)
21
BLOG_TITLE = 'Ubuntu-ZA' # (translatable)
22
# This is the main URL for your site. It will be used
24
SITE_URL = 'http://ubuntu-za.org/'
25
# This is the URL where Nikola's output will be deployed.
26
# If not set, defaults to SITE_URL
27
# BASE_URL = 'http://ubuntu-za.org/'
28
BLOG_EMAIL = 'info@ubuntu-za.org'
29
BLOG_DESCRIPTION = 'South Africa Ubuntu Local Community' # (translatable)
31
# Nikola is multilingual!
33
# Currently supported languages are:
38
# cs Czech [ALTERNATIVELY cz]
51
# ja Japanese [NOT jp]
55
# pt_br Portuguese (Brasil)
59
# tr Turkish [NOT tr_TR]
61
# zh_cn Chinese (Simplified)
63
# If you want to use Nikola with a non-supported language you have to provide
64
# a module containing the necessary translations
65
# (cf. the modules at nikola/data/themes/base/messages/).
66
# If a specific post is not translated to a language, then the version
67
# in the default language will be shown instead.
69
# What is the default language?
72
# What other languages do you have?
73
# The format is {"translationcode" : "path/to/translation" }
74
# the path will be used as a prefix for the generated pages location
77
# Example for another language:
81
# What will translated input files be named like?
83
# If you have a page something.rst, then something.pl.rst will be considered
84
# its Polish translation.
85
# (in the above example: path == "something", ext == "rst", lang == "pl")
86
# this pattern is also used for metadata:
87
# something.meta -> something.pl.meta
89
TRANSLATIONS_PATTERN = "{path}.{lang}.{ext}"
91
# Links for the sidebar / navigation bar. (translatable)
92
# This is a dict. The keys are languages, and values are tuples.
95
# ('http://getnikola.com/', 'Nikola Homepage')
100
# ('http://apple.com/', 'Apple'),
101
# ('http://orange.com/', 'Orange'),
106
# WARNING: Support for submenus is theme-dependent.
107
# Only one level of submenus is supported.
108
# WARNING: Some themes, including the default Bootstrap 3 theme,
109
# may present issues if the menu is too large.
110
# (in bootstrap3, the navbar can grow too large and cover contents.)
115
("/about.html", "About"),
116
("/contact.html", "Contact"),
117
("/irc.html", "IRC Channel"),
120
('https://twitter.com/ubuntuza', '<span class="fa fa-twitter"></span> Twitter'),
121
('https://www.facebook.com/groups/ubuntuza/', '<span class="fa fa-facebook"></span> Facebook'),
122
('https://plus.google.com/+Ubuntu-zaOrg', '<span class="fa fa-google-plus"></span> Google+')
129
# Name of the theme to use.
132
# Below this point, everything is optional
134
# Post's dates are considered in UTC by default, if you want to use
135
# another time zone, please set TIMEZONE to match. Check the available
136
# list from Wikipedia:
137
# http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
138
# (eg. 'Europe/Zurich')
139
# Also, if you want to use a different time zone in some of your posts,
140
# you can use the ISO 8601/RFC 3339 format (ex. 2012-03-30T23:00:00+02:00)
141
TIMEZONE = "Africa/Johannesburg"
143
# If you want to use ISO 8601 (also valid RFC 3339) throughout Nikola
144
# (especially in new_post), set this to True.
145
# Note that this does not affect DATE_FORMAT.
146
# FORCE_ISO8601 = False
148
# Date format used to display post dates.
149
# (str used by datetime.datetime.strftime)
150
# DATE_FORMAT = '%Y-%m-%d %H:%M'
152
# Date format used to display post dates, if local dates are used.
153
# (str used by moment.js)
154
# JS_DATE_FORMAT = 'YYYY-MM-DD HH:mm'
158
# 0 = using DATE_FORMAT and TIMEZONE
159
# 1 = using JS_DATE_FORMAT and local user time (via moment.js)
160
# 2 = using a string like “2 days ago”
162
# Your theme must support it, bootstrap and bootstrap3 already do.
165
# While Nikola can select a sensible locale for each language,
166
# sometimes explicit control can come handy.
167
# In this file we express locales in the string form that
168
# python's locales will accept in your OS, by example
169
# "en_US.utf8" in unix-like OS, "English_United States" in Windows.
170
# LOCALES = dict mapping language --> explicit locale for the languages
171
# in TRANSLATIONS. You can ommit one or more keys.
172
# LOCALE_FALLBACK = locale to use when an explicit locale is unavailable
173
# LOCALE_DEFAULT = locale to use for languages not mentioned in LOCALES; if
174
# not set the default Nikola mapping is used.
176
# POSTS and PAGES contains (wildcard, destination, template) tuples.
178
# The wildcard is used to generate a list of reSt source files
179
# (whatever/thing.txt).
181
# That fragment could have an associated metadata file (whatever/thing.meta),
182
# and optionally translated files (example for spanish, with code "es"):
183
# whatever/thing.es.txt and whatever/thing.es.meta
185
# This assumes you use the default TRANSLATIONS_PATTERN.
187
# From those files, a set of HTML fragment files will be generated:
188
# cache/whatever/thing.html (and maybe cache/whatever/thing.html.es)
190
# These files are combined with the template to produce rendered
191
# pages, which will be placed at
192
# output / TRANSLATIONS[lang] / destination / pagename.html
194
# where "pagename" is the "slug" specified in the metadata file.
196
# The difference between POSTS and PAGES is that POSTS are added
197
# to feeds and are considered part of a blog, while PAGES are
198
# just independent HTML pages.
203
("stories/*.rst", "", "story.tmpl"),
204
("stories/*.txt", "", "story.tmpl"),
207
# One or more folders containing files to be copied as-is into the output.
208
# The format is a dictionary of "source" "relative destination".
210
# FILES_FOLDERS = {'files': '' }
211
# Which means copy 'files' into 'output'
213
# A mapping of languages to file-extensions that represent that language.
214
# Feel free to add or delete extensions to any list, but don't add any new
215
# compilers unless you write the interface for it yourself.
217
# 'rest' is reStructuredText
218
# 'markdown' is MarkDown
219
# 'html' assumes the file is html and just copies it
221
"rest": ('.rst', '.txt'),
224
# Create by default posts in one file format?
225
# Set to False for two-file posts, with separate metadata.
226
# ONE_FILE_POSTS = True
228
# If this is set to True, the DEFAULT_LANG version will be displayed for
229
# untranslated posts.
230
# If this is set to False, then posts that are not translated to a language
231
# LANG will not be visible at all in the pages in that language.
232
# Formerly known as HIDE_UNTRANSLATED_POSTS (inverse)
233
# SHOW_UNTRANSLATED_POSTS = True
235
# Nikola supports logo display. If you have one, you can put the URL here.
236
# Final output is <img src="LOGO_URL" id="logo" alt="BLOG_TITLE">.
237
# The URL may be relative to the site root.
240
# If you want to hide the title of your website (for example, if your logo
241
# already contains the text), set this to False.
242
# SHOW_BLOG_TITLE = True
244
# Paths for different autogenerated bits. These are combined with the
247
# Final locations are:
248
# output / TRANSLATION[lang] / TAG_PATH / index.html (list of tags)
249
# output / TRANSLATION[lang] / TAG_PATH / tag.html (list of posts for a tag)
250
# output / TRANSLATION[lang] / TAG_PATH / tag.xml (RSS feed for a tag)
251
# TAG_PATH = "categories"
253
# If TAG_PAGES_ARE_INDEXES is set to True, each tag's page will contain
254
# the posts themselves. If set to False, it will be just a list of links.
255
# TAG_PAGES_ARE_INDEXES = False
257
# Final location for the main blog page and sibling paginated pages is
258
# output / TRANSLATION[lang] / INDEX_PATH / index-*.html
261
# Create per-month archives instead of per-year
262
# CREATE_MONTHLY_ARCHIVE = False
263
# Create one large archive instead of per-year
264
# CREATE_SINGLE_ARCHIVE = False
265
# Final locations for the archives are:
266
# output / TRANSLATION[lang] / ARCHIVE_PATH / ARCHIVE_FILENAME
267
# output / TRANSLATION[lang] / ARCHIVE_PATH / YEAR / index.html
268
# output / TRANSLATION[lang] / ARCHIVE_PATH / YEAR / MONTH / index.html
270
# ARCHIVE_FILENAME = "archive.html"
272
# URLs to other posts/pages can take 3 forms:
273
# rel_path: a relative URL to the current page/post (default)
274
# full_path: a URL with the full path from the root
275
# absolute: a complete URL (that includes the SITE_URL)
276
# URL_TYPE = 'rel_path'
277
URL_TYPE = 'full_path'
279
# Final location for the blog main RSS feed is:
280
# output / TRANSLATION[lang] / RSS_PATH / rss.xml
283
# Number of posts in RSS feeds
286
# Slug the Tag URL easier for users to type, special characters are
287
# often removed or replaced as well.
288
# SLUG_TAG_PATH = True
290
# A list of redirection tuples, [("foo/from.html", "/bar/to.html")].
292
# A HTML file will be created in output/foo/from.html that redirects
293
# to the "/bar/to.html" URL. notice that the "from" side MUST be a
296
# If you don't need any of these, just set to []
299
# Presets of commands to execute to deploy. Can be anything, for
300
# example, you may use rsync:
301
# "rsync -rav --delete output/ joe@my.site:/srv/www/site"
302
# And then do a backup, or run `nikola ping` from the `ping`
303
# plugin (`nikola plugin -i ping`). Or run `nikola check -l`.
304
# You may also want to use github_deploy (see below).
305
# You can define multiple presets and specify them as arguments
306
# to `nikola deploy`. If no arguments are specified, a preset
307
# named `default` will be executed. You canuse as many presets
308
# in a `nikola deploy` command as you like.
309
# DEPLOY_COMMANDS = {
311
# "rsync -rav --delete output/ joe@my.site:/srv/www/site",
315
# For user.github.io/organization.github.io pages, the DEPLOY branch
316
# MUST be 'master', and 'gh-pages' for other repositories.
317
# GITHUB_SOURCE_BRANCH = 'master'
318
# GITHUB_DEPLOY_BRANCH = 'gh-pages'
320
# The name of the remote where you wish to push to, using github_deploy.
321
# GITHUB_REMOTE_NAME = 'origin'
323
# If you really care about history in the GitHub Pages branch, you can
324
# set this to True to `git pull` before changes are made.
325
# GITHUB_PULL_BEFORE_COMMIT = False
327
# Where the output site should be located
328
# If you don't use an absolute path, it will be considered as relative
329
# to the location of conf.py
330
# OUTPUT_FOLDER = 'output'
332
# where the "cache" of partial generated content should be located
334
# CACHE_FOLDER = 'cache'
336
# Filters to apply to the output.
337
# A directory where the keys are either: a file extensions, or
338
# a tuple of file extensions.
340
# And the value is a list of commands to be applied in order.
342
# Each command must be either:
344
# A string containing a '%s' which will
345
# be replaced with a filename. The command *must* produce output
350
# A python callable, which will be called with the filename as
353
# By default, only .php files uses filters to inject PHP into
354
# Nikola’s templates. All other filters must be enabled through FILTERS.
356
# Many filters are shipped with Nikola. A list is available in the manual:
357
# <http://getnikola.com/handbook.html#post-processing-filters>
359
# from nikola import filters
361
# ".html": [filters.typogrify],
362
# ".js": [filters.closure_compiler],
363
# ".jpg": ["jpegoptim --strip-all -m75 -v %s"],
366
# Expert setting! Create a gzipped copy of each generated file. Cheap server-
367
# side optimization for very high traffic sites or low memory servers.
369
# File extensions that will be compressed
370
# GZIP_EXTENSIONS = ('.txt', '.htm', '.html', '.css', '.js', '.json', '.xml')
371
# Use an external gzip command? None means no.
372
# Example: GZIP_COMMAND = "pigz -k {filename}"
373
# GZIP_COMMAND = None
374
# Make sure the server does not return a "Accept-Ranges: bytes" header for
375
# files compressed by this option! OR make sure that a ranged request does not
376
# return partial content of another representation for these resources. Do not
377
# use this feature if you do not understand what this means.
379
# Compiler to process LESS files.
380
# LESS_COMPILER = 'lessc'
382
# A list of options to pass to the LESS compiler.
383
# Final command is: LESS_COMPILER LESS_OPTIONS file.less
386
# Compiler to process Sass files.
387
# SASS_COMPILER = 'sass'
389
# A list of options to pass to the Sass compiler.
390
# Final command is: SASS_COMPILER SASS_OPTIONS file.s(a|c)ss
393
# #############################################################################
394
# Image Gallery Options
395
# #############################################################################
397
# Galleries are folders in galleries/
398
# Final location of galleries will be output / GALLERY_PATH / gallery_name
399
# GALLERY_PATH = "galleries"
400
# THUMBNAIL_SIZE = 180
401
# MAX_IMAGE_SIZE = 1280
402
# USE_FILENAME_AS_TITLE = True
403
# EXTRA_IMAGE_EXTENSIONS = []
405
# If set to False, it will sort by filename instead. Defaults to True
406
# GALLERY_SORT_BY_DATE = True
408
# #############################################################################
409
# HTML fragments and diverse things that are used by the templates
410
# #############################################################################
412
# Data about post-per-page indexes.
413
# INDEXES_PAGES defaults to 'old posts, page %d' or 'page %d' (translated),
414
# depending on the value of INDEXES_PAGES_MAIN.
415
# INDEXES_TITLE = "" # If this is empty, defaults to BLOG_TITLE
416
# INDEXES_PAGES = "" # If this is empty, defaults to '[old posts,] page %d' (see above)
417
# INDEXES_PAGES_MAIN = False # If True, INDEXES_PAGES is also displayed on
418
# # the main (the newest) index page (index.html)
420
# Color scheme to be used for code blocks. If your theme provides
421
# "assets/css/code.css" this is ignored.
422
# Can be any of autumn borland bw colorful default emacs friendly fruity manni
423
# monokai murphy native pastie perldoc rrt tango trac vim vs
424
# CODE_COLOR_SCHEME = 'default'
426
# If you use 'site-reveal' theme you can select several subthemes
427
# THEME_REVEAL_CONFIG_SUBTHEME = 'sky'
428
# You can also use: beige/serif/simple/night/default
430
# Again, if you use 'site-reveal' theme you can select several transitions
432
# THEME_REVEAL_CONFIG_TRANSITION = 'cube'
433
# You can also use: page/concave/linear/none/default
435
# FAVICONS contains (name, file, size) tuples.
436
# Used for create favicon link like this:
437
# <link rel="name" href="file" sizes="size"/>
439
# ("icon", "/favicon.ico", "16x16"),
440
# ("icon", "/icon_128x128.png", "128x128"),
443
("icon", "/favicon.ico", "16x16")
446
# Show only teasers in the index pages? Defaults to False.
447
# INDEX_TEASERS = False
449
# HTML fragments with the Read more... links.
450
# The following tags exist and are replaced for you:
451
# {link} A link to the full post page.
452
# {read_more} The string “Read more” in the current language.
453
# {reading_time} An estimate of how long it will take to read the post.
454
# {remaining_reading_time} An estimate of how long it will take to read the post, sans the teaser.
455
# {min_remaining_read} The string “{remaining_reading_time} min remaining to read” in the current language.
456
# {paragraph_count} The amount of paragraphs in the post.
457
# {remaining_paragraph_count} The amount of paragraphs in the post, sans the teaser.
458
# {{ A literal { (U+007B LEFT CURLY BRACKET)
459
# }} A literal } (U+007D RIGHT CURLY BRACKET)
461
# 'Read more...' for the index page, if INDEX_TEASERS is True (translatable)
462
INDEX_READ_MORE_LINK = '<p class="more"><a href="{link}">{read_more}...</a></p>'
463
# 'Read more...' for the RSS_FEED, if RSS_TEASERS is True (translatable)
464
RSS_READ_MORE_LINK = '<p><a href="{link}">{read_more}…</a> ({min_remaining_read})</p>'
466
# A HTML fragment describing the license, for the sidebar.
469
# I recommend using the Creative Commons' wizard:
470
# http://creativecommons.org/choose/
472
# <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.5/ar/">
473
# <img alt="Creative Commons License BY-NC-SA"
474
# style="border-width:0; margin-bottom:12px;"
475
# src="http://i.creativecommons.org/l/by-nc-sa/2.5/ar/88x31.png"></a>"""
477
# A small copyright notice for the page footer (in HTML).
479
CONTENT_FOOTER = 'Contents © {date} {author} - Powered by <a href="http://getnikola.com" rel="nofollow">Nikola</a> {license}'
481
# Things that will be passed to CONTENT_FOOTER.format(). This is done
482
# for translatability, as dicts are not formattable. Nikola will
483
# intelligently format the setting properly.
484
# The setting takes a dict. The keys are languages. The values are
485
# tuples of tuples of positional arguments and dicts of keyword arguments
486
# to format(). For example, {'en': (('Hello'), {'target': 'World'})}
487
# results in CONTENT_FOOTER['en'].format('Hello', target='World').
488
# WARNING: If you do not use multiple languages with CONTENT_FOOTER, this
489
# still needs to be a dict of this format. (it can be empty if you
490
# do not need formatting)
492
CONTENT_FOOTER_FORMATS = {
497
"author": BLOG_AUTHOR,
498
"date": time.gmtime().tm_year,
504
# To use comments, you can choose between different third party comment
505
# systems. The following comment systems are supported by Nikola:
506
# disqus, facebook, googleplus, intensedebate, isso, livefyre, muut
507
# You can leave this option blank to disable comments.
509
# And you also need to add your COMMENT_SYSTEM_ID which
510
# depends on what comment system you use. The default is
511
# "nikolademo" which is a test account for Disqus. More information
513
COMMENT_SYSTEM_ID = ""
515
# Enable annotations using annotateit.org?
516
# If set to False, you can still enable them for individual posts and pages
517
# setting the "annotations" metadata.
518
# If set to True, you can disable them for individual posts and pages using
519
# the "noannotations" metadata.
520
# ANNOTATIONS = False
522
# Create index.html for page (story) folders?
523
# WARNING: if a page would conflict with the index file (usually
524
# caused by setting slug to `index`), the STORY_INDEX
525
# will not be generated for that directory.
526
# STORY_INDEX = False
527
# Enable comments on story pages?
528
# COMMENTS_IN_STORIES = False
529
# Enable comments on picture gallery pages?
530
# COMMENTS_IN_GALLERIES = False
532
# What file should be used for directory indexes?
533
# Defaults to index.html
534
# Common other alternatives: default.html for IIS, index.php
535
# INDEX_FILE = "index.html"
537
# If a link ends in /index.html, drop the index.html part.
538
# http://mysite/foo/bar/index.html => http://mysite/foo/bar/
539
# (Uses the INDEX_FILE setting, so if that is, say, default.html,
540
# it will instead /foo/default.html => /foo)
541
# (Note: This was briefly STRIP_INDEX_HTML in v 5.4.3 and 5.4.4)
543
# STRIP_INDEXES = False
545
# Should the sitemap list directories which only include other directories
549
# e.g. /2012 includes only /01, /02, /03, /04, ...: don't add it to the sitemap
550
# if /2012 includes any files (including index.html)... add it to the sitemap
551
# SITEMAP_INCLUDE_FILELESS_DIRS = True
553
# List of files relative to the server root (!) that will be asked to be excluded
554
# from indexing and other robotic spidering. * is supported. Will only be effective
555
# if SITE_URL points to server root. The list is used to exclude resources from
556
# /robots.txt and /sitemap.xml, and to inform search engines about /sitemapindex.xml.
557
# ROBOTS_EXCLUSIONS = ["/archive.html", "/category/*.html"]
559
# Instead of putting files in <slug>.html, put them in
560
# <slug>/index.html. Also enables STRIP_INDEXES
561
# This can be disabled on a per-page/post basis by adding
562
# .. pretty_url: False
564
# PRETTY_URLS = False
566
# If True, publish future dated posts right away instead of scheduling them.
568
# FUTURE_IS_NOW = False
570
# If True, future dated posts are allowed in deployed output
571
# Only the individual posts are published/deployed; not in indexes/sitemap
572
# Generally, you want FUTURE_IS_NOW and DEPLOY_FUTURE to be the same value.
573
# DEPLOY_FUTURE = False
574
# If False, draft posts will not be deployed
575
# DEPLOY_DRAFTS = True
577
# Allows scheduling of posts using the rule specified here (new_post -s)
578
# Specify an iCal Recurrence Rule: http://www.kanzaki.com/docs/ical/rrule.html
580
# If True, use the scheduling rule to all posts by default
581
# SCHEDULE_ALL = False
583
# Do you want a add a Mathjax config file?
584
# MATHJAX_CONFIG = ""
586
# If you are using the compile-ipynb plugin, just add this one:
587
# MATHJAX_CONFIG = """
588
# <script type="text/x-mathjax-config">
589
# MathJax.Hub.Config({
591
# inlineMath: [ ['$','$'], ["\\\(","\\\)"] ],
592
# displayMath: [ ['$$','$$'], ["\\\[","\\\]"] ]
594
# displayAlign: 'left', // Change this to 'center' to center equations.
596
# styles: {'.MathJax_Display': {"margin": 0}}
602
# Do you want to customize the nbconversion of your IPython notebook?
604
# With the following example configuration you can use a custom jinja template
605
# called `toggle.tpl` which has to be located in your site/blog main folder:
606
# IPYNB_CONFIG = {'Exporter':{'template_file': 'toggle'}}
608
# What Markdown extensions to enable?
609
# You will also get gist, nikola and podcast because those are
610
# done in the code, hope you don't mind ;-)
611
# Note: most Nikola-specific extensions are done via the Nikola plugin system,
612
# with the MarkdownExtension class and should not be added here.
613
# MARKDOWN_EXTENSIONS = ['fenced_code', 'codehilite']
615
# Social buttons. This is sample code for AddThis (which was the default for a
616
# long time). Insert anything you want here, or even make it empty.
618
# SOCIAL_BUTTONS_CODE = """
619
# <!-- Social buttons -->
620
# <div id="addthisbox" class="addthis_toolbox addthis_peekaboo_style addthis_default_style addthis_label_style addthis_32x32_style">
621
# <a class="addthis_button_more">Share</a>
622
# <ul><li><a class="addthis_button_facebook"></a>
623
# <li><a class="addthis_button_google_plusone_share"></a>
624
# <li><a class="addthis_button_linkedin"></a>
625
# <li><a class="addthis_button_twitter"></a>
628
# <script src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-4f7088a56bb93798"></script>
629
# <!-- End of social buttons -->
631
SOCIAL_BUTTONS_CODE = ''
633
# Show link to source for the posts?
634
# Formerly known as HIDE_SOURCELINK (inverse)
635
SHOW_SOURCELINK = False
636
# Copy the source files for your pages?
637
# Setting it to False implies SHOW_SOURCELINK = False
640
# Modify the number of Post per Index Page
642
# INDEX_DISPLAY_POST_COUNT = 10
644
# By default, Nikola generates RSS files for the website and for tags, and
645
# links to it. Set this to False to disable everything RSS-related.
648
# RSS_LINK is a HTML fragment to link the RSS or Atom feeds. If set to None,
649
# the base.tmpl will use the feed Nikola generates. However, you may want to
650
# change it for a feedburner feed or something else.
653
# Show only teasers in the RSS feed? Default to True
656
# Strip HTML in the RSS feed? Default to False
659
# A search form to search this site, for the sidebar. You can use a Google
660
# custom search (http://www.google.com/cse/)
661
# Or a DuckDuckGo search: https://duckduckgo.com/search_box.html
662
# Default is no search form.
666
# This search form works for any site and looks good in the "site" theme where
667
# it appears on the navigation bar:
670
# <!-- Custom search -->
671
# <form method="get" id="search" action="//duckduckgo.com/"
672
# class="navbar-form pull-left">
673
# <input type="hidden" name="sites" value="%s"/>
674
# <input type="hidden" name="k8" value="#444444"/>
675
# <input type="hidden" name="k9" value="#D51920"/>
676
# <input type="hidden" name="kt" value="h"/>
677
# <input type="text" name="q" maxlength="255"
678
# placeholder="Search…" class="span2" style="margin-top: 4px;"/>
679
# <input type="submit" value="DuckDuckGo Search" style="visibility: hidden;" />
681
# <!-- End of custom search -->
684
# If you prefer a Google search form, here's an example that should just work:
686
# <!-- Custom search with Google-->
687
# <form id="search" action="//www.google.com/search" method="get" class="navbar-form pull-left">
688
# <input type="hidden" name="q" value="site:%s" />
689
# <input type="text" name="q" maxlength="255" results="0" placeholder="Search"/>
691
# <!-- End of custom search -->
694
# Use content distribution networks for jquery, twitter-bootstrap css and js,
695
# and html5shiv (for older versions of Internet Explorer)
696
# If this is True, jquery and html5shiv is served from the Google and twitter-
697
# bootstrap is served from the NetDNA CDN
698
# Set this to False if you want to host your site without requiring access to
699
# external resources.
702
# Check for USE_CDN compatibility.
703
# If you are using custom themes, have configured the CSS properly and are
704
# receiving warnings about incompatibility but believe they are incorrect, you
705
# can set this to False.
706
# USE_CDN_WARNING = True
708
# Extra things you want in the pages HEAD tag. This will be added right
711
# EXTRA_HEAD_DATA = ""
712
EXTRA_HEAD_DATA = """<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">"""
714
# Google Analytics or whatever else you use. Added to the bottom of <body>
715
# in the default template (base.tmpl).
719
# The possibility to extract metadata from the filename by using a
720
# regular expression.
721
# To make it work you need to name parts of your regular expression.
722
# The following names will be used to extract metadata:
730
# An example re is the following:
731
# '(?P<date>\d{4}-\d{2}-\d{2})-(?P<slug>.*)-(?P<title>.*)\.md'
732
# FILE_METADATA_REGEXP = None
734
# If you hate "Filenames with Capital Letters and Spaces.md", you should
736
UNSLUGIFY_TITLES = True
738
# Additional metadata that is added to a post when creating a new_post
739
# ADDITIONAL_METADATA = {}
741
# Nikola supports Open Graph Protocol data for enhancing link sharing and
742
# discoverability of your site on Facebook, Google+, and other services.
743
# Open Graph is enabled by default.
744
# USE_OPEN_GRAPH = True
746
# Nikola supports Twitter Card summaries
747
# Twitter cards are disabled by default. They make it possible for you to
748
# attach media to Tweets that link to your content.
751
# Please note, that you need to opt-in for using Twitter Cards!
752
# To do this please visit
753
# https://dev.twitter.com/form/participate-twitter-cards
755
# Uncomment and modify to following lines to match your accounts.
756
# Specifying the id for either 'site' or 'creator' will be preferred
757
# over the cleartext username. Specifying an ID is not necessary.
758
# Displaying images is currently not supported.
760
# # 'use_twitter_cards': True, # enable Twitter Cards
761
# # 'site': '@website', # twitter nick for the website
762
# # 'site:id': 123456, # Same as site, but the website's Twitter user ID
764
# # 'creator': '@username', # Username for the content creator / author.
765
# # 'creator:id': 654321, # Same as creator, but the Twitter user's ID.
768
# If webassets is installed, bundle JS and CSS to make site loading faster
771
# Plugins you don't want to use. Be careful :-)
772
# DISABLED_PLUGINS = ["render_galleries"]
774
# Add the absolute paths to directories containing plugins to use them.
775
# For example, the `plugins` directory of your clone of the Nikola plugins
777
# EXTRA_PLUGINS_DIRS = []
779
# List of regular expressions, links matching them will always be considered
780
# valid by "nikola check -l"
781
# LINK_CHECK_WHITELIST = []
783
# If set to True, enable optional hyphenation in your posts (requires pyphen)
786
# The <hN> tags in HTML generated by certain compilers (reST/Markdown)
787
# will be demoted by that much (1 → h1 will become h2 and so on)
788
# This was a hidden feature of the Markdown and reST compilers in the
789
# past. Useful especially if your post titles are in <h1> tags too, for
794
# If you don’t like slugified file names ([a-z0-9] and a literal dash),
795
# and would prefer to use all the characters your file system allows.
796
# USE WITH CARE! This is also not guaranteed to be perfect, and may
797
# sometimes crash Nikola, your web server, or eat your cat.
800
# You can configure the logging handlers installed as plugins or change the
801
# log level of the default stderr handler.
802
# WARNING: The stderr handler allows only the loglevels of 'INFO' and 'DEBUG'.
803
# This is done for safety reasons, as blocking out anything other
804
# than 'DEBUG' may hide important information and break the user
808
'stderr': {'loglevel': 'INFO', 'bubble': True},
810
# 'from_addr': 'test-errors@example.com',
811
# 'recipients': ('test@example.com'),
812
# 'credentials':('testusername', 'password'),
813
# 'server_addr': ('127.0.0.1', 25),
820
# Templates will use those filters, along with the defaults.
821
# Consult your engine's documentation on filters if you need help defining
823
# TEMPLATE_FILTERS = {}
825
# Put in global_context things you want available on all your templates.
826
# It can be anything, data, functions, modules, etc.
829
# Add functions here and they will be called with template
830
# GLOBAL_CONTEXT as parameter when the template is about to be
832
GLOBAL_CONTEXT_FILLER = []