Logiciel avec auto-indentation

sans probleme, les yeux bandés avec une main dans le dos si il veut.

Je suis bien du meme avis, mais chut :stuck_out_tongue: j’en connait qui seraient pas d’accord. J’ai un collegue qu’est fan de spiderman, il apprecierait pas ce genre de « blaspheme ».

Emacs ca marche trop bien si on l’utilise avec des pédales !

ouais mais le srufeur d’argent il s’est defait du symbiote (le meme que venom) super facilement et en plus il a poutré carnage avec limite une main dans le dos.

Bussiere

Et si vous vous recentriez un peu sur le sujet hein?
Parce que bon, que Spiderman soit une tapette qui se fait bouffer par le surfeur d’argent, c’est pas ça qui va aider MegaMax :stuck_out_tongue:

[quote=« Coldorak, post:25, topic: 29558 »]Et si vous vous recentriez un peu sur le sujet hein?
Parce que bon, que Spiderman soit une tapette qui se fait bouffer par le surfeur d’argent, c’est pas ça qui va aider MegaMax :P[/quote]

C’est pas pire que de lui conseiller emacs ! I demande un editeur, vous lui donnez un tetris… :stuck_out_tongue:

C’est entièrement vrai, je te l’accorde sans réserve. j’ai eu la flemme…

Je suis assez chieur dans mes posts (j’ai sorti le terme moi-même), mais j’essaie de ne pas m’en prendre à des gens, histoire de limiter un peu les dégats. Et je suppose qu’on est maintenant d’accord sur un point: quand on veut aller vite, on tend à déraper…

Bon, ben sans rancune en tous cas,

Sinon, à tête reposée, l’éditeur de Wolf reprend une partie des meilleures idées d’emacs tout en étant immédiatement accessible.
Peut-être un bon soft pour qui n’a pas les moyens temporels d’approfondir le thème… et éventuellement pour en susciter l’envie (nb: surtout commencer par ne pas lire les trolls sur le sujet).

