Pour le dire simplement, j'essaie de faire défiler dans emacs comme dans vim et la plupart des autres éditeurs; quand je suis par exemple, deux lignes à partir du bas / haut, et je presse vers le bas / vers le haut (Ctrl - p, n, ↑, ↓) il va seulement une ligne vers le haut ou vers le bas, pas la moitié de l'écran.
Réponses
Trop de publicités?Je suis un peu en retard à la fête, mais si vous n'avez pas l'esprit de l'installation du paquet puis lisse de défilement (github) peuvent être ce que vous êtes à la recherche pour - certainement, cela fonctionne pour moi.
Une fois que vous avez installé, vous pouvez apparaître les éléments suivants dans votre init.el:
(require 'smooth-scrolling)
(setq smooth-scroll-margin 5)
La deuxième ligne est facultative, mais elle commence à défiler près du bord de l'écran plutôt qu'à elle, de sorte que vous avez toujours un peu de contexte autour du point. Ajuster à votre goût.
Ma solution n'est pas de changer Emac de défilement par défaut, mais plutôt de créer une séquence de touche de commande à partir d'une macro. De cette façon, vous avez un moyen pratique pour faire défiler ligne par ligne quand vous le voulez. Pas l'idéal, mais super facile. Il se trouve que M-(↓) et M-(↑) sont disponibles, de sorte que c'est ce que j'ai utilisé.
Voilà comment j'ai fait. Tout d'abord, vous devez enregistrer une macro pour une ligne de parchemins, en haut et en bas.
Commencer macro
C-x (
Faites défiler vers le bas d'un
C-u 1 C-v
Arrêter la macro
C-x )
Pour faire défiler jusqu'à l'un, l'utilisation
C-u 1 M-v
Ensuite, vous devez le nom de la macro.
M-x name-last-kbd-macro
Donnez-lui un nom lorsque vous y êtes invité, comme:
down-one-line
Alors utilisez simplement la suite de se lier à une séquence de touches pour que le nom de la commande:
M-x global-set-key
Et lors de la demande de confirmation, utilisez quelque chose comme:
M-(down arrow)
Ensuite il va vous demander de la commande que vous souhaitez lier, et vous devez lui donner le nom que vous avez inventé plus tôt, par exemple, vers le bas-une-ligne.
C'est là que j'ai eu cette information. Vous pouvez également trouver des instructions ci-dessous et ailleurs sur l'ajout de votre macro .emacs fichier.
Ici pour la définition de macro explication
Ici, sur le contrôle de défilement
J'ai été en utilisant ces dans ma .emacs
le fichier depuis l'an 2000.
(global-set-key (quote [M-down]) (quote View-scroll-line-forward))
(global-set-key (quote [M-up]) (quote View-scroll-line-backward))
De cette façon, je peux garder le Emacs comportement par défaut ainsi que le défilement ligne par ligne, en fonction de ce que je fais.
Cela a fonctionné au moins jusqu'à GNU Emacs 22. J'ai récemment mis à niveau vers Emacs 24 et découvert qu' View-scroll-line-forward
et View-scroll-line-backward
ne sont plus disponibles. Après un peu de chasse, j'ai découvert que de défilement ligne et faites défiler jusqu'en bas de la ligne de travail. Ainsi, si vous utilisez Emacs 24, vous pouvez utiliser cette.
(global-set-key (quote [M-down]) (quote scroll-up-line))
(global-set-key (quote [M-up]) (quote scroll-down-line))
J'ai presque sauté Emacs 23, donc, si c'est la version que vous utilisez, vous pouvez expérimenter avec les deux ci-dessus.
Remarque: scroll-up-line
fait se déplacer d'une ligne vers le bas, parce que le tampon est en train de déplacer une ligne vers le haut.