Как я могу игнорировать пробелы в запросах при использовании comby?

Я имею в виду комбинированный инструмент, который можно найти на https://comby.dev/ и https://github.com/comby-tools/comby.

Если у меня есть файл с содержимым:

         void f();
   void g( );

И я хочу реорганизовать оба выражения из ; to {} (я знаю, что с sed будет быстрее, но я хочу использовать comby для более сложных выражений, и это только пример.)

          $ comby 'void :[fname]();' 'void :[fname](){}' ./001.c
    ------ .../001.c
    ++++++ .../001.c
    @|-1,3 +1,3 ============================================================
     |
    -|void f();
    +|void f(){}
     |void g( );


    $ comby 'void :[fname]( );' 'void :[fname](){}' ./001.c
    ------ .../001.c
    ++++++ .../001.c
    @|-1,3 +1,3 ============================================================
     |
     |void f();
    -|void g( );
    +|void g(){}

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

Но я хочу преобразовать все совпадающие вхождения сразу, независимо от наличия пробелов.

Я не нашел варианта игнорирования пробелов - возможно, я пропустил один вариант.

Теоретически я мог бы использовать улучшитель кода или нормализовать все фигурные скобки, прежде чем использовать comby.

Как правильно решить эту проблему?

0 ответов

Другие вопросы по тегам