En commençant par le point ou la région active, comment puis-je rapidement (en une seule touche / commande) «développer» pour inclure le prochain ensemble de parenthèses englobantes?
Si je commence par: ( |
signifie point)
(defn foo [x] (+ x |42))
Ou si je commence par: ( <
et >
entre parenthèses la région sélectionnée)
(defn foo [x] (+ x <42>|))
Je veux finir avec
(defn foo [x] <(+ x 42)>|)
la source
expand-region
fonction spécifique pour marquer immédiatement la liste est appeléeer/mark-outside-pairs
.Je suis d'accord que vous devriez essayer
expand-region
comme suggéré dans une autre réponse (pour laquelle je vote).Mais juste au cas où vous n'êtes pas familier avec les commandes intégrées pertinentes:
Dans votre premier exemple où il n'y a pas de région, vous pouvez utiliser
C-M-u C-M-SPC
pour marquer la liste englobante. S'il existe déjà une région sélectionnée, ces commandes l'étendent. Donc, si42
est sélectionné et que vous le frappez,C-M-u
cela étendra la sélection vers le début de la liste, mais n'inclura pas le paren de fermeture.Donc, en l'absence de quelque chose comme
expand-region
je frapperaisC-g
pour annuler toute sélection en cours, puisC-M-u
pour revenir en arrière autant de parens que vous le souhaitez, puisC-M-SPC
pour marquerla source
Dans le cas d'une région active, hen lispy fera ce que vous voulez. Voir mon récent article d' introduction .
Dans le premier cas, vous devez M-m h.
mise à jour: toutes les options que vous avez avec
lispy
Commençant par:
Ici,
~
dénote la marque (le début de la région) et|
dénote le point (la fin de la région).Avec hvous obtenez:
Avec lvous obtenez:
Avec kvous obtenez (annulable avec j):
Avec 2kou kkvous obtenez:
Avec dvous obtenez:
Avec d>vous obtenez (annulable avec <):
Avec d2>ou d>>vous obtenez:
Avec mvous obtenez:
Pour résumer, quand la région est active, h, j, k, l sont les flèches qui se déplacent dans la région. >agrandit la région d'une unité sémantique en direction du point. <rétrécit la région d'une unité sémantique dans la direction du point. mdésactive la marque. isélectionne le premier élément de la région et déchange le point et la marque.
la source