Documentation
¶
Overview ¶
Package dash answers the substrate's questions the way dash does.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Apply ¶
Apply makes any adjustment that is not a vector value. dash needs none: it has `local`, which is the only builtin the panel disagrees about.
func EditorStyle ¶
func EditorStyle() repl.EditorStyle
EditorStyle is what dash draws while a line is being typed.
// Measured: `^C` appears after the abandoned line. dash has no line editor, so that is the terminal echoing the interrupt character rather than dash drawing it — but a shell that takes the terminal raw, as this one does, has to draw it to look the same.
func HistoryStyle ¶
func HistoryStyle() repl.HistoryStyle
HistoryStyle is how dash searches its history and what it declines to keep.
dash has no history at all: measured on 2026-09-05, an interactive dash run with `HISTFILE` set leaves no file behind, and it has no line editor to search from either. There is therefore nothing to be compatible with, in either half.
The zero value it returns is not "dash's answer" but "no answer" — this shell offers a search and a recall list because it has a line editor and dash does not, and there is no measurement that would make one wording more dash-like than another.
func Prelude ¶
func Prelude() string
Prelude is the part of the dialect written as shell rather than as Go.
Empty, and that is dash's answer rather than a gap: it defines no functions of its own and names itself in no variable. A script asking which shell it is under gets nothing from dash, which is how a script tells dash from the three that answer.
func PromptStyle ¶
func PromptStyle() interp.PromptStyle
PromptStyle is what dash does to a prompt parameter's value before drawing it.
dash expands the value. An inherited `PS1='<$LOGNAME>@ '` draws the name, and `PS1='$((1+1))'` draws 2. It has no escape language beyond what expansion itself gives — which is where a `\\$` drawing a bare `$` comes from, since that is what a backslash does to a dollar during expansion and not a prompt feature at all.
Measured through a pty rather than taken from documentation: the panel disagrees about this, and the disagreement is why the field exists.
func Style ¶
Style is how a formatter lays this shell's scripts out.
The core's, on the same footing as ksh's: seven dash scripts on the machine and two of them voting on an indent is not a measurement, and POSIX has no style guide to fall back on. The common answer stands, labeled as a default rather than as evidence.
This shell reaches the fewest of the formatter's questions in any case. It has no brace short form, no `;&`, no `[[ ]]` — so most of what Style asks is unreachable here, and the layout it does get is the core's plain one.
Types ¶
This section is empty.