当您打开任何弹出窗口时,旧 Notepad++ 会出现错误

当您打开任何弹出窗口时,旧 Notepad++ 会出现错误

我一直将 Notepad++ 用作主要代码编辑器。然而就在几分钟前,我不小心按了一些组合键(不知道我按了什么),然后我的标准快捷键突然不再起作用了。

当我按下 Ctrl-S 时,它不会保存我的文档;而是插入这个奇怪的小“DC3”字符(看起来像一个圆角黑色矩形,里面有白色文本)。当我按下 Ctrl-F(查找键)时,我得到了一个类似的“ACK”符号。

我在网上找到的唯一答案与更改快捷键映射有关;但是我的快捷键映射根本没有改变,它们仍然按应有的方式设置,Ctrl-S 映射到“保存”,Ctrl-F 映射到“查找...”。

我显然已经切换到某种奇怪的备用键模式,但我不知道那是什么或者如何摆脱它。

更新:我又尝试了一下,看看还有哪些快捷键坏了。到目前为止,除了 Windows 标准快捷键“Ctrl-X”和“Ctrl-V”外,其他快捷键似乎都坏了。下面是一些示例:

KEY             Should Do:            Current Behavior:

Ctrl-Tab        Cycle open tabs       <does nothing>
Ctrl-W          Close current tab     [ETB]
Ctrl-N          Open New tab          [SO]
Ctrl-O          File Open window      [SI]
Ctrl-A          Select All            [DC3]
Ctrl-Z          Undo                  <Works as expected>
Ctrl-C          Copy selection        <Works as expected>
Ctrl-U          Make lowercase        [NAK]

答案1

好吧,这确实很可悲。但其他白痴也有可能遇到这个问题,所以我有理由发帖。

几分钟前,我在当前文档中执行了“全部替换”。显然,通知我“# 个匹配项已被替换”的对话框窗口隐藏在另一个窗口下,所以我从未关闭它。

显然,当那个小窗口保持打开状态时,在主编辑器窗口处于焦点状态时按下快捷键会导致那些奇怪的结果。

确实,这是奇怪的行为,但这仍然是一个相当新颖的场景。好吧。

答案2

检查语言栏。您可能为该应用程序设置了不同的语言或键盘。

其他应用程序也有这个问题吗?

答案3

我刚刚遇到了一个类似的问题,是由不同的问题引起的。

确保您的文件未设置为只读。 :)

答案4

作为 Brian 答案的补充:

当您打开任何弹出窗口时,旧 Notepad++ 会出现错误

这似乎是 Notepad++ 中的一个老 bug

我发现的第一份报告来自 2010 年: https://notepad-plus-plus.narkive.com/R7BQacOI/notepad-ctrl-s-no-longer-saves-file-and-instead-inserts-dc3-control-characterhttps://archive.is/wip/oROp0

以下是 2016 年解决方案的视频演示: https://www.youtube.com/watch?v=CTcoMa19huYhttps://www.youtube.com/watch?v=CTcoMa19huY

以下是 2018 年 NPP 论坛上的一个主题: https://community.notepad-plus-plus.org/topic/15803/notepad-7-5-6-inserts-ascii-control-codes-like-dc3-for-control-s-without-any-background-dialogues-open-when-unix-lf-utf-8-wo-bom-format-is-usedhttps://archive.is/J3xbk

我发现两个错误报告提到了“DC3”。不幸的是,它们都没有修复任何问题。

至于 Brian 的表格:我猜:ascii 表(十六进制)在这里:

$ ascii -x
   00 NUL    10 DLE    20      30 0    40 @    50 P    60 `    70 p
   01 SOH    11 DC1    21 !    31 1    41 A    51 Q    61 a    71 q
   02 STX    12 DC2    22 "    32 2    42 B    52 R    62 b    72 r
   03 ETX    13 DC3    23 #    33 3    43 C    53 S    63 c    73 s
   04 EOT    14 DC4    24 $    34 4    44 D    54 T    64 d    74 t
   05 ENQ    15 NAK    25 %    35 5    45 E    55 U    65 e    75 u
   06 ACK    16 SYN    26 &    36 6    46 F    56 V    66 f    76 v
   07 BEL    17 ETB    27 '    37 7    47 G    57 W    67 g    77 w
   08 BS     18 CAN    28 (    38 8    48 H    58 X    68 h    78 x
   09 HT     19 EM     29 )    39 9    49 I    59 Y    69 i    79 y
   0A LF     1A SUB    2A *    3A :    4A J    5A Z    6A j    7A z
   0B VT     1B ESC    2B +    3B ;    4B K    5B [    6B k    7B {
   0C FF     1C FS     2C ,    3C <    4C L    5C \    6C l    7C |
   0D CR     1D GS     2D -    3D =    4D M    5D ]    6D m    7D }
   0E SO     1E RS     2E .    3E >    4E N    5E ^    6E n    7E ~
   0F SI     1F US     2F /    3F ?    4F O    5F _    6F o    7F DEL

我认为当 CTRL-W 插入“ETB”时会发生什么:ASCII“W”0x57 丢失 0x40 并变成 0x17 ETB。

在所有情况下似乎都有一个负 0x40(十进制 64)偏移。

(除了 CTRL-A,但我认为 Brian 可能将其与 CTRL-S 混淆了。--Brian 的表将 CTRL-A 映射到 DC3 但我读过的所有其他报告都将 CTRL-S 映射到 DC3。

KEY      Should Do:             Current Behavior:
         
Ctrl-Tab Cycle open tabs        <does nothing>
Ctrl-W   0x57 Close current tab 0x17 [ETB]
Ctrl-N   0x4E Open New tab      0x0E [SO]
Ctrl-O   0x4F File Open window  0x0F [SI]
Ctrl-A   Select All             0x13 [DC3]
Ctrl-Z   Undo                   <Works as expected>
Ctrl-C   Copy selection         <Works as expected>
Ctrl-U   0x55 Make lowercase    0x15 [NAK]

有关“CTRL-W”、“^W”、0x17 和 0x57 之间关系的详细信息:

相关内容