안녕하세요
vi쓰면서 syntax 설정에 syn region statements start='"' end='"' 이렇게 해서 따옴표 부분만 구문만들어서 쓰고있는데요 이렇게하면 문제가 따옴표 하나만 들어가 있는 문장이 나오면 그 아래 줄로 쭉~ 강조가 들어가요
한줄에 따옴표 한개만 있으면 강조 안하게 하는 법이 있을까요? 아직 프로그래밍 허접이라 어떻게 설정할 지 모르겠네요ㅠ
잘은 모르지만 start와 end에 정규식이 되는 것 같길래 몇 가지 해봤는데요,
syn region String start='"' end='"\|\n'
이러면, 종료 태그가 "따옴표 또는 줄바꿈"이니까, 한 줄에 따옴표 하나만 들어가 있으면 거기서부터 줄 끝까지만 강조가 되고 다음 줄로는 안 넘어갑니다.
syn region String start='"\(.*"\)\@=' end='"'
이 경우는 따옴표가 나와도 뒤에 또 다른 따옴표가 있을 때만 시작 태그로 인식하기 때문에, 따옴표가 하나만 있으면 아예 무시합니다.
두 가지 다 정교한 처리(백슬래시+따옴표는 스킵한다든가...)는 못 하지만, 간단한 텍스트 작성시에는 무난할 것 같은데요.
좋은 하루 되세요!
정말 감사합니다!
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
잘은 모르지만 start와 end에 정규식이 되는 것
잘은 모르지만 start와 end에 정규식이 되는 것 같길래 몇 가지 해봤는데요,
이러면, 종료 태그가 "따옴표 또는 줄바꿈"이니까, 한 줄에 따옴표 하나만 들어가 있으면 거기서부터 줄 끝까지만 강조가 되고 다음 줄로는 안 넘어갑니다.
이 경우는 따옴표가 나와도 뒤에 또 다른 따옴표가 있을 때만 시작 태그로 인식하기 때문에, 따옴표가 하나만 있으면 아예 무시합니다.
두 가지 다 정교한 처리(백슬래시+따옴표는 스킵한다든가...)는 못 하지만, 간단한 텍스트 작성시에는 무난할 것 같은데요.
좋은 하루 되세요!
와우 완벽한 답변이네요
정말 감사합니다!
댓글 달기