expand-region.el VS ryo-modal

Compare expand-region.el vs ryo-modal and see what are their differences.

expand-region.el

Emacs extension to increase selected region by semantic units. (by magnars)

ryo-modal

Roll your own modal mode (by Kungsgeten)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
expand-region.el ryo-modal
16 14
1,328 217
- -
5.2 0.0
3 months ago 4 months ago
Emacs Lisp Emacs Lisp
GNU General Public License v3.0 only MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

expand-region.el

Posts with mentions or reviews of expand-region.el. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-04.
  • Question for Meow users
    4 projects | /r/emacs | 4 Feb 2023
    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)
    7 projects | /r/emacs | 15 Jan 2023
    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).
  • What packages do I need to for the best elisp editing environment?
    8 projects | /r/emacs | 6 Jan 2023
    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
    8 projects | /r/emacs | 6 Aug 2022
    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?
    5 projects | /r/emacs | 7 Apr 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
    3 projects | news.ycombinator.com | 12 Mar 2022
    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.

    https://github.com/magnars/expand-region.el

  • Sharing my first emacs extension: csharpto.el
    3 projects | /r/emacs | 18 Feb 2022
    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 :)
  • Is there a way to highlight the content inside parenthesis like Kate does?
    1 project | /r/emacs | 23 Oct 2021
    The package for growing the selection is the excellent expand-region by Magnar Sveen
  • Looking for evil-mode resources for non vim users emacs beginners
    10 projects | /r/emacs | 13 Oct 2021
    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)
    11 projects | /r/emacs | 19 Aug 2021
    You will probably like expand-region.el. It is fantastic for selecting inside brackets, quotes, etc.

ryo-modal

Posts with mentions or reviews of ryo-modal. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-08.
  • Ask HN: Best way to experiment with text text editing?
    7 projects | news.ycombinator.com | 8 Jan 2023
    To build on what others are saying about Emacs, if you start exploring the package ecosystem, you're going to see quite a lot of really interesting packages that are related to improving/experimenting with the UX of editing text. While I'm not endorsing anyone in particular, I think what this list does show is just how easy it is to do pretty much whatever you want in Emacs;

    https://karthinks.com/software/avy-can-do-anything/

    https://github.com/jyp/boon

    https://github.com/clemera/objed

    https://github.com/jmorag/kakoune.el

    https://github.com/meow-edit/meow/

    https://github.com/xahlee/xah-fly-keys

    https://github.com/Kungsgeten/ryo-modal

    https://github.com/emacsorphanage/god-mode

    Emacs 29 also now has treesitter and LSP mode integration built-in, a compilation mode, a comint mode for REPLs, excellent file browsing packages (I use dired/dirvish), and a few other killer features.

    Now, if what you truly dislike are "quirky editors", prepare yourself for a world of hurt because vanilla Emacs departs quite a bit from "modern" text editors. I struggled with this for a while, but eventually by buying into the paradigm, I now feel that when emacs try emulating "modern" IDE features like autocompletion, LSP, and DAP UI, I feel like it's a regression, not a progression. The point here is that you might have an "idea" of what good initial UX and lack of quirks would look like, but Emacs might change the way you think.

  • Evil keybinding for emacs from scratch
    6 projects | /r/emacs | 5 Nov 2022
    If it's the latter and you're looking for a way to set up vim/evil like keybindings yourself (separate links for each), Modalka, RYO-modal, and Meow (and probably a few dozen others 'cause emacs) allow you to do that.
  • Nested/conditional keybindings to navigate in text
    4 projects | /r/emacs | 14 Sep 2022
    You can write custom commands that wrap a little bit of logic around the standard movement commands. Or another option would be to look at ryo-modal or meow.
  • How to get doom emacs keybindings?
    5 projects | /r/emacs | 14 Jun 2022
    Along with General, you can take a look at some other packages for keybindings and modal editing. A good option is RollYourOwn Modal mode. In the documentation there, it also lists several other packages with pre-defined bindings. Xah-Fly-Keys is specifically designed for ergonomics and may be interesting to explore.
  • Why not use Evil in 2022?
    5 projects | /r/emacs | 7 Apr 2022
    Because you can roll your own modal mode. This particular approach will make the experience convenient in the way you actually prefer (Emacs' extensibility at its finest) and it'll allow you to slowly move towards the modal editing if it happens to be convenient for you.
  • Lapce
    21 projects | news.ycombinator.com | 17 Mar 2022
  • "I'll just install EVIL"
    4 projects | /r/emacs | 2 Dec 2021
    Similar to Meow is ryo-modal. What I like about ryo-modal is that it is completely unopinionated and does nothing by default, and instead just provides the tools to make your own modal editing system.
  • Layer keys
    2 projects | /r/emacs | 8 Oct 2021
    I was thinking that combining this functionality with something like ryo-modal could make for a very satisfying and efficient modal keybind system. However, it doesn't seem like there's any ready made way to do this in Emacs.
  • Think which-key update breaks ryo-modal
    1 project | /r/emacs | 25 Jun 2021
  • How to make ryo-modal not insert the non-mapped keys?
    1 project | /r/emacs | 4 May 2021
    ryo-modal is a package for creating modal keymaps. I want to test it, but I need a little help.

What are some alternatives?

When comparing expand-region.el and ryo-modal you can also consider the following projects:

evil-guide - Draft of a guide for using emacs with evil

meow - Yet another modal editing on Emacs / 猫态编辑

modalka - Modal editing your way

.emacs.d - My current Emacs setup.

xah-fly-keys - the most efficient keybinding for emacs

elegant-emacs - A very minimal but elegant emacs (I think)

kakoune.el - A very simple simulation of the kakoune editor inside of emacs.

whole-line-or-region - In Emacs, operate on current line if no region is active

emacs.d - Personal Emacs configurations

easy-kill - Kill & Mark Things Easily in Emacs

emacs-baboon - My new Emacs config with use-package