h4ck1nH4ck1n  2022-04-10 13:45 字节时代 隐藏边栏 |   抢沙发  544 
文章评分 1 次,平均分 5.0

应用介绍

iRightMenu Pro 是 macOS 上一款灵活、强大的右键菜单工具,不仅内置了各种常用的工具,还能够让用户自定义右键菜单,使用 Shell 脚本实现菜单功能,充分发挥脚本的长处和灵活性,帮你塑造自己的专属右键。

iRightMenu Pro 运行在苹果的 Sandbox 机制之外,突破了苹果的沙盒限制,虽然无法和 iRightMenu 一样上架 App Store,但是获得了比上架 App Store 的应用更灵活和强大的能力。

iRightMenu Pro 不仅能满足普通用户的使用需求,更适合有技术基础的专业人士。

更新历史

iRightMenu Pro 更新历史-BG
iRightMenu Pro 更新历史

iRightMenu Pro 更新历史

Version 1.4.7 (33) Nov 04, 2023 at 17:26 12.2 MB 增加复制路径时允许复制当前所在文件夹路径的功能 修复无法使用ROOT权限执行操作的问题(重要...

安装方式

下载 .dmg 文件后,直接双击打开,根据提示进行安装。

使用方法

启用拓展

要想右键功能生效,首先必须启用右键拓展:

进入系统偏好设置 -> 拓展 -> Finder 拓展 -> 启用 iRightMenu Pro 拓展。

安装辅助程序

应用会要求安装辅助工具,请输入电脑的开机密码进行安装:

试用和激活

首次打开应用,会弹出激活窗口,可以选择试用 7 天或输入已经拥有的激活码。

没有激活码?可以在自助商店购买。

iRightMenu Pro - mac 上强大的右键菜单工具,支持脚本-BG
iRightMenu Pro - mac 上强大的右键菜单工具,支持脚本

iRightMenu Pro - mac 上强大的右键菜单工具,支持脚本[出售]

本商品为 iRightMenu Pro 个人许可证,购买后可获得激活码,用于 iRightMenu Pro 激活。 iRightMenu Pro 支持7天免费试用,可以先试用,满意再购买。 ...

自定义脚本

支持添加自定义脚本作为右键菜单是iRightMenu Pro的核心功能之一,本文将详细说明如何使用iRightMenu Pro自定义脚本功能来拓展功能,满足自己的需求。

添加脚本

1.4.0(25)版本之前

要想使用自定义脚本作为菜单,需要进入自定义脚本界面,点击左下角的+号,在弹出的脚本添加界面添加自己的脚本实现,在脚本中使用变量${TARGET_PATH}表示右键选中的文件或者目录路径。

比如,在右键增加一个执行Shell脚本的菜单,只针对后缀为sh的文件显示,脚本代码如下:

# 为选中的文件添加可执行权限,加引号是为了解决路径含有空格的问题
# 从 v1.3.0(19) 开始,变量 $TARGET_PATH 需要替换成 $1
chmod +x "$1"
# 执行选中的文件
sh "$1"

v1.3.0(19)版本开始,脚本增强了对同时选中多个文件的支持,为了兼容旧版本,需要将旧版本的变量$TARGET_PATH替换成$1

如果需要在脚本内同时处理多个文件(包括文件和目录),可以参考下面的示例:

# Iterate over all selected files or folders example
for i in "$@"; do
    if [ -d "$i" ]; then
        echo "$i is a directory"
    elif [ -f "$i" ]; then
        echo "$i is a file"
    else
        echo "$i is not file or directory"
    fi
done

sh后缀的文件上执行右键,如图:

v1.4.0(25)之后

v1.4.0(25)版本开始,脚本系统支持使用任意脚本语言编写功能,并且支持将脚本添加到状态栏菜单中使用。

打开iRightMenu Pro,进入自定义菜单页面,然后点击左下方+号按钮

进入脚本编辑页,可以看到以下几个主要设置项

  • 名称:显示在菜单上的文字,即菜单名称
  • 描述:菜单上不会显示,用于说明当前脚本的功能、用途等
  • Shell:脚本解释器路径,使用什么语言编写脚本,就要使用对应的解释器来执行。可以下拉选择或者直接手动填写自定义的路径
  • 脚本:就是功能实现的代码,没什么好说
  • 启用条件:指定当前脚本菜单应该在什么情况下才会在右键菜单上面显示,可以选择通用可执行文件指定扩展名正则表达式,只有在指定的文件或路径满足启用条件,右键菜单才会显示当前脚本
  • 执行用户:指定执行脚本时的用户权限,当有些目录或文件普通用户无权限访问时,可以指定使用root权限进行操作
  • 显示脚本输出:脚本执行成功后,显示脚本执行的输出,可以方便的复制脚本执行结果

其中,脚本输入框内是默认的shell脚本,仅仅是作为一个示例,功能是遍历所有传入的路径参数,分别找到文件或目录,然后输出结果。

一般情况下,我们编写脚本是为了操作选择的文件或者目录,在点击右键菜单时,iRightMenu Pro会将当前Finder中选中的所有文件或者目录以脚本参数的形式传递到对应的脚本中,所以这里只需要遍历"$@"并根据自己的需求处理文件或目录即可。

需要注意的是脚本中的$@必须使用引号包裹,否则无法正确的解析多个参数。

变量使用引号包裹的情况在shell脚本中很常见,当文件路径中包含空格时,如果没有使用引号包裹,将会提示找不到指定文件。

你也可以直接使用"$1""$2"来直接获取指定索引的传入参数,搜索和学习shell脚本的语法后可以尝试编写更多实用的功能。

iRightMenu Pro的脚本系统非常强大,不仅仅支持shell脚本,你可以使用pythonperlnodephp等其他脚本语言实现自己的功能,只需要你在脚本解释器输入框内填好目标脚本解释器路径,就能够使用对应的脚本语言来编写。

不同的脚本语言有自己的语法和特点,但总的来说编写思路就是通过解析传入脚本的参数,然后针对目录或文件进行不同的处理,最终实现自己的需求。

需要注意的是,iRightMenu Pro没有集成脚本解释器,如果需要使用某个语言来实现功能,应该确保电脑上已经安装了对应的脚本解释器,并在Shell:输入框中正确填写解释器的完整路径。

举个例子,我想要使用python语言来实现我的右键菜单功能。

首先需要填写名称和描述信息,然后在Shell输入框中填入系统中已经安装的python解释器完整路径,如:/usr/local/bin/python,然后在脚本输入框中使用python实现自己的功能。

# coding=utf-8
import sys
import os
if __name__ == '__main__':
    for i in range(1,len(sys.argv)):
    if os.path.isdir(sys.argv[i]):
        print("%s is a directory" % sys.argv[i])
    elif os.path.isfile(sys.argv[i]):
        print("%s is a normal file" % sys.argv[i])
    else:
        print("%s is a special file" % sys.argv[i])

上面的脚本功能是遍历输入脚本的参数(即所有选择的文件或目录路径),然后判断他们的文件类型并输出结果。

脚本编写完成后,保存,然后在Finder选一些文件和目录,右键即可在自定义脚本菜单中找到刚刚添加的脚本菜单。

删除脚本

打开iRightMenu Pro,进入自定义菜单页面,然后点击左下方-号按钮即可删除脚本。

导出脚本

有时候需要将自己的脚本分享给其他人,就可以使用脚本导出功能。

打开iRightMenu Pro,进入自定义菜单页面,选择你要导出分享的脚本,然后点击左下方导出按钮,选择导出文件的保存路径,即可导出脚本。

将导出的文件*.rtmenu发给朋友,对方将其导入自己的iRightMenu Pro中即可使用。

需要注意的是,对方需要手动安装脚本需要的解释器,目前导出文件里只有脚本相关的数据,不包含需要的脚本解释器环境。

状态栏菜单

iRightMenu Pro v1.4.0(25) 以后,支持将自定义脚本添加到状态栏菜单中。

要将脚本添加到状态栏并使用,需要满足下面的条件:

  • 在自定义脚本中将对应脚本的状态栏选项勾选
  • 脚本不依赖传入的文件或目录就能正常工作
  • 偏好设置启用状态栏菜单选项

举个例子,下面是隐藏桌面的脚本:

defaults write com.apple.finder CreateDesktop -bool false
killall Finder

这个脚本不需要传入选择的文件或目录就能正常运行,将他的状态栏选项勾上,然后在偏好设置里启用状态栏菜单

完成后,即可看到状态栏显示iRightMenu Pro的菜单,左键点击就能看到对应的菜单项。

常见问题

安装后右键功能不出来

  1. 打开“系统偏好设置”->“扩展”->“访达扩展”,检查 iRightMenu Pro 扩展是否已经勾选,如果没有,请勾上。
  2. 执行完上述步骤后,重启访达再次尝试,如果还是不能解决,请重启电脑。

右键菜单不显示自定义脚本

  1. 检查自定义脚本菜单开关是否已经启用,如果没有启用,请先启用。
  2. 在自定义脚本标签中检查是否添加了脚本,如果没有,先添加一个。
  3. 检查脚本是否设置允许在目录或者文件上使用,如果设置了只允许在文件上使用,再检查是否设置了指定的文件后缀。比如,设置后缀为sh,则表示该脚本只会在以sh后缀结尾的文件上右键时才会出现。

脚本内使用某些命令失败

在应用内执行脚本的环境中PATH值为/usr/bin:/bin:/usr/sbin:/sbin,不包含当前登录用户自定义的搜索路径。在编写脚本时需要注意可执行程序是否在以上搜索路径中,如果不在,需要使用完整路径。

v1.2.4(17)版本开始,可以在偏好设置中自定义PATH的值,自定义的PATH值将会覆盖默认值。

v1.3.0(19)版本开始,默认的PATH值调整为/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin,自定义的PATH值将被添加到默认路径的后面。

怎么开发调试自定义的脚本

几种思路:

  • 在可以调试的IDE中编写并调试自己的脚本,然后再将编写好的脚本内容填到自定义脚本输入框中。
  • 在脚本关键位置输出日志到某个文件中,然后查看文件排查问题。
  • 在脚本内使用syslog -s -l alert "日志内容"将日志输出到系统日志,然后使用控制台.app查看。
  • v1.2.5(18)版本开始,在偏好设置中将日志等级设置为DEBUG,右键执行完脚本后即可在日志文件中看到脚本执行后的回显数据。

怎么迁移应用数据

为了方便用户在各个设备上迁移iRightMenu Pro的应用数据,从v1.2.3(16)版本开始,可以在偏好设置中使用iCloud对数据进行备份还原。

如果发现iCloud备份还原按钮是灰色的,请确认当前系统已经登录Apple ID并开启了iCloud功能。

如何切换多国语言

iRightMenu Pro目前只支持简体中文和英文两种语言,程序的语言跟随系统。如果需要切换语言,可以改变系统语言设置,打开系统偏好设置->时间与日期->打开语言与地区,将首选语言设置成想要的语言即可。应用不支持的语言默认会以英文显示。

切换语言后,右键菜单的文字语言可能不会改变,此时需要重启Finder。

Finder 侧边栏图标异常

由于苹果系统自身的bug,在外接磁盘上启用右键菜单,会导致外借磁盘的图标显示异常。

v1.2.3(16)版本以后,在偏好设置中将在外接磁盘上启用的选项取消勾选,然后重启Finder即可解决。

桌面或文稿目录不显示右键菜单

这个问题,一般是升级macOS到14系统以后出现,只需要在iCloud设置中关闭同步桌面和文稿文件夹即可解决。

macOS 15 无法启用访达插件

15系统已经没有启用插件的入口了,要启用插件,可以按照下面的方法手动启用:

  1. 查找插件的UUID

打开终端,执行下面的命令:

pluginkit -m CFBundleIdentifier=net.ymlab.iRightMenu.pro.FinderSync -vv

输出大致如下:

+    net.ymlab.iRightMenu.pro.FinderSync(1.4.7)
                Path = /Applications/iRightMenu Pro.app/Contents/PlugIns/iRightMenu Plugin.appex
                UUID = 9F7151B5-E77C-49A1-91FD-5BAC3704E85D
           Timestamp = 2023-11-04 09:17:07 +0000
                 SDK = com.apple.FinderSync
       Parent Bundle = /Applications/iRightMenu Pro.app
        Display Name = iRightMenu Pro
          Short Name = iRightMenu Pro
         Parent Name = iRightMenu Pro
            Platform = macOS

 (1 plug-in)

得到 UUID = 9F7151B5-E77C-49A1-91FD-5BAC3704E85D

  1. 启用插件

在终端输入下面的命令来启用插件:

pluginkit -e "use" -u "9F7151B5-E77C-49A1-91FD-5BAC3704E85D"

-u 后面的参数是刚刚获取到的插件的 UUID

  1. 禁用插件

如需禁用插件,可在终端输入下面的命令:

pluginkit -e "ignore " -u "9F7151B5-E77C-49A1-91FD-5BAC3704E85D"

macOS 15 打开应用一直出现访问其他应用数据的授权

打开系统设置,找到隐私与安全性->完全磁盘访问权限,将iRightMenu Pro添加进去并启用即可。

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

h4ck1n
H4ck1n 关注:0    粉丝:0 最后编辑于:2024-09-27
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到

扫一扫二维码分享