我说的是这样的事情:
%B
%f
%F
%d
%D
- 等等
它们是什么意思以及它们是如何使用的?我正在寻找指向教程的链接,或者有人可以在此处为我发布综合列表。
目标是将上下文菜单添加到 Pcmanfm/Lubuntu(假设它是可能的)。如果不能使用 Pcmanfm,我会尝试使用另一个文件管理器。
我简单地尝试了 Thunar,它的操作工具上有一个参数列表,但列表不完整,我不了解某些代码的用法(我确实阅读了教程)。这些信息假设的知识水平比我的要高一点。(虽然我在 Windows 中大量使用上下文菜单,但我通常只使用一个%
-type 参数——%s
如果我没记错的话。)所以我正在寻找一个主列表和一个全面的教程来解释 Linux/Ubuntu 中参数的用法。
谢谢。
这些字符串的最小列表在Desktop Entry 规范
Exec
的关键字部分中定义。未弃用的:%f
单个文件名,即使选择了多个文件。如果一个应用程序不能处理多个文件参数,系统必须识别这一点,如果是这样,它可能需要为每个选定的文件创建和执行应用程序的多个副本。如果文件不在本地文件系统上(即在 HTTP 或 FTP 位置),文件将被复制到本地文件系统,%f 将被扩展以指向临时文件。用于不理解 URL 语法的程序。%F
文件列表。用于可以一次打开多个本地文件的应用程序。每个文件都作为单独的参数传递给可执行程序。%u
单个 URL。本地文件可以作为 file: URL 或作为文件路径传递。%U
URL 列表。每个 URL 作为单独的参数传递给可执行程序。本地文件可以作为 file: URL 或作为文件路径传递。%i
桌面条目的 Icon 键扩展为两个参数,第一个是 --icon,然后是 Icon 键的值。如果 Icon 键为空或缺失,则不应扩展为任何参数。%c
在桌面条目中相应的名称键中列出的应用程序的翻译名称。如果缺少 Name 键,则可能会使用不带扩展名的 .desktop 文件名。%k
桌面文件的位置作为 URI(例如,如果从 vfolder 系统获取)或本地文件名,如果位置未知,则为空。并非所有这些都对自定义操作有意义。LXDE Wiki 建议PCManFM 仅支持这些.
已弃用的:
%d
%D
%n
%N
%v
%m
Nautilus Actions扩展了这些以包含更多项目,我认为大多数文件管理器都遵循这一惯例。除了上面列出的那些,它还补充说:
%b
(一)basename%B
以空格分隔的基本名称列表%c
所选项目的计数%d
(一)基目录%D
每个选定项目的基本目录的空格分隔列表%h
(第一个)URI 的主机名%m
(第一个)选定项目的 mimetype%M
所选项目的 mimetype 的空格分隔列表%n
(第一个)URI 的用户名%o
no-op 运算符,当指定为第一个参数时强制执行一种形式,否则忽略%O
no-op 运算符,当指定为第一个参数时强制执行一种形式,否则忽略%p
(第一个)URI 的端口号%s
(第一个)URI 的方案%w
(first) basename 不带扩展名%W
以空格分隔的基本名称列表,不带扩展名%x
(一)扩展%X
以空格分隔的扩展名列表%%
性格Thunar Actions 支持的更少——它支持的那些都列在添加操作的对话框中:
%f
第一个选定文件的路径%F
所有选定文件的路径%d
包含由 %f 引用的文件的目录%D
包含由 %F 引用的文件的目录%n
第一个选择的文件名,没有路径%N
所有选定的文件名,没有路径Nautilus 和 Thunar 都使用 Desktop Entry 规范不推荐使用的说明符。他们还对 . 使用不同的含义
%n
。除了主列表之外,Dolphin 还支持以下选项:
%d
所选文件的基本目录作为单独的参数。%f 中的行为%D
选定文件的基本目录作为单个空格分隔的参数%n
选定文件的基本名称作为分隔参数。%f 中的行为%N
选定文件的基本名称作为单个空格分隔的参数%m
类似于 %f如果使用了不支持的参数,Dolphin 会简单地将其作为字符串发送(例如“%M”),并将所选文件的路径附加到它,如 %f 中所示。
如果没有使用任何参数,Dolphin 仍然会发送所选文件的路径,如 %f。
总而言之,Desktop Entry Spec、Nautilus Actions 和 Thunar 之间的唯一共同点似乎是
%f
/%F
。%f
用于指定单个文件,并%F
指定文件列表。