|
||
|
#81
|
||||
|
||||
|
Recuerdo que comentaste lo de los signos que descubriste, me puedes volver a decir cómo lo haces? Ya no me acuerdo.
Bueno lo primero que tengo que decir es que me parece que por algo tan poco importante es mucho esfuerzo y además va a ralentizar mucho la tarea. Pero bueno reconozco que lo de la importancia es subjetivo y que a lo mejor consigues que la tarea acabe siendo razonablemente rápida. Además me interesa el tema y tengo que reconocer que me ha picado: 1- Para ver si empieza un texto podemos utilizar regex. Si no me equivoco de signo seria así: "^_" Con esto le decimos: cualquier caracter ( se indica con "_") que este al ppo del texto (se indica con "^" si no me equivoco) 2- Para detectar el caracter después de un punto, exclamación, etc: "! _|? _|. _" Verás que he metido un espacio entre el signo y el caracter. Vale ya sabemos cómo detectar la presencia de lo que queremos reemplazar. Puede ser que el código no sea correcto, no soy un entendido en regex pero la idea esta bien creo y funcionará. Te toca a ti mirar y comprobar que el código este correcto. Recuerda que tienes un enlace a regex que puse en el primer post. Ahora toca la parte de saber por que caracter lo tenemos que reemplazar. Maneras que se me ocurren: 1- Con acciones de Tasker: mediante un FOR vamos comparando letra a letra y sustituyendo por mayuscula. Algo asi: IF e=e THEN E. Aquí tendríamos que tener en cuenta además las tildes por si la frase empieza por una palabra con vocal acentuada como en "¿Vienes? Última oportunidad". 2- Hacer lo mismo pero con Javascript usando la accion correspondiente de script. Sería igual pero al procesar las variables con javascript, según nos indico Maid450 la cosa alrededor de 50 veces más rápido. Te tocaría estudiarte el tutorial de Maid sobre Javascript. 3- Utilizar la opción que nos brinda Autovoice de sustituir en %avcomm ( esta en advanced/replacements)lo que le indiquemos y que encuentre coincidencia. Creo que podemos usar regex en esta opción asi que genial! Como supongo que Autovoice utiliza Javascript o parecido para esto conseguimos la rápidez de estos lenguajes pero sin enfangarnos en tener que programarlo nosotros. Eso si el parametro sería larguiiiisimo: ^d=D, ^e=E,^f=F, etc.... 4- Está es todavía más experimental: se trata de mediante Regex meter en una variable la letra que viene después de ?,! o l oque sea. Hasta aquí es igual que los anteriores. La diferencia viene en que averiguemos el código que tiene esa letra. Me explico. Por lo poco que se en UTF-8 etc, cada caracter tiene un código, incluso los saltos de linea, espacios etc. Pues bien supongo que el caracter de e minuscula estará relacionado con el de E mayuscula. Digo yo !! Por que tampoco lo se a ciencia cierta. Asi que podríamos hacer un ejecutar consola que cogiera el codigo del caracter y lo convirtiera al de la su correpondiente en mayuscula. El resultado lo tendremos en una variable que luego podremos reemplazar en nuestro texto. Resumiendo este método pinta muy bien porque no tenemos que ir comparando pero... No se como ni si se puede mediante un script que nos meta en una variable el código de un caracter. Tampoco se si a partir de ese código se puede "calcular" el código de su correspondiente en mayuscular Lo que si que he comprobado es que en los script se puede utilizar el código de un caracter. Como te dije es un bonito berenjenal lo que quieres hacer. P.D: Emiegna no puedes ser como todos y preguntar cosas del tipo cómo activar el GPS cuando tal o como desactivar el 3g cuando llego a casa!!?? ( es broma ;) )
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
|
|
|
#82
|
||||
|
||||
|
Pues agradezco mucho las ideas que me has aportado. Ahora que comentas lo del regex del primer post, recuerdo ahora que en su momento vi lo que comentas. Parece mentira, yo que me pego horas leyendo y buscando aqui y aca, y me he saltado lo mas esencial, ainnns...
Bueno, me pongo manos a la obra con tus ideas. Se me estan ocurriendo ideas ahora. Y me está entusiasmando la idea de lograrlo. Y sin duda, prioritario es que no ralentice la tarea... bueno, tareas; porque me estoy haciendo ahora otro perfil de "notas" con AutoVoice para cuando voy conduciendo en el trabajo. Y bueno, si las notas que dicte quedan correctamente escritas pues mejor. Ya luego las paso a mi app de notas y listos. Pero bueno, eso ya veremos. No te entiendo lo de los signos de puntuación (.,?!). A ver, con el perfil de enviar sms yo digo lo siguiente por ejemplo: "mensaje a Antonio escribir Antonio coma vete a tomar por saco punto te parece bien interrogación adiós exclamación exclamación exclamación". Aparece una escena con el nombre del contacto (Antonio) y el texto del mensaje dictado: "antonio, vete a tomar por saco. te parece bien? adiós!!!" (sin mayúsculas, pero con los signos de puntuación). Al mismo tiempo me pregunta si deseo enviar un mensaje a Antonio con el siguiente texto: Bla, bla, bla. Digo "aceptar" (o "cancelar") y se envia el sms. Finalmente, popup y voz con "mensaje enviado". Y bueno, lo de preguntar cosas algo mas complicadas para hacer es quizas porque tengo la mala costumbre de pensar en crear algo olvidandome al principio de Tasker, para luego intentar darle forma con Tasker. Quizas confie demasiado en Tasker
|
|
#83
|
||||
|
||||
|
Pues mira vas a tener suerte y todo y poder seguir confiando en tasker. La acción convertir variable te puede hacer convertir de kilobytes a bites, de kilos a gramos, pero también de minúsculas a mayúsculas e incluso de minúscula a mayúscula la primera letra del texto.
Lo que quiero saber es como metes la coma el punto etc al decir. Como consigues que aparezca te parece bien? y no te aparece bien escribir interrogación. Supongo que usas sustituir con autovoice no?
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
Última edición por mlesir Día 05/10/14 a las 08:06:56. |
|
#84
|
||||
|
||||
|
1.- Un millon de gracias, mlesir!! Supongo que nunca vi el listado completo que existe en la accion convertir variable y daba por hecho que exclusivamente todos los casos se referian a unidades de medida. Increíble, mlesir. Mas facil imposible! Que bueno, Tasker...
![]() 2.- Vaya, pues ya me dejas un poco "pillao" con lo de los signos de puntuación. Daba por hecho que seria algo propio de AutoVoice, y me alegraba de ello. Te digo (y es mas, acabo de probarlo), en el perfil que tengo para enviar SMS, yo digo por ejemplo: "Juan coma vete al carajo exclamación exclamación exclamación", y ocurre lo siguiente: en la escena, en un cuadro de texto con la variable %Textomensaje, el contenido que se muestra es: "juan, vete al carajo!!!" Y la acción "decir" dice la frase omitiendo la expresión "coma" y haciendo una pausa entre "juan" y "vete". Es mas, si digo "Hola interrogación", la escena muestra "hola?" y se escucha "hola?" con entonacion de pregunta, no de afirmación. Pensando en este asunto, que ya insisto me dejas "pillao", hace tiempo (y dando por hecho que habría que crear una tarea para los signos de puntuación) cree un perfil con AV cuyo contexto era un estado de AV Recognize como evento con palabras como "punto|coma|interrogación|arroba". Y como tarea (pensando y viendo por ahi) 4 acciones: Establecer variable (punto coma arroba etc), separar variable, establecer variable (. , @ etc), separar variable. Pues bien, el punto, la coma, la interrogación y la exclamación funcionaban bien, pero otros signos de puntuación, como arroba, etc, nunca me funcionaron. Dándole vueltas pensé que quizá los que funcionaban bien no lo hacian gracias a ese perfil. Sino por otra razón que desconozco. Total, probé. Eliminé el perfil, la tarea, el contenido de las variables y las variables, y guardé cambios. Y no sé porque, pero yo digo "punto" y sale "." de todos modos. Vamos, que no dependia del perfil aquel que hice. Y tampoco, que yo sepa, tengo configurado nada "raro" en Tasker o AV. Ni reemplazar, ni nada. Supongo que ya has probado a decir "hola punto", "hola coma", "hola interrogación", "hola exclamación". Estos son los que me funcionan a mi. Y curiosamente son los signos de puntuación que mas se usan. Incluso, en el caso de la interrogación y la exclamación son los de cierre, no los que abren la interrogación o la exclamación. Es por esta razón que entiendo debe ser algo de AV. ¿Quizás la ultima actualización? Ni idea... |
|
#85
|
||||
|
||||
|
Probado y funciona!
Pues para mi que no es AV sino Google search. De hecho comprobado también que en goole search funciona. Bueno pues mira algo bueno para compensar los pitiditos cada 5 segundos que le han metido.
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
|
#86
|
||||
|
||||
|
Menos mal!! Ya me estaba emparanoiando. Que si tenia un virus, que si mi movil estaba poseido, o yo que sé. Me alegro que te vaya bien. A mi muy de mucho en mucho me falla, y en lugar de un "?" cuando digo interrogación, me sale "interrogación". Creo que si paro unas decimas de segundo tras decir "punto", "coma", etc para continuar con la frase funciona correctamente.
¿Pitidos? ¿Con AV Continuous activado? Stream to mute ---> Media A mi ya no me pita nunca. Aqui ando haciendo pruebas con Convertir Variable (la primera letra de la palabra a mayúscula) para cuando empieza una frase, tras interrogacion, tras un punto y tras exclamacion. Pero de momento na de na. En Convertir Variable (con la primera letra) pretendo condicionarlo (if) si %Textomensaje ~ (también he probado con =) ^_ O . _ O ? _ O ! _ Pero si meto estas condiciones no convierte. Solo convierte sin if. Es decir, solo convierte la primera letra de la primera frase. Por ejemplo: "Hola. adios. hasta luego". Solo "Hola". Por cierto, ¿Has probado a desactivar google search? |
|
#87
|
||||
|
||||
|
Gracias eniegma lo del mute lo se solo que para mi app puede pasar que el canal q quieres utilizar sea justo el q tienes q mutear pq por ahí suena el sonido. A ver no es tan molesto para diez segundos dado que suena cada 5 pero si pretendes por ejemplo tener mas rato AV continuo puede ser algo insoportable.
Desactivar google search? no te entiendo. Creo que no me explique suficiente. Con la opción primera letra no necesitas poner if. El automáticamente te coge la primera letra de un texto y te la pasa a mayúscula. Luego tienes que buscar mediante regex los caracteres de que coinciden con que les precede un punto, cierre de exclamación o cierre de interrogación, y le sigue un espacio. Todos los caracteres que coinciden con ese criterio se meten en otra vez en una segunda convertir variable. Tienes que utilizar "buscar y reemplazar variable ".
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
|
#88
|
||||
|
||||
|
Lo del Google Search, olvidalo. Es otra cagada mía. Y efectivamente yo tb creo que es lo que tu dices, los signos de puntuación dependen de Google Search. Estaría bien poder usar la acción "buscar y reemplazar" para los signos de puntuación. De hecho se puede. Por ejemplo un "abrir interrogación" por "¿", pero el problema es que a continuación se añade un espacio, quedando la frase escrita en lugar de "¿Estás" por "¿ Estas". Es decir, entre el signo y la letra "E" existirá un espacio. Y no creo que pueda evitarse eso. En fin.
Y con respecto a las mayúsculas tras un punto, interrogación o exclamacion con la acción "convertir variable", creo que no es posible, pues si se cumple la condicion lo que haría tan solo la función es sustituir la primera letra de la frase (contenida en mi caso en una variable %Textomensaje), pero no las siguientes. Es decir, y como ejemplo, una frase quedaría siempre así: "Hola, como estás? yo bien. ta luego lucar". Creo que va a ser mas complicado de lo que creo. Pero estoy convencido que se puede hacer. |
|
#89
|
||||
|
||||
|
Por cierto, eso no es cosa de Autovoice, porque yo no tengo instalado el Autovoice y me va bien. Tampoco creo que sea nada relacionado con Google Search, no tiene nada que ver con las búsquedas. Tiene relación con el sistema de reconocimiento de voz, que probablemente sea algo interno de Android. Tengo un Android 4.2 puro (Google Nexus 4) y uso el teclado estándar de Android. Ese teclado tiene un botoncito con el dibujo de un micrófono, y ahí se activa el dictado por voz. De esa forma dicto textos para Whatsapp, para correo electrónico o cualquier otra cosa. Perdón por el rollo porque esto no tiene nada que ver con Tasker ni con Autovoice, pero quería agradecer el descubrimiento, que me resulta muy útil.
__________________
Firmado: Caravantes, miembro del equipo que promueve el Subforo de Tasker
|
|
#90
|
||||
|
||||
|
Que curiosidad ya, joé. Yo, sin embargo, tengo una version anterior del SO, 4.1.2. Y no uso el teclado de Android. Yo que sé.
Por cierto, mlesir; sobre el asunto de mayúsculas tras un punto, una interrogación y una exclamación, creo que es facil la solución: con replacements en AV Recogniced. Creo (con la boca chica) que lo estoy resolviendo. Os lo pongo si queda resuelto. Aunque de momento por mucho que leo y le doy vueltas al regex en Wikipedia no doy con el apartado de las mayusculas al inicio de una frase. Ni espacio, ni "_", ni "^". Lo saco por mis huev..., y os lo pongo pa quien interese. |
|
#91
|
||||
|
||||
|
Bueno, creo que ya está resuelto. Mañana intento hacer las pruebas definitivas y lo cuelgo.
|
|
#92
|
||||
|
||||
|
Bueno, llevo ya tiempo probando el perfil y de momento no me he equivocado en nada. Creo
![]() Dadles las gracias a mlesir, no a mi. Esto funciona por su "culpa" Os pongo parte del perfil y os explico luego. Perfil: Av_Sms (164) Estado: AutoVoice Recognized [ Configuración:Event Behaviour: true Command: "^mensaje a (?<contacto>.+) escribir (?<textomensaje>.+)$ (regex)" Replacements: . a=. A,. á=. A,? a=? A,! a=! A,? á=? A,! á=! A,. b=. B,? b=? B,! b=! B,. c=. C,? c=? C,! c=! C,. d=. D,? d=? D,! d=! D,. e=. E,. é=. E,? e=? E,! e=! E,? é=? E,! é=! E,. f=. F,? f=? F,! f=! F,. g=. G,? g=? G,! g=! G,. h=. H,? h=? H,! h=! H,. i=. I,. í=. I,? i=? I,! i=! I,? í=? I,! í=! I,. j=. J,? j=? J,! j=! J,. k=. K,? k=? K,! k=! K,. l=. L,? l=? L,! l=! L,. m=. M,? m=? M,! m=! M,. n=. N,? n=? N,! n=! N,. ñ=. Ñ,? ñ=? Ñ,! ñ=! Ñ,. o=. O,. ó=. O,? o=? O,! o=! O,? ó=? O,! ó=! O,. p=. P,? p=? P,! p=! P,. q=. Q,? q=? Q,! q=! Q,. r=. R,? r=? R,! r=! R,. s=. S,? s=? S,! s=! S,. t=. T,? t=? T,! t=! T,. u=. U,. ú=. U,? u=? U,! u=! U,? ú=? U,! ú=! U,. v=. V,? v=? V,! v=! V,. w=. W,? w=? W,! w=! W,. x=. X,? x=? X,! x=! X,. y=. Y,? y=? Y,! y=! Y,. z=. Z,? z=? Z,! z=! Z ] Entrada: AvSms (162) A1: Establecer variable [ Nombre:%Contacto A:%contacto Calcular:Apagado Añadir:Apagado ] A2: Establecer variable [ Nombre:%Textomensaje A:%textomensaje Calcular:Apagado Añadir:Apagado ] A3: Convertir Variable [ Nombre:%Textomensaje Función:To Upper Case First Almacenar Resultado en: ] El contexto. Reemplazar minúsculas por mayúsculas tras un punto, una interrogación (cierre) y una exclamación (cierre), sin olvidarnos de las tildes en las vocales. Yo, porque yo soy asi (ea), no pongo tildes en las vocales cuando estas son mayúsculas. Quien quiera las tildes, que las añada en "replacements" ![]() Tarea (parte de la tarea de este perfil). Las dos primeras acciones son para poder trabajar con esas variables en otras tareas. Y la ultima accion (A3) convierte en mayúsculas la primera letra de la frase o frases que lleve el texto. Solo la primera letra de la primera frase, de todo el texto. Si el texto tiene dos frases unidas por un punto y seguido, una interrogación (cierre) o una exclamacion (cierre) la conversion de la primera letra en mayúsculas de la segunda frase y sucesivas frases se realiza por "replacements". Es decir, la A3 en el siguiente ejemplo convierte la "h" de "hola" en "H". Yo digo "hola" y el texto muestra "Hola". Sin embargo en el siguiente ejemplo la "a" de "adios" se convierte en "Adios" por "replacements". Por tanto, "Hola (aqui trabaja A3). "Adios" (aqui trabaja "replacements"). El ejemplo es "Hola. Adios". Como siempre, muchas gracias mlesir Última edición por emiegna Día 08/10/14 a las 13:34:34. |
|
#93
|
||||
|
||||
|
Bueno.... elegante no podemos decir q sea pero mientras funcione q es de lo q se trata!
A este respecto notas mucha ralentización?
__________________
Fdo: Mlesir. Miembro del equipo que promueve el foro y el recopilatorio de Tasker http://www.htcmania.com/forumdisplay.php?f=969
|
|
#94
|
||||
|
||||
|
Ninguna. Responde exactamente igual que antes. En un segundo en el registro de ejecucion. Se podria meter el contenido de "replacements" en una variable. Aunque ahora la fea seria la variable, eso si jajaja.
Lo que tengo es algunos problemas con "interrogación" ---> "?". A veces no pone el signo, sino la palabra. Y no es porque yo sea andaluz Porque creo decirlo bien clarito. Si no se añadiese un espacio, como automaticamente se asigna, lo añadiria a "replacements". ¿Se podria hacer algo para evitar el espacio que añade (ej. "hola ?"=mal, "hola? "= bien). Mirando en expresiones regulares no veo nada...
|
|
#95
|
||||
|
||||
|
Bueno, otra cosa resuelta. Ya no hay problemas con "interrogación", ni "exclamación". Pensando con el bulto redondo que tengo sobre mis hombros se me ocurrió "quiero engañar, o algo parecido, a AutoVoice... ". A ver, todo tiene una explicacion, y seguro que el engañado soy yo
, o algo parecido... Sea como fuere, la solucion es la siguiente. Esto puede dar juego... En "replacements" todo lo que metamos, en principio debe tener la siguiente forma: X=Y,A=B. Es decir, comienza si espacio y termina sin espacio y a continuación una coma (,) para sin añadir espacio poner otro reemplazo. Pues bien, eso no es cierto. Yo puedo hacer esto: "X=Y, A=B". Aqui, entre "X=Y," y "A=B" existe un espacio y el reemplazo se comporta de otra forma. Mueve caracteres. Por tanto, si yo pongo: "(espacio)interrogación=?" (el signo va a continuación del signo "=", sin espacio) lo que estoy haciendo es decirle a AV que "atrase" el signo "?". Posible pregunta, ¿No estará trabajando la "interrogación" de Google Search? Pues no. Bien comprobado, pues he probado con palabras como "antonio" para ser sustituido por "?", y con "pepe" para el caso de la exclamación. Ej. "hola antonio"="Hola?" |
|
#96
|
||||
|
||||
|
¡ Por fin! Ya tenemos ok Google en cualquier pantalla, también en español
![]() http://www.elandroidelibre.com/2014/...-pantalla.html
__________________
|
|
#98
|
||||
|
||||
|
Yo me he descargado el apk en mi 4.4.3 y se instaló sin problemas, aunque aún no lo pude probar porque acabo de salir del Bernabéu
__________________
|
|
#99
|
||||
|
||||
|
Yo he vuelto a la versión anterior. Después de instalar, al configurar lo de ok google en todas las pantallas, daba error y se cerraba...
__________________
|
|
|
|
#100
|
||||
|
||||
|
A mí no se me cierra, pero no me reconoce los Ok Google para entrenar el teléfono y no lo puedo usar. Tampoco me reconoce el OK Google desde la aplicación de búsqueda como sí hacía la versión anterior. Supongo que este apk es sólo para android 5
__________________
Última edición por z3us Día 04/11/14 a las 23:52:04. |
![]() |
Estás aquí
|
||||||
|
||||||