tech:notes_vim
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| tech:notes_vim [2025/05/28 11:39] – Jean-Baptiste | tech:notes_vim [2026/06/07 19:12] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | < | ||
| + | {{tag> | ||
| + | |||
| + | # Notes vim | ||
| + | |||
| + | Voir | ||
| + | * [[notes_vimdiff]] | ||
| + | * https:// | ||
| + | * http:// | ||
| + | * vim-addon-manager | ||
| + | |||
| + | |||
| + | ## Modeline magic | ||
| + | |||
| + | ~~~ | ||
| + | # vim: ai: | ||
| + | # vim: enc=utf-8: | ||
| + | # vim: set ai et sts=2 sw=2 tw=80: | ||
| + | # vim: syntax=apache ts=4 sw=4 sts=4 sr noet | ||
| + | # YAML | ||
| + | # .. vim: foldmarker=[[[, | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | vimrc | ||
| + | ~~~bash | ||
| + | set modeline | ||
| + | set modelines=5 | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | ## vimrc | ||
| + | |||
| + | vimrc | ||
| + | ~~~ | ||
| + | filetype plugin indent on | ||
| + | " show existing tab with 4 spaces width | ||
| + | set tabstop=4 | ||
| + | " when indenting with '>', | ||
| + | set shiftwidth=4 | ||
| + | " On pressing tab, insert 4 spaces | ||
| + | set expandtab | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | ## Autres | ||
| + | |||
| + | Debian est installé par défaut avec un vim allégé, le apt:// | ||
| + | |||
| + | Pour install le vrai apt://vim | ||
| + | |||
| + | ~~~bash | ||
| + | apt-get update && apt-get install vim | ||
| + | ~~~ | ||
| + | |||
| + | Lancer le tutorat VIM | ||
| + | ~~~bash | ||
| + | vimtutor | ||
| + | ~~~ | ||
| + | |||
| + | Ouvrir plusieurs fichiers simultanément - cote à cote comme avec vimdiff | ||
| + | ~~~bash | ||
| + | vim -O fic1.md fic2.md | ||
| + | ~~~ | ||
| + | |||
| + | Ouvrir plusieurs fichiers simultanément - l'une au-dessus des autre | ||
| + | ~~~bash | ||
| + | vim -o fic1.md fic2.md | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | Vim suppression de lignes avec motif | ||
| + | ~~~ | ||
| + | :g/toto/d | ||
| + | ~~~ | ||
| + | |||
| + | ~~~ | ||
| + | u : Undo (Annulez une modif, " | ||
| + | Ctrl-R: Redo changes (Annulez le annuler précédent) | ||
| + | ~~~ | ||
| + | |||
| + | Display non-printable character | ||
| + | ~~~ | ||
| + | :set list | ||
| + | :set display+=uhex | ||
| + | ~~~ | ||
| + | |||
| + | Commande, trie | ||
| + | ~~~ | ||
| + | :%ls | ||
| + | :%!sort -r | ||
| + | ~~~ | ||
| + | |||
| + | Voir également | ||
| + | ~~~ | ||
| + | $ cat hidden.txt | ||
| + | ab | ||
| + | $ wc --char hidden.txt | ||
| + | 5 | ||
| + | $ sed ' | ||
| + | wc --char fixed.txt | ||
| + | 3 | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | File browser | ||
| + | ~~~ | ||
| + | :Ex | ||
| + | ~~~ | ||
| + | |||
| + | for ex(ploring) the file directory. | ||
| + | |||
| + | |||
| + | Alternative | ||
| + | ~~~bash | ||
| + | sudo update-alternatives --config editor | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | ## Insérer un caractère spécial comme un espace insécable | ||
| + | |||
| + | ~~~ | ||
| + | Use CTRL + K | ||
| + | |||
| + | Ex with non-breakable space | ||
| + | CTRL + K, < | ||
| + | ~~~ | ||
| + | |||
| + | |||
| + | ## Pb | ||
| + | |||
| + | ### Pb Debian Stretch (Debian 9) Copier-coller ne fonctionne pas avec la souris | ||
| + | |||
| + | Source : | ||
| + | * https:// | ||
| + | * https:// | ||
| + | |||
| + | ** Solution : Il suffit de maintenir la touche Shift enfoncée lors de la sélection du texte** | ||
| + | |||
| + | Ou alors pour avoir le même comportement que Debian Jessie : | ||
| + | |||
| + | `/ | ||
| + | ~~~ | ||
| + | " In many terminal emulators the mouse works just fine. By enabling it you | ||
| + | " can position the cursor, Visually select and scroll with the mouse. | ||
| + | "if has(' | ||
| + | " | ||
| + | "endif | ||
| + | ~~~ | ||
| + | |||
| + | Correction avec Ansible | ||
| + | ~~~yaml | ||
| + | - name: bugfix vim | ||
| + | replace: | ||
| + | dest: / | ||
| + | regexp: ' | ||
| + | replace: '" | ||
| + | when: | ||
| + | - ansible_os_family == ' | ||
| + | - ansible_distribution_major_version == ' | ||
| + | ~~~ | ||
| + | |||
| + | Ou | ||
| + | ~~~bash | ||
| + | echo "set mouse-=a" | ||
| + | ~~~ | ||
