Ubuntu 16.04 首次安装VIM及切换Python2和Python3教程

使用VIM搭建Python开发环境[ubuntu 16.04]

Ubuntu 16.04 首次安装VIM及切换Python2和Python3教程

本文用于记录第一次使用VIM搭建Python开发环境的过程。大部分信息来自互联网。感谢原作者的努力。文章中给出了所有引用的出处。安装VIM

—————————————————

版权声明:本文为CSDN博主“lixinghua666”原创文章,遵循CC 4.0 BY-SA版权协议。转载时请附上原文出处链接及本声明。

原文链接:

Linux默认自带vi,一般使用vim的升级版本。

1、第一次使用需要安装vim。在终端输入vim,测试vim是否安装:

vim

如果没有安装,会提示安装vim。在终端中输入以下命令完成安装。

sudo apt install vim

在 VIM 中切换 Python2 和 Python3

—————————————————

版权声明:本文为CSDN博主“Look Up-y”原创文章,遵循CC 4.0 BY-SA版权协议。转载时请附上原文出处链接及本声明。

原文链接:

1 检查当前系统中vim支持哪个版本的Python

vim --version

2.“+”表示支持python3

3.支持python2:

sudo apt-get install vim-nox-py2

4、安装完安城后,再次检查是否支持:

vim --version

5.可以看到已经支持python2了。但是可以看到python3已经不再支持了。如果你想切换到支持python3:

 sudo update-alternatives --config vim

6.跳转界面:

7.vim.basic代表python3。这时只需要输入前面的数字1即可跳转支持python3。

VIM 扩展

参考:

英文原文:

中文翻译:

Vim 本身可以满足开发者的很多需求,但它的可扩展性也极强,已经有一些杀手级扩展可以赋予 Vim “现代”集成开发环境的特性。因此,您首先需要的是一个好的扩展管理器。

Vim的扩展通常也被成为bundle或插件。

Vim 有多个扩展管理器,但我们强烈推荐 Vundle。你可以把它想象成 Vim 的 pip。使用 Vundle,安装和更新软件包变得毫不费力。

现在让我们安装 Vundle:(在终端中输入)

git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

此命令将下载 Vundle 插件管理器并将其放置在您的 Vim 编辑器包文件夹中。现在,您可以通过 .vimrc 配置文件管理所有扩展。

将配置文件添加到用户的主文件夹中:

touch ~/.vimrc

在终端输入命令打开.vimrc并修改.vimrc(补充说明)

vi ~/.vimrc

接下来,将以下 Vundle 配置添加到配置文件的顶部:

set nocompatible              " required
filetype off                  " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'gmarik/Vundle.vim'
" add all your plugins here (note older versions of Vundle
" used Bundle instead of Plugin)
" ...
" All of your Plugins must be added before the following line
call vundle#end()            " required
filetype plugin indent on    " required

这样,您就完成了使用Vundle之前的设置。之后,您可以在配置文件中添加要安装的插件,然后打开Vim编辑器并运行以下命令:

:PluginInstall

此命令告诉 Vundle 发挥其魔力 ​​- 自动下载所有插件并为您安装和更新它们。

完成后,它将如下所示:

开始构建 IDE

我们先看一下效果

分割布局

在VIM中使用

:sp 

打开文件的命令,可以垂直分割布局(新文件会在当前文件下方的界面中打开),使用相反的命令

:vs 

您可以获得水平分割布局(新文件将在当前文件的右侧打开)。

还可以嵌套分割布局,这样你就可以将布局内容分割出来,然后再分割,垂直或水平分割,直到你满意为止(众所周知,我们在开发时经常需要同时查看多个文件。)

专业提示:记住在输入 :sp 后使用制表符补全功能来快速查找文件。

专业提示:您还可以通过将以下代码添加到 **.vimrc** (在终端中使用 vim ~/.vimrc 打开和编辑)文件来指定屏幕上可以拆分为布局的区域:

set splitbelow
set splitright

专业提示:想要在不使用鼠标的情况下在拆分布局之间切换吗?只需将以下代码添加到.vimrc文件中,就可以通过快捷键组合进行切换。

"split navigations
nnoremap -J> -W>-J>
nnoremap -K> -W>-K>
nnoremap -L> -W>-L>
nnoremap -H> -W>-H>

实现功能:按 Ctrl+Vim 的标准移动键(h/j/k/l)切换到指定窗口。

缓冲器

尽管Vim支持制表符操作,但许多人仍然更喜欢缓冲区和分割布局。您可以将缓冲区视为最近打开的文件。 Vim 提供了一种访问最近缓冲区的便捷方法。只需输入:b即可切换到已经打开的缓冲区(这里也可以使用自动完成功能)。您还可以通过 ls 命令查看所有缓冲区。

专业提示:在 :ls 命令输出结束时,Vim 会提示“按 Enter 继续查看”。这时可以直接输入:b立即选择缓冲区。这样就省去了按键操作,而且不需要记住缓冲区的名称。

代码折叠

大多数“现代”集成开发环境(IDE)提供了一种折叠方法或类的方法,仅显示类或方法的定义而不是整个代码。

您可以将以下代码添加到 .vimrc 中来启用此功能:

" Enable folding
set foldmethod=indent
set foldlevel=99

这可行,但您必须手动输入 za 才能折叠(和取消折叠)。使用空格键将是更好的选择。因此,将这行命令添加到您的配置文件中:

" Enable folding with the spacebar
nnoremap  za

现在您可以轻松隐藏工作时不需要关注的代码。

