From 5bad04bd35b01ff510ee9c639f8f233128b6f7c9 Mon Sep 17 00:00:00 2001
From: Antoine Marteau <antoine.marteau@g2elab.grenoble-inp.fr>
Date: Tue, 19 Jan 2021 00:44:07 +0100
Subject: [PATCH] vim snippets

---
 config/nvim/UltiSnips/pro.snippets | 122 +++++++++++++++++++++++++++++
 config/nvim/init.vim               |  12 +++
 recap_install_manjaro              |   2 +-
 3 files changed, 135 insertions(+), 1 deletion(-)
 create mode 100644 config/nvim/UltiSnips/pro.snippets

diff --git a/config/nvim/UltiSnips/pro.snippets b/config/nvim/UltiSnips/pro.snippets
new file mode 100644
index 0000000..85b94c1
--- /dev/null
+++ b/config/nvim/UltiSnips/pro.snippets
@@ -0,0 +1,122 @@
+################
+# Single Lines #
+################
+
+#include
+snippet inc "Include" b
+Include "$1.${2:pro}";
+endsnippet
+
+#region
+snippet reg "Define Region"
+$1 = Region[ $2 ];
+endsnippet
+
+#################
+# Curly entries #
+#################
+
+snippet na "Name"
+{ Name $1;${2: Type $3;}
+  $0
+}
+endsnippet
+
+snippet ca "Case"
+Case {
+  $0
+}
+endsnippet
+
+snippet jca "Jac Case"
+{ Region $1; Jacobian $2; }$0
+endsnippet
+
+################
+# Environments #
+################
+
+snippet gro "Group" b
+Group {
+	$0
+}
+endsnippet
+
+snippet jac "Jacobian" b
+Jacobian {
+	$0
+}
+endsnippet
+
+
+snippet int "Integration" b
+Integration {
+	$0
+}
+endsnippet
+
+snippet fun "Function" b
+Function {
+	$0
+}
+endsnippet
+
+snippet con "Constraint" b
+Constraint {
+	$0
+}
+endsnippet
+
+snippet spa "FunctionSpace" b
+FunctionSpace {
+	$0
+}
+endsnippet
+
+snippet for "Formulation" b
+Formulation {
+	$0
+}
+endsnippet
+
+snippet res "Resolution" b
+Resolution {
+	$0
+}
+endsnippet
+
+snippet ppr "PostProcessing" b
+PostProcessing {
+	$0
+}
+endsnippet
+
+snippet pop "PostOperation" b
+PostOperation {
+	$0
+}
+endsnippet
+
+##########
+# Macros #
+##########
+
+snippet if "If Else EndIf"
+If ($1)
+	$0${2:
+Else
+	}
+EndIf
+endsnippet
+
+snippet iff "If ElseIf ElseIf Else EndIf"
+If ($1)
+	$0${2:
+ElseIf ($3)
+	${4:
+ElseIf ($5)
+	}}${6:
+Else
+	}
+EndIf
+endsnippet
diff --git a/config/nvim/init.vim b/config/nvim/init.vim
index 795def2..f940bb7 100644
--- a/config/nvim/init.vim
+++ b/config/nvim/init.vim
@@ -37,6 +37,9 @@ Plug 'gruvbox-community/gruvbox' " color scheme
 Plug 'junegunn/fzf', {'do': { -> fzf#install() } } " autocompletion recherches
 Plug 'junegunn/fzf.vim'
 
+
+Plug 'SirVer/ultisnips' " snipet engine
+
 Plug 'tpope/vim-fugitive' "git integrations
 Plug 'stsewd/fzf-checkout.vim' "gestion branches et tags avec fzf
 
@@ -329,3 +332,12 @@ nnoremap <leader>dw :call GotoWindow(g:vimspector_session_windows.watches)<CR>
 nnoremap <leader>ds :call GotoWindow(g:vimspector_session_windows.stack_trace)<CR>
 nnoremap <leader>do :call GotoWindow(g:vimspector_session_windows.output)<CR>
 nnoremap <leader>de :call vimspector#Reset()<CR>
+
+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+"""""""""" ultisnips
+"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
+
+let g:UltiSnipsEditSplit = 'horizontal'
+
+" snippets pro.snippets > cpp.snippets
+autocmd BufNewFile,BufReadPost *.pro UltiSnipsAddFiletypes pro.cpp
diff --git a/recap_install_manjaro b/recap_install_manjaro
index 6f77645..fb47b09 100644
--- a/recap_install_manjaro
+++ b/recap_install_manjaro
@@ -1,4 +1,4 @@
-# dotfiles necessaires : .zshrc init.vim picom.conf kitty.conf
+# dotfiles necessaires : .zshrc init.vim picom.conf kitty.conf i3/conf nvim/UltiSnips nvim/coc_config.json
 
 # config oh-my-zsh
 # copier .zshrc
-- 
GitLab