最近在練習 WebStorm / Tennis 的速度(目前 10 分半)
想使用 “邪教觸控板” 超越 “傳說 vim”
不過 Vim 真的不是我的愛,加上 Mac 鍵盤搭配 Vim 真的很痛苦
尤其是那難用的 ESC 及 Touch Bar
後來決定使用觸控板搭配 Web Storm 特性
試圖將速度有效的提升
遇到的問題及解決辦法:
1. 滑鼠 / 觸控板會慢,是因為需要找游標以及需要瞄準
但純粹游標瞄準絕對不是問題
想想各位都可以在 CS 等射擊遊戲中
使用狙擊槍 0.5 秒甩槍爆頭
沒道理這個技能在開發中無法運用
問題在於預設情況,打字狀態下游標是會被隱藏的(Mac 是如此
遊戲中,游標是穩定在畫面的中央,所以反應才能那麼快
只要能夠穩定的了解目前游標位置
自然就能加速使用觸控板 / 滑鼠開發
(因此我在游標上加了O,永遠掌握它的位置)
2. 自動格式化、分號、存檔、測試等重複流程
在 極速開發 課程中介紹到 Vim 指令搭配 Web Storm
使用組合鍵的形式呼叫 Web Storm 的多個方法
可以有效使用少數幾個按鈕就執行多個行為
如果是沒有使用 Vim 則可以使用 Macro
類似錄製的方式,將特定的 Action 記錄起來
再透過熱鍵的方式觸發
格式化、存檔、測試一次搞定
3. 複製片段太慢
Vim 中,複製技巧是一個檻
用滑鼠 / 鍵盤開發也是如此啊!
選取、複製、貼上這個流程中都會耗去不少時間
加上貼上後還需要移動到指定位置
所需的鍵盤指令都需要不少
因此我再次使用 Web Storm 的 "Macro" 功能
直接複製整個區塊(只要移動至區塊的最前方,最後複製該區塊)
接下來在使用游標移動至要編輯的區塊即可
移動的過程中還可以使用滾輪調整畫面位置
過程中可大幅降低輸入錯誤指令問題
---
同事們也說到:你這個研究精神,Vim 早練起來了吧.
===
也感謝這門課,讓我重新體悟許多事情
- 效率不好是「工具不熟悉、方法不對、壞習慣不改」所造成的
- 重複的訓練可以有效加速對於工具、知識的掌握
- 觀看錄影知道自己還有哪邊可以優化,每次調整都可以提升數分鐘的效率
六角接下來也討論直播課程要導入相關的概念
我也是雙手贊成,這真的可以強化許多知識及工具掌握能力
#目標十分內
mac vim指令 在 紀老師程式教學網 Facebook 的精選貼文
[程式工具] 想學 Git 卻沒時間?紀老師幫您調配出「超濃縮」的 Git 超神水!讓您一喝見效!
1. 喜歡「一圖包全部」的人
"Git Cheat Sheet"
英文版: https://goo.gl/aQpj6k
簡中版: https://goo.gl/zu64Bl
2. 喜歡「一路互動學」的人
"Git Immersion"
http://gitimmersion.com/
#ToolsTuesday #Git #VersionControl #ProgrammingTools
-----------------
嗯...配圖的梗看得懂嗎? XD 這是一個尋找相同世代的概念...
Git 是所謂的「原始碼版本控管軟體」,也是我在補習班教課時,私下半開玩笑跟學生說程式設計師「五大神器」(vim, gcc, git, make, gdb)之一。因為這五種工具都能在最惡劣的「命令列」環境下執行。就算你用 ssh 遠端連入一塊 CPU 不快的開發板,有了這五種東西,你要我寫什麼程式我當場都可以寫給你,而且又快又好。
這就像某個左上臂繡著一條龍、還常用布包起來的廚師一樣,身上只背了「菜刀、湯杓、鍋子」三樣東西,任何料理都可以當場做給你,吃完還能「衣襟炸裂」...(咦?最後一句跑錯棚了?) <-- 哈哈哈!看不懂這一段的梗就當作我發瘋亂講話沒關係...抱歉啦!目的只是說明,好的程式設計師會逼自己適應少數幾個簡單的工具,以便在任何環境都能寫出好的原始碼。
不過不少朋友都會問:「有沒有那種看個 30 分鐘、就能學會 Git 基本操作指令的文件啊?」這位施主運氣真好!我這邊剛好有兩篇。名稱與連結都已經附在最上方了,讓我跟您說明一下服用方法。
「Git Cheat Sheet」適合對版本控制軟體稍有經驗(如:用過 CVS, Subversion)、只是沒摸過 Git,想快速掌握 Git 的朋友。它把 Git 常用指令寫成兩張紙,打包成 ZIP 檔供您下載。您可以將它下載後印出,貼在書桌前。某些需要更多細節的指令只要丟入 Google 查一次,下次相信您就能運用自如了。英文苦手的朋友有簡體中文版,連結也附在上面了。
「Git Immersion」適合沒啥版本控制軟體經驗、喜歡一步步互動學習的朋友。它的首頁有個大大的綠色箭頭,一直按就能前進到下一步。如果您喜歡 Git,但就是不喜歡用「命令列」下指令,希望有圖形式工具來操控 Git 的,該頁面的右上角,也介紹了兩款 Git 圖形式介面工具。GitX 適用於 Mac 系統,TortoiseGit 適用於 Windows 系統。點擊首頁「Graphical Clients」下方的「Mac」或「Windows」按鈕,就可以前往該軟體的下載頁。
今天介紹的東西還喜歡嗎?喜歡的話,還請用力按下「讚」讓我知道喔!那個「讚」太少的主題,我會減少該主題出場的機會。所以這個主題是您喜歡的,請不要吝嗇表達您的意見喔!
期待我小小的貢獻,能成為您增進程式設計專業的路途上,小小的一個墊腳石!「工具星期二(Tools Tuesday)」單元,下週二再見囉!
預告:
明天有免費的 C++ 影音課程要介紹給您,別錯過了喔!
mac vim指令 在 紀老師程式教學網 Facebook 的最佳貼文
想在 30 分鐘內學會 Git 嗎?看這裡就對了!
Git 是一種「原始碼版本控制」軟體,它可以儲存原始碼每個版本之間的差異,然後您可以要求「時光回溯」到任何指定的版本。這可以防止一天到晚改規格的客戶或老闆,在您辛苦更動原始碼後,來一句要命的:「還是之前的那一版比較好」。我個人認為,它是程式設計中,最重要的 7 大軟體之一(文字編輯器、編譯器、版本控制器、自動化建構系統、單元測試軟體、環境佈建系統、與除錯器)。
這類「版本控制軟體」,依照流行先後,著名的有 CVS、Subversion、與 Git。目前最流行的版本控制軟體是「Git」,流行原因多多少少是因為 Linux 核心(Linux Kernel)原始碼,就是用這套軟體保持各個版本差異的。不少公司也要求程式設計師寫好原始碼後,一律都得回存 Git 系統才算完工,不能只是存在私人的硬碟就了事。所以 Git 就變成業界必備的軟體之一。
補習班常常有同學問我,有沒有那種很簡單的 Git 說明書,不用講太深,但要在 30 ~ 60 分鐘內就掌握常用功能的教材?之前一直找不到,不過今天幫大家找到了!還有中文版喔!叫做「Git 簡明指南」。鏈結如下:
https://rogerdudler.github.io/git-guide/index.zh.html
其實它的原文名稱有點好玩:「Git - The Simple Guide, No Deep Shit!」。這類標題通常能騷動我個性中愛作怪的小惡魔,讓我會心一笑後點進去看看。看完後,果然「一點點深的便便」都沒有... XD 還有中文版(簡中)!心想這麼讚的東西不介紹怎麼行!就花時間寫了這一篇。
希望今天的分享對各位的日常工作有幫助!我也很鼓勵大家能找到適合自己的「七大系統」,把它弄熟。畢竟「工欲善其事,必先利其器」嘛!我個人習慣使用的七大系統,也列在底下讓大家參考:
1. 文字編輯器:vim。不好學,但游標移動速度與文字操控能力超快!
2. 編譯器:gcc。因為我寫 C 語言比較多,所以用 gcc。
3. 版本控制器:git。其實我之前是熟 subversion。不過 git 也很好用喔!
4. 自動化建構系統:make。可以把編譯、安裝...等囉哩八唆的指令濃縮成一個簡稱(如:build, install...等)。打完按下 enter 後就可以去泡咖啡了!還能偵測哪些原始碼已經編譯過,不需重新編譯已縮短作業時間。
5. 單元測試軟體:CUnit。嚴格來說,這算一套「函式庫」,可以針對你寫好的原始碼做測試。由於我寫 C 較多,所以用 CUnit。如果您寫的程式碼是 Java 或其它,可能得找相對應的測試軟體。
6. 環境佈建軟體:VirtualBox。用它的原因是 Win, Mac, Linux 全平台都支援。我會把程式設計環境灌好後的 VirtualBox 映像檔保存好,每次要乾淨環境就 new 一個新的虛擬機起來。最近迷上 Vagrant,想知道 Vagrant 是什麼的可以看這篇: http://goo.gl/29mBs9
7. 除錯器:gdb。雖然是文字介面,但連線到運算能力很差的開發板上想除錯,也只有 gdb 跑得動。用久了也習慣了。
其實最近還想加上第八項「(8) 軟體部署系統:Docker」,不過還在研究,也還沒熟悉。等熟悉了再跟大家報告。 :-)
如果覺得文章不錯,還煩請各位不吝按讚打賞或分享一下喔! m(^ ^)m
mac vim指令 在 Re: [閒聊] Mac適合用來寫程式嗎? - 看板Soft_Job 的必吃
Terminal 上面 Mac 很好用啊
請愛用 iTerm 2 並且在 profile 裡面把 alt map 到 esc
zsh 更強大,以下所有指令都是 mac/linux 通用(因為都是給 shell 的指令)
熟一次就可以
ctrl+a 行頭
ctrl+e 行尾
ctrl+p 上一個指令
ctrl+n 下一個指令
ctrl+d delete
alt+d 刪後面一個字
ctrl+b 往左
ctrl+f 往右
alt+b 往左一個字
alt+f 往右一個字
alt+backspace 往前刪一個字
ctrl+k 刪掉游標之後所有的字
ctrl+r 往前搜尋指令
ctrl+s 往後搜尋指令(zsh,如果你在 bash 下面按到,shell 會凍結,請按 ctrl+q)
ctrl+_ 復原
ctrl+y 把剛剛 delete 刪掉的貼上
這些是我比較常用所以記得的的
bash/zsh 據說都可以調成 vim key binding
就請熟悉的人在補充了
個人很推 mac notebook 上面寫程式
因為反正你只要開了 terminal,就跟你熟悉的 linux/bsd 一樣了
當然有些 fs 沒有,不過大致上差不多
比起 linux,你不需要去擔心 driver 會不會有問題,導致有硬體不能發揮全力
電腦蓋起來就進入睡眠,完全不需要設定,也不需要擔心 OS 有沒有正確設定硬體行為
也不用擔心 wifi 設定,也不用擔心顯卡有沒有正確支援,也不用擔心接投影機會不會動
而且 Mac 的觸控板,簡直是無敵,大概只有小紅點能夠匹敵了
簡單的說,你就專心 programming,所有電腦的事交給 Mac OS
你喜歡的 vim/emacs/eclipse/sublime text/gnu global/cscope/gcc.. 全都可以裝
當然你有個問題,就像前文說的,有時候東西會編不過
這件事情你需要考量,除此之外,還有 Mac 對 Xwindow 的支援 suck
如果這些東西都不是問題,我覺得 Mac 是個好的選項
※ 引述《JUPBT (JUPBT)》之銘言:
: 個人經驗
: 使用mac筆電 不外接鍵盤
: 少了home與end鍵 代碼真的是難編輯不少
: 尤其是在終端打命令行(不可用滑鼠點) 更是痛苦
: 我個人是沒必要不在mac上寫程式
: OS X真的是太潮了
: 潮到新舊板作業系統軟件開發包(SDK)設定失當就編譯不過
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.168.201.10
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1397975397.A.F1F.html
... <看更多>