The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Google выпустил плагин для форматирования кода в Vim"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от opennews (ok) on 23-Янв-15, 12:35 
Разработчики из компании Google анонсировали (http://google-opensource.blogspot.ru/2015/01/format-code-eas...) новый открытый проект vim-codefmt (https://github.com/google/vim-codefmt), в рамках которого подготовлена утилита для автоматической расстановки отступов и форматирования кода с учётом синтаксиса используемого языка программирования. Утилита может использоваться как плагин для обеспечения форматирования кода в редакторе Vim. Поддерживаются две команды ":FormatLines" для форматирования диапазона строк и ":FormatCode" для форматирования буфера целиком.  Обеспечена поддержка языков C++, JavaScript, Protocol Buffers и Go.


Например, при использовании vim-codefmt строк

<font color="#461b7e">
   int foo(int * x) { return * x** x ; }
</font>


будет переоформлена в

<font color="#461b7e">
   int foo(int* x) { return *x * *x; }
</font>


URL: http://google-opensource.blogspot.ru/2015/01/format-code-eas...
Новость: http://www.opennet.me/opennews/art.shtml?num=41524

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Google выпустил плагин для форматирования кода в Vim"  –10 +/
Сообщение от _KUL (ok) on 23-Янв-15, 12:35 
10 человек, которые пишут код, могут форматировать код 10 вариантами, и ни один из вариантов не может являтся тождественно истинным.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Google выпустил плагин для форматирования кода в Vim"  +14 +/
Сообщение от ананим.orig on 23-Янв-15, 12:49 
Да никому и не нужен "истинный" код (это программирование, а не код давинчи).
Нужен единообразный.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

64. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от _KUL (ok) on 24-Янв-15, 02:51 
Че к чему заминусовали. Если человек пишет всю жизнь
test() {
}
То почему его могут заставлять писать
test()
{
}
По мне так, форматирование, это как почерк, имеет право отличаться.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

65. "Google выпустил плагин для форматирования кода в Vim"  +10 +/
Сообщение от red (??) on 24-Янв-15, 05:37 
если пишешь для себя, то можешь писать хоть
test (
) {
}
а если в проекте даже всего несколько человек, то будь добр, соблюдай принятые соглашения о форматировании. Иначе код превратится в невразумимое нечто.
Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

73. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Аноним (??) on 24-Янв-15, 20:56 
Уважаемые энтерпрайз проектанты, откройте для себя uncrustify, artictic style и им подобных и не мучайте народ :)
Ответить | Правка | ^ к родителю #65 | Наверх | Cообщить модератору

69. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от o on 24-Янв-15, 09:19 
Профессионал должен моч писать любым почерком. Каким надо таким и писать без проблем и притензий
Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

70. "Google выпустил плагин для форматирования кода в Vim"  +8 +/
Сообщение от тоже Аноним email(ok) on 24-Янв-15, 12:30 
Профессионал должен не только моч, но и умет!
Каким притензий надо таким и моч!
Ответить | Правка | ^ к родителю #69 | Наверх | Cообщить модератору

77. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 25-Янв-15, 08:53 
не имеет. В нормальных языках прописано как надо форматировать код.
Если ты пишешь только для себя то да, все равно. А если несколько человек пишут то получится мешанина из разных способов форматирования.
Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

78. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от й on 25-Янв-15, 17:11 
> По мне так, форматирование, это как почерк, имеет право отличаться.

ага, в большом проекте с кучей людей. и отступы пусть каждый использует, какие привык -- кто таб, кто четыре пробела, кто два, кто пять. а функции myTest1, my_test2 и MyTest3 в одном файле не хотите? да так, чтобы одна из них бросала exception, вторая возвращала return code, третья -- писала в глобальную переменную? индивидуальность программиста же.

увидите как-нибудь такое на практике -- поймёте, зачем создали style guide для проектов.

Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

79. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Softfire email on 26-Янв-15, 01:12 
> По мне так, форматирование, это как почерк, имеет право отличаться.

Представления не имею, как выглядят почерки моих коллег на работе.
Уже давно предлагать кому бы то ни было рукописный текст - моветон.
Разбираться в чужом почерке также неприятно, как и в нестандартно отформатированном коде.

Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

68. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от angra (ok) on 24-Янв-15, 08:33 
Не просто единообразный, а именно того вида, что принят в данной команде/сообществе. При этом в другой команде может быть принято совсем другое оформление. Инструмент форматирования должен такое учитывать и позволять гибкие настройки. Пример хорошего форматировщика - perltidy. В пример плохого надо ткнуть пальцем или и так понятно?
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

72. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от ананим.orig on 24-Янв-15, 17:49 
> При этом в другой команде может быть принято совсем другое оформление.
> ...
> Пример хорошего форматировщика - perltidy. В пример плохого надо ткнуть пальцем или и так понятно?

Может пример про трусы не придётся приводить, а?

Есть сабж. В этой команде принято так. И другого нет.
Хочешь — пользуйся. Не хочешь — не пользуйся.
Никто соцобязательств по предоставлению вашего форматирования для вашей же команды (которой вообще нет) на себя не брал.

Ответить | Правка | ^ к родителю #68 | Наверх | Cообщить модератору

4. "Google выпустил плагин для форматирования кода в Vim"  +5 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:00 
Питонист штoле? Альтернативы его пугают.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от hoopoe email(ok) on 23-Янв-15, 12:54 
судя по докам настраивается это чуть меньше чем никак
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Google выпустил плагин для форматирования кода в Vim"  –8 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:03 
Ну по крайней мере пример из статьи сформатирован единственным верным способом. Если других косяков не будет, это и настраивать не нужно. Интересно как оно многострочные инициализаторы в конструкторах форматирует.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

59. "Google выпустил плагин для форматирования кода в Vim"  +3 +/
Сообщение от Аноним (??) on 23-Янв-15, 20:21 
> единственным верным способом
> int* x

Пади подмойса, маня.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

23. "Google выпустил плагин для форматирования кода в Vim"  –5 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:33 
> судя по докам настраивается это чуть меньше чем никак

в этом суть: они хотят одинаковости.
видимо, анализаторы кода делают, ии варганят, etc. ии не умеет разнотипный код читать.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

26. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:41 
идиот, анализ кода всегда работает с AST или прочими деревьями.
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

48. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Аноним (??) on 23-Янв-15, 17:04 
>ии не умеет разнотипный код читать.

Если тот ии делаете ты - то не удивительно.
А разработчики компилеров сделали который умеет ... что то около 60 лет назад 8-)

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

5. "Google выпустил плагин для форматирования кода в Vim"  +11 +/
Сообщение от user (??) on 23-Янв-15, 13:03 
>int* x

почему не int *x?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Google выпустил плагин для форматирования кода в Vim"  –13 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:04 
>>int* x
> почему не int *x?

Потому что * это часть описания типа. Только не надо про int* x, y; - так делают только имбецилы.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

11. "Google выпустил плагин для форматирования кода в Vim"  +14 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:42 
>Потому что * это часть описания типа.

Эта ошибка понимания сути указателей в СИ. Указатель - не новый тип. Данную строку необходимо писать int *x и читать ИКС есть УКАЗАТЕЛЬ на переменную ТИПА int.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

13. "Google выпустил плагин для форматирования кода в Vim"  –9 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:45 
> Эта ошибка понимания сути указателей в СИ. Указатель - не новый тип.
> Данную строку необходимо писать int *x и читать ИКС есть УКАЗАТЕЛЬ
> на переменную ТИПА int.

А void* - указатель на переменную типа void? Не выдумывайте. Переменная - это значение в памяти, у значения есть тип. Этот тип - int*.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "Google выпустил плагин для форматирования кода в Vim"  +6 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:49 
>А void* - указатель на переменную типа void

Именно так, аналогично как функция void fun() возвращает значение void.
>Переменная - это значение в памяти, у значения есть тип.

Перменная это понятие языка программирования и к памяти не имеет никакого отношения.
>Этот тип - int*.

Вас не беспокоит тот факт, что все указатели занимают в памяти 4 байта (8 на 64 битных системах)?

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

16. "Google выпустил плагин для форматирования кода в Vim"  –3 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:59 
> Именно так, аналогично как функция void fun() возвращает значение void

Значение можно присвоить переменной. Присвой, потом поговорим.

> Перменная это понятие языка программирования и к памяти не имеет никакого отношения.

