스크립트에서 파일명 확장 (vim)

vim 명령줄 모드에서 %는 보통 현재 파일의 전체 범위1나 현재 파일 이름의 의미가 된다. 그렇다면 함수와 같은 스크립트 문맥에서는 어떨까? 스크립트 문맥에서는 파일명확장이 이루어지지 않고, 대신에 expand()함수를 써서 수동으로 처리해야 한다. let current_file_name = expand(‘%’) let current_file_prefix = expand(‘%<‘) 그외 몇 가지 옵션이 있는데 이는 :h expand()로 찾아보면 된다. % : 현재 파일이름 # :

(vim) scss 파일을 자동으로 컴파일하게 하기

scss 파일을 저장할 때 자동으로 컴파일 해주는 기능을 만들어보자. vim8의 비동기IO를 이용해서 스무스하게 진행될 수 있게끔 했다. 컴파일은 sassc에 의존하며 이는 파이썬 pip를 이용해서 libsass를 설치하면 얻을 수 있다. 먼저 비동기 처리를 완료한 후 처리할 콜백함수와, 비동기로 컴파일 명령을 실행하는 두 함수를 작성한다. function! CB_compile_scss(channel, msg) echom ‘Compilation completed’ echom a:msg endfunction function CompileSCSS() let cname

vim “:command” 명령

write a new vim command :command! :command!는 새로운 vim 명령을 만드는 명령이다. 명령어는 관례적으로 대문자로 시작하며 몇가지 속성과 함께 정의된다. !가 끝에 붙는 경우에는 기존에 동일한 명령이 있는 경우에 이를 재정의하며, 그렇지 않은 경우 에러가 발생한다. 문법은 다음과 같다. :com[mand][!] [{attr}…] {cmd} {rep} {cmd}는 실행할 명령이며, {rep}은 대체문자열이다.1

vim : 단어 및 선택 영역을 둘러싸기

Surround.vim이라는 멋진 플러그인이 있기는 하지만, 개인적으로는 vimrc에 오랫동안 넣고 쓰던 코드 기본원리 기본원리는 매우 간단한데, 괄호 등으로 감싸고자 하는 단어를 선택영역으로 만든 다음, 선택 영역을 해제하고, 이 영역의 마지막과 끝 영역으로 이동해서 괄호짝을 삽입해주면 된다. viw: 현재 단어 선택 <esc>: 단어 선택 취소 \>`: 마지막 선택영역의 끝으로 이동 a)<esc>: 선택영역 뒤에 닫는 괄호 추가 \<`: