Bonjour à tous !
J'utilise depuis quelques mois Emacs pour du C/C++, mais je suis en train d'apprendre le PHP. Cependant, Emacs ne reconnaît pas PHP, quand je crée un fichier avec l'extension .php, Emacs ne fait aucune coloration ou indentation, alors qu'avec un fichier .html il fait bien les deux. A quoi cela est-il du ?
Merci d'avance pour vos réponses
# php-mode
Posté par Crag . Évalué à 1.
Je n'utilise pas souvent Emacs, donc attend la réponse d'un pro mais en attendant si tu utilises une distribution basée sur Debian, installe le paquet php-elisp. Ca installera ça : https://github.com/emacs-php/php-mode
Tu pourrais aussi consulter le Wiki https://www.emacswiki.org/emacs/PhpMode
[^] # Re: php-mode
Posté par Crag . Évalué à 2.
d'après le Wiki, la raison pour laquelle ce mode n'est pas disponible par défaut est que les contributeurs de ce mode n'ont pas tous signé "les papiers pour Emacs" (cession des droits d'auteurs, j'imagine).
[^] # Re: php-mode
Posté par acâ . Évalué à 1.
J'utilise Ubuntu, dois-je l'installer ? J'ai cherché dans la docu d'Emacs mais étant débutant j'ai pas envie de faire une grosse bêtise en manipulant des choses que je ne maîtrise pas.
[^] # Re: php-mode
Posté par Crag . Évalué à 3.
Tu ne risques rien à faire un
sudo apt install php-elisp
;-)Tu peux faire l'opération inverse :
sudo apt remove php-elisp
.[^] # Re: php-mode
Posté par NeoX . Évalué à 2.
ou mieux
sudo apt purge php-elisp
pour virer aussi les fichiers de configuration
[^] # Re: php-mode
Posté par Crag . Évalué à 1.
J'avais envisagé ça mais finalement j'ai préféré la solution la moins destructrice ;-)
[^] # Re: php-mode
Posté par acâ . Évalué à 1.
Effectivement :). Mais je l'avais fait et ça n'avait pas corrigé le problème
[^] # Re: php-mode
Posté par aiolos . Évalué à 2.
Tu peux essayer de lancer à la main le mode php, en tapant
M-x php-mode
où M est la touche meta (alt ou echap par défaut). Si le mode se charge bien, tu auras la coloration syntaxique.Si ça ne se lance pas automatiquement à l'ouverture, il faudra ajouter dans ton .emacs :
(add-to-list 'auto-mode-alist '("\.php\'" . php-mode))
[^] # Re: php-mode
Posté par acâ . Évalué à 1.
La coloration et indentation fonctionne désormais avec le PHP après cette manipulation mais lorsque je crées un fichier .php et que j'y insère du HTML, les balises ne sont ni colorées ni indentées, en revanche le code à l'intérieur de <?php ?> est bien coloré.
[^] # Re: php-mode
Posté par aiolos . Évalué à 2. Dernière modification le 11 février 2021 à 17:54.
Je ne fais ni php, ni html, je ne connais pas les détails des modes appropriés.
Par contre, je suis utilisateur d'emacs, j'ai indiqué des méthodes génériques pour le mode qui a été mentionné par d'autres ;)
Edit: Oups, -=[ silmaril ]=- avait déjà répondu sur ce sujet.
[^] # Re: php-mode
Posté par acâ . Évalué à 1.
D'accord, merci de ton aide. D'ailleurs, pourquoi utiliser Emacs est bien ? Car en soit, même si j'apprécie l'utilisais, je ne trouve pas qu'il ait quelque chose en plus que Sublime Text. Je sais que ça n'est pas le lieu mais si tu pouvais me donner les raisons de pourquoi tu utilises Emacs, cela m'intéresserait.
[^] # Re: php-mode
Posté par aiolos . Évalué à 3.
Tout d'abord, Sublime n'est pas libre. Ensuite ce que j'aime bien dans emacs, c'est la polyvalence de l'outil, il peut tout faire, ou presque, selon ce que tu as envie qu'il fasse. Je l'ai utilisé aussi bien pour du Latex, du Python, du C, du Java, du Go, du Perl, du Bash, du Markdown, du cLisp, etc. Avec autant de productivité que sur des IDE dédiés ou de trucs "modernes" comme VS Codium.
Mais bon, il faut bien avouer que je commence à être un dino, et quand j'ai appris à programmer, il n'y avait pas des masses de choix en éditeur de code sous Linux (vous vous rendez pas compte, les jeunes, du chemin parcouru par le libre en 20 ans), alors j'ai pris des habitudes et pas trouvé trop de raisons d'en changer…
Et puis bon, cerise sur le gâteau, je parle le Lisp, alors ça va vite de se faire un petit hack bien crado quand on n'a pas la fonction qui va bien, ça aide à apprécier l'outil…
# ton fichier php contient-il le shebang php ?
Posté par NeoX . Évalué à 2.
en gros un code php commence toujours par
et parfois les éditeurs ne se basent pas sur l'extension mais sur le contenu, déterminé justement par ces motifs (shebang et autres)
[^] # Re: ton fichier php contient-il le shebang php ?
Posté par acâ . Évalué à 1.
J'ai bien ces deux balises oui. La coloration et indentation fonctionne désormais en PHP mais lorsque je crées un fichier .php et que j'y insère du HTML, les balises ne sont ni colorées ni indentées, en revanche le code à l'intérieur de <?php ?> est bien coloré.
[^] # Re: ton fichier php contient-il le shebang php ?
Posté par -=[ silmaril ]=- (site web personnel) . Évalué à 3.
Le mode "php" ne gère que la colloration syntaxique du code php, si tu mixe du php et autre chose (html, js, css, …) il va falloir regarder les solutions "multi-mode":
[^] # Re: ton fichier php contient-il le shebang php ?
Posté par acâ . Évalué à 1.
Très bien je vais regarder tout ça, merci à tous pour votre aide !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.