rust-vim-setup, 在 Rust 开发中,设置要使用的vim

分享于 

9分钟阅读

GitHub

  繁體 雙語
Setting up vim to be used in rust development
  • 源代码名称:rust-vim-setup
  • 源代码网址:http://www.github.com/ivanceras/rust-vim-setup
  • rust-vim-setup源代码文档
  • rust-vim-setup源代码下载
  • Git URL:
    git://www.github.com/ivanceras/rust-vim-setup.git
    Git Clone代码到本地:
    git clone http://www.github.com/ivanceras/rust-vim-setup
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/ivanceras/rust-vim-setup
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    使用VIM作为你的Rust IDE

    首先安装 vim,如果它还没有

    sudo apt-get install vim

    如果你的vi 在你的命令行 中工作,很可能是ubuntu默认安装的轻量级版本,并且它缺少真正的版本的大多数功能。

    你还需要安装

    • curl
    • git
    • CMake
    • python 标头
    • 开发工具

    假设大多数人已经安装了它,如果没有安装,那么就安装它

    sudo apt-get install curl
    sudo apt-get install git
    sudo apt-get install build-essential cmake
    sudo apt-get install python-dev python3-dev

    安装 Pathogen 插件

    使用 Pathogen 插件可以轻松安装其他插件,只要将文件添加到( 还有其他选项,但 Pathogen 最常用)

    mkdir -p ~/.vim/autoload ~/.vim/bundle
    curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
    • 将这里添加到 ~/.vimrc
    execute pathogen#infect()
    syntax on
    filetype plugin indent on

    为 Rust 安装语法高亮

    cd~/.vim/bundle
    git clone https://github.com/rust-lang/rust.vim.git

    安装 YouCompleteMe

    YouCompleteMe Vim的代码完成引擎,支持c 族语言和 Rust 组件。

    cd~/.vim/bundle
    git clone https://github.com/Valloric/YouCompleteMecd~/.vim/bundle/YouCompleteMe
    git submodule update --init --recursive
    ./install.py --rust-completer
    • 下载你可能使用的Rust 版本的源代码,例如主分支。
    • 解压压缩文件并放入你的开发文件夹 IE。 ~/Developer
    • 结帐和构建赛车
    mkdir -p ~/Developer/cd~/Developer/
    git clone --depth 1 --branch master https://github.com/rust-lang/rust rust-master

    将这里添加到你的。vimrc

    让 g:ycm_rust_src_path="/home//Developer/rust-master/src/"

    安装Vim数字切换

    如果你的代码中有行号,你可以将数字切换到绝对或者相对位置,相对于当前光标位置,你可以切换到绝对位置或者相对位置。 这将提高你的生产力,当你编排命令,如在当前光标位置 10j 下方移动 10行。

    cd~/.vim/bundle
    git clone git://github.com/jeffkreeftmeijer/vim-numbertoggle.git

    安装NERDtree以在选项卡中显示文件

    在编辑文件时,NERDTree 类似于大多数文本编辑器( 如 sublimeatom 或者 eclipse ),其中列出了当前目录中的文件。

    cd~/.vim/bundle
    git clone https://github.com/scrooloose/nerdtree.git
    • 将这里添加到 ~/.vimrc
    
    autocmd VimEnter * NERDTree
    
    
    autocmd BufEnter * NERDTreeMirror
    
    
    
    "CTRL-t to toggle tree view with CTRL-t
    
    
    nmap <silent> <C-t> :NERDTreeToggle<CR>
    
    
    "Set F2 to put the cursor to the nerdtree
    
    
    nmap <silent> <F2> :NERDTreeFind<CR>
    
    
    
    

    控制

    CTRL-t - Open/Close the files tab
    CTRL-n - Toggle relative/absolute numbering
    CTRL-ww - Switch between the files tab and the main window
    F2 - Focus cursor to files tab<Enter> - open the focused files/directory, duh!h,j,k,l - navigate the cursor left, down, up, right respectively
    i - insert mode, you can start typing in your code.<ESC> - back to default mode, where you can issue commands in vi
    :w - write/save the file, you are editing
    :wqa - save the file, then quit the editor closing vi including the files tab

    一些高级命令

    :bp - Open previous file/buffer
    :bn - Open next file/buffer
    :b <filename-part> - Open the file you are looking for without typing the exact filename
    :vsp - vertically split the window
    :vsp <filename> - open the file in vertical split
    :sp - horizontal split
    :sp <filename> - open the file in horizontal split
    • 无需退出 wq 编辑器,只要你想返回 shell,就可以构建项目了。 方便的方法是,通过 <CTRL><SHIFT>t 在终端中打开新标签,并向你发出 cargo build --release 命令。 这样,你不会松散编辑器的状态,换句话说,可以在需要时撤消 u 或者重做 <CTRL>r

    编译而不打开另一个标签

    或者,你可以在不打开其他终端实例的情况下编译项目,方法是使用 :! <external terminal command>

    :! cargo run --release

    尝试 vi 一些文件

    vi main.rs
    • 它应该看起来像这样

    支持鼠标支持

    如果希望能够使用鼠标指向并单击文件,请将光标移动到。

    • 将这里添加到你的~/.vimrc
    
    
    
    
    "enable mouse support
    
    
    set mouse=a
    
    
    
    

    另外,默认情况下,你可以使用箭头键来导航光标。 但是,如果你真的对使用vi并想最大化 vi 技能,应该最小化箭头键或者鼠标的使用。

    Using Mouse

    提供一个有用的vim功能

    更改时自动重新加载文件

    有时有些文件可能在你当前的vi 会话之外编辑,比如其他编辑器/代码生成器。dropbox同步。git pull等等。 你可能希望将该内容放在当前 vi 会话中。

    • 将这里添加到你的~/.vimrc
    
    
    
    
    " check file change every 4 seconds ('CursorHold') and reload the buffer upon detecting change
    
    
    set autoread
    
    
    au CursorHold * checktime 
    
    
    
    

    在vim中启用全局剪贴板

    在Linux发行版中,由于某些原因,你必须首先安装 vim-gtk 才能获得剪贴板功能。 http://stackoverflow.com/questions/3961859/how-to-copy-to-clipboard-using-vim

    sudo apt-get install vim-gtk

    你可以

    复制到 + register,这是全局/操作系统剪贴板"+y

    + register"+p粘贴

    粘贴等同于

    在插入模式下的CTRL-SHIFT-v。在终端使用时,它等效于粘贴( ctrl v )

    对于懒惰者或者从未使用过vim的人来说,安装一个插件

    • 确保你知道自己在做什么
    • 如果你有一个( 不用担心非vim用户),这将取代你现有的~/.vimrc.vim
    • 不要让我负责打破你的vim配置,洗衣机和任何让你生气的东西。
    sudo apt-get install curl
    curl -sSf https://raw.githubusercontent.com/ivanceras/rustupefy/master/setup.sh | sh

    在这里恢复更改?

    • 通过( 与设置相同) 进行更新
    curl -sSf https://raw.githubusercontent.com/ivanceras/rustupefy/master/setup.sh | sh

    卸载

    curl -sSf https://raw.githubusercontent.com/ivanceras/rustupefy/master/uninstall.sh | sh

    SET  VIM  RUST  Setting  vim-r  
    相关文章