Hum… Edit Plus ou alors:
C++ Code Export (http://www.cpptalk.net/cpp-code-export/) et ils doivent aussi avoir du C#, du java, etc.

[quote=« vectra, post:27, topic: 29558 »]C’est entièrement vrai, je te l’accorde sans réserve. j’ai eu la flemme…
Je suis assez chieur dans mes posts (j’ai sorti le terme moi-même), mais j’essaie de ne pas m’en prendre à des gens, histoire de limiter un peu les dégats. Et je suppose qu’on est maintenant d’accord sur un point: quand on veut aller vite, on tend à déraper…[/quote]

Joli conclusion :stuck_out_tongue:

Pas de pb. Surtout que si j’ai tendence a etre parfois un peu virulent dans mes posts, ca reste une animosité de facade, il m’en faut beaucoup plus pour en vouloir au gens :stuck_out_tongue:

Moi j’aime changer d’éditeur selon ce que je code.
J’ai pas encore vu mieux que:

  • Visual Studio pour faire du .net ou des gros projets C++.
  • Eclipse pour faire du java et du php.
  • Vim pour l’édition généraliste.
  • Ultraedit pour l’édition UTF-8 (quoique vim la prenne un peu mieux en charge avec la v7).

C’est une question de goût, mais je trouve que les IDEs offrent quand même d’énormes gains de productivité comparativement à des éditeurs de texte (même évolués). Notemment en phase débug ou déploy.
Et au sujet de vim, pour moi son atout principal c’est la vitesse hallucinante à laquelle il se lance. Ne laissant jamais un soft inutilisé ouvert, j’apprécie que lors de mes balades en explorateur les fichiers que j’ouvre se lancent instantanément.
Ils font tous de l’indentation par le biais de plugs (sauf peut etre ultraedit) ou de scripts déjà fournis.

Pour parler d’emacs (vi) à tête reposée et de manière constructive, abordons SVP le problème fréquemment cité des raccourcis clavier… Ca parait totalement anachronique d’apprendre par coeur une vingtaine de raccourcis compliqués pour apeller des fonctions de base (y compris de la navigation de base), mais en fait, c’est plus compliqué que ca.

Certains trouveront à raison qu’il est anachronique d’utiliser assidument un logiciel qui semble refuser l’évolution de l’interface graphique, mais ce refus a ses arguments. Si effectivement on a une souris depuis les premiers macs, la souris qu’elle est lourde, qu’il faut la déplacer, cliquer, déplacer, et relâcher. C’est très pratique pour mettre immédiatement sous les yeux un nombre conséquent de fonctionalités, mais ca devient long quand on doit en apeller beaucoup (compter plus d’une seconde par appel d’une fonction). La souris est un périphérique universel: selon moi, l’efficacité brute vient de la spécialisation.

Si on veut aller plus vite, il ne reste que le clavier. Ce n’est pas la faute d’emacs si, depuis le début de l’informatique personelle, les claviers n’ont pas évolué, ni tellement les souris ou les interfaces (au sens fonctionnel). Et aller vite, c’est le seul souci d’emacs. Je n’ai pas dit que c’était facile, mais je pense que ca vaut le coup.

D’abord, première chose, faut effectivement aller toper un résumé de raccourcis emacs (genre au moins 40) qui sont liés à des fonctions de base, + quelques unes évoluées parmi les plus utiles & fun. Faut les tester, sélectionner celles qui nous intéressent, et les REMAPPER.

Clairement, les raccourcis à ces fonctions, fournis par défaut, sont faits pour les poulpes, et sont surtout faits pour proposer au clavier autant que possible de fonctions: ca ne nous intéresse donc pas. Sans compter que beaucoup ont été conçus à l’époque des claviers heroic-fantasy… Déjà, on peut remapper la grande majorités des fonctions de navigation sur les touches de navigation. Avec une simple combinaison de C ou de M, ca fait déjà pas mal de fonctions possibles et donc de raccourcis en moins (je trouve personnellement idiots les raccourcis avecC pour déplacer le curseur). Ensuite, tu peux aussi mapper les touches de fonction avec des fonctions contextuelles que tu viens d’apprendre (+ C/M, ca en fait déjà 36). Et tout ca avec des raccourcis civilisés (contrairement à C-x C-f).

Et en testant tout ca, tu vires des fonctions, tu en rajoutes, tu remappes les raccourcis selon tes priorités…
Inutile aussi d’apprendre des raccourcis exotiques: tu apprends plutot le nom de la fonction apellée, ca me parait plus simple. Le raccourci que tu lui assigneras, tu le retiendras facilement…

Donc, une fois qu’on a sous les doigts un certain nombre de raccourcis utiles, ben ca va beaucoup mieux. Regardez les joueurs de W3, et demandez-leur s’ils peuvent se passer de leurs raccourcis… En informatique, notre dada, ca reste l’édition de texte (de code): la comparaison ne me parait pas trop cavalière…

C’est vrai qu’il faut parfois se forcer à cette gymnastique pour en voir les premiers effets pas très vite, mais c’est aussi pour ca qu’on enseigne emacs avec un vrai encadrement. Hélas, quand c’est enseigné de manière bâclée (genre un quart d’heure entre la poire et le fromage, et par un enseignant qui n’y connait pas grand chose non plus), l’élève reste seul avec ses difficultés, c’est vrai. Et oui, je pense qu’il est très frustrant de découvrir emacs tout seul.

Pareil, :stuck_out_tongue:

Mais au secour quoi… si on promet tous d’utiliser emacs tu t’arretes? Ca ou me crever les yeux en me frottant des bords de feuilles de papier sur la retine, j’hesite encore, mais faut faire un truc.

Je pense que tu parlais ici de doctor.
Faites « M-x doctor » et vous obtenez ca (desole pour mon anglais pitoyable) :

[quote]I am the psychotherapist. Please, describe your problems. Each time
you are finished talking, type RET twice.

Hello

How do you do? What brings you to see me?

I want to see if you are still there

Why do you say you might want to see if i?

because you are an emacs functionality which is basically useless

Is it because I am an emacs functionality which is basically useless
that you came to me?

As a matter of fact, yes

What makes you believe as a matter of fact yes?[/quote]

Et ca, ca existe pas dans Visual Studio, donc emacs est le meilleur avec des fonctionnalites totalement inutiles donc parfaitement indispensable.

edit: poliotage de clavier en cours de redaction.

LoneWolf
Demontreur de theoreme.

Et SciTE ? Léger, il prend en charge l’édition en UTF-8, indente comme il faut (style C++ pour ma part) et colore bien. De plus il possède un GUI pas trop chiant, on peut le bidouiller dans un fichier de configuration et il gère les onglets (ViM 7 aussi d’ailleurs).

ViM ? J’aime aussi, mais pour l’édition de fichiers de configuration en console, loin sous X11 :stuck_out_tongue:

Eh, y’a pas de raisons que tu te gardes l’exclusivité des discours-fleuve et des plaidoyers pro-domo :stuck_out_tongue:
Si tu avais un peu suivi, oncques me reprochait de ne pas argumenter mes propos. Faudrait savoir. :stuck_out_tongue:

To LoneWolf: mais qu’il est taquin… :stuck_out_tongue:
L’éditeur que tu as présenté a l’air pas mal du tout. Notamment pour les fonctionalités-phares qui sont mises en avant sur son site. Bon, ce sont de très grand classiques qu’on voit partout, mais c’est fort utile, et c’est précisément à cela que je pensais.

Je suis aussi de ceux qui pensent que c’est pas parce que gnu-emacs est codé en lisp qu’il faut laisser les codeurs fous mettre n’importe quoi dans la distrib de base: c’est franchement préjudiciable à long terme pour emacs, ne serait-ce que pour des questions de documentation. Merci d’avoir contribué à éclairer ce point (enfoiré :stuck_out_tongue: )

Je rapelle que l’auteur du premier message voulait juste que l’editeur indente AUTOMATIQUEMENT sans raccourcis même pas avec un simple Tabulation.

Je pense que l’auteur est probablement dégoûté des éditeurs de texte. Mais au cas où:

si le but est d’indenter cela:
int main(int argc, char** argv) { int a = argc ; exit(0); }

en cela:

int main(int argc, char** argv) { int a = argc; exit(0); }

, alors c’est possible.

c-end-of-defun et c-begining-of-defun permettent de naviguer d’une {/} à l’autre. Faut alors insérer des retours chariot.
On navigue entre les ‹ lignes de code › avec c-begining-of-statement /end, et on insère des retours chariot. on utilise c-indent-line à chaque ligne, par exemple, pour appliquer le style d’indentation choisi.

Clairement, il faut coder une petite fonction pour réaliser cela (itération entre statements). J’ai pas mon manuel sous la main maintenant, mais si c’est ce que l’auteur veut vraiment, ca peut se faire.

Peut-etre bien plus simple…

Si tu actives la fonction c-toggle-auto-state, tu peux taper ton code en ligne, et emacs insère pour toi les retour-chariot en indentant bien comme il faut (selon le style choisi).
Ca résoud le problème, mais en mode dynamique. Si tu veux réindenter (avec sauts de ligne) un texte déjà tapé, sous emacs, j’ai peur qu’il faille coder la fonction déjà citée. Bien entendu, si tu veux indenter du code sans modifier la disposition des sauts de lignes, tu peux le faire à tout moment sur le fichier, la fonction, ou la zone sélectionnée.

J’ai pas regardé pour les autres langages, mais c’est à voir (tant pour ll’effet des fonctions citées que pour les fonctionnalités offertes pour les autres langages).

Oui voila :stuck_out_tongue:
Baa d’apres les moult posts je vais me plonger tour à tour dans Emacs et dans Vim et essayer de faire la fonction d’auto-indentation que je souhaite.
En tout cas merci pour tout :stuck_out_tongue:

Sinon si c’est du C/C++ ou autre langage supporte par Visual Studio (php aussi d’ailleurs avec le plugin idoine) ou VS Express tu ouvres dans visual studio tu selectionnes ta section a remettre en forme, tu fais Edit->Advanced->Format Selection et voila. Ca marche avec les versions express gratos.
Sinon ca le fait aussi quand tu fermes le } avec le { correspondant, le comportement est meme un peu different…

Enfin un truc du genre if(blah) { bouh(); } sur une ligne est valable vu que c’est considere que tu le fais expres pour pas prendre 3 km de place avec un truc aussi simple :stuck_out_tongue: Ca doit meme pouvoir se bidouiller dans les options…