Cómo mostrar la pantalla de tu teléfono Android en tu Mac

En un artículo anterior aprendimos a mostrar la pantalla de nuestro iPhone en el mac.

Esta misma necesidad nos puede surgir pero con un teléfono Android. El programa Quicktime no detecta a los teléfonos y dispositivos Android como fuentes de video por lo que necesitaremos otra aplicación como puede ser scrcpy.

¿Qué es scrcpy?

El paquete scrcpy es una herramienta que permite reflejar y controlar dispositivos Android desde un ordenador. Es ideal para realizar demostraciones en tiempo real, capturar la pantalla para tutoriales o pruebas, y mejorar la productividad cuando necesitas interactuar con tu dispositivo móvil sin tener que tocarlo. Además, es una solución ligera, sin necesidad de instalar aplicaciones en el teléfono, ya que utiliza ADB (Android Debug Bridge) para conectarse a tu dispositivo.

Su instalación es sencilla ya que se distribuye como un paquete de Homebrew.

Para instalar scrcpy simplemente deberemos ejecutar este comando de brew en la Terminal de MacOS:

brew install scrcpy

Una vez instalado para poder utilizarlo deberemos activar el modo de depuración por USB en nuestro teléfono Android. Esta opción está disponible dentro del menú de opciones para desarrolladores del teléfono.

Una vez activado este modo de depuración es necesario conectar el teléfono Android al Mac utilizando un cable USB. El teléfono preguntará si confías en el ordenador al que se ha conectado. Debemos responder que sí.

En la Terminal de Mac ejecutaremos el comando:

scrcpy

Aparecerá una nueva ventana con el contenido de nuestro teléfono y, además, si el teléfono está ejecutando una versión de Android moderna, también podremos escuchar el sonido del teléfono en nuestro Mac. De esta forma podremos compartir el contenido visual y auditivo de nuestro teléfono Android en videoconferencias y reuniones compartiendo la pantalla de nuestro Mac.

Puedes consultar más opciones y comandos de scrcpy en la página oficial del proyecto scrcpy.

Crear aventuras conversacionales con Inform7

Las aventuras conversacionales, también conocidas como juegos de texto interactivo, son un género de videojuegos que se originó en los primeros días de la informática. En estos juegos, los jugadores interactúan con un mundo virtual utilizando comandos escritos en lenguaje natural, lo que les permite explorar entornos, resolver acertijos y avanzar en la narrativa. Uno de los motores más populares para crear este tipo de experiencias es Inform, y en su versión más reciente, Inform7, se ha consolidado como una herramienta poderosa y accesible para desarrolladores, escritores y entusiastas del diseño de juegos narrativos.

Historia de Inform

El origen de Inform se remonta a principios de los años 90, cuando Graham Nelson creó el primer compilador de Inform como una herramienta para escribir juegos compatibles con el formato Z-machine, el mismo que fue usado para juegos clásicos de la compañía Infocom, como Zork. Este formato fue un estándar para las aventuras conversacionales, permitiendo que los juegos se ejecutaran en una amplia variedad de plataformas.

En 2006, Nelson lanzó Inform7, una nueva versión del motor, diseñada desde cero para hacer la creación de aventuras conversacionales más intuitiva y accesible. Mientras que las versiones anteriores requerían un conocimiento profundo de programación, Inform7 utiliza un lenguaje de diseño de juegos casi natural, lo que permite que los creadores describan mundos y reglas en inglés, similar a la forma en que escribirían una novela.

Características principales de Inform7

Inform7 se distingue por su enfoque basado en el lenguaje natural, lo que facilita la creación de mundos interactivos con reglas definidas sin necesidad de una programación complicada. Algunas de las características más destacadas de la herramienta son:

• Lenguaje natural: Los juegos se escriben en una sintaxis que se asemeja mucho al inglés común. Esto permite que los desarrolladores, incluso aquellos sin experiencia en programación, puedan diseñar escenarios, personajes y eventos de una manera intuitiva. Por ejemplo, una instrucción como «The kitchen is a room. The player is in the kitchen.» es perfectamente válida y crea un espaio jugable en el que el jugador puede interactuar.
• Un potente sistema de reglas: A pesar de su apariencia sencilla, Inform7 esconde un potente sistema de reglas y lógica que permite la creación de interacciones complejas. Se pueden definir comportamientos para objetos y personajes, establecer condiciones y consecuencias, y gestionar interacciones dinámicas entre elementos del juego.

• Soporte multiplataforma: Los juegos creados con Inform7 se exportan en formatos como Glulx o Z-machine, lo que permite que se ejecuten en una variedad de intérpretes y plataformas, desde ordenadores de escritorio hasta dispositivos móviles.

• Facilidad para la narrativa: Con un fuerte enfoque en la narrativa, Inform7 es ideal para escritores que desean explorar la creación de historias interactivas, permitiéndoles centrarse en la trama y los personajes en lugar de en los detalles técnicos de la programación.

Soporte para aventuras en español

Aunque Inform7 está diseñado principalmente para trabajar con el idioma inglés, existen extensiones para incluir soporte para la creación de aventuras conversacionales en español y otros idiomas. Esto ha sido posible gracias a la comunidad de desarrolladores y traductores que han trabajado en extensiones y adaptaciones que permiten que el motor entienda y genere texto en español.

La comunidad que se ha formado alrededor de Inform ha contribuido a expandir el uso de la plataforma en múltiples lenguas, enriqueciendo el panorama de aventuras conversacionales a nivel global.

¿Cómo jugar a una aventura creada con Inform7?

Para poder jugar a una aventura conversacional creada con Inform7 necesitamos un intérprete compatible con Inform como pueden ser Glulx o Frotz.

Estos intérpretes suelen utilizar la consola del sistema o la Terminal para mostrar el texto de las aventuras aunque hay versiones de GGlulx y Frotz para Windows, iPhone, Android o página Web.

Instalación del entorno de desarrollo

Actualmente Inform7 se distribuye como un IDE o entorno de desarrollo. Esta aplicación permite la creación y depuración de una aventura conversacional incluyendo la posibilidad de utilizar extensiones creadas por otros creadores o crear nuestras propias extensiones. Gracias a las extensiones Inform7 puede crecer para mostrar gráficos, reproducir sonidos o incluir otros idiomas como el español.

Puedes obtener la última versión de Inform7 desde la página del proyecto Inform7. La versión actual es la 10.1.2. Se distribuyen versiones de Inform7 para Mac, Inform7 para Windows e Inform7 para distintas versiones de Linux.

El IDE viene por defecto con soporte para idioma inglés. es necesario obtener las extensiones de Inform7 para español. En el momento de escribir este artículo la versión actual es la extensión para español R10.1.

Dentro del fichero comprimido en zip para las extensiones en español se incluye un fichero readme con instrucciones para instalar las extensiones de forma local.

Un simple ejemplo

Veamos un simple ejemplo de aventura en Inform7 utilizando las extensiones en español.

Abre el IDE de Inform7 y crea un proyecto de nueva aventura llamado Un simple ejemplo.

Cuando creas el proyecto en la ruta donde se guarda el proyecto encontrarás una carpeta llamada Un simple ejemplo.materials y el fichero Un simple ejemplo.inform.

Dentro de la carpeta Un simple ejemplo.materials debes copiar las carpetas Extensions e Inter que estaban dentro del zip de las extensiones de Inform para español. Con esto ya tenemos nuestro proyecto preparado para codificar la aventura.

En la zona de código del proyecto encontramos este código inicial:

"Un simple ejemplo" by Jonathan Chacón Barbero

Example Location is a room.

Borra ese código y escribe el siguiente en su lugar:

"Un simple ejemplo" by Jonathan Chacón Barbero (in spanish)

La sala is a room.
The description is "Estás en una sala donde no hay nada pero existe el potencial para que exista todo. Tu imaginación es el poder creador de la realidad que te rodea.".

Analizando el código

Analizando el código de este primer ejemplo encontramos lo siguiente:

• La primera línea es donde se declara el título y autor de la aventura. Además indicamos que utilizaremos la extensión para español de Inform7.

• Creamos el elemento La sala indicando que es una habitación.

• Indicamos que su descripción es un texto que describirá la sala cuando nuestro personaje esté en ella.

Si pulsamos el botón de Go para probar nuestra aventura nuestro personaje jugador aparecerá en la habitación y podremos realizar acciones como saltar, cantar o más cosas que se nos ocurran. Pero nuestra sala está vacía. Añadir un objeto a nuestra sala es tan sencillo como escribir el siguiente texto en el código de nuestra aventura:
El grano de arena is in la sala.
The description is «Un grano de arena que puede ser el comienzo de todo.».

