* Added function str_indent for completeness.
This commit is contained in:
@@ -57,9 +57,23 @@ def matrix_str(M, fmt="%22.15g", prefix="", suffix=""):
|
|||||||
return prefix + linesep.join([ " ".join([ fmt % c for c in R ]) for R in M ]) + suffix
|
return prefix + linesep.join([ " ".join([ fmt % c for c in R ]) for R in M ]) + suffix
|
||||||
|
|
||||||
|
|
||||||
|
def str_indent(text, indent=" "*4):
|
||||||
|
"""Indents a text block by a given prefix.
|
||||||
|
If the indent is a number 'N', a string of N white spaces are taken as
|
||||||
|
the prefix.
|
||||||
|
|
||||||
|
In python 3, textwrap.indent can accomplish the same thing."""
|
||||||
|
if not isinstance(indent, basestring):
|
||||||
|
# Assume this is a numeric:
|
||||||
|
indent = " " * indent
|
||||||
|
return indent + ('\n'+indent).join(x for x in str(text).splitlines())
|
||||||
|
|
||||||
def str_unindent(S, amount=None):
|
def str_unindent(S, amount=None):
|
||||||
"""Automatically unidents a string based on the first indentation found
|
"""Automatically unidents a string based on the first indentation found
|
||||||
on a nonempty string line. Assuming UNIX LF end-of-line."""
|
on a nonempty string line. Assuming UNIX LF end-of-line.
|
||||||
|
|
||||||
|
Note: textwrap.dedent accomplishes a similar function (but the amount of
|
||||||
|
white spaces to remove is automatically detected)."""
|
||||||
|
|
||||||
if amount == None:
|
if amount == None:
|
||||||
nindent = -1 # autodetect, default
|
nindent = -1 # autodetect, default
|
||||||
|
|||||||
Reference in New Issue
Block a user