'edition', #'previewAutoRefresh'=> true, #'previewParserPath' => url_absolue(generer_url_public('preview')), 'onShiftEnter' => array('keepDefault' => false, 'replaceWith' => "\n_ "), 'onCtrlEnter' => array('keepDefault' => false, 'replaceWith' => "\n\n"), // garder les listes si on appuie sur entree 'onEnter' => array('keepDefault' => false, 'selectionType' => 'return', 'replaceWith' => "\n"), // Utile quand on saisi du code, mais pas accessible ! #'onTab' => array('keepDefault'=>false, 'replaceWith'=>"\t"), 'markupSet' => array( // H1 - {{{ array( 'id' => 'header1', 'name' => _T('barreoutils:barre_intertitre'), 'key' => 'H', 'className' => 'outil_header1', 'openWith' => "\n{{{", 'closeWith' => "}}}\n", 'display' => true, 'selectionType' => 'line', ), // Bold - {{ array( 'id' => 'bold', 'name' => _T('barreoutils:barre_gras'), 'key' => 'B', 'className' => 'outil_bold', 'replaceWith' => "function(h){ return espace_si_accolade(h, '{{', '}}');}", //"openWith" => "{{", //"closeWith" => "}}", 'display' => true, 'selectionType' => 'word', ), // Italic - { array( 'id' => 'italic', 'name' => _T('barreoutils:barre_italic'), 'key' => 'I', 'className' => 'outil_italic', 'replaceWith' => "function(h){ return espace_si_accolade(h, '{', '}');}", //"openWith" => "{", //"closeWith" => "}", 'display' => true, 'selectionType' => 'word', ), // montrer une suppression array( 'id' => 'stroke_through', 'name' => _T('barreoutils:barre_barre'), // :-) 'className' => 'outil_stroke_through', 'openWith' => '', 'closeWith' => '', 'display' => true, 'selectionType' => 'word', ), // listes -* array( 'id' => 'liste_ul', 'name' => _T('barreoutils:barre_liste_ul'), 'className' => 'outil_liste_ul', 'replaceWith' => "function(h){ return outil_liste(h, '*');}", 'display' => true, 'selectionType' => 'line', 'forceMultiline' => true, 'dropMenu' => array( // liste -# array( 'id' => 'liste_ol', 'name' => _T('barreoutils:barre_liste_ol'), 'className' => 'outil_liste_ol', 'replaceWith' => "function(h){ return outil_liste(h, '#');}", 'display' => true, 'selectionType' => 'line', 'forceMultiline' => true, ), // desindenter array( 'id' => 'desindenter', 'name' => _T('barreoutils:barre_desindenter'), 'className' => 'outil_desindenter', 'replaceWith' => 'function(h){return outil_desindenter(h);}', 'display' => true, 'selectionType' => 'line', 'forceMultiline' => true, ), // indenter array( 'id' => 'indenter', 'name' => _T('barreoutils:barre_indenter'), 'className' => 'outil_indenter', 'replaceWith' => 'function(h){return outil_indenter(h);}', 'display' => true, 'selectionType' => 'line', 'forceMultiline' => true, ), ), ), // separation array( 'id' => 'sepLink', // trouver un nom correct ! 'separator' => '---------------', 'display' => true, ), // lien spip array( 'id' => 'link', 'name' => _T('barreoutils:barre_lien'), 'key' => 'L', 'className' => 'outil_link', 'openWith' => '[', 'closeWith' => '->[![' . _T('barreoutils:barre_lien_input') . ']!]]', 'display' => true, ), // note en bas de page spip array( 'id' => 'notes', 'name' => _T('barreoutils:barre_note'), 'className' => 'outil_notes', 'openWith' => '[[', 'closeWith' => ']]', 'display' => true, 'selectionType' => 'word', ), // separation array( 'id' => 'sepGuillemets', 'separator' => '---------------', 'display' => true, ), // quote spip // (affichee dans forum) array( 'id' => 'quote', 'name' => _T('barreoutils:barre_quote'), 'key' => 'Q', 'className' => 'outil_quote', 'openWith' => "\n", 'closeWith' => "\n", 'display' => true, 'selectionType' => 'word', 'dropMenu' => array( // poesie spip array( 'id' => 'barre_poesie', 'name' => _T('barreoutils:barre_poesie'), 'className' => 'outil_poesie', 'openWith' => "\n<poesie>", 'closeWith' => "</poesie>\n", 'display' => true, 'selectionType' => 'line', ), ), ), // guillemets array( 'id' => 'guillemets', 'name' => _T('barreoutils:barre_guillemets'), 'className' => 'outil_guillemets', 'openWith' => '«', 'closeWith' => '»', 'display' => true, 'lang' => array('fr', 'eo', 'cpf', 'ar', 'es'), 'selectionType' => 'word', 'dropMenu' => array( // guillemets internes array( 'id' => 'guillemets_simples', 'name' => _T('barreoutils:barre_guillemets_simples'), 'className' => 'outil_guillemets_simples', 'openWith' => '“', 'closeWith' => '”', 'display' => true, 'lang' => array('fr', 'eo', 'cpf', 'ar', 'es'), 'selectionType' => 'word', ), ) ), // guillemets de array( 'id' => 'guillemets_de', 'name' => _T('barreoutils:barre_guillemets'), 'className' => 'outil_guillemets_de', 'openWith' => '„', 'closeWith' => '“', 'display' => true, 'lang' => array('bg', 'de', 'pl', 'hr', 'src'), 'selectionType' => 'word', 'dropMenu' => array( // guillemets de, simples array( 'id' => 'guillemets_de_simples', 'name' => _T('barreoutils:barre_guillemets_simples'), 'className' => 'outil_guillemets_de_simples', 'openWith' => '‚', 'closeWith' => '‘', 'display' => true, 'lang' => array('bg', 'de', 'pl', 'hr', 'src'), 'selectionType' => 'word', ), ) ), // guillemets autres langues array( 'id' => 'guillemets_autres', 'name' => _T('barreoutils:barre_guillemets'), 'className' => 'outil_guillemets_simples', 'openWith' => '“', 'closeWith' => '”', 'display' => true, 'lang_not' => array('fr', 'eo', 'cpf', 'ar', 'es', 'bg', 'de', 'pl', 'hr', 'src'), 'selectionType' => 'word', 'dropMenu' => array( // guillemets simples, autres langues array( 'id' => 'guillemets_autres_simples', 'name' => _T('barreoutils:barre_guillemets_simples'), 'className' => 'outil_guillemets_uniques', 'openWith' => '‘', 'closeWith' => '’', 'display' => true, 'lang_not' => array('fr', 'eo', 'cpf', 'ar', 'es', 'bg', 'de', 'pl', 'hr', 'src'), 'selectionType' => 'word', ), ) ), // separation array( 'id' => 'sepCaracteres', 'separator' => '---------------', 'display' => true, ), // icones clavier array( 'id' => 'grpCaracteres', 'name' => _T('barreoutils:barre_inserer_caracteres'), 'className' => 'outil_caracteres', 'display' => true, 'dropMenu' => array( // A majuscule accent grave array( 'id' => 'A_grave', 'name' => _T('barreoutils:barre_a_accent_grave'), 'className' => 'outil_a_maj_grave', 'replaceWith' => 'À', 'display' => true, 'lang' => array('fr', 'eo', 'cpf'), ), // E majuscule accent aigu array( 'id' => 'E_aigu', 'name' => _T('barreoutils:barre_e_accent_aigu'), 'className' => 'outil_e_maj_aigu', 'replaceWith' => 'É', 'display' => true, 'lang' => array('fr', 'eo', 'cpf'), ), // E majuscule accent grave array( 'id' => 'E_grave', 'name' => _T('barreoutils:barre_e_accent_grave'), 'className' => 'outil_e_maj_grave', 'replaceWith' => 'È', 'display' => true, 'lang' => array('fr', 'eo', 'cpf'), ), // e dans le a array( 'id' => 'aelig', 'name' => _T('barreoutils:barre_ea'), 'className' => 'outil_aelig', 'replaceWith' => 'æ', 'display' => true, 'lang' => array('fr', 'eo', 'cpf'), ), // e dans le a majuscule array( 'id' => 'AElig', 'name' => _T('barreoutils:barre_ea_maj'), 'className' => 'outil_aelig_maj', 'replaceWith' => 'Æ', 'display' => true, 'lang' => array('fr', 'eo', 'cpf'), ), // oe array( 'id' => 'oe', 'name' => _T('barreoutils:barre_eo'), 'className' => 'outil_oe', 'replaceWith' => 'œ', 'display' => true, 'lang' => array('fr'), ), // OE array( 'id' => 'OE', 'name' => _T('barreoutils:barre_eo_maj'), 'className' => 'outil_oe_maj', 'replaceWith' => 'Œ', 'display' => true, 'lang' => array('fr'), ), // c cedille majuscule array( 'id' => 'Ccedil', 'name' => _T('barreoutils:barre_c_cedille_maj'), 'className' => 'outil_ccedil_maj', 'replaceWith' => 'Ç', 'display' => true, 'lang' => array('fr', 'eo', 'cpf'), ), // Transformation en majuscule array( 'id' => 'uppercase', 'name' => _T('barreoutils:barre_gestion_cr_changercassemajuscules'), 'className' => 'outil_uppercase', 'replaceWith' => 'function(markitup) { return markitup.selection.toUpperCase() }', 'display' => true, 'lang' => array('fr', 'en'), ), // Transformation en minuscule array( 'id' => 'lowercase', 'name' => _T('barreoutils:barre_gestion_cr_changercasseminuscules'), 'className' => 'outil_lowercase', 'replaceWith' => 'function(markitup) { return markitup.selection.toLowerCase() }', 'display' => true, 'lang' => array('fr', 'en'), ), ), ), // Groupe de Codes informatiques. array( 'id' => 'sepCode', 'separator' => '---------------', 'display' => true, ), array( // groupe code et bouton 'id' => 'grpCode', 'name' => _T('barreoutils:barre_inserer_code'), 'className' => 'outil_code', 'openWith' => '', 'closeWith' => '', 'display' => true, 'dropMenu' => array( // bouton array( 'id' => 'cadre', 'name' => _T('barreoutils:barre_inserer_cadre'), 'className' => 'outil_cadre', 'openWith' => "\n", 'closeWith' => "\n", 'display' => true, ), ), ), /* inutile (origine de markitup et non de spip) // separation array( "id" => "sepPreview", // trouver un nom correct ! "separator" => "---------------", "display" => true, ), // clean array( "id" => 'clean', "name" => _T('barreoutils:barre_clean'), "className" => "outil_clean", "replaceWith" => 'function(markitup) { return markitup.selection.replace(/<(.*?)>/g, "") }', "display" => true, ), // preview array( "id" => 'preview', "name" => _T('barreoutils:barre_preview'), "className" => "outil_preview", "call" => "preview", "display" => true, ), */ ), 'functions' => " // remplace ou cree -* ou -** ou -# ou -## function outil_liste(h, c) { if ((s = h.selection) && (r = s.match(/^-([*#]+) (.*)\$/))) { r[1] = r[1].replace(/[#*]/g, c); s = '-'+r[1]+' '+r[2]; } else { s = '-' + c + ' '+s; } return s; } // indente des -* ou -# function outil_indenter(h) { if (s = h.selection) { if (s.substr(0,2)=='-*') { s = '-**' + s.substr(2); } else if (s.substr(0,2)=='-#') { s = '-##' + s.substr(2); } else { s = '-* ' + s; } } return s; } // desindente des -* ou -** ou -# ou -## function outil_desindenter(h){ if (s = h.selection) { if (s.substr(0,3)=='-**') { s = '-*' + s.substr(3); } else if (s.substr(0,3)=='-* ') { s = s.substr(3); } else if (s.substr(0,3)=='-##') { s = '-#' + s.substr(3); } else if (s.substr(0,3)=='-# ') { s = s.substr(3); } } return s; } // ajouter un espace avant, apres un {qqc} pour ne pas que // gras {{}} suivi de italique {} donnent {{{}}}, mais { {{}} } function espace_si_accolade(h, openWith, closeWith){ if (s = h.selection) { // accolade dans la selection if (s.charAt(0)=='{') { return openWith + ' ' + s + ' ' + closeWith; } // accolade avant la selection else if (c = h.textarea.selectionStart) { if (h.textarea.value.charAt(c-1) == '{') { return ' ' + openWith + s + closeWith + ' '; } } } return openWith + s + closeWith; } ", )); $set->cacher(array( 'stroke_through', 'clean', 'preview', )); return $set; } /** * Définitions des liens entre css et icones * * @return array * Couples identifiant de bouton => nom de l'image (ou tableau nom, position haut, position bas) */ function barre_outils_edition_icones() { return array( //'outil_header1' => 'text_heading_1.png', 'outil_header1' => array('spt-v1.png', '-10px -226px'), //'intertitre.png' 'outil_bold' => array('spt-v1.png', '-10px -478px'), //'text_bold.png' 'outil_italic' => array('spt-v1.png', '-10px -586px'), //'text_italic.png' 'outil_stroke_through' => array('spt-v1.png', '-10px -946px'), //'text_strikethrough.png' 'outil_liste_ul' => array('spt-v1.png', '-10px -622px'), //'text_list_bullets.png' 'outil_liste_ol' => array('spt-v1.png', '-10px -658px'), //'text_list_numbers.png' 'outil_indenter' => array('spt-v1.png', '-10px -514px'), //'text_indent.png' 'outil_desindenter' => array('spt-v1.png', '-10px -550px'), //'text_indent_remove.png' //'outil_quote' => 'text_indent.png', 'outil_quote' => array('spt-v1.png', '-10px -442px'), //'quote.png' 'outil_poesie' => array('spt-v1.png', '-10px -1050px'), //'poesie.png' //'outil_link' => 'world_link.png', 'outil_link' => array('spt-v1.png', '-10px -298px'), //'lien.png' 'outil_notes' => array('spt-v1.png', '-10px -334px'), //'notes.png' 'outil_guillemets' => array('spt-v1.png', '-10px -910px'), //'guillemets.png' 'outil_guillemets_simples' => array('spt-v1.png', '-10px -802px'), //'guillemets-simples.png' 'outil_guillemets_de' => array('spt-v1.png', '-10px -766px'), //'guillemets-de.png' 'outil_guillemets_de_simples' => array('spt-v1.png', '-10px -838px'), //'guillemets-uniques-de.png' 'outil_guillemets_uniques' => array('spt-v1.png', '-10px -874px'), //'guillemets-uniques.png' 'outil_caracteres' => array('spt-v1.png', '-10px -262px'), //'keyboard.png' 'outil_a_maj_grave' => array('spt-v1.png', '-10px -82px'), //'agrave-maj.png' 'outil_e_maj_aigu' => array('spt-v1.png', '-10px -154px'), //'eacute-maj.png' 'outil_e_maj_grave' => array('spt-v1.png', '-10px -190px'), //'eagrave-maj.png' 'outil_aelig' => array('spt-v1.png', '-10px -46px'), //'aelig.png' 'outil_aelig_maj' => array('spt-v1.png', '-10px -10px'), //'aelig-maj.png' 'outil_oe' => array('spt-v1.png', '-10px -406px'), //'oelig.png' 'outil_oe_maj' => array('spt-v1.png', '-10px -370px'), //'oelig-maj.png' 'outil_ccedil_maj' => array('spt-v1.png', '-10px -118px'), //'ccedil-maj.png' 'outil_uppercase' => array('spt-v1.png', '-10px -730px'), //'text_uppercase.png' 'outil_lowercase' => array('spt-v1.png', '-10px -694px'), //'text_lowercase.png' 'outil_code' => array('spt-v1.png', '-10px -1086px'), 'outil_cadre' => array('spt-v1.png', '-10px -1122px'), 'outil_clean' => array('spt-v1.png', '-10px -982px'), //'clean.png' 'outil_preview' => array('spt-v1.png', '-10px -1018px'), //'eye.png' ); }