     else
         last
 
-createWriter = (txt, styler, stream = stdout) => (msg, { endline = on, margin = off } = {}) =>
-    msg = inspect msg unless _.isString msg
+createWriter = (txt, styler, { stream = stdout, tagString = TAG_INDICATOR } = {}) =>
+    (msg, { endline = on, margin = off } = {}) =>
+        msg = inspect msg unless _.isString msg
 
-    msg += "\n" if endline is on
-    if margin
-        stream.write "\n " + tag(txt, styler) + fold(msg, LEFT_PADSTRING_LONG_LINES + " ") + "\n"
-    else
-        stream.write tag(txt, styler) + fold(msg)
-    @
+        msg += "\n" if endline is on
+        if margin
+            stream.write "\n " + tag(txt, styler, tagString) +
+            fold(msg, LEFT_PADSTRING_LONG_LINES + " ") + "\n"
+        else
+            stream.write tag(txt, styler, tagString) + fold(msg)
+        @
 
 # Exposed methods
 @write = (str, stream = stdout) => stream.write str; @

        verboseWriter args... if global.cli?.verbose?
        @

@info = @i = createWriter INFO, styler.info

@updateInfo = (msg) => @eraseLine(); @info(msg, endline: off); @

# Private methods
getNonOcuppyingLength = (str) -> str.length - stripColor(str).length

tag = (txt, style, tagString) -> style(_.padEnd(txt, LEFT_MARGIN)) + tagString

fold = (string, leftPad = LEFT_PADSTRING_LONG_LINES) ->
    cols = Math.max MINIMUM_COLS, MAX_COLS_PER_LINE - leftPad.length
