A API de tempo de execução fornece várias maneiras de ler arquivos do diretório de extensão, portanto, o que resta a explorar é como gravar arquivos no diretório de extensão.
Acho que vale a pena explorar se runtime#getPackageDirectoryEntry e fileSystem#getWritableEntry podem ser usados para gravar arquivos no diretório de extensão, mas temo que o sistema de permissão possa interferir.
Acontece que fileSystem
não está disponível para extensões, apenas para aplicativos. Portanto, com uma API somente leitura, ainda pode ser possível implementar o suporte ao editor, mas coisas como atualização automática não serão possíveis.
Isso é efetivamente impossível. A única coisa que posso imaginar é usar mensagens nativas e um binário local escrito personalizado. Isso vai dar muito trabalho, na melhor das hipóteses.
@yfdyh000 Obrigado, isso é incrivelmente útil! Eu nem pensei em executar python -m http.server
para servir minha pasta userscript no localhost enquanto eu os estava editando. Agora são apenas dois cliques e ~3 segundos de atraso entre eles para recarregar um script do disco.
O único passo que falta para torná-lo realmente conveniente é o recurso Violentmonkey mencionado no artigo: uma caixa de seleção na página GM "Install script" para monitorar o arquivo em vez de fechá-lo após a instalação. Mesmo simplesmente manter a página de instalação aberta em vez de fechá-la depois de clicar em Instalar seria incrível.
Comentários muito úteis
FYI: https://violentmonkey.github.io/2017/03/14/How-to-edit-scripts-with-your-favorite-editor/