]> gitweb.pimeys.fr Git - config-20-100.git/blobdiff - .vimrc
[procmail] Tri des ML : nom-ml.domain.list*e*s.tld est géré aussi
[config-20-100.git] / .vimrc
diff --git a/.vimrc b/.vimrc
index 60da16a75386f80f9d03c30db1c500aba7383397..304b438418cef25357ff1de17e004b39789061b0 100644 (file)
--- a/.vimrc
+++ b/.vimrc
@@ -1,6 +1,6 @@
 " .vimrc générique mis à votre disposition
 " par les gentils membres actifs du Cr@ns
-" Vous pouvez l'utilisez, le redistribuer, le modifier à votre convenance.
+" Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
 " Des questions, des suggestions : {nounou,ca}@lists.crans.org
 " Licence : WTFPL
 
 " | Affichage |
 " +-----------+
 
-set showcmd                        " Affiche la commande en train d'être taper en bas à droite de l'écran
-set title                              " Affiche le nom du fichier et le chemin dans le titre du terminal
-"~" set nowrap                 " N'affiche pas sur plusieurs lignes les lignes qui sont plus grandes que la fenêtre (comme sous nano)
-"~" set background=dark                " Optimise la coloration de vim pour l'adapter à un terminal sombre (par défaut 'light')
+" Affiche la commande en train d'être tapée en bas à droite de l'écran
+set showcmd
 
-"~" ~~ Numérotation ~~
-set ruler                      " Affiche 'ligne,n de caractère,colonne' en bas à droite du terminal
-set number                     " Affiche les numéros de lignes à gauche du terminal
-set numberwidth=2              " Retire la marge à gauche sur les numéros de lignes
+" Affiche le nom du fichier et le chemin dans le titre du terminal
+set title
 
+"~" " N'affiche pas sur plusieurs lignes les lignes qui sont plus grandes que la fenêtre (comme sous nano)
+"~" set nowrap
+
+" Montre brièvement la paire de parenthèse lors de sa fermeture
+set showmatch
+
+" Optimise la coloration de vim pour l'adapter à un terminal sombre (par défaut 'light')
+set background=dark
+
+" ~~ Numérotation ~~
+" Affiche 'ligne,n de caractère,colonne' en bas à droite du terminal
+set ruler
+
+" Affiche les numéros de lignes à gauche du terminal
+set number
+
+" Retire la marge à gauche sur les numéros de lignes
+set numberwidth=2
+
+"~" " Surligne la ligne du curseur
+"~" set cursorline
+
+"~" " Surligne la colonne du curseur
+"~" set cursorcolumn
 
 " +-----------------+
 " | Édition de code |
 " +-----------------+
 
 " ~~ Coloration syntaxique ~~
-syntax on                      " Activer la coloration syntaxique
+" Active la coloration syntaxique pour le type de fichier détecté
+if has("syntax")
+  syntax on
+endif
 
 " ~~ Indentation et tabulation ~~
-set autoindent                 " Conserve l'indentation de la ligne précédente lors d'un retour à la ligne
-"~" set tabstop=4                      " Met les tabulations à 4 colonnes
-"~" set shiftwidth=4           " Indente à 4 colonnes pour les opérations de réindentation
-"~" set expandtab                      " Remplace les (futures) tabulations par des espaces
+" Active les régles d'indentation pour le type de fichier détecté
+if has("autocmd")
+  filetype plugin indent on
+endif
+
+" Conserve l'indentation de la ligne précédente lors d'un retour à la ligne
+set autoindent
+
+" Met les tabulations à 4 colonnes
+set tabstop=4
+
+" Indente à 4 colonnes pour les opérations de réindentation
+set shiftwidth=4
+set shiftwidth=4 " pour <<, >> et ==
 
