Объемное пространство с кавычками

Как возможно в Eclipse JDT преобразовать многострочный выбор в String. Как и следующее

Из:

xxxx yyyy zzz 

Для того, чтобы:

 "xxxx " + "yyyy " + "zzz" 

Я попробовал следующий шаблон

 "${line_selection}${cursor}"+ 

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

Возможно, это не то, что вы имеете в виду, но …

Если я нахожусь в строке в Eclipse, и я ввожу двойные кавычки, то внутри этого паста многострочный выбор (например, ваш пример xyz) он будет выставляться следующим образом:

 "xxxx\n" + "yyyy\n" + "zzz" 

Тогда вы могли бы просто найти / заменить в выборе для "\n" на "" , если вы не намеревались использовать новые строки.

Я думаю, что опция включить это в Window/Preferences , в разделе Java/Editor/Typing/ , установите флажок "Escape text when pasting into a string literal" . ( Eclipse 3.4 Ganymede )

Find / Replace с включенной опцией regex. Найти:

 ^(.*)$ 

Заменить:

 "$1" + 

Ну, в последней строке будет избыток + , вы должны удалить его вручную.

Я бы пошел с помощью поиска / замены eclipse в режиме регулярного выражения:

  • Найти:

    ^ ((?: \ s (?) \ S?) ((?: \ s (?! [\ r \ n])) )

  • Заменить

    \ 1 “\ 2” \ 3 +

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

Возможно, это не тот ответ, который вы ищете. Вы можете легко достичь того, что вы просите, используя редактор sed-streamа. Это доступно во всех вариантах Unix, а также в Windows, загрузив набор инструментов, например cygwin . В командной строке оболочки Unix выполните команду

 sed 's/^/"/;s/$/"+/' 

и вставьте текст, который вы хотите преобразовать. На его выходе вы получите преобразованный текст. Аргумент, переданный sed, заменяет (s) начало строки (^) с цитатой и заменяет (-ы) конец каждой строки ($) цитатой и плюсом.

Если текст, который вы хотите преобразовать, большой, вы можете перенаправить ввод и вывод sed через файлы. В таком случае запустите что-то вроде

  sed 's/^/"/;s/$/"+/' outputfile 

В Windows вы также можете использовать команду winclip набора инструментов Outwit для непосредственного изменения того, что находится в буфере обмена. Просто запустите

 winclip -p | sed 's/^/"/;s/$/"+/' | winclip -c 

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

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

Interesting Posts
Давайте будем гением компьютера.