vim c ++ разрыв строки - PullRequest
       1

vim c ++ разрыв строки

0 голосов
/ 30 апреля 2010

Как я могу разбить длинные строки при написании кода на C ++ в vim? Например, если у меня есть что-то вроде

56 fprintf(stderr, "Syntax error reading recursion value on 
57                line %d in file %s\n", line_count, filename);

Я получаю следующие ошибки компиляции:

:56:25: warning: missing terminating " character
:56: error: missing terminating " character
:57: error: stray ‘\’ in program
:57:37: warning: missing terminating " character
:57: error: missing terminating " character

Я новичок Вим.

Спасибо!

Ответы [ 4 ]

5 голосов
/ 30 апреля 2010

Это не проблема Vim, это проблема C.

Поставьте кавычки в конце одной строки и в начале другой.Может быть, вы ищете это:

fprintf(stderr, "Syntax error reading recursion value on "
                "line %d in file %s\n", line_count, filename);

... и если вы хотите знать, как превратить одну длинную строку в две, если вы разделяете среднюю строку, перейдите туда, где выхотите разделить, а затем введите «я», а затем цитата-введите-цитата.Vim будет следовать вашим правилам cindent при выравнивании второй строки.

В качестве альтернативы, может быть, это проблема с просмотром?Если у вас есть перенос строки, это даст вам ошибку компиляции.Тем не менее, в vim можно сделать так, чтобы он ломался, поместив set wrap и set lbr в ваш файл vimrc.Проверьте :help lbr для информации.Также есть способ настроить «лидера» на линии, чтобы вы знали, что это разрыв строки только для просмотра.

2 голосов
/ 30 апреля 2010

Мой совет - не разрывать строку

вместо этого

    fprintf (stderr,  
             "Syntax error reading recursion value on line %d in file %s\n", 
             line_count, 
             filename);
1 голос
/ 30 апреля 2010

Как и Billy ONeal, я немного сбит с толку, почему ты задаешь это как вопрос Vim. Код, который вам нужно написать:

fprintf(stderr, "Syntax error reading recursion value on "
                "line %d in file %s\n", line_count, filename);

Обратите внимание, что запятых нет - когда вы удаляете лишние пробелы, это всего лишь два строковых литерала вместе. Они будут объединены в одно, что, я считаю, именно то, что вы хотите.

1 голос
/ 30 апреля 2010

Поместите трейлинг \ в конец строки, которую вы хотите продолжить.

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