anchor.diff:  to_name("ź"++T, Acc, I) -> to_name(T, [$z|Acc], I+1);
   to_name("Ż"++T, Acc, I) -> to_name(T, [$z|Acc], I+1);
   to_name("ż"++T, Acc, I) -> to_name(T, [$z|Acc], I+1);
  +% Turkish support
  +to_name("Ş"++T, Acc, I) -> to_name(T, [$s|Acc], I+1);
  +to_name("ş"++T, Acc, I) -> to_name(T, [$s|Acc], I+1);
  +to_name("Ğ"++T, Acc, I) -> to_name(T, [$g|Acc], I+1);
  +to_name("ğ"++T, Acc, I) -> to_name(T, [$g|Acc], I+1);
  +to_name("İ"++T, Acc, I) -> to_name(T, [$i|Acc], I+1);
  +to_name("ı"++T, Acc, I) -> to_name(T, [$i|Acc], I+1);
  +
   % Other sequences of characters are mapped to $_
   to_name([_C|T], [$_|_] = Acc, I) ->
       to_name(T, Acc, I+1);
  
positive.code: %% @copyright 2009 Marc Worrell
  %% @date 2009-04-26
  %% @doc String related functions
  
  %% Copyright 2009 Marc Worrell
  %%
  
negative.code: 	escape_ical(<<$;, Rest/binary>>, Acc, N) -> escape_ical(Rest, <<Acc/binary, $\\, $;>>, N+2);
  	escape_ical(<<$\\, Rest/binary>>, Acc, N) -> escape_ical(Rest, <<Acc/binary, $\\, $\\>>, N+2);
  	escape_ical(<<C, Rest/binary>>, Acc, N) -> escape_ical(Rest, <<Acc/binary, C>>, N+1).
  
  
  
  test() ->
      A = "üçgen",
      A = to_lower(to_upper(A)),
      "ucgen" = to_name(A),
      ok.
  