请问VSpaceCode有详细的教程或者配置可供参考吗?

忘记贴链接了,不好意思

谢谢,我这可能是wall的原因打不开您的链接。

我主要参考Default Keybindings | VSpaceCode 试用了一会VSpaceCode,感觉Spacemacs大部分快捷键已经还原,但还有些不太懂VSCode是否方便实现的地方请教下:

1、VSCode中是不是基本没有针对段落的命令?我在F1后搜索“para"基本没有,之前在Spacemacs中可以整个paragraph地注释、删除、跳转等。

2、除了ESC,怎么从insert模式跳回normal模式?我在Spacemacs中设置了kj作为快捷键。

3、能否类似Spacemacs那样自定义宏?比如我自己设置的将print行复制并改为logging.info。

  ;; 设置 kj 退出插入模式、minibuffer 等,默认为 fd。
  (setq-default evil-escape-key-sequence "kj")
  (define-key evil-normal-state-map (kbd ",p") 'evilnc-comment-or-uncomment-paragraphs)  ;段落添加或取消注释
  (defalias 'lxs-print-logging-info (kmacro "y y p c w l o g g i n g . i n f o <escape>"))

可以先问问AI,我身边没电脑,明天晚上如果你还没解决我来回复下

  1. 添加jk退出到normal mode,在settings.json里面添加这个
  "vim.insertModeKeyBindings": [
        {
            "before": ["j", "k"],
            "after": ["<Esc>"]
        },
        {
            "before": ["k", "j"],
            "after": ["<Esc>"]
        }
    ],
  1. 定义Normal mode 下面的添加注释
  "vim.normalModeKeyBindings": [
    {
      "before": ["[", " "],
      "after": ["O", "<Esc>", "j", "0"]
    },
    {
      "before": ["]", " "],
      "after": ["o", "<Esc>", "k", "0"]
    },
    {
      "before": [",", "p"],
      "commands": ["editor.action.commentLine"]
    },
  ],
1 个赞

非常感谢大佬,试了您这几个按键都有效。

我试着问过AI,不知道是不是问的水平不够,得到的答案都没有实现。

VSCode和VSpaceCode里搜命令貌似没有"paragraph"与"bookmark"相关的,我在Spacemacs中对书签的跳转与段落的操作比较频繁,目前在VSCode中找到名为”Bookmarks"的插件貌似可以用,又安装了一个“Select Paragraph”插件用于整段的选择,目前先凑合用。

还有个比较大的问题是,VSpaceCode是不是只对应了Spacemacs的vim模式?是否因为Emacs的组合按键容易冲突所以基本没有匹配?

我更习惯Spacemacs的hybrid模式,在insert状态下会经常用到Emacs的按键,比如:

1、输错了直接按“ALT+Backspace”可以删除到本word开头;

2、在F1列出的命令中能否按"Ctrl+N"向下选择相应的命令?

3、按Ctrl+Y 粘贴后,可以按"ALT+Y"选择剪切板的内容。

在 keybindings.json中添加下面代码 并且安装插件 Clipboard Manager就可以实现Alt+y的效果。

  {
    "key": "alt+y",
    "command": "clipboard-manager.editor.pickAndPaste",
    "when": "editorTextFocus && !suggestWidgetVisible && !inRegionMode && vim.mode == 'Insert'"
  },
  1. Ctrl+n的效果,我的gist里面都有,你可以翻墙看一下:
  {
    "key": "ctrl+n",
    "command": "cursorDown",
    "when": "editorTextFocus && !suggestWidgetVisible && !inRegionMode && vim.mode == 'Insert'"
  },
  1. 貌似系统本来就支持 ctrl+delete