1 votos

Cuando toco dos veces la url de una imagen cuando uso Safari, el texto seleccionado incluye la extensión sólo si el nombre del archivo está en minúsculas. ¿Por qué?

Escribo muchas preguntas de SE y cuando incluyo varias imágenes suelo copiar/pegar sólo los nombres.

Acabo de empezar a usar Safari en mi nuevo MacBook después de usar Chrome en mi antiguo MacBook, y he descubierto que cuando hago doble toque para seleccionar el texto a veces agarra el .jpg extensión y a veces no. Por lo que sé, esto depende de si el nombre de archivo de imgur comienza con una letra mayúscula o minúscula.

¿Hay alguna manera de conseguir que este comportamiento de selección sea independiente de los casos?

Con Chrome la selección siempre se detiene antes del punto, pero Safari parece ser más "creativo" en cuanto a dónde termina la selección.

enter image description here

enter image description here

Pruébelo usted mismo.

i.stack.imgur.com/GESmi.png
i.stack.imgur.com/124RA.png
i.stack.imgur.com/eFGbq.jpg
i.stack.imgur.com/JOKd4.jpg  double tapping only selects "JOKd4" and not ".jpg"
i.stack.imgur.com/amD8b.jpg
i.stack.imgur.com/wbP9b.jpg
i.stack.imgur.com/bidkm.jpg
i.stack.imgur.com/bebR8.jpg

1 votos

No puedo ver un patrón. JOKd4 & seleccionan sólo el nombre, el resto seleccionan también la extensión. Lo mismo ocurre si los copio en TextEdit

0 votos

@Tetsujin interesante, Gracias. Acabo de probar esto en mi viejo portátil con MacOS antiguo y allí también pasa en TextEdit, pero no en Chrome. Así que parece que esto es específico del navegador y no de la versión del sistema operativo.

1 votos

Oops, error tipográfico en mi último comentario - debería ser "JOKd4 & bebR8 seleccionan el nombre solamente, el resto selecciona la extensión también "

2voto

ammarx Puntos 106

Se trata de una peculiaridad del Norma UAX #29 en los límites de segmentación de palabras de Unicode. Básicamente, este documento especifica las reglas estándar para determinar qué es una "palabra" en una cadena de texto Unicode. Cocoa Text (el subsistema de texto de MacOS) se ajusta a estas reglas cuando implementa funciones como "doble clic para seleccionar una palabra".

Utilizando uniseg una biblioteca de Python que implementa estas reglas, podemos ver los límites de las palabras de estas dos cadenas:

In [1]: list(uniseg.wordbreak.words("JOKd4.jpg"))                                                                                 
Out[1]: ['JOKd4', '.', 'jpg']

In [2]: list(uniseg.wordbreak.words("eFGbq.jpg"))                                                                                
Out[2]: ['eFGbq.jpg']

En el primer caso, las reglas de la UAX #29 especifican que hay tres palabras en el texto (lo que puedes comprobar tratando de seleccionar con un doble toque cada pieza una por una). En el segundo caso, especifica que sólo hay una palabra.

Esto debería ser un comportamiento estándar en todas las aplicaciones Cocoa, pero anulable por aplicaciones individuales si lo desean. Chrome, presumiblemente, implementa una anulación para el comportamiento de selección de texto/palabra más allá del defecto de Cocoa. No estoy seguro de si hay una manera de que los usuarios puedan anular este comportamiento sin acceso al código fuente.

0 votos

Vaya, ¡muchas gracias por localizar esto!

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