如何在 Dolphin 中添加快捷键来创建新文本文件

如何在 Dolphin 中添加快捷键来创建新文本文件

我正在使用 KDE+Dolphin,当我需要添加新文件夹时,我要么走很长的路“右键单击 > 新建 > 文件夹...”,要么使用 F10 快捷键。

我经常使用的另一个选项是“右键单击 > 新建 > 文本文件...”,但它没有快捷键。我进入“配置键盘快捷键...”菜单以添加创建文本文件的快捷键,但令我惊讶的是,没有这样的选项。

我查看了快捷方式的配置文件,发现“create_dir=F10”是创建新文件夹的选项:创建文本文件的快捷方式配置选项是什么(可能吗)?如何为其他文件类型(例如 HTML)添加快捷键?

答案1

System Settings> Shortcuts> +Add Application...> 选择您最喜欢的文本编辑应用程序 > 最后给它一个热键/快捷方式。

一旦打开 Kate、Kwrite、Nano 或您选择的任何内容,您现在就可以使用Ctrl + S 或适当的另存为热键,选择位置、命名并保存文件。

编辑

更好的方法:

  • 您需要安装 Xdotool 和 Kdialog(已随 KDE 安装)

  • 创建一个新的空文件(.sh 脚本文件)将其命名为“createtext.sh”并将其粘贴到其中 -->

  • 要使此脚本正常工作,您需要从海豚偏好设置中启用标题栏中的完整路径。显示完整路径对话框

#!/usr/bin/bash

path=$(xdotool getactivewindow getwindowname | awk -F ' —' '{print $1}')
file="new file"
extension=txt
filename="$file.$extension"
a=0
while [[ -f $path/$filename ]]; do
    a=$((a + 1))
    filename="$file ($a).$extension"
done

userfile=$(kdialog --inputbox "Create new file in $path" --title "New Text File" --geometry 420x50 "$filename")

if [[ -f $path/$userfile ]]; then
    kdialog --error "Please choose a unique file name" --title "File exists"
    exit 1
else
    touch "$path/$userfile"
    exit 0
fi
  • 保存,右键单击它-->属性-->权限-->勾选“可执行文件”

  • 现在打开“设置”>“快捷方式”>“自定义快捷方式”

  • 创建新组,命名为Dolphin_Custom

  • 如图所示填写评论在此处输入图片描述

  • 转到条件选项卡

  • 点击“新建”--->活动窗口...

  • 如图所示填写评论在此处输入图片描述

  • 现在再次点击新建

  • 像这样设置 - 确保窗口类型设置为“正常”在此处输入图片描述

  • 再次单击新建——创建另一个类似的。

  • 窗口类型为“桌面”在此处输入图片描述

  • 现在在该组内创建一个新的全局 -- 命令 url 快捷方式在此处输入图片描述

现在将它链接到我们之前制作的脚本文件。给它一个触发器。我们完成了

在此处输入图片描述

答案2

我也遇到了同样的问题。创建新的文本文档占了我工作量的很大一部分,而这会节省很多时间。

不幸的是,我还没有找到一种方法来为它创建快捷键。(尽管我正在研究 Xbindkeys——使用它,你可以(全局)将控制台命令分配给键盘快捷键我需要弄清楚如何让它知道哪个窗口具有焦点以及 dolphin 打开了哪个文件夹,以便控制台命令知道在哪个文件夹中创建新的文本文档。然后我需要编写一个脚本,弹出一个询问文档名称的弹出窗口...正如你所看到的,肯定还没有完全到达那里。)

无论如何,我确实有一点解决方法,可能对你有帮助。如果你转到:海豚菜单 --> 配置工具栏...,你可以向工具栏添加新项目,你可以添加的项目之一是“新建”。

一旦将其添加到工具栏,就可以简化操作一点

之前:右键单击空白区域 --> 单击新建 --> 单击文本文档

之后:单击新建-->单击文本文档

我知道,不多,但是速度稍微快一点。

也许可以向海豚开发人员发送此键盘快捷键的功能请求?添加新的(默认情况下未分配的)键盘快捷键通常相当容易,开发人员通常很乐意这样做。

答案3

由于无法轻松地将新快捷方式添加到 Dolphin(如其他答案!),这里有一些解决方法:

  • 使用快捷方式和 Dolphin 嵌入式终端:按 F4 打开您想要放置文件的终端,然后写入kate或其他文本编辑器在那里打开一个(尚未命名的)文本文件;使用 Kate,也可以写入kate -n myfile,以使用名称打开它。

  • 使用新的顶级上下文菜单:创建 (1) 一个文件~/.local/share/kservices5/ServiceMenus/create_new_text.desktop和 (2) 一个脚本

脚本内部:

#!/bin/bash

c=0

for f in "$1/"new*.txt; do
  if [[ -f "$f" ]]; then
    ((c++)) 
  fi
done

f="$1/new-$c.txt"
touch "$f"
kate "$f"

文件内部.desktop

[Desktop Entry]
Type=Service
Icon=kate
Actions=new-file
ServiceTypes=KonqPopupMenu/Plugin,inode/directory
X-KDE-Priority=TopLevel

[Desktop Action new-file]
Name=New text file
Icon=kate
Exec=/path/to/the/script %f

感谢@schrodigerscatcuriosity - 他在这里

答案4

我发现的另一种奇怪的方法是使用名为 Autokey-gtk 的软件 --- > 它非常好!

您可以轻松编写类似这样的脚本,以执行您想要的操作。如果您使用窗口过滤器选项,则可以选择脚本的执行位置。

在 KDE 中。例如,我在这里编写了一个脚本,用于仅在 Dolphin 或 Desktop 中创建一个新的文本文件。

winClass = window.get_active_class()
if "dolphin.dolphin" in winClass:
    keyboard.send_key("<menu>")
    keyboard.send_key("c")
    keyboard.send_key("t")
    
elif "plasmashell.plasmashell" in winClass:
    time.sleep(0.2)
    keyboard.send_key("<menu>")
    time.sleep(0.2)
    keyboard.send_key("n")
    time.sleep(0.2)
    keyboard.send_key("t")

在此处输入图片描述

相关内容