Notepad++快捷键设置文件(shortcut.xml)在编辑后被清空

3

我刚刚完成了Notepad++的全新安装。在关闭Notepad++后,我打开了位于C://Users/User/AppData/Roaming/Notepad++文件夹(Windows7)中的shortcuts.xml,并更改了以下行:

<Command name="Launch in Firefox" Ctrl="yes" Alt="yes" Shift="yes" Key="88">firefox &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;</Command>

这个更改建议在另一个 StackOverflow 的问题的答案中提出:如何配置Notepad++来在本地服务器上运行php?

当我完成更改后打开 Notepad++ 时,"Run"下拉菜单中没有任何项,shortcuts.xml 被削减到以下基本内容:

<NotepadPlus>
    <InternalCommands />
    <Macros />
    <UserDefinedCommands />
    <PluginCommands />
    <ScintillaKeys />
</NotepadPlus>

我重新安装的原因是我已经遇到了这个问题。虽然复制和粘贴原始文件可能看起来很简单,但每次重新启动Notepad++时,shortcuts.xml文件都会被清除。我找到了唯一恢复shortcuts.xml的方法,就是重新安装,而且貌似没有办法在不被清除的情况下编辑它。
我还尝试在C:// Program Files(x86)/ Notepad ++文件夹中编辑shortcuts.xml。尽管那里的XML文件没有被清除,但任何在那里进行的更改似乎都被Notepad ++完全忽略。根据我在上面发布的链接的答案,那也是错误的文件要编辑。
我试图通过谷歌解决这个问题,但是我没有找到任何有用的信息。
更新:
除了将“Firefox”更改为“Mozilla”之外,我什么也没做,它没有清除文件,但是当我对该行进行其他更改时,它又将其清除了。一旦它被清除,我就无法在不重新安装的情况下恢复它。
这似乎表明它取决于所做的编辑。但是,我已经看到其他人成功地从Notepad ++中启动本地主机中的PHP文件,因此看起来这个版本在某些方面存在一些问题。

你在安装过程中告诉Notepad++使用%AppData%了吗?(我记不清是否取消选项会使其完全不在那里生成文件夹,所以我问一下。) - BoltClock
我刚刚尝试了多次重新安装并尝试不同的选项,但是结果都一样。请参见上面的新编辑。 - Expedito
根据常见问题解答,主题问题包括:“程序员常用的软件工具。” Notepad++是为程序员创建的,从Notepad++启动PHP文件也使其与程序员相关。除此之外,notepad++已经被接受为StackOveflow中的标准类别。 - Expedito
3
没错,我不知道为什么人们投票关闭了你的问题。我已经重新打开它了。抱歉回复晚了,因为我刚起床! - BoltClock
这可能对原问题来说有些晚了,但如果有人正在寻找答案,请查看我下面的回答。 - Jackie Yeh
4个回答

2

shortcut.xml 是 notepad++ 运行时使用的文件。当您通过设置->快捷键映射更改快捷键时,notepad++ 将会更新 shortcut.xml 文件。当 notepad++ 关闭时,它将会把 keymap 恢复到 shortcut.xml。这看起来就像 shortcut.xml 被清空了。

因此,您不能使用 notepad++ 自身编辑 shortcut.xml 文件。您可以使用以下两种方法手动修改 shortcut.xml:

  1. 先关闭 notepad++,然后使用其他编辑器编辑 shortcut.xml。
  2. 在 notepad++ 中编辑 shortcut.xml,但保存为另一个名称,然后关闭 notepad++。删除原始的 shortcut.xml 文件,将新保存的文件重命名为 shortcut.xml。

我曾经遇到过同样的问题,这个简单的解决方案有效。不要使用notepad++编辑notepad++文件。谢谢Jackie。 - Fallen Apart
这对我没有用。为了“安全起见”,我将shortcuts.xml复制到两个位置:C:\oldshortcut\shortcuts.xml和C:\newshortcut\shortcuts.xml。我使用Microsoft的记事本编辑了“newshortcut”中的文件,并将其复制并粘贴回文件的原始来源。我打开N++,但是...所有我的宏都消失了。然后我尝试了“oldshortcut”文件夹中的文件,但是...仍然一切都消失了!似乎我无法找回我的宏。每当我在Notepad++中创建新宏时,它就会覆盖我的旧shortcuts.xml而不会查看它。 - user1261104

