Comment puis-je garder le curseur de texte (caret) sur l'écran lors du défilement dans VS Code avec Ctrl + haut / bas?
J'ai recherché des options de défilement, des options de texte, des extensions, etc. En vain.
3 Réponses :
Je n'ai pas essayé moi-même, mais avez-vous déjà regardé ceci?
Installez ceci:
https://marketplace.visualstudio.com/items?itemName=geddski.macros
puis ajoutez une macro à ctrl + haut / bas avec cet exemple et remplacez la clé alt + pageup par ce que vous voulez.
https://github.com/Microsoft/vscode/issues/22796
{ "key": "alt+pageup", "command": "editorScroll", "args": { "to": "up", "by": "page", "revealCursor": true }, "when": "editorTextFocus" }
J'espère que cela fonctionne, ayez un bon!
p >
Il fait simplement défiler une ligne à la fois, alors peut-être voulez-vous modifier cela. Sinon, l'OP pourrait simplement utiliser PageUp / Down pour obtenir le même comportement que votre macro.
De plus, il n'y a pas besoin d'une macro ici - il suffit de mettre votre code dans le keybindings.json fonctionne tel quel (pour PageUp).
Peut-être que vous cherchez quelque chose de similaire comme scrolloff
dans vim?
Ajoutez ensuite ceci à vous settings.json
:
"editor.cursorSurroundingLines": 9999,
Dans ma version de VS-Code (1.51.1), cela n'empêche pas le curseur de quitter l'écran lorsque Ctrl-Up
ou Ctrl-Down
sont utilisés.
Donc, cela ne répond pas très bien à la question posée ici, mais cela répond très bien à ce que j'ai vraiment bien recherché sur Google. Merci!
C'est ce que j'utilise dans keybindings.json
et cela correspond assez bien au comportement Ctrl + Haut / Bas de Visual Studio. (c'est-à-dire: essentiellement la réponse de SebastianDB mais pour les deux touches et la ligne haut / bas au lieu de la page. De plus, vous n'avez pas besoin de l'extension de macros, cela fonctionne immédiatement).
{ "key": "ctrl+up", "command": "editorScroll", "args": { "to": "up", "by": "line", "revealCursor": true }, "when": "editorTextFocus" }, { "key": "ctrl+down", "command": "editorScroll", "args": { "to": "down", "by": "line", "revealCursor": true }, "when": "editorTextFocus" }
le curseur est à l'écran pour moi en utilisant mon vscode fraîchement installé (Linux).