PageSourceSearch

https://udaacm74.fr/local/cache-js/jsdyn-javascript_porte_plume_start_js-fd07ab44.js?1788417265

js udaacm74.fr collected 2026-09-25 12:16:06 UTC 29,008 bytes, 849 lines download raw bytes

1/* #PRODUIRE{fond=javascript/porte_plume_start.js,hash=fc476921a100d1248a168ab07e0e36cf,inserer_auto_name_texte=1,lang=fr}
2   md5:68515f0b96d113639899b8129f7a616e */
3
4
5barre_outils_edition = {
6    "nameSpace": "edition",
7    "previewAutoRefresh": false,
8    "onEnter": {
9        "keepDefault": false,
10        "selectionType": "return",
11        "replaceWith": "\n"
12    },
13    "onShiftEnter": {
14        "keepDefault": false,
15        "replaceWith": "\n_ "
16    },
17    "onCtrlEnter": {
18        "keepDefault": false,
19        "replaceWith": "\n\n"
20    },
21    "markupSet": [
22        {
23            "name": "Transformer en {{{intertitre}}}",
24            "key": "H",
25            "className": "outil_header1",
26            "openWith": "\n{{{",
27            "closeWith": "}}}\n",
28            "selectionType": "line",
29            "dropMenu": [
30                {
31                    "id": "intertitre",
32                    "name": "Transformer en {{{intertitre}}}",
33                    "className": "outil_intertitre1",
34                    "openWith": "\n{{{",
35                    "closeWith": "}}}\n",
36                    "display": true,
37                    "selectionType": "line"
38                },
39                {
40                    "id": "intertitre2",
41                    "name": "Transformer en {{{**intertitre niveau deux}}}",
42                    "className": "outil_intertitre2",
43                    "openWith": "\n{{{**",
44                    "closeWith": "}}}\n",
45                    "display": true,
46                    "selectionType": "line"
47                },
48                {
49                    "id": "intertitre3",
50                    "name": "Transformer en {{{***intertitre niveau trois}}}",
51                    "className": "outil_intertitre3",
52                    "openWith": "\n{{{***",
53                    "closeWith": "}}}\n",
54                    "display": true,
55                    "selectionType": "line"
56                },
57                {
58                    "id": "alignerdroite",
59                    "name": "[\/Aligne \u00e0 droite\/] le paragraphe",
60                    "className": "outil_alignerdroite",
61                    "openWith": "\n[\/",
62                    "closeWith": "\/]\n",
63                    "display": true,
64                    "selectionType": "line"
65                },
66                {
67                    "id": "alignergauche",
68                    "name": "[!Aligne \u00e0 gauche\u00a0!] le paragraphe",
69                    "className": "outil_alignergauche",
70                    "openWith": "\n[!",
71                    "closeWith": "!]\n",
72                    "display": true,
73                    "lang": [
74                        "ar",
75                        "fa"
76                    ],
77                    "selectionType": "line"
78                },
79                {
80                    "id": "cadretexte",
81                    "name": "[(Encadrer)] le paragraphe",
82                    "className": "outil_cadretexte",
83                    "openWith": "\n[(",
84                    "closeWith": ")]\n",
85                    "display": true,
86                    "selectionType": "line"
87                },
88                {
89                    "id": "barre_cadre",
90                    "name": "Placer dans une <cadre>zone de saisie de texte<\/cadre>",
91                    "className": "outil_barre_cadre",
92                    "openWith": "\n<cadre>",
93                    "closeWith": "<\/cadre>\n",
94                    "display": true,
95                    "selectionType": "line"
96                }
97            ]
98        },
99        {
100            "name": "Mettre en {{gras}}",
101            "key": "B",
102            "className": "outil_bold",
103            "replaceWith": function(h){ return espace_si_accolade(h, '{{', '}}');},
104            "selectionType": "word",
105            "dropMenu": [
106                {
107                    "id": "italic",
108                    "name": "Mettre en {italique}",
109                    "key": "I",
110                    "className": "outil_italic",
111                    "replaceWith": function(h){ return espace_si_accolade(h, '{', '}');},
112                    "display": true,
113                    "selectionType": "word"
114                },
115                {
116                    "id": "petitescapitales",
117                    "name": "Mettre le texte en <sc>petites capitales<\/sc>",
118                    "className": "outil_petitescapitales",
119                    "openWith": "<sc>",
120                    "closeWith": "<\/sc>",
121                    "display": true,
122                    "selectionType": "word"
123                },
124                {
125                    "id": "stroke_through_et",
126                    "name": "<del>Barrer<\/del> le texte",
127                    "className": "outil_stroke_through_et",
128                    "openWith": "<del>",
129                    "closeWith": "<\/del>",
130                    "display": true,
131                    "selectionType": "word"
132                },
133                {
134                    "id": "miseenevidence",
135                    "name": "Mettre le texte en [*\u00e9vidence*]",
136                    "className": "outil_miseenevidence",
137                    "openWith": "[*",
138                    "closeWith": "*]",
139                    "display": true,
140                    "selectionType": "word"
141                },
142                {
143                    "id": "miseenevidence2",
144                    "name": "Mettre le texte en [**\u00e9vidence*] (2e couleur)",
145                    "className": "outil_miseenevidence2",
146                    "openWith": "[**",
147                    "closeWith": "*]",
148                    "display": true,
149                    "selectionType": "word"
150                },
151                {
152                    "id": "exposant",
153                    "name": "Mettre le texte en <sup>exposant<\/sup>",
154                    "className": "outil_exposant",
155                    "openWith": "<sup>",
156                    "closeWith": "<\/sup>",
157                    "display": true,
158                    "selectionType": "word"
159                },
160                {
161                    "id": "indice",
162                    "name": "Mettre le texte en <sub>indice<\/sub>",
163                    "className": "outil_indice",
164                    "openWith": "<sub>",
165                    "closeWith": "<\/sub>",
166                    "display": true,
167                    "selectionType": "word"
168                },
169                {
170                    "id": "barre_code",
171                    "name": "Mettre en forme un <code>code informatique<\/code>",
172                    "className": "outil_barre_code",
173                    "openWith": "<code>",
174                    "closeWith": "<\/code>",
175                    "display": true,
176                    "selectionType": "word"
177                }
178            ]
179        },
180        {
181            "name": "Mettre en liste",
182            "className": "outil_liste_ul separateur_avant",
183            "replaceWith": function(h){ return outil_liste(h, '*');},
184            "selectionType": "line",
185            "forceMultiline": true,
186            "dropMenu": [
187                {
188                    "id": "liste_ol",
189                    "name": "Mettre en liste num\u00e9rot\u00e9e",
190                    "className": "outil_liste_ol",
191                    "replaceWith": function(h){ return outil_liste(h, '#');},
192                    "display": true,
193                    "selectionType": "line",
194                    "forceMultiline": true
195                },
196                {
197                    "id": "desindenter",
198                    "name": "D\u00e9sindenter une liste",
199                    "className": "outil_desindenter",
200                    "replaceWith": function(h){return outil_desindenter(h);},
201                    "display": true,
202                    "selectionType": "line",
203                    "forceMultiline": true
204                },
205                {
206                    "id": "indenter",
207                    "name": "Indenter une liste",
208                    "className": "outil_indenter",
209                    "replaceWith": function(h){return outil_indenter(h);},
210                    "display": true,
211                    "selectionType": "line",
212                    "forceMultiline": true
213                }
214            ]
215        },
216        {
217            "name": "Transformer en [lien hypertexte->http:\/\/...]",
218            "key": "L",
219            "className": "outil_link separateur separateur_apres sepLink",
220            "openWith": "[",
221            "closeWith": "->[![Veuillez indiquer l\u2019adresse de votre lien (vous pouvez indiquer une adresse Internet sous la forme http:\/\/www.monsite.com, une adresse courriel, ou simplement indiquer le num\u00e9ro d\u2019un article de ce site.]!]]",
222            "dropMenu": [
223                {
224                    "id": "notes",
225                    "name": "Transformer en [[Note de bas de page]]",
226                    "className": "outil_notes",
227                    "openWith": "[[",
228                    "closeWith": "]]",
229                    "display": true,
230                    "selectionType": "word"
231                }
232            ]
233        },
234        {
235            "name": "Ins\u00e9rer\/modifier (le s\u00e9lectionner avant) un tableau",
236            "className": "outil_barre_tableau separateur_avant",
237            "replaceWith": function(markitup) { zone_selection = markitup.textarea; jQuery.modalboxload('https://udaacm74.fr/spip.php?page=typoenluminee_tableau_edit&modalbox=oui',{minWidth: '90%', minHeight: '90%', iframe: true, type: 'iframe'});},
238            "selectionType": "line"
239        },
240        {
241            "name": "<quote>Citer un message<\/quote>",
242            "key": "Q",
243            "className": "outil_quote separateur separateur_apres sepGuillemets",
244            "openWith": "<quote>",
245            "closeWith": "<\/quote>",
246            "selectionType": "word",
247            "dropMenu": [
248                {
249                    "id": "barre_poesie",
250                    "name": "Mettre en forme comme une <poesie>po\u00e9sie<\/poesie>",
251                    "className": "outil_barre_poesie",
252                    "openWith": "\n<poesie>\n",
253                    "closeWith": "\n<\/poesie>\n",
254                    "display": true,
255                    "selectionType": "word"
256                }
257            ]
258        },
259        {
260            "name": "Choisir un bloc",
261            "className": "outil_bloc",
262            "beforeInsert": function(h){ return jQuery.modalboxload('https://udaacm74.fr/ecrire/?exec=cibloc_popin2-choisir_bloc&var_zajax=contenu',{trapFocus: false});}
263        },
264        {
265            "name": "Choisir une ic\u00f4ne",
266            "className": "outil_icone",
267            "beforeInsert": function(h){ return jQuery.modalboxload('https://udaacm74.fr/ecrire/?exec=cibloc_popin2-choisir_icone&var_zajax=contenu',{trapFocus: false});}
268        },
269        {
270            "name": "Ins\u00e9rer un bouton",
271            "className": "outil_bouton",
272            "beforeInsert": function(h){ return jQuery.modalboxload('https://udaacm74.fr/ecrire/?exec=cibloc_popin2-choisir_bouton&var_zajax=contenu',{trapFocus: false});}
273        },
274        {
275            "name": "Entourer de \u00ab\u00a0guillemets\u00a0\u00bb",
276            "className": "outil_guillemets",
277            "openWith": "«",
278            "closeWith": "»",
279            "lang": [
280                "fr",
281                "eo",
282                "cpf",
283                "ar",
284                "es"
285            ],
286            "selectionType": "word",
287            "dropMenu": [
288                {
289                    "id": "guillemets_simples",
290                    "name": "Entourer de \u201cguillemets de second niveau\u201d",
291                    "className": "outil_guillemets_simples",
292                    "openWith": "“",
293                    "closeWith": "”",
294                    "display": true,
295                    "lang": [
296                        "fr",
297                        "eo",
298                        "cpf",
299                        "ar",
300                        "es"
301                    ],
302                    "selectionType": "word"
303                }
304            ]
305        },
306        {
307            "name": "Entourer de \u00ab\u00a0guillemets\u00a0\u00bb",
308            "className": "outil_guillemets_de",
309            "openWith": "„",
310            "closeWith": "“",
311            "lang": [
312                "bg",
313                "de",
314                "pl",
315                "hr",
316                "src"
317            ],
318            "selectionType": "word",
319            "dropMenu": [
320                {
321                    "id": "guillemets_de_simples",
322                    "name": "Entourer de \u201cguillemets de second niveau\u201d",
323                    "className": "outil_guillemets_de_simples",
324                    "openWith": "&sbquo;",
325                    "closeWith": "‘",
326                    "display": true,
327                    "lang": [
328                        "bg",
329                        "de",
330                        "pl",
331                        "hr",
332                        "src"
333                    ],
334                    "selectionType": "word"
335                }
336            ]
337        },
338        {
339            "name": "Entourer de \u00ab\u00a0guillemets\u00a0\u00bb",
340            "className": "outil_guillemets_simples separateur_avant",
341            "openWith": "“",
342            "closeWith": "”",
343            "lang_not": [
344                "fr",
345                "eo",
346                "cpf",
347                "ar",
348                "es",
349                "bg",
350                "de",
351                "pl",
352                "hr",
353                "src"
354            ],
355            "selectionType": "word",
356            "dropMenu": [
357                {
358                    "id": "guillemets_autres_simples",
359                    "name": "Entourer de \u201cguillemets de second niveau\u201d",
360                    "className": "outil_guillemets_uniques",
361                    "openWith": "‘",
362                    "closeWith": "’",
363                    "display": true,
364                    "lang_not": [
365                        "fr",
366                        "eo",
367                        "cpf",
368                        "ar",
369                        "es",
370                        "bg",
371                        "de",
372                        "pl",
373                        "hr",
374                        "src"
375                    ],
376                    "selectionType": "word"
377                }
378            ]
379        },
380        {
381            "name": "Ins\u00e9rer des caract\u00e8res sp\u00e9cifiques",
382            "className": "outil_caracteres separateur separateur_apres sepCaracteres",
383            "dropMenu": [
384                {
385                    "id": "A_grave",
386                    "name": "Ins\u00e9rer un \u00c0",
387                    "className": "outil_a_maj_grave",
388                    "replaceWith": "À",
389                    "display": true,
390                    "lang": [
391                        "fr",
392                        "eo",
393                        "cpf"
394                    ]
395                },
396                {
397                    "id": "E_aigu",
398                    "name": "Ins\u00e9rer un \u00c9",
399                    "className": "outil_e_maj_aigu",
400                    "replaceWith": "É",
401                    "display": true,
402                    "lang": [
403                        "fr",
404                        "eo",
405                        "cpf"
406                    ]
407                },
408                {
409                    "id": "E_grave",
410                    "name": "Ins\u00e9rer un \u00c8",
411                    "className": "outil_e_maj_grave",
412                    "replaceWith": "È",
413                    "display": true,
414                    "lang": [
415                        "fr",
416                        "eo",
417                        "cpf"
418                    ]
419                },
420                {
421                    "id": "aelig",
422                    "name": "Ins\u00e9rer un \u00e6",
423                    "className": "outil_aelig",
424                    "replaceWith": "æ",
425                    "display": true,
426                    "lang": [
427                        "fr",
428                        "eo",
429                        "cpf"
430                    ]
431                },
432                {
433                    "id": "AElig",
434                    "name": "Ins\u00e9rer un \u00c6",
435                    "className": "outil_aelig_maj",
436                    "replaceWith": "Æ",
437                    "display": true,
438                    "lang": [
439                        "fr",
440                        "eo",
441                        "cpf"
442                    ]
443                },
444                {
445                    "id": "oe",
446                    "name": "Ins\u00e9rer un \u0153",
447                    "className": "outil_oe",
448                    "replaceWith": "œ",
449                    "display": true,
450                    "lang": [
451                        "fr"
452                    ]
453                },
454                {
455                    "id": "OE",
456                    "name": "Ins\u00e9rer un \u0152",
457                    "className": "outil_oe_maj",
458                    "replaceWith": "Œ",
459                    "display": true,
460                    "lang": [
461                        "fr"
462                    ]
463                },
464                {
465                    "id": "Ccedil",
466                    "name": "Ins\u00e9rer un \u00c7",
467                    "className": "outil_ccedil_maj",
468                    "replaceWith": "Ç",
469                    "display": true,
470                    "lang": [
471                        "fr",
472                        "eo",
473                        "cpf"
474                    ]
475                },
476                {
477                    "id": "uppercase",
478                    "name": "Passer en majuscules",
479                    "className": "outil_uppercase",
480                    "replaceWith": function(markitup) { return markitup.selection.toUpperCase() },
481                    "display": true,
482                    "lang": [
483                        "fr",
484                        "en"
485                    ]
486                },
487                {
488                    "id": "lowercase",
489                    "name": "Passer en minuscules",
490                    "className": "outil_lowercase",
491                    "replaceWith": function(markitup) { return markitup.selection.toLowerCase() },
492                    "display": true,
493                    "lang": [
494                        "fr",
495                        "en"
496                    ]
497                }
498            ]
499        }
500    ]
501}
502
503 
504				// remplace ou cree -* ou -** ou -# ou -##
505				function outil_liste(h, c) {
506					if ((s = h.selection) && (r = s.match(/^-([*#]+) (.*)$/)))	 {
507						r[1] = r[1].replace(/[#*]/g, c);
508						s = '-'+r[1]+' '+r[2];
509					} else {
510						s = '-' + c + ' '+s;
511					}
512					return s;
513				}
514
515				// indente des -* ou -#
516				function outil_indenter(h) {
517					if (s = h.selection) {
518						if (s.substr(0,2)=='-*') {
519							s = '-**' + s.substr(2);
520						} else if (s.substr(0,2)=='-#') {
521							s = '-##' + s.substr(2);
522						} else {
523							s = '-* ' + s;
524						}
525					}
526					return s;
527				}
528
529				// desindente des -* ou -** ou -# ou -##
530				function outil_desindenter(h){
531					if (s = h.selection) {
532						if (s.substr(0,3)=='-**') {
533							s = '-*' + s.substr(3);
534						} else if (s.substr(0,3)=='-* ') {
535							s = s.substr(3);
536						} else if (s.substr(0,3)=='-##') {
537							s = '-#' + s.substr(3);
538						} else if (s.substr(0,3)=='-# ') {
539							s = s.substr(3);
540						}
541					}
542					return s;
543				}
544
545				// ajouter un espace avant, apres un {qqc} pour ne pas que
546				// gras {{}} suivi de italique {} donnent {{{}}}, mais { {{}} }
547				function espace_si_accolade(h, openWith, closeWith){
548					if (s = h.selection) {
549						// accolade dans la selection
550						if (s.charAt(0)=='{') {
551							return openWith + ' ' + s + ' ' + closeWith;
552						}
553						// accolade avant la selection
554						else if (c = h.textarea.selectionStart) {
555							if (h.textarea.value.charAt(c-1) == '{') {
556								return ' ' + openWith + s + closeWith + ' ';
557							}
558						}
559					}
560					return openWith + s + closeWith;
561				}
562				
563
564barre_outils_forum = {
565    "nameSpace": "forum",
566    "previewAutoRefresh": false,
567    "onEnter": {
568        "keepDefault": false,
569        "selectionType": "return",
570        "replaceWith": "\n"
571    },
572    "onShiftEnter": {
573        "keepDefault": false,
574        "replaceWith": "\n_ "
575    },
576    "onCtrlEnter": {
577        "keepDefault": false,
578        "replaceWith": "\n\n"
579    },
580    "markupSet": [
581        {
582            "name": "Mettre en {{gras}}",
583            "key": "B",
584            "className": "outil_bold",
585            "replaceWith": function(h){ return espace_si_accolade(h, '{{', '}}');},
586            "selectionType": "word"
587        },
588        {
589            "name": "Mettre en {italique}",
590            "key": "I",
591            "className": "outil_italic separateur_avant",
592            "replaceWith": function(h){ return espace_si_accolade(h, '{', '}');},
593            "selectionType": "word"
594        },
595        {
596            "name": "Transformer en [lien hypertexte->http:\/\/...]",
597            "key": "L",
598            "className": "outil_link separateur separateur_apres sepLink separateur_avant",
599            "openWith": "[",
600            "closeWith": "->[![Veuillez indiquer l\u2019adresse de votre lien (vous pouvez indiquer une adresse Internet sous la forme http:\/\/www.monsite.com, une adresse courriel, ou simplement indiquer le num\u00e9ro d\u2019un article de ce site.]!]]"
601        },
602        {
603            "name": "<quote>Citer un message<\/quote>",
604            "key": "Q",
605            "className": "outil_quote separateur separateur_apres sepGuillemets",
606            "openWith": "\n<quote>",
607            "closeWith": "<\/quote>\n",
608            "selectionType": "word"
609        },
610        {
611            "name": "Entourer de \u00ab\u00a0guillemets\u00a0\u00bb",
612            "className": "outil_guillemets",
613            "openWith": "«",
614            "closeWith": "»",
615            "lang": [
616                "fr",
617                "eo",
618                "cpf",
619                "ar",
620                "es"
621            ],
622            "selectionType": "word",
623            "dropMenu": [
624                {
625                    "id": "guillemets_simples",
626                    "name": "Entourer de \u201cguillemets de second niveau\u201d",
627                    "className": "outil_guillemets_simples",
628                    "openWith": "“",
629                    "closeWith": "”",
630                    "display": true,
631                    "lang": [
632                        "fr",
633                        "eo",
634                        "cpf",
635                        "ar",
636                        "es"
637                    ],
638                    "selectionType": "word"
639                }
640            ]
641        },
642        {
643            "name": "Entourer de \u00ab\u00a0guillemets\u00a0\u00bb",
644            "className": "outil_guillemets_de",
645            "openWith": "„",
646            "closeWith": "“",
647            "lang": [
648                "bg",
649                "de",
650                "pl",
651                "hr",
652                "src"
653            ],
654            "selectionType": "word",
655            "dropMenu": [
656                {
657                    "id": "guillemets_de_simples",
658                    "name": "Entourer de \u201cguillemets de second niveau\u201d",
659                    "className": "outil_guillemets_de_simples",
660                    "openWith": "&sbquo;",
661                    "closeWith": "‘",
662                    "display": true,
663                    "lang": [
664                        "bg",
665                        "de",
666                        "pl",
667                        "hr",
668                        "src"
669                    ],
670                    "selectionType": "word"
671                }
672            ]
673        },
674        {
675            "name": "Entourer de \u00ab\u00a0guillemets\u00a0\u00bb",
676            "className": "outil_guillemets_simples separateur_avant",
677            "openWith": "“",
678            "closeWith": "”",
679            "lang_not": [
680                "fr",
681                "eo",
682                "cpf",
683                "ar",
684                "es",
685                "bg",
686                "de",
687                "pl",
688                "hr",
689                "src"
690            ],
691            "selectionType": "word",
692            "dropMenu": [
693                {
694                    "id": "guillemets_autres_simples",
695                    "name": "Entourer de \u201cguillemets de second niveau\u201d",
696                    "className": "outil_guillemets_uniques",
697                    "openWith": "‘",
698                    "closeWith": "’",
699                    "display": true,
700                    "lang_not": [
701                        "fr",
702                        "eo",
703                        "cpf",
704                        "ar",
705                        "es",
706                        "bg",
707                        "de",
708                        "pl",
709                        "hr",
710                        "src"
711                    ],
712                    "selectionType": "word"
713                }
714            ]
715        }
716    ]
717}
718
719 
720				// remplace ou cree -* ou -** ou -# ou -##
721				function outil_liste(h, c) {
722					if ((s = h.selection) && (r = s.match(/^-([*#]+) (.*)$/)))	 {
723						r[1] = r[1].replace(/[#*]/g, c);
724						s = '-'+r[1]+' '+r[2];
725					} else {
726						s = '-' + c + ' '+s;
727					}
728					return s;
729				}
730
731				// indente des -* ou -#
732				function outil_indenter(h) {
733					if (s = h.selection) {
734						if (s.substr(0,2)=='-*') {
735							s = '-**' + s.substr(2);
736						} else if (s.substr(0,2)=='-#') {
737							s = '-##' + s.substr(2);
738						} else {
739							s = '-* ' + s;
740						}
741					}
742					return s;
743				}
744
745				// desindente des -* ou -** ou -# ou -##
746				function outil_desindenter(h){
747					if (s = h.selection) {
748						if (s.substr(0,3)=='-**') {
749							s = '-*' + s.substr(3);
750						} else if (s.substr(0,3)=='-* ') {
751							s = s.substr(3);
752						} else if (s.substr(0,3)=='-##') {
753							s = '-#' + s.substr(3);
754						} else if (s.substr(0,3)=='-# ') {
755							s = s.substr(3);
756						}
757					}
758					return s;
759				}
760
761				// ajouter un espace avant, apres un {qqc} pour ne pas que
762				// gras {{}} suivi de italique {} donnent {{{}}}, mais { {{}} }
763				function espace_si_accolade(h, openWith, closeWith){
764					if (s = h.selection) {
765						// accolade dans la selection
766						if (s.charAt(0)=='{') {
767							return openWith + ' ' + s + ' ' + closeWith;
768						}
769						// accolade avant la selection
770						else if (c = h.textarea.selectionStart) {
771							if (h.textarea.value.charAt(c-1) == '{') {
772								return ' ' + openWith + s + closeWith + ' ';
773							}
774						}
775					}
776					return openWith + s + closeWith;
777				}
778				
779
780barre_outils_vide = {
781    "nameSpace": "vide",
782    "previewAutoRefresh": false,
783    "markupSet": []
784}
785
786 
787
788
789;(function($){
790
791// 2 fonctions pour appeler le porte plume reutilisables pour d'autres plugins
792// on envoie dedans la selection jquery qui doit etre effectuee
793// ce qui evite des appels direct a markitup, aucazou on change de lib un j
793our
794$.fn.barre_outils = function(nom, settings) {
795	options = {
796		lang:'fr'
797	};
798	$.extend(options, settings);
799
800	return $(this)
801		.not('.markItUpEditor, .no_barre')
802		.markItUp(eval('barre_outils_' + nom), {lang:options.lang})
803		.trigger('markItUpEditor.loaded')
804		.parent().find('.markItUpButton a').attr('tabindex', -1) // ne pas tabuler les boutons
805		.end(); 
806};
807
808$.fn.barre_previsualisation = function(settings) {
809	options = {
810		previewParserPath:"index.php?action=porte_plume_previsu", // ici une url relative pour prive/public
811		textEditer:"Modifier",
812		textVoir:"Voir"
813	};
814	$.extend(options, settings);
815
816	return $(this)
817		.not('.pp_previsualisation, .no_previsualisation')
818		.previsu_spip(options)
819		.trigger('markItUpPreview.loaded')
820		.parent().find('.markItUpTabs a').attr('tabindex', -1) // ne pas tabuler les onglets
821		.end();
822};
823
824$(window).on('load', function(){
825	// ajoute les barres d'outils markitup
826	function barrebouilles(){
827		// fonction generique appliquee aux classes CSS :
828		// inserer_barre_forum, inserer_barre_edition, inserer_previsualisation
829		$('.formulaire_spip textarea.inserer_barre_forum').barre_outils('forum');
830		$('.formulaire_spip textarea.inserer_barre_edition').barre_outils('edition');
831		$('.formulaire_spip textarea.inserer_previsualisation').barre_previsualisation();
832
833		 
834		// fonction specifique aux formulaires de SPIP :
835		// barre de forum
836		$('textarea.textarea_forum').barre_outils('forum');
837		 
838		$('.formulaire_forum textarea[name=texte]').barre_outils('forum');
839		// barre d'edition et onglets de previsualisation
840		$('.formulaire_spip textarea[name=texte]')
841			.barre_outils('edition').end()
842			.barre_previsualisation();
843		
844	}
845	barrebouilles();
846	onAjaxLoad(barrebouilles);
847
848});
849})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.