Skip to content

Commit

Permalink
Add a default_config command
Browse files Browse the repository at this point in the history
  • Loading branch information
ralsina committed Oct 23, 2017
1 parent 45b35ab commit dc5ec42
Show file tree
Hide file tree
Showing 3 changed files with 72 additions and 3 deletions.
4 changes: 1 addition & 3 deletions CHANGES.txt
@@ -1,9 +1,7 @@
New in master
=============

Features
--------

* New default-config command to generate a clean configuration.
* New ``thumbnail`` shortcode similar to the reStructuredText
``thumbnail`` directive (via Issue #2809)
* Rewrite ``nikola auto`` with asyncio and aiohttp (Issue #2850)
Expand Down
13 changes: 13 additions & 0 deletions nikola/plugins/command/default_config.plugin
@@ -0,0 +1,13 @@
[Core]
name = default_config
module = default_config

[Documentation]
author = Roberto Alsina
version = 1.0
website = https://getnikola.com/
description = Show the default configuration.

[Nikola]
PluginCategory = Command

58 changes: 58 additions & 0 deletions nikola/plugins/command/default_config.py
@@ -0,0 +1,58 @@
# -*- coding: utf-8 -*-

# Copyright © 2012-2017 Roberto Alsina and others.

# Permission is hereby granted, free of charge, to any
# person obtaining a copy of this software and associated
# documentation files (the "Software"), to deal in the
# Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the
# Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice
# shall be included in all copies or substantial portions of
# the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
# OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
# OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

"""Show the default configuration."""

from nikola.plugin_categories import Command
from nikola.utils import get_logger
import nikola.plugins.command.init

try:
print(nikola.plugins.command.init.CommandInit.create_configuration_to_string())
except:
print(nikola.plugins.command.init.CommandInit.create_configuration_to_string().encode('utf-8'))



LOGGER = get_logger('default_config')

class CommandShowConfig(Command):
"""Show the default configuration."""

name = "default_config"

doc_usage = ""
needs_config = False
doc_purpose = "print the default Nikola configuration."
cmd_options = []


def _execute(self, options={}, args=None):
"""Show the default configuration."""
try:
print(nikola.plugins.command.init.CommandInit.create_configuration_to_string())
except:
print(nikola.plugins.command.init.CommandInit.create_configuration_to_string().encode('utf-8'))

0 comments on commit dc5ec42

Please sign in to comment.