Python 更改Pycharm Emacs键绑定以使用不同的单词分隔符

Python 更改Pycharm Emacs键绑定以使用不同的单词分隔符,python,emacs,pycharm,Python,Emacs,Pycharm,在工作中,出于各种原因,我通常只能使用裸体vi/emacs。因为我更喜欢emacs,所以每当我在家闲暇时使用“较重”的IDE(如Pycharm)时,我都喜欢将我的IDE设置为使用emacs密钥绑定 我注意到绑定基本上是相同的,并且具有相同的功能。也有一些例外,但有些绑定我不经常使用,所以这没什么大不了的。然而,有一个我一直在使用的东西真的让我很恼火,它真的开始阻碍我的脉轮/开发流程 假设我有一个名为my\u var\u的变量,它表示\u xyz。如果我的光标位于行的开头,并且我使用“Alt+f”

在工作中,出于各种原因,我通常只能使用裸体vi/emacs。因为我更喜欢emacs,所以每当我在家闲暇时使用“较重”的IDE(如Pycharm)时,我都喜欢将我的IDE设置为使用emacs密钥绑定

我注意到绑定基本上是相同的,并且具有相同的功能。也有一些例外,但有些绑定我不经常使用,所以这没什么大不了的。然而,有一个我一直在使用的东西真的让我很恼火,它真的开始阻碍我的脉轮/开发流程

假设我有一个名为
my\u var\u的变量,它表示\u xyz
。如果我的光标位于行的开头,并且我使用“Alt+f”,我希望光标移动到单词
my
的末尾。相反,它跳到变量名的末尾。如果我的光标位于变量的末尾,并且我使用“Alt+b”,我希望光标落在
xyz
的前面。相反,它跳到变量名的开头。如果我的光标位于这个变量名的末尾,并且我使用“Alt+Backspace”,它将删除整个变量。相反,我希望它更像我在工作中习惯的那样,只删除
xyz
部分(直到变量名中的最后一个
),即表示xyz的
my\u变量。我倾向于使用长/冗长的变量名,所以当我无意中使用了整个变量时,它会使我的速度减慢。它也让我大吃一惊,没有人喜欢编写惊喜代码


有没有办法改变这个默认的emacs键绑定行为,将
\uucode>用作一个单词分隔符,这样我就可以解锁我的脉轮,成为Pycharm中更好/更快的编码忍者?

是的,有。首先,打开设置(“Ctrl+Alt+S”通常起作用)。接下来,转到“关键点地图”。您应该已经选择了emacs。向下滚动至“删除单词开始”。它应该是这样的:

接下来,右键单击“删除以不同的“驼峰”模式启动Word”,然后选择“添加键盘快捷键”。执行此操作时,您将看到一个窗口弹出,如下所示:

现在,在键盘上点击“Alt+Backspace”(不要键入)。您应该会看到它作为文本在窗口中弹出。现在单击OK(它还将提示您删除旧的引用,这是您想要做的)

冲洗并重复此过程“在不同的“驼峰”模式下将插入符号移动到下一个单词”和“在不同的“驼峰”模式下将插入符号移动到上一个单词”,但使用适当的键绑定


另外,请注意,如果您使用camelCase而不是snake_case,那么camelCase也会有同样的单词定界行为。

希望这会让其他人头疼。另外,发帖后可以立即回答您自己的问题,请参见此处: