» »

Program za formatiranje kode

Program za formatiranje kode

Vlady ::

Zanima me, ali obstaja, kak program, ki ti sformatira kodo v kak drug željen format (zamiki, oklepaji,...).

Iščem nekaj za C#, in mora delat na visti in Windows 2003 server. Pa še najbolje je, da je dostopna komanda, preko desnega klika na mapo v explorerju, kjer samo rečem "Format" in mi vse naredi sam program. Naj naredi operacije tudi nad celotnim direktorijem in poddirektoriji.

Gre za problem, da imamo v firmi nek standard programiranja, ki je meni totalno neberljiv. Moram pa delati po standardu in nebi rad sam trpel.

Program mora biti zastonj...
"Lotereya - naibolee točnyj sposob učeta količestva optimistov"

overlord_tm ::

Eclipse zna nekaj v tej smeri ;)

Za Javo in PHP dela, za C# pa nevem.

Vlady ::

Jaz imam pač svoj stil kode, vendar moram pred commit-om na server spremeniti format. Samo če gre tu za 50+ class-ov je to preveč časa za popravljanje. Rad bi, da mi to avtomatsko naredi program. Torej najprej deno kliknem na direktorij: format code, potem pa še enkrat desni klik in commit. (ta drugi ukaž že imam)
"Lotereya - naibolee točnyj sposob učeta količestva optimistov"

'FireSTORM' ::

Če se gre samo za zamike je vseeno če je tam v datoteki LOLCODE ali C#.
Torej bi po moje Eclipse moral vedet tudi tukaj zamenjat zamike.
Sicer pa to verjetno niti ne bi bilo težko. Vzameš kot vhod datoteko ki bere presledke in tabe in jih zamenja z nečim kot ti hočeš.
Those penguins.... They sure aint normal....

kopernik ::

Za Javo vem, da je tega kar dosti (tudi eclipse je dobil command-line podporo za reformatting z verzijo 3.2) in brez dvoma se marsikaj najde tudi za C#. A Microsoftov Visual Studio tega ne podpira ? Novejši IDE-ji imajo ponavadi kakšne "before commit" opcije, kjer lahko nastaviš reformatiranje kode ...

jype ::

Vlady, če bi uporabljal resen sistem, bi imel na voljo ukaz indent, ki bi ga lahko commit ukaz pognal avtomatsko.

Navsezadnje bi ti pa lahko to možnost on-the-fly počel IDE - napisat tak plugin za eclipse je trivialno.

BigWhale ::

> Zanima me, ali obstaja, kak program, ki ti sformatira kodo v kak drug željen format
> (zamiki, oklepaji,...).

Vsekakor!

> Iščem nekaj za C#, in mora delat na visti in Windows 2003 server. Pa še najbolje je, da
> je dostopna komanda, preko desnega klika na mapo v explorerju, kjer samo rečem "Format"
> in mi vse naredi sam program. Naj naredi operacije tudi nad celotnim direktorijem in
> poddirektoriji.

Hm, imas pa veliko zahtev. ;)

> Gre za problem, da imamo v firmi nek standard programiranja, ki je meni totalno
> neberljiv. Moram pa delati po standardu in nebi rad sam trpel.

Daj postaj oba primera coding standarda. Tvoj in firmin.

Ti pa ze kar takoj povem, da bos veliko bolje prisel skozi, ce se bos navadil firminega standarda.

Probleme bos imel, ce uporabljate kak versioning system za kodo. Recimo CVS, SVN ali pa ClearCase. Ti bos vzel kodo iz CVSa, jo preformatiral in potem delal na njej. Potem bos kodo commital nazaj v CVS, pred tem jo bos pa spet preformatiral v firmin sistem.

Ves kako bo to izgledalo, ce nimate vsi enako nastavljenih editorjev, da bi brisali 'trailing spaces'.

No, grdo bo. :)


> Program mora biti zastonj...

A se to al kaj? ;>

krneki0001 ::

Zakaj si kr ene batch procedure ne narediš in jo potem povežeš z desnim klikom, da ti sam potegne ime datoteke in ti jo obdela.

Za batch ti je dovolj en dobro narejen *.bat fajl in bo zadeva delala brez problema.

Vlady ::

Uporabljamo SVN.

Jaz pišem vse "open braces" v svoji vrstici, v firmi pa vse pišejo v isto vrstico, razen "closing brace". Prav tako ima vsak svoje zamike in nekateri imajo minimalen zamik, tako da komaj vidiš kje je kaj. Največja fora so vrstice, kjer pride do problema, ko recimo sodelavec primerja datoteko s tisto na SVN-ju. Jaz recimo spremenim eno vrstico, ampak zaradi preformatiranja spremenim 300 vrstic. Njemu potem javi 300 razlik, pa čeprav je samo v eni vrstici.

Zakaj bi zgledalo grdo pri trailing spaces? Tu štejejo v bistvu vrstice ne space-i. :)

