반응형
CentOS7 에 python 개발을 위한 vim 환경 설정을 한다.
사용 패키지 및 plugin
vim 9.0
python3.6.8
vim bundle : vim plugin 관리자
jedi-vim : 자동완성 plugin
vim-python-pep8-indent : 자동 들여쓰기 plugin
vim-flake8 : 문법검사 plugin
설치
CentOS7 커널 버전
# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
기본 패키지 설치
yum -y update
yum -y groupinstall "Development Tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make git wget
git 설치
CentOS7에서 지원하는 git 버전 말고 최신 버전의 git을 설치한다.
repo 추가
yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-1.noarch.rpm
git 설치
yum -y remove git
yum -y install git
git 버전 확인
# git version
git version 2.39.1
python 설치
CentOS7 에서 지원하는 최신 python 은 3.6.8이다.
yum -y install python3 python3-devel python3-pip
pip 업그레이드
pip3 install --upgrade pip
vim 설치
기존 vim을 삭제하고 9.0버전의 vim을 설치한다.
vim 삭제
yum -y remove vim*
vim 다운로드 및 설치
git clone https://github.com/vim/vim.git
cd vim/
./configure --with-features=huge --enable-multibyte --enable-rubyinterp=yes --enable-pythoninterp=yes --enable-python3interp=yes --prefix=/usr/local/vim9
make && make install
vim 심볼릭 링크
ln -s /usr/local/vim9/bin/vim /usr/bin/vim
vim 버전 확인
# vim --version
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Oct 24 2023 17:01:27)
vim bundle 설치
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
vimrc 설정 및 plugin 설치
vimrc에 아래 내용을 저장하고 나온다.
# vim ~/.vimrc
set nocompatible " be iMproved, required
filetype off " required
"Vundle을 포함하도록 런타임 경로 설정 및 초기화
set rtp+=~/.vim/bundle/Vundle.vim
"--------------------------------------------Plugin 시작
call vundle#begin()
Plugin 'VundleVim/Vundle.vim' " 최초 번들 설정
Plugin 'davidhalter/jedi-vim' " python 자동완성 Plugin
let g:jedi#show_call_signatures=0 " 자세히 설명하는 창을 보여준다 1=활성화, 0=비>활성화
let g:jedi#popup_select_first="0" " 자동완성시 자동팝업 등장 x
" let g:jedi#force_py_version=3 " 자동완성 3 = python3 , 2 = python2
Plugin 'hynek/vim-python-pep8-indent' " python 자동 들여쓰기 Plugin
filetype plugin indent on " python 자동 들여쓰기 on
Plugin 'nvie/vim-flake8' " python 문법 검사 plugin
" let g:syntastic_python_checkers=['flake8'] " ↓ 실행시 현재줄 주석
" let g:syntastic_python_flake8_args='--ignore=' " 무시하고자 하는
call vundle#end()
"---------------------------------------------Plugin 종료
"--------------------------------------------- vim 기본 설정
if has("syntax")
syntax on "구문 강조
endif
set t_Co=256 "구문강조 색 변경
set encoding=utf-8
set nu "Line 출력
set tabstop=4 "<Tab> key 4칸 이동
set shiftwidth=4 "들여쓰기 이슈시 2 로 바꿀것
set cursorline "현재 줄 강조
"-------------------------------------------- vim 기본 설정 끝
"--------------------------------------------맨밑 상태바 표시 향상
set laststatus=2 "두줄로 표시
set statusline=\ %<%l:%v\ [%P]%=%a\ %h%m%r\ %F\ "현재 라인 위치 출력
"------------------------------------------- au filetype (파일타입지정)
au FileType python map <f2> : !python %
다시 vimrc파일을 열어서 플러그인을 설치한다.
vim ~/.vimrc
:source %
:w
:PluginInstall
vim-flake8 은 pip로 설치한다.
pip3 install flake8
사용 방법
jedi : 자동완성
- 모듈 사용시 "." 을 찍으면 자동완성 내용을 볼수 있다.
- "Ctrl + Space Bar"를 누르면 함수(명령어) 자동 완성이 된다.
- "Shift + k"를 누르면 함수에 대한 상세 내용확인이 가능하다.
flake8 : 문법검사
- <f7> 을 누르면 문법검사를 할수 있다.
바로실행
vimrc의 "au FileType python map <f2> : !python %" 구문에 의해 "<f2> + Enter" 를 누르면 바로 실행이 가능하다.
반응형
'OS > Linux' 카테고리의 다른 글
jq filter를 이용한 json 출력하기 (1) | 2024.01.05 |
---|---|
Proxmox 환경 VM(CentOS7) 디스크 LVM 사이즈 증가 (0) | 2023.11.30 |
[Linux] 디스크 파티션 크기 확장(standard) (0) | 2023.09.04 |
[CentOS6] yum repo 변경 (0) | 2023.03.17 |
[varnish] cache 파일 조회 및 특정 경로 cache 제외 하기 (0) | 2022.12.27 |