Etant fortement impliqué dans le développement de python-mode.el ces dernières années, mon commentaire est probablement biaisé : Je recommande aux débutants Emacs de rester avec python.el. L'auteur mérite également d'être félicité pour certaines approches utiles.
python-mode.el est conçu pour améliorer la productivité des éditeurs. Il facilite l'exécution en parallèle des shells python2 et python3 ou IPython.
Il réduit le nombre de frappes nécessaires en fournissant des commandes personnalisées. Il accélère les modifications, facilite la programmation vocale, la saisie par macro, etc.
Prend en charge les caractéristiques du langage Python qui ne sont pas encore connues de python.el :
py-up, py-down - déplacement de blocs imbriqués
Évitez les fautes de frappe en cherchant des formes au point, une clause par exemple :
py-backward-clause
py-copy-clause
py-down-clause
...
Il n'est pas nécessaire de procéder à des adaptations lorsque l'on teste différentes versions :
py-execute-clause-python2
py-execute-clause-python3
py-execute-clause-ipython
...
- notion de parties plus fines -
py-expression
, py-minor-expression
- exécutant des exécutables (I)Python versionnés et mis en parallèle, il n'est pas nécessaire de redéfinir l'exécutable Python par défaut.
- la suppression de la nécessité d'une région active marquée auparavant, voir
py-execute-line
et bien d'autres encore
Pour avoir une vue d'ensemble, jetez un coup d'œil au menu. Le répertoire "doc" répertorie les commandes.
La qualité du code étant améliorée, il est possible de comparer les deux modes en vérifiant la présence des bogues énumérés dans la section http://debbugs.gnu.org/ . Voir par exemple les bogues #15510, #16875 ; ou http://lists.gnu.org/archive/html/help-gnu-emacs/2014-04/msg00250.html
J'ai déjà commenté la "granularité approximative de l'engagement" : Bien que tkf ait fondamentalement raison de rechercher des morceaux plus petits, les conditions me poussent parfois à abandonner la règle. Des parties considérables ne sont pas écrites à la main, mais par des programmes résidant dans le répertoire "devel". Ils créent des fichiers utilisés en premier lieu dans la branche développement - par exemple components-python-mode. Lors du lancement d'une nouvelle fonctionnalité, il n'est souvent pas évident de savoir si le chemin choisi est fructueux. Après une centaine de tentatives de validation, il peut s'avérer impossible ou peu recommandable. Au lieu de poster tous les méandres, nous avions l'habitude de garder cette branche expérimentale pendant plusieurs jours dans ces cas-là et de vérifier que les tests étaient réussis.
BTW suppose que tkf ne se réfère pas aux erreurs de compilation --qui seraient recherchées instantanément-- mais aux avertissements de compilation. Malheureusement, Emacs mélange les avertissements concernant les préférences de style sauvegardées avec de vraies erreurs.