You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Practicalli Clojure CLI Config](https://github.com/practicalli/clojure-cli-config/) provides a user scope `deps.edn` file containing alias definitions for a wide range of community libraries and tools to that extend the features of Clojure CLI.
12
+
[Practicalli Clojure CLI Config](https://github.com/practicalli/clojure-cli-config/) provides a wide range of community tools that extend the features of the Clojure CLI, for use across all Clojure deps.edn projects.
13
13
14
14
`clojure -X:deps aliases` will list all the alias names at the project and user level.
15
15
16
16
Aliases are qualified keywords using descriptive names to clearly convey purpose and provide a level of consistency to minimise cognitive load.
17
17
18
-
Common arguments are included in alias definitions via `main-opts` and `:exec-args` to provide a default behaviour and simplify the use aliases.
18
+
## Common development tasks
19
19
20
-
Alias used with the `-A`, `-M`, `-T` or `-X` execution options
20
+
* Built-in: tasks provided by Clojure CLI
21
+
* Practicalli: aliases provided by Practicalli Clojure CLI Config
21
22
22
-
Aliases are defined to be used with all execution options `-A`, `-M`, `-P`, `-T` or `-X` where possible, otherwise use the following execution options:
| Find available versions of a library |`clojure -X:deps find-versions :lib domain/library-name`| Built-in |
36
+
| Resolve git coord tags to shas and update deps.edn |`clojure -X:deps git-resolve-tags git-coord-tag`| Built-in |
23
37
24
38
*`-M` for `:main-opts` configuration
25
39
*`-X` for `:exec-opts` configuration
26
-
*`-T` for `:exec-opts`, ignoring project dependencies and only root of project as class path
40
+
*`-T` for `:exec-opts`, ignoring project dependencies
27
41
28
42
> [Clojure CLI - Which execution options to use](https://practical.li/clojure/clojure-cli/execution-options/)
29
43
30
-
The project also contains
44
+
[Practicalli books](https://practical.li/#books) uses the Clojure CLI Config extensively to support a [REPL Reloaded workflow](https://practical.li/clojure/clojure-cli/repl-reloaded/) for Clojure projects.
45
+
46
+
[Practicalli Clojure book discusses Clojure CLI and its use](https://practical.li/clojure/clojure-cli/repl/), along with video walk-through of the key features.
*`deps.edn` user configuration containing alias definitions
32
54
* GitHub workflow that runs MegaLinter and Code Quality checks (clj-kondo and cljstyle via the setup-clojure action)
33
-
* cljstyle configuration that follows the Clojure Style Guide
55
+
* cljstyle configuration that follows the Clojure Style Guide, using the [.cljstyle configuration file](https://github.com/practicalli/clojure-cli-config/blob/main/.cljstyle)
34
56
* Rebel Readline example configuration (supports the Rich Terminal UI used by Practicalli)
35
57
* cspell configuration for linting markdown and other text
36
58
*`deps-deprecated.edn` containing alias examples of tools not currently used by Practialli which may still be of interest to the wider community
37
59
38
-
[Practicalli books](https://practical.li/#books) uses the Clojure CLI Config extensively to support a [REPL Reloaded workflow](https://practical.li/clojure/clojure-cli/repl-reloaded/) for Clojure projects.
39
-
40
-
[Practicalli Clojure book discusses Clojure CLI and its use](https://practical.li/clojure/clojure-cli/repl/), along with video walk-through of the key features.
[](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)
46
62
[](https://github.com/sponsors/practicalli-johnny)
@@ -53,11 +69,6 @@ The project also contains
53
69
</div>
54
70
55
71
56
-
## Format Clojure
57
-
58
-
[cljstyle](https://github.com/greglook/cljstyle) is a format tool for Clojure files that supports the Clojure Style Guide, using the [.cljstyle configuration file](https://github.com/practicalli/clojure-cli-config/blob/main/.cljstyle)
*[Library Hosting Services](#library-hosting-services) - maven mirrors, local repositories
82
93
83
94
84
-
## Install Practicalli Clojure CLI Config
95
+
## Install
85
96
86
97
[Clojure CLI](https://clojure.org/guides/install_clojure) version **1.11.1.xxxx** or later is recommended. Check the version of Clojure CLI currently installed via:
Any directory containing a `deps.edn` file is considered a Clojure project. A `deps.edn` file can contain an empty hash-map, `{}` or hash-map with configuration, usually `:paths` and `:dependencies` and perhaps some `:aliases`.
147
+
A directory containing a `deps.edn` file is considered a Clojure project. A `deps.edn` file can contain an empty hash-map, `{}` or hash-map with configuration, usually `:paths` and `:dependencies` and perhaps some `:aliases`.
137
148
138
149
The project `deps.edn` file is merged with the user wide configuration, e.g `$HOME/.clojure/deps.edn`, with the project `deps.edn` keys taking precedence if there is duplication, otherwise they are merged.
139
150
@@ -144,12 +155,16 @@ Configuration passed via the command line when running `clojure` or the `clj` wr
144
155
See the rest of this readme for examples of how to use each alias this configuration contains.
145
156
146
157
147
-
## Common development tasks
158
+
Common arguments are included in alias definitions via `main-opts` and `:exec-args` to provide a default behaviour and simplify the use aliases.
148
159
149
-
How to run common tasks for Clojure development.
160
+
Aliases are defined to be used with all execution options `-A`, `-M`, `-P`, `-T` or `-X` where possible.
161
+
162
+
*`-M` for `:main-opts` configuration
163
+
*`-X` for `:exec-opts` configuration
164
+
*`-T` for `:exec-opts`, ignoring project dependencies
165
+
166
+
> [Clojure CLI - Which execution options to use](https://practical.li/clojure/clojure-cli/execution-options/)
150
167
151
-
* Built-in: tasks provided by Clojure CLI
152
-
* Practicalli: aliases provided by Practicalli Clojure CLI Config
Include Java source on the classpath to [look up Java Class and method definitions, eg. `cider-find-var` in Emacs](https://practical.li/spacemacs/navigating-code/java-definitions/)
0 commit comments