首页 > 解决方案 > 找到了一些VSCode:如何确定光标在编辑器中的列位置?

问题描述

我正在寻找一种简单的方法来确定 VSCode 编辑器的文本插入光标/插入符号的列位置,或者在选择要复制的文本区域之前,或者立即使用鼠标开始选择。然后在执行进一步的剪贴板操作之前,列号将存储在剪贴板中。

我已经尝试搜索 AutoHotkey 方法来实现这一点,但我能找到的唯一解决方案涉及 using ImageSearch,这不适合我的目的。

编辑:我找到了这个API 参考,我可以使用它来确定光标位置,最好使用 windows cmd/powershell?

标签: visual-studio-codeautohotkeyvscode-extensionsvscode-tasks

解决方案


您可以制作 vscode 扩展并将命令绑​​定到键盘快捷键。

如何获取光标的行列(字符):

const activeEditor = vscode.window.activeTextEditor
    if (activeEditor) {
        console.log(activeEditor.selection.active.line)
        console.log(activeEditor.selection.active.character) //column
    }

api:https ://code.visualstudio.com/api/references/vscode-api#details-159

activeEditor.selection 给你一个有 4 个对象的对象

start:Object
  line:4
  character:8
end:Object
  line:6
  character:8
active:Object
  line:4
  character:8
anchor:Object
  line:6
  character:8

activeEditor.selection.active 是您的光标。

activeEditor.selection.anchor 是

选择开始的位置。这个位置可能在活动之前或之后。

anchor-active 可能会颠倒,但 start-end 将始终是 up-down。

注意:在我发现如何从这里获取当前行之后,我找到了 api: VScode API 为什么我无法获取当前行?


推荐阅读