你的工作與生活離不開電腦,電腦是一個工具,也是一個環境。環境是不是綠水青山,是不是得心應手,這是很重要的事情。小程平時使用macbook來學習跟娛樂,最近重裝了系統,很多環境與工具都需要重新組建。
那麼重裝系統後,或者對於一個全新的macos系統,需要配置什麼樣的軟體環境或者設置後,才能做到得心應手,指哪打哪呢?
小程從實用的角度出發,介紹如何組建一個高效順心的開發與娛樂環境。
小程覺得,打字是基本的需求,讀者應該選擇一個適合自己的輸入法。可以打開Safari(mac系統自帶的瀏覽器),搜索「mac輸入法」,選擇一個適合自己的輸入法。
如果讀者用的是五筆輸入法,那應該選擇一個拼音與五筆可以混合輸入(或者可以設置)的輸入法,比如搜狗五筆輸入法。之所以選擇拼音與五筆混合,是因為經常使用五筆的人,也有可能想不起字是怎麼寫的,但卻知道怎麼讀,那這個時候就可以用拼音來補救了。
比如:
在配置軟體環境時,經常有下載的需求,為了避免幾天都下載不了一個軟體的情況,選擇一個支持斷點續傳而且速度快的下載軟體,是有必要的,比如迅雷是一個不錯的選擇。
git最大的一個作用是版本控制,但對於小程來說,它最大的一個好處是可以快速提交小程的個人資料以及任何的修改。有了它,不再需要U盤,也不用擔心在家或在公司的修改會導致衝突的問題。當然,使用git的前提,是有一個git的伺服器。
一般來說,bitbucket,一個能夠以git管理資料的伺服器,可能就是讀者想要的,因為它是工作或學習的移動存儲空間,而且提供免費的私有項目(相對而言,github的私有項目是要收錢的)。
對於git的客戶端,在mac系統自帶的terminal上,打下git命令並回車後,mac系統會提示安裝Xcode(集成了git的集成開發環境)或者它的Command Line Tools,讀者可以在AppStroe中安裝Xcode(然後在Xcode的偏好設置,下載入口,再安裝command line tools),也可以簡單地,安裝command line tools就好,只需要跟著系統的提示來弄即可。
當然,客戶端上,也可以使用圖形化的git管理工具,比如sourcetree等。
具備git伺服器,以及git客戶端後,就可以提交或獲取重要的資料了。但前提是,讀者要在需要的時候,「記得」這個git項目的url與密碼,對於這個信息,小程覺得可以存在手機裡面吧。
但也請留意,公司的項目不應該提交到私人的git項目,除非公司授權或默認許可。
讀者可能有很多常用的軟體安裝包,或者常用的設置文件,把這些資料都放在git項目中是不恰當的,因為一個安裝包就可能幾百兆。這個時候,一些免費的或收費的雲盤就發揮作用了,比如百度網盤。
下載雲盤客戶端,然後從中取出需要的安裝包、學習視頻等資料,平時不常用的資料也可以移到雲盤,以節省本地磁碟空間的佔用。
比如小程使用的百度網盤的一個截圖(是的,本文所有具體軟體都有打廣告之嫌):
alfred是mac電腦上的一大利器,小程強烈推薦。
alfred是哪方面的利器呢,這個要看它能做什麼事情,這裡列舉一些alfred能做的事情,有一些是alfred藉助插件擴展的事情。
注意,alfred的啟用都以「alt+空格」來觸發。
根據名字快速定位本地資源(文件夾或文件) 查找包括特定字元串的文件
根據名字快速定位本地資源(文件夾或文件)
默認已經設置好了,你也可以再設置一下,請參考下面的截圖說明:
快速切換、打開、關閉軟體
切換或打開一個軟體,只需要輸入這個軟體的關鍵字再回車即可,小程很多時候用這個來替換「cmd+tab」按鍵,更加不會用到滑鼠。
對於關閉軟體,需要自己實現workflow,當然也可以直接下載別人分享的workflow,比如這個:
說到這裡,讀者應該可以猜測到,alfred強大的地方,在於它支持workflow(工作流程),而workflow是可以自己寫的,而且有大量實用的workflow已經被分享出來。
讀者可以在這個地址,找到自己想要的workflow,包括現在提到的「關閉軟體」功能的workflow: http://www.alfredworkflow.com/
當然,讀者也可以在網上搜索一些有趣的workflow。
在本地查找api介面(c/c++/ios/android/git等)
對於程序員來說,查看某個sdk的介面,是經常要做的事情。
你需要先安裝dash(在百度搜索「mac dash」下載安裝包),然後再安裝使用dash的workflow(在上面介紹的網址可以找到):
即時翻譯單詞並拷貝翻譯結果
比如你可以下載「有道翻譯」的workflow,再使用:
md5計算 定位到文件後,直接用sublime打開 查找地圖、ip、書籍、電影、天氣、快遞信息等 在stackOverflow上搜索關鍵詞 中/英翻譯大段文字 新聞、bbs閱讀 數學計算 autojump
md5計算
以上這些功能,小程不一一演示了,你如果需要幫助,也可以關注「廣州小程」微信公眾號並留言,在能力範圍內的,小程會給予幫助。
因為alfred提供了workflow的腳本支持,所以想要實現什麼功能,只需要寫一個workflow就可以了,所以定製自己的智能化的程序是很方便的。
有了alfred(再加上其它軟體),小程基本上不用動滑鼠(截圖除外)。
那麼,怎麼寫一個workflow呢?
在這裡作一個示例,用alfred來實現「文字轉圖片」的功能。
先演示一下,使用的效果:
你可以選擇適合自己的腳本語言來寫程序,這裡選擇python來實現,這是alfred支持的一種語言。
有兩個程序要寫。
一個是創建圖片,並且設置圖片的背景顏色與字體的顏色,再把輸入的文字寫到圖片。
另一個程序,是打開圖片,把文字顯示出來。
馬上開工,先是創建文字圖片(保存為text_to_image.py):
# -*- coding: utf-8 -*- from PIL import Image,ImageDraw,ImageFont from bs4 import BeautifulSoup import sys
g_temppng=tempclip.png
def cal_text_length(text): en_text_length=13 zh_text_length=18 zh_text_size=3 offset=8 if BeautifulSoup(text, "html.parser").originalEncoding==utf-8: w=zh_text_length*text.__len__()/zh_text_size+offset else: w=en_text_length*text.__len__() return w
def generate_image(text,background_color,fill_color): height=128 font_size=18 w=cal_text_length(text) width_=w+50 img=Image.new(RGB,(width,height),background_color) draw=ImageDraw.Draw(img) text_to_draw=unicode(text,utf-8) font = ImageFont.truetype(/Library/Fonts/YaHei.Consolas.ttf, font_size) draw.text(((width - w) / 2, (height - font_size) / 2), text_to_draw, font=font, fill=fill_color) del draw img.save(g_temppng)
if __name__ == __main__: text="no input" if len(sys.argv)>1: text=sys.argv[1] generate_image(text,#000000,#ffffff)
然後是打開圖片(保存為image_open.py):
# -*- coding: utf-8 -*- from PIL import Image
g_temppng=tempclip.png if __name__ == __main__: img=Image.open(g_temppng) img.show()
最後,為了能快速運行這兩個程序,alfred要上場了。
在alfred的Workflows頁面,創建一個workfolw並進行設置,參考下面的截圖:
這個workflow的目錄結構是這樣的:
然後就可以通過alfred快速地輸入關鍵字(ti),再輸入圖片文字了,比如:
再通過alfred快速輸入關鍵字(io),打開圖片,比如(敲入io後):
如果讀者想測試這個例子,那需要準備python的環境,比如安裝PIL庫:
pip install Pillow
小程這裡不展開了。
alfred的使用就介紹到這裡,而alfred的功能還有很多,這些功能值得你去探索。
macos自帶的終端叫terminal,習慣使用命令行的你一定接觸過。小程這裡介紹另一個比terminal更大氣更好使的終端程序,叫iTerm。
http://www.iterm2.com,在這個地址下載最新版本的iTerm2,並安裝。
之所以說iTerm2大氣,是因為它有很多選項可以設置,而外觀上的設置,可以讓它變得很大氣。iTerm提供「主題」的概念,可以創建多個主題並且使用不同的設置。一般來說,為了美觀,文字與窗口大小是需要重新設置的,另外還可以設置背景圖等。這裡給了一個簡單的設置截圖:
你有可能會說:「我並不擅長配置顏色啊!」 那也沒有關係,因為已經有好心人分享了一系列的配色方案了,你只需要下載來使用即可。可以在https://github.com/mbadolato/iTerm2-Color-Schemes下載,然後選擇配色,如下面的截圖:
介紹完外形後,就是iTerm的使用操作了,小程介紹一下iTerm常用的一些操作鍵,你可以選擇使用,請參考這個截圖:
iTerm或terminal都是一個殼,真正使用的是腳本程序。默認的情況下,他們使用的是bash腳本程序,這是一個很常用的腳本程序,bash程序對應的配置文件是~/.bash_profile。
除了bash,還有什麼shell腳本程序嗎?你可以使用cat /etc/shells,來查看一下,比如下面的截圖:
小程要介紹的shell程序是zsh,zsh對應的配置文件是~/.zshrc。
先切換至zsh腳本程序:
chsh -s /bin/zsh # chsh -s 切換shell程序 source ~/.zshrc # 使當前窗口生效,也可以不執行這個,但需要重新打開一個窗口才能生效
chsh -s /bin/zsh # chsh -s 切換shell程序
相比於bash來說,zsh有什麼特別的地方嗎?一來zsh兼容了bash的功能,二來zsh有更多的功能,比如:
記憶功能:輸入關鍵字後按上下箭頭查看。 補全功能:輸入關鍵字後按一下或兩下tab鍵,按ctrl+n/p或者tab/shift+tab來選擇。
記憶功能:輸入關鍵字後按上下箭頭查看。
選擇zsh的另一個強大的原因是,基於zsh,有一個開源項目叫oh-my-zsh,簡稱omz,這個項目集成了各種主題(配色方案等)與及各種插件的支持,可以讓你的iTerm色彩豐富,而且功能變得更強大。
切換至zsh後,這樣安裝omz:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
這個安裝需要使用到command line developer tools,如果還沒有安裝過,則點擊彈框的「繼續」安裝即可,但需要較長的時間。
安裝完omz後,就可以編輯配置文件:~/.zshrc,作一些主題的設置,並啟用一些自帶的插件了。比如,小程的主題設置這樣的:
再比如,小程使用的插件是這樣的:
上面的幾個插件中,git是在版本控制時經常使用的工具,你可以在~/.zshrc中加入下面這一句:
alias eg=vi ~/.oh-my-zsh/plugins/git/git.plugin.zsh
也就是加了一個命令的別名,之後只需要敲入eg就可以查看或設置git的各種快捷鍵了。
然後是autojump,使用這個插件前,除了像上面那樣啟用它之外,還要做一些操作:
brew install autojump 在.zshrc中加入一句:[[ -s ~/.autojump/etc/profile.d/autojump.sh ]] && . ~/.autojump/etc/profile.d/autojump.sh
brew install autojump
讓配置生效後(使用source ~/.zshrc,或打開一個新的窗口),就可以使用autojump插件了:
d --這個命令返回最近進入的目錄 j xx --這個命令跳轉到xx目錄
d --這個命令返回最近進入的目錄
只需要敲入j跟目錄名,就可以跳轉到目標目錄,而且目錄名支持模糊拼寫,甚至支持錯誤的拼寫,以後可以跟「cd」說byebye了(但前提是曾經有進入目標目錄)。
extract,這個插件,用於「萬能解壓」,只需要這樣就能解壓一個文件:
x aa.zip
最後再說一個web_search,這個插件,讓你可以在命令行中搜索關鍵字。可以看一下web_search的配置文件的內容(在~/.oh-my-zsh/plugins中找到web_search,裡面有它的配置文件):
也就是,可以類似這樣來搜索:
baidu hello
但最終還是打開默認的瀏覽器來顯示搜索內容,這樣的功能,小程更常用的辦法是使用alfred(上面有介紹到)。
至此,omz(基於zsh)腳本程序介紹完畢了。
作為程序員,最不爽的一件事是被親戚叫去修電腦。修電腦不是程序員的基本技能,而打字,卻是程序員的基本技能之一。
寫代碼、寫說明文檔、寫心得記錄等,打字都是必不可少。一個好的鍵盤是硬體上的需求,而一個好的編輯器則是軟體基礎的重要內容。
對於寫程序來說,用什麼編輯器,很多時候是很自然的結果。比如,如果是開發windows桌面軟體的,那自然就選擇微軟的集成開發環境即IDE了,諸如vc、vs之類;再比如xcode、android studio 之類的選擇,都跟開發平台直接相關。之所以選擇這些IDE,是因為它們不僅可以編輯代碼,而且還能編譯與調試程序,甚至可以直接運行程序到目標設備。集成而且靠譜,是IDE應該提供的特質。對於特定平台的大項目的開發,特別是團隊合作時,選擇一個統一而合適的IDE是必要的。
但是,如果是寫說明文檔,寫心得體會或文章編輯,用IDE就不是一個好的選擇,畢竟只用到了編輯的功能,沒有必要去啟動一個龐大的集成開發環境那麼笨拙而且操作緩慢。就算是要編譯調試,也是可以考慮用編輯器加編譯器或調試器的辦法來實現,而不使用IDE。
那麼,有什麼編輯器,是程序員可以選擇的呢?
小程這裡列舉一些:
notepad++ editplus notepad2 ultraedit vim emacs sublime ......
notepad++
你現在使用的是哪個編輯器呢,歡迎留言告訴小程,並說說它的優勢。
以上選擇哪一個都可以,只要用得順手。
當然,如果選擇一個跨平台的,有可能更好,因為換一個平台不必另擇新歡。
小程這裡只介紹sublime跟vim。
sublime是一個容易上手而且能實實在在提高工作效率的工具,值得花時間去掌握,除非你已心有所屬。
原則上,在使用時,不要急著去操作,而是多想一想,是不是可以更省事地操作?是不是有更好用的插件等著我去用?
至於,具體如何使用sublime,搜索一下教程或經驗總結就好,實戰地用。
sublime的使用經驗不在這裡展開,但小程會介紹一個有趣的插件,即plantuml。
有了plantuml,就可以寫代碼來繪圖。
安裝plantuml插件
在菜單tools中找到Command Palette(或者shift+cmd+p),輸入add repository並回車,輸入https://github.com/jvantuyl/sublime_diagram_plugin.git並執行。 再次打開Command Palette(shift+cmd+p),輸入install package,選擇「Package control:install package」,執行完後,輸入diagram,再找到sublime_diagram_plugin並安裝。 重啟sublime,在Preferences -> Packages Setting,如果看到 Diagram,說明已經安裝成功。
在菜單tools中找到Command Palette(或者shift+cmd+p),輸入add repository並回車,輸入https://github.com/jvantuyl/sublime_diagram_plugin.git並執行。
安裝graphviz
plantuml需要繪圖工具庫graphviz的支持,安裝即可:
brew install graphviz
使用puml
新建一個file,開始寫代碼繪圖。按command+m,會顯示一個png圖,比如:
對於簡單的圖,puml是一個很好的選擇,但對於複雜的而且有方向指向的圖,別的工具很可能是更好的選擇。
vi,一個古老而聲名遠播的編輯器。它用鍵盤解決一切問題,可以讓人著迷。
vim的入門是有難度的。同樣,這裡不介紹它的學習,只是演示一下它的使用,你如果有興趣可以再深入了解。
macvim的演示
vim自帶的快捷操作,再加上各種插件的使用,可以讓寫代碼這件事變得很過癮。
在需要充分利用時間碎片的時代,在手機上寫文章或作記錄是經常的事。把電腦與手機的資料(筆記、圖片、電子書等)相互同步很可能是讀者提升能力的過程中需要滿足的需求。這時,需要選擇一個跨設備的同步軟體,比如百度網盤、有道雲筆記,等等。
小程曾經使用手機版的有道雲來寫文章(它支持md語法),然後再同步到mac電腦上。
這類型的工具有很多,小程使用的叫Pomotodo。這個工具可以做到番茄計時,還提供了統計等各種功能,如果能認真執行,相信是可以提高工作效率的。
但小程經常只使用到「記錄」這一個簡單的功能,比如下面示例:
小程推薦的是xmind。
對於作計劃、方案分析、思路整理等等,xmind都是一個很好的選擇。
有時候,甚至可以說,xmind就是你的工作。
具體使用由讀者去探索,小程這裡只給出一個簡單的示例:
mac上的繪圖工具,小程這裡推薦幾個。
首先是http://draw.io,這個工具使用還是很簡單的,而且能滿足很大的需求,還能導成圖片。
然後是OmniGraffle,這個工具畫流程圖等是很專業的。
最後是startuml,從命名就能猜到是專畫uml圖的。
相信你已經習慣用QQ或微信客戶端提供的截圖功能了,但是,如果小程不想啟動QQ或微信的話,那就不能使用它的功能了。其實,QQ有提供獨立的截圖工具,可以單獨下載下來使用,它的名字就叫「Jietu」,可以在這個網址下載:http://jietu.qq.com/。
這個工具的功能已經足以應對讀者日常的截圖與編輯需要,可以說是功能比較強大,這時系統的快捷鍵截圖(比如shift+control+command+4,等等)已經弱爆了。
而且,這個載圖工具,還提供錄屏的功能,而且可以選擇窗口來錄屏(甚至可以支持滾屏錄製),而且還能保存成gif。不足的是,小程在選擇保存成mp4或mov格式時,都會崩潰,小程使用的是2.2.1版本。另外,在錄製前似乎不能設置採集的幀率,不過這個影響不大,不設置似乎更方便。
除了上面介紹的「Jietu」可以錄屏外,小程再推薦一個,叫licecap,可以設置一些屬性後再進行錄製。licecap直接保存為gif。
PicGIF,這個工具對視頻或批量圖片進行處理,最終生成gif。你也可以試下Gifski。
對於某些資源,比如google的一些代碼庫等,需要用到代理才能下載到,所以選擇一個穩定的vpn也是一個基礎要求。
你可以使用chrome的插件sslspeedy,或全局的shadowsockX,如果你不差錢,也可以使用一些大牌子的vpn(當然是收費的),比如expressvpn等。
在mac中,對於excel、word、ppt,小程還是建議使用回微軟的那一套。mac系統是可以安裝word系列的,比如:
至此,如何組建一個高效順心的開發與娛樂環境就介紹完畢了。
如果你覺得還有某些「必須」的工具想跟小程分享的話,歡迎留言,或許也能幫助到其它人。
※蘋果有哪些設計發布前大家覺得丑,發布後大家覺得美?※舍繁入簡致美無邊,聯想AIO 520C實測體驗※Mac 神兵利器(二) 極簡軟體清單※iOS 12 「捷徑」更新官方漢化了,分享一波規則※學習使用mac
TAG:Mac | 效率 |