Похоже, что расширение Python реализует API VSCode напрямую для таких функций, как переименование, вместо использования уровня абстракции LSP. Посмотрите, например, его renameProvider.ts
, который реализует vscode.RenameProvider
:
https://github.com/Microsoft/vscode-python/blob/c976b6c98e34e041b7ee826ec22f9820ba90f8ac/src/client/providers/renameProvider.ts
Я не думаю, что его реализация действительно важна для вас как вызывающего абонента. Похоже, вам повезло, возможность программной активации переименования была добавлена совсем недавно и скоро будет выпущена как часть VSCode 1.25. .0 / июньский выпуск:
API для программного переименования (# 50856)
Это также часть примечаний к выпуску для следующей версии , в которых приведен следующий пример использования:
vscode.commands.executeCommand(
'editor.action.rename',
[vscode.Uri.file('/my/file.abc'), new vscode.Position(14, 7)]
)