203 private links
Eh bien je vais tester FZF et ripgrep, on verra ce que ça donne
En mode insertion : ^o
puis la commande habituelle (avec les deux points au début).
Pas besoin de passer en mode normal pour exécuter une commande ^-^
La commande est : r! <command>
.
Pour l'exemple d'un calcul : !r expr 15 \* 3 + 19 \* 2
. La commande utilisée ici est expr.
Les backslash permettent d'échapper le caractère "*", étant un wildcard en bash.
EDIT: j'avais oublié ! En bash, il ya les expressions arithmétiques : $((4*10+2))
Bien plus pratique à utiliser que la commande expr
pour les calculs.
Sous vim, je ne sais pas aligner les colonnes selon un séparateur et ça donne ça :
the heil : talon
the noose : noeud coulant
the graveyard: cimetière
the staff : canne, crosse, bâton
the woe : malheur, chagrin
the fellow : type, homme
the stew : ragoût
Petite bidouille et j'obtiens ceci sans éditer manuellement aucune ligne :
the heil : talon
the noose : noeud coulant
the graveyard: cimetière
the staff : canne, crosse, bâton
the woe : malheur, chagrin
the fellow : type, homme
the stew : ragoût
Avant de trouver l'astuce (parce que cela doit bien se faire avec vim), la compatibilité avec bash de vim aide beaucoup.
Dans vim, :w
puis !subl %
- on enregistre le fichier puis on l'ouvre dans sublime text.
Sous sublime text, le plugin AutoAlignement était déjà installé - selection des lignes concernées puis Ctrl+Alt+a
puis ^s
. ^w
pour quitter sublime text. Enter pour retourner dans vim puis :e
pour charger le fichier actuel (avec les modifications effectuées).
Et voilà c'est aligné :)
Il me reste maintenant à trouver comment effectuer tout cela dans vim sans installer un plugin.
L'idée est de faire un ^s (Ctrl+s) pour sauvegarder le fichier
A placer dans le ~/.vimrc :
nmap <c-s> :wq<CR>
imap <c-s> <Esc>:w<CR>a
- nmap (mode normal) : enregistre et quitte
- imap (mode insertion) : enregistre et retourne en mode insertion au bon endroit:
Problème : le terminal/vim freeze toujours.
A placer dans le ~/.bash_profile :
bind -r '\C-s'
stty -ixon
Presque tout sur une image.
Les mouvements possibles dans vim.
Sous le coude
Les commandes à retenir :
ad start recording to register a
... your complex series of commands
q stop recording
@a execute your macro
@@ execute your macro again
n@a execute the macro n times
OK OK j'apprends les macros de vim !
La récursivité, c'est trop badass :D
EDIT : Une macro qui indente les lignes du fichier, cool :)
(ok c'est inutile puisque le mode sélection visuelle permet de le faire et c'est beaucoup plus rapide)
Sous le coude,
le .vimrc de Steve Losh
Sous le coude,
comment séparer le .vimrc
en plusieurs fichiers; manipuler plusieurs fichiers de configurations; utiliser les portées de variable pour la configuration.