Excribe is a simple text formatting utility for Elixir.
Excribe helps you format the text in paragraph-like form. It supports word wrapping, indentation and text alignment.
This package is available in Hex. Simply add
:excribe
to your list of deps in mix.exs
.
def deps do
[{:excribe, git: "git@github.com:benitezhm/excribe.git"}]
end
Read the documentation for detailed explanation of functions provided by Excribe.
# lipsum = "Lorem ipsum dolor ..."
iex> lipsum |> Excribe.format(width: 60) |> IO.puts
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Mauris id eleifend risus. Aenean ut vestibulum velit.
Pellentesque habitant morbi tristique senectus et netus et
malesuada fames ac turpis egestas. Maecenas a suscipit
purus, in tincidunt nisl. Proin dignissim ligula sit amet
felis ultricies, nec accumsan orci convallis.
:ok
iex> lipsum |> Excribe.format(width: 60, indent: 4, hanging: 8) |> IO.puts
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Mauris id eleifend risus. Aenean ut vestibulum
velit. Pellentesque habitant morbi tristique
senectus et netus et malesuada fames ac turpis
egestas. Maecenas a suscipit purus, in tincidunt
nisl. Proin dignissim ligula sit amet felis
ultricies, nec accumsan orci convallis.
:ok
iex> lipsum |> Excribe.format(width: 60, align: :right) |> IO.puts
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Mauris id eleifend risus. Aenean ut vestibulum velit.
Pellentesque habitant morbi tristique senectus et netus et
malesuada fames ac turpis egestas. Maecenas a suscipit
purus, in tincidunt nisl. Proin dignissim ligula sit amet
felis ultricies, nec accumsan orci convallis.
:ok
iex> lipsum |> Excribe.format(width: 60, align: :justify) |> IO.puts
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Mauris id eleifend risus. Aenean ut vestibulum velit.
Pellentesque habitant morbi tristique senectus et netus et
malesuada fames ac turpis egestas. Maecenas a suscipit
purus, in tincidunt nisl. Proin dignissim ligula sit amet
felis ultricies, nec accumsan orci convallis.
:ok
- Support multi-line texts
- Support
ansilist
(fromIO.ANSI
)
Excribe is licensed under the terms of The MIT License. Check LICENSE
file for
the full text of The MIT License.