er/expand-regio werkt niet zoals eerder onder Emacs 25.1

Ik heb een er/expand-regio die zich heel vreemd gedraagt ​​en ik begrijp niet wat ik fout heb gedaan (naast het upgraden naar Emacs 25.1.50).

Als ik dit in een elisp-bestand heb gekregen:

(defun foo (p) (* 2 2) p)

(dat stuk code is slechts een voorbeeld)

en ik sta op de asterisk en begin met het uitbreiden van de regio die ik krijg:

  • "*" (OK)
  • "* 2 2" (OK)
  • "* 2 2)" (VERKEERD)
  • "(* 2 2)" (nogal ok denk ik)
  • "(* 2 2) p)" (VERKEERD)
  • "(defun foo (p) (* 2 2) p)" (nogal ok denk ik)

Ik heb precies hetzelfde probleem met Clojure-bestanden.

Eerder er/uitvouw-regio gebruikt om dingen te selecteren tussen passende haakjes. Het probleem is dat ik nu meer toetsaanslagen nodig heb om te selecteren wat ik wil en ik blijf eindigen met onevenwichtige elisp/Clojure-code omdat ik niet-gebalanceerde stukjes code knip/kill.

Ik heb geprobeerd om zowel de er/expand-regio met de snelkoppeling aan te roepen of het handmatig te noemen: hetzelfde resultaat. Uit mijn testen lijkt het bijvoorbeeld dat in Clojure de clojure-modus-uitbreiding lijst wordt gebruikt, enz.

Ik weet helemaal niet hoe er/expand-regio intern werkt, maar het is alsof er eerder iets is aangeroepen er/mark-inside-pairs en er/mark-outside-pairs en dat dat ding overeenkwam met het juiste haakje.

Enig idee wat er mis ging en hoe ik dit kon oplossen?

Ik heb zowel mijn oude er/expand-regio als de nieuwste ELPA-versie geprobeerd.

1
Ik ben op de nieuwste versie van emacs-25 dev branch maar ik kan niet repliceren wat je ziet; mijn uitbreiding verloopt in deze volgorde: "*", "* 2 2", "(* 2 2)", "defun foo (p) (* 2 2) p", "(defun foo (p) (* 2 2 ) p) ".
toegevoegd de auteur UnkwnTech, de bron
Probeer het eerst in een emacs -Q -sessie. In die sessie laadt u alleen dit ene pakket en kijkt u of u hetzelfde probleem opnieuw kunt maken met er/expand-region . Hoogstwaarschijnlijk zal het goed werken en dan zou je je init.el in tweeën moeten delen om de boosdoener te vinden.
toegevoegd de auteur UnkwnTech, de bron
Gebruikt u de nieuwste versie van de uitbreidingsregio van MELPA?
toegevoegd de auteur Ishmaeel, de bron
@Kaushal Modi: heel erg bedankt voor het proberen, het is precies hoe het zich eerder voor mij gedroeg (ik was eerder op Emacs 25.0.50, niet op 25.1.50). Ik zal blijven proberen het te laten werken: ik heb geen idee wat er mis ging. Ik zal verwijderen/opnieuw installeren en verschillende versies proberen (ik zal zien wat ik leuk vind op melpa, melpa-stable, probeer met mijn oude Emacs [die ik nog steeds in een andere gebruikersdirectory werk], enz.).
toegevoegd de auteur Yousend, de bron
@Kaushal Modi: eigenlijk ben ik dol op uitbreidingsregio en ik ben er zo aan gewend om te werken op de manier/volgorde die je beschreef dat ik fouten blijf maken nu het "rare niet uitgebalanceerde uitbreidingen" doet: - /
toegevoegd de auteur Yousend, de bron
@lunaryom: Uiteindelijk heb ik het opgelost, hoewel ik niet zeker weet wat ik heb gedaan om het te laten werken, omdat ik vele dingen heb gewist/opnieuw heb geïnstalleerd. Alles wat ik zeker weet, is dat ik mijn hele $ HOME/.emacs.d/elpa/ map heb verwijderd en al mijn ELPA-pakketten opnieuw heb geïnstalleerd. Ik kan nu zien dat ik expand-regio 20150902.558 (op Emacs 25.1.50 samengesteld uit bronnen) gebruik en dat alles weer goed werkt, maar ik weet niet of het afkomstig is van MELPA of MELPA-stable. Bedankt aan jullie voor de hulp: ik heb het aan de praat gekregen!
toegevoegd de auteur Yousend, de bron

2 antwoord

Ik denk dat dit te maken heeft met enkele brekende veranderingen in Emacs 25.0. *

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

Ik gebruik nog steeds 25.0. * En loste het probleem op door expand-region te installeren vanuit MELPA, waar een oplossing voor Emacs-versies 25+ met tijdelijke oplossingen is geïmplementeerd.

Opmerking: gebruik de versie (0.10.0) niet in MELPA stable omdat deze niet werkt.

2
toegevoegd
Ik gebruik de nieuwste versie van uitvouwregio formulier Melpa en de nieuwste build van emacs uit zijn emacs-25 -branche vanaf vandaag (25.0.93.x) en dingen zijn werkt prima zoals verwacht.
toegevoegd de auteur UnkwnTech, de bron

De nieuwste officiële Emacs-release is 24.5 en de ontwikkelaar van de uitbreidingsregio is geen ondersteuning voor ontwikkeling versies (dwz 25+). Dit is niet onredelijk, omdat er in de Emacs 25-tak veelvuldige wijzigingen zijn die de uitvouwregio verbreken en ongedaan maken, zoals hier in de vraag wordt aangetoond. Het bijhouden van hen zou een grote klus zijn met weinig voordeel.

Oplossingen voor het probleem:

  • blijf bij een officiële emacs-release (d.w.z. 24.5)
  • als u een ontwikkelversie van Emacs gebruikt, moet u zich houden aan een specifieke release die werkt met de uitbreidingsregio. Test builds van nieuwe versies voordat u uw oude versies vervangt
1
toegevoegd
Ik gebruik de nieuwste versie van uitvouwregio formulier Melpa en de nieuwste build van emacs uit zijn emacs-25 -branche vanaf vandaag (25.0.93.x) en dingen zijn werkt prima zoals verwacht.
toegevoegd de auteur UnkwnTech, de bron