diff options
author | Félix Sipma <gueux@gueux.org> | 2014-10-29 16:07:23 +0100 |
---|---|---|
committer | Félix Sipma <gueux@gueux.org> | 2014-10-29 16:07:23 +0100 |
commit | 37485cc4c2953e6766f42dd4d57285f3bcd3fd98 (patch) | |
tree | c79c12df4b4b1b2d78a4b6f4a01272a2cc2db362 | |
parent | 7eef556325a9336359635a560225ff75eaa42430 (diff) |
vim
-rw-r--r-- | .config/vim/.VimballRecord | 6 | ||||
-rw-r--r-- | .config/vim/contrib/README.txt | 19 | ||||
-rw-r--r-- | .config/vim/contrib/vim72.diff | 79 | ||||
-rw-r--r-- | .config/vim/contrib/vim73_390_foldinghighlighting.patch | 120 | ||||
-rw-r--r-- | .config/vim/contrib/vim73_46_foldhighlight.patch | 113 | ||||
-rw-r--r-- | .config/vim/ftplugin/haskell.vim | 1 | ||||
-rw-r--r-- | .config/vim/ftplugin/tex.vim | 7 | ||||
-rw-r--r-- | .config/vim/keys.vim | 75 | ||||
l--------- | .config/vim/plugin/tagbar-haskell.vim | 1 | ||||
-rw-r--r-- | .config/vim/spell/es.utf-8.spl | bin | 0 -> 601019 bytes | |||
-rw-r--r-- | .config/vim/spell/es.utf-8.sug | bin | 0 -> 1912378 bytes | |||
-rw-r--r-- | .config/vim/spell/fr.utf-8.spl | bin | 0 -> 571627 bytes | |||
-rw-r--r-- | .config/vim/spell/fr.utf-8.sug | bin | 0 -> 2324315 bytes | |||
-rw-r--r-- | .config/vim/vimoutlinerrc | 37 | ||||
-rw-r--r-- | .config/vim/vimrc | 988 |
15 files changed, 1446 insertions, 0 deletions
diff --git a/.config/vim/.VimballRecord b/.config/vim/.VimballRecord new file mode 100644 index 0000000..92a5d33 --- /dev/null +++ b/.config/vim/.VimballRecord @@ -0,0 +1,6 @@ +haskellmode-20081031.vba: call delete('/home/g/.vim/compiler/ghc.vim')|call delete('/home/g/.vim/ftplugin/haskell.vim')|call delete('/home/g/.vim/ftplugin/haskell_doc.vim')|call delete('/home/g/.vim/ftplugin/haskell_hpaste.vim')|call delete('/home/g/.vim/doc/haskellmode.txt') +Viki.vba: call delete('/home/g/.vim/autoload/viki.vim')|call delete('/home/g/.vim/autoload/viki_anyword.vim')|call delete('/home/g/.vim/autoload/viki_latex.vim')|call delete('/home/g/.vim/autoload/viki_viki.vim')|call delete('/home/g/.vim/compiler/deplate.vim')|call delete('/home/g/.vim/doc/viki.txt')|call delete('/home/g/.vim/ftplugin/bib/viki.vim')|call delete('/home/g/.vim/ftplugin/viki.vim')|call delete('/home/g/.vim/indent/viki.vim')|call delete('/home/g/.vim/plugin/viki.vim')|call delete('/home/g/.vim/syntax/viki.vim')|call delete('/home/g/.vim/syntax/texmath.vim') +tlib.vba: call delete('/home/g/.vim/plugin/02tlib.vim')|call delete('/home/g/.vim/doc/tlib.txt')|call delete('/home/g/.vim/test/tlib.vim')|call delete('/home/g/.vim/autoload/tlib/file.vim')|call delete('/home/g/.vim/autoload/tlib/Filter_cnf.vim')|call delete('/home/g/.vim/autoload/tlib/Filter_cnfd.vim')|call delete('/home/g/.vim/autoload/tlib/Filter_fuzzy.vim')|call delete('/home/g/.vim/autoload/tlib/Filter_seq.vim')|call delete('/home/g/.vim/autoload/tlib/Object.vim')|call delete('/home/g/.vim/autoload/tlib/Test.vim')|call delete('/home/g/.vim/autoload/tlib/TestChild.vim')|call delete('/home/g/.vim/autoload/tlib/World.vim')|call delete('/home/g/.vim/autoload/tlib/agent.vim')|call delete('/home/g/.vim/autoload/tlib/arg.vim')|call delete('/home/g/.vim/autoload/tlib/autocmdgroup.vim')|call delete('/home/g/.vim/autoload/tlib/buffer.vim')|call delete('/home/g/.vim/autoload/tlib/cache.vim')|call delete('/home/g/.vim/autoload/tlib/char.vim')|call delete('/home/g/.vim/autoload/tlib/cmd.vim')|call delete('/home/g/.vim/autoload/tlib/comments.vim')|call delete('/home/g/.vim/autoload/tlib/date.vim')|call delete('/home/g/.vim/autoload/tlib/dir.vim')|call delete('/home/g/.vim/autoload/tlib/eval.vim')|call delete('/home/g/.vim/autoload/tlib/hook.vim')|call delete('/home/g/.vim/autoload/tlib/input.vim')|call delete('/home/g/.vim/autoload/tlib/list.vim')|call delete('/home/g/.vim/autoload/tlib/map.vim')|call delete('/home/g/.vim/autoload/tlib/normal.vim')|call delete('/home/g/.vim/autoload/tlib/notify.vim')|call delete('/home/g/.vim/autoload/tlib/paragraph.vim')|call delete('/home/g/.vim/autoload/tlib/progressbar.vim')|call delete('/home/g/.vim/autoload/tlib/rx.vim')|call delete('/home/g/.vim/autoload/tlib/scratch.vim')|call delete('/home/g/.vim/autoload/tlib/signs.vim')|call delete('/home/g/.vim/autoload/tlib/string.vim')|call delete('/home/g/.vim/autoload/tlib/syntax.vim')|call delete('/home/g/.vim/autoload/tlib/tab.vim')|call delete('/home/g/.vim/autoload/tlib/tag.vim')|call delete('/home/g/.vim/autoload/tlib/textobjects.vim')|call delete('/home/g/.vim/autoload/tlib/time.vim')|call delete('/home/g/.vim/autoload/tlib/type.vim')|call delete('/home/g/.vim/autoload/tlib/url.vim')|call delete('/home/g/.vim/autoload/tlib/var.vim')|call delete('/home/g/.vim/autoload/tlib/win.vim')|call delete('/home/g/.vim/autoload/tlib.vim') +gitdiff.vba: call delete('/home/gueux/.vim/plugin/gitdiff.vim') +NrrwRgn-0.31.vmb: call delete('/home/gueux/.vim/plugin/NrrwRgn.vim')|call delete('/home/gueux/.vim/autoload/nrrwrgn.vim')|call delete('/home/gueux/.vim/doc/NarrowRegion.txt') +utl_3_0a.vba: call delete('/home/gueux/.vim/doc/utl_usr.txt')|call delete('/home/gueux/.vim/autoload/utl_lib.vim')|call delete('/home/gueux/.vim/plugin/utl.vim')|call delete('/home/gueux/.vim/plugin/utl_rc.vim')|call delete('/home/gueux/.vim/plugin/utl_scm.vim')|call delete('/home/gueux/.vim/plugin/utl_uri.vim') diff --git a/.config/vim/contrib/README.txt b/.config/vim/contrib/README.txt new file mode 100644 index 0000000..2d026b8 --- /dev/null +++ b/.config/vim/contrib/README.txt @@ -0,0 +1,19 @@ +The vim73 patch in this directory does two things: + +1. Enables level-dependent fold highlighting in Vim73. +2. Enables separate TODO highlighting in folded headings + in VimOrganizer, so TODO's stand out even when a + heading is folded. + +Two versions of the Vim73 patch are included. The _46 version +is for source code downloaded from Vim.org. The _390 version +works for the Mercurial repo version as of Dec. 31, 2011. + +The vim72 patch is old and only does (1) above. + +If someone is using a version of Windows and wants to avoid +recompiling process you can contact me and I will send you an +executable you should be able to use on your system. + +Herbert Sitz +hesitz@gmail.com diff --git a/.config/vim/contrib/vim72.diff b/.config/vim/contrib/vim72.diff new file mode 100644 index 0000000..1d79a20 --- /dev/null +++ b/.config/vim/contrib/vim72.diff @@ -0,0 +1,79 @@ +=== (+2,-1) src/eval.c === +@@ -355,6 +355,7 @@ + {VV_NAME("operator", VAR_STRING), VV_RO}, + {VV_NAME("searchforward", VAR_NUMBER), 0}, + {VV_NAME("oldfiles", VAR_LIST), 0}, ++ {VV_NAME("foldhighlight", VAR_NUMBER), 0}, + }; + + /* shorthand */ +=== (+18,-9) src/screen.c === +@@ -2179,9 +2179,17 @@ + # define RL_MEMSET(p, v, l) for (ri = 0; ri < l; ++ri) \ + ScreenAttrs[off + (p) + ri] = v + #endif ++ /* ++ * 4. Compose the folded-line string with 'foldtext', if set. ++ */ ++ text = get_foldtext(wp, lnum, lnume, foldinfo, buf); ++ ++ txtcol = col; /* remember where text starts */ + + /* Set all attributes of the 'number' column and the text */ +- RL_MEMSET(col, hl_attr(HLF_FL), W_WIDTH(wp) - col); ++ //RL_MEMSET(col, hl_attr(HLF_FL), W_WIDTH(wp) - col); ++ RL_MEMSET(col, hl_attr(get_vim_var_nr(VV_FOLDHIGHLIGHT)), W_WIDTH(wp) - col); ++ + + #ifdef FEAT_SIGNS + /* If signs are being displayed, add two spaces. */ +@@ -2196,10 +2204,11 @@ + if (wp->w_p_rl) + /* the line number isn't reversed */ + copy_text_attr(off + W_WIDTH(wp) - len - col, +- (char_u *)" ", len, hl_attr(HLF_FL)); ++ (char_u *)" ", len, hl_attr(get_vim_var_nr(VV_FOLDHIGHLIGHT))); ++ + else + # endif +- copy_text_attr(off + col, (char_u *)" ", len, hl_attr(HLF_FL)); ++ copy_text_attr(off + col, (char_u *)" ", len, hl_attr(get_vim_var_nr(VV_FOLDHIGHLIGHT))); + col += len; + } + } +@@ -2222,10 +2231,10 @@ + if (wp->w_p_rl) + /* the line number isn't reversed */ + copy_text_attr(off + W_WIDTH(wp) - len - col, buf, len, +- hl_attr(HLF_FL)); ++ hl_attr(get_vim_var_nr(VV_FOLDHIGHLIGHT))); + else + #endif +- copy_text_attr(off + col, buf, len, hl_attr(HLF_FL)); ++ copy_text_attr(off + col, buf, len, hl_attr(get_vim_var_nr(VV_FOLDHIGHLIGHT))); + col += len; + } + } +@@ -2233,9 +2242,9 @@ + /* + * 4. Compose the folded-line string with 'foldtext', if set. + */ +- text = get_foldtext(wp, lnum, lnume, foldinfo, buf); +- +- txtcol = col; /* remember where text starts */ ++ //text = get_foldtext(wp, lnum, lnume, foldinfo, buf); ++// moved up above to heappen earlier h.s. ++ // txtcol = col; /* remember where text starts */ + + /* + * 5. move the text to current_ScreenLine. Fill up with "fill_fold". +=== (+3,-2) src/vim.h === +@@ -1767,7 +1767,8 @@ + #define VV_OP 52 + #define VV_SEARCHFORWARD 53 + #define VV_OLDFILES 54 +-#define VV_LEN 55 /* number of v: vars */ ++#define VV_FOLDHIGHLIGHT 55 ++#define VV_LEN 56 /* number of v: vars */ + + #ifdef FEAT_CLIPBOARD diff --git a/.config/vim/contrib/vim73_390_foldinghighlighting.patch b/.config/vim/contrib/vim73_390_foldinghighlighting.patch new file mode 100644 index 0000000..958b29a --- /dev/null +++ b/.config/vim/contrib/vim73_390_foldinghighlighting.patch @@ -0,0 +1,120 @@ +Common subdirectories: src/auto and patched_src/auto +diff -u src/eval.c patched_src/eval.c +--- src/eval.c 2012-01-01 16:30:50.421710297 +0100 ++++ patched_src/eval.c 2012-01-01 17:12:53.261832394 +0100 +@@ -360,6 +360,8 @@ + {VV_NAME("searchforward", VAR_NUMBER), 0}, + {VV_NAME("oldfiles", VAR_LIST), 0}, + {VV_NAME("windowid", VAR_NUMBER), VV_RO}, ++ {VV_NAME("foldhighlight", VAR_NUMBER), 0}, ++ {VV_NAME("todohighlight", VAR_NUMBER), 0}, + }; + + /* shorthand */ +Common subdirectories: src/GvimExt and patched_src/GvimExt +Common subdirectories: src/os_mac_rsrc and patched_src/os_mac_rsrc +Common subdirectories: src/po and patched_src/po +Common subdirectories: src/proto and patched_src/proto +diff -u src/screen.c patched_src/screen.c +--- src/screen.c 2012-01-01 16:41:32.945741392 +0100 ++++ patched_src/screen.c 2012-01-01 17:17:33.209845943 +0100 +@@ -2214,6 +2214,9 @@ + * 4. Compose the text + * 5. Add the text + * 6. set highlighting for the Visual area an other text ++ * NOTE: in patch for VimOrganizer step 4, composing text ++ * is moved up to happen as part of step 2. ++ + */ + col = 0; + +@@ -2271,11 +2274,16 @@ + # define RL_MEMSET(p, v, l) for (ri = 0; ri < l; ++ri) \ + ScreenAttrs[off + (p) + ri] = v + #endif +- +- /* Set all attributes of the 'number' or 'relativenumber' column and the +- * text */ +- RL_MEMSET(col, hl_attr(HLF_FL), W_WIDTH(wp) - col); +- ++ /* ++ * 4. Compose the folded-line string with 'foldtext', if set. ++ */ ++ text = get_foldtext(wp, lnum, lnume, foldinfo, buf); ++ ++ txtcol = col; /* remember where text starts */ ++ ++ /* Set all attributes of the 'number' column and the text */ ++ RL_MEMSET(col, syn_id2attr(get_vim_var_nr(VV_FOLDHIGHLIGHT)), W_WIDTH(wp) - col); ++ + #ifdef FEAT_SIGNS + /* If signs are being displayed, add two spaces. */ + if (draw_signcolumn(wp)) +@@ -2289,10 +2297,10 @@ + if (wp->w_p_rl) + /* the line number isn't reversed */ + copy_text_attr(off + W_WIDTH(wp) - len - col, +- (char_u *)" ", len, hl_attr(HLF_FL)); ++ (char_u *)" ", len, hl_attr(HLF_SC)); + else + # endif +- copy_text_attr(off + col, (char_u *)" ", len, hl_attr(HLF_FL)); ++ copy_text_attr(off + col, (char_u *)" ", len, hl_attr(HLF_SC)); + col += len; + } + } +@@ -2324,20 +2332,31 @@ + if (wp->w_p_rl) + /* the line number isn't reversed */ + copy_text_attr(off + W_WIDTH(wp) - len - col, buf, len, +- hl_attr(HLF_FL)); ++ hl_attr(HLF_N)); + else + #endif +- copy_text_attr(off + col, buf, len, hl_attr(HLF_FL)); ++ copy_text_attr(off + col, buf, len, hl_attr(HLF_N)); + col += len; + } + } ++ /* now set attributes for vimorganizer todo word in headline, if any */ ++ /* v:todohighlight is set in user's OrgFoldText() function. . . */ ++ if (get_vim_var_nr(VV_TODOHIGHLIGHT) > 0 ) ++ { ++ int start=0, end; ++ ++ while( *(text + start) == ' ' ) ++ start++; ++ end = start; ++ while( *(text + end) != ' ' ) ++ end++; ++ RL_MEMSET(start+col, syn_id2attr(get_vim_var_nr(VV_TODOHIGHLIGHT)), end - start); ++ } + + /* + * 4. Compose the folded-line string with 'foldtext', if set. + */ +- text = get_foldtext(wp, lnum, lnume, foldinfo, buf); +- +- txtcol = col; /* remember where text starts */ ++ // moved up above to happen earlier h.s. + + /* + * 5. move the text to current_ScreenLine. Fill up with "fill_fold". +Common subdirectories: src/tee and patched_src/tee +Common subdirectories: src/testdir and patched_src/testdir +diff -u src/vim.h patched_src/vim.h +--- src/vim.h 2012-01-01 16:30:51.025710325 +0100 ++++ patched_src/vim.h 2012-01-01 17:18:31.933848785 +0100 +@@ -1860,7 +1860,9 @@ + #define VV_SEARCHFORWARD 53 + #define VV_OLDFILES 54 + #define VV_WINDOWID 55 +-#define VV_LEN 56 /* number of v: vars */ ++#define VV_FOLDHIGHLIGHT 56 ++#define VV_TODOHIGHLIGHT 57 ++#define VV_LEN 58 /* number of v: vars */ + + #ifdef FEAT_CLIPBOARD + +Common subdirectories: src/VisVim and patched_src/VisVim +Common subdirectories: src/xxd and patched_src/xxd diff --git a/.config/vim/contrib/vim73_46_foldhighlight.patch b/.config/vim/contrib/vim73_46_foldhighlight.patch new file mode 100644 index 0000000..152b87c --- /dev/null +++ b/.config/vim/contrib/vim73_46_foldhighlight.patch @@ -0,0 +1,113 @@ +diff -u ./src/eval.c ./patched_src/eval.c +--- ./src/eval.c 2010-08-09 13:12:14.000000000 -0700 ++++ ./patched_src/eval.c 2011-08-24 12:45:30.990183200 -0700 +@@ -362,6 +362,8 @@ + {VV_NAME("operator", VAR_STRING), VV_RO}, + {VV_NAME("searchforward", VAR_NUMBER), 0}, + {VV_NAME("oldfiles", VAR_LIST), 0}, ++ {VV_NAME("foldhighlight", VAR_NUMBER), 0}, ++ {VV_NAME("todohighlight", VAR_NUMBER), 0}, + }; + + /* shorthand */ +diff -u ./src/screen.c ./patched_src/screen.c +--- ./src/screen.c 2010-08-13 06:21:27.000000000 -0700 ++++ ./patched_src/screen.c 2011-10-15 04:01:17.947926300 -0700 +@@ -2214,6 +2214,8 @@ + * 4. Compose the text + * 5. Add the text + * 6. set highlighting for the Visual area an other text ++ * NOTE: in patch for VimOrganizer step 4, composing text ++ * is moved up to happen as part of step 2. + */ + col = 0; + +@@ -2271,10 +2273,16 @@ + # define RL_MEMSET(p, v, l) for (ri = 0; ri < l; ++ri) \ + ScreenAttrs[off + (p) + ri] = v + #endif ++ /* ++ * 4. Compose the folded-line string with 'foldtext', if set. ++ */ ++ text = get_foldtext(wp, lnum, lnume, foldinfo, buf); ++ ++ txtcol = col; /* remember where text starts */ ++ ++ /* Set all attributes of the 'number' column and the text */ ++ RL_MEMSET(col, syn_id2attr(get_vim_var_nr(VV_FOLDHIGHLIGHT)), W_WIDTH(wp) - col); + +- /* Set all attributes of the 'number' or 'relativenumber' column and the +- * text */ +- RL_MEMSET(col, hl_attr(HLF_FL), W_WIDTH(wp) - col); + + #ifdef FEAT_SIGNS + /* If signs are being displayed, add two spaces. */ +@@ -2289,10 +2297,11 @@ + if (wp->w_p_rl) + /* the line number isn't reversed */ + copy_text_attr(off + W_WIDTH(wp) - len - col, +- (char_u *)" ", len, hl_attr(HLF_FL)); ++ (char_u *)" ", len, hl_attr(HLF_SC)); + else + # endif +- copy_text_attr(off + col, (char_u *)" ", len, hl_attr(HLF_FL)); ++ copy_text_attr(off + col, (char_u *)" ", len, hl_attr(HLF_SC)); ++ + col += len; + } + } +@@ -2324,20 +2333,35 @@ + if (wp->w_p_rl) + /* the line number isn't reversed */ + copy_text_attr(off + W_WIDTH(wp) - len - col, buf, len, +- hl_attr(HLF_FL)); ++ hl_attr(HLF_N)); ++ //syn_id2attr(get_vim_var_nr(VV_FOLDHIGHLIGHT))); ++ + else + #endif +- copy_text_attr(off + col, buf, len, hl_attr(HLF_FL)); ++ copy_text_attr(off + col, buf, len, hl_attr(HLF_N)); ++ //copy_text_attr(off + col, buf, len, syn_id2attr(get_vim_var_nr(VV_FOLDHIGHLIGHT))); ++ + col += len; + } + } + ++ /* now set attributes for vimorganizer todo word in headline, if any */ ++ /* v:todohighlight is set in user's OrgFoldText() function. . . */ ++ if (get_vim_var_nr(VV_TODOHIGHLIGHT) > 0 ) ++ { ++ int start=0, end; ++ ++ while( *(text + start) == ' ' ) ++ start++; ++ end = start; ++ while( *(text + end) != ' ' ) ++ end++; ++ RL_MEMSET(start+col, syn_id2attr(get_vim_var_nr(VV_TODOHIGHLIGHT)), end - start); ++ } + /* + * 4. Compose the folded-line string with 'foldtext', if set. + */ +- text = get_foldtext(wp, lnum, lnume, foldinfo, buf); +- +- txtcol = col; /* remember where text starts */ ++ // moved up above to happen earlier h.s. + + /* + * 5. move the text to current_ScreenLine. Fill up with "fill_fold". +diff -u ./src/vim.h ./patched_src/vim.h +--- ./src/vim.h 2010-07-29 11:46:39.000000000 -0700 ++++ ./patched_src/vim.h 2011-08-11 14:22:52.525545700 -0700 +@@ -1842,7 +1842,9 @@ + #define VV_OP 52 + #define VV_SEARCHFORWARD 53 + #define VV_OLDFILES 54 +-#define VV_LEN 55 /* number of v: vars */ ++#define VV_FOLDHIGHLIGHT 55 ++#define VV_TODOHIGHLIGHT 56 ++#define VV_LEN 57 /* number of v: vars */ + + #ifdef FEAT_CLIPBOARD + diff --git a/.config/vim/ftplugin/haskell.vim b/.config/vim/ftplugin/haskell.vim new file mode 100644 index 0000000..51e75fb --- /dev/null +++ b/.config/vim/ftplugin/haskell.vim @@ -0,0 +1 @@ +setlocal omnifunc=necoghc#omnifunc diff --git a/.config/vim/ftplugin/tex.vim b/.config/vim/ftplugin/tex.vim new file mode 100644 index 0000000..adea7fd --- /dev/null +++ b/.config/vim/ftplugin/tex.vim @@ -0,0 +1,7 @@ +" http://vim-latex.sourceforge.net/index.php?subject=faq&title=FAQ#faq-e-acute +imap <buffer> <leader>it <Plug>Tex_InsertItemOnThisLine + +" http://vim-latex.sourceforge.net/index.php?subject=faq&title=FAQ#faq-euro-symbols +imap <C-b> <Plug>Tex_MathBF +imap <C-c> <Plug>Tex_MathCal +imap <C-l> <Plug>Tex_LeftRight diff --git a/.config/vim/keys.vim b/.config/vim/keys.vim new file mode 100644 index 0000000..c6d4d20 --- /dev/null +++ b/.config/vim/keys.vim @@ -0,0 +1,75 @@ +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Bépo configuration " +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +" [HJKL] -> {DHTN} +" ---------------- +" corollaries +noremap zh zj +noremap zH zJ +noremap zt zk +noremap zT zK +noremap gH gJ + + +" {HJKL} <- [DHTN] +" ---------------- +" {k} = "delete" +noremap k d +noremap K D +" {l} = "until before next/previous" +"noremap l t +"noremap L T +" {j} = "search after/before" +noremap l n +noremap L N + + +" [HJKL] -> {CTSR} +" ———————————————— +" {cr} = « gauche / droite » +noremap c h +noremap r l +" {ts} = « haut / bas » +noremap t j +noremap s k +" {CR} = « haut / bas de l'écran » +noremap C H +noremap R L +" {TS} = « joindre / aide » +noremap T J +noremap S K +" Corollaire : repli suivant / précédent +noremap zs zj +noremap zS zJ +noremap zt zk +noremap zT zK +noremap gT gH + +" {HJKL} <- [CTSR] +" ———————————————— +" {J} = « Jusqu'à » (j = suivant, J = précédant) +noremap j t +noremap J T +" {L} = « Change » (h = bloc, H = jusqu'à la fin de ligne) +noremap l c +noremap L C +" {H} = « Remplace » (l = caractère, L = texte) +noremap h r +noremap H R +" {K} = « Substitue » (k = caractère, K = ligne) +noremap k s +noremap K S +" Corollaire : correction orthographique +noremap ]k ]s +noremap [k [s + +" Désambiguation de {g} +" ————————————————————— +" ligne écran précédente / suivante (à l'intérieur d'une phrase) +noremap gs gk +noremap gt gj + +" Added benefits +"noremap , : +"noremap : , diff --git a/.config/vim/plugin/tagbar-haskell.vim b/.config/vim/plugin/tagbar-haskell.vim new file mode 120000 index 0000000..698a906 --- /dev/null +++ b/.config/vim/plugin/tagbar-haskell.vim @@ -0,0 +1 @@ +/home/gueux/builds/lushtags/plugin/tagbar-haskell.vim
\ No newline at end of file diff --git a/.config/vim/spell/es.utf-8.spl b/.config/vim/spell/es.utf-8.spl Binary files differnew file mode 100644 index 0000000..62d848d --- /dev/null +++ b/.config/vim/spell/es.utf-8.spl diff --git a/.config/vim/spell/es.utf-8.sug b/.config/vim/spell/es.utf-8.sug Binary files differnew file mode 100644 index 0000000..9064321 --- /dev/null +++ b/.config/vim/spell/es.utf-8.sug diff --git a/.config/vim/spell/fr.utf-8.spl b/.config/vim/spell/fr.utf-8.spl Binary files differnew file mode 100644 index 0000000..ff27132 --- /dev/null +++ b/.config/vim/spell/fr.utf-8.spl diff --git a/.config/vim/spell/fr.utf-8.sug b/.config/vim/spell/fr.utf-8.sug Binary files differnew file mode 100644 index 0000000..df555d2 --- /dev/null +++ b/.config/vim/spell/fr.utf-8.sug diff --git a/.config/vim/vimoutlinerrc b/.config/vim/vimoutlinerrc new file mode 100644 index 0000000..f57cef3 --- /dev/null +++ b/.config/vim/vimoutlinerrc @@ -0,0 +1,37 @@ +"Extra mappings ***************************************************** +"This mapping is fold-level and fold-state dependent +"map <S-Down> dd p +"map <S-Up> dd <up>P + +"Common Plugins +" This variable holds name of all VO modules you want to load. Do NOT use ru +" directly in this file, because you will get into many strange surprises. If +" you do not want to load any VO modules leave it blank (default). This +" variable can be freely modified in ~/.vimoutlinerrc. +"let g:vo_modules2load = "" +let g:vo_modules_load = "checkbox:hoist" + +"User Preferences *************************************************** +let maplocalleader = ",," " this is prepended to VO key mappings + +"setlocal ignorecase " searches ignore case +"setlocal smartcase " searches use smart case +"setlocal wrapmargin=5 +"setlocal tw=78 +"setlocal tabstop=4 " tabstop and shiftwidth must match +"setlocal shiftwidth=4 " values from 2 to 8 work well +"setlocal background=dark " for dark backgrounds +setlocal nowrap + +"Hoisting *********************************************************** +"Uncomment and set to 1 to debug hoisting +let g:hoistParanoia=0 + +"Custom Colors ****************************************************** +" Uncomment this next line to force using VO on a light background +" colorscheme vo_light +" Uncomment this next line to force using VO on a dark background +colorscheme vo_dark +" Or create your own color scheme. You can find sample files in Vim's +" colors directory. There may even be a colors directory in your own +" $HOME/.vim directory. diff --git a/.config/vim/vimrc b/.config/vim/vimrc new file mode 100644 index 0000000..67e819e --- /dev/null +++ b/.config/vim/vimrc @@ -0,0 +1,988 @@ +" vim not vi +set nocompatible + +" Environment +set directory=$XDG_CACHE_HOME/vim,~/,/tmp +set backupdir=$XDG_CACHE_HOME/vim,~/,/tmp +"set viminfo+=n$XDG_CACHE_HOME/vim/viminfo +set viminfo+=n~/.cache/vim/viminfo +set runtimepath=$XDG_CONFIG_HOME/vim,$XDG_DATA_HOME/vim/bundle/vundle,$XDG_CONFIG_HOME/vim/after,$VIM,$VIMRUNTIME +"set runtimepath=~/.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,~/.vim/after +let $MYVIMRC="$XDG_CONFIG_HOME/vim/vimrc" + +" remap keys, to fit a specific key layout +source $XDG_CONFIG_HOME/vim/keys.vim + +"""""""""""""""" + +" pas de bips +set visualbell + +" indentation automatique avancee +set autoindent + +" indentation plus intelligente +set smartindent + +" !! do not set paste on startup !! invalid plugins: ultisnips, delimitmate, ... +set nopaste + +" autorisation du retour arriere +set backspace=indent,eol,start + +" Essaye de garder le curseur dans la même colonne quand on change de ligne +set nostartofline + +" nombre de tabulation pour l'indentation +set shiftwidth=4 + +" nombre d'espace pour la tabulation +"set softtabstop=2 + +set tabstop=4 + +"supprime les tabulations et met des espaces +set expandtab + +" single space after punctuation +set nojoinspaces + +set nowrapscan + +" vérification presence ([ ou { a la frappe de )] ou } +set showmatch + +" pas de coupure de ligne par défaut +autocmd BufRead /tmp/mutt* set tw=72 +set textwidth=79 + +" pas de coupure de mot par défaut +set linebreak + +" sauvegarde d'un fichier de backup +set backupcopy=yes + +" sauvegarde automatique avant, :mak, :next, ... +set autowrite + +" recherche incrémentale +set incsearch + +" always statusline +set statusline=2 + +" set statusline +set statusline=%<%f\ \ \|\ %o\ %h%m%r%=%-14.(%l,%c%V%)\ %P + +"cusor position +set ruler + +" line numbers +set number + +" relative line numbers +set relativenumber + +" pour latex-suite +" filetype plugin on + +" highlight search matches +set hlsearch + +" Coloration syntaxique +syntax on + +au BufRead,BufNewFile *.viki set ft=viki + +" gère intelligement la casse dans les recherces +set ignorecase +set smartcase + +" Va automatiquement à la ligne où on était au moment de la fermeture, +" nécessite un fichier $HOME/.viminfo avec les droits -rw------ +if has("autocmd") + au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") + \| exe "normal! g'\"" | endif +endif + + +" Délai raccourcis-clavier +set tm=500 + +" touche "<Leader>" +"let mapleader = "<SPACE>" +let mapleader = "_" +let maplocalleader = "_" + +" viki +let g:vikiOpenUrlWith_http = "silent !firefox %{URL}" + +" Sauvegarde rapide du fichier actuel +map <F2> :w<CR> +imap <F2> <ESC>:w<CR> + +" Largeur de texte standard: retours à la ligne automatiques +" set tw=80 + +" Formatage rapide du paragraphe courant ou de la selection +" souris ou visuelle +map <F6> gq} +imap <F6> <ESC>gq}a +vmap <F6> gq + +" Formatage sur une ligne seulement +map <S-F6> gqj +imap <S-F6> <ESC>gqj + +" Types de fichiers à ignorer +set wildignore=*.dvi,*.ps,*.toc,*.log,*.pdf,*.aux + +" Aller dans le dossier de travail du fichier actuel +map ,cwd :cd %:h + + +"thème de couleur -- theme +"colorscheme peachpuff +"colorscheme brown +"colorscheme autumn "bien pour TOhtml +"colorscheme delek +"colorscheme Tomorrow-Night-Bright + +" fond noir par défaut +"set background=dark + +"commentaires plus clairs +hi Comment ctermfg=Green + + +"" {{{ 9.2 vimspell +" +"let loaded_vimspell = 0 " 1=Désactivé 0=activé +"let spell_executable = "aspell" +""let loaded_vimspell = 1 +"let spell_language_list = "fr" +"let spell_auto_type = '' +"let spell_insert_mode = 0 +""let spell_root_menu = "Outils." +"" }}} + +" F10 active/desactive la correction orthographique +"function! ToggleSpell() +" if &spell +" set nospell +" else +" "set spell +" setlocal spell spelllang=fr +" end +"endfunction +"noremap <F10> :call ToggleSpell()<cr> +"inoremap <F10> <Esc> :call ToggleSpell()<cr> +"vnoremap <F10> <Esc> :call ToggleSpell()<cr> + +"switch spellcheck languages +let g:myLang = 0 +let g:myLangList = [ "nospell", "fr", "en" ] +function! MySpellLang() + "loop through languages + let g:myLang = g:myLang + 1 + if g:myLang >= len(g:myLangList) | let g:myLang = 0 | endif + if g:myLang == 0 | set nospell | endif + if g:myLang == 1 | setlocal spell spelllang=fr | endif + if g:myLang == 2 | setlocal spell spelllang=en | endif + echo "language:" g:myLangList[g:myLang] +endf + +map <F10> :call MySpellLang()<CR> +imap <F10> <C-o>:call MySpellLang()<CR> + + + + +"vimspell +au BufNewFile,BufRead *.txt setlocal spell spelllang=en,fr +au BufNewFile,BufRead *.tex setlocal spell spelllang=en,fr + +au BufRead,BufNewFile *.j2 set syntax=jinja + +au BufRead,BufNewFile *.ino set syntax=arduino +au BufRead,BufNewFile *.pde set syntax=arduino + + +"plugin taglist: exporateur de code source +"let Tlist_Ctags_Cmd = '/usr/bin/ctags' + +filetype on + +"let Tlist_Process_File_Always = 1 + +"nnoremap <silent> <F8> :TlistToggle<CR> + +"set statusline=%<%f%=%([%{Tlist_Get_Tagname_By_Line()}]%) + + +"plugin NERD_tree:explorateur de fichiers +nnoremap <silent> <F7> :NERDTree<CR> + + +" defini le style a utiliser pour indenter le code C +set cindent + +"set cinoptions=>s,e0,n0,f0,{0,}0,^0,:s,=s,l0,gs,hs,ps,ts,+s,c3,C0,(2s,us,U0,w0,m0,j0,)20,*30 + +" Omlet +"let omlet_indent_match = 2 +"let omlet_indent_function = 2 +"let omlet_indent_let = 2 + +" Fonctions pour fichiers LaTeX +"au BufEnter,BufNewFile *.tex exe Flatex() + +" Eviter de colorer pour le plaintex +"au BufEnter,BufNewFile *.tex setfiletype tex + +" Autre astuce possible, plus propre car dans la doc de Vim +let g:tex_flavor = "latex" + +" IMPORTANT: grep will sometimes skip displaying the file name if you +" search in a singe file. This will confuse Latex-Suite. Set your grep +" program to alway generate a file-name. +set grepprg=grep\ -nH\ $* + + +" Fonctions pour fichiers HTML +"au BufEnter *.html exe Fhtml() +"au BufEnter *.htm exe Fhtml() + +" Fonctions pour fichiers CSS +"au BufEnter *.php exe Fhtml() + +"function! Flatex() +" " Codages des caract�res ISO-8859-1 +" set encoding=UTF-8 +" "set fileencoding=iso-8859-1 +" +" " 4 espaces pour les tabulations me suffisent en LaTeX +" set ts=4 +" +" " Retour � la ligne (72 caract�res) +" " set tw=72 +" +" " Mod�les +" map ,mod :r ~/.modele.tex<CR>ggdd +" map ,ex :r ~/.ex.tex<CR>ggdd +" map ,pre :r ~/.presentation.tex<CR>ggdd +" +" " Ouverture d'un mod�le Makefile dans une sous-fen�tre en lecture +" " seule, � l'utilisateur de le sauvegarder s'il le souhaite. +" " map ,mk :sp ~/.texmf/Makefile-latex<CR> +" +" " Sauvegarde et Compilation +" map ,mk <ESC>:w<CR>:!make -C ./ -f ~/.texmf/Makefile-latex <CR><CR> +" map <F3> :w<CR>:!make -C ./ -f ~/.texmf/Makefile-latex <CR><CR> +" imap <F3> <ESC>:w<CR>:!make -C ./ -f ~/.texmf/Makefile-latex <CR><CR>a +" +" "set <S-F3>=[1;2R +" " Visualisaton DVI +" map <S-F3> :!xdvi %<.dvi &<CR><CR> +" imap <S-F3> <ESC>:!xdvi %<.dvi &<CR><CR>a +" +" " Sauvegarde et Compilation pdf +" map <F4> :w<CR>:!make -C ./ -f ~/.texmf/Makefile-latex pdf<CR><CR> +" imap <F4> <ESC>:w<CR>:!make -C ./ -f ~/.texmf/Makefile-latex pdf<CR><CR>a +" +" " Lancement Xfig +" " map <F3> :!xfig &<CR><CR> +" " imap <F3> <ESC>:!xfig &<CR><CR> +" +" " Lancement de votre calculatrice pr�f�r�e +" " map <S-F3> :!kcalc &<CR><CR> +" " imap <S-F3> <ESC>:!kcalc &<CR><CR> +" +" " Sauvegarde et compilation LaTeX +" " map <F4> <ESC>:w<CR>:!latex %<.tex<CR><CR> +" " imap <F4> <ESC>:w<CR>:!latex %<.tex<CR>a +" +" " Nettoyage des fichiers +" map ,cln :!rm -f %<.aux %<.dvi %<.log %<.out %<.pdf %<.ps %<.toc %<-miformat.ps <CR> +" imap ,cln :!rm %<.aux %<.dvi %<.log %<.out %<.pdf %<.ps %<.toc %<-miformat.ps <CR> +" +" " Visualisaton DVI +" map <F5> :!kdvi %<.dvi 2> /dev/null &<CR><CR> +" imap <F5> <ESC>:!kdvi %<.dvi 2> /dev/null &<CR><CR>a +" +" " Visualisaton PDF +" map <F6> :!kpdf %<.pdf &<CR><CR> +" imap <F6> <ESC>:!kpdf %<.pdf &<CR><CR>a +" +" " Conversion vers Postscript +" "map <F7> :!dvips %<.dvi -o %<.ps <CR><CR> +" "imap <F7> <ESC>:!dvips %<.dvi -o %<.ps <CR> +" +" " Visualisation Postscript +" "map <F8> :!gv %<.ps &<CR><CR> +" +" " R�duction A4 vers double-A5 +" map <F7> :!psnup -2 %<.ps %<-miformat.ps; ps2pdf %<-miformat.ps<CR><CR> +" imap <F7> <ESC>:!psnup -2 %<.ps %<-miformat.ps; ps2pdf %<-miformat.ps<CR><CR>a +" +" " Visualisation double-A5 +" map <S-F7> :!kpdf %<-miformat.pdf &<CR><CR> +" imap <S-F7> :!kpdf %<-miformat.pdf &<CR><CR>a +" +" " Dictionnaire special LaTeX Guilhem +" map <F2> :!sh ~/.texmf/spell_tex %<.tex<CR> +" +" "set <S-F4>=[1;2S +" " PDFLaTeX +" "map <S-F4> <ESC>:w<CR>:!pdflatex %<.tex<CR> +" "imap <S-F4> <ESC>:w<CR>:!pdflatex %<.tex<CR>a +" +" " Conversion DVI vers PDF + vignettes +" "map <F9> :!dvipdft %<.dvi <CR> +" "imap <F9> <ESC>:!dvipdft %<.dvi <CR>a +" +" " Visualisation PDF +" "map <S-F5> :!acroread %<.pdf &<CR> +" "imap <S-F5> <ESC>:!acroread %<.pdf &<CR> +" +" " TeX, LaTeX +" imap ,tex \TeX{} +" imap ,la \LaTeX{} +" +" " Accents +" imap é \'e +" imap è \`e +" imap ê \^e +" imap à \`a +" imap â \^a +" imap î \^i +" imap ô \^o +" imap û \^u +" imap ü \"u +" imap ù \`u +" imap ï \"i +" imap ë \"e +" imap ä \"a +" imap ö \"o +" imap ç \c{c} +" +" " Euro +" imap ,eu \euro{} +" +" " Insertion fraction +" imap ,fr \dfrac{}{}<ESC>2hi +" imap ,tfr \tfrac{}{}<ESC>2hi +" +" " Taille math standard +" imap ,dst \displaystyle{}<ESC>i +" vmap ,dst di\displaystyle{<ESC>pa} +" +" " Insertion d'une figure +" imap ,igr \includegraphics{}<ESC>i +" vmap ,igr di\includegraphics{<ESC>pa} +" +" imap ,ppr \parpic[r]{\includegraphics{}}<ESC>hi +" imap ,ppl \parpic[l]{\includegraphics{}}<ESC>hi +" +" vmap ,ppr di\parpic[r]{\includegraphics{<ESC>pa}} +" vmap ,ppl di\parpic[l]{\includegraphics{<ESC>pa}} +" +" " Table des mati�res +" imap ,toc \tableofcontents +" +" " (Sous-(sous-)Section num�rot�e +" imap ,s \section{}<ESC>i +" imap ,ss \subsection{}<ESC>i +" imap ,sss \subsubsection{}<ESC>i +" vmap ,s di\section{<ESC>pa} +" vmap ,ss di\subsection{<ESC>pa} +" vmap ,sss di\subsubsection{<ESC>pa} +" +" " (Sous-)Section non-num�rot�e +" imap ,s* \section*{}<ESC>i +" imap ,ss* \subsection*{}<ESC>i +" imap ,sss* \subsubsection*{}<ESC>i +" vmap ,s* di\section*{<ESC>pa} +" vmap ,ss* di\subsection*{<ESC>pa} +" vmap ,sss* di\subsubsection*{<ESC>pa} +" +" " Marques de modifications +" imap ,chb \begin{changebar}<CR>\end{changebar}<ESC>O +" vmap ,chb di\begin{changebar}<CR>\end{changebar}<ESC>O<ESC>p +" +" " Environnement quelconque +" imap ,env <ESC>v0di\begin{<ESC>pa}<CR><CR>\end{<ESC>pa}<ESC>ka +" vmap ,env di\begin{<ESC>pa}<CR><CR>\end{<ESC>pa}<ESC>ka +" +" " Retour ou saut de ligne +" imap ,cr \\ <CR> +" +" " Saut de ligne justifi� +" imap ,lb \linebreak +" +" " Saut de page +" imap ,pb \pagebreak +" +" " Gros saut de ligne +" imap ,bs \bigskip<CR> +" +" " Ligatures +" imap ,oe \oe{} +" +" " Mode maths en ligne +" imap ,$ $$<ESC>i +" vmap ,$ di$<ESC>pa$ +" +" " Mode maths pr�sentation +" imap ,$$ $$<CR>$$<ESC>O +" vmap ,$$ di$$<CR>$$<ESC>O<ESC>p +" +" " Texte normal en mode maths +" imap ,rm \textrm{}<ESC>i +" +" " Racine carr�e +" imap ,rc \sqrt{}<ESC>i +" vmap ,rc di\sqrt{<ESC>pa} +" +" " Pi +" imap ,pi \pi +" imap ,Pi \Pi +" " Angle +" imap ,wh \widehat{}<ESC>i +" imap _cos \cos +" imap _sin \sin +" imap _tan \tan +" +" " Fl�che fonction +" imap ,lm \longmapsto<ESC>a +" +" " Signe multipli� +" imap ,* \times +" +" " Sign� divis� +" imap ,/ \div +" +" " Centrage +" imap ,c \begin{center}<CR>\end{center}<ESC>O +" vmap ,c di\begin{center}<CR>\end{center}<ESC>O<ESC>p +" +" " Caract�res machine � �crire +" imap ,tt \texttt{}<ESC>i +" vmap ,tt di\texttt{<ESC>pa} +" +" " Caract�res gras +" imap ,bf \textbf{}<ESC>i +" vmap ,bf di\textbf{}<ESC>Pi +" +" " Soulignement +" imap ,_ \underline{}<ESC>i +" vmap ,_ di\underline{<ESC>pa} +" +" " Caract�res pench�s +" imap ,sl \textsl{}<ESC>i +" vmap ,sl di\textsl{<ESC>pa} +" +" " Caract�res italiques +" imap ,i \textit{}<ESC>i +" vmap ,i di\textit{<ESC>pa} +" +" " Petites capitales +" imap ,sc \textsc{}<ESC>i +" vmap ,sc di\textsc{<ESC>pa} +" +" " Caligraphiques math +" imap ,mc \mathscr{}<ESC>i +" vmap ,mc di\mathscr{<ESC>pa} +" +" " Ensembles math +" imap ,mb \mathbb{}<ESC>i +" vmap ,mb di\mathbb{<ESC>pa} +" +" " Ensembles +" imap ,bb \mathbb{}<ESC>i +" vmap ,bb di\mathbb{<ESC>pa} +" +" " Verbatim +" imap ,vb+ \verb++<ESC>i +" vmap ,vb+ di\verb+<ESC>pa+ +" +" imap ,vbt \begin{verbatim}<CR>\end{verbatim}<ESC>O +" vmap ,vbt di\begin{verbatim}<CR>\end{verbatim}<ESC>O<ESC>p +" +" " Vecteur +" imap ,v \overrightarrow{}<ESC>i +" vmap ,v di\overrightarrow{<ESC>pa} +" +" " Logarithmes, exponentielles +" imap ,ln \ln{}<ESC>i +" imap ,exp \exp{}<ESC>i +" +" vmap ,ln di\ln{<ESC>pa} +" vmap ,exp di\exp{<ESC>pa} +" +" " Infini +" imap ,inf \infty{} +" +" " Fant�me +" imap ,ph \phantom{}<ESC>i +" vmap ,ph di\phantom{<ESC>pa} +" +" " Insertion tableau +" imap ,tab \begin{tabular}[t]{}<CR>\end{tabular}<ESC>k$i +" imap ,tabc \begin{tabular}[c]{}<CR>\end{tabular}<ESC>k$i +" imap ,hl \hline +" +" imap ,ar \begin{array}[t]{}<CR>\end{array}<ESC>O +" +" vmap ,tab S\begin{tabular}[t]{}<CR>\end{tabular}<ESC>kp +" +" " = en tableau math +" imap _= &<SPACE>=<SPACE>&<SPACE> +" +" " Accolades syst�mes +" imap ,{ \left\lbrace{} +" imap ,. \right. +" +" " Liste +" imap ,ite \begin{itemize}<CR>\end{itemize}<ESC>O\item<SPACE> +" imap ,it \item +" +" " Enumeration +" imap ,en \begin{enumerate}<CR>\end{enumerate}<ESC>O\item<SPACE> +" +" " Description +" imap ,des \begin{description}<CR>\end{description}<ESC>O\item[]<ESC>i +" imap ,itd \item[]<ESC>i +" +" " Au fer � droite +" imap ,r \begin{flushright}<CR>\end{flushright}<ESC>O +" vmap ,r di\begin{flushright}<CR>\end{flushright}<ESC>O<ESC>p +" +" " Au fer � gauche +" imap ,l \begin{flushleft}<CR>\end{flushleft}<ESC>O +" vmap ,l di\begin{flushleft}<CR>\end{flushleft}<ESC>O<ESC>p +" +" " Alin�a +" imap ,al \indent{} +" +" " Pas d'alin�a +" imap ,noi \noindent{} +" +" " Largeur de texte +" imap ,tw \textwidth +" +" " Espaces suppl�mentaires +" imap ,, \, +" imap ,; \; +" imap ,q \quad +" imap ,qq \qquad +" +" " Espacement horizontal ou vertical +" imap ,hs \hspace{}<ESC>i +" imap ,vs \vspace{}<ESC>i +" +" " Remplissage horizontal ou vertical +" imap ,hf \hfill +" imap ,vf \vfill +" +" +" " Parenth�ses +" imap ,( \left( +" imap ,) \right) +" imap ,() \left( \right)<ESC>8hi +" +" " Crochets +" imap ,[ \left[ +" imap ,] \right] +" imap ,dcr \left[ \right]<ESC>8hi +" +" +" " Rien � droite +" imap ,. \right. +" +" " Environ �gal +" imap ,= \simeq +" +" " Diff�rent +" imap ,n= \not= +" +" " In�galit�s +" imap ,< \leqslant{} +" imap ,> \geqslant{} +" +" " �quivalences +" imap ,eq \Longleftrightarrow{} +" +" " Bo�tes +" imap ,fb \fbox{}<ESC>i +" vmap ,fb s\fbox{}<ESC>PA +" +" " Num�ro +" imap ,no \no{}<ESC>i +" imap ,No \No{}<ESC>i +" +" " Renvois +" imap ,fn \,\footnote{}<ESC>i +" +" " Liens +" imap ,url \url{}<ESC>i +" imap ,hr \href{}{}<ESC>2hi +" +" vmap ,url di\url{<ESC>pa} +" vmap ,hr di\href{}{<ESC>pa} +"endfunction +" +"function! Fhtml() +" " Codages des caract�res ISO-8859-1 +" set encoding=utf-8 +" "set fileencoding=iso-8859-1 +" +" " Mod�les +" map ,mod :r ~/site/modele.html<CR>ggdd +" +" " Sauvegarde sans quitter le mode insertion si mode insertion il y +" " avait. +" map <F2> <ESC>:w<CR> +" imap <F2> <ESC>:w<CR> +" +" " Sauvegarde en quittant le mode insertion +" +" " Visualisation +" map <F5> :!firefox %:p &<CR><CR> +" imap <F5> <ESC>:!firefox %:p &<CR><CR>a +" +" " FTP +" map <F3> :!gftp &<CR><CR> +" imap <F3> <ESC>:!gftp &<CR><CR>a +" +" " 4 espaces pour les tabulations suffisent en HTML +" set ts=4 +" +" " Pas de retour � la ligne +" set tw=0 +" +" " Insertion de saut � la ligne +" imap ,br <cr><br><ESC>o +" +" " Headers 1, 2, 3 et 4 +" imap ,h1 <h1></h1><ESC>4hi +" vmap ,h1 di<h1><ESC>pa</h1> +" +" imap ,h2 <h2></h2><ESC>4hi +" vmap ,h2 di<h2><ESC>pa</h2> +" +" imap ,h3 <h3></h3><ESC>4hi +" vmap ,h3 di<h3><ESC>pa</h3> +" +" imap ,h4 <h4></h4><ESC>4hi +" vmap ,h4 di<h4><ESC>pa</h4> +" +" " Environnement div quelconque +" imap ,div <div class=""><CR></div><ESC>?"<CR>i +" vmap ,div di<div class=""><CR></div><ESC>O<ESC>p +" +" " Centrage +" imap ,c <div align="center"><CR></div><ESC>O +" vmap ,c di<div align="center"><CR></div><ESC>O<ESC>p +" +" " Justifi� +" imap ,j <div align="justify"><CR></div><ESC>O +" vmap ,j di<div align="justify"><CR></div><ESC>O<ESC>p +" +" " Paragraphe +" imap ,p <p> +" +" " Gras +" imap ,b <strong></strong><ESC>8hi +" vmap ,b di<strong><ESC>pa</strong> +" +" " Italique +" imap ,i <em></em><ESC>4hi +" vmap ,i di<em><ESC>pa</em> +" +" " Image +" imap ,img <img src="" border="0" alt=""><ESC>19hi +" vmap ,img di<img src="" border="0" alt=""><ESC>19hPa +" +" " Liens +" imap ,lnk <a href=""></a><ESC>5hi +" vmap ,lnk di<a href="<ESC>pa"><ESC>pa</a> +" +" imap ,eml <a href="mailto:?Subject="></a><ESC>3hi +" vmap ,eml <a href="mailto:?Subject="><ESC>pa</a> +" +" " �tiquettes (liens internes) +" imap ,lnh <a href="#"></a><ESC>5hi +" imap ,lnn <a name=""></a><ESC>5hi +" vmap ,lnn di<a name="<ESC>pa"><ESC>pa</a> +" +" " Choix de fonte +" imap ,ff <font face=""></font><ESC>8hi +" vmap ,ff di<font face=""><ESC>pa</font> +" +" " Fonte courier +" imap ,ffc <font face="courier"></font><ESC>6hi +" vmap ,ffc di<font face="courier"><ESC>pa</font> +" +" " Taille de police +" imap ,fs <font size=""></font><ESC>8hi +" vmap ,fs di<font size=""><ESC>pa</font> +" +" " Taille de police 5 +" imap ,fs5 <font size="5"></font><ESC>6hi +" vmap ,fs5 di<font size="5"><ESC>pa</font> +" +" " Texte pr�formatt� +" imap ,pre <pre><CR></pre><ESC>O +" vmap ,pre di<pre><CR></pre><ESC>O<ESC>p +" +" " Commentaire +" imap ,com <!--<CR>--><ESC>kA +" vmap ,com di<!--<CR>--><ESC>O<ESC>p +" +" " Insertion balises de base +" map ,int <ESC>:r modele.html<CR>i +" imap ,int <ESC>:r modele.html<CR>i +" +" " Insertion ic�ne-titre +" imap ,ic <link rel="icon" type="image/png" href="favicon.ico/"> +" vmap ,ic di<link rel="icon" type="image/png" href=\"<ESC>pa\"> +" +" " Visualisation du fichier courant dans Mozilla +" " Attention : Mozilla exige le chemin absolu complet +" " map <F5> :w<CR>:!mozilla %:p &<CR> +" " imap <F5> <ESC>:w<CR>:!mozilla %:p &<CR> +" +" " Modification du fichier courant dans Mozilla +" " Attention : Mozilla exige le chemin absolu complet +" " map <S-F5> :w<CR>:!mozilla -editor %:p &<CR> +" " imap <S-F5> <ESC>:w<CR>:!mozilla -editor %:p &<CR> +" +" " Tableau +" imap ,tab <table><CR></table><ESC>O +" vmap ,tab di<table><CR></table><ESC>O<ESC>p +" +" imap ,tr <tr><cr></tr><ESC>a +" vmap ,tr di<tr><CR></tr><ESC>O<ESC>p +" +" imap ,td <td></td><ESC>4hi +" vmap ,td di<td><ESC>pa</td> +" +" " Code +" imap ,co <code></code><ESC>6hi +" vmap ,co di<code><ESC>pa</code> +" +" " Liste (sans num�rotation) +" imap ,ul <ul><CR></ul><ESC>O +" vmap ,ul di<ul><CR></ul><ESC>O<ESC>p +" +" " Liste (avec num�rotation) +" imap ,ol <ol><CR></ol><ESC>O +" vmap ,ol di<ol><CR></ol><ESC>O<ESC>p +" +" " �l�ment de liste +" imap ,li <li><CR></li><ESC>O +" vmap ,li di<li><CR></li><ESC>O<ESC>p +" +" " Liste descriptive +" " environnement +" imap ,dl <dl><CR></dl><ESC>O +" vmap ,dl di<dl><CR></dl><ESC>O<ESC>p +" +" " �l�ment +" imap ,dt <dt><CR></dt><ESC>O +" vmap ,dt di<dt><CR></dt><ESC>O<ESC>p +" +" "description +" imap ,dd <dd><CR></dd><ESC>O +" vmap ,dd di<dd><CR></dd><ESC>O<ESC>p +" +" " Indice, exposant +" " imap ,ind +" imap ,sup <sup></sup><ESC>5hi +" +"endfunction +" +"function! Fcss() +" " Commentaires +" imap ,com /**/<ESC>hi +" vmap ,com s/*<CR>*/<ESC>O<ESC>p +"endfunction + +" omnicompletion +filetype plugin on +"set ofu=syntaxcomplete#Complete +autocmd FileType python set omnifunc=pythoncomplete#Complete + +" minibufexpl plugin +" let g:miniBufExplMapWindowNavVim = 1 +" let g:miniBufExplMapWindowNavArrows = 1 +" let g:miniBufExplMapCTabSwitchBufs = 1 +" let g:miniBufExplModSelTarget = 1 + + +" taglist plugin +let $Tlist_Ctags_Cmd='/usr/bin/ctags' + + +autocmd FileType yaml :setlocal foldmethod=indent + + +" vundle +" required by vundle +filetype off +call vundle#rc('$XDG_DATA_HOME/vim/bundle') +Bundle 'gmarik/vundle' +"Bundle 'minibufexpl.vim' +Bundle 'NrrwRgn' +Bundle 'utl.vim' +Bundle 'taglist.vim' +Bundle 'TaskList.vim' +Bundle 'searchfold.vim' +"Bundle 'gitdiff.vim' +Bundle 'VimOrganizer' +Bundle 'compview' +Bundle 'Jinja' +"Bundle 'tlib' +Bundle 'VikiDeplate' +Bundle 'vim-scripts/calendar.vim--Matsumoto' +Bundle 'lbdbq' +"Bundle 'LaTeX-Suite-aka-Vim-LaTeX' +"Bundle 'tpope/vim-fugitive' +Bundle 'Lokaltog/vim-easymotion' +Bundle 'rstacruz/sparkup', {'rtp': 'vim/'} +Bundle 'klen/python-mode' +"Bundle 'msanders/snipmate.vim' +Bundle 'SirVer/ultisnips' +"Bundle 'honza/vim-snippets' +"Bundle 'Lokaltog/powerline', {'rtp': 'powerline/powerline/bindings/vim'} +"Bundle 'Lokaltog/powerline' +Bundle 'scrooloose/nerdcommenter' +"Bundle 'scrooloose/syntastic' +Bundle 'Vimchant' +Bundle 'editorconfig/editorconfig-vim' +Bundle 'openscad.vim' +"" YouCompleteMe requires vim > 7.3.584 +"Bundle 'Valloric/YouCompleteMe' +Bundle 'Valloric/MatchTagAlways' +"Bundle 'lukerandall/haskellmode-vim' +Bundle 'Twinside/vim-hoogle' +Bundle 'Arduino-syntax-file' +Bundle 'Rykka/riv.vim' +Bundle 'mhinz/vim-signify' +Bundle 'majutsushi/tagbar' +"Bundle 'altercation/vim-colors-solarized' +Bundle 'tpope/vim-surround' +Bundle 'Raimondi/delimitMate' +Bundle 'Shougo/vimproc.vim' +Bundle 'eagletmt/ghcmod-vim' +Bundle 'dag/vim2hs' +"Bundle 'godlygeek/tabular' +Bundle 'pbrisbin/html-template-syntax' +Bundle 'kana/vim-textobj-user' +Bundle 'kana/vim-textobj-indent' +Bundle 'eagletmt/neco-ghc' +Bundle 'bitc/vim-hdevtools' +"Bundle 'ekalinin/Dockerfile.vim' +"Bundle 'ervandew/supertab' +"" My Bundles here: +"" +"" original repos on github +"Bundle 'Lokaltog/vim-easymotion' +"Bundle 'rstacruz/sparkup', {'rtp': 'vim/'} +"Bundle 'tpope/vim-rails.git' +"" vim-scripts repos +"Bundle 'L9' +"Bundle 'FuzzyFinder' +"" non github repos +"Bundle 'git://git.wincent.com/command-t.git' +"Bundle 'minibufexpl' +" Indentation specifique au langage +filetype plugin indent on + +"" latex-suite +let g:Tex_DefaultTargetFormat='pdf' + +autocmd Filetype haskell set ai +autocmd Filetype haskell set expandtab +autocmd Filetype haskell set tabstop=4 +autocmd Filetype haskell set shiftwidth=4 +autocmd Filetype mail set ai +autocmd Filetype mail set tabstop=4 +autocmd Filetype mail set shiftwidth=4 +autocmd Filetype ruby set ai +autocmd Filetype ruby set tabstop=2 +autocmd Filetype ruby set shiftwidth=2 + +" switch on syntax highlighting +syntax on + +" enable filetype detection, plus loading of filetype plugins +filetype plugin on + +" disable netrw history +let g:netrw_dirhistmax = 0 + +" configure browser for haskell_doc.vim +let g:haddock_browser = "/usr/bin/iceweasel" + +let g:ft_ignore_pat = '\.org' +au! BufRead,BufWrite,BufWritePost,BufNewFile *.org +au BufEnter *.org call org#SetOrgFileType() +command! OrgCapture :call org#CaptureBuffer() +command! OrgCaptureFile :call org#OpenCaptureFile() + +" reminders +autocmd Filetype remind set tw=0 + +" powerline +"set rtp+=$XDG_DATA_HOME/vim/bundle/powerline/powerline/bindings/vim +"set rtp+=/usr/lib/python2.7/dist-packages/powerline/bindings/vim +set rtp+=/usr/share/pyshared/powerline/bindings/vim +set laststatus=2 + +"" solarized +"set background=dark +"let g:solarized_termtrans=1 +"let g:solarized_termcolors=256 +"let g:solarized_contrast="high" +"let g:solarized_visibility="high" +"colorscheme solarized + +" surround +let g:surround_no_mappings=1 +nmap ds <Plug>Dsurround +nmap js <Plug>Csurround +nmap ys <Plug>Ysurround +nmap yS <Plug>YSurround +nmap yss <Plug>Yssurround +nmap ySs <Plug>YSsurround +nmap ySS <Plug>YSsurround +xmap S <Plug>VSurround +xmap gS <Plug>VgSurround + +" delimitMate +au FileType mail let b:delimitMate_autoclose = 0 + +" vim2hs +let g:hpaste_author = 'gueux' + +" neco-ghc +let g:necoghc_enable_detailed_browse = 1 + +let g:ycm_semantic_triggers = {'haskell' : ['.']} + +" make YCM compatible with UltiSnips (using supertab) +let g:ycm_key_list_select_completion = ['<C-n>', '<Down>'] +let g:ycm_key_list_previous_completion = ['<C-p>', '<Up>'] +let g:SuperTabDefaultCompletionType = '<C-n>' +let g:UltiSnipsListSnippets="<C-b>" + +"" vim-youcompleteme +set rtp+=/usr/share/vim-youcompleteme + +"" vim-syntastic, vim-fugitive, ... +set rtp+=/usr/share/vim/addons + +"" vim-outliner +au! BufRead,BufNewFile *.otl setfiletype vo_base |