Las extensiones de LibreOffice son complementos opcionales de terceros para la suite, que añaden funcionalidades adicionales. Bora Yarkın ha estado trabajando en una nueva extensión para LibreOffice Impress, así que escuchemos lo que tiene que decir al respecto…
De que se trata
La extensión te permite controlar una presentación de LibreOffice Impress desde tu teléfono o cualquier otro dispositivo con un navegador web moderno.
Al iniciar el control remoto, LibreOffice muestra un código QR. Escánialo con tu teléfono y la presentación comenzará desde la primera diapositiva. La interfaz del teléfono muestra entonces la diapositiva actual, las notas del presentador, el tiempo transcurrido y los controles de navegación.
Traté de que el proceso fuera lo más sencillo posible: sin una aplicación móvil aparte y sin códigos de emparejamiento manuales.
El control remoto se puede abrir desde el menú “Presentación” en la barra de menú superior de LibreOffice, el menú que se encuentra junto a “Archivo”, “Editar”, “Ver” y los demás menús principales.
Esto no debe confundirse con la pestaña «Presentación» dentro de la interfaz de usuario con pestañas de LibreOffice. La API de extensiones UNO de LibreOffice no me permite actualmente agregar comandos a esa pestaña integrada. Por lo tanto, al usar la interfaz con pestañas, los comandos del control remoto están disponibles en la pestaña «Extensiones».
La extensión ofrece actualmente varios modos de conexión:
- Red local: El teléfono se conecta directamente a la computadora en la que se ejecuta LibreOffice a través de su dirección IPv4 local. Este es el modo principal y el que he probado más a fondo.
- IPv6 directo: Funciona de manera similar, pero utiliza una conexión IPv6. Todavía está marcado como experimental porque mi conexión a Internet en casa es, por el momento, la única red IPv6 con la que puedo probarlo adecuadamente.
- Servidor de retransmisión: Un pequeño servicio en Python que puede alojarse en Linux o Windows. Es útil cuando el teléfono y la computadora se encuentran en redes diferentes o cuando las conexiones directas están bloqueadas por NAT de nivel de operador, cortafuegos u otras restricciones de red. También admite conexiones múltiples, por lo que una organización puede alojar un servidor de retransmisión en su propia infraestructura.
- LocalTunnel: Una alternativa experimental que crea una conexión saliente a través del servicio LocalTunnel. Considero que esta es una opción de último recurso cuando los otros métodos de conexión no están disponibles.
El paquete compatible del servidor de retransmisión viene incluido con la extensión. Se puede descargar o extraer directamente desde la ventana de Configuración remota seleccionando «Obtener servidor de retransmisión». El paquete incluye la documentación necesaria y las instrucciones de configuración.
Para instalar la extensión, descarga el archivo .oxt del sitio web de Extensiones de LibreOffice o de GitHub y ábrelo con LibreOffice. También se puede instalar manualmente a través de Herramientas > Extensiones. Después de la instalación, reinicia LibreOffice si se te solicita.
La extensión incluye traducciones a más de 100 idiomas y se adapta automáticamente al idioma de la interfaz de LibreOffice. El inglés y el turco son los dos idiomas que he revisado personalmente. Muchas de las otras traducciones se crearon con ChatGPT, por lo que no puedo garantizar su calidad y agradecería mucho que los hablantes nativos me ayudaran a corregirlas.

¿Por qué la creaste y cómo fue el proceso?
La inspiración original vino de Apple Keynote.
Cuando Keynote está instalado tanto en una Mac como en un iPhone, el teléfono se puede usar para controlar la presentación y, al mismo tiempo, mostrar las notas del presentador. Esa función cambió por completo la forma en que hago mis presentaciones.
Con el tiempo, mis diapositivas se volvieron más profesionales y con menos texto. En lugar de poner todo en la diapositiva, comencé a usar las notas del presentador casi como un teleprompter, con el texto que realmente planeaba decir. Esto ayudó a desviar la atención de la audiencia de leer la pantalla y volverla hacia mí.
Ese flujo de trabajo funcionó perfectamente durante mucho tiempo, pero nunca me gustó realmente Keynote en sí. No logré acostumbrarme a su interfaz, y la decisión de Apple de introducir funciones de pago fue la razón definitiva para que empezara a buscar una alternativa.
Ya existían varias soluciones posibles, pero ninguna de ellas me funcionó realmente.
LibreOffice contaba anteriormente con su propia aplicación móvil, Impress Remote, pero hace mucho tiempo que no se le da mantenimiento y ya no resulta práctica en muchos dispositivos y sistemas actuales.
Las plataformas de presentaciones basadas en navegador pueden ofrecer funciones de control remoto, pero no quería que mi flujo de trabajo principal de presentaciones dependiera de un servicio en línea. Además, no ofrecen la misma flexibilidad que una suite ofimática completa para escritorio.
Microsoft Office era otra opción posible, pero no me gusta la dirección actual de Microsoft, en particular la creciente integración de Copilot en todos sus productos.
OnlyOffice Desktop Editors es una buena alternativa y la utilicé durante un tiempo, pero encontré varios errores y, al final, necesitaba funciones que no ofrecía.
Eso me llevó a LibreOffice, que ahora me parece más útil y capaz que las otras suites de oficina que probé. Lo único que faltaba era la experiencia de presentación remota de la que me había acostumbrado con Keynote.
Así que decidí crearla yo mismo.
Trabajo principalmente en TI y estoy familiarizado con la programación, pero no me describiría como un desarrollador de software avanzado. Antes de comenzar este proyecto, no sabía casi nada sobre la API UNO de LibreOffice.
Empecé con ChatGPT. Definí por mi cuenta la arquitectura, las funciones, la interfaz de usuario y las restricciones -incluidos requisitos como que la localización fuera obligatoria- y utilicé la IA para que me ayudara a entender UNO e implementar el código. El resultado fue mucho mejor de lo que esperaba.
Al principio, la extensión era solo un proyecto personal. La primera versión era muy básica; la interfaz web ni siquiera tenía un botón de retroceso. No tenía intención de publicarla. Sin embargo, una vez que empezó a funcionar de manera confiable, me di cuenta de que otros usuarios de LibreOffice podrían querer tener la misma experiencia. Decidí tomarme el proyecto más en serio y convertirlo en una extensión completa, en lugar de algo que solo funcionara en mi propia computadora.
Eso significó agregar una interfaz para celular más pulida, configuraciones de conexión, generación de códigos QR, compatibilidad con IPv6, el servidor de retransmisión, compatibilidad con LocalTunnel, localización, documentación, manejo de errores y empaquetado.
Publicarla en el sitio web de Extensiones de LibreOffice fue mucho más fácil de lo que esperaba. Creé una cuenta, armé la página del proyecto, ingresé la información, subí el paquete y lo envié. Después de aproximadamente un día de revisión, la extensión ya estaba disponible públicamente.

¿Cómo se puede ayudar con las pruebas y el desarrollo futuro?
El código fuente y el sistema de seguimiento de incidencias están disponibles en GitHub. El repositorio incluye plantillas para informes de errores, solicitudes de funciones y solicitudes de incorporación de cambios.
Mi entorno principal de desarrollo y pruebas es macOS con un iPhone. También he probado la extensión en Windows y Linux, pero esas pruebas se realizaron en condiciones menos que ideales, incluyendo máquinas virtuales, sesiones de Escritorio Remoto y una instalación de Windows Server sin interfaz gráfica.
Por eso, sería especialmente importante realizar pruebas en sistemas de escritorio reales de Windows y Linux.
Las áreas en las que la ayuda de la comunidad sería más valiosa son:
- Probar diferentes versiones de LibreOffice
- Probar Windows, Linux y diferentes versiones de macOS
- Probar dispositivos Android y diferentes navegadores móviles
- Probar conexiones IPv6 entre redes verdaderamente separadas
- Probar el servidor de retransmisión en entornos reales y organizacionales
- Probar configuraciones inusuales de cortafuegos, VPN, NAT y redes de operadores
- Revisar y corregir traducciones
- Mejorar la documentación
- Reportar errores y sugerir funciones
- Aportar correcciones mediante solicitudes de incorporación de cambios
El modo IPv4 local se ha probado exhaustivamente en diferentes redes locales, proveedores de Internet y configuraciones de VPN. Los modos IPv6, servidor de retransmisión y LocalTunnel necesitan pruebas más amplias por parte de la comunidad antes de que pueda considerarlos plenamente comprobados.
Al reportar un problema de conexión, sería de gran ayuda incluir el sistema operativo, la versión de LibreOffice, el navegador, el tipo de teléfono, el modo de conexión seleccionado y la configuración básica de la red.
El proyecto comenzó porque yo mismo quería esta funcionalidad. Ahora me gustaría hacerla lo suficientemente confiable como para que otros usuarios de LibreOffice y organizaciones puedan usarla con confianza para sus propias presentaciones.

Artículo original (en inglés)
Ilustración: Sebastián Acosta Nieto (Colombia)
