Rust 使用Vim 建置開發環境

閱讀時間約 4 分鐘
近期已經進去了一個看完語法,進去實作的階段,自然需要去挑選一個適合的環境來開發了。
原本使用的VS code,基本的使用上沒什麼問題,只是每當我要裝一些套件時就會報錯,相信花點時間,這些錯都可以解決,但我突然轉念一想,不如換個環境來寫寫看吧。於是就把矛頭轉向系統內建的Vim了。
如果電腦沒內建的話,需要另外裝,不過相信不會太難。
網路上研究了一下使建製Rust開發環境的套件,大部分都有跟Vim兼容,平常看Vim的顏色很死寂,這次就順便來裝飾一下吧。以下是我的成果。
除了色彩繽紛還有其他功能
我個人是對這樣的成果還滿滿意的,畢竟原生的Vim就是一片死寂的顏色
為了達到上述的效果,我們需要以下的套件:
//套件管理工具
1. vundle
//Rust 官方提供的Vim套件
2. Rust.vim
//讓Vim充滿色彩的關鍵,裝這個前還需要裝Node.js
3. coc.nvim
4. coc-snippets
//它提供了Rust完成和轉到定義等功能,
5. rust-analyizer
在這之前會需要一個vim的vimrc檔 ,我個人是建置在
$HOME/.vim/vimrc
這裡可以先在裡面新增 Rust.vim建議的指令,
syntax enable
filetype indent on
  1. 安裝Vundle
//github
https://github.com/VundleVim/Vundle.vim

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

在這之後你需要照個github內的教學去配置.vimrc文件。
2. 裝置coc.nvim
//github
https://github.com/neoclide/coc.nvim


//在.vimrc 加入Plugin 'neoclide/coc.nvim', {'branch': 'release'}後,輸入指令
//:PluginInstall
//這期間你需要先裝node.js
curl -sL install-node.vercel.app/lts | bash
//也會需要裝yarn
// 要在coc.nvim底下的資料夾
//~/.vim/plugged/coc.nvim/
npm install -g yarn
yarn install

//在安裝後你可以做一些基本的vim配置,可以在https://github.com/neoclide/coc.nvim 上看到基本的範例
3. 裝置Rust.vim 這裡提供兩種方式
//github
https://github.com/rust-lang/rust.vim

//直接裝在vim上
git clone https://github.com/rust-lang/rust.vim ~/.vim/pack/plugins/start/rust.vim
//透過Vundle安裝
Plugin 'rust-lang/rust.vim'
4. 安裝coc.snippt
//github
https://github.com/neoclide/coc-snippets

開啟vim後 輸入:CocInstall coc-snippets
5. 最後一步 安裝Rust
//github 
https://github.com/rust-lang/rust-analyzer


:CocInstall coc-rust-analyzer
到這裡基本上已經大功告成,剩下的就是coc.nvim的客製化,這是非常個人化的事情,我個人有另外設定:
  1. Pmenu
  2. PmenuSel
  3. CocFloating
其他都沒變,如果大家有什麼實用的設定都歡迎分享。
2會員
8內容數
目前主要是是學習Rust,Rust是一種程式語言,用途頗廣泛,在很多大公司的軟體內部都可見Rust的身影,這個專題,主要紀錄我學習Rust的遇見的事,跟一些小作品。如果對軟體設計相關沒興趣的,基本上不用點開了。
留言0
查看全部
發表第一個留言支持創作者!
rex chen的沙龍 的其他內容
Rust 架構網站 [ 0 ] 行前準備
閱讀時間約 1 分鐘
Rust 架構網站 01 基礎語法
閱讀時間約 1 分鐘
Rust 架構網站 03 所有權
閱讀時間約 3 分鐘
你可能也想看
創作者要怎麼好好休息 + 避免工作過量?《黑貓創作報#4》午安,最近累不累? 這篇不是虛假的關心。而是《黑貓創作報》發行以來可能最重要的一篇。 是的,我們這篇講怎麼補充能量,也就是怎麼休息。
Thumbnail
avatar
黑貓老師
2024-06-29
防曬產品係數測試報告彙整(2024年)從2014年起,自己對於市售防曬產品的效能產生了濃厚的興趣。因為當時候發現不少產品的防曬係數其實標示是有問題的,像是原本應該是人體測試的SPF與PA數值,實際上沒有做,只用機器測試的數據來充當,但這兩者卻有很大的差異。像是防曬係數其實有強度、廣度與平均度三個面向需要一起判斷,但多數廠商並沒有完整標示
Thumbnail
avatar
邱品齊皮膚科醫師
2023-04-27
讓 Telegram bot 告訴你樹莓派的 IP 吧!(Rust version)本文介紹了作者使用 Rust 重寫的一個專案,目的是為了在樹梅派上取得 LAN IP,並透過 Telegram 機器人發送訊息。作者首先提到在樹梅派上使用 Python 版本時遇到的問題,之後才開始討論為什麼選擇了 Rust 重寫的理由。
Thumbnail
avatar
hms5232
2024-02-12
在 Rust 裡使用非同步(Asynchronous)非同步程式設計(Asynchronous programming) 或是簡單的稱之為 async,它是一種並發程式模型(concurrent programming model),其目的就是讓多個任務能同時在作業系統的執行緒上執行,並透過 async/.await 保留同步。
Thumbnail
avatar
一顆好芒果
2024-01-28
Rust Shadowing VS 可變變數先須知識: 了解什麼是變數 作用域scope 在Rust中,變數預設是不可變的 let name = "Zoe"; // 預設變數不可變 也就同於Javascript中的const,若想讓變數可變則需要在let後面加上mut關鍵字: let mut name = "Vicky"; nam
Thumbnail
avatar
JHIHLEI LIN
2023-12-22
設定RUST_BACKTRACE=1在開發 Rust 或是使用 Rust 編寫的 CLI 工具時,常會看見類似下方的錯誤訊息: note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace 簡單寫一下該怎麼做。
avatar
hms5232
2023-10-14
用 rustlings 來練習 Rust 語言對於剛學習 Rust 的人來說,最一開始不是看 Youtube 的影片或是跟著 Rust 官方手冊 The Book 學習,這邊來推薦一個練習 Rust 的專案,名為 rustlings。 rustlings 包含著一些簡單的題目,來讓你更習慣閱讀或編寫 Rust 程式碼。該專案會在每道題目上給予
Thumbnail
avatar
一顆好芒果
2023-10-02
avatar
YUKI
2022-11-04
NFT項目-Rustic AnyMal白名單贈送Rustic AnyMal項目介紹和白名單贈送~
Thumbnail
avatar
芒現
2022-03-27
Rust 得知套件 version 與 features 的方法Rust 的 .toml 裡面到底要寫些什麼呢 ...
Thumbnail
avatar
數學課本
2022-01-06