2011-03-01 92 views
1

在Finder中,使用鼠标右键单击菜单中的“打开方式”,我想使用命令xterm -e vim打开文本文件。如何将命令操作添加到OS X上的'打开...'

谁能告诉我该怎么做?

+0

什么是“正确的菜单”?你确定你不想把它添加到错误的菜单吗? – 2011-03-01 09:34:13

+0

抱歉,它是'鼠标右键菜单','打开...' – toughtalker 2011-03-02 00:58:28

回答

3

创建一个新的Cocoa应用程序项目。

  • 将此代码添加到您的应用程序委托.m文件:

- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename { 

    [NSTask launchedTaskWithLaunchPath:@"/usr/X11/bin/xterm" arguments:[NSArray arrayWithObjects:@"-e", @"/usr/bin/vim", filename, nil]]; 
    exit(0); 

    return YES; 
} 
  • 通过将密钥LSBackgroundOnly到您的plist文件配置您的应用程序作为后台唯一的应用程序,并将其值设置为YES:

    <key>LSBackgroundOnly</key> 
    <true/> 
    
  • 注册为能够打开文本文件通过添加到您的plist:

    <key>CFBundleDocumentTypes</key> 
    <array> 
        <dict> 
         <key>CFBundleTypeName</key> 
         <string>Plain text document</string> 
         <key>CFBundleTypeExtensions</key> 
         <array> 
          <string>text</string> 
          <string>txt</string> 
          <string>utf8</string> 
         </array> 
         <key>CFBundleTypeIconFile</key> 
         <string>TEXT</string> 
         <key>CFBundleTypeMIMETypes</key> 
         <array> 
          <string>text/plain</string> 
         </array> 
         <key>CFBundleTypeOSTypes</key> 
         <array> 
          <string>TEXT</string> 
          <string>sEXT</string> 
          <string>ttro</string> 
         </array> 
        </dict> 
    

  • 打开MainMenu.xib,取消选中窗口中的“启动时可见”选项。

你完成了。建立。您可能需要使用Finder将其打开一次,以使Launch Services知道它。

然后,在Finder中,你可以在一个文本文件,单击鼠标右键,然后在“打开方式”菜单中,选择您的应用程序,像截图:

enter image description here

+0

XTerm?老套。我会使用一个Terminal.app .term文件。 http://macdevcenter.com/pub/a/mac/2002/03/26/terminal_four.html?page=3 – 2011-03-02 11:49:30

+0

如果我可以点击Upvote 100次,那么我会这样做。谢谢 – Mrug 2014-11-05 07:35:27

相关问题