35
|
1
|
#+title: CLI |
|
2
|
#+author: Richard Westhaver |
|
3
|
#+description: Command-line Interface Library |
|
4
|
#+setupfile: clean.theme |
|
5
|
#+filetags: lisp cli |
|
6
|
#+property: header-args :dir ~/comp/core/ :exports both |
|
7
|
#+setupfile: ../../../clean.theme |
|
8
|
#+INFOJS_OPT: toc:nil |
|
9
|
|
|
10
|
* Overview |
|
11
|
The =cli= library is a fully-featured toolkit for building [[https://en.wikipedia.org/wiki/Command-line_interface][CLI]] |
|
12
|
programs. |
|
13
|
|
|
14
|
|
|
15
|
* stats |
|
16
|
** dependencies |
|
17
|
#+begin_src lisp :results list |
|
18
|
(ql:quickload :doc) |
|
19
|
(let ((sys (asdf:find-system :cli))) |
|
20
|
(asdf:system-depends-on sys)) |
|
21
|
#+end_src |
|
22
|
|
|
23
|
#+RESULTS: |
|
24
|
- std |
|
25
|
- log |
38
|
26
|
- dat |
35
|
27
|
|
|
28
|
** dependents |
|
29
|
#+begin_src lisp :results list |
|
30
|
(ql:quickload :doc) |
|
31
|
(let ((sys (doc:system-documentation :cli))) |
|
32
|
(mapcar (lambda (s) (asdf:component-name (doc:doc-system s))) (doc:doc-dependents sys))) |
|
33
|
#+end_src |
|
34
|
|
|
35
|
#+RESULTS: |
38
|
36
|
- user |
|
37
|
- packy |
35
|
38
|
- pod |
|
39
|
- vc |
|
40
|
- skel |
38
|
41
|
- prelude |
35
|
42
|
- cli/tests |
|
43
|
|
|
44
|
** files |
|
45
|
#+begin_src lisp :output replace :results list |
|
46
|
(mapcar (lambda (p) |
|
47
|
(enough-namestring p (asdf:system-source-directory :cli))) |
|
48
|
(doc:doc-files (doc:system-documentation :cli))) |
|
49
|
#+end_src |
|
50
|
|
|
51
|
#+RESULTS: |
|
52
|
- pkg.lisp |
|
53
|
- ansi.lisp |
|
54
|
- env.lisp |
|
55
|
- progress.lisp |
|
56
|
- spark.lisp |
|
57
|
- repl.lisp |
|
58
|
- shell.lisp |
|
59
|
- prompt.lisp |
|
60
|
- ed.lisp |
38
|
61
|
- tools/pkg.lisp |
|
62
|
- tools/term.lisp |
35
|
63
|
- tools/tmux.lisp |
|
64
|
- tools/pacman.lisp |
38
|
65
|
- tools/cc.lisp |
|
66
|
- tools/systemd.lisp |
|
67
|
- tools/cargo.lisp |
|
68
|
- tools/sbcl.lisp |
35
|
69
|
- clap/pkg.lisp |
|
70
|
- clap/ast.lisp |
|
71
|
- clap/vars.lisp |
|
72
|
- clap/util.lisp |
|
73
|
- clap/macs.lisp |
|
74
|
- clap/proto.lisp |
|
75
|
- clap/opt.lisp |
|
76
|
- clap/cmd.lisp |
|
77
|
- clap/cli.lisp |
|
78
|
- cli.lisp |
|
79
|
|
|
80
|
** packages |
|
81
|
#+begin_src lisp :output replace :results list |
|
82
|
(mapcar (lambda (p) (package-name (doc:doc-package p))) |
|
83
|
(doc:doc-packages (doc:system-documentation :cli))) |
|
84
|
#+end_src |
|
85
|
|
|
86
|
#+RESULTS: |
38
|
87
|
- CLI/TOOLS/SBCL |
35
|
88
|
- CLI/CLAP/OBJ |
|
89
|
- CLI/CLAP/SIMPLE |
|
90
|
- CLI/SHELL |
38
|
91
|
- CLI/TOOLS/TERM |
35
|
92
|
- CLI/ANSI |
|
93
|
- CLI/CLAP/PROTO |
|
94
|
- CLI/CLAP/AST |
|
95
|
- CLI/ED |
38
|
96
|
- CLI/TOOLS/PACMAN |
|
97
|
- CLI/TOOLS/CARGO |
|
98
|
- CLI/CLAP |
35
|
99
|
- CLI |
38
|
100
|
- CLI/TOOLS/CC |
35
|
101
|
- CLI/CLAP/VARS |
|
102
|
- CLI/TESTS |
38
|
103
|
- CLI/TOOLS/TMUX |
35
|
104
|
- CLI/REPL |
|
105
|
- CLI/CLAP/UTIL |
|
106
|
- CLI/ENV |
|
107
|
- CLI/PROGRESS |
|
108
|
- CLI/PROMPT |
|
109
|
- CLI-USER |
|
110
|
- CLI/SPARK |
|
111
|
- CLI/CLAP/MACS |
38
|
112
|
- CLI/TOOLS/SYSTEMD |
35
|
113
|
|
|
114
|
** tests |
|
115
|
#+begin_src lisp :output replace |
|
116
|
(ql:quickload :cli/tests) |
|
117
|
(print rt:*test-suite* nil) |
|
118
|
#+end_src |
|
119
|
|
|
120
|
#+RESULTS: |
38
|
121
|
: #<RT:TEST-SUITE CLI [11:11:0:0] {101709DC53}> |
35
|
122
|
|
|
123
|
#+begin_src lisp :output replace |
|
124
|
(rt:tests rt:*test-suite*) |
|
125
|
#+end_src |
|
126
|
|
|
127
|
#+RESULTS: |
|
128
|
#+begin_example |
38
|
129
|
(#<RT:TEST SBCL-TOOLS :fn SBCL-TOOLS-TEST749 {10170B9CF3}> |
|
130
|
#<RT:TEST MAIN-OUTPUT :fn MAIN-OUTPUT-TEST748 {10170B9C03}> |
|
131
|
#<RT:TEST CLAP-AST :fn CLAP-AST-TEST747 {10170B9B13}> |
|
132
|
#<RT:TEST ENV :fn ENV-TEST746 {10170B9A23}> |
|
133
|
#<RT:TEST REPL :fn REPL-TEST745 {10170B9933}> |
|
134
|
#<RT:TEST SPARK :fn SPARK-TEST744 {10170B9843}> |
|
135
|
#<RT:TEST PROGRESS :fn PROGRESS-TEST743 {10170B9753}> |
|
136
|
#<RT:TEST CLAP-OPTS :fn CLAP-OPTS-TEST742 {10170B9663}> |
|
137
|
#<RT:TEST CLAP-BASIC :fn CLAP-BASIC-TEST741 {10170B9543}> |
|
138
|
#<RT:TEST CLI-PROMPT :fn CLI-PROMPT-TEST740 {101709EFF3}> |
|
139
|
#<RT:TEST ANSI :fn ANSI-TEST739 {101709DE63}>) |
35
|
140
|
#+end_example |