GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - clojure-vim/acid.nvim: Asynchronous Clojure Interactive Development

BranchesTags
Open more actions menu

Latest commit

 

History

494 Commits
494 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
bin
bin
 
 
clj
clj
 
 
deps
deps
 
 
doc
doc
 
 
githooks/pre-commit
githooks/pre-commit
 
 
lua/acid
lua/acid
 
 
plugin
plugin
 
 
rplugin/python3/acid
rplugin/python3/acid
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
API.md
API.md
 
 
README.md
README.md
 
 
admin_deps.edn
admin_deps.edn
 
 
config.ld
config.ld
 
 
mdexport.lua
mdexport.lua
 
 

Repository files navigation

acid.nvim

Asynchronous Clojure Interactive Development

What is it for?

Acid.nvim is a plugin for clojure development on neovim.

Installing

First, install the python dependencies:

pip3 install --user pynvim

Then, add and install acid:

Plug 'clojure-vim/acid.nvim', { 'do': ':UpdateRemotePlugins' }

Most of acid functionality is available through the lua interface. As lua doesn't provide the required asynchronous capabilities for handling nREPL connectivity, a python layer exists to provide them.

Nonetheless, one should never require to interact with python directly.

Version 2.x

The new version 2.x uses a both lua (to implement high-level features, such as code navigation, evaluating the current form or requiring the current buffer) and python (for the low-level features, such as fs navigation, sending messages to the nrepl and dealing with concurrency/async).

If you are looking for the 1.x version, you can find it on this branch. It won't be further updated, but you can still use if if you need something that this version is missing.

Differences from 1.x

Aside from the python/lua difference, there's also a bunch of minor differences:

  • The new version doesn't try to deal with user prompt (other than AcidInsertEval).
  • The new version provides most functions as an API so new clients/extended features can be built on top of acid.
  • Newer neovim features were incorporated on the new version (such as virtualtext and floating windows).
  • Acid now supports boot and tools.deps.
  • Acid can now spawn it's own nREPL client through tools.deps.
  • Acid can now take a [ip, port] tuple to connect to.

Documentation

Most of the lua code is documented here. Vim documents are updated on a best effort basis.

Key features

Eval with virtualtext support

asciicast

About

Asynchronous Clojure Interactive Development

Topics

asyncclojure-developmentneovimneovim-pluginnvim

Resources

Readme
Activity
Custom properties

Stars

158 stars

Watchers

7 watching

Forks

10 forks
Report repository

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.