<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Neovim on Tom 除錯中</title><link>https://tomleesm.github.io/tags/neovim/</link><description>Recent content in Neovim on Tom 除錯中</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Mon, 15 Apr 2024 17:50:21 +0800</lastBuildDate><atom:link href="https://tomleesm.github.io/tags/neovim/index.xml" rel="self" type="application/rss+xml"/><item><title>從 Vim 到 Neovim</title><link>https://tomleesm.github.io/posts/2024/04/from-vim-to-neovim/</link><pubDate>Mon, 15 Apr 2024 17:50:21 +0800</pubDate><guid>https://tomleesm.github.io/posts/2024/04/from-vim-to-neovim/</guid><description>&lt;p&gt;Neovim 是從 Vim 分出去的版本，把 Vim 的程式碼複製後整理一番，並加上想要的新功能，類似兄弟鬧不合，到外面開分店，有各自的特色那樣。說來慚愧，我用 Vim 寫程式十幾年來都不知道怎麼它的正確發音，正巧 &lt;a href="https://neovim.io/"&gt;Neovim 官網首頁&lt;/a&gt;有內嵌一個 &lt;a href="https://www.youtube.com/watch?v=c4OyfL5o7DU"&gt;YouTube 影片介紹&lt;/a&gt;，有 Vi, Vim 和 Neovim 的正確發音。&lt;/p&gt;
&lt;p&gt;為什麼從 Vim 換成 Neovim？因為 &lt;a href="https://github.com/kepano/flexoki"&gt;flexoki 配色&lt;/a&gt; 很好看，而且沒有 Vim 版本。之前想要在 Vim 有語法自動補齊，以及安裝一些外掛時提到有 Neovim 這個程式。雖然 Neovim 有許多新功能，不過我都用不上。最近發現 Neovim 有 0.9.5 版本，已經有3、4 個月沒更新，看起來是穩定下來了，然後發現 flexoki 配色，安裝後一開始還不習慣，和原來 Vim 配色相比覺得不夠好，直到顯示 html&lt;/p&gt;
&lt;p&gt;&lt;img src="https://tomleesm.github.io/images/screenshot-nvim.png" alt="nvim-flexoki"&gt;&lt;/p&gt;
&lt;p&gt;對比原來 Vim 的配色更好看。&lt;/p&gt;
&lt;p&gt;&lt;img src="https://tomleesm.github.io/images/screenshot-vim.png" alt="vim-wombat256mod"&gt;&lt;/p&gt;
&lt;p&gt;也有可能是原來的配色幾年下來已經看膩了？&lt;/p&gt;
&lt;p&gt;Neovim 最好從 GitHub 上抓取最新版本安裝。如果用 &lt;code&gt;apt-get&lt;/code&gt; 或 &lt;code&gt;rpm&lt;/code&gt; 等套件管理安裝，還停留在 0.5 版，許多外掛要求至少 0.8 版。在 Ubuntu/Debian 安裝的指令如下&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; /tmp
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 瀏覽器連到 https://github.com/neovim/neovim/releases/latest 顯示最新版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 抓取最新版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;wget https://github.com/neovim/neovim/releases/download/v0.10.4/nvim-linux-x86_64.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 解壓縮&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;tar xzvf nvim-linux-x86_64.tar.gz
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 複製所有檔案到 /opt&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo cp -r ./nvim-linux-x86_64/ /opt
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 編輯 ~/.bash_profile，加上 export PATH=&amp;#34;$PATH:/opt/nvim-linux-x86_64/bin&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;export PATH=&amp;#34;$PATH:/opt/nvim-linux-x86_64/bin&amp;#34;&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; ~/.bash_profile
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 輸入 nvi ，neovim 不套用外掛和設定&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;alias nvi=&amp;#34;nvim -u NONE -N&amp;#34;&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; ~/.bash_profile
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 重新讀取 ~/.bash_profile 以啟用設定&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; ~/.bash_profile
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# root 也做一樣的設定，讓它可以用 neovim&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;su root
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 加上 export PATH=&amp;#34;$PATH:/opt/nvim-linux-x86_64/bin&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;export PATH=&amp;#34;$PATH:/opt/nvim-linux-x86_64/bin&amp;#34;&amp;#39;&lt;/span&gt; &amp;gt;&amp;gt; /root/.bash_profile
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; /root/.bash_profile
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="https://neovim.io/doc/user/lua-guide.html"&gt;Guide to using Lua in Nvim&lt;/a&gt;說明如何轉移原來的 Vim 設定到 Neovim。例如 &lt;code&gt;vim.o.number = true&lt;/code&gt; 顯示行數，設定放在 &lt;code&gt;~/.config/nvim/init.lua&lt;/code&gt;，改用 Lua 語言設定 Neovim，也可以沿用 Vimscript 語法，只要把 &lt;code&gt;init.lua&lt;/code&gt; 改成 &lt;code&gt;init.vim&lt;/code&gt; 即可，兩個只能選一個。&lt;/p&gt;</description></item></channel></rss>