Mensajes sobre el tema: teclado de usuario

Blog en español


Publicado el por

Atajos en la HP Prime

Algunos atajos para la HP Prime

El “user keyboard” en la HP Prime nos permite grans flexibilidad en la configuración de nuestra calculadora. Los que habíamos usado la HP50g y la HP41c estábamos acostumbrados a esta posibilidad. No recuerdo ahora si la HP42s permitía también la configuración del teclado entero, o por el contrario sólo las teclas de función. Esto último, aunque útil, es algo totalmente diferente y que muchas HP han tenido.

A no ser que seas un estudiante con muchos campos nuevos que cubrir, cambiando cada día según las lecciones, habrá algunas funciones que utilices con mucha frecuencia y que posiblemente quieras automatizar. Yo tengo mi HP41CL completamente configurada a mi gusto - por algo es la calculadora a la que vuelvo siempre que quiero hacer algo rápido. Mientras otras me son útiles, esta es la que tiene todo lo que quiero en la punta de los dedos. Y ahora quiero hacer alga parecido con la HP PRime

El procedimiento de asignación de teclas está explicado en la página 516 del manual de usuario. Este manual no viene “impreso” con la calculadora, sino en el disco adjunto. Si no sabes dónde está, no te preocupes: lo puedes sacar del menú de ayuda en el emulador para Windows de la HP Prime. De él se desprende que sólo se puede utilizar para que devuelva un texto con la presión de la tecla deseada. Si se hace cualquier otra cosa (por ejemplo, devolver una función, nos devuelve Error 4 Syntax error, al chequear el programa.

Hay que escribir programas cortos para cada una de las teclas que hay que asignar. No te preocupes: es facilísimo, y hay “templates” (patrones) que nos ayudan a hacerlo, desde la tecla de “templates” en la pantalla de programas.

He creado un programa llamado “keys” donde guardo todas las definiciones de teclas que utilizo. Ponerlas en más sitios es una receta para tener un lío cuando se quiera cambiar la configuración. Mejor todas juntitas. Sólo con crear estos programitas y activando el teclado de usuario (ya sea para una sóla vez o en permanente) es suficiente para habilitar las teclas asignadas (Tengo que comprobar si es posible restringir el ámbito de actuación de estas asignaciones, metiendo las definiciones en los programas de las apps, para que sea sólo válido para esa app).

screenshot.30La sintaxis es muy sencilla, y, como dije antes, se puede tomar desde el menú de templates en la página de programas, como se puede ver en la foto de al lado. Utilizo un montón las funciones de porcentaje por mi trabajo, y comparativamente poco o nada las trigonométricas, por lo que he asignado las funciones %, %CHANGE() y %TOTAL() (que ya existen en la Prime) a las teclas SIN, COS y TAN respectivamente:

KEY K_Sin()

BEGIN

RETURN “%”;

END;

 

KEY K_Cos()

BEGIN

RETURN “%CHANGE()”;

END;

 

KEY K_Tan()

BEGIN

RETURN “%TOTAL()”;

END;

¿Qué hace esto? Simpelente la calculadora escribe lo que está entre comillas en la posición del cursor.

Atanción: podemos también retrogradar las combinaciones de teclas con shift, alpha y shift alpha, cambiando ligeramente el template:

K_ es la tecla principal

KS_ es para la tecla con shift

KA_ es para las alfanumericas

KSA_ es para las alfanumericas con shift

El código de cada tecla se puede encontrar en la página 518 del manual.

¿Y como funciona? El resto de la discusión asume que el método de entrada de datos es RPN.

Imaginemos que queremos calcular 25% de 235. Escribimos 235, enter, 25, SIN, se añade un “%” al 25, pulsamos enter, y ya tenemos el resultado. Fijémonos que no tuvimos que separar el % del número - pero tampoco chocaba a la vista.

Ahora esto otro: queremos ver el porcentaje de cambio entre 235 y 200. Pulsamos 235, enter, 200, COS, y esto es lo que se ve en la pantalla:

235

200%CHANGE()

Esto sí que es feo. Por supuesto que podemos pulsar enter después del 200, después COS, y después enter otra vez. ¡Pero ya es una tecla de más! Igual pasa si ponemos un espacio antes del COS

Aunque resulte feo, lo de arriba SI funciona.

Y como funciona así, no metería yo un espacio dentro del programa de asignación de tecla. Todavía nos puede causar un error en otro sitio.

Leer mensaje completo