██████╗ ██████╗ █████╗ ██████╗████████╗██╗ ██████╗ █████╗ ██╗ ██╗ ██╗
██╔══██╗██╔══██╗██╔══██╗██╔════╝╚══██╔══╝██║██╔════╝██╔══██╗██║ ██║ ██║
██████╔╝██████╔╝███████║██║ ██║ ██║██║ ███████║██║ ██║ ██║
██╔═══╝ ██╔══██╗██╔══██║██║ ██║ ██║██║ ██╔══██║██║ ██║ ██║
██║ ██║ ██║██║ ██║╚██████╗ ██║ ██║╚██████╗██║ ██║███████╗███████╗██║
╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚══════╝╚═╝
█████╗ ███████╗████████╗██████╗ ██████╗ ███████╗
██╔══██╗██╔════╝╚══██╔══╝██╔══██╗██╔═══██╗ ██╔════╝
███████║███████╗ ██║ ██████╔╝██║ ██║ ███████╗
██╔══██║╚════██║ ██║ ██╔══██╗██║ ██║ ╚════██║
██║ ██║███████║ ██║ ██║ ██║╚██████╔╝ ███████║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝
NOTE: Ascii Art Generator: https://patorjk.com/software/taag/#p=display&f=ANSI%20Shadow&t=Astro%205
A lazy loading rich feature configuration for Neovim 0.11.x, providing common development tooling, including an effective Clojure REPL workflow.
This configuration is built upon AstroNvim version 5, extending the AstroNvim v5 template with valuable plugins, options and key mappings.
Practicalli Neovim describes the Clojure REPL workflow, rich Git and GitHub clients and easy management of plugins and tools using this configuration.
Recommended tools:
Clone the Practicalli Astro5 repository (create a fork if customisation desired)
git clone [email protected]:practicalli/nvim-astro5 $HOME/.config/nvim
Run nvim
command and wait for all plugins to automatically install and Treesitter language parsers to compile.
nvim
Clone to $HOME/.config/nvim-astron5
and use the NVIM_APPNAME=astronvim nvim
command to start Neovim with AstroNvim configuration
git clone [email protected]:practicalli/nvim-astro5 $HOME/.config/nvim-astro5
Create a shell alias to run the new configuration, e.g. in .bashrc
or .zshrc
(or a ~/.config/shell-aliases
file that each shell rc file sources)
alias astro5="NVIM_APPNAME=nvim-astro5 nvim"
Load the alias into the current shell from the rc file or shell-aliases (or open a new shell), e.g.
source ~/.config/shell-aliases
Run astro5
and allow neovim plugins to automatically install and Treesitter language parsers to compile.
astro5
The configuration is based on the AstroNvim v5 template config. Changes to existing file have been kept to a minimum, except for lua/community.lua
which has additional plugins from the AstroNvim Community repository.
lua/plugins/practicalli.lua
contains Practicalli specific configuration (plugins, preferences & key maps). This also provides an example of how to modify and extend the AstroNvim configuration yourself.
Set environment variable PRACTICALLI_ASTRO
to false to skip the Practicalli config without requiring a code change.
Create your own lua/plugins/user-yourname.lua
file to:
- override default plugin configuration
- add new plugins (or create a new file for a plugin to make them easier to be optional)
Practicalli Astro5 config design provides a complete breakdown of this configuration.
NOTE: Lua files in the
lua/plugins
directory are loaded in alphabetical order so plugin overrides should be the last file to load, e.glua/plugins/user-*
Install an LSP server for each programming language used, allowing the Neovim LSP client to obtain diagnostic information.
Mason is used to automatically install LSP servers, format & lint tools. Mason Registry maintains a list of the latest release for each tool (automatically updated).
Mason can be configured to use a locally installed Clojure LSP server (using the instructions for your operating system).
lua/plugins/termux.lua shows how to configure mason to use a local Clojure and Lua LSP server (preventing Mason from automatically installing these tools)
All sponsorship funds are used to support the continued development of Practicalli series of books and videos, although most work is done at personal cost and time. Infrastructure costs are kept to zero.
Thanks to Cognitect, Nubank and a wide range of other sponsors for your continued support