Table des matières

Vim

Quelques astuces pour rendre vim plus attrayant, ergonomique.

.vimrc

Le fichier ~/.vimrc contient la configuration personnalisée de vim, je vous propose la suivante, basique, et sans plugin.

Sans plugin

vimrc
" VIM Configuration - insipiré de la config de Vincent Jousse
 
" Annule la compatibilite avec l’ancetre Vi : totalement indispensable
set nocompatible
 
" -- Affichage
set title		" met à jour le titre de votre fenetre/terminal
set number		" affiche le numero des lignes
set ruler		" affiche la position actuelle du curseur
set wrap		" affiche les lignes trop longues sur plusieurs lignes
set scrolloff=3		" affiche un minimum de 3 lignes autour du curseur (scroll)
 
" -- Recherche
set ignorecase		" ignore la casse lors d'une recherche
set smartcase		" si une recherche contient une majuscule, re-active la sensibilite à la casse pour la recherche
set incsearch		" surligne les resultats de la recherche pendant la saisie
set hlsearch 		" surligne les resultats de la recherche
 
" -- Beep
set visualbell		" empeche vim de beeper
set noerrorbells 	" Empeche Vim de beeper
 
" Active le comportement ’habituel’ de la touche retour en arriere
set backspace=indent,eol,start
 
" Cache les fichiers lors de l’ouverture d’autres fichiers
set hidden
 
" active la coloration syntaxique
syntax enable
 
" Theme
set background=dark	" le background étant dark, les couleurs syntax sont ajustées (plus claires)
 
" active les comportements spécifiques aux types de fichiers comme la syntaxe et l'indentation
filetype on
filetype plugin on
filetype indent on
 
" TABULATIONS
" how many columns vim uses when you hit Tab in insert mode
set softtabstop=4
" how many columns text is indented with the reindent operations (<< and >>) 
set shiftwidth=4
" no tab => espaces
set expandtab

Avec plugin

vimrc
" VIM Configuration - insipiré de la config de Vincent Jousse
 
" prérequis :
" 
" PATHOGEN
" mkdir -p ~/.vim/autoload ~/.vim/bundle
" cd ~/.vim/autoload && wget https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
"
" SOLARIZED
" mkdir ~/.vim/bundle/solarized/colors
" cd ~/.vim/bundle/solarized/colors
" wget https://raw.github.com/altercation/vim-colors-solarized/plugin/lusty-explorer.vim
" rajouter ce qui va bien dans vimrc (voir ci dessous)
"
" LUSTY-EXPLORER
" mkdir ~/.vim/bundle/lusty-explorer/plugin
" cd ~/.vim/bundle/lusty-explorer/plugin
" wget https://raw.github.com/sjbach/lusty/raw/master/plugin/lusty-explorer.vim
" wget https://github.com/sjbach/lusty/raw/master/autoload/lustyexplorer.vim
" rajouter ce qui va bien dans .vimrc (voir ci dessous)
 
" Annule la compatibilite avec l’ancetre Vi : totalement indispensable
set nocompatible
 
" -- Affichage
set title		" met à jour le titre de votre fenetre/terminal
set number		" affiche le numero des lignes
set ruler		" affiche la position actuelle du curseur
set wrap		" affiche les lignes trop longues sur plusieurs lignes
set scrolloff=3		" affiche un minimum de 3 lignes autour du curseur (scroll)
 
" -- Recherche
set ignorecase		" ignore la casse lors d'une recherche
set smartcase		" si une recherche contient une majuscule, re-active la sensibilite à la casse pour la recherche
set incsearch		" surligne les resultats de la recherche pendant la saisie
set hlsearch 		" surligne les resultats de la recherche
 
" -- Beep
set visualbell		" empeche vim de beeper
set noerrorbells 	" Empeche Vim de beeper
 
" Active le comportement ’habituel’ de la touche retour en arriere
set backspace=indent,eol,start
 
" Cache les fichiers lors de l’ouverture d’autres fichiers
set hidden
 
" active la coloration syntaxique
syntax enable
 
" THEME SOLARIZED
set background=dark	" le background étant dark, les couleurs syntax sont ajustées (plus claires)
"colorscheme solarized
 
" activation de pathogen
execute pathogen#infect()
 
" active les comportements spécifiques aux types de fichiers comme la syntaxe et l'indentation
filetype on
filetype plugin on
filetype indent on
 
" NERDTREE 
"autocmd vimenter * NERDTree
 
" LUSTY-EXPLORER
let mapleader=","
 
" TABULATIONS
" how many columns vim uses when you hit Tab in insert mode
set softtabstop=4
" how many columns text is indented with the reindent operations (<< and >>) 
set shiftwidth=4
" no tab => espaces
set expandtab

rechercher et remplacer

En mode vue dans vim, pour remplacer memo par idee

vim
# en demandant à chaque occurrence
:%s/memo/idee/gc

# sans demander
:%s/memo/idee/g

# rechercher le mot en entier uniquement 
# memo sera remplacé
# memorundum ne sera pas remplacé
:%s/\\memo\\/idee/gc