# Se servir du terminal pour coder



## greensource (27 Septembre 2007)

Bijour bijour, je voulais savir comment on fait pour taper son code dans le terminal de MACOSX?
J'espère que je suis clair, merci


----------



## obi wan (27 Septembre 2007)

Ahbah voilà là c'est à mon niveau je peux faire un tutoriel de la mort qui tue :
1. Tu ouvres le Terminal (pomme-shift-u ter pomme-bas).
2. Et tu commences à taper (a, b, c, d etc).
3. Note que les scripts bash, c'est puissant, mais ça a quand même des limites  

Mais, au fait, sarcasmes mis à part... tu parles de quoi quand tu dis 'taper son code' ? c'est quoi comme langage déjà ? effectivement tu es pas très clair.

En soi, le terminal sert pas vraiment à coder (à part pour les vi-et-emacs-intégristes mais ce sont pas des êtres humains normaux alors ils comptent pas  ), mais plutôt à compiler ou lancer des choses que tu auras codées.


----------



## bompi (27 Septembre 2007)

_Qui  _n'est pas humain ?


----------



## obi wan (27 Septembre 2007)

bompi a dit:


> _Qui  _n'est pas humain ?


Hihi  et en plus c'est pas ta signature qui te rend plus crédible...
_vous êtes parmi nous depuis bien longtemps, je le savais_


----------



## yzykom (27 Septembre 2007)

greensource a dit:


> Bijour bijour, je voulais savir comment on fait pour taper son code dans le terminal de MACOSX?
> J'espère que je suis clair, merci



Avec Emacs, Vi ou Pico, peut-être ?

... mais face à l'ergonomie d'un Smultron ou un TextMate, il faut vraiment être motivé.


----------



## p4bl0 (27 Septembre 2007)

bompi a dit:


> _Qui  _n'est pas humain ?


ouais ! +1

M&#234;me si :love: TextMate, ViM is so good to :love:


----------



## clampin (27 Septembre 2007)

Bah, pico, vi, emacs.... sont les principaux... et perso, je n'en connais pas d'autres sur Unix....


----------



## p4bl0 (27 Septembre 2007)

clampin a dit:


> Bah, pico, vi, emacs.... sont les principaux... et perso, je n'en connais pas d'autres sur Unix....


Si par "sous unix" tu veux dire en mode texte*, ben il y a ceux l&#224;, leur d&#233;riv&#233;s et autre version, fork et compagnie...

et ceux qui les pr&#233;c&#232;de : sed, ed, ex... la plupart s'utilise sur une ligne &#224; la fois 


* parce que sous unix (mac os x en est un) il y a des environnement graphique et plein d'&#233;diteur de texte diff&#233;rents  Mais je suis s&#251;r de ne rien t'apprendre l&#224; (pr&#233;cisions pour ceux qui ne sauraient pas et qui liraient).


----------



## bompi (27 Septembre 2007)

p4bl0 a dit:


> ouais ! +1
> 
> Même si :love: TextMate, ViM is so good to :love:


TextMate est très bien en effet.
Perso, je navigue, suivant l'humeur, entre le Terminal (Vim) et TextMate, SubEthaEdit et Smultron.

Chacun a ses petits plus et ses petits moins.
Par exemple, lancer directement l'exécution d'un script que l'on écrit (pratique, ça !)

PS : bon, je vais trouver une signature plus simple.


----------



## clampin (27 Septembre 2007)

p4bl0 a dit:


> Si par "sous unix" tu veux dire en mode texte*, ben il y a ceux là, leur dérivés et autre version, fork et compagnie...
> 
> et ceux qui les précède : sed, ed, ex... la plupart s'utilise sur une ligne à la fois
> 
> ...



si bien sur je les connaissait sed, ed.... mais pour du texte (pas ligne par ligne).. je ne connais que ceux que j'ai cité... Y-a-t-il d'autre (donc comme vi, emacs, nano) et installables sur notre os x ? 

Merci


----------



## p4bl0 (27 Septembre 2007)

clampin a dit:


