再見了我的戰友 && 新筆電一週使用心得及調校 (Vim, Anime4K , etc)
再見了我的戰友 && 新筆電一週使用心得 (Vim, Anime4K, etc)
認識我的人都知道我是一個忠實的 macbook 用戶,而若要提到我與 macbook 的邂逅,那得追溯到國中畢業的那個暑假。那時,我從親戚那邊入手了一台二手 macbook pro。2010年的款式,15寸螢幕。而在我入手的那個時間點,除了電池的續航力比較不足以外,其他方面帶給我的體驗都很不錯,讓人很難想像那台電腦已經用了六年多。不過在過了快一年之後,那台電腦就壽終正寢了,也是在那個時候,我入手了第一台全新macbook pro。2017年的款式,13寸螢幕,除了感受到效能的提升之外,最有感的升級就是那片 retina 螢幕吧。到目前為止這台電腦也用了快四年了,雖然效能開始漸漸感到有些不足,不過保守估計再用個兩年不是問題。剛好,我弟現在需要一台筆電,所以我就把目前這台給他使用,並且換一台新機。
舊機紀念照 - 再見了我的戰友
這一次我購買的是 2019年底出的16寸版本,13寸的M1版本雖然也相當不錯,不過我平常有用虛擬機跑 win 10 玩遊戲的習慣,最後選擇了應該是末代intel版本的款式,而也因為我平常不習慣使用外接螢幕,16寸對我來說確實是比較合適的,目前感受到的缺點應該是重量吧,不過還在可接受的範圍。
不得不說,time machine 還是相當方便的,接上硬碟傳送完資料之後,即可回復當初的環境,不過還是有一些東西要調整就是了。
配置調校
Compiler (LLVM)
用了mac多年,老實說我的編譯環境是有些混亂的,這次乾脆直接使用LLVM。
在 iterm 輸入:
brew install llvm |
再照著終端機輸出的內容,在 .zshrc 配置環境變數。
Vim
在繼承了之前的 .vimrc 之後,基本上大致上是沒問題的,不過不知道為什麼 YCM 這款插件報錯,所以乾脆重新安裝。
- 刪除 ~/.vim/bundle/YouCompleteMe,並用Vundle重新安裝插件。
- 用終端機在~/.vim/bundle/YouCompleteMe內運行指令
./install.py
- 新建一個資料夾,用cmake編譯ycm。
mkdir ycm_build
cd ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_BOOST=ON -DPATH_TO_LLVM_ROOT=/usr/local/opt/llvm .\ ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
cmake --build . --target ycm_core
再來因為之後要開始寫python,順便配置了python的設置,大部分配置都跟網路上的一些教學差不多,比較特別的地方是採用ipython-cell這款插件,在vim上打造jupyter notebook 般的環境,使用方式為開啟tmux將終端機垂直分割,在左邊運行vim,將程式碼發送到右側。詳細配置可參考我的.vimrc檔。
Anime4K + IINA
既然換了16寸的版本,自然要好好利用獨顯的性能。於是我想到了Anime4K,這個能在播放器即時 upscale 動畫畫質的專案。官方文檔主要是針對 mpv 這款播放器,而我在爬了一些文之後成功把這個專案用在 IINA 上面。
- 在 ~/.config/mpv 下創建 shaders 資料夾,並把在Anime4K下載的glsl檔全部放入其中
- 在 ~/.config/mpv 下創建 mpv.conf 文檔,並將下列配置加入。
vo=libmpv
profile=gpu-hq
scale=ewa_lanczossharp
dscale=ewa_lanczossharp
cscale=ewa_lanczossharp
video-sync=display-resample
interpolation
tscale=oversample
icc-profile-auto
glsl-shaders="~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_M.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl" - 打開IINA偏好設定,在進階設定勾選“使用設定檔資料夾” ~/.config/mpv/。在快速鍵頁面複製一個你常用的設定檔,取名為anime,點擊“在finder顯示設定檔”,打開 anime.conf ,在最下方添加下列配置。
CTRL+1 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_VL.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Mode A (HQ)"
CTRL+2 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Mode B (HQ)"
CTRL+3 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Mode C (HQ)"
CTRL+4 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_M.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Mode A (Fast)"
CTRL+5 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl:~~/shaders/Anime4K_Restore_CNN_Soft_M.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl:~~/shaders/Anime4K_AutoDownscalePre_x2.glsl:~~/shaders/Anime4K_AutoDownscalePre_x4.glsl:~~/shaders/Anime4K_Upscale_CNN_x2_S.glsl"; show-text "Mode B (Fast)"
CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"
根據設定,預設是開啟ctrl+4的 “Mode A (Fast)”,按下 ctrl+1~5 可以切換模式,按下 ctrl+0 則是關閉畫質增強,大多數時候直接使用預設的模式就可以了,ctrl+1 則是預設的上位版,不過跑起來會比較慢,可以根據設備自行調整。經過測試畫質的升級效果相當不錯,不過使用內顯的情況下跑不太動,因此我在 IINA 開啟了調用獨顯的設定。
結語
原本這篇文章是打算當成開箱文寫的,不過這樣似乎沒什麼內容。於是加入了一些偏硬核的技術配置,又因為不想讓篇幅太長,因此採取簡單帶過的寫法。之後如果有配置其他有趣的東西會在這篇文章更新,如果有關於配置的問題可以在下方留言詢問或討論,讓我們在下一篇文章見。