+"~" " Remplace les (futures) tabulations par des espaces
+"~" set expandtab
+"~" " On veut des tabulations dans les MakeFiles
+"~" autocmd FileType make set noexpandtab tabstop=4 shiftwidth=2 nopi ci
+
+"~" " Ctrl-p change entre le mode paste et nopaste
+"~" set pastetoggle=<C-P>
+
+"~" " Utilise le presse papier system (nécessite vim-gnome sous Debian)
+"~" set clipboard^=unnamedplus
 
 " +---------------------------+
 " | Recherche et substitution |
 " +---------------------------+
 
 " ~~ Recherche ~~
-set incsearch                  " Commence la recherche dès les premiers caractères tapés (less like)
-"~" set hlsearch                       " Surligne les correspondances dans les recherches
+" Commence la recherche dès les premiers caractères tapés (comme sous less)
+set incsearch
+
+"~" " Surligne les correspondances dans les recherches
+"~" " (Exécuter nohl pour désactiver les hl (ils restent même une fois la recherche terminée))
+"~" set hlsearch
+
+"~" " Rend la recherche insensible aux majuscules et minuscules, sauf si le
+"~" " motif contient une majuscule
+"~" set ignorecase
+"~" set smartcase
+
+" +-----------------------------+
+" | Enregistrement et fermeture |
+" +-----------------------------+
 
+"~" " Enregistre automatiquement pour certaines commandes, notament make (voir :help autowrite)
+"~" set autowrite
+
+"~" " Met à jour automatiquement les fichiers modifiés hors de vim
+"~" set autoread
+
+"~" " Pose la question au lieu d'échouer lors de la fermeture quand il y des
+"~" " modifications non sauvées et que ! n'est pas précisé.
+"~" set confirm
 
 " +--------+
 " | Divers |
 " +--------+
 
-set history=50                 " Change la taille de l'historique des commandes (par défaut 20)
+" Change la taille de l'historique des commandes (par défaut 20)
+set history=50
+
+"~" " Change le comportement de la TAB-complétion : on complète au plus long
+"~" " au premier appui, on affiche la liste des possibilités au deuxième
+"~" set wildmode=longest,list
+
+"~" " Active l'utilisation de la souris. (Ne marche qu'avec certains terminaux voir :help mouse)
+"~" set mouse=a
 
+"~" " Permet aux flèches droites et gauches de déplacer le curseur au début de
+"~" " de la prochaine ligne ou à la fin de la précédente ligne
+"~" set whichwrap=b,s,<,>,[,]
 
 " +------------------+
 " | Hacks et scripts |
@@ -63,12 +139,12 @@ set history=50                     " Change la taille de l'historique des commandes (par défaut
 " ~~ Ne gêne pas la vue en mode édition. ~~
 " ~~ Adapté de http://vim.wikia.com/wiki/Highlight_unwanted_spaces ~~
 
-"~" highlight EspaceFinLigne ctermbg=red guibg=red
-"~" match EspaceFinLigne /\s\+$/
-"~" autocmd BufWinEnter * match EspaceFinLigne /\s\+$/
-"~" autocmd InsertEnter * match EspaceFinLigne /\s\+\%#\@<!$/
-"~" autocmd InsertLeave * match EspaceFinLigne /\s\+$/
-"~" autocmd BufWinLeave * call clearmatches()
+highlight EspaceFinLigne ctermbg=red guibg=red
+match EspaceFinLigne /\s\+$/
+autocmd BufWinEnter * match EspaceFinLigne /\s\+$/
+autocmd InsertEnter * match EspaceFinLigne /\s\+\%#\@<!$/
+autocmd InsertLeave * match EspaceFinLigne /\s\+$/
+autocmd BufWinLeave * call clearmatches()
 
 " ~~ Coloration du fond après n colonnes ~~
 " ~~ /!\ Seulement pour vim 7.3 et plus /!\ ~~
@@ -79,3 +155,6 @@ set history=50                       " Change la taille de l'historique des commandes (par défaut
 "~"     execute "set colorcolumn=".join(range(81,335), ',')
 "~" endif
 
+"~" " Surligne les espaces insécables
+"~" au BufEnter * hi Nbsp ctermbg=233 guibg=black
+"~" au BufEnter * match Nbsp /\%uA0/