{{tag>software vim dev c edi todo}}
====== Vim comme EDI C ======
Chaque projet peut avoir des paramè... /file>
===== Définir la variable path =====
La commande **gf** (go file) utilise les répertoires déf... s dans la variable path pour rechercher le chemin complet vers le fichier sous le curseur.
<file>
let ... src/include,/usr/include/AL,"
</file>
===== Auto complétion =====
Pour l'autocomplétion, le plugin re
ne action ou un ensemble d'actions depuis le mode commande presser <key>u</key> ou utiliser les commandes '':u'' ou '':undo''
* Pour restaurer une action ou en ensemble d'actions depuis le mode commande, utiliser <key>ctrl</key>+<key>r</key> ou la commande '':redo''
===== Afficher le code d'un cara
identifiés par les chiffres 1-9 utilisés par les commandes édition/suppression.
Si on exécute vim en...
</code>
===== Lister les buffers =====
En mode commande, '':ls'' permet de lister les tampons exista... Ne pas confondre avec **%%:!ls%%** qui exécute la commande ls dans le shell et affiche le résultat sous...
</note>
===== Créer un buffer =====
Plusieurs commandes vont aboutir à la création d'un nouveau buf
rmal sous Vim, on peut lister les buffers avec la commande **ls**
<code>
:ls
1 %a "hello.go" ... e simplement afficher un fichier sans l’éditer la commande **sview** est disponible:
* **:sview file*... e est créée. Pour quitter l'aide on entre bien la commande **:q** qui clôt la fenêtre d'aide.
</note>
... it et y afficher le buffer X on peut utiliser les commandes :
* ''%%:sbX%%'' split horizontal et affi
ées sont disponibles dans tous les modes. En mode commande les touches **hjkl** permettent de déplacer ... oite |
===== Déplacement vertical =====
En mode commande, on peut ramener le curseur rapidement sur d... mais ils peuvent également être utilisés avec les commandes. (**''d$''** par exemple applique la commande de suppression "d" jusqu'à la fin de la ligne cour
===
Pour afficher la valeur d'une option en mode commande, on peut utiliser la commande **set** sans affectation:
<code>
:set listchars
</code>
Certaines... ns ne sont pas possibles sur les options (avec la commande set, la concaténation notamment).
Exemple ... ======
on manipule les variables sous Vim via la commande **let**.
==== Portée ====
^ **g:varname**
dépôt git:
<code bash>
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim... être modifié.
Depuis VIM en mode normal saisir la commande :
<code bash>
:e $MYVIMRC
</code>
Copier c... suivant en début du fichier .vimrc
<file>
set nocompatible " be iMproved, required
filet... les of different formats supported.
" Keep Plugin commands between vundle#begin/end.
" plugin on GitHub
irline.
<code bash>
$ git clone https://github.com/bling/vim-airline ~/.vim/bundle/vim-airline
</cod... u projet :
<code bash>
$ git clone https://github.com/powerline/fonts.git
$ cd fonts
$ ./install.sh
</c... er le thème =====
pour modifier le thème en mode commande:
<code>
:AirlineTheme mon_theme
</code>
<no... regroupés dans un autre dépot git https://github.com/vim-airline/vim-airline-themes.
</note>
===== Pr
stallation du plugin plusieurs gestionnaires sont compatibles, ici on a choisit d'utiliser [[software/a... des cellules :
<code>
:RainbowAlign
</code>
La commande inverse permet de supprimer les caractères d... 1
</code>
Ainsi la première ligne sera prise en compte lors des traitements via le RBQL. A tout momen...
===== Références =====
* [[https://vimtricks.com/p/vim-csv-files/|Edition du format CSV sous Vim (
m dans une console **Git-Bash** puis dans le mode commande saisir :
<code>
:PluginInstall
</code>
===... )
Set-Location R:\Temp\
git clone https://github.com/powerline/fonts.git
Set-Location .\fonts\
# Inst... avec une licence permissive et un logiciel dédié comme [[https://fontforge.org/en-US/|FontForge]] ;
... ===== Références =====
* https://stackoverflow.com/questions/19105279/how-can-i-setup-my-vim-airline
que vim lancera quand la touche sera pressée. La commande map permet de définir un mapping. Plusieurs déclinaison de la commande map existent, il est préférable de définir u... de>
:nmap <F5> :w<CR>:!pyflakes %<CR>
</code>
La commande **nmap** permet de définir un mapping actif ... seront sauvegardées dans le fichier associé et la commande externe pyflakes exécuté avec en paramètre l
istre}}
===== Copier-coller sous Vim ======
Les commandes de modification du texte (comme 'y', 'x', 'd', 'c', 's' etc) utilisent le registre sans nom **""... e précédent le **registre t** est utilisé pour la commande de copie. Pour afficher le contenu des regis... à copier.
On positionne le curseur puis avec la commande **%%m[a-z]%%** on crée la marque. Par exempl
pour qu'il puisse être appelé depuis la ligne de commande.
<code>
git --version
git version 2.41.0.wi... console Git-Bash:
<code>
git clone https://github.com/VundleVim/Vundle.vim.git ~/vimfiles/bundle/Vundle... ey> + <key>v</key>.
source : [[https://superuser.com/questions/1761269/how-to-send-ctrl-v-to-a-remote-... cliquant sur le label. Sinon on peut utiliser la commande '':tag'' depuis le mode normal:
<code>
:tag
difier la casse de caractère avec Vim ======
Les commandes permettant de modifier la casse de caractèr... n minuscule ou **g~** pour permuter la casse. Ces commandes doivent être suivies d'un mouvement.
Pour ... chaque caractère du mot sous le curseur, en mode commande taper:
<code>
g~w
</code>
Remarque: L'opération commence sous le curseur et finie a la fin du mot (mo
Le range (portée) permet de limiter l'effet d'une commande. On place la portée en préfixe de la commande.
^ **%%%%%** | Toutes les lignes |
^ **%%.%%** | L... urrences de toto par tata. L'argument g en fin de commande permet de définir plusieurs remplacement sur... visuel, presser <key>:</key> pour passer en mode commande, la portée est automatiquement définie a l'a