Kopiowanie sformatowanego tekstu ze strony internetowej do okna dialogowego wprowadzania Apple


8

Mam Applescript, który - uproszczony - wygląda następująco:

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

Jeden z użytkowników tego skryptu uruchamia Lion. Ilekroć próbuje skopiować / wkleić ciąg znaków do okna dialogowego wprowadzania, nie zadziała to, jeśli źródło kopii ma pewne formatowanie (np. Ciąg jest kopiowany ze strony internetowej). Wszystko działa dobrze pod Snow Leopard.

Wszelkie wskazówki, dlaczego tak się dzieje?


3
To wydaje się być nowym błędem w Lionie. Wydaje się, że problem dotyczy w szczególności kopiowania tekstu w dowolnym innym kolorze niż czysta biel lub czysta czerń.
joelseph

Czy możesz wybrać tekst i przeciągnąć go do okna dialogowego AppleScript? Zauważyłem, że działa to właściwie raz lub dwa, gdy Kopiowanie / Wklej nie powiodło się ... Ale nie wiem, czy będzie działać z AppleScript.
TheWellington

Odpowiedzi:


1

Znalazłem to samo - jeśli kopiuję / wklejam z TextEdit w trybie Rich Text, nie mogę wkleić w polu wejściowym. Jeśli zmienię tryb na zwykły tekst, działa dobrze.

Oto znaleziony przeze mnie Applecript . Działa poprzez konwersję schowka do zwykłego tekstu:

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

Musisz uczynić go skryptem wykonywalnym, a następnie powiązać ze skrótem klawiaturowym. Następnie za każdym razem, gdy kopiujesz sformatowany tekst, wykonaj skrót klawiaturowy, a następnie możesz wkleić tekst bez problemów.


1
Ponieważ linki do zewnętrznych stron często się psują, pomocne jest podsumowanie treści połączonej strony, a nie tylko opublikowanie linku.
Daniel


1

Próbowałem odtworzyć problem

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

ale przynajmniej na pierwszy rzut oka wydaje się, że działa dobrze. Na jaki konkretny problem natknąłeś się („nie działa” jest nieco szeroki)?


Aktualizacja

Problem został rozwiązany w OS X 10.8, właśnie dostałem maila od devbugs@apple.com:

14 września 2012 19:40 Zespół zgłaszający błędy programistów Apple:

Uważamy, że ten problem został rozwiązany w OS X 10.8 (Mountain Lion) GM Seed (kompilacja 12A269). Ta przedpremierowa wersja jest teraz dostępna w Mac App Store dla uprawnionych członków Mac Developer Program. Sprawdź w tej wersji i zaktualizuj raport o błędzie o wyniki.


1
Spróbuj skopiować i wkleić szary tekst (lub dowolny kolor inny niż czysta biel lub czerń). W takim przypadku „nie działa” oznacza, że ​​tekstu nie można wkleić w oknie dialogowym AppleScript.
joelseph,

Próbowałem tego ze sformatowanym tekstem z edytora AppleScript, TextEdit i kilku stron internetowych i nie napotkałem żadnych problemów. Czy mówimy tu o konkretnej stronie?
nohillside

1
Ciekawy. Wygląda na to, że niektóre inne kolory działają, na przykład niebieski kolor AppleScript dla poleceń, ale nie zielony kolor dla zmiennych lub odcienie szarości w odpowiedziach na tej stronie (15% biały) i komentarzach (20%) lub słowo „ ustaw ”lub słowo„ foo ”w skrypcie. Gdybyś mógł także spróbować, może sprawdzimy, czy jest to prawdziwy błąd, czy po prostu coś dziwnego dzieje się w naszych systemach. Znalazłem teraz garść innych kolorów, które działają, ale losowe ustawienie kolorów w TextEdit prawie zawsze powoduje, że wklejanie nie działa.
joelseph

W rzeczy samej. Wybranie tylko zielonej nazwy zmiennej z AppleScript Editor nie działa, zaznaczenie całej linii działa. Podniosłem identyfikator błędu # 10175210 na stronie bugreport.apple.com.
nohillside

1
Nie naprawiono w 10.7.2 :-(
nohillside

0

To trochę kłopot, ale wyobrażam sobie, że to działa: Skopiuj tekst i wklej go do czegoś takiego jak Notational Velocity, BBEdit, TextEdit lub jakiś inny procesor tekstu, który obsługuje tekst bez formatowania. Jeśli NV ma ustawiony zwykły tekst, po prostu skopiuj go ponownie i gotowe. W BBEdit i TextEdit są polecenia usuwania formatowania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.