Oberon space
General Category => Общий раздел => Тема начата: Губанов Сергей Юрьевич от Январь 23, 2013, 02:27:10 pm
-
Файл из 3'486 строчек кода на C#. Компилятор MSVS2008 устанавливая курсор в конец файла говорит, что где-то там забыта скобочка }
} expected
Вот поди и сыщи где же именно забыта скобка } ... :'( :'( :'(
-
а что в Паскале или Жабе подобная херь выглядит более обнадеживающе?
-
В 2010 и 2012 студиях у меня рисует боковые линии, как здесь http://oberspace.dyndns.org/index.php/topic,425.msg13272.html#msg13272
Сразу все видно.
В 2008 - есть только штатная подсветка парных скобок и Ctrl+] :(
-
Нашёл.
Недостающая скобка } должна стоять в 1'634 строке.
Расстояние между ошибкой и местом когда компилятор сообразил, что не хватает скобки 1'852 строчек.
-
А вот не надо такие большие файлы делать )))
И вот ещё один довод в пользу (питоно/хаскеле)подобного синтаксиса )))
-
Нашёл.
Недостающая скобка } должна стоять в 1'634 строке.
Расстояние между ошибкой и местом когда компилятор сообразил, что не хватает скобки 1'852 строчек.
Ну, справедливости ради, в Обероне с этим не сильно лучше. Ну, то есть там ошибка расползется не на уровне одного исходного файла, а на уровне одной процедуры.
В Аде вот с этим сильно лучше - там у каждой конструкции своя закрывающая "скобочка". Причем те же циклы могут быть именными (и скобочки, если не путаю, будут соответствующими).
-
А вот не надо такие большие файлы делать )))
И вот ещё один довод в пользу (питоно/хаскеле)подобного синтаксиса )))
У хаскеля фигурные скобочки также никто не отменял :-) Но можно конечно и без них, да.
-
У хаскеля фигурные скобочки также никто не отменял :-) Но можно конечно и без них, да.
Как и у питона ))
-
В 2010 и 2012 студиях у меня рисует боковые линии, как здесь http://oberspace.dyndns.org/index.php/topic,425.msg13272.html#msg13272
Сразу все видно.
В 2008 - есть только штатная подсветка парных скобок и Ctrl+] :(
Вот прям именно такие линии? или просто линии соединяющие верхнюю строчку с нижней находящуюся на таком же уровне? если так то такую ошибку тоже будет очень сложно отыскать.
-
В Аде вот с этим сильно лучше - там у каждой конструкции своя закрывающая "скобочка". Причем те же циклы могут быть именными (и скобочки, если не путаю, будут соответствующими).
Не только в Аде. ;)
-
В Аде вот с этим сильно лучше - там у каждой конструкции своя закрывающая "скобочка". Причем те же циклы могут быть именными (и скобочки, если не путаю, будут соответствующими).
Не только в Аде. ;)
Но Ада все равно круче :-)
-
В 2010 и 2012 студиях у меня рисует боковые линии, как здесь http://oberspace.dyndns.org/index.php/topic,425.msg13272.html#msg13272
Сразу все видно.
В 2008 - есть только штатная подсветка парных скобок и Ctrl+] :(
Вот прям именно такие линии? или просто линии соединяющие верхнюю строчку с нижней находящуюся на таком же уровне? если так то такую ошибку тоже будет очень сложно отыскать.
хе ... я D7 уже лет как 6 использую с CnPack'ом там помимо этого есть раскраска операторных скобок различной вложенности различным цветом.. помогает
-
В 2010 и 2012 студиях у меня рисует боковые линии, как здесь http://oberspace.dyndns.org/index.php/topic,425.msg13272.html#msg13272
Сразу все видно.
В 2008 - есть только штатная подсветка парных скобок и Ctrl+] :(
Вот прям именно такие линии? или просто линии соединяющие верхнюю строчку с нижней находящуюся на таком же уровне? если так то такую ошибку тоже будет очень сложно отыскать.
хе ... я D7 уже лет как 6 использую с CnPack'ом там помимо этого есть раскраска операторных скобок различной вложенности различным цветом.. помогает
А я Идею использую для Go. Там даже если не влазит блок целиком на экран, все равно голову блока видно (то есть верхнюю пару нижней скобочки). Это реально помогает найти потерянную скобочку вне зависимости от степени вложенности и разлапистости кода.
-
вот так
-
Уже установил и испытал. Действительно красиво с первого взгляда. Но думаю меня на работе не поймут если буду использовать эту среду разработки.
-
В связи с этой потерянной скобкой не могу не вспомнить статью Криса Окасаки "В защиту значимых отступов для новичков" (http://okasaki.blogspot.ru/2008/02/in-praise-of-mandatory-indentation-for.html). Там он указывал, что студенты, изучающие программирование, больше всего проблем имеют именно с этими проклятыми закрывающими скобками (какими бы они ни были -- } или end). Гораздо больше проблем, чем с теми же типами...
Оказывается, такие проблемы бывают не только у студентов, но и профессионалов )))))))
-
Уже установил и испытал. Действительно красиво с первого взгляда. Но думаю меня на работе не поймут если буду использовать эту среду разработки.
Какую именно среду разработки -- IDEA или Delphi? ))
-
Уже установил и испытал. Действительно красиво с первого взгляда. Но думаю меня на работе не поймут если буду использовать эту среду разработки.
Это ты про Идею? Дык решарпер юзай :-)
-
Уже установил и испытал. Действительно красиво с первого взгляда. Но думаю меня на работе не поймут если буду использовать эту среду разработки.
Это ты про Идею? Дык решарпер юзай :-)
Хотя не уверен что решарпер умеет так. Все же он со студией живет.
-
А я Идею использую для Go. Там даже если не влазит блок целиком на экран, все равно голову блока видно (то есть верхнюю пару нижней скобочки). Это реально помогает найти потерянную скобочку вне зависимости от степени вложенности и разлапистости кода.
Lazarus тоже научился такому -действительно удобно
-
Вот прям именно такие линии? или просто линии соединяющие верхнюю строчку с нижней находящуюся на таком же уровне? если так то такую ошибку тоже будет очень сложно отыскать.
Линии соединяют парные скобки, если они на разных строках. Отступ не при чем.
Вот тут я сдвинул подальше закрывающую скобку у catch.
Кстати, до самой скобки линия специально не доходит - это хреново выглядит.
(http://s017.radikal.ru/i430/1301/40/04083751b38e.png)
Верхушки за кадром тоже показываются, если навести мышку на линию.
Если, конечно, взять файл в тыщи строк и произвольно поудалять/добавить скобок, то придется изрядно потрудиться для исправления. Но в реальности-то все не так происходит.
-
(http://s020.radikal.ru/i713/1301/e9/d34565ee807d.png)
А вот с таким уродством я бы не смог работать вообще ;)
-
А вот с таким уродством я бы не смог работать вообще ;)
Вам не нравится радуга? Вы имеете что-то против гей-парадов? )))
-
(http://s020.radikal.ru/713/1301/e9/d34565ee807d.png)
А вот с таким уродством я бы не смог работать вообще ;)
не нравится - отключите.. будет порево которое вам по - душе (только линии и скобки).. только описанной проблеме оно не сильно в помощь ;) :D
-
А вот с таким уродством я бы не смог работать вообще ;)
Вам не нравится радуга? Вы имеете что-то против гей-парадов? )))
там можно настроить и для сексистов.. аля - Geniepro special...
-
А вот с таким уродством я бы не смог работать вообще ;)
Вам не нравится радуга? Вы имеете что-то против гей-парадов? )))
там можно настроить и для сексистов.. аля - Geniepro special...
На самом деле насчёт радуги -- там почему-то у Вас пропущен синий цвет. Слишком похож на голубой, что ли?
Без синей полоски картинка не цельна...
-
На самом деле насчёт радуги -- там почему-то у Вас пропущен синий цвет. Слишком похож на голубой, что ли?
Без синей полоски картинка не цельна...
Сорри ... :( не угодил.. хотя цвета генерируются автоматом (я не менял настройки) - но вам безусловно виднее (не цельна, так не цельна)..
-
Вот прям именно такие линии? или просто линии соединяющие верхнюю строчку с нижней находящуюся на таком же уровне? если так то такую ошибку тоже будет очень сложно отыскать.
Линии соединяют парные скобки, если они на разных строках. Отступ не при чем.
Вот тут я сдвинул подальше закрывающую скобку у catch.
Кстати, до самой скобки линия специально не доходит - это хреново выглядит.
(http://s017.radikal.ru/i430/1301/40/04083751b38e.png)
Верхушки за кадром тоже показываются, если навести мышку на линию.
Если, конечно, взять файл в тыщи строк и произвольно поудалять/добавить скобок, то придется изрядно потрудиться для исправления. Но в реальности-то все не так происходит.
поделитесь ссылочкой на тулзень, пожалуйста
-
Для какой студии, 2010 или 2012?
Выложу не раньше, чем завтра после обеда (с работы).
-
для 2012
-
Вложил файл
-
Обновил для 2013 студии.
Вообще-то микрософт вернул выделение структуры в Productivity Power Tools 2013 (https://visualstudiogallery.msdn.microsoft.com/dbcb8670-889e-4a54-a226-a48a15e4cace). Но мне не нравится их стиль - прямые линии.
Хотя для тех, кто выравнивает скобки по левому краю, прямые линии, возможно, самое то.
Другое дело, что при наличии такого инструмента сами аргументы для выравнивания скобок по левому краю полностью теряют смысл.
-
С comminity редакцией и app. assistant'ом вроде работает... вопрос такой - как убрать(изменить) раскрашивание линий (скобок) - привык к темной схеме... текущее чередование белых и темно синих линий на темном фоне жутко раздражает.
-
В оригинале были чуть ли не все цвета радуги и настройка через реестр для каждого типа блока .
В Productivity Power Tools 2013 (https://visualstudiogallery.msdn.microsoft.com/dbcb8670-889e-4a54-a226-a48a15e4cace) есть настройка в опциях студии.
Я работаю с белым фоном, поэтому выкинул все и зашил в код чередование Brushes.Gray и Brushes.Navy.
Что должно быть на темном фоне - не представляю.
Есть предложения?
-
Есть предложения?
Думаю, что нет - это слишком индивидуально (у меня, например, достаточно слабое зрение - с белого фона быстро устают глаза). Впрочем, я понял о чем идет речь - если сильно допечет, то поэкспериментирую, либо выставлю белый на все скобки.