No meni je firmin standard totalno neberljiv, tako da mi je zelo težko brat kodo za nekom, pa še ko sam pišem, čez pol ure ne vem več kje je kaj. Komentarjev pa ne pišem ravno iz tega razloga, da ne spremenim preveč vrstic v programih. Večinoma pa delam tako, da potegnem dol source, in potem samo popravim par vrstic kode in potem nazaj komitam. Nikakor se ne morem navaditi na njihov standard in pri večjem projektu delam že več kot 2 meseca. :\
"Lotereya - naibolee točnyj sposob učeta količestva optimistov"

BigWhale ::

> Jaz pišem vse "open braces" v svoji vrstici, v firmi pa vse pišejo v isto vrstico,
> razen "closing brace".

Meh, to je minimalna prilagoditev, jaz sem svoj cas tudi vse v eni vrstici pisal, potem sem se v firmi navadil na novo vrstico, sedaj sem spet zacel drugace delat.

Slo je iz tega:

if (lala) {
   printf("lala\n");
} else {
   printf("fafa\n");
}


V tole:

if (lala)
{
   printf("lala\n");
} else {
   printf("lala\n");
}


In sedaj v tole:
if (lala)
{
     printf("lala\n");
} else
{
     printf("lala\n");
}




Pa je vse priblizno enako berljivo.

> Prav tako ima vsak svoje zamike in nekateri imajo minimalen zamik, tako da komaj
> vidiš kje je kaj. Največja fora so vrstice, kjer pride do problema, ko recimo

To kar ti opisujes ni firmin standard ampak pomanjkanje le-tega. ;> Ce ima vsak svoj indent nastavljen, potem je to ze narobe. Potem po moznosti nekdo uporablja tabulatorje, drugi dela presledke. Cela zmeda.

> sodelavec primerja datoteko s tisto na SVN-ju. Jaz recimo spremenim eno vrstico,
> ampak zaradi preformatiranja spremenim 300 vrstic. Njemu potem javi 300 razlik, pa
> čeprav je samo v eni vrstici.

Ja, to delas narobe ti. :)

> Zakaj bi zgledalo grdo pri trailing spaces? Tu štejejo v bistvu vrstice ne space-i.

Tudi presledki se upostevajo, presledki na koncu vrstic in presledki v praznih vrsticah. S tem so imeli moji sodelavci precej tezav, ker jaz imam vse urejevalnike tako nastimane, da odrezejo trailing presledke. No potem sem sodelavcem dopovedal, da je to edini pravi nacin dela. ;>

> No meni je firmin standard totalno neberljiv, tako da mi je zelo težko brat kodo za
> nekom, pa še ko sam pišem, čez pol ure ne vem več kje je kaj.

Kot sem ze rekel, zgleda, da standarda sploh ni. :) Daj pobudo in se zbuni, da pisejo kodo kot kure.

> Komentarjev pa ne pišem ravno iz tega razloga, da ne spremenim preveč vrstic v
> programih.

To v bistvu NI razlog za ne pisanje komentarjev. Pri vecjih stvareh, ki bodo aktualne nekaj casa, se vsaka sprememba opremi z datumom, imenom popravljalca in bug reportom/feature requestom. Marsikdo bi sicer rekel, da bi to moralo biti napisano tudi v source control-u ampak, takrat, ko nekaj pregledujes, je precej nadlezno skakati sem ter tja po logih source kontrola in po sourcu. Taksni komentarji so precej dobrodosli. Taisti komentar bi pa moral biti tudi v source kontrolu. Tako, da ob gledanju history loga takoj vidis kdo je kaj pocel. :)

> Večinoma pa delam tako, da potegnem dol source, in potem samo popravim par vrstic
> kode in potem nazaj komitam.

Saj tako dela vecina ljudi, ki vzdrzujejo kak obstojec projekt. :)

Vlady ::

No standard imamo, za zamike, samo se ga nekateri ne držijo oz. standard imamo že napisan in bi ga morali vsi upoštevati. Je pa zanimivo, da vsi pišejo tiste oklepaje v isti vrstici, le jaz in še eden se nekaj buniva glede tega.

Ampak ok, glede tistih presledkov se da že uskladit, in imamo standard, da se presledki na koncu brišejo in da se daje rpesledke v stavke pred in po operatorjih. Na začetku pa se uporablja "tab"-e. Zaenkrat bi rad samo te vrstice poštimal, tako da bo koda po "standardu".
"Lotereya - naibolee točnyj sposob učeta količestva optimistov"

Gundolf ::

Obstaja programcek, astyle, ki mislim da ima vse kar si ti želiš.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Google poganjata dve milijardi vrstic kode

Oddelek: Novice / Ostale najave
3014032 (7346) Randomness
»

C++ IDE on Windows

Oddelek: Programiranje
387586 (6678) noraguta
»

Bash

Oddelek: Programiranje
192318 (1714) keworkian
»

Naloga v C-ju pomoč

Oddelek: Programiranje
112464 (2064) keworkian
»

[c++] stil kodiranja, informativno

Oddelek: Programiranje
171942 (1758) CCfly

Več podobnih tem