9 votos

¿Por qué el valor de un campo de búsqueda de una aplicación aparece en el campo de búsqueda de otra aplicación?

En mi MacBook Pro he descubierto que varias aplicaciones parecen compartir el valor de un hallazgo. Por ejemplo, he buscado 'applestackexchange' en la barra de direcciones unificada de Safari, luego cambio a Xcode y hago clic en un campo Buscar. La primera palabra de mi búsqueda en Safari entonces aparece allí. iTerm2 y Sublime Text 2 también parecen participar en este intercambio.

Ejecutando la última versión de Mountain Lion en un MBP de 2012.

0 votos

Yo también me he dado cuenta. Probablemente sea un bug y la razón debe ser que utilizan el mismo buffer para el texto de búsqueda.

1 votos

Esto es muy molesto y me gustaría que hubiera una forma de desactivarlo en todo el sistema.

0 votos

apple.stackexchange.com/preguntas/440148/ proporciona una respuesta específica para iTerm2.

3voto

RandomEngy Puntos 6937

Lo he encontrado. Se llama FindScrap .

En la línea de comandos, introduzca:

defaults write <program> FindDialog_UsesFindScrap -bool NO

Dónde <program> es algo como com.barebones.bbedit .

(fuente: https://www.barebones.com/support/bbedit/ExpertPreferences.html#texts consultado en 20180203)

Si la aplicación que utilizas no lo soporta, puede que tengas que abrir una solicitud para que se implemente allí también. Los desarrolladores pueden elegir cómo I ple,ent clipboard manage,ent y automatización mediante el uso de Apple SDK y API o inventar su propio código para gestionar esto por lo que puede no ser "cookie cutter" cómo habilitar esto globalmente.

0 votos

¿Qué razón tienes para creer que esto funcionará con otros programas que no sean BBEdit?

0 votos

En primer lugar, porque ha afectado realmente a todas las aplicaciones en las que lo he observado. (Éstas se enumeran en mi exposición original y detallada del problema, en apple.stackexchange.com/questions/314359/ ) En segundo lugar, porque se trata de un ajuste a nivel del sistema operativo, y sólo <program> es específico de BBEdit

0 votos

¿en qué otras aplicaciones ha observado este defaults write ¿Funciona la línea? Sería muy sorprendido si el FindDialog_UsesFindScrap clave era no definido por la gente de BBEdit.

3voto

wch1zpink Puntos 11

MacOS utiliza 4 portapapeles diferentes: General, Regla, Fuente y Buscar

General es el portapapeles principal, obviamente. Desde la línea de comandos podemos copiar cosas a y desde los diferentes portapapeles. En Terminal.app, puedes leer todo sobre el pbcopy y pbpaste comandos con man pbcopy y man pbpaste

En resumen, cuando se invoca el comando Buscar en la mayoría de las aplicaciones, el texto que se inserta en el campo Buscar se coloca automáticamente en el portapapeles de Buscar. Por eso, al invocar el comando Buscar en una aplicación diferente, el campo Buscar se inserta automáticamente a partir de lo que hay actualmente en su portapapeles Buscar.

Pegue lo siguiente AppleScript en un nuevo script Editor.app documento. Al ejecutar el código, aparecerá un cuadro de diálogo que le dará la opción de elegir el contenido de texto o rtf de los cuatro portapapeles que desea ver

property theClipboards : {"general", "find", "font", "ruler"}

activate
set chosenClipboard to item 1 of (choose from list theClipboards ¬
    with title "Choose A Clipboard" with prompt ¬
    "Choose a clipboard to view its contents." OK button name ¬
    "View Chosen Clipboard" cancel button name "Cancel")

set theResult to displayClipboard(chosenClipboard)

activate
display dialog theResult buttons {"OK"} default button 1 ¬
    with title ("Contents of Pasteboard " & chosenClipboard) --giving up after 5

to displayClipboard(chosenClipboard)
    set theResult to (do shell script "pbpaste  -pboard " & chosenClipboard)
end displayClipboard

enter image description here


Ejecutando el siguiente comando en Terminal se borrará el contenido del portapapeles de Buscar. echo "" |pbcopy -pboard find


Posible solución:

Puede crear un nuevo Acción rápida de Automator y añadir un Ejecutar Shell script al flujo de trabajo y añada el siguiente código al comando Ejecutar Shell script mando.

echo "" |pbcopy -pboard find ;osascript -e 'tell application "System Events" to keystroke "f" using {command down}'

enter image description here

Guarda tu nuevo Acción rápida de Automator entonces en Preferencias del sistema asigne un atajo de teclado al nuevo Acción rápida de Automator . (He asignado F al nuevo atajo de teclado).

enter image description here

Ahora, en lugar de invocar Find con F El nuevo F borrará el contenido del portapapeles de Buscar y abrirá el campo de búsqueda de Buscar sin nada de búsquedas anteriores.

No es una solución perfecta, pero puede ayudar.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X