1

我成功地修改了配置文件,但尝试直接使用其他编辑器进行修改有时不可能。根据文档(http://npp-wiki.iwi.me/index.php/Configuration_File_Editing),这种方法并不适用且很棘手。因此,我不能称其为错误,因为它本来就不是这样设计的。

然而,我通过Notepad++自己完成了同样的操作。在“运行”下拉菜单中,第一项是“运行...”,我点击了它,然后在文本字段中粘贴了:

"firefox &quot;http://localhost/redirect.php?file=$(FULL_CURRENT_PATH)&quot;"

然后我点击了“保存”。一个新的对话框出现,要求输入快捷方式和键盘组合的名称。我输入了“在Mozilla中启动”作为名称。点击“确定”后,它变得有点像《营救时空》。它要求另一个名称,输入并点击“确定”后,它又做同样的事情……如此循环……永远……你可以参与这个无尽的循环,但我发现你也可以简单地关闭对话框,一切都会顺利进行。
最后,我的配置文件即使在关闭和重新打开后仍然保持完好。
这是好消息。坏消息是,这个黑客方法根本无法在Firefox中启动PHP文件。在浏览器中出现了以下内容:
file:///C:/Program%20Files%20(x86)/Notepad++/&quot;http://localhost/redirect.php?file=C:/htdocs/acrilart/hello.php&quot;
显示一个空白屏幕。
然而,那是完全不同的问题。

0

尝试以管理员身份运行Notepad++(考虑到你使用的是Windows 7)。

当我切换到Win7时,我一直在为什么N ++无法保存对某些配置文件的更改而苦恼:因为这些文件位于系统文件夹,Program Files等等。 "以管理员身份运行"解决了这个问题。

另外:您是否在C:\ Users \ User ...或C:\ Users [UserName] ...中编辑shortcuts.xml文件? 我的安装程序只在后者中拥有Notepad ++文件夹。


谢谢您的回答,但似乎不适用于我的情况。我成功地编辑了文件,但Notepad++之后会将它们清除掉。您是在建议我必须始终以管理员身份打开Notepad++才能防止这种情况吗?我不知道您的意思。我直接编辑这些文件,并且正如我所说,它们不位于Program Files文件夹中。它们位于您所说的路径下,即C://Users/[UserName]/AppData/Roaming/Notepad++。 - Expedito
右键单击N++的可执行文件或快捷方式,其中一个选项应该是带有盾牌图标的“以管理员身份运行”。Windows会要求确认,请选择“是”。 C:\ Users可能也被认为是需要管理员权限才能编辑文件的系统文件夹。 - Primoz
我知道如何以管理员身份运行。虽然这不是我问的问题,但这并不重要。无论如何,它仍然抹掉了它,但这次是以管理员身份进行的抹掉。 :) - Expedito
正如我在问题中提到的那样,当我进行更改时,Notepad++已经关闭了,所以是的,我使用了另一个编辑器。 - Expedito
谢谢你的帮助,但你还没有仔细阅读我的问题。正如我已经说过的,我已经成功地进行了一些更改,并被Notepad++识别,所以我不可能编辑错误的文件。有些更改可以正常工作,但其他更改会导致文件被清除。感谢您的帮助,但我已经找到了一个解决方案,很快就会在这里发布。 - Expedito
显示剩余2条评论

0
  1. 关闭Notepad++
  2. 在C:\Users\\AppData\Roaming\Notepad++\目录中将shortcut.xml文件重命名为old_shortcut.xml。
  3. 重新启动Notepad++
  4. 关闭Notepad++ (您应该拥有与开始时相同的shortcut.xml文件。)
  5. 再次尝试编辑它。
  6. 重新启动Notepad++

如果幸运的话,这应该可以解决问题。我认为Shortcut.xml文件有大小限制或每个宏有大小限制。如果超过了步骤6将会再次清除文件。我也遇到了同样的问题。


大小不是问题,关于原因请看我的回答。 - Jackie Yeh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接