老大隻讓用vi寫代碼該怎麼破?

Vim很強大,用Vim在實行妹子前快速移動游標也可以非常酷炫(自認為)。在有些時候,比如生產環境救火,或者跳板機不支持圖形界面的時候,Vim甚至是唯一的選擇。但是如果老大強制組內全員用Vim甚至Vi來做日常代碼編輯,你會怎麼做呢?


你可以像這樣架個攝像頭,等你老闆一靠近就自動彈出vi界面嘛

這東西原作者是個日本人,稍微改改就好
地址在這~
https://github.com/Hironsan/BossSensor?from=groupmessage
(逃

======================、===================
評論區似乎有亮點


看是寫什麼代碼
C++,伺服器部署腳本什麼的,有特定應用場景,比如沒圖形界面,或者現有的開發環境跟VI集成得特別好,強行讓你用vim還可以理解。

Java、JavaScript之流逼你用vim……你找機會把老闆開了吧。我不是說這些不能用vi,我老闆就是,寫了幾十年Java用的vi。

他自己用固然可以,逼著別人也接受就沒有必要了。明明有方便成熟功能強大學習曲線平緩的IDE更適合新手,還抱殘守缺那就是思維固化不敢接受新事物了。


十年前一位前輩在我的電腦輸入了兩個字母:vi。並告訴我這是世界上最好的編輯器,我看了一眼,驚為神器,一直使用到現在。vi 絕對是一個用過之後再也回不去的編輯器~~~十年了我都沒能退出來。


用著用著也就習慣了……
總有一天你會在用word寫文檔後也習慣性地敲出 :wq。


主要是為了直接在伺服器上寫完就地編譯測試,有的代碼有環境依賴本地測不了,有的環境都不通辦公網,拿跳板機折騰半天複製幾行代碼太慢了。
其實你也可以選擇學習搭建一個方便出色的CI系統,學習一下travis,jenkins,gitlabCI,docker,kubernet等等,再寫個一千來行shell,你就可以想用什麼就用什麼了,絕沒有人說你


我來教你一個辦法,當年我就是用這個辦法入坑vim和全鍵盤操作的,而且過程非常愉快,積極性高昂。

那就是。。。

向老闆申請多配幾個顯示器,因地制宜呈不規則擺放。

例如這樣

然後你就會發現,用滑鼠實在是無比麻煩,找都找不到。相對起來花兩個星期學學vim和背背系統快捷鍵簡直不是事。


強制所有人必須用vi的這種團隊老大,我看他自己未必牛逼,但超級自戀應該差不離。

vi不過一個代碼編輯器罷了,怎麼有那麼多的人吹捧這東西?好象用它人就牛逼一樣。

OK,vi敲代碼就是快就是快,可以完全不用滑鼠……

但使用敲代碼速度快的編輯器,就意味著有高的開發效率?

我就看不懂了,敲代碼快有什麼好得意的?難道軟體開發=敲代碼?

如果是這樣,那打字快的作家,一定會比打字慢的作家更能寫出好的作品。

其實,作家牛逼與否,拼的是作品,不是他用哪種輸入法,每分鐘能打多少字~~~


問題是,他怎麼知道你是用啥寫的?難不成他還能在每個團隊成員電腦前面安個攝像頭,自己整天監視你們是不是用的 vi?


alias vi="emacs"


但是如果老大強制組內全員用Vim甚至Vi來做日常代碼編輯,你會怎麼做呢?

這種場景真的存在嗎?我感覺,貌似是不存在的!

根據我 「多年」 的工作經驗,單純寫代碼的話,老大一般你會關心你能不能完成任務,從不關心你用什麼工具!

就算你用wps,只要能完成任務,也是可以的!

如果各位大神遇到了這種情況,可以給我分享一下啊!


換個帶touch bar的mbp,說不會改esc鍵位。


裝一個 GNU Emacs ,然後在 Emacs 上跑 vim 。


alias vi="vim -y"


推薦一個問題:
一怒之下把直屬上級打了一頓是種怎樣的體驗?

你值得擁有……


修復了"只用vi的bug",並拿老闆去祭天。(逃)


我用多了以後,每次qq修錯別字都不小心ctrl w退出......


要看寫什麼代碼

  • C/C++ 配合ctags,lldb還有一些語法高亮和自動補全插件用vim寫應該還是挺爽的。但是你要說服老闆用宇宙第一IDE Visual Studio來寫C/C++才能提高效率。Mac的話用XCode。
  • C# 這個用vim根本沒法寫,不用Visual Studio完全寫不出來,Mono Develop勉強湊合。
  • Objective-C 蘋果御用語言自然要用蘋果御用IDE來寫,用vim寫是叛徒。說服老闆要尊重信仰。
  • Java 這個必須要用JB家的IntelliJ來寫,再不濟Eclipse也行。用vim寫如果沒有良好的自動補全的話會非常蛋疼。有本事讓老闆自己用vim寫Java試試。
  • Python/Perl/Ruby/Bash 這類腳本語言是最適合用vim寫的,這個就沒什麼值得爭論的了。
  • Haskell/OCaml 函數式編程語言貌似用vim寫並沒有什麼優勢,不過我並不了解函數式編程語言有沒有特別好用的IDE。
  • PHP 世界上最好的語言當然要配世界上最好的編輯器,乃是JB家的PhpStorm。
  • HTML/CSS/JavaScript 前端工程師一般都不太擅長使用vim寫代碼(逃,因為有足夠多的選擇,比如Brackets, Sublime, Visual Studio Code, Atom等等
  • Matlab/Octave 貌似沒有什麼人用vim寫Matlab代碼,Octave用戶用vim倒是情有可原。
  • R 人家有R Studio

我平時工作的代碼都是在自己的測試伺服器上的,用我司發明的Nuclide配合Atom療效極佳,只有少數時候在伺服器上運行的時候臨時修改代碼或配置會用一下vim


以我多年的觀察,會用vim/emacs和代碼寫得好之間的關聯是統計不顯著的。


跳槽吧。

不是說vi不好用或者沒有學習必要。老闆這種拍腦子做決定的作風工作中合作起來一定困難重重。

好多答案說vi多麼好用,藉此想說明這個決定的合理性。然而不管是從開發速度還是開發質量上來說,都看不出這個規定會有什麼幫助。

程序員已經很慘了,加班,改需求,還要被殺了祭天。要是連選擇自己心愛的編輯器的自由都沒有,還有什麼值得去守護的東西呢。


帶薪學 vim?
還有這麼好的事情?


推薦閱讀:

如何維護可讀性很差的代碼?
雷軍問我:你寫程序有寫詩一樣的感覺嗎?
哪種語言適合沒有編程經驗的人學習?
為什麼階乘一定是偶數?
作為一個有理想的程序員,必讀的書都有哪些?

TAG:互聯網 | 編程 | Linux | Vim | 程序員修養 |