syntax-tree-surfer
nvim-jdtls
syntax-tree-surfer | nvim-jdtls | |
---|---|---|
10 | 75 | |
455 | 931 | |
- | - | |
5.4 | 7.0 | |
3 months ago | 2 months ago | |
Lua | Lua | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
syntax-tree-surfer
-
Select text using Treesitter Queries and start typing right away with SelectEase.nvim
Your config, tree-surfer or nvim-treesitter-textobjects follow nodes using the syntax tree. Go to parent / child / next siblings ect....
-
mini.move - Move any selection in any direction
Cool stuff. It might be worth adding this one to a comparison/alternatives list: https://github.com/ziontee113/syntax-tree-surfer
-
What's the one plugin you'd love to see?
The closest to "treesitter-powered jumps" plugin I know is ziontee113/syntax-tree-surfer. Don't use it personally, but video demos look cool.
-
Ask HN: S/W development text editor have feature colorizing every iteration?
treesitter / neovim:
different code block indicators styles : https://github.com/lukas-reineke/indent-blankline.nvim#with-...
collapse / expand / navigate between code blocks : https://github.com/stevearc/aerial.nvim
not exactly colorize, but can customize to just show iteration / loop processes : https://github.com/ziontee113/syntax-tree-surfer
- Syntax Tree Surfer now supports Dot Repeat for Swapping nodes in Normal Mode
-
What do you use treesitter for other than highlighting?
I personally use it for an outline window for my code (aerial.nvim) and quick-selecting code blocks (nvim-treesitter-textsubjects). I've also seen but not used syntax-tree-surfer for code navigation/manipulation and refactoring.nvim for performing refactoring operations. You could also check out awesome-neovim and ctrl-f for "treesitter", though there are many other plugins out there either not on that list or that don't explicitly mention treesitter in their description.
-
How Neovim helped me to grow up as a developer, and a person.
I published syntax-tree-surfer a while ago didn't know that anyone will be interested to use it. Turns out people do enjoy what I do. When I was in school I didn't feel like I mattered to other people. Now I feel like I do, there are people out there that cares about me, giving me help, advices, etc.. It's just really amazing!
-
tree-climber.nvim - climb around the treesitter tree
I admit, the functionality is blatantly similar to syntax-tree-surfer, but tree-climber should work also in files with comments as well (unfortunately, I could not make syntax-tree-surfer work in my neovim setup at all).
-
Small Feature Update for Syntax Tree Surfer plugin: Go to the top most node and do something there
Plugin: https://github.com/ziontee113/syntax-tree-surfer
-
Extracting JSX into React component
You can use syntax-tree-surfer to select the parent.
nvim-jdtls
-
Having the worst time trying to use JDTLS
I recommend that you do not configure jdtls like the other language servers, it is better to use the nvim-jdtls plugin.
-
Noob here, would neovim work for my usecase
Java is actually pretty good with Neovim, jdtls and this plugin. One of the best language servers and I'm using it on a regular base with medium to large projects, mostly spring-based. No Android though.
-
Client 2 quit with exit code 1 and signal 0 when opening a .java files
-- See `:help vim.lsp.start_client` for an overview of the supported `config` options. local config = { -- The command that starts the language server -- See: https://github.com/eclipse/eclipse.jdt.ls#running-from-the-command-line cmd = { -- 💀 'java', -- or '/path/to/java17_or_newer/bin/java' -- depends on if `java` is in your $PATH env variable and if it points to the right version. '-Declipse.application=org.eclipse.jdt.ls.core.id1', '-Dosgi.bundles.defaultStartLevel=4', '-Declipse.product=org.eclipse.jdt.ls.core.product', '-Dlog.protocol=true', '-Dlog.level=ALL', '-Xmx1g', '--add-modules=ALL-SYSTEM', '--add-opens', 'java.base/java.util=ALL-UNNAMED', '--add-opens', 'java.base/java.lang=ALL-UNNAMED', -- 💀 '-jar', '~/.local/share/nvim/mason/packages/jdtls/plugins/org.eclipse.equinox.launcher_1.6.500.v20230717-2134.jar', -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ -- Must point to the Change this to -- eclipse.jdt.ls installation the actual version -- 💀 '-configuration', '~/.local/share/nvim/mason/packages/jdtls/config_linux', -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ -- Must point to the Change to one of `linux`, `win` or `mac` -- eclipse.jdt.ls installation Depending on your system. -- 💀 -- See `data directory configuration` section in the README '-data', '/path/to/unique/per/project/workspace/folder' }, -- 💀 -- This is the default if not provided, you can remove it. Or adjust as needed. -- One dedicated LSP server & client will be started per unique root_dir root_dir = require('jdtls.setup').find_root({'.git', 'mvnw', 'gradlew'}), -- Here you can configure eclipse.jdt.ls specific settings -- See https://github.com/eclipse/eclipse.jdt.ls/wiki/Running-the-JAVA-LS-server-from-the-command-line#initialize-request -- for a list of options settings = { java = { } }, -- Language server `initializationOptions` -- You need to extend the `bundles` with paths to jar files -- if you want to use additional eclipse.jdt.ls plugins. -- -- See https://github.com/mfussenegger/nvim-jdtls#java-debug-installation -- -- If you don't plan on using the debugger or other eclipse.jdt.ls plugins you can remove this init_options = { bundles = {} }, } -- This starts a new client & server, -- or attaches to an existing client & server depending on the `root_dir`. require('jdtls').start_or_attach(config)
-
Foot – A fast, lightweight and minimalistic Wayland terminal emulator
I can get by with https://github.com/mfussenegger/nvim-jdtls
-
[HELP] ftplugin and lazy loading in NvChad
This and this provided no viable solutions for me
- Anyone using nvim for Kotlin development?
-
Help for configure jdtls
I tried to configure jdtls for my NeoVim I followed https://github.com/mfussenegger/nvim-jdtls install instruction. and I faced this error does anyone successfully configured jdtls ? help T ^ T
-
Adding JAR files to nvim-jdtls
Am I adding it to the wrong configuration option? Some places I see it added as a referencedLibary - https://github.com/mfussenegger/nvim-jdtls
-
Does anyone config java for neovim?
Sure. Any server that lspconfig supports will work. But for java development is better if you use nvim-jdtls. The documentation in lsp-zero has a guide on how to setup nvim-jdtls.
-
I can't seem to figure it out
Here' my java.lua for nvim-jdtls which solves the nil issue and add more features.
What are some alternatives?
tree-climber.nvim
nvim-lspconfig - Quickstart configs for Nvim LSP
refactoring.nvim - The Refactoring library based off the Refactoring book by Martin Fowler
eclipse.jdt.ls - Java language server
aerial.nvim - Neovim plugin for a code outline window
nvim-lsp-installer - Further development has moved to https://github.com/williamboman/mason.nvim!
treesitter-unit - A Neovim plugin to deal with treesitter units
coc-java - Java extension for coc.nvim
react-extract.nvim - Neovim plugin for extracting jsx into React component
java-debug - The debug server implementation for Java. It conforms to the debug protocol of Visual Studio Code (DAP, Debugger Adapter Protocol).
nvim-treesitter-textobjects
mason.nvim - Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.