添加键盘快捷键以在 Thunar 内部发挥作用

添加键盘快捷键以在 Thunar 内部发挥作用

我正在尝试为“创建文档......”子组件“空文件”创建一个键盘快捷键,如下图所示:

在此处输入图片描述

看来 Thunar 使用的所有快捷方式都存储在文件中~/.config/Thunar/accels.scm

因此,我尝试通过添加以下行之一来自己创建一个:

(gtk_accel_path "<Actions>/ThunarStandardView/create-archive" "<Primary>n")
(gtk_accel_path "<Actions>/ThunarActions/Tap::create-archive" "<Primary>n")

但它们都不起作用。你知道哪个是正确的配置吗?

更新:本网站表明可以以非常简单的方式编辑菜单键盘快捷键(只需突出显示菜单项并按下键盘键即可)。遗憾的是,Empty File 是少数不以这种方式工作的程序之一!

答案1

这可以通过 Thunar 自定义操作实现。在 Thunar 中,转到编辑 > 配置自定义操作。

添加新的自定义操作:
- 名称:您的首选名称
- 描述:您的首选
- 命令:touch New-File

在外观条件选项卡下:
- 文件模式:*
- 仅检查:目录

在终端运行:

cat ~/.config/Thunar/uca.xml

您创建的新自定义操作将位于底部。复制唯一 ID。

在您最喜欢的文本编辑器中打开~/.config/Thunar/accels.scm。搜索您刚刚复制的唯一 ID。(您可能需要使用该命令退出 Thunar thunar -q,然后重新打开它才能显示唯一 ID。)添加您的键盘快捷键(如下例所示),然后通过删除行首的分号来取消注释。

(gtk_accel_path "<Actions>/ThunarActions/uca-action-1469642461001634-1" "<Alt>n")

(我注意到它"<Primary>n"已经用于新窗口。您可能想使用其他东西。)

此方法的主要缺点是它不会使用重命名对话框进行初始化。此外,如果您希望连续创建多个空白文件,则此方法不起作用。要解决此问题,您需要创建一个脚本,其中包含touch "new-file-$(date +%N)"生成随机名称的命令。将此命令直接粘贴到 Thunar Custom Actions 中的命令框中不起作用,因为它与其自己的命令参数冲突。因此,您可以运行脚本。

答案2

我使用了 jbrock 的方法,并做了一些改进:

我的命令:

exo-open --working-directory %f --launch TerminalEmulator "thunar-new && exit"

我的脚本(thunar-new):

#!/bin/bash
echo -n "Enter name: "
read name
touch "$name"    

它能做什么:

  • 按下Alt+n时,它会打开一个终端,询问新文件的名称,然后在按下Alt+ 的文件夹中创建具有该名称的文件。n

  • 您可以输入空格而不必使用引号。

相关内容