讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)

何時夕發表於2018-02-19

本文首發於微信公眾號——世界上有意思的事,搬運轉載請註明出處,否則將追究版權責任。微訊號:a1018998632,交流qq群:859640274

用mac已經有了一段時間了,作為一個愛折騰(懶)的程式設計師,我花費了大概一週的時間將自己的mac打造成了一個超高效率的工作工具,先展示一下其中的一個成果。

一鍵退出某些工作app

  • 上面這個圖是一鍵退出某些工作app,然後準備進入windows虛擬機器工作
  • 本來還有一個gif,但是太大了,所以直接放成視訊,有興趣可以看看:一鍵進入工作

一.如何構建你自己的快捷鍵體系(理論,如果不想看,可以跳過這一章直接看下一章實踐)

我們都知道快捷鍵可以使得手不離鍵盤,這樣一來就能減少鍵鼠(觸控板)之間的切換,從而提高效率。但是不同的軟體的快捷鍵不同,不同平臺之間(windows、mac、linux...)的快捷鍵也不同,那麼如何一勞永逸的使用一套快捷鍵通吃所有軟體個平臺呢

1.讓所有平臺遵循一個規範

正如我們前面所說,平臺有好幾個,所以首先我們得確定一個平臺作為基點。我是從windows平臺過渡到mac上面來的,之前的快捷鍵習慣不想改了,所以各種快捷鍵標準向windows看齊。(我想大多數人都是這樣的,所以具有一定的適普性)

2.觀察軟體,找到共性

無論是window還是mac通過觀察各式各樣的軟體,我們都能看見有下面這些操作方面的共性,下面以Mac的軟體為例

  • 1.仔細觀察軟體們的頂部選單我們會發現,檔案(file)、編輯(edit)、顯示(view)、視窗(window)、幫助(help),這些條目是大部分app共有的(當然可能名字不同)除去幫助,我們還有四個條目可以下文章:
    • 1.檔案(file):
      • 1.開啟新標籤頁、開啟檔案、關閉標籤頁、儲存檔案,絕大部分app都有
    • 2.編輯(edit):
      • 1.複製、貼上、剪下、全選、查詢、重做、撤銷、搜尋,絕大部分app共有
      • 2.搜尋上一條、搜尋下一條,少部分app共有
    • 3.顯示(view):由於每個app的介面佈局不一樣,所以我僅僅舉幾個例子。
      • 1.Safari的:顯示/隱藏書籤邊欄、顯示/隱藏閱讀邊欄
      • 2.Android Studio、CLion、IDEA:顯示/隱藏各種邊上的工具欄
      • 3.Evernote:顯示/隱藏側邊欄
    • 4.視窗:
      • 1.上一個標籤頁、下一個標籤頁、合併所有視窗,大部分app共有
  • 2.聯想我們每天需要對app進行的操作:
    • 1.螢幕分塊:整個螢幕、左半邊、右半邊、左上四分之一、右上四分之一、左下四分之一、右下四分之一
    • 2.最小化、全屏
    • 3.關閉軟體
    • 4.偏好設定
    • 5.前進、後退

3.使用軟體,找到個性

前面是找共性,找完了之後。我們在日常使用軟體的時候會發現,某個軟體的某些功能我們幾乎沒隔多久就會用一次,此時需要將這些特殊的功能提取出來,還是以Mac為例

  • 1.Finder:我們會發現某些目錄經常會用到,下載、桌面、使用者目錄、應用程式、檔案...
  • 2.Safari:各種書籤
  • 3.個人工作的軟體:Android Studio、Photo Shop、IDEA、Sublime、VS Code...的各種專案

4.全域性快捷鍵

對於某些操作是屬於某個app的但是我們需要在所有app中都使用這個功能,此時就要用到全域性快捷鍵

  • 1.開啟常用軟體:例如Safari、Finder、Chrome等等,我們常常會互相切換,此時定義一個順手的快捷鍵尤為重要
  • 2.某個app的全域性功能:翻譯、記筆記、發郵件等等

5.快捷鍵的型別歸類

我們知道無論是windows還是mac,都有shift、alt(option)、ctrl、win(command),這四個功能鍵。我就按照我的考慮將這些快捷鍵歸個類,因為我的快捷鍵是依從windows來的,所以以windows為例

  • 1.shift+字母:輸出大寫,地球人都知道
  • 2.ctrl+字母:編輯相關的快捷鍵,如檔案的增刪、開啟、儲存,文字的全選、剪下、查詢等等
  • 3.alt(option)+字母:控制相關的快捷鍵,如軟體視窗的增加、關閉,標籤頁的上一個、下一個等等
  • 4.win(command)+字母:在mac中其實command鍵的功能就是windows的alt的功能,所以重複了,可以廢物利用成一個後面說的組合鍵
  • 5.組合鍵+字母:有兩種用法,用於全域性按鍵
    • 1.直接組合:這種組合方式很多,但是每次按起來比較麻煩
    • 2.使用工具將一個廢棄的鍵(例如前面說的command鍵,或者fn鍵)代替組合鍵,即按這一個鍵,等於按多個鍵。

二.如何構建你自己的快捷鍵體系(實踐)

1.接下來的實踐是基於以下幾條規則:

  • 1.基於MacBook Pro 2017的內建鍵盤
  • 2.大部分快捷鍵基於windows的習慣
  • 3.小部分快捷鍵基於自身習慣

2.兩個軟體的介紹

  • 1.Karabiner-elements:
    Karabiner-elements配置
    • 1.功能:可以將鍵盤上的任意兩個鍵進行功能調換
    • 2.我的使用:用於將Mac的內建鍵盤的fn與左control互換,左option與左command互換,右command和右option換成了home和end.
    • 3.Karabiner-elements下載地址
  • 2.Keyboard Maestro:
    • 1.功能:可以通過定義一個快捷鍵,實現一系列固定的操作
    • 2.我的使用:接下來會按照上一章說的各個操作進行快捷鍵的設定
      • 1.複製、貼上、剪下、全選、查詢、重做、撤銷、搜尋、儲存檔案、開啟檔案,以上的操作都遵循windows,都是ctrl+字母。但是我們知道在mac下這些快捷鍵是command+字母,所以需要進行轉換:
        • 1.新增一個新指令碼:
          新建指令碼
        • 2.命名指令碼,為指令碼新增一個觸發器(即當進行這個操作的時候,會執行這個指令碼),我這裡使用的是按鍵觸發器,即當按下某些鍵的時候就觸發這個指令碼
          命名並新增觸發器
        • 3.將ctrl+c填入觸發器中,然後點選新增動作,會彈出動作的列表,可以在上面查詢我們需要的動作:
          新增動作
        • 4.我們新增了一個觸發按鍵的動作,並填入了command+c。此時這個指令碼就表示,當我們按下了ctrl+c的時候會觸發command+c按下的動作:
          新增快捷鍵的動作
        • 5.這樣一來我們可以將上面的全部動作動轉換成以windows平臺為標準的快捷鍵,流程都是一樣的。
      • 2.開啟新標籤頁、關閉標籤頁、上一個標籤頁、下一個標籤頁、前進、後退,很多app都會有標籤頁這一概念,例如safari、finder、sublime、Evernote、IDEA等等各種IDE,這些快捷鍵的定義可以根據個人愛好,或者Windows,或者Mac的標準。我經過實踐發現使用alt(按鍵轉換前的command)+方向鍵等,最為適手:
        • 1.上一個/下一個標籤頁:alt+左方向鍵/右方向鍵,
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 2.前進/後退:ctrl+alt+左方向鍵/右方向鍵,
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 3.開啟/關閉標籤頁:alt+加號/刪除鍵,
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 4.至於指令碼的定義,和上一節中一致
      • 3.開啟邊欄/工具欄之類的操作可以定義成alt+數字,這樣的好處是如果工具欄增多了,可以進行擴充,也方便記憶
      • 4.整個螢幕、左半邊、右半邊、左上四分之一、右上四分之一、左下四分之一、右下四分之一、最小化、全屏,像這些功能類似的操作,我們可以製作成一個指令碼集合,通過一個快捷鍵+字母就實現全部的功能:
        • 1.新增一個Group
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 2.在集合中新增第一個指令碼,新增按鍵觸發器,新增重置app視窗大小動作:
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 3.點選上一步新增的動作中的resize by選單,我們會發現選單中有許多功能,足夠滿足我們的需求,我們可以選擇Full Screen
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 4.此時一個具有將app視窗占滿整個螢幕的功能就誕生了:
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 5.此時只有一個功能,我們可以接著按照類似的操作定義其他功能。有一點要注意的是,這個group下的全部指令碼的按鍵觸發器需要設定成同一個快捷鍵,如圖所示
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 6.當我們完成了上面的操作的時候,我們可以試著觸發快捷鍵,會發現全部的指令碼都顯示在一個選單中,而我們只需要通過按一個字母選擇一個指令碼觸發就行了:
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
      • 5.開啟常用軟體、開啟不常用軟體、關閉當前軟體,這些就簡單說說,因為也就是一個動作就能搞定的功能
        • 1.開啟常用軟體:
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 2.開啟不常用軟體:可以使用指令碼集合來減少快捷鍵的數量
        • 3.關閉當前軟體:
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
      • 6.在Finder中快捷開啟某個資料夾,這個功能比較複雜。我們前面都是在一個指令碼中只使用一個動作,在這裡我們可以按順序執行一系列動作以完成這個複雜的功能:
        讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 1.先將Finder調為當前應用
        • 2.使用一個計時器,停止執行指令碼直至Finder已經是當前應用
        • 3.觸發快捷鍵ctrl+G,大家開啟Finder可以看見有這樣一個功能前往資料夾...,這裡就是觸發這個功能:
          讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
        • 4.再觸發一個delete鍵,將當前的路徑刪除
        • 5.在**前往資料夾...**視窗中填入目標路徑
        • 6.觸發return,這樣一來就到了目標資料夾
        • 7.當然如果資料夾多了的話,可以使用指令碼集合,同理更多的功能都可以像這樣由一個個的小功能疊加起來
    • 3.KeyBoard Maestro下載地址

三.為快捷鍵體系新增更多功能

如果說我對Keyboard Maestro有不滿意的地方,那麼就是圖形介面太少。對於如何製作搜尋的功能我根本無從下手。這個時候Alfred拯救了我,我想很多人都用過這個軟體,相關的介紹也很多了,所以接下來我只說別人沒說過的

1.我的外掛

當然我搜集了很多外掛,其中有些經過了我自己的改造,現在放出來給大家使用。

  • 1.Things:可以和things結合快速定義日程
  • 2.NetWork:可以檢視wifi列表並連線wifi
  • 3.ItermFinder:可以在Finder和Iterm之間互相開啟路徑
  • 4.Top:檢視前幾名記憶體的應用
  • 5.Restart:重新啟動應用
  • 6.Kill:直接將應用殺死
  • 7.Fakenum:獲取測試資料
  • 8.Ip:獲取當前電腦的ip
  • 9.HiddenFile:顯示或者隱藏 隱藏檔案
  • 10.EverNote:直接填寫筆記,或者查詢筆記
  • 11.Douban:在Douban上查詢電影、音樂、書籍評分
  • 12.Dash:在Dash中查詢
  • 13.Copy Url:拷貝當前網頁的url
  • 14.BiliBili:在b站查詢
  • 15.Baidu:在百度中查詢,會提前顯示條目
  • 16.AboutMac:檢視mac的資訊
  • 17.知乎:在知乎中查詢,會提前顯示條目
  • 18.有道翻譯:查詢翻譯單詞意思,還可以說出英文
  • 19.ADB:做android的會知道,進行ADB的操作

2.將Alfred與Keyboard Maestro相互整合

這裡我預設大家對Alfred已經有了一定的瞭解,如果真的不瞭解的話可以看看這個教程。少數派的Alfred教程

  • 1.Alfred的劣勢:相較Keyboard Maestro的眾多動作,Alfred的動作比較少。就例如一個簡單的模擬按鍵按下都需要AppleScript來實現,更別說更復雜的動作。
  • 2.Keyboard Maestro的劣勢:
    • 1.前面已經提到了一個,KM沒有方便的搜尋介面。
    • 2.Alfred可以更方便的執行pyhotn、php等指令碼語言的指令碼
  • 3.Alfred和Keyboard Maestro的互相呼叫:只要能夠互相呼叫就可以方便的將兩個軟體進行結合
    • 1.Alfred調KM:其實我們知道KM目前絕大部分的入口是快捷鍵,所以我們可以在Alfred中使用一個模板AppleScript來觸發快捷鍵從而呼叫KM:
      • 1.建立一個Alfred的Workflows,填寫一個keyword觸發器:
        讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
      • 2.建立一個指令碼執行器:
        讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
      • 3.填寫執行程式碼,很簡單1、3行是預設的不用修改,第2行前面的osascript是預設的,後面的是AppleScript的路徑:
        讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
      • 4.構造模板AppleScript也很簡單,1、3行不需要改變,第二行的數字代表字母,大括號內可以填寫四個功能鍵。所以這一個指令碼的意思就是,按下alt(option)+37表示的字母。點選檢視陣列代表的字母
        讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
      • 5.至此我們就能很方便的在Alfred中呼叫KM
    • 2.KM呼叫Alfred:這個就簡單了,因為Alfred的是快捷鍵和搜尋視窗,所以可以通過之前的教程很方便的構建指令碼來呼叫Alfred

3.Alfred下載

Alfred下載地址

四.其他軟體以及Tips

  • 1.PopClip:
    • 1.使用:可以通過KM將其整合到快捷鍵體系中
      讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
    • 2.功能:可以對選中的文字進行各種操作
      讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
    • 3.外掛下載
    • 4.軟體下載
  • 2.Evernote:
    • 1.使用:可以通過KM將快速筆記的功能整合進入快捷鍵體系中:
      讓你的Mac成為超高效率的工作工具(Keyboard Maestro 和 Alfred的整合)
    • 2.功能:
      • 1.迅速記錄文字,而不需要對應用進行切換
      • 2.通過前面的Alfred外掛聯動,可以方便的查詢筆記
  • 3.Dash:
    • 1.程式設計師的寶典,通過前面Alfred外掛的聯動,方便查詢Api
    • 2.軟體下載
  • 4.AirMail:
    • 1.比原生郵件更方便的郵件客戶端,可以方便的整合進入快捷鍵體系
    • 2.軟體下載
  • 5.MindNode:
    • 1.簡約方便的思維導圖應用,可以通過PopClip的外掛md2mm,直接將md的文章轉化為思維導圖
    • 2.軟體下載
  • 6.Parallels Desktop:
    • 1.Mac下面最好的虛擬機器,可以通過KM定義指令碼的方式,在Mac和Windows之間切換
    • 2.[軟體下載](www.sdifen.com/pd132.html

不販賣焦慮,也不標題黨。分享一些這個世界上有意思的事情。題材包括且不限於:科幻、科學、科技、網際網路、程式設計師、計算機程式設計。下面是我的微信公眾號:世界上有意思的事,乾貨多多等你來看。

世界上有意思的事

相關文章