m-m kbd> ( back-to-indentation code>) déplace le point sur le premier caractère non blancheur de la ligne. J'aimerais faire le contraire: Déplacer le point sur le dernier personnage non blancheur de la ligne. J'ai été incapable de trouver une commande "intégrée" pour cela et je ne suis pas assez familier avec Elisp pour écrire quelque chose, alors toute aide serait appréciée s'il vous plaît. P>
5 Réponses :
(defun my-move-end-of-line-before-whitespace () "Move to the last non-whitespace character in the current line." (interactive) (move-end-of-line nil) (re-search-backward "^\\|[^[:space:]]"))
Merci. J'ai ajouté (transfert-char) code> à la fin afin que je puisse simplement utiliser c-k code> pour supprimer le blancheur.
Je pense que les Phils ont déjà répondu à votre question. Juste un autre pow ... Les espaces blancs traînants sont très ennuyeux, invisibles et sujets aux bugs (?). Donc, j'ai un crochet pour de sorte que votre opération en retrait devienne simplement avant-sauvegarde-crochet code> pour les supprimer. c-e code> pour moi. p> p>
Que vous pouvez écrire plus simplement comme (add-hook 'avant-enregistrement-grow' 'Supprimer-whitespace) code>, BTW.
@sanityinc oui. vous avez raison. supprimé la Lambda redondante. Merci
Je recommande l'excellent ws-trim-mode CODE> (Inclut également global - code> variante) pour la rupture des espaces de fin. C'est tout à fait personnalisable, mais la configuration par défaut ne modifiera que des lignes que vous modifiez, ce qui en fait la version de contrôle de la version (c'est-à-dire ne présentera pas de masses de modifications non pertinentes si vous éditez un fichier qui a eu beaucoup de blancheurs de fuite). FTP.LYSATOR.LIU.SE/PUB/EMACS/WS-TRIM. El
@Plushs bon de savoir à ce sujet. Je pense que ce serait très utile lors de la modification des fichiers d'autres. Merci d'avoir informé
Normalement dans cette situation, je veux accéder au dernier personnage non-blancspace et supprimer également l'espace de fuite, alors j'utilise ceci:
M-\ runs the command delete-horizontal-space, which is an interactive compiled Lisp function in `simple.el'.
Ceci est utile, mais nécessite que cela ait déjà été déplacé vers la bonne position.
Bon point. Si ce n'est pas déjà à la fin de la ligne, vous devez ajouter un c-e code> à l'avance.
Oui, donc c-e code> `m- \` est une solution alternative qui passe pointe vers la fin de la ligne, puis supprime l'espacement supplémentaire. Merci.
J'ai écrit cette fonction pour se lier à C-E (généralement REMAP CE: P> MOVI-FIND-DE-LINE CODE>). CE fonctionne comme d'habitude, mais si votre pointeur est déjà à la fin de la ligne, il supprimera le suivi des espaces suivants. ;; remap C-e to 'smarter-move-end-of-line'
(global-set-key [remap move-end-of-line]
'my/smarter-move-end-of-line)
Ma version: Déplacez-vous à la fin de la ligne ou du dernier non-espace (en supprimant les espaces de fin) Ceci est pris de @justinokamoto; Ensuite, j'ajoute la fin de la ligne visuelle. (Désolé pour mon anglais cassé). P> p> [fin] code> et "\ Touches CE " CODE> (Control + e): P>
interactif "^" code>). li>
let (désactivé-marque) code> est de vous assurer que la région est conservée. li>
ul>