Прога для автоматического форматирования текста

Oct 11, 2005 15 Replies

Граждане все тут уважаемые программисты! Никто не встречал какую нить прогу/редактор умеющую, в лучшем случае отформатировать Си-шный листинг с относительно правильным расстановом скобочек и операторов, в худшем случае поубирать все пробелы до начала строки, чтоб потом уже вручную отформатировать. А то попадаются изделия некоторых людей не знающих(нежелающих) о таком способе написания прог, и разобраться в этой каше вообще невозможно без предварительного выстраивания программы, на что уходит большой кусок времени :( --Vad--


VB> Никто не встречал какую нить прогу/редактор умеющую, в лучшем случае VB> отформатировать Си-шный листинг с относительно правильным расстановом VB> скобочек и операторов, в худшем случае поубирать все пробелы до начала VB> строки, чтоб потом уже вручную отформатировать. VB> А то попадаются изделия некоторых людей не знающих(нежелающих) о VB> таком способе написания прог, и разобраться в этой каше вообще VB> невозможно без предварительного выстраивания программы, на что уходит VB> большой кусок времени :(

Есть такая программа Indent. Есть и еще всякие Code Beautifier'ы. Спроси лучше в su.c-cpp, там когда-то даже обсуждали.

Для обработки текстов служат также всяческие потоковые редакторы - sed, awk и др. Там пишется скриптик - программа, в соответствии с которой производится обработка текста. Тут, в принципе, можно наворотить собственный beautifier. Только, имхо, не стОит оно того. Упомянутый Indent легко доступен, входит любой GCC.

Привет Harry!

11 Oct 05 11:43, Harry Zhurov писал Vadim Babko:

HZ> Упомянутый Indent легко доступен, входит любой GCC.

? В какой версии входил? Hи в одном из виденных мной gcc его не было. Это отдельный продукт.

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Я удалю твою жажду. Без возможности восстановления.

Привет Vadim!

11 Oct 05 10:58, Vadim Babko писал All:

VB> Hикто не встречал какую нить прогу/редактор умеющую, в лучшем VB> случае отформатировать Си-шный листинг с относительно правильным VB> расстановом скобочек и операторов, в худшем случае поубирать все VB> пробелы до начала строки, чтоб потом уже вручную отформатировать.

Эта программа называется indent. Лично я использую GNU indent

formatting link
Всего наилучшего, [Team PCAD 2000] Алексей М. ... Чем ветеринары кормят своих собак? Белый фосфор. Ваша собака светится!

Доброго здоровья, Basil!

11 окт 05 15:20, Basil Burtakov написал для Vadim Babko:

VB>> Граждане все тут уважаемые программисты! VB>> Hикто не встречал какую нить прогу/редактор умеющую, в лучшем случае VB>> отформатировать Си-шный листинг с относительно правильным расстановом VB>> скобочек и операторов, в худшем случае поубирать все пробелы до начала VB>> строки, чтоб потом уже вручную отформатировать. VB>> А то попадаются изделия некоторых людей не знающих(нежелающих) о VB>> таком способе написания прог, и разобраться в этой каше вообще VB>> невозможно без предварительного выстраивания программы, на что уходит VB>> большой кусок времени :( VB>> --Vad--

BB> Есть артистик стайл: BB>

formatting link
BB> он даже сипипи понимает. Hо, говорят, иногда ошибается при форматировании. BB> :-)

да-да, еще как. категорически не рекомендую. скачал другой простенький форматер, вполне доволен

WBR, Сергей. ICQ: 101347299

Alex Mogilnikov пишет:

Спасибо всем. Натолкнули на целый ряд программ. Вот может тоже кому будет интересно - в процессе поиска вот наткнулся на еще одну простую программу - если посадить в трей - может даже клипбоард форматить, ну или файл по желанию - VCW CoDe StyleR. По инету куча ссылок прямых ссылок на загрузку с сайта автора, но все нерабочие (в смысле там 404) :( у него самого зайдя на главную тоже не смог загрузить :( Вот нашел рабочую ссылку ftp://ftp.km.ru/v01/Soft/Programming/cstylins.exe там аж 216667 bytes ;)

--Vad--

Tue Oct 11 2005 10:58, Vadim Babko wrote to All:

VB> From: Vadim Babko snipped-for-privacy@selmi.sumy.ua>

VB> Граждане все тут уважаемые программисты! VB> Hикто не встречал какую нить прогу/редактор умеющую, в лучшем случае VB> отформатировать Си-шный листинг с относительно правильным расстановом VB> скобочек и операторов, в худшем случае поубирать все пробелы до начала VB> строки, чтоб потом уже вручную отформатировать. VB> А то попадаются изделия некоторых людей не знающих(нежелающих) о VB> таком способе написания прог, и разобраться в этой каше вообще VB> невозможно без предварительного выстраивания программы, на что уходит VB> большой кусок времени :( VB> --Vad--

Есть артистик стайл:

formatting link
он даже сипипи понимает. Но, говорят, иногда ошибается при форматировании. :-)

Привет Basil!

11 Oct 05 15:20, Basil Burtakov писал Vadim Babko:

BB> Есть артистик стайл: BB>

formatting link
Я его пробовал, но почему-то забраковал в пользу gindent. Что-то у меня в нем не получилось сделать, что именно, не помню уже.

BB> он даже сипипи понимает. Hо, говорят, иногда ошибается при BB> форматировании. :-)

Они, наверное, все иногда ошибаются. У gindent с давних пор тянется такой баг:

int Slon::myau(void) const { }

превращяет в

int Slon::myau(void) const const { }

:)

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Аэроволны: ментол и эвкалипт для носа, мед и лимон для рота!

Tue, 11 Oct 2005 14:27:56 +0400 Alex Mogilnikov wrote to Harry Zhurov:

AM> 11 Oct 05 11:43, Harry Zhurov писал Vadim Babko:

HZ>> Упомянутый Indent легко доступен, входит любой GCC.

AM> ? В какой версии входил? Hи в одном из виденных мной gcc его не было. AM> Это отдельный продукт.

Хе. А вот смотрю у себя в установленной AVR-GCC (кажись 3.1.1), в папочке utils оно есть. М.б. я был неточен - наверное правильнее сказать GNU Utils. Для меня это все как-то одно и тоже. ;-)

HZ> ### Значение синуса в военное время может достигать и четырех.

Вот косинус точно может достигать бОльших значений, даже в мирное время. :-) Если аргумент косинуса комплексное число равное например (i*5), то по формуле для косинуса:

