treesitter-unit
shell
treesitter-unit | shell | |
---|---|---|
9 | 2 | |
149 | 151 | |
- | - | |
1.8 | 4.4 | |
over 2 years ago | 3 months ago | |
Lua | Nim | |
The Unlicense | - |
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.
treesitter-unit
-
paredit.vim – Paredit Mode: Structured Editing of Lisp S-Expressions
It's also relatively easy to write plugins based on the parsed AST. I wrote treesitter-unit[1] making it easy to select/modify the subtree of the selection.
[1]: https://github.com/David-Kunz/treesitter-unit
-
What do you use treesitter for other than highlighting?
I built a plugin to select units of tree-sitter objects https://github.com/David-Kunz/treesitter-unit
- USER FLAIRS: Apply now!
-
How to paste inline the content I deleted/yanked with x/d/dd/y/yy instead of pasting one line below?
To delete/yank the node, the combination would be `diu`, using this plugin: https://github.com/David-Kunz/treesitter-unit
- Nim Version 1.6 Released
-
Custom treesitter textobjects
Hi, I also think treesitter-textobjects are a bit overspecific, that's why I created https://github.com/David-Kunz/treesitter-unit/ .
-
Video: Let's create a Neovim plugin using Treesitter and Lua
In this video I create a Neovim plugin called 'treesitter-unit' using Lua. You can find the final plugin here: https://github.com/David-Kunz/treesitter-unit/
-
Plugin: treesitter-unit
I tried it with operator mode maps and it works perfectly! I updated the README to include: vim.api.nvim_set_keymap('o', 'x', ':lua require"treesitter-unit".select()', {noremap=true})
shell
-
GNU Parallel, where have you been all my life?
On Unix, you might try Nim (https://nim-lang.org) with https://github.com/Vindaar/shell and there are a slew of pipeline-y/Unix-y utilities over at https://github.com/c-blake/bu
Nim is statically typed and (generally) native-compiled, but it has very low ceremony ergonomics and a powerful compile-time macro/template system as well as user-defined operators (e.g., you can use `+-` to make a constructor for uncertain values so that `9 +- 2` builds a typed object.
-
Nim Version 1.6 Released
Well no language is perfect, but Nim can be used in almost every domain because of it's compilation targets(C, C++, JS) and it's fast compile times(who needs interpretation when compile times are that fast!):
* Shell scripting, I still assume most people will just use Bash tho: https://github.com/Vindaar/shell
* Frontend: https://github.com/karaxnim/karax or you could bind to an existing JS library.
* Backend: For something Flask-like: https://github.com/dom96/jester or something with more defaults https://github.com/planety/prologue
* Scientific computing: the wonderful SciNim https://github.com/SciNim
* Blockchain: Status has some of the biggest Nim codebases currently in production https://github.com/status-im?q=&type=&language=nim&sort=
* Gamedev: Also used in production: https://github.com/pragmagic/godot-nim and due to easy C and C++ interop, you get access to a lot of gamedev libraries!
* Embedded: this is a domain I know very little about but for example https://github.com/elcritch/nesper or https://github.com/PMunch/badger for fun Nim+embedded stuff!
Most of the disadvantages come from tooling and lack of $$$ support.
What are some alternatives?
jester - A sinatra-like web framework for Nim.
nimbus-eth2 - Nim implementation of the Ethereum Beacon Chain
nvim-treesitter-textsubjects - Location and syntax aware text objects which *do what you mean*
nvim-treesitter-textobjects
cps - Continuation-Passing Style for Nim 🔗
nvim-treesitter - Nvim Treesitter configurations and abstraction layer
syntax-tree-surfer - A plugin for Neovim that helps you surf through your document and move elements around using the nvim-treesitter API.
wrk2 - A constant throughput, correct latency recording variant of wrk
nvim-treesitter-textobjec
pash - PaSh: Light-touch Data-Parallel Shell Processing
cmdchallenge