欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

R在vim的使用

程序员文章站 2024-02-21 10:24:10
...

nvim安装

https://neovim.io/

https://github.com/neovim/neovim/releases ====版本发布页面。

neovim的linux版本你可以在上面找到,你可以选择nvim-linux.tar.gz里面有编译好的nvim文件,也可以选择官网说的appimage安装,不过appimage怎么装我也不清楚。

配置

nvim的配置文件为~/.config/nvim/init.vim,没有则自己创键

插件管理选择vim-plug

插件管理文件安装

mkdir -p ~/.var/app/io.neovim.nvim/data/nvim/site
curl -fLo ~/.var/app/io.neovim.nvim/data/nvim/site/autoload/plug.vim https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
#建个文件夹作为插件安装目录吧
mkdir ~/.var/app/io.neovim.nvim/data/nvim/site/plugged

完成上述步骤后在init.vim中加入代码

""""""""插件管理
let plug_install = 0
let autoload_plug_path = stdpath('config') . '/autoload/plug.vim'
if !filereadable(autoload_plug_path)
    silent exe '!curl -fL --create-dirs -o ' . autoload_plug_path .
        \ ' https://raw.github.com/junegunn/vim-plug/master/plug.vim'
    execute 'source ' . fnameescape(autoload_plug_path)
    let plug_install = 1
endif
unlet autoload_plug_path

这个代码使得nvim识别到vim-plug插件。当你使用vim时,你则无需~/.vimrc中加入。

nvim中R的使用

首先自动补全及vim中开启R的终端需要的插件,init.vim

"配置安装目录及所需插件
call plug#begin('~/.var/app/io.neovim.nvim/data/nvim/site/plugged')
Plug 'jalvesaq/Nvim-R'
"Plug 'ycm-core/YouCompleteMe'
Plug 'gaalcaras/ncm-R'
Plug 'ncm2/ncm2'

" Optional: for snippet support
" Further configuration might be required, read below
Plug 'sirver/UltiSnips'
Plug 'ncm2/ncm2-ultisnips'
call plug#end()
filetype plugin indent on
""""""""""""""""""""""""""

使用:PlugInstall安装插件

加入提示你没有python3的话,你需要在init.vim添加

let g:python3_host_prog = "/mnt/d/linux/software/miniconda3/bin/python"

上述路径修改为你的python路径。

加入配色主题

"配色主题
Plug 'sheerun/vim-polyglot'

注:并非所有的映射都可以在所有版本的Vim中使用。某些映射可能不会。

终端模拟器或Linux控制台中使用,和键尤其严重。

使用

打开vim后,在命令行模式输入\rf即可打开R会话,\rq关闭R,或者使用:q就行。

nvim重要键绑定:注:【按键要快】

  • Ctrl-x Ctrl-o自动补全,

  • CTRL-xf来完成字符串下文件名

  • \aa发送整个文件

  • \bb发送块

  • \ff 发送函数

  • \pp段落

  • \xx切换注释

\l可以发送行代码,添加配置

"ctrl+enter发送代码
nnoremap <C-J> :call SendLineToR("stay")<CR><Down>

修改自动补全颜色

"自动补全颜色
hi Pmenu ctermfg=black ctermbg=gray  guibg=#444444
hi PmenuSel ctermfg=7 ctermbg=4 guibg=#555555 guifg=#ffffff
"注释颜色
highlight Comment ctermfg=green guifg=green

自动启动R

"自动启动R
let R_auto_start=2
"发送行直到括号结束
let R_parenblock=1
"设置窗口位置
let R_objbr_place = 'script,left'
let R_objbr_place = 'console,right'

R自动加载包

let R_start_libs = 'base,stats,graphics,grDevices,utils,methods'
"垂直拆分
let R_rconsole_width = 57
let R_min_editor_width = 18

保存与退出

"保存
nnoremap <C-s> :w<CR>
nnoremap <C-z> :wq<CR>

let R_args = ['--no-save','--quiet']