cos(z)=(e^(i*z)+e^(-i*z))/2 (1)

можем записать:

cos(i*5)=(e^(i*i*5)+e^(-i*i*5))/2 (2)

так как i*i=-1 получим:

cos(i*5)=(e^(-5)+e^(5))/2 (3)

так как e=2.7 > 2 получим:

cos(i*5) > (2^(-5)+2^(5))/2 > 2^(5)/2 > 2^(4) = 16 > 4

Привет, Vadim!

11 окт 05 10:58, Vadim Babko -> All:

VB> Граждане все тут уважаемые программисты! VB> Hикто не встречал какую нить прогу/редактор умеющую, в лучшем случае VB> отформатировать Си-шный листинг с относительно правильным расстановом VB> скобочек и операторов, в худшем случае поубирать все пробелы до начала VB> строки, чтоб потом уже вручную отформатировать.

FAR

До свидания, Oleg.

Привет, Oleg! Вы писали to Vadim Babko on Wed, 12 Oct 2005 18:40:54 +0400:

VB>> Hикто не встречал какую нить прогу/редактор умеющую, в лучшем VB>> случае отформатировать Си-шный листинг с относительно правильным VB>> расстановом скобочек и операторов, в худшем случае поубирать все VB>> пробелы до начала строки, чтоб потом уже вручную отформатировать. OP> FAR

ИМХО, ты забыл указать + что.

With best regards, Leha Bishletov. E-mail: snipped-for-privacy@rol.ru

Привет, Alex !

11 Oct 05 , 20:31 Alex Mogilnikov писал к Basil Burtakov:

AM> Они, наверное, все иногда ошибаются. У gindent с давних пор AM> тянется такой баг:

AM> int Slon::myau(void) const AM> { AM> }

AM> превращяет в

AM> int Slon::myau(void) const const AM> { AM> }

AM> :)

Это фигня. про один из форматеров говорили, что он фрагмент // comment }

любил переделывать в одну строку // comment } . С уважением, Hикита. icq:240059686, lj-user:nicka_startcev ... полузабытый мудрец Дьявол, медитирующий в кромешной тьме

Vadim, ты ещё здесь сидишь?

Четверг Октябрь 13 2005 10:57, Vadim Babko wrote to Oleg Primakov:

Видимо каким-то хитрым плагинчиком. А вообще это делается примитивной прогой, которую при желании можно сварганить за полчаса практически на любом знакомом языке программирования...

Георгий

Привет Nickita!

14 Oct 05 01:24, Nickita A Startcev писал Alex Mogilnikov:

AM>> int Slon::myau(void) const const AM>> { AM>> }

AM>> :)

NS> Это фигня. про один из форматеров говорили, что он фрагмент NS> // comment NS> }

NS> любил переделывать в одну строку // comment }

Вот пример:

= RU.CPP (2:5054/70) ================================================= RU.CPP = Msg : 976 of 2693 +1003 1024 Snt K/s From : Eugene Muzychenko 2:5000/14 21 Aug 04 12: To : All 25 Aug 04 09: Subj : GreatCode ===============================================================================

  • Originally in SU.C_CPP
  • Crossposted in Ru.CPP

Привет!

Это ужас какой-то :) После того, как он из

} // If the caller passed an invalid ValueSize. // else if (PropertyRequest->ValueSize < cbSize) {

сделал

} // If the caller passed an invalid ValueSize. // else if (PropertyRequest->ValueSize < cbSize) {

я ему больше не доверяю :(

Всего доброго! Евгений Музыченко snipped-for-privacy@muzy-chen-ko.net (минусы убрать)

-+- GoldED+/W32 1.1.5-30512 + Origin: Fox Tracks, Novosibirsk, Russia (2:5000/14)

Всего наилучшего, [Team PCAD 2000] Алексей М. ... В системе возможно бесконечное число процессов - до 256.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required