Je pense qu'il serait utile d'avoir la possibilité d'échanger true
et de false
valeurs dans le code rapidement, avec combinaison ctrl+ aou ctrl+ x. Y a-t-il un plugin pour ça ou autre chose?
key-bindings
Alexander Myshov
la source
la source
Il y a switch.vim , et il est personnalisable.
Par exemple, si le curseur se trouve sur le
true
dans le code suivant:puis lors de l'exécution
:Switch
, letrue
deviendrafalse
.la source
Pléthore de plugins
Le basculement
true
/false
similaire a été implémenté par de nombreux auteurs de plugins. Deux d'entre eux ont déjà été mentionnés:D' autres sont à bascule par Timo Teifel ( # 895 ), lundi par Stefan Karlsson ( # 1046 ), toggle_words par Vincent Wang ( # 1676 ), toggle_word par Alexandru Ungur ( # 1748 ), incbool.vim par Dmitry Petrov ( # 4361 , github ) , nextval de Michael Arlt ( # 4536 , github ).
Juste au cas où vous voudriez augmenter les nombres selon une série personnalisée, par exemple la série Fibonacci, consultez nexus de Barry Arthur ( github ).
Plugins Supercharging
Ctrl-A/X
Cependant, tous ne suivent pas par défaut l'idée d'étendre
Ctrl-A/X
mais définissent une nouvelle commande et / ou un nouveau mappage (y compris switch.vim et toggle-bool ). Je veux mettre en évidence les plugins qui `` suralimentent ''Ctrl-A/X
et, par conséquent, fournissent par défaut ce que l'OP a demandé:Un plugin connexe qui s'étend également
Ctrl-A/X
est la datation rapide par Tim Pope ( # 2120 , github ) qui vous permet d'incrémenter les dates.Se retirer
Certains plugins permettent de combiner un deuxième
Ctrl-A/X
plugin incrémenteur comme solution de rechange, par exempleSwapIt par Michael Brown:
cycle par bootleq:
switch.vim par Andrew Radev:
Remarque
Si vous utilisez le comportement de recherche de la fonction intégrée
Ctrl-A/X
(recherchez la prochaine valeur possible dans la ligne à incrémenter), leur suralimentation peut interférer.la source
changez le mappage en ce que vous voulez utiliser
l'annulation est dans le cas où vous l'utilisez au-dessus d'un espace, car ciw modifiera l'espace au lieu du mot (et il n'y a pas de moyen facile d'obtenir le bon mot de manière fiable)
notez également que ^ M doit être
<C-V><Enter>
, pas littéralement ^ Mla source
<C-a>
et<C-x>
lorsque le mot actuel n'est pas un booléen, de cette façon OP serait vraiment capable d'utiliser ces mappages. Vous pouvez également utiliser<CR>
au lieu de^M
dans votre mappage, et il est généralement préférable de fournir un mode à votremap
commande, icinnoremap
serait plus approprié quenoremap
.