Vimium: solicitação de recurso: suporte para Safari no macOS Big Sur com nova API de extensão da Web

Criado em 28 jun. 2020  ·  16Comentários  ·  Fonte: philc/vimium

com a API de extensões da Web do Safari , devemos ser capazes de oferecer suporte ao Safari usando a mesma base de código.

Isso seria muito bom, pois as alternativas atuais no Safari não têm paridade de recursos com o Vimium.

Links:

https://developer.apple.com/documentation/safariservices/safari_web_extensions
https://developer.apple.com/videos/play/wwdc2020/10665/
https://hacks.mozilla.org/2020/06/welcoming-safari-to-the-webextensions-community/

Comentários muito úteis

Oi pessoal! Eu sou o (às vezes ausente) mantenedor do Vimari , um porto Safari do Vimium. O Vimari foi bifurcado da base de código do Vimium há muitos anos e ficou muito aquém dos novos recursos do Vimium. Estou muito animado com o novo suporte ao Safari Web Extension; em teoria, ele nos permitiria unificar a base de código do Vimari com a do Vimium (se desejado). Vejo algumas oportunidades de colaboração aqui, dependendo do que os mantenedores do Vimium gostariam:

  • Adicione suporte para Safari Web Extensions ao Vimium e faça com que os desenvolvedores do Vimium gerenciem versões fora da App Store (as atualizações aqui serão mais difíceis)
  • Adicione suporte para Safari Web Extensions ao Vimium e faça com que os desenvolvedores do Vimium gerenciem as versões para a App Store
  • Adicione suporte para Safari Web Extensions ao Vimium e faça com que os devs do Vimari (atualmente eu) gerenciem os lançamentos para a App Store. Isso pode ser renomeado para Vimium se você quiser.
  • Se você não está interessado no suporte do Safari, ou deseja esperar para ver, o Vimari cria um novo fork da base de código do Vimium para construir uma porta compatível com o Safari, contribuindo com patches upstream onde possível e executando nossas próprias versões através a App Store
  • Vimari ramifica um novo fork do Vimium e apenas cria nossa própria base de código nova. Isso é essencialmente o que foi feito há muitos anos e seria a minha opção menos preferida.

Todos 16 comentários

Requer uma conta de desenvolvedor da Apple, o que significa 99 dólares americanos todos os anos ...

Existe alguma maneira de doar para o esforço da Vimium para ajudar a cobrir o custo de algo assim? A API Safari Web Extensions foi provavelmente o anúncio da WWDC que mais me entusiasmou, particularmente por causa do potencial de ver o Vimium funcionar.

Temos algumas opções aqui:

  1. Podemos ter doações para cobrir os custos. (Patrocinador do GitHub etc.)
  2. Podemos vender o aplicativo na AppStore para cobrir o custo. Curtir (leitor escuro)
  3. Implantar com a conta pessoal de alguém (estou feliz em contribuir com a minha, pois precisamos nos inscrever no Apple Developer Program de qualquer maneira)
  4. Não distribuir para AppStore, e o usuário pode construí-lo com o Xcode ou criar seu próprio método de distribuição.

Minha única preocupação é que o suporte da API WebExtension do Safari não é bom o suficiente para vimium

Também estou interessado nisso. Atualmente estou trabalhando um pouco no Vimari, uma das alternativas do Safari que existe no meu próprio fork . Como estou executando o macOS Big Sur beta, consegui executar com êxito o conversor Safari Web Extension no projeto Vimium com o seguinte resultado:

$ xcrun safari-web-extension-converter ./vimium --project-location ./vimium-xcode
Xcode Project Location: ./vimium-xcode
App Name: Vimium
App Bundle Identifier: com.yourCompany.Vimium
Language: Swift
Is this correct? [yes]: yes
Warning: The following keys in your manifest.json are not supported by your current version of Safari. If these are critical to your extension, you should review your code to see if you need to make changes to support Safari:
        history
        clipboardRead
        match_about_blank
        bookmarks
        sessions
        notifications

Inicialmente, a extensão não pôde ser executada porque havia um erro no manifesto content_scripts na linha 78 onde a chave matches está definida para content_scripts/file_urls.css .

"matches": ["file:///", "file:///*/"],

Não estou familiarizado com a base de código do Vimium, mas percebi que remover um arquivo css do manifesto não iria quebrar o aplicativo, se é que funcionava, então removi esta seção do manifesto. Depois disso, consegui construir e ativar a extensão no Safari 14.

Eu encontrei um problema em que, após a ativação, o Safari trava devido a não ser capaz de converter algo em tons de cinza (presumivelmente o logotipo, já que todos os logotipos de extensão são em tons de cinza). O ícone do Vimium também não aparece no Safari após a reinicialização.

