Переместить все {справа от имени функции? - PullRequest
1 голос
/ 09 января 2011

Я объединяю некоторый код, и все функции этого кода выглядят так:

void someFunction()
{

}

В то время как весь наш код должен быть:

   void someFunction() {

    }

Мне было интересно, было лиспособ найти и заменить, чтобы изменить все сразу.Это сэкономит мне часы работы.

Я использую VS 2008.

Спасибо

Ответы [ 4 ]

6 голосов
/ 09 января 2011

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

Artistic Style - это индентор, форматировщик и beautifier исходного кода для языков программирования C, C ++, C # и Java.

При отступе исходного кода мы как программистыимеют тенденцию использовать пробелы и символы табуляции для создания требуемого отступа.Более того, некоторые редакторы по умолчанию вставляют пробелы вместо вкладок при нажатии клавиши табуляции, а другие редакторы (например, Emacs) имеют возможность «выравнивать» строки, автоматически устанавливая пробел перед кодом в строке, возможно вставляяпробелы в коде, который до сих пор использовал только вкладки для отступа.

Поскольку число символов пробела, отображаемое на экране для каждого символа табуляции в исходном коде, изменяется между редакторами (если пользователь не установил число для своегонравится ...), одна из стандартных проблем, с которыми сталкиваются программисты при переходе от одного редактора к другому, заключается в том, что код, содержащий как пробелы, так и табуляции, который до сих пор был полностью с отступом, внезапно становится беспорядком, на который нужно смотреть при переходе на другой редактор.Даже если вы, как программист, заботитесь только о том, чтобы использовать ТОЛЬКО пробелы или табуляции, просмотр исходного кода других людей все еще может быть проблематичным.

Для решения этой проблемы был создан художественный стиль - фильтр, написанный на C ++, который автоматически перезаписывает-индентирует и переформатирует исходные файлы C / C ++ / C # / Java.Его можно использовать из командной строки или в виде классов в другой программе на C ++.

3 голосов
/ 09 января 2011

Вы можете использовать Visual Studio «Заменить все» в окне «Найти и заменить» с регулярными выражениями. Будет что-то вроде
Найти: \):b*\n:b*\{
Заменить: ) {
Сначала вам нужно попробовать его, чтобы убедиться, что он не меняет то, что вы не хотите менять, например, если вы хотите, чтобы ваш if() { был в отдельных строках. Другой вариант, который может сработать, - это настроить все параметры текста в Visual Studio так, как вы этого хотите, а затем попытаться автоматически отформатировать каждый файл.

0 голосов
/ 09 января 2011

Под

Инструменты> Параметры> Текстовый редактор> C ++> Форматирование> Новые строки,

вы должны иметь возможность временно изменить правила, переформатировать код и затем выполнить попытку слияния. (Я вытащил эти настройки из C # - на этом компьютере не установлено никаких компонентов C ++ для проверки.)

0 голосов
/ 09 января 2011

Eclipse CDT и IDE обычно имеют правила форматирования, которые вы можете определить, а затем применить к целым файлам одним нажатием в меню или сочетанием клавиш

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...