Почему команды не работают вместе в VIM, а только отдельно?

Рассмотрим следующий текст:

com.abc.JavaClassA.doSomething(JavaClassA.java:35) com.abc.JavaClassA.doSomething(JavaClassA.java:35) com.abc.JavaClassA$2.doSomething(JavaClassA.java:35) com.abc.JavaClassA$1.doSomething(JavaClassA.java:35) 

Я запустил команду:

 :%s/\v\.[^\.]{-}\(.*\)//ge | g/\v\$[0-9]+$/de | %sort u | %!uniq 

Я жду:

 com.abc.JavaClassA 

Но выход:

 com.abc.JavaClassA com.abc.JavaClassA$1 

Зачем? Я думал, что com.abc.JavaClassA$1 нужно удалить g/\v\$[0-9]+$/de

One Solution collect form web for “Почему команды не работают вместе в VIM, а только отдельно?”

Согласно документации vim :global (aka :g ) не может использоваться в | -пределенная цепочка команд как | является одним из его потенциальных аргументов. Вы можете обойти это с помощью :execute :

 :execute 'command1' | 'command2' [...] 
  • Использует ли ctrl + c вместо esc для выхода из режима вставки, что-нибудь в vi?
  • Могу ли я переназначить ctrl-j и ctrl-k в vim?
  • Цвет Vim FoldColumn отличается от Debian / Ubuntu
  • Как исправить сдвинутые функциональные клавиши в vim в xterm в gnome-терминале?
  • Отображения Alt для vim в urxvt
  • Как указать произвольное имя для регистрации в vim
  • Становление корня изнутри Vim
  • Не удается установить vim в Fedora 20
  • tmux, Vim и Solarized
  • Как восстановить отсутствующий каталог Vim?
  • Как установить кодировку VIM по умолчанию в UTF-8?
  • Linux и Unix - лучшая ОС в мире.