第一个命令 set Foldmethod=ident 将启用基于每行缩进的折叠。但这样做会导致折叠次数超出您的预期。但不要害怕,有几个扩展是专门为解决这个问题而设计的。在这里,我们推荐SimplyFold。将以下行代码添加到 .vimrc 中并通过 Vundle 安装:

Plugin 'tmhedberg/SimpylFold'

不要忘记在VIM中执行安装命令:

:PluginInstall

专业提示:想要查看折叠代码的文档字符串吗?

将以下代码行添加到文件 .vimrc 中

let g:SimpylFold_docstring_preview=1

Python代码缩进

当然,如果您希望代码折叠基于缩进正常工作,您将希望缩进正确。这里,Vim的内置函数无法满足要求,因为它无法实现定义函数后自动缩进。我们希望 Vim 中的缩进可以做以下两件事:

首先,缩进要符合PEP8标准。
其次,更好地处理自动缩进。

PEP8

要支持 PEP8 样式缩进,请将以下代码添加到您的 .vimrc 文件中:

au BufNewFile,BufRead *.py
    \ set tabstop=4
    \ set softtabstop=4
    \ set shiftwidth=4
    \ set textwidth=79
    \ set expandtab
    \ set autoindent
    \ set fileformat=unix

这些设置将使Vim中的Tab键相当于4个标准空格字符,确保每行代码的长度不超过80个字符,并将文件保存为unix格式,以避免推送到Github或与其他人共享时出错用户。文件转换问题。

此外,对于全栈开发,您可以为每种文件类型设置 au 命令:

au BufNewFile,BufRead *.js, *.html, *.css
    \ set tabstop=2
    \ set softtabstop=2
    \ set shiftwidth=2

自动缩进

自动缩进很有用,但在某些情况下(例如当函数定义有多行时),它并不总能达到您想要的效果,尤其是在遵守 PEP8 标准时。我们可以使用indentpython.vim插件来解决这个问题:

Plugin 'vim-scripts/indentpython.vim'

标记不必要的空白字符

我们希望避免额外的空白字符。我们可以让Vim帮我们标记一下,这样就可以很容易地找到并删除它。

au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/

这将突出显示额外的空白字符,很可能将它们变成红色突出显示

支持UTF-8编码

大多数情况下,在 Python 中开发时应该使用 UTF-8 编码,尤其是在使用 Python 3 时。确保 Vim 设置文件具有以下命令:

set encoding=utf-8

自动完成

支持Python自动完成的最好的插件是YouCompleteMe。我们再次使用 Vundle 安装:

Bundle 'Valloric/YouCompleteMe'

请注意,Bundle 语句需要放置在文件 .vimrc 中的适当位置,例如靠近 Plugin 语句。

YouCompleteMe插件实际上在底层使用了一些不同的自动完成组件(包括为Python开发的Jedi),并且需要安装一些C库才能正常工作。该插件的官方文档提供了很好的安装指南,这里不再赘述。请记住按照文档中的步骤进行安装。

安装完成后,插件自带的设置工作得很好,但我们也可以做一些小的调整:

let g:ycm_autoclose_preview_window_after_completion=1
map g  :YcmCompleter GoToDefinitionElseDeclaration

上面的第一行确保自动完成窗口在完成后不会消失,第二行定义“转到定义”快捷方式。

如有错误,请参考以下链接

支持Virtualenv虚拟环境

上面“转到定义”功能的一个问题是,默认情况下 Vim 不知道 virtualenv 虚拟环境的状态,因此您必须将以下代码添加到配置文件中,以便 Vim 和 YouCompleteMe 可以发现您的虚拟环境:

"python with virtualenv support
py << EOF
import os
import sys
if 'VIRTUAL_ENV' in os.environ:
  project_base_dir = os.environ['VIRTUAL_ENV']
  activate_this = os.path.join(project_base_dir, 'bin/activate_this.py')
  execfile(activate_this, dict(__file__=activate_this))
EOF

这段代码会判断你当前是否在虚拟环境中编辑,然后切换到相应的虚拟环境,并设置你的系统路径,以确保YouCompleteMe能够找到相应的站点包文件夹。

语法检查/突出显示

通过安装 syntastic 插件,Vim 将在每次保存文件时检查代码的语法:

Plugin 'vim-syntastic/syntastic'

您还可以通过这个小插件添加 PEP8 代码风格检查:

Plugin 'nvie/vim-flake8'

最后,让你的代码更漂亮:

let python_highlight_all=1
syntax on

配色方案

配色方案可以与您正在使用的基色方案一起使用。您可以在 GUI 模式下尝试 Solarized 解决方案,也可以在终端模式下尝试 Zenburn 解决方案:

Plugin 'jnurmine/Zenburn'
Plugin 'altercation/vim-colors-solarized'

接下来,您只需要添加一点逻辑来确定在哪种模式下使用哪种解决方案:

if has('gui_running')
  set background=dark
  colorscheme solarized
else
  colorscheme zenburn
endif

Solarized 解决方案提供深色和浅色主题。要支持切换主题(按F5)也很简单,只需添加:

call togglebg#map("")

你可能想看:
« 上一篇
下一篇 »

相关推荐

python爬虫教程PDF,Python爬虫书PDF

2026年09月02日

31阅读

外国教程python,python编程教学视频

2026年09月02日

25阅读

python简明教程沈洁元,python详细基础教程

2026年09月02日

21阅读

python库包教程,python 包

2026年09月02日

26阅读

python教程大全集,python教程600集

2026年09月02日

26阅读

python入门教程完整版,python零基础入门全套教程视频

2026年09月02日

22阅读