Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
executable file 239 lines (206 sloc) 9.16 KB
# -*- coding: utf-8 -*-
########################################
# Configuration, please edit
########################################
# post_pages contains (wildcard, destination, template, use_in_feed) tuples.
#
# The wildcard is used to generate a list of reSt source files
# (whatever/thing.txt).
# That fragment must have an associated metadata file (whatever/thing.meta),
# and opcionally translated files (example for spanish, with code "es"):
# whatever/thing.txt.es and whatever/thing.meta.es
#
# From those files, a set of HTML fragment files will be generated:
# whatever/thing.html (and maybe whatever/thing.html.es)
#
# These files are combinated with the template to produce rendered
# pages, which will be placed at
# output / TRANSLATIONS[lang] / destination / pagename.html
#
# where "pagename" is specified in the metadata file.
#
# if use_in_feed is True, then those posts will be added to the site's
# rss feeds.
#
post_pages = (
("posts/*.txt", "posts", "post.tmpl", True),
("stories/*.txt", "stories", "story.tmpl", False),
)
# A mapping of languages to file-extensions that represent that language.
# Feel free to add or delete extensions to any list, but don't add any new
# compilers unless you write the interface for it yourself.
#
# 'rest' is reStructuredText
# 'markdown' is MarkDown
post_compilers = {
"rest": ('.txt', '.rst'),
"markdown": ('.md', '.mdown', '.markdown')
}
# What is the default language?
DEFAULT_LANG = "en"
# What languages do you have?
# If a specific post is not translated to a language, then the version
# in the default language will be shown instead.
# The format is {"translationcode" : "path/to/translation" }
# the path will be used as a prefix for the generated pages location
TRANSLATIONS = {
"en": "en",
"ru": "ru",
"ua": "ua",
}
# Paths for different autogenerated bits. These are combined with the
# translation paths.
# Final locations are:
# 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)
TAG_PATH = "categories"
# Final location is output / TRANSLATION[lang] / INDEX_PATH / index-*.html
INDEX_PATH = ""
# Final locations for the archives are:
# output / TRANSLATION[lang] / ARCHIVE_PATH / archive.html
# output / TRANSLATION[lang] / ARCHIVE_PATH / YEAR / index.html
ARCHIVE_PATH = ""
# Final locations are:
# output / TRANSLATION[lang] / RSS_PATH / rss.xml
RSS_PATH = ""
# A list of redirection tuples, [("foo/from.html", "/bar/to.html")].
#
# A HTML file will be created in output/foo/from.html that redirects
# to the "/bar/to.html" URL. notice that the "from" side MUST be a
# relative URL.
#
# If you don't need any of these, just set to []
REDIRECTIONS = [("index.html", "/ua/index.html"),
('archive.html', '/en/archive.html'),
('categories/index.html', '/en/categories/index.html'),
('stories/kyivpy-place.html', '/en/stories/kyivpy-place.html'),
('stories/kyivpy-events.html', '/en/stories/kyivpy-events.html'),
('stories/python-meetups.html', '/en/stories/python-meetups.html')
]
# Commands to execute to deploy. Can be anything, for example,
# you may use rsync:
# "rsync -rav output/* joe@my.site:/srv/www/site"
# And then do a backup, or ping pingomatic.
# To do manual deployment, set it to []
DEPLOY_COMMANDS = [
'rsync -rav output/* root@discoveryukraine.com:/var/sites/kyivpy.org.ua/']
# Where the output site should be located
# If you don't use an absolute path, it will be considered as relative
# to the location of conf.py
OUTPUT_FOLDER = 'output'
##############################################################################
# Image Gallery Options
##############################################################################
# Galleries are folders in galleries/
# Final location of galleries will be output / GALLERY_PATH / gallery_name
GALLERY_PATH = "galleries"
THUMBNAIL_SIZE = 180
##############################################################################
# HTML fragments and diverse things that are used by the templates
##############################################################################
# Data about this site
BLOG_TITLE = "Kyiv.Py"
BLOG_URL = "http://kyivpy.org.ua"
BLOG_EMAIL = "gotsyk@gmail.com"
BLOG_DESCRIPTION = "Kyiv.Py - regular python-related meetups in Kyiv, Ukraine"
# Name of the theme to use. Themes are located in themes/theme_name
THEME = 'site'
# Name of the template engie to use. Usually this is theme dependent
# and you probably don't want to touch it. Supported values are
# "mako" and "jinja"
TEMPLATE_ENGINE = "mako"
# A HTML fragment describing the license, for the sidebar.
# I recomment using the Creative Commons' wizard:
# http://creativecommons.org/choose/
LICENSE = """
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.5/ar/">
<img alt="Creative Commons License" style="border-width:0; margin-bottom:12px;"
src="http://i.creativecommons.org/l/by-nc-sa/2.5/ar/88x31.png"></a>"""
# A small copyright notice for the page footer
CONTENT_FOOTER = u"Contents © 2012 Kyiv Python Users Group <gotsyk@gmail.com>"
# To enable comments via Disqus, you need to create a forum at
# http://disqus.com, and set DISQUS_FORUM to the short name you selected.
# If you want to disable comments, set it to False.
DISQUS_FORUM = "kyivpy"
# 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 = """
#<link rel="alternate" type="application/rss+xml" title="RSS" href="http://feeds.feedburner.com/LateralOpinion">
#<link rel="alternate" type="application/rss+xml" title="RSS en Espanol" href="http://feeds.feedburner.com/LateralOpinionEsp">
#"""
RSS_LINK = None
# A search form to search this site, for the sidebar. You can use a google
# custom search (http://www.google.com/cse/)
# Or a duckduckgo search: https://duckduckgo.com/search_box.html
# This example should work for pretty much any site we generate.
SEARCH_FORM = ""
## This search form is better for the "site" theme where it appears on the navigation bar
#SEARCH_FORM = """
#<!-- Custom search -->
#<form method="get" id="search" action="http://duckduckgo.com/" class="navbar-form pull-left">
#<input type="hidden" name="sites" value="%s"/>
#<input type="hidden" name="k8" value="#444444"/>
#<input type="hidden" name="k9" value="#D51920"/>
#<input type="hidden" name="kt" value="h"/>
#<input type="text" name="q" maxlength="255" placeholder="Search&hellip;" class="span2" style="margin-top: 4px;"/>
#<input type="submit" value="DuckDuckGo Search" style="visibility: hidden;" />
#</form>
#<!-- End of custom search -->
#""" % BLOG_URL
# Google analytics or whatever else you use. Added to the bottom of <body>
# in the default template (base.tmpl).
ANALYTICS = """<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-66492-21']);
_gaq.push(['_setDomainName', 'kyivpy.org.ua']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
"""
# Put in global_context things you want available on all your templates.
# It can be anything, data, functions, modules, etc.
GLOBAL_CONTEXT = {
'analytics': ANALYTICS,
'blog_title': BLOG_TITLE,
'blog_url': BLOG_URL,
'translations': TRANSLATIONS,
'license': LICENSE,
'search_form': SEARCH_FORM,
'disqus_forum': DISQUS_FORUM,
'content_footer': CONTENT_FOOTER,
'rss_path': RSS_PATH,
'rss_link': RSS_LINK,
# Locale-dependent links for the sidebar
'sidebar_links': {
'en': (
('/en/archive.html', 'Archives'),
('/en/categories/index.html', 'Tags'),
('/en/stories/kyivpy-place.html', 'Venue'),
('/en/stories/kyivpy-events.html', 'Previous KyivPy'),
('/en/stories/python-meetups.html', 'Other Python meetups'),
('http://ua.pycon.org', 'PyCon Ukraine'),
),
'ua': (
('/ua/archive.html', u'Архів'),
('/ua/categories/index.html', u'Теги'),
('/ua/stories/kyivpy-place.html', u'Місце проведення'),
('/ua/stories/kyivpy-events.html', u'Попередні події KyivPy'),
('/ua/stories/python-meetups.html', u'Інші Python-події'),
('http://ua.pycon.org', u'PyCon Ukraine'),
),
'ru': (
('/ru/archive.html', u'Архив'),
('/ru/categories/index.html', u'Теги'),
('/ru/stories/kyivpy-place.html', u'Место проведения'),
('/ru/stories/kyivpy-events.html', u'Предыдущие события'),
('/ru/stories/python-meetups.html', u'Другие Python-события'),
('http://ua.pycon.org', 'PyCon Ukraine'),
)
}
}