drym-org / symex.el

An intuitive way to edit Lisp symbolic expressions ("symexes") structurally in Emacs
Other
272 stars 23 forks source link

Fix tree-sitter selection issue #74

Open countvajhula opened 1 year ago

countvajhula commented 1 year ago
  1. Deleting at the end of any expression causes the root to be selected after the deletion instead of (ideally) the preceding node or containing node.
  2. entering symex mode while at the end of a word always causes it to select the containing expression instead of the one at point. E.g.:
def blah(hello):
    print("hello")
    a = 5|
    print("ciao")

With point at |, entering symex mode causes the entire body of the blah function to be selected instead of either 5 or a = 5. But placing the cursor at any other point within that expression, e.g. a = |5, causes it to select correctly.

Additional context: see this comment.