Take your scentific notes in Neovim.
The colorscheme used here is tokyonight.
An ASCII math generator from LaTeX equations.
- Neovim nightly
- A colorscheme which supports treesitter see here (*)
- Tree-sitter : nvim-treesitter/nvim-treesitter (*) (Not a dependency, but recommended to install parsers).
- Latex parser : Install with
TSInstall latex
(*)
(*): Skip when using LazyVim
Using vim-plug
Plug 'jbyuki/nabla.nvim'
Using packer.nvim
use 'jbyuki/nabla.nvim'
Using lazy.vim
{
"williamboman/mason.nvim",
opts = { ensure_installed = { "tree-sitter-cli" } },
},
{
"jbyuki/nabla.nvim",
dependencies = {
"nvim-neo-tree/neo-tree.nvim",
"williamboman/mason.nvim",
},
lazy = true,
config = function()
require("nvim-treesitter.configs").setup({
ensure_installed = { "latex" },
auto_install = true,
sync_install = false,
})
end,
keys = function()
return {
{
"<leader>p",
':lua require("nabla").popup()<cr>',
desc = "NablaPopUp",
},
}
end,
},
Using the built-in package manager
-
Create a folder
pack/<a folder name of your choosing>/start
-
Inside the
start
foldergit clone
nabla.nvimgit clone https://github.com/jbyuki/nabla.nvim
-
In your init.lua, add the pack folder to packpath (see
:help packpath
)vim.o.packpath = vim.o.packpath .. ",<path to where pack/ is located>"
-
git pull
in the plugin folder to update it. You want something more viable though, that's why package managers are useful.
(Default keymap to nabla-render in LazyVim is <leader>p
)
Bind the following command:
nnoremap <leader>p :lua require("nabla").popup()<CR> " Customize with popup({border = ...}) : `single` (default), `double`, `rounded`
See here for virt_lines support.
- Press leader + p while the cursor is on a math expression to open floating menu
See test/input.txt for examples.
Note: If the notation you need is not present or there is a misaligned expression, feel free to open an Issue.
- Thanks to jetrosut for his helpful feedback and bug troubleshoot.
- Thanks to nbCloud91 for pointing me to VIM conceals.
- Thanks to clstb for giving suggestions on how to enhance the interaction.
- Thanks to aspeddro for adding preview popups.
- Thanks to Areustle for adding more than 500 new symbols.
- Thanks to kkharji for pointing out virt_lines.
- Thanks to max397574 for a proper treesitter implementation.
See here.