gpt4 book ai didi

visual-studio-code - VSCode : activeTextEditor encoding

转载 作者:行者123 更新时间:2023-12-02 08:06:58 25 4
gpt4 key购买 nike

有什么方法可以在我的扩展代码中获取当前文档编码(位于底部栏中)?

类似vscode.window.activeTextEditor.encoding

最佳答案

这似乎不可能。

由于几乎不可能证明否定,因此本答案的其余部分记录了我的探索内容。

字符串“encoding”没有出现(在这个意义上)API docs 中的任何地方。也不在 index.d.ts它源自的文件。 (使用 VSCode 1.37.1,截至撰写本文时为最新版本。)

我深入研究了 vscode sources看看是否有一个聪明的解决方案,但一无所获。当用户更改编码时执行的代码位于editorStatus.ts中,类 ChangeEncodingAction。这将导致 textFileEditorModel.ts ,函数updatePreferredEncoding,设置preferredEncoding。该字段控制保存文件时发生的情况,并用于填充状态指示器,但不会去任何我能找到的其他地方。

读取状态指示器本身似乎是不可能的,因为 API 允许扩展使用 window.createStatusBarItem 创建新指示器但不列举现有的。并直接accessing the DOM is not possible .

我也通过 VSCode issues 进行了空搜索与编码相关,包括开放式和封闭式,但仅浏览了最近的约 100 个封闭式问题标题。

替代方案

此时我的主要建议是在 VSCode github 上提交增强请求。

也应该可以用 reflection 做一些事情但当然它会很脆弱。

最后,编码控制内存中的文档(字符序列)如何映射到磁盘上的文件(字节序列)。根据您尝试执行的操作,可能会以多种编码方式对文档进行推测性编码,并将每种编码与磁盘上的内容进行比较(只要文件不脏)。

关于visual-studio-code - VSCode : activeTextEditor encoding,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57524800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com