centos7 python3.7+vi

发布时间:2019-08-25 09:38:40编辑:auto阅读(1357)

    centos7 python3.7+vim8

    安装python3.7
    https://www.python.org/downloads/
    centos7 python3.7+vim8
    centos7 python3.7+vim8
    https://www.python.org/downloads/release/python-372/
    centos7 python3.7+vim8
    wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz

    安装Python3.7.2

    安装Python所需依赖包
    yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel python-devel

    解压tar
    tar -xvzf Python-3.7.2.tgz
    配置
    cd Python3.7.2
    make clean
    ./configure --prefix=/usr/local/python3.7
    make
    make install
    删除旧版本python链接
    rm /usr/bin/python
    ln -s /usr/local/python3.7/bin/python3.7 /usr/bin/python
    查看是否安装成功
    python -V
    注:centos7 默认python 2.7.5
    如:/usr/bin/firewall-cmd、/usr/bin/yum使用的是python2请自行修改为#!/usr/bin/python2

    安装vim8.1

    源码包下载:
    https://github.com/vim/vim
    centos7 python3.7+vim8

    下载vim8.1:
    https://github.com/vim/vim/archive/v8.1.0888.tar.gz
    wget https://github.com/vim/vim/archive/v8.1.0888.tar.gz
    卸载旧版本
    yum remove vim*
    解压tar
    tar -xzvf v8.1.0888.tar.gz
    cd vim-8.1.0888
    --with-features=huge:支持最大特性
    --enable-rubyinterp:打开对ruby编写的插件的支持
    --enable-pythoninterp:打开对python编写的插件的支持
    --enable-python3interp:打开对python3编写的插件的支持
    --enable-luainterp:打开对lua编写的插件的支持
    --enable-perlinterp:打开对perl编写的插件的支持
    --enable-multibyte:打开多字节支持,可以在Vim中输入中文
    --enable-cscope:打开对cscope的支持
    --enable-fontset 字体设置
    --with-python-config-dir=/usr/lib64/python2.7/config #指定python2路径
    --with-python-config-dir=/usr/local/lib/python3.7/config-3.7m-x86_64-linux-gnu #指定python3路径
    --prefix=/usr/local/vim:指定将要安装到的路径

    查找python3配置文件路径
    注意:如果您使用的是Python,则您的config目录可能具有特定于计算机的名称(例如config-3.5m-x86_64-linux-gnu) 查找ptyhonn.o文件路径
    因为后续还要安装YouCompleteMe插件,YCM插件需要vim支持python2,所以这里python2和python3都有配置。
    ./configure --with-features=huge \
    --enable-multibyte \
    --enable-cscope \
    --enable-pythoninterp=yes \
    --enable-python3interp=yes \
    --with-python-config-dir=/usr/lib64/python2.7/config \
    --with-python-config-dir=/usr/local/python3.7/lib/python3.7/config-3.7m-x86_64-linux-gnu \
    --prefix=/usr/local/vim

    安装
    make
    make install
    创建链接
    ln -s /usr/local/vim/bin/vim /usr/bin/vim
    vim ~/.bashrc
    alias vi='vim'

    配置vim环境支持python3
    Vundle是Vim的插件管理工具
    mkdir -p ~/.vim/bundle
    git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

    添加插件
    注:在call vundle#begin()......call vundle#end()之间,打开vim插入模式 :PluginInstall

    vim ~/.vimrc
    "Vundle
    "去除VI一致性
    set nocompatible
    filetype off
    "设置Vundle的运行路径
    set rtp+=~/.vim/bundle/Vundle.vim
    "设置插件的安装路径,vundle插件起始标志
    call vundle#begin()
    "让vundle管理插件版本
    Plugin 'VundleVim/Vundle.vim'
    "设置插件的安装路径,vundle插件结束标志
    call vundle#end()
    "加载vim自带和插件相应的语法和文件类型相关脚本
    filetype plugin indent on

    set encoding=utf-8 "设置utf-8编码
    set number "显示行号
    syntax on "开启语法高亮
    set background=dark "设置背景色
    set showmatch "显示匹配的括号
    set backspace=2 "可以删除任意值
    set scrolloff=5 "距离顶部和底部5行
    set laststatus=2 "命令行为两行
    set fenc=utf-8 "文件编码

    "Python
    set filetype=python
    au BufNewFile,BufRead .py,.pyw setf python
    set autoindent "设置自动缩进
    set smartindent "自动下一行缩进
    set textwidth=79 "行最大宽度
    set expandtab "tab替换为空格键
    set tabstop=4 "设置table长度
    set softtabstop=4 "软制表符宽度为4
    set shiftwidth=4 "设置缩进的空格数为4
    set fileformat=unix "设置以unix的格式保存文件
    set foldmethod=indent "自动折叠
    set foldlevel=79 "最多79个字符

    "vim中F5直接调试
    map <F5> :call RunPython()<CR>
    func! RunPython()
    exec "w"
    if &filetype == 'python' "第一行#!/bin/python 运行python编译器
    exec "!time python %"
    elseif &filetype == 'sh' "第一行#!/bin/bash 运行shell编译器
    :!time bash %
    endif
    endfunc

关键字