He estado buscando una respuesta a esta pregunta por un tiempo, así que supongo que esto solo se puede resolver con un comando de consola.
Lo que quiero hacer es deshabilitar 'Reemplazo de texto' en todas partes en mi Mac. El truco es que tengo una biblioteca de reemplazos de texto que uso en mi iPhone (como ill > I'll
), y aparentemente está sincronizada con mi cuenta de iCloud. Como resultado, si hago cambios en un lugar, afecta a todos mis dispositivos en todas partes, por lo que la solución fácil de "eliminar todas las sustituciones de texto de su biblioteca de sustitución" no está disponible.
El reemplazo de texto al que me refiero específicamente es la opción que puede desactivar haciendo clic con el botón derecho en cualquier área de entrada de texto y luego seleccionando 'Sustituciones < Reemplazo de texto' (ver imagen).
Sé que puede deshabilitar este campo uno a la vez haciendo clic con el botón derecho en los campos y desmarcando 'Reemplazo de texto', pero está habilitado de forma predeterminada para cada entrada individual en cada campo para cada aplicación (incluido Internet completo y la búsqueda/dirección de mi navegador barra), y periódicamente se vuelve a habilitar en algunas entradas.
Ya he desactivado "Corregir la ortografía automáticamente" de las opciones de texto de mi sistema. (ver imagen)
Y todavía tengo que deshabilitar 'Reemplazo de texto' en cada campo o intentará corregir mi escritura con entradas en ese diccionario.
Utilizo las pestañas de iCloud, la transferencia y otras funciones de "Better Together" de Apple (y no quiero perder la capacidad de rastrear mis dispositivos con 'Buscar mi [dispositivo]'), así que no quiero desasociar mi cuenta de iCloud de mi computadora o dispositivos, pero estaría muy feliz si nunca tuviera que deshabilitar 'Reemplazo de texto' en un campo de entrada nuevamente.
¡Cualquier idea o sugerencia sería muy apreciada!
EDITAR: encontré https://apple.stackexchange.com/a/217387/172938 y https://apple.stackexchange.com/a/121553/172938 , los cuales tienen algunas referencias de consola:
defaults write -g WebAutomaticTextReplacementEnabled -bool true
desde el primer enlace (para habilitar 'Reemplazo de texto' en Safari).
defaults delete -g NSUserDictionaryReplacementItems
desde el segundo enlace (para eliminar el Diccionario de usuario como se ve en mi segunda imagen ).
Ambos pertenecen tangencialmente a mi problema, pero cada uno tiene el efecto opuesto que estoy buscando.
Muy tarde, pero
defaults write -g WebAutomaticTextReplacementEnabled -bool false
Deshabilitará el reemplazo de texto no solo en Safari sino en todas las demás aplicaciones que usan ese método de entrada (por ejemplo, Evernote).
Se requiere reiniciar (al menos a partir de macOS 10.13.6), y la IU de la marca de verificación de la barra de menú no cambiará visualmente dentro de cada aplicación. El cambio también afecta solo a las aplicaciones, y no a Spotlight.
sudo
.De alguna manera arruiné la base de datos de reemplazo de texto del teclado (arrastre y suelte una imewlconverter
plist convertida en la GUI).
Con más de 100k entradas, cualquier entrada se vuelve muy lenta (puedo sentir la latencia), también se ha sincronizado con iOS (la misma ID de iCloud) que no quiero como tengo iRime
.
Intenté eliminar manualmente todas las entradas (seleccionando todas) y hacer clic en -
pero no funcionó, todas las entradas reaparecen como fantasmas después de unos segundos o simplemente no funcionaron.
Deshabilitar la sincronización de iCloud Drive (Preferencias del sistema) y volver a intentarlo tampoco funcionó. NO importa (activar o desactivar las preferencias del sistema de sincronización).
Resultó ser: abrí Keyboards - Text Replacement
en iOS que todavía tenía la enorme lista de entradas en ese momento, la acción desencadenó una sincronización instantánea de iOS a macOS (¡de verdad!).
defaults delete -g NSUserDictionaryReplacementItems
no funcionó para mí en macOS 10.14.
Más tarde me di cuenta (gracias a find
y fd
), es posible eliminar todos los TextReplacements.db*
archivos en ~/Library/KeyboardServices
, abrir Keyboard - Text nuevamente para regenerar los archivos DB de reemplazo de texto, problema resuelto.
Los archivos deben ser eliminados y generados.
TextReplacements.db
TextReplacements.db-wal
TextReplacements.db-shm
Trabajó en macOS 10.14 y 10.15.
NOTA: Por último, pero no menos importante, haga una
Reset Keyboard Dictionary
en los dispositivos iOS con la enorme lista de entradas para evitar la sincronización con macOS.
IMPORTANTE : tenga en cuenta la sincronización de iCloud en varios dispositivos iOS / macOS, la sincronización puede ser instantánea, por lo que los elementos de reemplazo de texto pueden volver misteriosamente, verifique cada dispositivo y asegúrese de que no se envíen (sincronicen) a otros dispositivos.
Misión cumplida.
Hasta donde yo sé, todavía no hay una buena solución para este problema (a finales de 2018 y 10.14.1). Fue una de las primeras cosas que verifiqué cuando instalé Mojave y me decepcioné una vez más.
Creo que el problema es que la configuración de reemplazo de texto es muy granular, por ventana/pestaña. No se respetará ningún cambio global o por aplicación. (El comando de escritura predeterminado descrito anteriormente puede ayudar en algunas aplicaciones/contextos, pero definitivamente no en la mayoría). El reemplazo de texto está activado de forma predeterminada en cualquier ventana/pestaña nueva, con algunas excepciones extrañas. En las aplicaciones donde toda la acción ocurre en una ventana (por ejemplo, Mensajes), puede apagarlo y olvidarlo en gran medida, pero en las aplicaciones donde constantemente genera nuevas ventanas/pestañas, el reemplazo de texto es imposible de eliminar, si los tiene, los desencadenarás.
Encontré esta solución en la web, cito: https://attonblog.blogspot.com/2019/11/disable-text-replacement-on-safari-in-mojave.html
En conclusión:
Puede eliminar todas las configuraciones de reemplazo de texto en su Mac ejecutando el siguiente comando:
$ echo 'delete from ZTEXTREPLACEMENTENTRY;' | sqlite3 ~/Library/KeyboardServices/TextReplacements.db
$ defaults delete -g NSUserDictionaryReplacementItems
El reemplazo de texto ya no ocurrirá en macOS.
Es solo una eliminación, por lo que si agrega una configuración en el lado de iOS, deberá eliminar la configuración sincronizada nuevamente.
BolígrafoBen
J. Venator
bmd
2540625
2540625
Caí