О, даже так. Запущенный случай.

>>Этот тип - int*.
> Вас не беспокоит тот факт, что все указатели занимают в памяти 4
> байта (8 на 64 битных системах)?

Не беспокоит, а вас? Хотите рассказать о том что делаете выводы о типе и семантике по размеру значения?

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

24. "Google выпустил плагин для форматирования кода в Vim"  +5 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:36 
почитайте кернигана и ричи, не напрягайте себе нервный узел лишний раз.
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

36. "Google выпустил плагин для форматирования кода в Vim"  –2 +/
Сообщение от Аноним (??) on 23-Янв-15, 15:38 
> почитайте кернигана и ричи, не напрягайте себе нервный узел лишний раз.

Ссылку на конкретное место.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

29. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:48 
>Значение можно присвоить переменной. Присвой, потом поговорим.

Переменная может быть определена без данных, см http://en.wikipedia.org/wiki/C_syntax#Incomplete_types

>О, даже так. Запущенный случай.

Запущенный случай это невозможность построить в голове такие абстракции как переменные языков программирования. Сколько памяти займёт в JS переменная x, объявленная как var x = 5?

>Не беспокоит, а вас? Хотите рассказать о том что делаете выводы о типе и семантике по размеру значения?

Размер значения и семантика совпадает, поскольку указатели не имеют никакого отношения к типам данных

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

37. "Google выпустил плагин для форматирования кода в Vim"  –4 +/
Сообщение от Аноним (??) on 23-Янв-15, 15:40 
> Переменная может быть определена без данных, см http://en.wikipedia.org/wiki/C_syntax#Incomplete_types

И?

> Запущенный случай это невозможность построить в голове такие абстракции как переменные
> языков программирования. Сколько памяти займёт в JS переменная x, объявленная как
> var x = 5?

При чём здесь JS?

> Размер значения и семантика совпадает, поскольку указатели не имеют никакого отношения
> к типам данных

Если бы указатели не имели отношения к типам данных, их можно было бы кастовать куда и откуда угодно, например из/к float'ам.

Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

54. "Google выпустил плагин для форматирования кода в Vim"  +3 +/
Сообщение от Аноним (??) on 23-Янв-15, 18:01 
#include <stdio.h>

int main() {
        void *p = (void *)10;
        printf("%f\n", (float)(long int)p);
}

Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

67. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от angra (ok) on 24-Янв-15, 08:28 
> При чём здесь JS?

При том, что ты не понимаешь, что такое абстракция вообще и "переменные языков программирования" в частности. Вместо JS может быть другой язык, а понятие переменной останется тем же, хотя реализация на низком уровне может отличатся.

Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

60. "Google выпустил плагин для форматирования кода в Vim"  –3 +/
Сообщение от Умный on 23-Янв-15, 20:55 
>>А void* - указатель на переменную типа void
> Именно так, аналогично как функция void fun() возвращает значение void.
>>Переменная - это значение в памяти, у значения есть тип.
> Перменная это понятие языка программирования и к памяти не имеет никакого отношения.
>>Этот тип - int*.
> Вас не беспокоит тот факт, что все указатели занимают в памяти 4
> байта (8 на 64 битных системах)?

А вас не беспокоит, что вы нихера не знаете, но берете смелость утверждать. Указатель вполне может быть больше 8ми байт, смотря на что он указывает.


Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

15. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Аноним (??) on 23-Янв-15, 13:51 
Он прав. Но int* x; мне всеравно нравится больше.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

17. "Google выпустил плагин для форматирования кода в Vim"  –3 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:00 
> Он прав. Но int* x; мне всеравно нравится больше.

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

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

30. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:51 
>> Он прав. Но int* x; мне всеравно нравится больше.
> Он не прав. А нравится вам потому что хоть вы и не
> знаете основ языка, вам не чужда логика, а в соответствии с
> ней язык и разработан.

Логику разрабатывали бородатые дяди Керниган, Ричи и Томпсон, два первые написали для вас книжку, которую вы не потрудились почитать, при этом учите всех программировать на си!

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

