Packages
io_ansi_table
1.0.21
1.0.40
1.0.39
1.0.38
1.0.37
1.0.36
1.0.34
1.0.33
1.0.32
1.0.31
1.0.30
1.0.29
1.0.28
1.0.27
1.0.26
1.0.25
1.0.24
1.0.23
1.0.22
1.0.21
1.0.20
1.0.19
1.0.18
1.0.17
1.0.16
1.0.15
1.0.14
1.0.13
1.0.12
1.0.11
1.0.10
1.0.9
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.4.32
0.4.31
0.4.30
0.4.29
0.4.28
0.4.27
0.4.26
0.4.25
0.4.24
0.4.23
0.4.22
0.4.21
0.4.20
0.4.19
0.4.18
0.4.17
0.4.16
0.4.15
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.29
0.3.28
0.3.27
0.3.26
0.3.25
0.3.24
0.3.23
0.3.22
0.3.21
0.3.20
0.3.19
0.3.18
0.3.17
0.3.16
0.3.15
0.3.14
0.3.13
0.3.12
0.3.11
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.20
0.1.19
0.1.18
0.1.17
0.1.16
0.1.15
0.1.14
0.1.13
0.1.12
0.1.11
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
Writes data to "stdio" in a table with borders and colors. Can choose a table style to change the look of the table.
Current section
Files
Jump to
Current section
Files
lib/io/ansi/table/spec/left_margin.ex
defmodule IO.ANSI.Table.Spec.LeftMargin do
@moduledoc """
Derives the left margin of a table.
"""
alias IO.ANSI.Plus, as: ANSI
alias IO.ANSI.Table.Spec
@doc """
Derives the left margin of a table.
## Examples
iex> alias IO.ANSI.Table.Spec.LeftMargin
iex> alias IO.ANSI.Table.Spec
iex> spec = Spec.new([:c4, :c1, :c2], margins: [left: 3])
iex> %Spec{left_margin: left_margin} = LeftMargin.derive_and_put(spec)
iex> left_margin
"\e[3C"
iex> alias IO.ANSI.Table.Spec.LeftMargin
iex> alias IO.ANSI.Table.Spec
iex> spec = Spec.new([:c4, :c1, :c2], margins: [left: 0])
iex> %Spec{left_margin: left_margin} = LeftMargin.derive_and_put(spec)
iex> left_margin
""
"""
@spec derive_and_put(Spec.t()) :: Spec.t()
def derive_and_put(%Spec{margins: margins} = spec) do
left_margin =
case margins[:left] do
# Move the cursor forward N columns: \e[<N>C
n when n >= 1 -> ANSI.cursor_right(n)
_ -> ""
end
put_in(spec.left_margin, left_margin)
end
end