r"""Add tabs to each line of text.

    :param text: the text to indent
    :param nb_tabs: number of tabs to add
    :param tab_str: type of tab (could be, for example "\t", default: 2 spaces
    :param linebreak_input: linebreak on input
    :param linebreak_output: linebreak on output
    :param wrap: wethever to apply smart text wrapping.
        (by means of wrap_text_in_a_box)
    :return: indented text as string

def indent_text(text,
                nb_tabs=0,
                tab_str="  ",
                linebreak_input="\n",
                linebreak_output="\n",
                wrap=False):
    r"""Add tabs to each line of text.

    :param text: the text to indent
    :param nb_tabs: number of tabs to add
    :param tab_str: type of tab (could be, for example "\t", default: 2 spaces
    :param linebreak_input: linebreak on input
    :param linebreak_output: linebreak on output
    :param wrap: wethever to apply smart text wrapping.
        (by means of wrap_text_in_a_box)
    :return: indented text as string
    """
    if not wrap:
        lines = text.split(linebreak_input)
        tabs = nb_tabs * tab_str
        output = ""
        for line in lines:
            output += tabs + line + linebreak_output
        return output
    else:
        return wrap_text_in_a_box(body=text, style='no_border',
                                  tab_str=tab_str, tab_num=nb_tabs)