Augeas Variable Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
A
 alpha, Cron
 alphanum, Cron
C
 comment
 comment_default, IniFile
 comment_re, IniFile
D
 del_opt_ws, Util
 del_str, Util
 del_ws, Util
 del_ws_spc, Util
 del_ws_tab, Util
E
 empty
 entries_re, Xorg
 entry_re, IniFile
 eol
F
 filter
G
 generic_entry_re, Xorg
I
 indent
 int, Xorg
N
 num, Cron
Q
 quoted_string_val, Xorg
R
 record_label_re, IniFile
 record_re, IniFile
S
 section_re, Xorg
 secton_re_obsolete, Xorg
 sep, IniFile
 sep_col, Sudoers
 sep_com, Sudoers
 sep_cont, Sudoers
 sep_cont_opt, Sudoers
 sep_default, IniFile
 sep_dquote
 sep_eq
 sep_re, IniFile
 sep_spc
 service_attr, Xinetd
 stdexcl, Util
 sto_integer, Sudoers
 sto_to_com, Sudoers
 sto_to_com_cmnd, Sudoers
 sto_to_com_col, Sudoers
 sto_to_com_user, Sudoers
 sto_to_comment, IniFile
 sto_to_eol, IniFile
 sto_to_eq, Sudoers
 sto_to_spc, Sudoers
 sto_to_spc_no_dquote, Sudoers
T
 the valid values for schedules, Cron
 to_eol, Xorg
let alpha = /[A-Za-z]{3}/
let alphanum = num | alpha
let comment = Util.comment
let comment = Util.comment
let comment_default = ";"
Default value for comment pattern
let comment_re = /[;#]/
Default regexp for comment pattern
let del_opt_ws = del /[ \t]*/
Delete optional whitespace
let del_str (s:string) = del s s
Delete a string and default to it
let del_ws = del /[ \t]+/
Delete mandatory whitespace
let del_ws_spc = del_ws " "
Delete mandatory whitespace, default to single space
let del_ws_tab = del_ws "\t"
Delete mandatory whitespace, default to single tab
let empty = Util.empty
let empty = Util.empty
let entries_re = /(
   [oO]ption|[sS]creen|[iI]nput[dD]evice|[dD]river|[sS]ub[sS]ection|[dD]isplay|[iI]dentifier|[vV]ideo[rR]am|[dD]efault[dD]epth|[dD]evice
)/
This is a list of all patterns which have specific handlers, and should therefore not be matched by the generic handler
let entry_re = (/[A-Za-z][A-Za-z0-9\._-]+/)
Default regexp for entry keyword
let eol = Util.eol
let eol = Util.eol
End of line, inherited from Util.eol
let eol = del /[ \t]*(#)?[ \t]*\n/ "\n"
let eol = del /[ \t]*\n/ "\n"
let eol = del /[ \t]*\n/ "\n"
Delete end of line, including optional trailing whitespace
let eol = Util.eol
let generic_entry_re = /[^# \t\n\/]+/ - entries_re
let indent = Util.indent
let indent = del /[ \t]*/ ""
let indent = del /[ \t]*/ ""
Delete indentation, including leading whitespace
let indent = Util.indent
let int = /[0-9]+/
let num = /[0-9\*][0-9\/,-\*]*/
let quoted_string_val = del "\"" "\"" . store /[^"\n]+/ . del "\"" "\""
let record_label_re = /[^]\n]+/
Default regexp for title_label keyword pattern
let record_re = (/[^]\n\/]+/ /#comment/)
Default regexp for title keyword pattern
let section_re = /(
   Files|ServerFlags|Module|InputDevice|Device|VideoAdaptor|Monitor|Modes|Screen|ServerLayout|DRI|Vendor
)/
Known values for Section names
The following obsolete section names are still recognised for compatibility purposes.
let sep (pat:regexp) (default:string) = Util.del_opt_ws "" . del pat default
Generic separator
let sep_col = sep_cont_opt . Util.del_str ":" . sep_cont_opt
let sep_com = sep_cont_opt . Util.del_str "," . sep_cont_opt
let sep_cont = del /([ \t]+|[ \t]*\\\\\n[ \t]*)/ " "
let sep_cont_opt = del /([ \t]*|[ \t]*\\\\\n[ \t]*)/ " "
let sep_default = "="
The default separator value
let sep_dquote = Util.del_str "\""
let sep_dquote = Util.del_str "\""
let sep_eq = Util.del_str "="
let sep_eq = sep_cont_opt . Util.del_str "=" . sep_cont_opt
let sep_re = /[=:]/
The default regexp for a separator
let sep_spc = Util.del_ws_spc
let sep_spc = del /[ \t]+/ " "
let sep_spc = Util.del_ws_spc
let service_attr = attr_one (
   "socket_type" | "protocol" | "wait" | "user" | "group" |"server" | "instances" | "rpc_version" | "rpc_number" | "id" | "port" | "nice" | "banner" | "bind" | "interface" | "per_source" | "groups" | "banner_success" | "banner_fail" | "disable" | "max_load" | "rlimit_as" | "rlimit_cpu" | "rlimit_data" | "rlimit_rss" | "rlimit_stack" | "v6only" | "deny_time" | "umask" | "mdns" "libwrap"
)
It is much faster to combine, for example, all the attr_one attributes into one regexp and pass that to a lens instead of using lens union (attr_one “a” | attr_one “b”|..)
let stdexcl = (
   excl "*~"
) . (excl "*.rpmnew") . (excl "*.rpmsave") . (excl "*.augsave") . (excl "*.augnew")
Exclusion for files that are commonly not wanted/needed
let sto_integer = store /[0-9]+/
let sto_to_com = store /(
   [^,=:#() \t\n\\\\][^,=:#()\n]*[^,=:#() \t\n\\\\]
)|[^,=:#() \t\n\\\\]/
There could be a \ in the middle of a command
let sto_to_com_cmnd = store /(
   [^,=:#() \t\n\\\\][^,=:#()\n]*[^,=:#() \t\n\\\\]
)|[^,=:#() \t\n\\\\]/
sto_to_com_cmnd does not begin or end with a space
let sto_to_com_col = store /[^",=#() \t\n\\\\]+/ (* " relax emacs *)
let sto_to_com_user = store (
   /[^,=:#() \t\n]+/ /(User|Runas|Host|Cmnd)_Alias|Defaults.*/
)
let sto_to_comment = Util.del_opt_ws "" . store /[^;# \t\n][^;#\n]*[^;# \t\n]|[^;# \t\n]/
Store until comment
let sto_to_eol = Util.del_opt_ws "" . store /([^ \t\n].*[^ \t\n]|[^ \t\n])/
Store until end of line
let sto_to_eq = store /[^,=:#() \t\n\\\\]+/
let sto_to_spc = store /[^", \t\n\\\\]+|"[^", \t\n\\\\]+"/
let sto_to_spc_no_dquote = store /[^", \t\n\\\\]+/ (* " relax emacs *)
let to_eol = /[^ \t\n](.*[^ \t\n])?/
Match everything from here to eol, cropping whitespace at both ends
Close