anchor.diff:                         <<" ◼ "/utf8>>,<<" ◻ "/utf8>>])
       end.
   
  -% Look for the length of the last line of a string
  +%% Look for the length of the last line of a string
   lastline(Str) ->
       LastStr = case string:find(Str,"\n",trailing) of
                     nomatch ->
  
positive.code:             render_words(T,State,NewPosSpc,Ind,[[Word|Line]|LineAcc],Cols)
      end;
  render_words([],_State,Pos,_Ind,Acc,_Cols) ->
      Lines = lists:join(
                $\n,lists:map(fun(RevLine) ->
                                      Line = lists:reverse(RevLine),
                                      lists:join($ ,Line)
                              end,lists:reverse(Acc))),
      {iolist_to_binary(Lines), Pos}.
  
  render_type_signature(Name, #config{ docs = #docs_v1{ metadata = #{ types := AllTypes }}}) ->
  
negative.code:             [erl_pp:attribute(maps:get(Type, AllTypes)) || Type <- Types]
      end.
  
  %% Pad N spaces (and possibly pre-prend newline), disabling any ansi formatting while doing so.
  pad(N) ->
      pad(N,"").
  nlpad(N) ->
      %% It is important that we disable the ansi code before the new-line as otherwise the
      %% ansi decoration may be enabled when c:paged_output tries to ask if more content
      %% should be displayed.
      pad(N,"\n").
  pad(N, Extra) ->
      Pad = lists:duplicate(N," "),
      case ansi() of
          undefined ->
              [Extra, Pad];
          Ansi ->
              ["\033[0m",Extra,Pad,Ansi]
      end.
  
  get_bullet(_State,latin1) ->
  