> si bien sur je les connaissait sed, ed.... mais pour du texte (pas ligne par ligne).. je ne connais que ceux que j'ai cit&#233;... Y-a-t-il d'autre (donc comme vi, emacs, nano) et installables sur notre os x ?
> 
> Merci


Alors non pas vraiment, sauf si tu compte les diff&#233;rents clone etc comme je l'ai dit tout &#224; l'heure.

Par exemple pour les clone de vi dans macports tu trouves :

```
bvi                            editors/bvi    1.3.1        A vi-like binary file (hex)editor
elvis                          editors/elvis  2.2_0        A vi/ex clone
ex-vi                          editors/ex-vi  050325       the traditional ex/vi editor
nvi                            editors/nvi    1.81.5       A vi/ex clone
vigor                          editors/vigor  0.016        vigor is a vi clone that comes with a personal assistant
vile                           editors/vile   9.5          Vi Like Emacs
vim                            editors/vim    7.1.100      Vi "workalike" with many additional features
```
Sans compter les versions graphiques (Vim.app par exemple). J'ai pas essay&#233; mais je suppose que c'est la m&#234;me chose pour emacs et pico/nano.


----------



## obi wan (27 Septembre 2007)

Nano est bien pratique, mais franchement à moins que je n'aie qu'un accés ssh sur une machine (ce qui arrive c'est vrai), j'utilise vraiment uniquement des éditeurs avec interface (textmate, merci pablo pour m'avoir poussé au switch et smultron).

Ha bah si je sais pourquoi j'utilise nano aussi... dès que j'ai un truc à éditer qui nécéssite un sudo en fait. Mais si je suis sous linux je retrouve le nom dont je me souviens jamais de la commande (gksudo je crois pour gnome) qui sert à lancer des applis avec des superpouvoirs, parce que quand même, le terminal, c'est roots :rateau:


----------



## yzykom (27 Septembre 2007)

clampin a dit:


> si bien sur je les connaissait sed, ed.... mais pour du texte (pas ligne par ligne).. je ne connais que ceux que j'ai cit&#233;... Y-a-t-il d'autre (donc comme vi, emacs, nano) et installables sur notre os x ?
> 
> Merci



Nano qui, sauf erreur, est d&#233;riv&#233; de Pico ... &#224; moins que ce ne soit l'inverse, je ne sais jamais.

_[H.S.]Sinon, je suis aussi un converti &#224; TextMate, payant mais quasi-parfait (de mon point de vue) et j'ai essay&#233; la derni&#232;re version de Smultron, gratuit, qui se bonifie au fil des versions et a une approche un peu similaire &#224; TextMate selon moi.[/H.S.]
_


----------



## p4bl0 (27 Septembre 2007)

obi wan a dit:


> Nano est bien pratique, mais franchement à moins que je n'aie qu'un accés ssh sur une machine (ce qui arrive c'est vrai), j'utilise vraiment uniquement des éditeurs avec interface (textmate, merci pablo pour m'avoir poussé au switch et smultron).
> 
> Ha bah si je sais pourquoi j'utilise nano aussi... dès que j'ai un truc à éditer qui nécéssite un sudo en fait. Mais si je suis sous linux je retrouve le nom dont je me souviens jamais de la commande (gksudo je crois pour gnome) qui sert à *lancer des applis avec des superpouvoirs*, parce que quand même, le terminal, *c'est root*s :rateau:


Fait exprès ? 

Sinon, il est possible de faire un sudo mate ou alors de simplement lire le fichier avec TextMate et au moment de l'enregistrement il te demandera un login et un mot de passe admin (la boîte de dialogue std de mac os x).




yzykom a dit:


> Nano qui, sauf erreur, est dérivé de Pico ... à moins que ce ne soit l'inverse, je ne sais jamais.


C'est bien ça, pas un dérivé, mais un clone libre


----------



## greensource (28 Septembre 2007)

Heu, oui, je voulais taper du java en fait. Bon en gros, je voudrais
-lancer le Terminal (je sais faire 
-mettre un "truc" qui permet de taper mon code java (ça sais pô faire)
-remettre le terminal en mode tappage de commande, lancer la compil puis l'exec.
Après je sais qu'il y a miriade de choses plus pratique pour coder en java (j'utillise eclipse en tant normal) c'est juste pour savoir comment s'y prendre, pour ma culture quoi ^^


----------



## daffyb (28 Septembre 2007)

eclipse pour mac existe :
http://developer.apple.com/tools/eclipse.html


----------



## greensource (28 Septembre 2007)

Je sais, c'est ce que je viens de dire, je l'utilise (sur toutes les plates formes d'ailleurs) enfin bref. Merci daffyb quand même ^^


----------



## yzykom (28 Septembre 2007)

greensource a dit:


> Heu, oui, je voulais taper du java en fait. Bon en gros, je voudrais
> -lancer le Terminal (je sais faire
> -mettre un "truc" qui permet de *taper mon code java* (&#231;a sais p&#244; faire)
> -remettre le terminal en mode tappage de commande, lancer la compil puis l'exec.
> Apr&#232;s je sais qu'il y a miriade de choses plus pratique pour coder en java (j'utillise eclipse en tant normal) c'est juste pour savoir comment s'y prendre, pour ma culture quoi ^^



Un d&#233;but de r&#233;ponse ici, peut-&#234;tre. (avec Emacs) ...

&#233;dit : ... et ici avec Vi.


----------



## greensource (28 Septembre 2007)

En fait je me suis peut être mal exprimé. Je suis Etudiant en L3 informatiques, et j'ai déja fait de la programmation java (depuis deux ans) et je l'ai quasi toujours fais sous Eclipse (MACOSX LINUX) et sous Emacs (MACOSX LINUX). Donc là dessus aucun souci, j'ai les environnement de dev qui me conviennent.
Je voulais juste savoir, si l'un d'entre vous connaissais un moyen de transformer Terminal en editeur Java.
En espérant être plus clair ^^
A+


----------



## obi wan (28 Septembre 2007)

Ben non le terminal c'est le terminal quoi... dedans tu peux démarrer des éditeurs.
J'avoue que je me demande comment on peut se poser cette question en ayant déjà programmé pendant 2 ans.

Peut-être que tu veux dire que tu voudrais une console java, un peu comme la console python quand tu tapes juste 'python' dans le terminal ? Ça je sais pas si ça existe, j'ai toujours fait du java avec des fichiers.


----------



## greensource (28 Septembre 2007)

Je peux comprendre ton étonnement, c'est juste que j'ai cru voir un mec faire ça et du coup je me demandais comment voilà tout.


----------



## p4bl0 (28 Septembre 2007)

greensource a dit:


> Je peux comprendre ton étonnement, c'est juste que j'ai cru voir un mec faire ça et du coup je me demandais comment voilà tout.


&#231;a devait pas &#234;tre du java mais un langage avec une syntaxe assez proche (un autre langage quoi...) : python te permet de faire &#231;a parce exemple, Ruby aussi et puis Perl, PHP... aussi mais de fa&#231;on non interactive. Par exemple :
perl <<END _retour_ tu tape tout ton script puis un ligne avec END et &#231;a execute le code.


----------



## Warflo (28 Septembre 2007)

Python ruby perl, permettent de faire ça car se sont des langages interprétés (sans passer par des binaires), contrairement à Java (qui créer un bytecode spécifique qui est interprété par la JVM)


----------



## tatouille (29 Septembre 2007)

il y a des gens qui codent en java sous vim ou emacs 
et ils utilisent ant (ont deja fait leur fichier de build) pour opcoder puis lance leur applis

enfin les gens qui savent ce qu' est un classpath 

de meme pour une appli cocoa (build pbx via un makefile)


----------



## p4bl0 (29 Septembre 2007)

tatouille a dit:


> il y a des gens qui codent en java sous vim ou emacs
> et ils utilisent ant (ont deja fait leur fichier de build) pour opcoder puis lance leur applis
> 
> enfin les gens qui savent ce qu' est un classpath
> ...


Ouais ouais mais le bonhomme il a dit qu'il connaissait vi, emacs et compagnie, il voulais vraiment avoir un console java. C'est pour &#231;a qu'on lui parle de python et du irb par exemple


----------



## obi wan (29 Septembre 2007)

tatouille a dit:


> enfin les gens qui savent ce qu' est un classpath


je te rassure, on sait  :rateau:  

mais quand même hein vim et emacs c'est des trucs de vieux hackers oldschool


----------



## p4bl0 (29 Septembre 2007)

obi wan a dit:


> je te rassure, on sait  :rateau:
> 
> mais quand même hein vim et emacs c'est des trucs de vieux hackers oldschool


"on" sait, "on" sait... parle pour toi !

Moi j'ai jamais fait de java (et &#231;a m'attire pas plus que &#231;a) donc bon... Mais je suppose que c'est le chemin ouskellesont les classes java et les .jar, enfin un truc du genre quoi


----------



## obi wan (29 Septembre 2007)

beh quand même  c'est les forums developpement 
mais c'est vrai qu'en y réflechissant, un classpath c'est plutôt un truc de langage objet, pas de la prog en général. mais bon tu fais bien du php non ? :rateau:


----------



## p4bl0 (29 Septembre 2007)

obi wan a dit:


> beh quand même  c'est les forums developpement
> mais c'est vrai qu'en y réflechissant, un classpath c'est plutôt un truc de langage objet, pas de la prog en général. mais bon tu fais bien du php non ? :rateau:


Ouais mais jamais entendu parl&#233; de Class Path en PHP m&#234;me Object. M'enfin je viens d'aller voir sur Wikip&#233;dia, j'&#233;tais pas loin du tout (et c'est un terme Java)


----------



## supermoquette (29 Septembre 2007)

obi wan a dit:


> mais quand même hein vim et emacs c'est des trucs de vieux hackers oldschool



Vieux ? Regarde bien les seins de tatouille. Je ne lui donne pas plus de 32/33 ans.


----------



## tatouille (29 Septembre 2007)

la notion de classpath existe en PHP (et a peu pres ds tous les languages)
c'est ce qu'on appel include_path = .:/usr/local/lib/php:./include 

en Python: sys.path.append ecetera

soi dit en passant c'est assez pratique non? 
c'est comme la variable d'env PATH 
ou DYLD_LIBRARY_PATH pour &#233;tendre l'id&#233;e

&#224; l'espagnole y a rien de meilleur


----------



## Anonyme (30 Septembre 2007)

moi je prefere VI


----------



## clampin (1 Octobre 2007)

greensource a dit:


> Heu, oui, je voulais taper du java en fait. Bon en gros, je voudrais
> -lancer le Terminal (je sais faire
> -mettre un "truc" qui permet de taper mon code java (&#231;a sais p&#244; faire)
> -remettre le terminal en mode tappage de commande, lancer la compil puis l'exec.
> Apr&#232;s je sais qu'il y a miriade de choses plus pratique pour coder en java (j'utillise eclipse en tant normal) c'est juste pour savoir comment s'y prendre, pour ma culture quoi ^^



Ben c'est simple ... 
-tu ouvre ton terminal
-Tu entre la commande vi le nom_du_fichier
-tu tape sur i pour entrer en mode insert
-tu tape ton code... lorsque tu a fini de taper ton code
-tu appuyez sur la touche esc et tu tape wq
-tu tape sur ctrl - z pour suspendre vi
-tu compile ton code pour voir si il marche... si il ne marche pas tu fait fg &#37;1 tu te retrouve dans vi pour corriger tes fautes...

Tu fais &#231;a jusqu'a ce que ton code marche... ensuite pour quitter vi tu tape sur esc et wq.

voil&#224;...  c'est la mani&#232;re oldschool... maintenant &#233;clipse ou texmate, c'est plus jolis...


----------



## greensource (2 Octobre 2007)

Oui, merci, m'en vais essayer dès que je retrouve mon mac! merci


----------

