puni
expand-region.el
Our great sponsors
puni | expand-region.el | |
---|---|---|
8 | 16 | |
357 | 1,316 | |
- | - | |
6.0 | 5.2 | |
3 months ago | 2 months ago | |
Emacs Lisp | Emacs Lisp | |
GNU General Public License v3.0 only | 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.
puni
- Paredit-like features in non-lisp modes?
-
Good Emacs Packages
For working with delimiters, you might want to check out Smartparens or Puni. There are many other packages like these, but those are the two I know about.
-
Tree-sitter starter guide
I'm guessing the way forward here for navigation is to change Emacs' built-in sexp-navigation when treesitter is available? forward-sexp, backward-up-list, down-list, raise-sexp etc do a good job in lisp environments, and they can now work everywhere. Packages that build on these (like Puni will automatically gain treesitter-awareness.
-
What modal sexp editing mode should I switch to?
I have never used lispy, but I have used puni for a while now, and I'm pretty satisfied with it. I am not sure that it's exactly what you're looking for since it takes a more limited approacg, but it has a lot of the same features: slurping, barfing, raising, splicing etc.
-
What packages do I need to for the best elisp editing environment?
For any Lisp you want paredit or any other structural editing package (I switched to puni recently because it’s more customizable and works with non-Lisp languages too). The first three days will suck hard because it’ll feel like the tools get in your way, but once you’re comfortable with it it’ll be the best thing ever.
-
paredit based on treesitter
Afaik puni uses only forward-sexp for navigating and manipulating sexps. So if you implement a forward-sexp-function that uses treesit.el it should work without any changes.
- Find out a great emacs package for structural editing.
expand-region.el
-
Question for Meow users
I don't use Meow, so this may be wildly off the mark (no pun) here. But I use and really like expand-region for selection and marking. With modal editing, I imagine it would be extremely fast and intuitive.
-
ts-movement: a package to navigate the tree-sitter syntax tree (supports multiple-cursors)
I think the following packages would fit your wishlist, as it is very similar to mine. As mentioned in the replies, there is (https://github.com/magnars/expand-region.el) and (https://github.com/mickeynp/combobulate). I regularly use (https://github.com/Fuco1/smartparens).
Until combobulate comes out, classically I think most people uses expand-region. It generally works okay, but needs a lot of language specific logics to work perfectly. Only bringing it up in case you were unaware of it.
-
What packages do I need to for the best elisp editing environment?
Paredit, Speed-of-thought lisp, Helm, perhaps Lispy but I am not using it myself. I found expand-region to work really well when writing and modifying elisp. lisp-extra-font-lock if you want some more blink (and font-lock-studio). Helpful is very good to have instead of built-in help, it displays the source code by default as well as symbol properties. It is a very informative learning experience to see how built-in stuff is implemented. I am quite lazy to press extra in built-in help to see the source code, but with Helpful, you get it auto in the same window, whicih is great for learning. Seeing symbol properties is sometimes a time saver so you don't have to M-: and type an Elisp function to see the symbol properties when debugging. Learn Edebug, it is very useful built-in application for Emacs Lisp development.
-
vanish.el: hide parts of a buffer
Exactly. Consider you have point in a table definition. You can programmatically find which org element you are in, at least for org-mode. Or in a defun for elisp-mode, a sentence or paragraf in plain text and so on. You could just press a shortcut, and based on major-mode you could find boundaries of the element and put it in hidden-list. It would be really fast to work that way. I don't know if it already exists in some package. Or you could go for somewhat easier version, and just check if a region is active, and if it is, hide region, and if not, hide current line, or based on mode, hide element at point. That way we can easily expand/contract region with er/expand-region and press a key to temporary hide/unhide it. It is not difficult to write a function to do that based on text properties. Thing-at-point might be useful here too.
-
Why not use Evil in 2022?
https://github.com/magnars/expand-region.el is your friend. I use the built-in equivalent of it in IntelliJ all the time. it's a bit like a vi text objects in the simplest possible way.
-
Paredit Mnemonics for Slurping and Barfing Lisp Symbolic Expressions
Thanks, I will give paredit a shot.
I'm a regular emacs user, but I normally use expand-region[1] and cut/paste to edit lisp code. Expand-region usually knows what I want to move around after just one or two calls, only requires one key binding, and has visual feedback. And it works great in every language I have used.
-
Sharing my first emacs extension: csharpto.el
One thing that I always missed is the ability to select a whole function in C#, but I thought I just didn't know the right package or it was something trivial to do ad-hoc. Surprisingly, up to these days I still couldn't find anything. I bumped into the expand-region package at some point, which is awesome, but still something was missing. After going through the Emacs Lisp Intro tutorial, I learned a bit how to search things in a buffer, and I was also editing csharp files every day, so I decided to try to implement the functions myself. Fast forward some weeks, here I am, with a smile on my face :)
-
Looking for evil-mode resources for non vim users emacs beginners
If you want to try out some third-party packages in the beginning, I think the most "bang-for-your-buck" you'll get is with Avy. Also, expand-region. And specifically for writing: olivetti-mode, flyspell, dictionary, and Nicolas Rougier's Nano and Elegant Emacs setups.
-
Effective and efficient text editing using Emacs (Alternative to Evil)
You will probably like expand-region.el. It is fantastic for selecting inside brackets, quotes, etc.
What are some alternatives?
evil-guide - Draft of a guide for using emacs with evil
meow - Yet another modal editing on Emacs / 猫态编辑
.emacs.d - My current Emacs setup.
elegant-emacs - A very minimal but elegant emacs (I think)
whole-line-or-region - In Emacs, operate on current line if no region is active
xah-fly-keys - the most efficient keybinding for emacs
avy - Jump to things in Emacs tree-style
easy-kill - Kill & Mark Things Easily in Emacs
kmonad - An advanced keyboard manager
olivetti - Emacs minor mode to automatically balance window margins
.emacs.d - My personal emacs settings, and the ones used in @emacsrocks
smartparens - Minor mode for Emacs that deals with parens pairs and tries to be smart about it.