【发布时间】:2019-02-22 13:56:08
【问题描述】:
感谢 Xfce4 窗口会话和 vcXsrv X 服务器,我正在 Windows 10 工作站上的 Debian WSL 子系统中运行 vscode。
我正在开发一个 Python 3 项目,我的 vscode 编辑器在 WSL 上运行时有一个奇怪的行为,我无法使用本机 Windows 或 Linux 构建来重现:假设想要访问 dict 键,我会输入以下代码:
my_dict[
在这里,我希望 IntelliSense 自动关闭括号并将光标 保留在括号之间。这通常会发生(至少在 Windows 上的本机 vscode 和 /real/ Linux 机器上的 vscode 上)。但这不是我的 WSL 上发生的事情!
似乎光标向后在实际输入左括号之前输入了一个字符,最后不关闭括号,要清楚我在编辑器中输入以下内容:
my_dic[t
如果我通过 在输入左括号之前输入一个空格来解决问题,我会得到相同的行为,但这次是因为早期的 char 是一个空格,IntelliSense 正在按预期运行 /almost/,转发键入的行尾的空格(下面的“$”代表 EOL):
my_dict[] $
我在使用方括号 ([]) 和大括号 ({})、python 代码和 JSON 文件时遇到过这种情况,所以我不怀疑这与语言扩展有关。
最后但并非最不重要的一点是,唯一安装的扩展是 Microsoft 的“Python 2019.1.0”,并且安装程序是完整的,根本没有定制......
我花了几个小时阅读 vscode 文档并浏览类似问题,但没有运气(可能是关键字错误?),所以任何提示将不胜感激,谢谢!
【问题讨论】:
-
对不起,我的回复晚了,实际上我使用的是法语键盘,所以'['或'{'字符是使用'alt gr'键与其他键组合获得的,所以我发现'alt gr' 按键引发了我之前描述的问题......然后我进行了新的搜索,我发现这个问题完美地描述了(并且比我做得更好)我的问题:github.com/Microsoft/vscode/issues/24783 所以解决方案包括修改 vscode 设置带有“keyCode”值的“keyboard.dispatch”!抱歉打扰了
标签: linux windows visual-studio-code windows-subsystem-for-linux