Agda.nvim
NeoVim plugin for interacting with Agda written in Lua
Install / Use
/learn @isti115/Agda.nvimREADME
agda.nvim
NeoVim plugin for interacting with Agda written in Lua
(Note: Sorry for the lack of updates lately, currently I'm waiting for the following issue: https://github.com/agda/agda/issues/5665 to be addressed, but in the meantime I might switch to the Lisp backend, which could be a bit painful in terms of parsing, but at least would enable the further development of this plugin.)
Dependencies
- neovim (≥ 0.5.0)
- plenary.nvim
- agda (≥ 2.6.2)
Installation
Plug
Plug 'nvim-lua/plenary.nvim'
Plug 'isti115/agda.nvim'
Usage
By default the usual agda actions are mapped to the conventional keys, preceded by <LocalLeader> (\ by default in NeoVim), such as:
\l- Load\f- Next goal (Forward)\c- Case split
and so on. See the source for all available actions!
Options
| Option | Possible Values (Defaults in bold) | |---------------|----------------------------------------| | g:agda_theme | dark, light | | g:agda_keymap | vim, emacs, none |
Features
Done*
- Goal types
- Version info
- Case splitting
- Context information
- Syntax highlighting
- Refinement
- Auto
- Infer type of goal contents
- Jumping between goals
- Expression normalization and type inference
- Give contents to goals
*: (more like is sort of working, but everything is still experimental...)
In Progress
- Code quality improvements
Planned
- Inline case split
- Go to definition
Note: Unicode input is not yet implemented, use digraphs! Some examples for special characters that you can enter by default:
- ∀ =
^KFA("For All") - ∃ =
^KTE("There Exists") - → =
^K-> - λ =
^Kl* - ≡ =
^K=3 - ¬ =
^KNO
Thanks to
- u/algebrartist for help with the development on reddit and testing
- banacorn for agda-mode-vscode and the description of the communication protocol
- jliptrap for doing initial testing and reporting issues
Related Skills
node-connect
349.9kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.9kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.9kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
