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
K
 Kdump
 Keepalived
 kernel
 kernel_args, Grub
 kernel_parameters, Erlang
 key_comment, Authorized_Keys
 key_name, Nslcd
 key_opt_rtable_line, Ntpd
 key_opt_value_line, BootConf
 key_opt_weight_rtable_line, Ntpd
 key_options, Authorized_Keys
 key_re
 key_type, Authorized_Keys
 key_value
 key_value_line
 key_value_line_comment
 key_value_line_regexp, Nslcd
 key_value_line_regexp_opt_map, Nslcd
 key_ws_value
 keys
 keyword, Ntpd
 Keywords
 knode, Test_Xml
 Known_Hosts
 Koji
 kv
 kw_arg, Grub
 kw_boot_arg, Grub
 kw_menu_arg, Grub
 kw_pres, Grub
 kw_word, Xymon_Alerting
 kw_word_filters_opt, Xymon_Alerting
Parses /etc/kdump.conf
Parses /etc/keepalived/keepalived.conf
let kernel = application "kernel" kernel_parameters
Core Erlang kernel app configuration
let kernel = [ command /kernel\$?/ "\t" . (spc . ([switch "type" . eq . store /[a-z]+/] |[switch "no-mem-option"]))* . spc . kernel_args ]
let kernel_args = let arg = /[A-Za-z0-9_.$-]+/ - /type|no-mem-option/ in store /(\([a-z0-9,]+\))?\/[^ \t\n]*/ . (spc . multiboot_arg)? . (spc . [ key arg . (eq. store /([^ \t\n])*/)?])* . eol
Parse the file name and args on a kernel or module line.
let kernel_parameters = value "browser_cmd" path | value "dist_auto_connect" (store /never|once/) | value "error_logger" (store /tty|false|silent/) | value "net_setuptime" integer | value "net_ticktime" integer | value "shutdown_timeout" integer | value "sync_nodes_timeout" integer | value "start_dist_ac" boolean | value "start_boot_server" boolean | value "start_disk_log" boolean | value "start_pg2" boolean | value "start_timer" boolean
Config parameters accepted for kernel app
let key_comment = [ label "comment" . store Rx.space_in ]
let key_name = /[^ #\n\t\/][^ #\n\t\/]+/
let key_opt_rtable_line (kw:regexp) (sto:lens) = let rtable = [ Util.del_str "rtable" . space . label "rtable" . store rtable_re ] in [ key kw . space . sto . (space . rtable)? . eol ]
A subnode with a keyword, an optional routing table id and an end of line.
let key_opt_value_line (kw:regexp) (sto:lens) = [ key kw . (space . sto)? . eol ]
A subnode with a keyword, an optional part consisting of a separator and a storing lens, and an end of line
let key_opt_weight_rtable_line (kw:regexp) (sto:lens) = let rtable = [ Util.del_str "rtable" . space . label "rtable" . store rtable_re ] in let weight = [ Util.del_str "weight" . space . label "weight" . store weight_re ] in [ key kw . space . sto . (space . weight)? . (space . rtable)? . eol ]
A subnode with a keyword, an optional routing table id, an optional weight-value and an end of line.
let key_options = [ label "options" . Build.opt_list option Sep.comma ]
A list of key options
let key_re = /\$?[A-Za-z0-9_.-]+/
let key_re = /[^=# \t\n]+/
let key_type = let key_type_re = /ecdsa-sha2-nistp[0-9]+/ | /ssh-[a-z0-9]+/ in [ label "type" . store key_type_re ]
let key_value (kw: regexp) (sep:lens) (sto:lens) = [ key kw . sep . sto ]
Same as key_value_line, but does not end with an end of line
let key_value = Build.key_value Rx.word Sep.equal (store Rx.word)
let key_value_line (kw:regexp) (sep:lens) (sto:lens) = [ key kw . sep . sto . eol ]
A subnode with a keyword, a separator and a storing lens, and an end of line
let key_value_line = Build.key_value_line Rx.word Sep.equal (store Rx.word)
let key_value_line_comment (kw:regexp) (sep:lens) (sto:lens) (comment:lens) = [ key kw . sep . sto . (eol|comment) ]
Same as key_value_line, but allows to have a comment in the end of a line and an end of line
let key_value_line_comment = Build.key_value_line_comment Rx.word Sep.equal (store Rx.word) Util.comment
let key_value_line_regexp (kw:string) (sto:regexp) = Build.key_value_line kw spc (store sto)
A simple configuration option but specifying the regex for the value.
let key_value_line_regexp_opt_map (kw:string) (sto:regexp) = ( key_value_line_regexp kw sto | mapped_entry kw sto )
A mapped configuration but the MAP value is optional as in scope [MAP] value`.
let key_ws_value (kw:regexp) = key_value_line kw Util.del_ws_spc (store Rx.space_in)
Store a key/value pair where key and value are separated by whitespace and the value goes to the end of the line.
let key_ws_value = Build.key_ws_value Rx.word
let keys = Rx.word - (commands | block_names)
Match any possible key except commands and block names.
let keys = "# Example keys, one of each type # ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDpWrKYsEsVUyuwMN4ReBN/TMGsaUWzDKDz/uQr6MlNNM95MDK/BPyJ+DiBiNMFVLpRt3gH3eCJBLJKMuUDaTNy5uym2zNgAaAIVct6M2GHI68W3iY3Ja8/MaRPbyTpMh1O74S+McpAW1SGL2YzFchYMjTnu/kOD3lxiWNiDLvdLFZu0wPOi7CYG37VXR4Thb0cC92zqnCjaP1TwfhpEYUZoowElYkoV2vG+19O6cRm/zduYcf8hmegZKB4GFUJTtZ2gZ18XJDSQd0ykK3KPt/+bKskdrtfiOwSZAmUZmd2YuAlY6+CBn1T3UBdQntueukd0z1xhd6SX7Bl8+qyqLQ3 user@example ssh-dsa AAAA user@example ecdsa-sha2-nistp256 AAAA user@example ssh-ed25519 AAAA user@example # Example comments ssh-dsa AAAA ssh-dsa AAAA user@example "
let keyword = listen | server | servers | sensor
let knode (r:regexp) = [ key r ]
A simple flag function
Parses SSH known_hosts files
Parses koji config files
let kv = [ indent . key key_re . del sep " " . store value_re . eol ]
let kv = [ Util.indent . key simple_keys . space . (store no_space) . eol ]
options with only one arg can be directly mapped to key = value
let kv = [ key /[A-Za-z0-9:_.-]+/ . (Sep.equal . store (Rx.space_in?))? . Util.eol ]
A key-value pair, supporting flags and empty values
let kw_arg (kw:regexp) (indent:string) (dflt_sep:string) = [ command kw indent . value_sep dflt_sep . value_to_eol . eol ]
let kw_boot_arg (kw:regexp) = kw_arg kw "\t" " "
let kw_menu_arg (kw:regexp) = kw_arg kw "" " "
let kw_pres (kw:string) = [ opt_ws . key kw . eol ]
let kw_word (kw:regexp) = Build.key_value kw equal store_word
A key=value value
let kw_word_filters_opt (kw:string) = [ key kw . equal . store_word . filters_opt ]
A kw_word entry with optional filters
Close