DEV Community

kaede
kaede

Posted on • Updated on

 

Vim -- Ubunt の vim を 8.1 から 9.0 に上げる

why

沢山機能のある vim を使いたかった。

vim で yank してシステムのクリップボードに入るようにしたり
編集中にターミナルを開いてい実行したりできる
最新盤のバージョンに上げたかった。

現状を確認

 vim
zsh: correct 'vim' to 'vi' [nyae]? n
zsh: command not found: vim
Enter fullscreen mode Exit fullscreen mode

vim を打つと vim はないぞ、vi では?と言われる。
Ubuntu は最初は vim が入っていないようだ。

vi --version                                                                                
VIM - Vi IMproved 8.1 (2018 May 18, compiled Feb 01 2022 09:16:32)                            
Included patches: 1-2269, 3612, 3625, 3669, 3741   
Enter fullscreen mode Exit fullscreen mode

しかし、vi のバージョンをみると VIM 8.1 って出る。
実は vim は入っていて、vi として扱われていると解釈した。

Small version without GUI.  Features included (+) or not (-):                                 
+acl               -farsi             -mouse_sysmouse    -tcl                                 
-arabic            -file_in_path      -mouse_urxvt       -termguicolors                       
+autocmd           -find_in_path      +mouse_xterm       -terminal

...

-clientserver      +jumplist          -printer           +vertsplit                           
-clipboard         -keymap            -profile           +virtualedit 
Enter fullscreen mode Exit fullscreen mode

なお、8.2 の前なので以前好きだった clipboard と terminal
これらは入っていなかった。


仮説を立てる

VIM は既に入っている。
8.2 にリンクされているので、9 をインストールして
vi コマンドで VIM 9 が動くように慣れば解決すると考えた。
まず 9 をいれることにする。


vim 9 のための PPA リポジトリを追加

https://itsfoss.com/install-latest-vim-ubuntu/

It's Foss のサイトを参考にする

最新である Vim 9 を入れるには
PPA レポジトリを jonathonof/vim から
取ってくる必要があるらしい。

https://itsfoss.com/ppa-guide/

PPA とは Personal Package Archive のこと。

https://www.youtube.com/watch?v=0E00Zuayv9Q

Pen-Pineapple-Apple-Pen ではなかった。

sudo add-apt-repository ppa:jonathonf/vim

Fetched 1,197 kB in 3s (425 kB/s)                          
Reading package lists... Done
Enter fullscreen mode Exit fullscreen mode

1GB くらいあった。
これで最新版が結びついたので
インストールがそこから入るらしい。


vim をインストール

追加した PPA リポジトリから入るようだ。

 sudo apt install vim                                                                        

The following additional packages will be installed:                                          
  vim-common vim-runtime vim-tiny   

Setting up vim-common (2:9.0.0105-0york0~20.04) ...
Setting up vim-runtime (2:9.0.0105-0york0~20.04) ...
Setting up vim (2:9.0.0105-0york0~20.04) ...
Setting up vim-tiny (2:9.0.0105-0york0~20.04) ...
Enter fullscreen mode Exit fullscreen mode

vim, vim-common, vim-runtime, vim-tiny が入っている


vim のバージョンを確認する

vi --version
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled May 10 2022 08:40:37)

Huge version without GUI.  Features included (+) or not (-):

+autochdir         +folding           +multi_lang        +terminal

-clipboard         +keymap            +printer           +vertsplit
Enter fullscreen mode Exit fullscreen mode

vi --version をみてみると
ちゃんと VIM 9.0 に上がっていた。
terminal はあるが、clipboard はなかった。廃止されたのか?


vim9 の恩恵

https://news.mynavi.jp/techplus/article/20220630-2383222/

vim script が 10 ~ 100倍早くなるらしい。用途が思いつかないが

https://forest.watch.impress.co.jp/docs/news/1421103.html

vim script が書きやすくなるらしい。

  • function から def になり
  • 今までは改行のたびに \ が必要だったのがいらなくなり、
  • # でコメントアウトできるようになり (.vimrc は不可)
  • スクリプトを export して js っぽく分割できるらしい。

優先度は低いので、vim script で遊ぶのは劣後とする。

Latest comments (0)

Timeless DEV post...

Git Concepts I Wish I Knew Years Ago

The most used technology by developers is not Javascript.

It's not Python or HTML.

It hardly even gets mentioned in interviews or listed as a pre-requisite for jobs.

I'm talking about Git and version control of course.

One does not simply learn git