44. "Google выпустил плагин для форматирования кода в Vim"  –3 +/
Сообщение от Аноним (??) on 23-Янв-15, 15:47 
> Логику разрабатывали бородатые дяди Керниган, Ричи и Томпсон, два первые написали для
> вас книжку, которую вы не потрудились почитать, при этом учите всех
> программировать на си!

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

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

47. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Пропатентный тролль on 23-Янв-15, 16:22 
Как нет? откройте любой пример кода в книге - там везде int *x;

Вот первое попавшееся на стр. 232 (издание с синей обложкой):

Dirent *dp;
DIR *dfd;

это вашего маразма int* x, y там нет и никогда не будет - адекватные люди так не пишут.

Вы наверно ещё и емакс используете? :)

Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

51. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Аноним (??) on 23-Янв-15, 17:12 
Воу-воу! Использую емакс, но пишу int *x;
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

40. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от cr (??) on 23-Янв-15, 15:43 
> вам не чужда логика, а в соответствии с ней язык и разработан

А вы не применяйте логику java к C, все и встанет на свои места.

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

20. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от тоже Аноним email(ok) on 23-Янв-15, 14:13 
С чего, собственно, он прав?
На уровне машинного кода один указатель от другого ничем не отличается.
Поэтому, собственно, С и позволяет менять ему тип.
Тип переменной, на которую он указывает - это просто информация для компилятора, какого размера область памяти должна лежать в этом месте и к какому типу ее приводить при разыменовании указателя.
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

41. "Google выпустил плагин для форматирования кода в Vim"  –2 +/
Сообщение от Аноним (??) on 23-Янв-15, 15:44 
> С чего, собственно, он прав?
> На уровне машинного кода один указатель от другого ничем не отличается.

Вы мимо, потому что на уровне машинного кода указатель не отличается также от long и вообще чего угодно что влезает в регистр. В машинном коде вообще нет типов.

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

49. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от тоже Аноним email(ok) on 23-Янв-15, 17:07 
Однако в машинном коде встречается обращение к памяти по адресу, записанному в регистре.
Если этот набор битов используется в коде так - это не long, а именно указатель.
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

52. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Vkni (ok) on 23-Янв-15, 17:43 
> Однако в машинном коде встречается обращение к памяти по адресу, записанному в
> регистре.
> Если этот набор битов используется в коде так - это не long,
> а именно указатель.

Спасибо, поржал. Есть такое словосочетание - адресная арифметика.

Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

63. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от тоже Аноним email(ok) on 24-Янв-15, 01:08 
Ну, хоть какая-то польза. А при чем здесь адресная арифметика? Результат-то все равно потом будет использоваться для доступа к адресованной этим значением ячейке памяти.
Ответить | Правка | ^ к родителю #52 | Наверх | Cообщить модератору

66. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Vkni (ok) on 24-Янв-15, 08:12 
> Ну, хоть какая-то польза. А при чем здесь адресная арифметика? Результат-то все
> равно потом будет использоваться для доступа к адресованной этим значением ячейке
> памяти.

Ну представьте себе, дорогой Тоже, машинный код, описываемый псевдокодом

double z[20] = {.....};
long i;

for( i = 0; i < 20; i++)
    printf( "%ld -> %lf\n", i, z + i);

Как несложно догадаться, согласно вашей логике в последней строке переменная i одновременно имеет числовой тип long, и тип указателя double *.

Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

71. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от тоже Аноним email(ok) on 24-Янв-15, 12:34 
Так. Представил. И в какой машинный код это скомпилируется, тоже примерно представил.
Указатель в этом коде по-прежнему не используется ни для каких иных целей, кроме обращения к адресованной им ячейке памяти.
Ответить | Правка | ^ к родителю #66 | Наверх | Cообщить модератору

61. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Ури on 23-Янв-15, 22:29 
int* x, y;

И привет логика!

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

62. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от freehck email(ok) on 24-Янв-15, 00:14 
> Переменная - это значение в памяти, у значения есть тип.

Интересно, что Вы запоёте, когда столкнётесь с компилируемыми динамически типизированными языками программирования.

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

(предлагаю желающим продолжить эстафету и изложить здесь элементы структуры и интерпретации компьютерных программ)

:)

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

18. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:08 
>>Потому что * это часть описания типа.
> Указатель - не новый тип.

Что ещё придумаешь?

6.2.5.20, Pointer type

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

53. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от 888 on 23-Янв-15, 17:47 
>необходимо писать int *x и читать ИКС есть УКАЗАТЕЛЬ

Чепуху написали. икс это имя указателя, а указатель с именем x на переменную типа int как раз и будет int* x. Если не понимаете, подставьте вместо икса собственное имя и подумайте.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

55. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от Аноним (??) on 23-Янв-15, 18:08 
> Чепуху написали. икс это имя указателя, а указатель с именем x на
> переменную типа int как раз и будет int* x. Если не
> понимаете, подставьте вместо икса собственное имя и подумайте.

Всё верно, только int *x

Ответить | Правка | ^ к родителю #53 | Наверх | Cообщить модератору

75. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от 888 on 24-Янв-15, 23:37 
Вот поэтому вы в гугле и не работаете. xD Правда, я тоже.
Но мне хоть не придётся для использования этого плагина переучиваться.
Ответить | Правка | ^ к родителю #55 | Наверх | Cообщить модератору

28. "Google выпустил плагин для форматирования кода в Vim"  +4 +/
Сообщение от cr (??) on 23-Янв-15, 14:46 
> Потому что * это часть описания типа

Курите ISO/IEC 9899, пункт A 2.2. Там указано, часть чего это.

> Только не надо про int* x, y

Надо-надо. Была бы * частью описания типа - семантика такого объявления была бы другой.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

38. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Аноним (??) on 23-Янв-15, 15:41 
>> Потому что * это часть описания типа
> Курите ISO/IEC 9899, пункт A 2.2. Там указано, часть чего это.
>> Только не надо про int* x, y
> Надо-надо. Была бы * частью описания типа - семантика такого объявления была
> бы другой.

Грамматика языка к системе типов не относится ну совершенно никак.

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

42. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от cr (??) on 23-Янв-15, 15:45 
А кто говорит про систему типов? В треде обсуждается грамматика, а именно синтаксис объявлений.

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

76. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 25-Янв-15, 08:26 
>Грамматика языка к системе типов не относится ну совершенно никак.

Самое смешное сообщение на опеннете за последнюю неделю.

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

25. "Google выпустил плагин для форматирования кода в Vim"  +3 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:37 
> >int* x
> почему не int *x?

скорее всего потому, что так пишет Поттеринг.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

33. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от Аноним (??) on 23-Янв-15, 15:07 
http://www.stroustrup.com/bs_faq2.html#whitespace
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

45. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 16:00 
> http://www.stroustrup.com/bs_faq2.html#whitespace

Правильно. /thread

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

50. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от тоже Аноним email(ok) on 23-Янв-15, 17:11 
Компилятору-то действительно пофиг, а вот программисты обычно не любят читать что-нибудь вроде:
for(--c;n<c;*L-c?L[*a[++*L]+=32]=1:swap(a[1],a[*((*a=strchr(a[n],0)-1)+L[**a]-1)-*a[++n]?rand()%c+(n=1):1]));
Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

56. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 18:17 
> http://www.stroustrup.com/bs_faq2.html#whitespace

A ``typical C programmer'' writes ``int *p;'' and explains it ``*p is what is the int'' emphasizing syntax, and may point to the C (and C++) declaration grammar to argue for the correctness of the style. Indeed, the * binds to the name p in the grammar.

Ну не верно же!

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

57. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от Аноним (??) on 23-Янв-15, 18:28 
Все верно.
Ответить | Правка | ^ к родителю #56 | Наверх | Cообщить модератору

74. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Аноним (??) on 24-Янв-15, 22:32 
The choice between "int* p;" and "int *p;" is not about right and wrong, but about style and emphasis. C emphasized expressions; declarations were often considered little more than a necessary evil. C++, on the other hand, has a heavy emphasis on types.

A "typical C programmer" writes "int *p;" and explains it "*p is what is the int" emphasizing syntax, and may point to the C (and C++) declaration grammar to argue for the correctness of the style. Indeed, the * binds to the name p in the grammar.

A "typical C++ programmer" writes "int* p;" and explains it "p is a pointer to an int" emphasizing type. Indeed the type of p is int*. I clearly prefer that emphasis and see it as important for using the more advanced parts of C++ well.

