2013-07-05 7 views
2

Я хочу использовать Поиск и замена диалога в RubyMine, или что-то подобное, чтобы заменить что-то вроде «Сценарий:» с «@Desktop \ nScenario»Замена строки в RubyMine со строкой с новой строкой

Я нахожусь пытаясь заменить каждый экземпляр Scenario: в большом огурец тесты с

@desktop 
Scenario: 

любых лучшими способами сделать это?

ответ

8

Update:

Благодаря @ryan2johnson9 комментарий, я понимаю, что теперь более простой вариант (проверено на 2017.3).

Нажав на «Новая линия» (или с помощью сочетания клавиш Ctrl + Shift + Enter/Alt + Enter), вход становится многострочным.

New line Multiline


Оригинал ответа

В поиске и заменить окно, если поставить галочку в "Regex" вариант вы можете сделать:

Поиск: «Сценарий: " Заменить на:" @desktop \ nСценарий: "

Единственная хитрость заключается в тик «Regex» вариант :)

+0

Немного поздно, но я все равно хочу отметить, что для тех, кто видит это, вам нужно избегать специальных символов регулярного выражения, поэтому, если в вашей строке поиска есть '[]' или '{}', должен получить обратную косую черту. –

+0

В Rubymine 6.3 Мне удалось щелкнуть многострочную кнопку справа от входа для поиска. Теперь у меня есть Rubymine 8.0.3, и эта функция, похоже, больше не существует :( – ryan2johnson9

+1

@ ryan2johnson9: когда вы находитесь в поиске, введите «alt + enter», и он переключится на многострочный вход – ouranos

0

У Rubymine есть макросы (http://www.jetbrains.com/ruby/webhelp/binding-macros-with-keyboard-shortcuts.html), но я не думаю, что они достаточно мощны для этого примера.

Возможно, вы смогли решить эту проблему с помощью некоторой сложной функции, скрытой внутри Rubymine, но я думаю, что было бы намного проще сделать это с помощью инструмента, такого как perl/sed из терминала. Если вы используете Windows, я предполагаю, что вы можете искать в сети и находить инструмент поиска и замены текста, который вам подходит.

В OSX I есть также приложение с текстовыми замещениями.

Я бы поехал по этому маршруту с тех пор, как инструмент макросов Rubymines не соответствует задаче.

0

Вот дешевый и непрочный альтернатива:

  1. Скопировать символ новой строки из между двумя пустыми строками в файле редактируется. Временно добавьте две пустые строки, если у вас их нет.
  2. Настройте поиск/замену и введите строку, которую вы хотите заменить, в поле ввода текстовое поле ввода.
  3. Вставьте новую строку, которую вы только что скопировали в текстовое поле , а также любой другой текст, который вы хотите. Вы сможете видеть, что высота окна ввода текстового ввода растет вертикально на одну строку из-за новой строки.
  4. Выполнение поиска/замены.

Для этого использование Rubyine regex не является обязательным.

Смежные вопросы