Skip to content

Instantly share code, notes, and snippets.

@masudcsesust04
Forked from rohitfarmer/nvimr-demo.md
Created August 12, 2024 17:46

Revisions

  1. @rohitfarmer rohitfarmer revised this gist Nov 7, 2022. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,4 @@
    # How to use Neovim or VIM Editor as an IDE for R
    [![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/U6U21SKKO)
    Note: This tutorial is written for Linux based systems.

    ## Requirements
  2. @rohitfarmer rohitfarmer revised this gist Sep 1, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -38,7 +38,7 @@ In the end below are the plugins that we would need to convert Vim editor into a
    * This plug-in provides automatic closing of quotes, parenthesis, brackets, etc.
    1. Vim-monokai-tasty: [https://github.com/patstockwell/vim-monokai-tasty](https://github.com/patstockwell/vim-monokai-tasty)
    * Monokai color scheme inspired by Sublime Text's interpretation of monokai.
    1. Lightline.vim: [https://github.com/itchyny/lightline.vim](https://github.com/preservim/nerdtree)
    1. Lightline.vim: [https://github.com/itchyny/lightline.vim](https://github.com/itchyny/lightline.vim)
    * Lineline.vim adds asthetic enhancements to Vim's statusline/tabline.

    ## Procedure
  3. @rohitfarmer rohitfarmer revised this gist Jun 8, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    # How to use Neovim or VIM Editor as an IDE for R
    [![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/U6U21SKKO)
    [![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/U6U21SKKO)
    Note: This tutorial is written for Linux based systems.

    ## Requirements
  4. @rohitfarmer rohitfarmer revised this gist Jun 8, 2020. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,5 @@
    # How to use Neovim or VIM Editor as an IDE for R
    [![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/U6U21SKKO)
    Note: This tutorial is written for Linux based systems.

    ## Requirements
  5. @rohitfarmer rohitfarmer revised this gist May 14, 2020. 1 changed file with 16 additions and 4 deletions.
    20 changes: 16 additions & 4 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -228,10 +228,22 @@ midwest$county # To show synchronous auto completion.
    View(midwest) # Opens an external window to display a portion of the tibble.
    ```

    ## Add Colour to VIM in a Screen Session
    ## Add Colour etc. to VIM in a Screen Session (optional)
    Add these lines to `~/.screenrc` file.
    ```
    ttrcolor b ".I"
    termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E38;5;%dm'
    defbce "on"]'
    # Use 256 colors
    attrcolor b ".I" # allow bold colors - necessary for some reason
    termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' # tell screen how to set colors. AB = background, AF=foreground
    defbce on # use current bg color for erased chars]]'
    # Informative statusbar
    hardstatus off
    hardstatus alwayslastline
    hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W} %c %{g}]'
    # Use X scrolling mechanism
    termcapinfo xterm* ti@:te@
    # Fix for residual editor text
    altscreen on
    ```
  6. @rohitfarmer rohitfarmer revised this gist May 14, 2020. 1 changed file with 8 additions and 0 deletions.
    8 changes: 8 additions & 0 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -227,3 +227,11 @@ midwest$county # To show synchronous auto completion.

    View(midwest) # Opens an external window to display a portion of the tibble.
    ```

    ## Add Colour to VIM in a Screen Session
    Add these lines to `~/.screenrc` file.
    ```
    ttrcolor b ".I"
    termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E38;5;%dm'
    defbce "on"]'
    ```
  7. @rohitfarmer rohitfarmer revised this gist May 10, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,4 @@
    # How to use Neovim or VIM as an IDE for R
    # How to use Neovim or VIM Editor as an IDE for R
    Note: This tutorial is written for Linux based systems.

    ## Requirements
  8. @rohitfarmer rohitfarmer revised this gist May 10, 2020. 1 changed file with 36 additions and 2 deletions.
    38 changes: 36 additions & 2 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -114,7 +114,7 @@ let g:lightline = {
    set mouse=i " Enable mouse support in insert mode.
    " Tabs & Navigation
    map <leader>tnew :tabnew<cr> " To create a new tab.
    map <leader>nt :tabnew<cr> " To create a new tab.
    map <leader>to :tabonly<cr> " To close all other tabs (show only the current tab).
    map <leader>tc :tabclose<cr> " To close the current tab.
    map <leader>tm :tabmove<cr> " To move the current tab to next position.
    @@ -178,18 +178,52 @@ set ffs=unix,dos,mac " Use Unix as the standard file type.
    " Return to last edit position when opening files
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
    ```

    ## Frequently Used Keyboard Shortcuts/Commands
    Note: The commands below are according to the `init.vim` settings mentioned in this Gist.

    ```
    # Nvim-R
    \rf " Connect to R console.
    \rq " Quit R console.
    \ro " Open object bowser.
    \d " Execute current line of code and move to the next line.
    \ss " Execute a block of selected code.
    \aa " Execute the entire script. This is equivalent to source().
    \xx " Toggle comment in an R script.
    # NERDTree
    ,nn " Toggle NERDTree.
    ```

    ## Example Code

    ```r
    library(tidyverse)
    # \rf " Connect to R console.
    # \rq " Quit R console.
    # \ro " Open object bowser.
    # \d \ss \aa " Execution modes.
    # ?help
    # ,nn " NERDTree.
    # ,nt, tp, tn " Tab navigation.

    theme_set(theme_bw())
    data("midwest", package = "ggplot2")

    gg <- ggplot(midwest, aes(x=area, y = poptotal)) +
    geom_point(aes(col = state, size = popdensity)) +
    geom_smooth(method = "loess", se = F) +
    xlim(c(0, 0.1)) +
    ylim(c(0, 500000)) +
    labs(subtitle = "Area Vs Population",
    y = "Population",
    x = "Area",
    title = "Scatterplot",
    caption = "Source: midwest")

    plot(gg) # Opens an external window with the plot.

    midwest$county # To show synchronous auto completion.

    View(midwest) # Opens an external window to display a portion of the tibble.
    ```
  9. @rohitfarmer rohitfarmer revised this gist May 9, 2020. 1 changed file with 16 additions and 4 deletions.
    20 changes: 16 additions & 4 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -33,6 +33,10 @@ In the end below are the plugins that we would need to convert Vim editor into a
    * It is based on [ncm2](https://github.com/ncm2/ncm2) and [nvim-yarp](https://github.com/roxma/nvim-yarp) plugins.
    1. Nerd Tree: [https://github.com/preservim/nerdtree](https://github.com/preservim/nerdtree)
    * Nerd Tree will be used to toggle file explorer in the side panel.
    1. DelimitMate: [https://github.com/Raimondi/delimitMate](https://github.com/Raimondi/delimitMate)
    * This plug-in provides automatic closing of quotes, parenthesis, brackets, etc.
    1. Vim-monokai-tasty: [https://github.com/patstockwell/vim-monokai-tasty](https://github.com/patstockwell/vim-monokai-tasty)
    * Monokai color scheme inspired by Sublime Text's interpretation of monokai.
    1. Lightline.vim: [https://github.com/itchyny/lightline.vim](https://github.com/preservim/nerdtree)
    * Lineline.vim adds asthetic enhancements to Vim's statusline/tabline.

    @@ -176,8 +180,16 @@ au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g
    ```

    ## Frequently Used Keyboard Shortcuts/Commands
    Note: The commands below are according to the `init.vim` settings mentioned in this Gist.





    ```
    # Nvim-R
    \rf " Connect to R console.
    \rq " Quit R console.
    \d " Execute current line of code and move to the next line.
    \ss " Execute a block of selected code.
    \xx " Toggle comment in an R script.
    # NERDTree
    ,nn " Toggle NERDTree.
    ```
  10. @rohitfarmer rohitfarmer revised this gist May 5, 2020. 1 changed file with 30 additions and 2 deletions.
    32 changes: 30 additions & 2 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -64,6 +64,8 @@ Plug 'ncm2/ncm2'
    Plug 'roxma/nvim-yarp'
    Plug 'gaalcaras/ncm-R'
    Plug 'preservim/nerdtree'
    Plug 'Raimondi/delimitMate'
    Plug 'patstockwell/vim-monokai-tasty'
    Plug 'itchyny/lightline.vim'
    " Initialize plugin system
    @@ -91,12 +93,22 @@ set completeopt=noinsert,menuone,noselect " :help Ncm2PopupOpen for mo
    " NERD Tree
    map <leader>nn :NERDTreeToggle<CR> " Toggle NERD tree.
    " Monokai-tasty
    let g:vim_monokai_tasty_italic = 1 " Allow italics.
    colorscheme vim-monokai-tasty " Enable monokai theme.
    " LightLine.vim
    set laststatus=2 " To tell Vim we want to see the statusline.
    set laststatus=2 " To tell Vim we want to see the statusline.
    let g:lightline = {
    \ 'colorscheme':'monokai_tasty',
    \ }
    " General NVIM/VIM Settings
    " Mouse Integration
    set mouse=i " Enable mouse support in insert mode.
    " Tabs & Navigation
    map <leader>tnew :tabnew<cr> " To create a new tab.
    map <leader>to :tabonly<cr> " To close all other tabs (show only the current tab).
    @@ -138,8 +150,10 @@ set noerrorbells " No annoying sound on errors.
    " Color & Fonts
    syntax enable " Enable syntax highlighting.
    set encoding=utf8 " Set utf8 as standard encoding and
    " en_US as the standard language.
    " Enable 256 colors palette in Gnome Terminal
    " Enable 256 colors palette in Gnome Terminal.
    if $COLORTERM == 'gnome-terminal'
    set t_Co=256
    endif
    @@ -149,7 +163,21 @@ try
    catch
    endtry
    " Files & Backup
    set nobackup " Turn off backup.
    set nowb " Don't backup before overwriting a file.
    set noswapfile " Don't create a swap file.
    set ffs=unix,dos,mac " Use Unix as the standard file type.
    " Return to last edit position when opening files
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
    ```

    ## Frequently Used Keyboard Shortcuts/Commands





  11. @rohitfarmer rohitfarmer revised this gist May 5, 2020. 1 changed file with 9 additions and 0 deletions.
    9 changes: 9 additions & 0 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -139,6 +139,15 @@ set noerrorbells " No annoying sound on errors.
    " Color & Fonts
    syntax enable " Enable syntax highlighting.
    " Enable 256 colors palette in Gnome Terminal
    if $COLORTERM == 'gnome-terminal'
    set t_Co=256
    endif
    try
    colorscheme desert
    catch
    endtry
    " Return to last edit position when opening files
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
  12. @rohitfarmer rohitfarmer revised this gist May 3, 2020. 1 changed file with 60 additions and 60 deletions.
    120 changes: 60 additions & 60 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -38,8 +38,8 @@ In the end below are the plugins that we would need to convert Vim editor into a

    ## Procedure

    1. Make sure that you have `R >=3.0.0` is installed.
    2. Make sure that you have `Neovim >= 0.2.0` is installed.
    1. Make sure that you have `R >=3.0.0` installed.
    2. Make sure that you have `Neovim >= 0.2.0` installed.
    3. Install the `vim-plug` plugin manager.
    ```
    curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
    @@ -48,7 +48,7 @@ curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \

    4. Install the required plugins.

    First, create a `init.vim` file in `~/.config/nvim` folder (create the folder if it doesn't exist). This file is equivalent to `.vimrc` file in the traditional Vim environment. To `init.vim` file start adding:
    First, create an `init.vim` file in `~/.config/nvim` folder (create the folder if it doesn't exist). This file is equivalent to a `.vimrc` file in the traditional Vim environment. To `init.vim` file start adding:

    ```
    " Specify a directory for plugins
    @@ -68,79 +68,79 @@ Plug 'itchyny/lightline.vim'
    " Initialize plugin system
    call plug#end()
    " enable ncm2 for all buffers
    autocmd BufEnter * call ncm2#enable_for_buffer()
    " IMPORTANT: :help Ncm2PopupOpen for more information
    set completeopt=noinsert,menuone,noselect
    ```

    5. Update and add more features to the `init.vim` file.

    ```
    " SET LEADER
    " Set a Local Leader
    " With a map leader it's possible to do extra key combinations
    " like <leader>w saves the current file
    let mapleader = ","
    let g:mapleader = ","
    " Plugin Related Settings
    " NCM2
    autocmd BufEnter * call ncm2#enable_for_buffer() " To enable ncm2 for all buffers.
    set completeopt=noinsert,menuone,noselect " :help Ncm2PopupOpen for more
    " information.
    " NERD Tree
    map <leader>nn :NERDTreeToggle<CR>
    " Light line
    set laststatus=2
    " General Settings
    set backspace=indent,eol,start " To make backscape work in all conditions
    set ma " To set mark a at current cursor location
    set number " Switch the line numbers on.
    set expandtab " Enter spaces when tab is pressed.
    set smarttab " Use smart tabs.
    set autoindent " Copy indent from current line when starting a new
    " line.
    set si " Smart indent.
    " TABS & NAVIGATION
    " Useful mappings for managing tabs
    map <leader>tnew :tabnew<cr>
    map <leader>to :tabonly<cr>
    map <leader>tc :tabclose<cr>
    map <leader>tm :tabmove<cr>
    map <leader>tn :tabn<cr>
    map <leader>tp :tabp<cr>
    " Return to last edit position when opening files (You want this!)
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
    map <leader>nn :NERDTreeToggle<CR> " Toggle NERD tree.
    " LightLine.vim
    set laststatus=2 " To tell Vim we want to see the statusline.
    " SEARCH
    " Ignore Case When Searching
    set ignorecase
    " General NVIM/VIM Settings
    " When searching try to be smart about cases
    set smartcase
    " Tabs & Navigation
    map <leader>tnew :tabnew<cr> " To create a new tab.
    map <leader>to :tabonly<cr> " To close all other tabs (show only the current tab).
    map <leader>tc :tabclose<cr> " To close the current tab.
    map <leader>tm :tabmove<cr> " To move the current tab to next position.
    map <leader>tn :tabn<cr> " To swtich to next tab.
    map <leader>tp :tabp<cr> " To switch to previous tab.
    " Highlight search results
    set hlsearch
    " Makes search act like search in modern browsers
    set incsearch
    " Line Numbers & Indentation
    set backspace=indent,eol,start " To make backscape work in all conditions.
    set ma " To set mark a at current cursor location.
    set number " To switch the line numbers on.
    set expandtab " To enter spaces when tab is pressed.
    set smarttab " To use smart tabs.
    set autoindent " To copy indentation from current line
    " when starting a new line.
    set si " To switch on smart indentation.
    " For regular expressions turn magic on
    set magic
    " BRACKETS
    " Show matching brackets when text indicator is over them
    set showmatch
    " How many tenths of a second to blink when matching brackets
    set mat=2
    " Search
    set ignorecase " To ignore case when searching.
    set smartcase " When searching try to be smart about cases.
    set hlsearch " To highlight search results.
    set incsearch " To make search act like search in modern browsers.
    set magic " For regular expressions turn magic on.
    " ERRORS
    " No annoying sound on errors
    set noerrorbells
    " COLOR AND FONTS
    " Enable syntax highlighting
    syntax enable
    ```
    " Brackets
    set showmatch " To show matching brackets when text indicator
    " is over them.
    set mat=2 " How many tenths of a second to blink
    " when matching brackets.
    " Errors
    set noerrorbells " No annoying sound on errors.
    " Color & Fonts
    syntax enable " Enable syntax highlighting.
    " Return to last edit position when opening files
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
    ```

  13. @rohitfarmer rohitfarmer revised this gist Apr 28, 2020. 1 changed file with 2 additions and 7 deletions.
    9 changes: 2 additions & 7 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,4 @@
    # How to use Neovim or VIM as an R IDE
    # How to use Neovim or VIM as an IDE for R
    Note: This tutorial is written for Linux based systems.

    ## Requirements
    @@ -30,19 +30,14 @@ In the end below are the plugins that we would need to convert Vim editor into a
    * Nvim-R is the main plugin that will add the functionality to execute R code from within the Vim editor.
    1. Ncm-R: [https://github.com/gaalcaras/ncm-R](https://github.com/gaalcaras/ncm-R)
    * Ncm-R adds synchronous auto completion features for R.
    * It is based on [ncm2](https://github.com/ncm2/ncm2) and [nvim-yarp](https://github.com/roxma/nvim-yarp) plugins.
    1. Nerd Tree: [https://github.com/preservim/nerdtree](https://github.com/preservim/nerdtree)
    * Nerd Tree will be used to toggle file explorer in the side panel.
    1. Lightline.vim: [https://github.com/itchyny/lightline.vim](https://github.com/preservim/nerdtree)
    * Lineline.vim adds asthetic enhancements to Vim's statusline/tabline.






    ## Procedure


    1. Make sure that you have `R >=3.0.0` is installed.
    2. Make sure that you have `Neovim >= 0.2.0` is installed.
    3. Install the `vim-plug` plugin manager.
  14. @rohitfarmer rohitfarmer revised this gist Apr 28, 2020. 1 changed file with 54 additions and 48 deletions.
    102 changes: 54 additions & 48 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -1,97 +1,111 @@
    Things to Install
    # How to use Neovim or VIM as an R IDE
    Note: This tutorial is written for Linux based systems.

    ## Requirements

    R >= 3.0.0
    http://www.r-project.org/
    Either use your package manager or compile from source.
    ### R >= 3.0.0
    To install the latest version of R please flollow the download and install instructions at [https://cloud.r-project.org/](https://cloud.r-project.org/)

    ### Neovim >= 0.2.0
    [Neovim](https://neovim.io/) (nvim) is the continuation and extension of Vim editor with the aim to keep the good parts of Vim and add more features. In this tutorial I will be using Neovim (nvim), however, most of the steps are equally applicable to Vim also. Please follow download and installation instructions on nvim's GitHub wiki [https://github.com/neovim/neovim/wiki/Installing-Neovim](https://github.com/neovim/neovim/wiki/Installing-Neovim).

    Vim >= 8.1
    https://github.com/vim/vim
    **OR**

    ### Vim >= 8.1
    [Vim](https://github.com/vim/vim) usually comes installed in most of the Linux based operating system. However, it may not be the latest one. Therefore, to install the latest version please download and install it from Vim's GitHub repository as mentioned below or a method that is more confortable to you.

    To compile and install the latest version of VIM.
    ```
    git clone https://github.com/vim/vim.git
    make -C vim/
    sudo make install -C vim/
    ```

    ### Plugin Manager
    There are more than one plugin manager's available for Vim that can be used to install the required plugins. In this tutorial I will be using [vim-plug](https://github.com/junegunn/vim-plug) pluggin manager.

    Plugins
    1. Nvim-R https://github.com/jalvesaq/Nvim-R
    2. Nerd Tree https://github.com/preservim/nerdtree
    3. Lightline https://github.com/itchyny/lightline.vim
    ### Plugins
    In the end below are the plugins that we would need to convert Vim editor into a fully functional IDE for R.

    1. Nvim-R: [https://github.com/jalvesaq/Nvim-R](https://github.com/jalvesaq/Nvim-R)
    * Nvim-R is the main plugin that will add the functionality to execute R code from within the Vim editor.
    1. Ncm-R: [https://github.com/gaalcaras/ncm-R](https://github.com/gaalcaras/ncm-R)
    * Ncm-R adds synchronous auto completion features for R.
    1. Nerd Tree: [https://github.com/preservim/nerdtree](https://github.com/preservim/nerdtree)
    * Nerd Tree will be used to toggle file explorer in the side panel.
    1. Lightline.vim: [https://github.com/itchyny/lightline.vim](https://github.com/preservim/nerdtree)
    * Lineline.vim adds asthetic enhancements to Vim's statusline/tabline.

    Plugin Manager
    1. Vim Plug https://github.com/junegunn/vim-plug


    Procedure


    1. Make sure that you have R >=3.0.0 is installed.
    2. Make sure that you have VIM >= 8.1 is installed.
    3. Install the Vim-Plug plugin manager.

    ## Procedure

    curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

    1. Make sure that you have `R >=3.0.0` is installed.
    2. Make sure that you have `Neovim >= 0.2.0` is installed.
    3. Install the `vim-plug` plugin manager.
    ```
    curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
    ```

    4. Install the required plugins.

    First, create a `init.vim` file in `~/.config/nvim` folder (create the folder if it doesn't exist). This file is equivalent to `.vimrc` file in the traditional Vim environment. To `init.vim` file start adding:

    First, create a .vimrc file then add:


    ```
    " Specify a directory for plugins
    " - Avoid using standard Vim directory names like 'plugin'
    call plug#begin('~/.vim/plugged')

    " List of plugins.
    " Make sure you use single quotes

    " Shorthand notation
    Plug 'jalvesaq/Nvim-R'
    Plug 'ncm2/ncm2'
    Plug 'roxma/nvim-yarp'
    Plug 'gaalcaras/ncm-R'
    Plug 'preservim/nerdtree'
    Plug 'itchyny/lightline.vim'
    " Initialize plugin system
    call plug#end()
    " enable ncm2 for all buffers
    autocmd BufEnter * call ncm2#enable_for_buffer()
    5. Update and add more features to the .vimrc file.
    " IMPORTANT: :help Ncm2PopupOpen for more information
    set completeopt=noinsert,menuone,noselect
    ```

    To the .vimrc file that we have created above. Add the following lines.

    5. Update and add more features to the `init.vim` file.

    ```
    " SET LEADER
    " With a map leader it's possible to do extra key combinations
    " like <leader>w saves the current file
    let mapleader = ","
    let g:mapleader = ","

    " NERD Tree
    map <leader>nn :NERDTreeToggle<CR>

    " Light line
    set laststatus=2

    " General Settings
    set backspace=indent,eol,start " To make backscape work in all conditions
    set ma " To set mark a at current cursor location
    set number " Switch the line numbers on.
    set expandtab " Enter spaces when tab is pressed.
    set smarttab " Use smart tabs.
    set autoindent " Copy indent from current line when starting a new
    " line.
    set si " Smart indent.

    set ma " To set mark a at current cursor location
    set number " Switch the line numbers on.
    set expandtab " Enter spaces when tab is pressed.
    set smarttab " Use smart tabs.
    set autoindent " Copy indent from current line when starting a new
    " line.
    set si " Smart indent.
    " TABS & NAVIGATION
    " Useful mappings for managing tabs
    @@ -102,44 +116,36 @@ map <leader>tm :tabmove<cr>
    map <leader>tn :tabn<cr>
    map <leader>tp :tabp<cr>

    " Return to last edit position when opening files (You want this!)
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif

    " SEARCH
    " Ignore Case When Searching
    set ignorecase

    " When searching try to be smart about cases
    set smartcase

    " Highlight search results
    set hlsearch

    " Makes search act like search in modern browsers
    set incsearch

    " For regular expressions turn magic on
    set magic

    " BRACKETS
    " Show matching brackets when text indicator is over them
    set showmatch
    " How many tenths of a second to blink when matching brackets
    set mat=2

    " ERRORS
    " No annoying sound on errors
    set noerrorbells

    " COLOR AND FONTS
    " Enable syntax highlighting
    syntax enable
    syntax enable
    ```
  15. @rohitfarmer rohitfarmer created this gist Apr 28, 2020.
    145 changes: 145 additions & 0 deletions nvimr-demo.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,145 @@
    Things to Install


    R >= 3.0.0
    http://www.r-project.org/
    Either use your package manager or compile from source.


    Vim >= 8.1
    https://github.com/vim/vim


    To compile and install the latest version of VIM.
    git clone https://github.com/vim/vim.git
    make -C vim/
    sudo make install -C vim/


    Plugins
    1. Nvim-R https://github.com/jalvesaq/Nvim-R
    2. Nerd Tree https://github.com/preservim/nerdtree
    3. Lightline https://github.com/itchyny/lightline.vim


    Plugin Manager
    1. Vim Plug https://github.com/junegunn/vim-plug


    Procedure


    1. Make sure that you have R >=3.0.0 is installed.
    2. Make sure that you have VIM >= 8.1 is installed.
    3. Install the Vim-Plug plugin manager.


    curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim


    4. Install the required plugins.


    First, create a .vimrc file then add:


    " Specify a directory for plugins
    " - Avoid using standard Vim directory names like 'plugin'
    call plug#begin('~/.vim/plugged')


    " List of plugins.
    " Make sure you use single quotes


    " Shorthand notation
    Plug 'jalvesaq/Nvim-R'
    Plug 'preservim/nerdtree'
    Plug 'itchyny/lightline.vim'
    " Initialize plugin system
    call plug#end()


    5. Update and add more features to the .vimrc file.


    To the .vimrc file that we have created above. Add the following lines.


    " SET LEADER
    " With a map leader it's possible to do extra key combinations
    " like <leader>w saves the current file
    let mapleader = ","
    let g:mapleader = ","


    " NERD Tree
    map <leader>nn :NERDTreeToggle<CR>


    " Light line
    set laststatus=2


    " General Settings
    set backspace=indent,eol,start " To make backscape work in all conditions
    set ma " To set mark a at current cursor location
    set number " Switch the line numbers on.
    set expandtab " Enter spaces when tab is pressed.
    set smarttab " Use smart tabs.
    set autoindent " Copy indent from current line when starting a new
    " line.
    set si " Smart indent.


    " TABS & NAVIGATION
    " Useful mappings for managing tabs
    map <leader>tnew :tabnew<cr>
    map <leader>to :tabonly<cr>
    map <leader>tc :tabclose<cr>
    map <leader>tm :tabmove<cr>
    map <leader>tn :tabn<cr>
    map <leader>tp :tabp<cr>


    " Return to last edit position when opening files (You want this!)
    au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif


    " SEARCH
    " Ignore Case When Searching
    set ignorecase


    " When searching try to be smart about cases
    set smartcase


    " Highlight search results
    set hlsearch


    " Makes search act like search in modern browsers
    set incsearch


    " For regular expressions turn magic on
    set magic


    " BRACKETS
    " Show matching brackets when text indicator is over them
    set showmatch
    " How many tenths of a second to blink when matching brackets
    set mat=2


    " ERRORS
    " No annoying sound on errors
    set noerrorbells


    " COLOR AND FONTS
    " Enable syntax highlighting
    syntax enable