http://stackoverflow.com/questions/6990726/correct-way-of-de...

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от АнонимЪ on 23-Янв-15, 13:15 
А чем оно лучше clang-format для C++?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

9. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 13:26 
> А чем оно лучше clang-format для C++?

Или uncrustify. Оно вообще настраивается как угодно.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

10. "Google выпустил плагин для форматирования кода в Vim"  +5 +/
Сообщение от ананим.orig on 23-Янв-15, 13:39 
> Оно вообще настраивается как угодно.

Очевидно гуглу не нужно "как угодно".
Им нужно как у них принято.
Ваш КО.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

12. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 13:43 
>> Оно вообще настраивается как угодно.
> Очевидно гуглу не нужно "как угодно".
> Им нужно как у них принято.
> Ваш КО.

-> конфиг для uncrustify.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

19. "Google выпустил плагин для форматирования кода в Vim"  –1 +/
Сообщение от Штунц on 23-Янв-15, 14:11 
вот как надо форматировать

int foo(int* x)
{
   return *x * *x;
}

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

21. "Google выпустил плагин для форматирования кода в Vim"  +5 +/
Сообщение от тоже Аноним email(ok) on 23-Янв-15, 14:17 
Форматировать надо так, чтобы минимизировать время понимания кода и вероятность ошибок.
Все остальное - не каноны, а просто способы. Даже если это способ от самих K & R.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

43. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 15:45 
Только как в новости либо так:

> int foo(int* x) {
>    return *x * *x;
> }

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

46. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 16:20 
В этом формате не будет работать [[
Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

22. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:23 
в стандартной поставке clang-format есть гугловский стиль, кстати очень удобный, и плагин для vim.

в стандартной поставке Go есть средство форматирования кода и, опять же, плагин для vim.

Резюме: в Гугле у кого-то резко обострился NIH-синдром.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

27. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от Аноним (??) on 23-Янв-15, 14:43 
этот плагин исключительно для тех людей, что код пишут только так, как показано в первом варианте:
> int foo(int * x) { return * x** x ; }

для них проще плагин наклепать, чем их переучить.
потому и наклепали.

тут важно другое: что за программисты в гугле работают, что им такие плагины нужны и что способны "* x** x" выдать?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

31. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 23-Янв-15, 14:54 
а ничего что vim это умеет из коромбки на основе настраиваемого indent? Выделяем код и нажимаем кнопку "="
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

34. "Google выпустил плагин для форматирования кода в Vim"  +1 +/
Сообщение от cr (??) on 23-Янв-15, 15:34 
Встроенный индент уже умеет что-то кроме (внезапно) индентации?
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

35. "Google выпустил плагин для форматирования кода в Vim"  +2 +/
Сообщение от svlasov (ok) on 23-Янв-15, 15:36 
Торматирует только в стиль гугла? Есть более полезный инструмент http://astyle.sourceforge.net/astyle.html который позволяет привести к любому стилю. И соответсвующий плагин https://github.com/Chiel92/vim-autoformat Наверное и Go ему можно скормить.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

58. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Пользователь Debian on 23-Янв-15, 19:32 
Не надо ей Go скармливать: к счастью, у него есть фиксированный стандартный формат и утилита для него: http://blog.golang.org/go-fmt-your-code
Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

39. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от waker (ok) on 23-Янв-15, 15:42 
в анонсе написано, что javascript умеет. на самом деле:


:FormatCode
Not available. codefmt doesn't have a default formatter for this buffer.

это у меня руки из Ж, или анонс врет?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

81. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от к (??) on 26-Янв-15, 23:07 
плагину нужна эта тулза, сейчас он просто неправильно ругается на её отсутсвие
http://clang.llvm.org/docs/ClangFormat.html

Подробности:
https://github.com/google/vim-codefmt/issues/16

Ответить | Правка | ^ к родителю #39 | Наверх | Cообщить модератору

82. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от waker (ok) on 27-Янв-15, 11:01 
спасибо
Ответить | Правка | ^ к родителю #81 | Наверх | Cообщить модератору

80. "Google выпустил плагин для форматирования кода в Vim"  +/
Сообщение от Аноним (??) on 26-Янв-15, 04:41 
vim-autoformat? https://github.com/Chiel92/vim-autoformat
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру