我是一名開發人員,經常處理不尋常的文件類型。如果要在TextEdit中打開這些文件之一,則必須先啟動它,然後再使用它打開文件,或者將文件拖到TextEdit圖標上。
是否可以永久地放置無論我要查看哪種文件類型,都將TextEdit.app放入“使用...打開”菜單列表中。
如果TextEdit不是您的理想選擇,那麼此過程對於您選擇的任何文本編輯器當然都會有用。
我是一名開發人員,經常處理不尋常的文件類型。如果要在TextEdit中打開這些文件之一,則必須先啟動它,然後再使用它打開文件,或者將文件拖到TextEdit圖標上。
是否可以永久地放置無論我要查看哪種文件類型,都將TextEdit.app放入“使用...打開”菜單列表中。
如果TextEdit不是您的理想選擇,那麼此過程對於您選擇的任何文本編輯器當然都會有用。
對所有文件類型執行此操作的唯一方法是在automator中創建服務,這實際上會使您更輕鬆。
刪除默認腳本並替換為以下內容:
if [-f“ $ 1”];然後打開-a“ TextEdit”“ $ 1”; fi
將其保存為您希望在上下文菜單中顯示的文件,例如完成“使用TextEdit打開”後,您現在可以選擇使用文本編輯打開任何文件。
它將不會在“打開方式”菜單中顯示,它將是上下文菜單中與您正在運行的任何其他服務組合在一起的單獨項目。
在旁注中,如果在Mac上進行開發時,您應該真正考慮使用更好的文本編輯器(例如TextMate或TextWrangler或Sublime Text),其中一些甚至可以為您添加服務,從而省去了上述所有工作。
您可以通過編輯Info.plist添加受支持的文件類型,但是我不知道對所有文件類型都可以這樣做。將諸如public.data或public.item之類的UTI添加到Info.plist或com.apple.LaunchServices.plist似乎無效。
我使用 duti TextMate用於不同純文本類型的默認應用程序:
#無擴展名的純文本文件com.macromates.TextMate.preview public.plain-text all#可執行腳本com.macromates.TextMate.preview public。 Unix可執行allcom.macromates.TextMate.preview .as allcom.macromates.TextMate.preview .ass allcom.macromates.TextMate.preview .bash allcom.macromates.TextMate.preview .bom allcom.macromates.TextMate.preview .c allcom。 macromates.TextMate.preview .cfm allcom.macromates.TextMate.preview .cfml allcom.macromates.TextMate.preview .class allcom.macromates.TextMate.preview .coffee allcom.macromates.TextMate.preview .conf allcom.macromates.TextMate.preview .cpp allcom.macromates.TextMate.preview .css allcom.macromates.TextMate.preview .csv allcom.macromates.TextMate.preview .ctp allcom.macromates.TextMate.preview .dat allcom.macromates.TextMate.preview .data allcom.macromates.TextMate.preview .doc allcom.macromates.TextMate.preview .erb allcom.macromates.TextMate.preview .fields allcom.macromates.TextMate.preview .gemspec allcom.macromate .TextMate.preview .h allcom.macromates.TextMate.preview .haml allcom.macromates.TextMate.preview .hotkey allcom.macromates.TextMate.preview .hpp allcom.macromates.TextMate.preview .idx allcom.macromates.TextMate.preview。 java allcom.macromates.TextMate.preview .js allcom.macromates.TextMate.preview .json allcom.macromates.TextMate.preview .keylayout allcom.macromates.TextMate.preview .kmlibrary allcom.macromates.TextMate.preview .less allcom.macromates。全部TextMate.preview .log allcom.macromates.TextMate.preview .mallcom.macromates.TextMate.preview .manifest allcom.macromates.TextMate.preview .md全部
com.macromates.TextMate.preview .mm allcom.macromates.TextMate.preview .msass allcom.macromates.TextMate.preview .opml allcom.macromates.TextMate.preview .pg allcom.macromates.TextMate.preview .php allcom.macromates.TextMate .preview .pl allcom.macromates.TextMate.preview .plist allcom.macromates.TextMate.preview .plist allcom.macromates.TextMate.preview .py allcom.macromates.TextMate.preview .rb allcom.macromates.TextMate.preview .rd allcom .macromates.TextMate.preview .rdoc allcom.macromates.TextMate.preview .readme allcom.macromates.TextMate.preview .rhtml allcom.macromates.TextMate.preview .rst allcom.macromates.TextMate.preview .sb allcom.macromates.TextMate。預覽.scss allcom.macromates.TextMate.preview .sh allcom.macromates.TextMate.preview .srt allcom.macromates.TextMate.preview .strings allcom.macromates.TextMate.preview .sub allcom.macromates.TextMate.preview .tex allcom。 macromates.TextMate.preview .tsv allcom.macromates.TextMate.preview .utf allcom.macromates.TextMate.previe w .xml allcom.macromates.TextMate.preview .yaml all
duti不僅僅支持添加應用程序以通過菜單打開而不將其設置為默認值。
這裡是@JamiePatt的接受的答案的改編,使用的是user48595的改進,此外,它將使TextEdit成為默認應用程序,以便在實際打開文件之前將其打開。這意味著將來可以以常規方式打開文件。
通過運行 xattr -p com.apple.LaunchServices.OpenWith <file>
來驗證十六進制代碼,其中“文件”是您已手動設置為使用TextEdit打開的文件。
打開Automator並為您的文檔選擇類型“服務”。
在下拉菜單“服務已選擇”下,選擇“文件或文件夾”。
添加步驟“實用程序->設置變量值”。您應該看到一個名為“ Storage”的變量。
添加步驟“實用程序->運行Shell腳本”。在下拉菜單“通過輸入”下,選擇“作為參數”。將文本字段的內容替換為下面的內容,並確保十六進制代碼與第一步中獲得的內容相同。
if [-f“ $ 1”];然後
xattr -wx com.apple.LaunchServices.OpenWith“ 62 70 6C 69 73 74 30 30 D3 01 02 03 04 05 06 57 76 65 72 73 69 6F 6E 54 70 61 74 68 5F 10 10 62 75 6E 64 6C 65 69 64 65 6E 74 69 66 69 65 72 10 00 5F 10 1A 2F 41 70 70 6C 69 63 61 74 69 6F 6E 73 2F 54 65 78 74 45 64 69 74 2E 61 70 70 5F 10 12 63 6F 6D 2E 61 70 70 6C 65 2E 54 65 78 74 45 64 69 74 08 0F 17 1C 2F 31 4E 00 00 00 00 00 00 01 01 00 00 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63 63“ “ $ 1”;
xattr -d com.apple.quarantine“ $ 1” ||真正;
科幻
添加步驟“實用程序->獲取變量值”。您應該看到一個名為“ Storage”的變量。
添加步驟“文件&文件夾->打開Finder項”。在“打開方式”下拉菜單下,選擇“文本編輯”。
使用令人難忘的名稱保存,例如TextEditify。
第一次要打開非TextEdit文檔時,必須從右鍵菜單中選擇TextEditify。隨後的打開可以按正常方式進行。
腳本說明:
第一個 xattr
命令添加通常在您手動選擇“總是打開時”時保存的屬性。
第二個 xattr
命令確保該功能適用於從Internet下載的文件。
您可以按照Impactjamie的描述創建“服務”菜單工作流。但是,您可以僅使用“打開查找程序項”選項並將TextEdit添加為應用程序。
在此處上有一篇很好的文章,其中詳細介紹瞭如何創建工作流程。
打開Automator應用程序
單擊新文檔
選擇服務
將服務接收到的選定內容
更改為“文件或文件夾”
搜索 Action
“打開查找程序項”並將其拖到工作流空間中
將打開方式:
更改為“ TextEdit”或您想要的任何應用程序(我更喜歡“ Visual Studio Code”)
以合理的方式保存服務,例如,如果選擇TextEdit,則使用“使用TextEdit打開”。
您現在可以右鍵單擊任何Finder項,然後選擇服務
-> 使用TextEdit打開
!
感謝user48595並在他的答案中發布了鏈接: http://www.mactricksandtips.com/2013/05/add-open-with-textedit-or-any-other-app-to-right-click-menu-item.html sub>
只需使用選項“ -e”通過TextEdit打開:打開-e yourfile。無論如何,它將在TextEdit中打開。