Screenshot 2020-07-11 at 19 10 32

Screenshot 2020-07-11 at 19 30 26

No entanto a extensão parece estar ativada e na próxima imagem você pode ver todos os arquivos carregados pela extensão na página (como aconteceria com o Vimari) após dar à ferramenta permissões para acessar o conteúdo do site.

Screenshot 2020-07-11 at 19 18 31

No entanto, infelizmente, nenhuma das funcionalidades do Vimium parece estar funcionando, não estou vendo nenhum erro no console (Xcode nem Safari), então pode ser que alguma chamada inicial não seja feita. Se houver interesse em continuar neste caminho para obter uma versão funcional (talvez não com todas as funcionalidades) do Vimium no Safari, estaria disposto a passar uma tarde com alguém mais familiarizado com o codebase do Vimium para tentar fazê-lo trabalhar.

O Vimium deve possuir uma página de fundo, então as mensagens de erro podem estar no console da página bg, ao invés da página de opções.

Você estava certo, encontrei um erro na página de fundo:

Screenshot 2020-07-11 at 20 50 17

Oi pessoal! Eu sou o (às vezes ausente) mantenedor do Vimari , um porto Safari do Vimium. O Vimari foi bifurcado da base de código do Vimium há muitos anos e ficou muito aquém dos novos recursos do Vimium. Estou muito animado com o novo suporte ao Safari Web Extension; em teoria, ele nos permitiria unificar a base de código do Vimari com a do Vimium (se desejado). Vejo algumas oportunidades de colaboração aqui, dependendo do que os mantenedores do Vimium gostariam:

  • Adicione suporte para Safari Web Extensions ao Vimium e faça com que os desenvolvedores do Vimium gerenciem versões fora da App Store (as atualizações aqui serão mais difíceis)
  • Adicione suporte para Safari Web Extensions ao Vimium e faça com que os desenvolvedores do Vimium gerenciem as versões para a App Store
  • Adicione suporte para Safari Web Extensions ao Vimium e faça com que os devs do Vimari (atualmente eu) gerenciem os lançamentos para a App Store. Isso pode ser renomeado para Vimium se você quiser.
  • Se você não está interessado no suporte do Safari, ou deseja esperar para ver, o Vimari cria um novo fork da base de código do Vimium para construir uma porta compatível com o Safari, contribuindo com patches upstream onde possível e executando nossas próprias versões através a App Store
  • Vimari ramifica um novo fork do Vimium e apenas cria nossa própria base de código nova. Isso é essencialmente o que foi feito há muitos anos e seria a minha opção menos preferida.

@danielcompton Estou curioso para saber se a primeira ideia é possível ou não - os desenvolvedores podem carregar uma versão dev do Vimium para o Safari sem uma conta da Apple?

@danielcompton que bom ter você! Estou muito interessado no suporte do Safari. Das opções que você apresentou, a segunda é o objetivo. Eu gerencio os lançamentos para a loja Chrome e Firefox e posso fazer isso na App store (tenho uma conta de desenvolvedor ativa).

Por onde começamos?

Safari 14 foi lançado publicamente. Alguém tem problemas em aberto para os quais precisa de ajuda para levar adiante esse esforço?

Oi. Querendo saber se há algum progresso nesta frente.

Eu uso o Vimium no Chrome e adoraria tê-lo no Safari também.

Adoraria ver isso, o Vimium é um dos poucos motivos pelos quais ainda uso o Chrome. Adoraria mudar para o Safari e ter minha bateria de volta.

Oi. Estou me perguntando se há algum progresso nisso.

Estou esperando para usar o vimium no Safari.

Estou usando o Vimari perfeitamente no Safari no macOS Big Sur.

@philc @danielcompton existe algum progresso / roteiro? podemos ajudar de alguma forma?
Ame aquele vimium quer abraçar a fusão de vimari ❤️
Eu realmente gostaria de mudar para o safari pela velocidade absoluta, mas sem o comando T (Pesquisar nas guias abertas), estou perdido xD

@philc @danielcompton existe algum progresso / roteiro? podemos ajudar de alguma forma?
Ame aquele vimium quer abraçar a fusão de vimari ❤️
Eu realmente gostaria de mudar para o safari pela velocidade absoluta, mas sem o comando T (Pesquisar nas guias abertas), estou perdido xD

Também estou esperando o vimium para o Safari. Para alternar as guias abertas, talvez este fluxo de trabalho do Alfred possa ajudar: https://github.com/mandrigin/AlfredSwitchWindows

Esta página foi útil?
0 / 5 - 0 avaliações