Current section
Files
Jump to
Current section
Files
lib/ex_doc/shell_lexer.ex
defmodule ExDoc.ShellLexer do
# Makeup lexer for sh, bash, etc commands.
# The only thing it does is making the `$ ` prompt not selectable.
@moduledoc false
@behaviour Makeup.Lexer
@impl true
def lex(text, _opts) do
text
|> String.split("\n")
|> Enum.flat_map(fn
"$ " <> rest ->
[
{:generic_prompt, %{selectable: false}, "$ "},
{:text, %{}, rest <> "\n"}
]
text ->
[{:text, %{}, text <> "\n"}]
end)
end
@impl true
def match_groups(_arg0, _arg1) do
raise "not implemented yet"
end
@impl true
def postprocess(_arg0, _arg1) do
raise "not implemented yet"
end
@impl true
def root(_arg0) do
raise "not implemented yet"
end
@impl true
def root_element(_arg0) do
raise "not implemented yet"
end
end