Copiando texto formatado de uma página da web para um diálogo de entrada do Applescript


8

Eu tenho um Applescript que - simplificado - fica assim:

...
display dialog "foo" default answer ""
...

Um dos usuários desse script executa o Lion. Sempre que ele tenta copiar / colar uma string na caixa de diálogo de entrada, isso não funcionará se a origem da cópia tiver alguma formatação (por exemplo, a string é copiada de uma página da web). Tudo funciona bem no Snow Leopard.

Alguma dica de por que isso acontece?


3
Este parece ser um novo bug no Lion. Parece que o problema está especificamente na cópia de texto de qualquer cor que não seja branco puro ou preto puro.
Joelseph

Você pode selecionar o txt e arrastá-lo para a caixa de diálogo AppleScript? Vi esse trabalho corretamente uma ou duas vezes, em que Copiar / Colar falhou ... Mas não sei se ele funcionará com o AppleScript.
TheWellington

Respostas:


1

Eu encontrei a mesma coisa - se eu copiar / colar do TextEdit no modo Rich Text, não poderei colar no campo de entrada. Se eu mudar o modo para texto sem formatação, ele funcionará bem.

Aqui está um Applescript que eu achei que funcionou para mim. Ele funciona convertendo a área de transferência em texto sem formatação:

try
  set the clipboard to string of (the clipboard as record)
on error errMsg
  display dialog errMsg
end try

Você precisa torná-lo um script executável e vinculá-lo a um atalho de teclado. Depois disso, sempre que você copiar algum texto formatado, execute o atalho do teclado e cole o texto sem problemas.


11
Como os links para sites externos geralmente quebram, é útil resumir o conteúdo do site vinculado e não apenas postar um link.
Daniel

1
set variable_name to (the clipboard as text)

1

Eu tentei reproduzir o problema com

on run
    set dialogResult to display dialog "foo" default answer ""
    set newText to text returned of dialogResult
    display dialog "Text entered: " & newText
end run

mas pelo menos à primeira vista, parece estar funcionando bem. Em qual problema específico você se deparou ("não funcionará" é um pouco amplo)?


Atualizar

O problema foi corrigido no OS X 10.8, recebi um e-mail de devbugs@apple.com:

14 de setembro de 2012 às 19:40 Equipe de relatórios de erros do desenvolvedor da Apple:

Acreditamos que esse problema foi resolvido na semente GM do OS X 10.8 (Mountain Lion) (Build 12A269). Esta versão de pré-lançamento já está disponível na Mac App Store para membros qualificados do Mac Developer Program. Verifique com esta versão e atualize seu relatório de erros com os resultados.


11
Tente copiar e colar texto em cinza (ou qualquer outra cor que não seja branco ou preto puro). Nesse caso, "não funcionará" significa que o texto não pode ser colado na caixa de diálogo AppleScript.
Joelseph

Eu tentei com texto formatado no editor AppleScript, no TextEdit e em vários sites e não tive nenhum problema. Estamos falando de um site específico aqui?
nohillside

11
Interessante. Parece que outras cores funcionam, como a cor azul do AppleScript para comandos, mas não a cor verde das variáveis ​​ou os tons de cinza nas respostas desta página (15% em branco) e comentários (20%), ou a palavra " defina "ou a palavra" foo "no seu script. Se você puder experimentá-los também, talvez possamos ver se é um bug real ou apenas temos algo estranho acontecendo em nossos sistemas. Agora encontrei várias outras cores que funcionam, mas a configuração aleatória de cores no TextEdit quase sempre resulta em colar sem funcionar.
Joelseph

De fato. A seleção de apenas um nome de variável verde no AppleScript Editor não funciona, a seleção de toda a linha funciona. Aumentei o ID de bug # 10175210 em bugreport.apple.com.
nohillside

11
Não corrigido com 10.7.2 :-(
nohillside

0

Isso é meio complicado, mas eu imagino que funcione: copie o texto e cole-o em algo como Notational Velocity, BBEdit, TextEdit ou algum outro processador de texto que suporte texto sem formatação. Se você tiver NV definido como texto sem formatação, basta copiá-lo novamente e pronto. No BBEdit e no TextEdit, existem comandos para remover a formatação.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.