외부 명령으로 시각적으로 선택된 블록을 수정하는 방법은 무엇입니까?


9

두 개의 수직 부분으로 구성된 파일이 있습니다. 왼쪽에는 데이터가 이미 형식화되어 있으며 변경하고 싶지 않습니다. 오른쪽의 데이터 만 형식화하고 싶습니다. 다음과 같은 줄이있는 파일이 있다고 가정 해보십시오.

foo=bar baz     # Neato       Junk
quux=xyzzy      # Bilbo Baggins Ring

더 많은 줄이 있습니다. '#'문자 오른쪽의 텍스트 만 수정하고 싶습니다. 다음 식으로 원하는 텍스트를 선택했습니다.

gg
/#
ctrl-v
G
$

그러나 그런 다음 수정하려고하면 (예 :로 :'<,'>!column -t) 실제로 모든 줄의 전체를 수정합니다. 시각적으로 선택된 부품 만 수정하는 데 올바른 표현은 무엇입니까?


2
Dr. Chip 또는 내 NrrwRgn 플러그인 에서 vis 플러그인을 사용해 볼 수 있습니다. 둘 다 잘 처리해야합니다.
Christian Brabandt

답변:


6

시도해 볼 수도 있습니다 :

gg
^V
G
t#
d
:%!column -t
gg
P

보낸 사람 :h :visual_example:

현재 ":"명령은 전체 행에서만 작동합니다. 줄의 일부를 선택할 때 ":! date"와 같은 작업을 수행하면 전체 줄이 바뀝니다. 라인의 일부만 교체하려면 맵핑을 작성해야합니다. 다음 릴리스에서 ":"은 부분 라인에서 작동 할 수 있습니다.

자세한 내용은 참조 :h visual-operators하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.