Mise en évidence de la syntaxe pour les zones de texte côté administrateur (lors de la modification des nœuds ou des blocs) [fermé]

8

J'essaie de trouver un module qui mettra en évidence HTML (et de préférence CSS / JavaScript à l'intérieur des balises de style / script, mais c'est un bonus supplémentaire) lorsque je modifie un nœud ou un bloc dans le côté administratif de Drupal.

Bien que j'aie recherché sur drupal.org des modules de coloration syntaxique et rencontré des options comme GeSHi et Syntax Highlighter , ces deux semblent être pour le contenu final accessible au public et non pour le côté administratif. Ai-je tort et est-ce que l'on me conviendrait? J'ai également vu quelques projets qui mettent en évidence des blocs de code PHP, mais c'est moins important pour moi que HTML / CSS / JavaScript.

Je n'utilise jamais d'éditeur WYSIWYG pour mon propre code HTML, mais une mise en évidence serait très utile pour éditer mon contenu.

phette23
la source
La question @Bala concerne la mise en évidence de la syntaxe dans l' éditeur . Les formats de texte (filtres) sont à afficher . Vous ne voyez rien de pertinent dans l'article que vous avez lié
Mołot
1
@ Mołot fera cet exercice drupal.org/project/ace_editor pour vous, mais il ressemble complètement à l'éditeur de code
Bala
@Bala, comme indiqué dans votre réponse, je n'ai pas réussi à faire fonctionner Ace - sa barre était bien affichée, aucune erreur dans la console js ou dans le chien de garde, mais cela ne mettait simplement rien en évidence. Testé sur les versions de développement et de 2012 avec le même (manque de) résultat. Si vous pouvez montrer comment le configurer étape par étape, ce serait parfaitement OK :)
Mołot
@ Mołot désolé, je viens de remarquer ce commentaire.
Bala

Réponses:

4

J'utilise le module BUEditor , pour lequel vous pouvez ajouter une coloration syntaxique avec une configuration supplémentaire . Vous pouvez spécifier d'autoriser uniquement les administrateurs à accéder à cette interface via la page d'options du module.

Instructions étape par étape

  1. Installez le module BUEditor (j'ai utilisé 1.6).
  2. Téléchargez bue.highlight.min.css et bue.highlight.min.js à partir de cette page . J'ai placé ces fichiers dans un bueditorrépertoire à l'intérieur du répertoire de mon thème personnalisé.
  3. Aller à la page de configuration BUEditor: /admin/config/content/bueditor. Modifiez les paramètres de la ou des versions pertinentes de BUEditor (probablement par défaut, mais cela dépend de celui que vous attribuez à chaque rôle - si vous le souhaitez, vous pouvez configurer différentes options BUEditor par rôle, mais vous devrez ensuite configurer la syntaxe mise en évidence pour chacun.)
  4. Sur l'écran des paramètres de l'éditeur, cliquez sur l' onglet Chemins de l' éditeur , puis ajoutez les fichiers de bibliothèque spécifiques à l' éditeur suivants ( mon exemple suppose que vous placez le JS dans votre répertoire de thème. ):

    % THEME / bueditor / bue.highlight.min.css
    % THEME / bueditor / bue.highlight.min.js exemple de chemins de l'éditeur

  5. Ensuite, faites défiler vers le bas de cette page (sous Boutons ) et ajoutez tpl:syntaxavec ce code:

js: BUE.postprocess._turnOnHlight = function (E, $) {setTimeout (function () {E.highlight ('html')}); };

exemple de syntaxe

Enregistrez ensuite la configuration et vous devriez être prêt à partir.

Patrick Kenny
la source
Merci mais c'est prety mauvais hilighting. Je l'ai utilisé sur certains sites auparavant mais je ne l'utilise plus. Il ne supporte pas le hilighting imbriqué. Par exemple, si vous écrivez en HTML puis ouvrez une balise PHP, vous n'obtiendrez pas de mise en surbrillance pour votre code php. Avez-vous trouvé quelque chose de mieux?
ANDiTKO
Désolé, je sais que ce n'est pas parfait, mais c'est la seule solution que je connaisse.
Patrick Kenny
Bonjour. Impossible de le faire fonctionner. N'est-ce pas dépassé? Et pourriez-vous fournir des instructions centrées sur Drupal? Voir la description de la prime - n'a pas pu le comprendre, donc si vous l'utilisez, pourriez-vous mettre à jour / développer?
Mołot
@ Mołot Non, ce n'est pas obsolète. Cela a fonctionné sur mon site pendant 1,5 ans sans changement, et j'ai la version actuelle installée. C'est difficile à configurer, j'ai donc ajouté des instructions étape par étape.
Patrick Kenny
De plus, pour une raison quelconque, le formateur Markdown a continué à gâcher ma mise en forme, donc ce n'est pas très joli. Désolé, je ne peux pas le formater plus proprement.
Patrick Kenny
4

Le module Wysiwyg CodeMagic a l'option, voir la démo

CodeMagic est un plugin avancé d'édition de code source pour Tinymce . Il intègre la bibliothèque CodeMirror pour la coloration de la syntaxe et la bibliothèque JSBeautifier pour le formatage et l'indentation du code.

Comme je l'ai déjà mentionné Ace Code Editor , vous pouvez essayer ce patch avec la combinaison de l'éditeur wysiwyg. Vous pouvez trouver le patch ici

Bala
la source
1
Merde, maintenant il semble que je devrai fixer des secondes primes pour être juste;) Surtout si les deux réponses fonctionneront. Besoin de les tester.
Mołot
@ Mołot N'hésitez pas à attribuer la prime à cette réponse (ou à toute réponse future) si la coloration syntaxique fonctionne bien. La mise en évidence de la syntaxe BUEditor fonctionne mais selon le navigateur, elle peut devenir un peu moche; c'est une solution qui fonctionne, mais je doute que ce soit la meilleure solution.
Patrick Kenny