]> gitweb.pimeys.fr Git - config-20-100.git/blob - .vimrc
Ajout d'option dans .vimrc
[config-20-100.git] / .vimrc
1 " .vimrc générique mis à votre disposition
2 " par les gentils membres actifs du Cr@ns
3 " Vous pouvez l'utiliser, le redistribuer, le modifier à votre convenance.
4 " Des questions, des suggestions : {nounou,ca}@lists.crans.org
5 " Licence : WTFPL
6
7 " Les sections commentées par "~" sont des features qui ne sont pas activées
8 " par défaut. Sentez-vous libre de les décommenter pour les utiliser.
9
10 "------------------------------------------------------------------------------
11 "
12 "
13 " +-----------+
14 " | Affichage |
15 " +-----------+
16
17 " Affiche la commande en train d'être tapée en bas à droite de l'écran
18 set showcmd
19
20 " Affiche le nom du fichier et le chemin dans le titre du terminal
21 set title
22
23 "~" " N'affiche pas sur plusieurs lignes les lignes qui sont plus grandes que la fenêtre (comme sous nano)
24 "~" set nowrap
25
26 "~" " Montre brièvement la paire de parenthèse lors de sa fermeture
27 "~" set showmatch
28
29 "~" " Optimise la coloration de vim pour l'adapter à un terminal sombre (par défaut 'light')
30 "~" set background=dark
31
32 " ~~ Numérotation ~~
33 " Affiche 'ligne,n de caractère,colonne' en bas à droite du terminal
34 set ruler
35
36 " Affiche les numéros de lignes à gauche du terminal
37 set number
38
39 " Retire la marge à gauche sur les numéros de lignes
40 set numberwidth=2
41
42
43 " +-----------------+
44 " | Édition de code |
45 " +-----------------+
46
47 " ~~ Coloration syntaxique ~~
48 " Active la coloration syntaxique pour le type de fichier détecté
49 if has("syntax")
50 syntax on
51 endif
52
53 " Active les régles d'indentation pour le type de fichier détecté
54 if has("autocmd")
55 filetype plugin indent on
56 endif
57
58 " ~~ Indentation et tabulation ~~
59 " Conserve l'indentation de la ligne précédente lors d'un retour à la ligne
60 set autoindent
61
62 "~" " Met les tabulations à 4 colonnes
63 "~" set tabstop=4
64
65 "~" " Indente à 4 colonnes pour les opérations de réindentation
66 "~" set shiftwidth=4
67 "~" set shiftwidth=4 " pour <<, >> et ==
68
69 "~" " Remplace les (futures) tabulations par des espaces
70 "~" set expandtab
71 "~" " On veut des tabulations dans les MakeFiles
72 "~" autocmd FileType make set noexpandtab tabstop=4 shiftwidth=2 nopi ci
73
74
75 " +---------------------------+
76 " | Recherche et substitution |
77 " +---------------------------+
78
79 " ~~ Recherche ~~
80 " Commence la recherche dès les premiers caractères tapés (comme sous less)
81 set incsearch
82
83 "~" " Surligne les correspondances dans les recherches
84 "~" " (Exécuter nohl pour désactiver les hl (ils restent même une fois la recherche terminée))
85 "~" set hlsearch
86
87 "~" " Rend la recherche insensible aux majuscules et minuscules, sauf si le
88 "~" " motif contient une majuscule
89 "~" set ignorecase
90 "~" set smartcase
91
92 " +-----------------------------+
93 " | Enregistrement et fermeture |
94 " +-----------------------------+
95
96 "~" " Enregistre automatiquement pour certaines commandes, notament make (voir :help autowrite)
97 "~" set autowrite
98
99 "~" " Met à jour automatiquement les fichiers modifiés hors de vim
100 "~" set autoread
101
102 "~" " Pose la question au lieu d'échouer lors de la fermeture quand il y des
103 "~" " modifications non sauvées et que ! n'est pas précisé.
104 "~" " set confirm
105
106 " +--------+
107 " | Divers |
108 " +--------+
109
110 " Change la taille de l'historique des commandes (par défaut 20)
111 set history=50
112
113 "~" " Change le comportement de la TAB-complétion : on complète au plus long
114 "~" " au premier appui, on affiche la liste des possibilités au deuxième
115 "~" set wildmode=longest,list
116
117 "~" " Active l'utilisation de la souris. (Ne marche qu'avec certains terminaux voir :help mouse)
118 "~" set mouse=a
119
120 "~" " Permet aux flèches droites et gauches de déplacer le curseur au début de
121 "~" " de la prochaine ligne ou à la fin de la précédente ligne
122 "~" set whichwrap=b,s,<,>,[,]
123
124 " +------------------+
125 " | Hacks et scripts |
126 " +------------------+
127
128 " ~~ Hack pour mettre en rouges les espaces indésirables en fin de ligne. ~~
129 " ~~ Ne gêne pas la vue en mode édition. ~~
130 " ~~ Adapté de http://vim.wikia.com/wiki/Highlight_unwanted_spaces ~~
131
132 "~" highlight EspaceFinLigne ctermbg=red guibg=red
133 "~" match EspaceFinLigne /\s\+$/
134 "~" autocmd BufWinEnter * match EspaceFinLigne /\s\+$/
135 "~" autocmd InsertEnter * match EspaceFinLigne /\s\+\%#\@<!$/
136 "~" autocmd InsertLeave * match EspaceFinLigne /\s\+$/
137 "~" autocmd BufWinLeave * call clearmatches()
138
139 " ~~ Coloration du fond après n colonnes ~~
140 " ~~ /!\ Seulement pour vim 7.3 et plus /!\ ~~
141 " ~~ Adapté de http://blog.hanschen.org ~~
142
143 "~" highlight ColorColumn ctermbg=DarkGrey guibg=DarkGrey
144 "~" if exists('+colorcolumn')
145 "~" execute "set colorcolumn=".join(range(81,335), ',')
146 "~" endif
147
148 "~" " Surligne les espaces insécables
149 "~" au BufEnter * hi Nbsp ctermbg=233 guibg=black
150 "~" au BufEnter * match Nbsp /\%uA0/