Jak mogę wykonać selekcję Vima lub zakres w bashu bez zastępowania go?


12

Chciałbym zaznaczyć tekst w vimie, a następnie wykonać go w bash. Znam następującą procedurę:

  1. zaznacz tekst za pomocą Vlubv
  2. :!!

Zastępuje to jednak wybór wynikiem polecenia. Co jeśli tego nie chcę?

Odpowiedzi:


21

Wpisz :wpolecenie w następujący sposób:

:w !command

Podczas pisania będzie wyglądać następująco:

:'<,'>w !command

Widzieć

:help :w_c

3
Jest to poprawne, ale uważaj, aby nie zrobić tego :w! commandprzez pomyłkę. Jeśli polecenie jest programem, do którego masz dostęp do zapisu, zastąpi ono program i nie będziesz mógł cofnąć zmiany, ponieważ nie był to otwarty bufor.
Ray

5

W vimie 8.0 możesz wybrać zakres linii i uruchomić :terminal bash. Spowoduje to otwarcie terminala działającego bashz twoim wyborem jako stdin.

:terminal node, :terminal ruby, :terminal pythonWydają się działać dobrze, jak dobrze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.