Thank you to the Twemoji project for the usage of their emoji for the icon.
Installation
The server can be installed via cargo (or from source).
Then, you should be able to run the language server with the following command:
Follow the instructions below to integrate the language server into your editor.
Alternative: Compile and install from source
First, clone this repo and compile it.
Requirements
You will need to install beancount to get all diagnostics.
Configuration
TODO
Features
Supports Beancount v2
| Feature | Description |
|---|---|
| diagnostics | Provided via beancount |
| formatting | Should generate edits silimar to bean-format |
| completions | Show completions for Payees, Accounts, Date |
| definitions | Planned for future release |
| folding | Planned for future release |
| hover | Planned for future release |
| rename | Planned for future release |
Future
- updated vscode extension to use the rust version
Editor Support
Neovim
The settings for the language server are in the lspconfig repo
-
Install the beancount language server
However you install it, you need to remember how to access the binary
-
Create a lua lspconfig for the beancount LSP example in my dotfiles
- add the following code to your lspconfig
local lspconfig = require lspconfig..= ; -
Open a beancount file and verify LSP connected with the LSPInfo command
Troubleshooting
beancount file type not detected
If you notice beancount files not having the "beancount" type, you need a neovim v0.5 or master built after Feb 17, 2021
If not the following in a file named beancount.vim in the ftdetect folder
function! s:setf(filetype) abort
if &filetype !=# a:filetype
let &filetype = a:filetype
endif
endfunction
au BufNewFile,BufRead *.bean,*.beancount call s:setf('beancount')
VS Code
Plan to make a VS Code extesion in the future
Vim
Tested and Developed on Neovim v0.5 (master branch)
SETUP TODO
Emacs
TODO
Contributing
Please do :)
Previous Versions
Typescript
not currently maintained, unless there is interest
Python
no longer maintained