[TOC]
第一步:安装wsl
第二步:安装wsl terminal
第三步:更新root用户的密码
第四步:更换软件源(apt源和pip源)
第五步:安装zsh
第六步:安装Vim plug和YouCompleteMe
第七步:编译YCM
第八步:配置YCM
第九步 python和pip配置
第十步 pypy3安装配置(如果不使用pypy请跳过)
第十一步 使用virtualenvwrapper虚拟环境
第十二步 Vim语法检查和格式化代码
第十三步 安装MariaDB数据库
第十四步:(仅对本人有效)修改.vimrc,添加molakai主题
WSL(Ubuntu)将Ubuntu和Win10无缝连接起来,让开发人员可以不使用虚拟机,就轻松地在同一个系统中使用win10和Ubuntu,你可以用它代替Cywin32和babun.
最新版win10(18年3月更新)
在win10的设置中打开更新和安全,打开针对开发人员选项电脑
然后在程序和功能中打开Linux子系统。
重启计算机后,打开应用商店搜索下载ubuntu18.04
旧版的win10或者离线安装
参考下面的内容安装bash。
http://www.cnblogs.com/VAllen/archive/2017/04/03/BashOnWindowsDownloadAndInstallError.html
推荐选择16.04的ubuntu。
添加ubuntu到快速访问
如果你需要经常在win10资源管理器对ubuntu的文件进行操作,那么在C盘搜索rootfs这个文件夹,这就是ubuntu在win10上的储存位置。
将rootfs文件夹拖放到资源管理器的快速访问。(你也可以添加其下的/home/你的用户文件夹)
获取权限
直接在win10资源管理器操作ubuntu的文件可能是无效的,这是因为win10的默认用户并不是超级管理员,对ubuntu的权限是只读的。
你需要取得rootfs文件夹的所有权限。(可以使用“鼠标管家”这个软件,添加菜单,管理员取得所有权限)
wsl-terminal是一个很好用的WSL终端。
下载WSL:
https://github.com/goreliu/wsl-terminal/releases
下载失败请试试以前的版本
在鼠标右键添加Open WSL Here
:
在wsl程序目录下,有个tools目录,运行其中的1-add-open-wsl-terminal-here-menu。(删除则运行1-remove开头的脚本)
电脑第三步:更新root用户的密码注意:最新版windows需要把wsl-terminal安装在非C盘
桌面点击鼠标右键,选择Open WSL Here
打开Bash。
更新root密码:
sudo passwd
第四步:更换软件源(apt源和pip源)这一步需要输入你在下载ubuntu后建立的用户密码
系统默认的apt源是国外的,下载软件速度慢,python的pip源也很慢,我们都换成阿里云的源。
更换apt源:
cd /etc/apt/sudo cp sources.list sources.list.bak && sudo vim sources.list
删除其中所有内容,替换成:
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiversedeb http:/电脑/mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
sudo apt updatesudo apt upgrade
修改pip源:
创建pip配置文件:mkdir ~/.pip && vi ~/.pip/pip.conf
在打开的vim中输入下文并保存:
[global]trusted-host=mirrors.aliyun.comindex-url=http://mirrors.aliyun.com/pypi/simple/
第五步:安装zsh
zsh能让你通过键盘的上键,查找以前输入的命令。
例如,你可以输入sudo
然后按向上键,就会出现以前输入的以sudo
开头的命令。
安装zsh:sudo apt -y install zsh
安装oh-my-zsh:sh -c \"$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)\"
让wsl-terminal默认启动zsh:
在wsl-terminal安装目录的/etc中,修改wsl-terminal.conf中相应的部分为
;shell=/bin/bashshell=/bin/zsh
第六步:安装Vim plug和YouCompleteMe如果提示文件只读,采取第一步中的获取权限
Vim plug是vim插件管理工具,YCM是很好用的C、python代码补全工具,也支持Go、Rust等其他语言。
下载Vim Plug:curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
在vimrc中添加安装配置
vi ~/.vimrc
在其中添加
\" Specify a directory for pluginscall plug#begin('~/.vim/plugged')\" Make sure you use single quotesPlug 'jiangmiao/auto-pairs'Plug 'davidhalter/jedi-vim', {'for': 'python'}Plug 'Valloric/YouCompleteMe', {'for': 'python'}\"可以添加已经手动安装的插件\"Plug '~/.vim/bundle/YouCompleteMe'\" Initialize plugin systemcall plug#end()
保存退出,并进入vi
vi
按下:
键进入命令行,输入
PlugInstall
注意:
YCM的python补全依赖jedi-vim
第七步:编译YCM因为YCM包有200多M,所以需要下载很久。
安装完成后提示YCM server错误,这是正常的,因为ycm需要手工编译出YCM core库。
安装YCM编译需要的依赖sudo apt -y install cmake build-essential python3-dev
切换到YCM目录:cd ~/.vim/plugged/YouCompleteMe
更改编译使用python3(使用python2.7时跳过本步骤):vi ./install.py
把第一行末尾的python改为python3
编译YCM core:./install.py
参考:
vim安装YouCompleteMe插件,与python补全插件jedi-vim
YouCompleteMe配置后才能发挥出它强大的功效。
在vimrc中设置YCM使用python3支持:
\"python版本设置,使用python2.7时去掉末尾的数字3let g:ycm_python_binary_path='/usr/bin/python3'\" 语法关键字补全let g:ycm_seed_identifiers_with_syntax=1\"从第2个键入字符就开始罗列匹配项let g:ycm_min_num_of_chars_for_completion=2\"最小候选标识符长度let g:ycm_min_num_identifier_candidate_chars = 5\"按下Ctrl+空格直接弹出所有类和函数,要先关闭系统中的输入法切换快捷键let g:ycm_key_invoke_completion = '<C-Space>'\"配置文件路径let g:ycm_global_ycm_extra_conf='~/.vim/.ycm_extra_conf.py'\"把ycm识别的标识符和语法关键字放在一起let g:ycm_seed_identifiers_with_syntax = 1\"注释和字符串中的文字也会被收入补全,默认关闭let g:ycm_collect_identifiers_from_comments_and_strings=1\"字符串输入补全,字符串中输入.加字母时会引发错误,默认开启let g:ycm_complete_in_strings=1
第九步 python和pip配置不同于很多vim插件,YCM需要有配置。在vim启动后,YCM会找寻当前路径以及上层路径的.ycm_extra_conf.py。在~/.vim/bundle/YouCompleteMe/third_party/ycmd/examples/中提供了默认的模板。
复制配置文件:
cp ~/.vim/plugged/YouCompleteMe/third_party/ycmd/examples/.ycm_extra_conf.py ~/.vim/
修改默认python3
sudo ln -s /usr/bin/python3 /usr/bin/pythonwget bootstrap.pypa.io/get-pip.py
安装pip
sudo python get-pip.py
第十步 pypy3安装配置(如果不使用pypy请跳过)
下载pypy3并解压
到pypy官网下载pypy3.6-v7.0.0-linux64.tar.bz2,然后用下面的命令解压
tar -jxvf pypy3.6-v7.0.0-linux64.tar.bz2
解压命令详解
解压后把文件夹命名为pypy3
移动pypy3到/usr/local/lib
sudo mv pypy3 /usr/local/lib/
建立软链接,使其可执行
sudo ln -s /usr/local/lib/pypy3/bin/pypy3 /usr/bin/pypy
给pypy安装pip
sudo pypy get-pip.pysudo ln -s /usr/local/lib/pypy3/bin/pip /usr/bin/pipp
第十一步 使用virtualenvwrapper虚拟环境注意:你也可以使用类似pip-pypy的命令来代替pipp,这只是我个人习惯
通常不同的项目会使用不同的库版本,虚拟环境能让你免弄坏系统环境的风险。virtalenvwrapper基于virtualenv,但是更方便。
安装virtualenvwrapper
sudo pip install -U virtualenvwrapper
这会自动安装依赖包virtualenv。
打开zshrc,添加环境变量等后,重启zsh终端
vi ~/.zshrcexport PATH=/usr/local/lib/pypy3/bin:$PATHexport VIRTUALENVWRAPPER_PYTHON=/usr/local/lib/pypy3/bin/pypy3source /usr/local/lib/pypy3/bin/virtualenvwrapper.sh
新建虚拟环境
mkvirtualenv -p /usr/local/lib/pypy3/bin/pypy3 env1
默认创建在~/. virtualenvs目录下
-p指定了建立时使用的版本,如果你使用默认的python3,可以使用mkvirtualenv env1
自动选择虚拟环境,在zshrc末尾添加
workon env1
注:找不到virtualenvwrapper.sh,可以使用下面的命令查找脚本
sudo find / -path \"/mnt\" -prune -o -name virtualenvwrapper.sh -print
第十二步 Vim语法检查和格式化代码
syntastic是语法检查工具,它需要flake8的支持,yapf用来格式化python代码。
安装flake8语法检查和yapf代码格式化
sudo pipp install flake8 yapf
在vimrc中安装syntastic
vimrc中添加
Plugin 'vim-syntastic/syntastic'\"(下面的配置放在vundle安装语句外)\"vimrc设置flake8作为语法检查器let g:syntastic_python_checkers = ['flake8']\"高亮错误\"let g:syntastic_enable_highlighting=1\"自动跳转到发现的第一个错误或警告处\"let g:syntastic_auto_jump = 1\"yapf自动格式化快捷键\"autocmd FileType python nnoremap <F8> :0, $!yapf<CR><CR>
保存退出后,用PluginInstall命令安装。
第十三步 安装MariaDB数据库yapf仅对py文件有效, 如果出现语法错误,可能会出现乱码,这时按u键恢复py文件。
MariaDB是MySQL作者的新分支,CentOS已经默认使用MariaDB代替MySQL。
安装
sudo apt -y install mariadb-server python3-pymysql
重启数据库,以创建sock文件
sudo service mysql restart
切换到root用户,进入数据库
su -# 输入密码mysql
在mysql> 提示符下创建用户
# 创建一个名为:admin 密码为:admin 的用户。insert into mysql.user(Host,User,Password) values(\"localhost\",\"admin\",password(\"admin\"));# 刷新权限flush privileges;# 赋予admin用户所有权限GRANT ALL ON *.* TO 'admin'@'localhost';# 删除用户及所有权限DROP USER account;
在~/.zshrc
中设置alias
alias db='sudo service mysql start'
注意:mariaDB需要手动创建数据库
第十四步:(仅对本人有效)修改.vimrc,添加molakai主题Ubuntu上mariaDB的默认字符集为utf8mb4,兼容utf-8,不需要进行更改。Centos需要设置charset。
复制配置好的vimrccp /mnt/d/.vimrc ~/.vimrc
使用旧版的.vimrc后,出现进入vim没有配色的情况。
这是因为vundle在vimrc中的配置是filetype off,关掉即可。
当需要使用vundle的时候再打开这个选项。
复制vim的molokai配色
mkdir -p ~/.vim/colors && cp /mnt/d/molokai.vim ~/.vim/colors/molokai.vim
重启服务,大功告成。
电脑