Commit | Line | Data |
---|---|---|
26476d58 AK |
1 | ;;; guix-help-vars.el --- Variables related to --help output |
2 | ||
3 | ;; Copyright © 2015 Alex Kost <alezost@gmail.com> | |
4 | ||
5 | ;; This file is part of GNU Guix. | |
6 | ||
7 | ;; GNU Guix is free software; you can redistribute it and/or modify | |
8 | ;; it under the terms of the GNU General Public License as published by | |
9 | ;; the Free Software Foundation, either version 3 of the License, or | |
10 | ;; (at your option) any later version. | |
11 | ||
12 | ;; GNU Guix is distributed in the hope that it will be useful, | |
13 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | ;; GNU General Public License for more details. | |
16 | ||
17 | ;; You should have received a copy of the GNU General Public License | |
18 | ;; along with this program. If not, see <http://www.gnu.org/licenses/>. | |
19 | ||
20 | ;;; Commentary: | |
21 | ||
22 | ;; This file provides regular expressions to parse various "guix | |
23 | ;; ... --help" outputs and lists of non-receivable items (system types, | |
24 | ;; hash formats, etc.). | |
25 | ||
26 | ;;; Code: | |
27 | ||
28 | \f | |
29 | ;;; Regexps for parsing "guix ..." outputs | |
30 | ||
31 | (defvar guix-help-parse-option-regexp | |
32 | (rx bol " " | |
33 | (zero-or-one (group "-" (not (any "- "))) | |
34 | ",") | |
35 | (one-or-more " ") | |
36 | (group "--" (one-or-more (or wordchar "-"))) | |
37 | (group (zero-or-one "[") | |
38 | (zero-or-one "=")) | |
39 | (zero-or-more (not space)) | |
40 | (one-or-more space) | |
41 | (group (one-or-more any))) | |
42 | "Common regexp used to find command options.") | |
43 | ||
44 | (defvar guix-help-parse-command-regexp | |
45 | (rx bol " " | |
46 | (group wordchar (one-or-more (or wordchar "-")))) | |
47 | "Regexp used to find guix commands. | |
48 | 'Command' means any option not prefixed with '-'. For example, | |
49 | guix subcommand, system action, importer, etc.") | |
50 | ||
51 | (defvar guix-help-parse-long-option-regexp | |
52 | (rx (or " " ", ") | |
53 | (group "--" (one-or-more (or wordchar "-")) | |
54 | (zero-or-one "="))) | |
55 | "Regexp used to find long options.") | |
56 | ||
57 | (defvar guix-help-parse-short-option-regexp | |
58 | (rx bol (one-or-more blank) | |
59 | "-" (group (not (any "- ")))) | |
60 | "Regexp used to find short options.") | |
61 | ||
62 | (defvar guix-help-parse-package-regexp | |
63 | (rx bol (group (one-or-more (not blank)))) | |
64 | "Regexp used to find names of the packages.") | |
65 | ||
66 | (defvar guix-help-parse-list-regexp | |
67 | (rx bol (zero-or-more blank) "- " | |
68 | (group (one-or-more (or wordchar "-")))) | |
69 | "Regexp used to find various lists (lint checkers, graph types).") | |
70 | ||
71 | (defvar guix-help-parse-regexp-group 1 | |
72 | "Parenthesized expression of regexps used to find commands and | |
73 | options.") | |
74 | ||
75 | \f | |
76 | ;;; Non-receivable lists of system types, hash formats, etc. | |
77 | ||
78 | (defvar guix-help-system-types | |
79 | '("x86_64-linux" "i686-linux" "armhf-linux" "mips64el-linux") | |
80 | "List of supported systems.") | |
81 | ||
82 | (defvar guix-help-source-types | |
83 | '("package" "all" "transitive") | |
84 | "List of supported sources types.") | |
85 | ||
86 | (defvar guix-help-hash-formats | |
87 | '("nix-base32" "base32" "base16" "hex" "hexadecimal") | |
88 | "List of supported hash formats.") | |
89 | ||
90 | (defvar guix-help-refresh-subsets | |
91 | '("core" "non-core") | |
92 | "List of supported 'refresh' subsets.") | |
93 | ||
94 | (defvar guix-help-key-policies | |
95 | '("interactive" "always" "never") | |
96 | "List of supported key download policies.") | |
97 | ||
98 | (defvar guix-help-verify-options | |
99 | '("repair" "contents") | |
100 | "List of supported 'verify' options") | |
101 | ||
102 | (defvar guix-help-elpa-archives | |
103 | '("gnu" "melpa" "melpa-stable") | |
104 | "List of supported ELPA archives.") | |
105 | ||
106 | (provide 'guix-help-vars) | |
107 | ||
108 | ;;; guix-help-vars.el ends here |