"
+
+${0}
+endsnippet
\ No newline at end of file
diff --git a/snippets/spip-php.json b/snippets/spip-php.json
new file mode 100644
index 0000000..cd2978b
--- /dev/null
+++ b/snippets/spip-php.json
@@ -0,0 +1,153 @@
+{
+ "bigint": {
+ "prefix": "bigint",
+ "body": "'bigint(${1:21}) NOT NULL',${0}",
+ "description": "SQL bigint(21)"
+ },
+ "float": {
+ "prefix": "float",
+ "body": "'float NOT NULL',${0}",
+ "description": "SQL float"
+ },
+ "tinyint": {
+ "prefix": "tinyint",
+ "body": "'tinyint(4) NOT NULL',${0}",
+ "description": "SQL tinyint(4)"
+ },
+ "decimal": {
+ "prefix": "decimal",
+ "body": "'decimal(10,2) DEFAULT \"0\" NOT NULL',${0}",
+ "description": "SQL decimal(10,2)"
+ },
+ "text": {
+ "prefix": "text",
+ "body": "'text NOT NULL DEFAULT \"\"',${0}",
+ "description": "SQL text NOT NULL"
+ },
+ "varchar": {
+ "prefix": "varchar",
+ "body": "'varchar(${1:255}) NOT NULL DEFAULT \"\"',${0}",
+ "description": "SQL varchar(25)"
+ },
+ "datetime": {
+ "prefix": "datetime",
+ "body": "'datetime NOT NULL DEFAULT \"0000-00-00 00:00:00\"',${0}",
+ "description": "SQL datetime"
+ },
+ "php": {
+ "prefix": "php",
+ "body": " ${3:\"\"},\n\t);\n\t${0}\n\treturn $valeurs;\n}\n\nfunction formulaires_${TM_FILENAME_BASE}_verifier_dist($$1){\n\t$$2 = _request('$2');\n\n\t$erreurs = array();\n\t//champs obligatoire\n\tforeach (array ('$2') as $obligatoire) {\n\t\tif (!_request($obligatoire)) $erreurs[$obligatoire] = 'Ce champs est obligatoire';\n\t}\n\n\t//autres erreurs\n\t$erreurs['$2'] = \"Ce champ ne convient pas.\";\n\n\t//Il y a des erreurs\n\tif (count($erreurs)) {\n\t\t$erreurs['message_erreur'] = 'Votre saisie contient des erreurs !';\n\t}\n\n\treturn $erreurs;\n}\n\nfunction formulaires_${TM_FILENAME_BASE}_traiter_dist($$1){\n\t$$2 = _request('$2');\n\n\t$retour = array();\n\t$retour['message_ok'] = \"bravo\";\n\t$retour['redirect'] = \"spip.php?page=perdu\";\n\t$retour['editable'] = true;\n\n\treturn $retour;\n}",
+ "description": "SPIP"
+ },
+ "action2": {
+ "prefix": "action2",
+ "body": " $${2:valeur_champs1},\n\t'${3:champs2}' => $${4:valeur_champs2},\n);\n$id_objet = objet_inserer($objet, $id_parent);\n//ou $id_objet=$ma_variable;\n\nobjet_modifier($objet, $id_objet, $set);",
+ "description": "SPIP API Objet"
+ },
+ "api_lien": {
+ "prefix": "api_lien",
+ "body": "// utilisation API editier_liens\n// http://www.spip.net/fr_article5477.html\ninclude_spip('action/editer_liens');\n\n$objets_source = array(\"${1:auteur}\"=>${2:id_auteur ou array});\n$objets_lies = array(\"${3:article}\"=>${:id_article ou array});\n${0}\n\nobjet_associer($objets_source, $objets_lies);",
+ "description": "SPIP API Lien"
+ },
+ "cache": {
+ "prefix": "cache",
+ "body": "include_spip('inc/invalideur');\nsuivre_invalideur(\"id='${1:id_objet}/1'\");\n${0}",
+ "description": "SPIP invalide cache"
+ },
+ "req": {
+ "prefix": "req",
+ "body": "_request('${1}')${0}",
+ "description": "SPIP _request()"
+ },
+ "array": {
+ "prefix": "array",
+ "body": "array(\n\t'${1}' => ${2},${0}\n\t);",
+ "description": "SPIP Array( X lignes)"
+ },
+ "array_ligne": {
+ "prefix": "array_ligne",
+ "body": "'${1:var}' => $$1,${0}",
+ "description": "SPIP Une ligne d'array"
+ },
+ "vd": {
+ "prefix": "vd",
+ "body": "var_dump($${1:var});\n${0}",
+ "description": "var_dump()"
+ },
+ "ec": {
+ "prefix": "ec",
+ "body": "echo ${1};\n${0}",
+ "description": "Echo"
+ },
+ "pre": {
+ "prefix": "pre",
+ "body": "echo \"\";\n\tprint_r($${1});\necho \"
\";\n${0}",
+ "description": " print_r"
+ },
+ "include": {
+ "prefix": "include",
+ "body": "include_spip('${1:fichier}');\n${0}",
+ "description": "SPIP include_spip"
+ },
+ "pipeline": {
+ "prefix": "pipeline",
+ "body": "/**\n * Charger des styles CSS\n *\n * @pipeline insert_head_css\n * @param string $flux Code html des styles CSS à charger\n * @return string Code html complété\n **/\nfunction ${1:prefix}_insert_head_css($flux){\n\t$flux .= '' . \"\\n\";\n\t$flux .= '' . \"\\n\";\n\treturn $flux;\n}\n${0}\n/**\n * Charger des scripts jquery\n *\n * @pipeline jqueryui_plugins\n * @param array $scripts Liste à charger\n * @return array Liste complétée\n **/\nfunction $1_jquery_plugins($scripts){\n\t$scripts[] = \"aa\";\n\t$scripts[] = produire_fond_statique('javascript/bigup.js');\n\treturn $scripts;\n}\n\n/**\n * Charger des scripts jquery ui\n *\n * @pipeline jqueryui_plugins\n * @param array $scripts Liste à charger\n * @return array Liste complétée\n **/\nfunction $1_jqueryui_plugins($scripts){\n\t$scripts[] = \"aa\";\n\treturn $scripts;\n}",
+ "description": "SPIP Les pipelines de base"
+ },
+ "debugspip": {
+ "prefix": "debugspip",
+ "body": "function debug_spip(){\n\tdefine('_DEBUG_SLOW_QUERIES', true);\n\tdefine('_BOUCLE_PROFILER', 5000);\n\tdefine('_LOG_FILTRE_GRAVITE', 8);\n\tdefine('_LOG_FILELINE',true);\n\tdefine('_DEBUG_AUTORISER', true);\n\tdefine('_MAX_LOG', 500000);\n\n\terror_reporting(E_ALL^E_NOTICE);\n\tini_set (\"display_errors\", \"On\");\n\tini_set(\"html_errors\", \"On\");\n\tini_set(\"allow_url_fopen\", \"On\");\n\tdefine('SPIP_ERREUR_REPORT',E_ALL^E_NOTICE);\n\tdefine('SPIP_ERREUR_REPORT_INCLUDE_PLUGINS',E_ALL^E_NOTICE);\n\n\n\tdefine('_NO_CACHE', -1);\n\tdefine('_INTERDIRE_COMPACTE_HEAD_ECRIRE', true);\n}\n\nif ( $_SERVER['SERVER_ADDR'] === \"127.0.0.1\") {\n\tdebug_spip();\n}\n\nif ( substr($_SERVER['SERVER_ADDR'],0,7) === \"192.168\") {\n\tdebug_spip();\n}",
+ "description": "SPIP define de debug"
+ },
+ "/*": {
+ "prefix": "/*",
+ "body": "/**\n * ${0}\n **/"
+ },
+ "doc": {
+ "prefix": "doc",
+ "body": "/**\n * ${1:function non documente}\n *\n * @param ${2}\n * @return ${0}\n * @author tofulm\n **/"
+ },
+ "fdoc": {
+ "prefix": "fdoc",
+ "body": "/**\n * ${4:fonction non documente}\n *\n * @param ${5}\n * @return ${3}\n * @author tofulm\n **/\nfunction ${1}(${2}){\n\t${6}\n }"
+ },
+ "spip_log": {
+ "prefix": "spip_log",
+ "body": "spip_log(${1},${2:\"gamuza\"});\n${0}",
+ "description": "SPIP fctn spip_log()"
+ }
+}
diff --git a/snippets/spip-scss.json b/snippets/spip-scss.json
new file mode 100644
index 0000000..9e26dfe
--- /dev/null
+++ b/snippets/spip-scss.json
@@ -0,0 +1 @@
+{}
\ No newline at end of file
diff --git a/snippets/spip-xml.json b/snippets/spip-xml.json
new file mode 100644
index 0000000..968a49b
--- /dev/null
+++ b/snippets/spip-xml.json
@@ -0,0 +1,7 @@
+{
+ "necessite": {
+ "prefix": "necessite",
+ "body": "\n${0}",
+ "description": "SPIP "
+ }
+}
\ No newline at end of file