Vim script 변수에 범위별로 색을 지정하는 플러그인을 만들었습니다.
2236 단어 Vim
소개
Vim9 script가 본체에 병합되어 스코프 사정이 다소 어려워졌기 때문에, 시각적인 판별을 용이하게 하기 위해서 스코프별로 색을 붙이는 플러그인을 작성했습니다.
wordijp/vim-vimscript-scope-syntax
vim-plug를 사용하시는 분은 다음을 vimrc에 추가해 :PlugInstall로 인스톨 하는 것만으로 움직입니다.
Plug 'wordijp/vim-vimscript-scope-syntax'
데모
색 구성표 slate의 비교입니다.
적용하기 전에 모든 변수가 같은 색을 띠기 때문에 Vim 스크립트에 익숙해져야합니다.
이쪽이 아래와 같이 스코프별로 색이 붙습니다.
Vim9 script에서는 문법이 약간 바뀌었기 때문에, 그것들에 대한 대응이 아직이 되고 있습니다.
조금 만진 곳 아직 버그가 있는 것 같았기 때문에 1 , 차분한 무렵에 대응하자고 생각합니다.
Vim9 script 등장에 의한 스코프 사정에 대해서
Vim9 script에서는, 로컬 스코프의 변수에 접두사 l:
가 불필요하게 되어 있거나, 연산·대입시에 let
가 불필요하게 되어 있습니다.
그 때문에 모든 변수에 스코프별의 접두사를 붙일 수 없게 되어, 현재의 스코프로부터 변수가 어느 스코프에 속하고 있는지를 의식할 필요가 약간 나왔습니다.
함수 밖에서 s:
를 붙이지 않고 글로벌 스코프로 해 버리는 것은 초보자의 무렵에 잘 하기 쉽습니다만 2 , 향후는 접두사 첨부로 통일할 수 없게 되어, 접두사 없음 변수를 사용할 기회가 늘어날까 생각합니다.
범위별 색칠 정보
색은, 글로벌(g:), 스크립트(s:), 로컬(l:), 인수(a:)의 4 종류와, 그 외의 특수계(b:, w:, t:, v:)를 같은 색으로 한 총 5종류를 설정하고 있습니다만, 각각의 색은 현재의 색 스킴으로부터 자동 생성을 하고 있습니다.
조건 포인트로서는, 4종류를 한온색으로 해, 글로벌과 스크립트는 한색, 로컬과 인수를 따뜻하게 하는 것으로, 화면 전체가 따뜻한 색에 접근할수록 변수의 스코프가 좁아지고 있다고 판단할 수 있도록 해 보았습니다.
결론
Vim9 script에는 아직 버그가 있는 것 같기 때문에, 사양이 진정되면 다시 수정할까 생각합니다.
증분 감소가 README.md에 추가되었지만 불가능하거나 변수 i를 사용하면 오류가 발생합니다. ↩
곧 익숙해진다고 생각합니다. ↩
Reference
이 문제에 관하여(Vim script 변수에 범위별로 색을 지정하는 플러그인을 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/wordijp/items/6bb608cd65b4127b8e16
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Plug 'wordijp/vim-vimscript-scope-syntax'
색 구성표 slate의 비교입니다.
적용하기 전에 모든 변수가 같은 색을 띠기 때문에 Vim 스크립트에 익숙해져야합니다.
이쪽이 아래와 같이 스코프별로 색이 붙습니다.
Vim9 script에서는 문법이 약간 바뀌었기 때문에, 그것들에 대한 대응이 아직이 되고 있습니다.
조금 만진 곳 아직 버그가 있는 것 같았기 때문에 1 , 차분한 무렵에 대응하자고 생각합니다.
Vim9 script 등장에 의한 스코프 사정에 대해서
Vim9 script에서는, 로컬 스코프의 변수에 접두사 l:
가 불필요하게 되어 있거나, 연산·대입시에 let
가 불필요하게 되어 있습니다.
그 때문에 모든 변수에 스코프별의 접두사를 붙일 수 없게 되어, 현재의 스코프로부터 변수가 어느 스코프에 속하고 있는지를 의식할 필요가 약간 나왔습니다.
함수 밖에서 s:
를 붙이지 않고 글로벌 스코프로 해 버리는 것은 초보자의 무렵에 잘 하기 쉽습니다만 2 , 향후는 접두사 첨부로 통일할 수 없게 되어, 접두사 없음 변수를 사용할 기회가 늘어날까 생각합니다.
범위별 색칠 정보
색은, 글로벌(g:), 스크립트(s:), 로컬(l:), 인수(a:)의 4 종류와, 그 외의 특수계(b:, w:, t:, v:)를 같은 색으로 한 총 5종류를 설정하고 있습니다만, 각각의 색은 현재의 색 스킴으로부터 자동 생성을 하고 있습니다.
조건 포인트로서는, 4종류를 한온색으로 해, 글로벌과 스크립트는 한색, 로컬과 인수를 따뜻하게 하는 것으로, 화면 전체가 따뜻한 색에 접근할수록 변수의 스코프가 좁아지고 있다고 판단할 수 있도록 해 보았습니다.
결론
Vim9 script에는 아직 버그가 있는 것 같기 때문에, 사양이 진정되면 다시 수정할까 생각합니다.
증분 감소가 README.md에 추가되었지만 불가능하거나 변수 i를 사용하면 오류가 발생합니다. ↩
곧 익숙해진다고 생각합니다. ↩
Reference
이 문제에 관하여(Vim script 변수에 범위별로 색을 지정하는 플러그인을 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/wordijp/items/6bb608cd65b4127b8e16
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
색은, 글로벌(g:), 스크립트(s:), 로컬(l:), 인수(a:)의 4 종류와, 그 외의 특수계(b:, w:, t:, v:)를 같은 색으로 한 총 5종류를 설정하고 있습니다만, 각각의 색은 현재의 색 스킴으로부터 자동 생성을 하고 있습니다.
조건 포인트로서는, 4종류를 한온색으로 해, 글로벌과 스크립트는 한색, 로컬과 인수를 따뜻하게 하는 것으로, 화면 전체가 따뜻한 색에 접근할수록 변수의 스코프가 좁아지고 있다고 판단할 수 있도록 해 보았습니다.
결론
Vim9 script에는 아직 버그가 있는 것 같기 때문에, 사양이 진정되면 다시 수정할까 생각합니다.
증분 감소가 README.md에 추가되었지만 불가능하거나 변수 i를 사용하면 오류가 발생합니다. ↩
곧 익숙해진다고 생각합니다. ↩
Reference
이 문제에 관하여(Vim script 변수에 범위별로 색을 지정하는 플러그인을 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/wordijp/items/6bb608cd65b4127b8e16
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Vim script 변수에 범위별로 색을 지정하는 플러그인을 만들었습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/wordijp/items/6bb608cd65b4127b8e16텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)