Con esto hemos añadido un grano de arena a nuestra sala. Volvemos a usar la opción Go y podremos probar la aventura. Podemos coger el grano y aparecerá en nuestro inventario y podemos soltarlo para que aparezca de nuevo en la sala.

Compartiendo nuestra creación

Una vez terminada nuestra aventura podemos crear el fichero para que sea compartido con otras personas para que puedan jugar a la aventura de texto que hemos creado. Para ello debemos buscar en el menú Release la opción Release … que creará el fichero Un simple ejemplo.gblorb dentro de la carpeta Un simple ejemplo.materials/Release. Ese fichero gblorb es el que debemos compartir para que otras personas puedan jugar a nuestra aventura. El fichero se crea utilizando el formato Interactive fiction file format que es compatible con intérpretes como Glulxe o Frotz.

Ahora sólo queda ampliar la sala para crear un mundo más extenso donde nuestra imaginación y nuestra paciencia para aprender Inform7 serán el límite de nuestra aventura.

Cómo cambiar el comportamiento de las teclas de función en MacOS

En macOS, las teclas de función del teclado (F1, F2, F3, etc.) están configuradas por defecto para realizar acciones multimedia como ajustar el brillo, controlar el volumen o pausar o reproducir contenido. Estas acciones están diseñadas para facilitar el acceso rápido a funciones comunes, pero si eres desarrollador o necesitas utilizar las teclas de función para su uso en una aplicación que requiere de estas teclas para el uso de atajos de teclado este comportamiento se puede modificar dentro de los ajustes de MacOS.

¿Qué es la tecla “Fn”?

La tecla “Fn” es una tecla especial en los teclados de Mac que, cuando se presiona, convierte las teclas multimedia en teclas de función tradicionales. Por ejemplo, si presionas “Fn” + F1, se ejecutaría el comando F1 en lugar de reducir el brillo de la pantalla.

¿Cómo cambiar el comportamiento de las teclas de función?

Debemos ir a los ajustes de MacOS y allí buscar los ajustes de teclado. Allí encontraremos el botón Funciones rápidas de teclado… Al pulsar ese botón accederemos a la configuración de atajos de teclado para todo MacOS. En esa ventana debemos buscar, en la barra lateral, la categoría Teclas de función. Allí encontraremos una casilla de verificación titulada Usar teclas de función (F1, F2, etc.) como teclas de función estándar. Si la verificamos las teclas de función se podrán emplear como pulsaciones de las teclas F1, F2, F3…

Escribir potencias con MathML

En artículos anteriores hemos visto qué se puede hacer con MathML.

En este artículo aprenderemos a escribir potencias con MathML para poderlas mostrar en un contenido web.

En una expresión de operación de potencia debemos indicar la base y el exponente. La base es el número que se va a multiplicar por si mismo y el exponente indica el número de veces que se va a realizar la multiplicación.

En MathML para expresar la operación de 4 elevado a 2 se escribe así:

<math >
<msup>
<mn>4</mn>
<mn>2</mn>
</msup>
</math>

Y en el navegador aparece de la siguiente forma:

4 2

Para escribir la potencia utilizamos la etiqueta <msup> de MathML. Dentro de esta etiqueta la base se indica con <mi> y el exponente con <mn>.

Teorema de Pitágoras

Con lo que sabemos actualmente de MathML podemos escribir el teorema de Pitágoras en MathML de la siguiente forma:

<math>
<msup>
<mi>c1</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>c2</mi>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mi>h</mi>
<mn>2</mn>
</msup>
</math>

Y en el navegador se leería de la siguiente forma:

c1 2 + c2 2 = h 2

Entrevista en Mancomun podcast

El pasado 17 de octubre de 2024 se publicó un nuevo número del podcast de Mancomun. En este número del podcast me entrevistó Jorge Lama Varela para hablar un poco de mi, de tecnología abierta y accesibilidad.

¿Qué es Mancomun?

La Xunta de Galicia, de la mano de la Agencia para la Modernización Tecnológica de Galicia (AMTEGA), ponen a disposición de toda la comunidad gallega el portal Mancomún.

Este portal web tiene el objetivo de servir como portal de referencia y aglutinador de todas las iniciativas sobre software libre que se están desarrollando en Galicia desde los diferentes ámbitos; institucional, empresarial, educativo, voluntariado, etc.

Escuchar el podcast

Puedes escuchar el último número del podcast de Mancomun en su página web.