VS代码自动完成定制

时间:2019-08-22 11:36:44

标签: visual-studio-code configuration

我想根据自己的喜好自定义VScode自动完成行为。

即:

  1. 出现建议列表时,我不想选择任何建议。
  2. 当我按下 Tab Shift-Tab 时,我想循环浏览建议(因此选择一个)。 Esc 应该取消选择任何选定的建议(并且可以选择关闭建议列表)。
  3. 选择建议后,任何角色都应接受该建议(因此,请使用该建议的文本来编辑我的代码)。

第2项是通过编辑键绑定实现的。

我还没有找到一种方法来获得项目1的行为。

对于第3项,一个肮脏的hack可能是利用var arr = [ { name: "test", options: [ {id: "1", value: ""}, {id: "2", value: ""}, {id: "3", value: ""}, {id: "4", value: ""} ] }, { name: "test2", options: [ {id: "12", value: ""}, {id: "23", value: ""}, {id: "34", value: ""}, {id: "45", value: ""} ] } ] var obj = arr.reduce((obj1, { name, options }) => ({...obj1, [name]: options}), {}) console.log(obj)设置,并将所有字符都用作提交字符,但是我还没有找到如何编辑哪些字符是提交字符。

是否可以使用设置来实现此行为?

如果没有,是否存在提供此行为的扩展程序?

理想情况下,我想避免编写自己的扩展名,但是如果没有其他解决方案,我可以采用这种扩展名。

注意:此问题与this one不同,因为我不想按 Return 接受建议(除非我想接受建议插入新行。

edit:我相信this answer可以使用上述肮脏的技巧来实现第3项,我只需要为具有相同“ when”条件的所有可能字符复制相同的keybind,现在我只需要找到一个获得项目1的方法。(理想情况下,找到获得项目3的更好方法。)

再次编辑:为了使我的问题更清楚,我记录了vim所期望的行为,并按下了键。 desired behaviour as experienced in vim

1 个答案:

答案 0 :(得分:1)

对于项目1,您可以按向上箭头键取消选择建议。 或者,也可以转到VSC,从Visual Studio中选择“工具”>“选项”。 在左窗格中选择“文本编辑器”。 选择您正在使用的语言(C#,C ++,Basic等)。 对于C#和Basic,选择“ IntelliSense”。 ... 对于C#和Basic,请选中“键入字符后显示完成列表”以将其禁用。 对于第三项,您不能写任何括号,<或>,{或},[或]或<和>。 相反,只需编写其中的内容。自动完成功能会将每个标志放在正确的位置。

希望我能帮上忙!