vim을 사용하여 로그 파일을 분석하고 있는데 형식은 다음과 같습니다.
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
대부분의 경우 날짜와 시간에 신경 쓰지 않기 때문입니다. 나는 그것들을 숨기고 이름과 로그 텍스트 열에만 집중하고 싶습니다(일부 화면 공간을 절약하기 위해). 처음 세 개의 열은 항상 행의 처음 35자를 차지합니다. vim이 각 줄의 처음 35자를 표시하지 않도록 하는 방법이 있나요?
답변1
첫 글자를 제거하거나 눈에 띄지 않게 스크롤하는 대신 숨기는 방법에 대해 문의하셨습니다. 따라서 실제로 숨기는 방법은 다음과 같습니다.
Vim에서 텍스트를 숨기려면 hide를 사용하세요.
당신은 그것을 사용할 수 있습니다성냥, 결합하다구문 강조그리고숨다함수는 실제로 한 줄 내에서 일치하는 문자를 표시하지 않습니다.
각 줄의 처음 25자를 숨기려면:
:syn match Concealed '^.\{25\}' conceal
:set conceallevel=2
날짜 구두점이 있는 줄만 숨기려면 다음 단계를 따르세요.
:syn match Concealed '^....-..-.. ..:..:..\..... ' conceal
숨기기 해제:
:syn clear Concealed
:set conceallevel=0
일반적으로 다음과 같습니다.
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
YYYY-MM-DD HH:MM:SS.USEC PID Name LogText
처음 두 명령을 실행하면 다음과 같이 표시됩니다.
PID Name LogText
PID Name LogText
PID Name LogText
PID Name LogText
PID Name LogText
PID Name LogText
PID Name LogText
참조 - 내부
vim
:help :syn-match
help :syn-conceal
help 'conceallevel'
help 'concealcursor'
(이렇게 작동하지 않으면 알려주세요. 제가 모르는 일부 설정이 있을 수 있습니다. 그러면 작동하도록 하겠습니다.)
답변2
답변3
나는 당신이 찾고있는 것과 더 일치한다고 생각합니다가로 스크롤.
Z
가로 스크롤 명령 키와 이동 방향의 왼쪽 또는 오른쪽 화살표 키입니다.
먼저 :set nowrap
줄 바꿈을 비활성화합니다. 그런 다음 z, 35,를 눌러 →35칸 스크롤합니다.
답변4
버퍼나 파일을 수정할 필요가 없는 기억하기 쉬운 솔루션이 있습니다. L
(귀하의 예에서) 보려는 파일 부분의 첫 번째 문자에 커서를 놓고 다음을 입력하십시오.
:set nowrap
zs
이 zs
명령은 커서 위치의 문자가 화면의 첫 번째 열에 나타나도록 vi를 설정합니다. :set nosol
프로필을 입력하지 않았는지 확인하세요 .
이 g$
명령은 커서를 마지막으로 보이는 열로 이동합니다.
이 g0
명령은 L을 포함하는 열인 표시되는 첫 번째 열로 커서를 다시 이동합니다.
아무 키나 커서를 보이는 열 바깥쪽 왼쪽이나 오른쪽으로 이동하면 보이는 창이 이동합니다.