summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzsiddiqui2 <devnull@localhost>2014-07-27 19:57:33 -0500
committerzsiddiqui2 <devnull@localhost>2014-07-27 19:57:33 -0500
commit1b741584b8f5f767b6e4b6c82601cee00c75e36d (patch)
tree8b0bd2a1cc3487c44f7f8c9c9555df6e25b020ca
parent12723b669c57b63d95db40a8bb989ea950cf8fb3 (diff)
downloadsphinx-1b741584b8f5f767b6e4b6c82601cee00c75e36d.tar.gz
added dedent to codeblock
-rw-r--r--sphinx/directives/code.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/sphinx/directives/code.py b/sphinx/directives/code.py
index d1607714..a3e32be1 100644
--- a/sphinx/directives/code.py
+++ b/sphinx/directives/code.py
@@ -56,6 +56,7 @@ class CodeBlock(Directive):
final_argument_whitespace = False
option_spec = {
'linenos': directives.flag,
+ 'dedent': int,
'lineno-start': int,
'emphasize-lines': directives.unchanged_required,
'filename': directives.unchanged_required,
@@ -74,6 +75,15 @@ class CodeBlock(Directive):
return [document.reporter.warning(str(err), line=self.lineno)]
else:
hl_lines = None
+
+ if 'dedent' in self.options:
+ linesArray = code.split('\n')
+ for i in range(0, len(linesArray)):
+ if len(linesArray[i]) <= self.options['dedent']:
+ linesArray[i] = linesArray[i][len(linesArray[i]) - 1:]
+ else:
+ linesArray[i] = linesArray[i][self.options['dedent']:]
+ code = '\n'.join(linesArray)
literal = nodes.literal_block(code, code)
literal['language'] = self.arguments[0]