Case2 → convertion between different casing with full unicode support

Case2 is a drop-in replacement for Recase supporting Unicode Default Identifiers.

iex> Case2.to_snake "foo_barBaz-λambdaΛambda-привет-Мир"
#⇒ "foo_bar_baz_λambda_λambda_привет_мир"

iex> Case2.to_camel "foo_barBaz-λambdaΛambda-привет-Мир"
#⇒ "fooBarBazΛambdaΛambdaПриветМир"

Functions available:

  • rejoin(input, opts \\ []) — splits the input and rejoins it with a separator given. Opts are:

    • separator :: binary() | non-neg-integer(),
    • case :: :down | :up | :title | :none
  • split/1 — splits the input into list. Utility function.

  • to_camel/1

  • to_constant/1

  • to_dot/1

  • to_kebab/1

  • to_pascal/1

  • to_path/1

  • to_sentence/1

  • to_snake/1

  • to_title/1

6 Likes

We considered to backport it to Recase FWIW.

Thanks, Nikita for welcoming massive changes.

4 Likes