为什么 Kate 将文件名中的空格替换为“%20”,从而阻止打开它?

为什么 Kate 将文件名中的空格替换为“%20”,从而阻止打开它?

我在 USB 记忆棒上的 Live Knoppix 7.7.1 上使用 Kate 编辑器版本 16.04.2。

当我双击 pcmanfm 中的普通文本文件时,Kate 打开,但它用 替换文件名中的空格%20,并显示一条消息“新建”,我认为这意味着“新文件”。我双击的文件内容没有出现在 Kate 中,但文本窗口是空的。

假设真实的文件名是my notes,然后凯特将其更改为my%20notes.

如果我单独打开 Kate,则可以通过以下方式打开文件:

  • 使用 Kate 菜单中的“文件/打开”,然后从那里选择文件。
  • 单击文件并将其从 pcmanfm 拖到 Kate 窗口。

在我硬盘上的主 Debian 系统上,Kate 双击打开了一个文件。为什么双击打开方式会把空格替换成%20,如何解决?


编辑:

我做了以下测试(在 USB 棒上的实时 knoppix 7.7.1 上)。他们可能会帮助确定解决我的问题的方法。

使用 pcmanfm

(这与我在原来的问题中已经描述过的情况相同。)

Kate 已经是双击文本文件时启动的默认应用程序。我在 pcmanfm 中双击该文件my notes,但 Kate 打开了一个名为 的新文件my%20notes,其中没有任何内容。

当 Kate 仍然打开时,我执行了以下操作来查看传递给 Kate 的文件名:

$ ps ax | grep kate
4893 tty5     Sl     0:01 kate -b file:///home/knoppix/my%20notes

我将默认启动应用程序从 Kate 更改为 KWrite。当我双击 时my notes,KWrite 打开了一个名为my%20notes.

我将默认启动应用程序更改为 Leafpad。当我双击时 my notes,Leafpad 正确打开my notes

使用 nautilus 文件管理器:

我将默认启动应用程序设置为 Kate。当我双击 时my notes,Kate 正确地打开了my notes(即没有使用 %20)。

结论

似乎只有 pcmanfm(而不是其他文件管理器,例如 nautilus)才导致%20在 Kate 中使用。也似乎是凯德启动%20出现问题的应用程序(Kate 和 KWrite)——但只能通过 pcmanfm。我不认为 pcmanfm 本身是一个 KDE 应用程序。

答案1

我找到治疗方法了!

我正在使用 LXDE 桌面环境,并执行以下操作来解决该问题。

选择屏幕底部桌面面板左端的 KMenu 图标。选择附件/主菜单。当 MainMenu 应用程序出现时,单击左侧框中的 Accessories,然后单击中间框中的 Kate,然后单击右侧的属性。

在“命令”框中,将“kate -b %U”替换为“kate -b”。

现在,当我双击 pcmanfm 中的文本文件时,Kate 可以正确打开该文件,即空格不会被 %20 替换。

我对百分比参数(如 %U)了解不多,但我有一种感觉 %U 可能意味着“将提供给 Kate 的参数视为 URL”(而不是普通文件)。

非常感谢 Sourcejedi 和 Michael Mrozek 让我走上了解决方案的道路。

相关内容