diff options
Diffstat (limited to 'nikola/plugins/compile/rest/gist.py')
| -rw-r--r-- | nikola/plugins/compile/rest/gist.py | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/nikola/plugins/compile/rest/gist.py b/nikola/plugins/compile/rest/gist.py index ab4d56d..736ee37 100644 --- a/nikola/plugins/compile/rest/gist.py +++ b/nikola/plugins/compile/rest/gist.py @@ -1,6 +1,8 @@ # -*- coding: utf-8 -*- # This file is public domain according to its author, Brian Hsu +"""Gist directive for reStructuredText.""" + import requests from docutils.parsers.rst import Directive, directives from docutils import nodes @@ -10,26 +12,28 @@ from nikola.plugin_categories import RestExtension class Plugin(RestExtension): + """Plugin for gist directive.""" + name = "rest_gist" def set_site(self, site): + """Set Nikola site.""" self.site = site directives.register_directive('gist', GitHubGist) return super(Plugin, self).set_site(site) class GitHubGist(Directive): - """ Embed GitHub Gist. - - Usage: - .. gist:: GIST_ID + """Embed GitHub Gist. - or + Usage: - .. gist:: GIST_URL + .. gist:: GIST_ID + or + .. gist:: GIST_URL """ required_arguments = 1 @@ -39,10 +43,12 @@ class GitHubGist(Directive): has_content = False def get_raw_gist_with_filename(self, gistID, filename): + """Get raw gist text for a filename.""" url = '/'.join(("https://gist.github.com/raw", gistID, filename)) return requests.get(url).text def get_raw_gist(self, gistID): + """Get raw gist text.""" url = "https://gist.github.com/raw/{0}".format(gistID) try: return requests.get(url).text @@ -50,6 +56,7 @@ class GitHubGist(Directive): raise self.error('Cannot get gist for url={0}'.format(url)) def run(self): + """Run the gist directive.""" if 'https://' in self.arguments[0]: gistID = self.arguments[0].split('/')[-1].strip() else: |
