View profile

大山姆的機機車車™ #18

Revue
 
▋VIM 出成功的第一步我大概是在 2012 年左右成功跨過 VIM 的入門門檻,正式成為一名 VIMer。在此之前,大概失敗了五次,每次都撐不了幾天就說服自己回到熟悉的文字編輯器。 「VIM」不單指那
 
March 17 · Issue #18 · View online
《大山姆的機機車車™》電子報
▋VIM 出成功的第一步
我大概是在 2012 年左右成功跨過 VIM 的入門門檻,正式成為一名 VIMer。在此之前,大概失敗了五次,每次都撐不了幾天就說服自己回到熟悉的文字編輯器。
「VIM」不單指那個「文字編輯器」,對我來說,VIM 是一種「操作文字的技藝」,有時候也是「操作游標的技藝」。相較於一般文字編輯手法,VIM 的學習曲線公認陡峭。不過,反思我的學習經驗,我認為調整好心態,用對方法,熬過最初兩個禮拜,成為 VIMer 的機率很高。
學習 VIM 的心態
以正確的心態接觸 VIM,成功的機會高。非 VIMer 最常問的問題是:
VIM 真的值得我忍受學習新工具的痛苦,花時間、精神與腦力學習嗎?
答案絕對是肯定的。我人微言輕,說的話沒什麼說服力,網路上隨便就找得到一堆盛讚 VIM 的高手不斷傳達「不要遲疑,趕快 VIM 起來」的訊息。國外一間軟體公司 Thoughtbot,幾乎把 VIM 列為必備技能。
另外,我認為要學好 VIM ,不會盲打,難度很高。「盲打」就是打字不用低著頭,盯著鍵盤看。如果你還不會盲打,請花時間苦練
雖然 VIM 可以做很多你以前想都沒想過的事,不過,跟學習其他技能一樣,我建議一開始不要想太多,從最簡單的操作開始練,累積小勝,熬過痛苦期,進入「正向循環」。
一開始不要想著挑戰高難度的技巧,如同我先前在推特分享的,比較保守的學習方法是:
有志往專業程式設計師發展的朋友,我建議給自己一個「++專業技能」的機會:花至少一個月的時間用心學習 VIM。頭一個月不求多,開檔、存檔、離開,基本的游標操作(上下左右,跳行數),搜尋,選取、複製、貼上。我相信學會以上技法後,你就…上鉤了。
另外,不要被其他 VIMer 的高能技巧閃到而自暴自棄,每個人的學習階段不同,領域不同,解決問題的手法也不同。保持開放的心胸,看到好用的技巧就學起來,多練習,你會越來越強。發現好用的技巧,興奮之餘別忘了分享。分享使人成長,也讓社群茁壯。
你的第一個目標應該設定在使用 VIM 編輯文字的效率,達到或接近你原本熟悉的編輯器。接著,當你慢慢學會更多 VIM 專用技巧,就能把文字玩弄於股掌之間,工作效率也會大幅提昇,自此欲罷不能。
前陣子,我試著在推特上以簡短的動態 GIF 圖,搭配文字說明,展示一些我覺得好用的 VIM 技巧。未來我打算分享更多好用的 VIM 技,希望引起更多人的興趣。
VIM 有很多高級技巧,但其實不需要那些高級技巧,也能讓你做起事變得很「高級」。所以,不要再猶豫了,今年就是你的 VIM 元年!
本期以 VIM 為主題,我分享了網路上許多不錯的 VIM 教學。
我是山姆,《大山姆的機機車車™》是我投注心力製作的電子報,希望透過這份小報,把我感興趣的資訊分享給同樣求知若渴的您。

參兩摘
The State of C++ on Windows | Kenny Kerr
UTF-8 Everywhere Manifesto
Stick to UTF-8 and these three character sets
VIM 學習資源
Vim Cheat Sheet
爽爽快快學Vim(1) | 高見龍
Interactive Vim tutorial
VimGenius
Vim Awesome
給程式設計師的Vim入門圖解說明 | vgod's blog
使用 Vim 編輯器的第五年
摘影片
CppCon 2018: Robert Schumacher “Don’t package your libraries, write packagable libraries!”
開發套件不只要考慮開發者和使用者,還要考慮到依賴的套件開發者和維護者,原則一樣是全面向更一般化。 (不過實務上真的不容易,還是非常多情況需要用 Windows.h 啊) 演講做後最後講者順邊廣告一下 vcpkg 這個跨平台 C++ 套件管理員 XD
By Sidney Niu
CppCon 2018: Robert Schumacher “Don't package your libraries, write packagable libraries!”
CppCon 2018: Anastasiia Kazakova “Debug C++ Without Running”
因為 C++ 是一個蠻複雜的語言,好在有Meta的概念 ( Constexpr, Injection ),使用者應該儘可能地把工作搬到編譯時期除錯。 雖然演講中用 Macro 去達到除錯的技術,正式原始碼 Macro 還是越少越好,畢竟不易追蹤。
By Sidney Niu
CppCon 2018: Anastasiia Kazakova “Debug C++ Without Running”
吸引人的標題,不過,我建議不要給自己那麼大的壓力。堅持兩個禮拜不放棄,你就差不多成功了。
Learning Vim in a Week
VIM 內建的功能已經很夠日常生活使用,過於追求好用的 Plug-in 容易迷失方向。外掛不一定帶你上天堂,各個領域都一樣。
How to Do 90% of What Plugins Do (With Just Vim)
一個 VIMer 想不開去學 Emacs 後分享心得。新人不要看,徒增煩惱。
Evil Mode: Or, How I Learned to Stop Worrying and Love Emacs
開源專案
Microsoft/microsoft-ui-xaml: Windows UI Library
Microsoft/xlang: Help developers create APIs that can run on multiple platforms and be used with a variety of languages
課程推薦
開始 C++ 程式設計 – 從新手到超越
學習進階的 C++ 程式設計
中文課程 – C++ QT 跨平台界面編程原理和實戰大全(QT5)
WorkFlowy Tips
[249] WorkFlowy 春節禁忌清單 – WorkFlowy Tips
[252] 「快叫人吶!」叫什麼叫,不知道是誰怎麼叫? – WorkFlowy Tips
掃 QR Code 前往 WorkFlowy 稱謂清單
想知道更多 WorkFlowy 撇步,請快步前往 WorkFlowy Tips 。還沒有 WorkFlowy 帳號?請用此連結申請,加倍免費清單上限。
還有還有,我在臉書開了一個以 WorkFlowy 為主題的社團——山姆的 WorkFlowy 大小撇步,歡迎加入分享你最酷的 WorkFlowy 使用技的更多同好!
💌 喜歡這一期的內容,請幫我按「👍」。不喜歡請按「👎」,並寫下你認為哪裡做得不好,你的回饋是我進步的動力。想要匿名舉報的話,我開了一個「提問箱」,歡迎使用,謝謝!
Did you enjoy this issue?
If you don't want these updates anymore, please unsubscribe here
If you were forwarded this newsletter and you like it, you can subscribe here
Powered by Revue