- Heynote es un scratchpad tipo búfer de texto persistente que mantiene en un solo lugar textos temporales dispersos durante el desarrollo, respuestas de API, notas de reuniones y listas de tareas
- La unidad de trabajo es el bloque; puedes crear un bloque nuevo con ⌘-Enter y seleccionar rápidamente solo el contenido del bloque actual con ⌘-A
- Aplica resaltado de sintaxis y formato automático según la configuración de lenguaje de cada bloque, como JavaScript, JSON o Markdown
- Los bloques Math procesan variables, funciones, conversiones de unidades e incluso conversiones de moneda, para que puedas continuar cálculos simples dentro del contexto
- Ofrece múltiples búferes de notas, organización por directorios, correspondencia con archivos, imágenes inline y funciones de anotación, con foco en reunir el espacio de trabajo temporal de los desarrolladores en una sola app
Scratchpad basado en bloques
- La estructura básica de Heynote es un gran búfer de texto persistente dividido en varios bloques
- Puedes crear un bloque nuevo con ⌘-Enter y, al presionar ⌘-A dentro de un bloque, se selecciona solo el contenido del bloque actual, no todo el documento
- Está pensado para pegar rápidamente materiales que no conviene dejar en otro lugar de forma temporal
- Borradores de mensajes de Slack que no quieres enviar por accidente
- Respuestas JSON de una API en la que estás trabajando
- Notas de reuniones
- Lista diaria de tareas
Funciones de bloques para código y documentación
- Cada bloque puede tener su propia configuración de lenguaje, como JavaScript, JSON o Markdown
- Según la configuración de lenguaje, se aplica resaltado de sintaxis y también se admite el formato automático por bloque
- Soporta varios lenguajes de programación, lo que permite trabajar con fragmentos de código y notas de documentación dentro del mismo búfer
Bloques Math para usar como calculadora
- Un bloque Math puede usarse como scratchpad de calculadora para cálculos simples
- Soporta variables, funciones y conversiones de unidades; las conversiones de unidades incluyen también conversiones de moneda
- Está pensado para hacer “cálculos de servilleta” rápidos dentro del flujo de notas
Múltiples búferes y organización de archivos
- Además del búfer Scratch predeterminado, puedes crear tantos búferes de notas como quieras
- Los principales atajos para trabajar con búferes son los siguientes
- ⌘-N: crear un nuevo búfer
- ⌘-S: mover el bloque actual a un nuevo búfer
- ⌘-P: cambiar rápidamente entre búferes
- Los búferes se pueden organizar en directorios y cada búfer corresponde a un archivo en el disco
Imágenes y anotaciones
- Heynote soporta imágenes inline
- Puedes pegar imágenes desde el portapapeles o arrastrar y soltar archivos de imagen en un búfer
- Puedes seleccionar y redimensionar imágenes dentro del editor, y también volver a colocar rápidamente una imagen en el portapapeles del sistema
- Con una herramienta ligera de dibujo integrada, puedes agregar anotaciones a mano alzada sobre las imágenes
- Una imagen anotada puede actualizarse como una nueva versión en el portapapeles con un solo clic o una tecla, para pegarla en otro lugar
Descarga
- La versión estable más reciente es 2.9.0
- Las descargas compatibles se ofrecen como Mac Universal, Mac Arm, Mac Intel, Windows, AppImage y Snap
- También se ofrece la versión beta 2.9.1-beta
- Puedes consultar todos los lanzamientos en All releases
1 comentarios
Opiniones de Hacker News
Realmente excelente. Es casi exactamente lo que esperaba de un scratchpad.
Si pudiera agregar una solicitud de funcionalidad, me gustaría que soportara un flujo “inverso”, donde los bloques nuevos se agreguen al principio de la página en vez de abajo. El scratchpad siempre se abre arriba y, con el tiempo, los bloques más viejos se “hunden” hacia abajo, de modo que lo más relevante queda arriba.
Esto encaja mejor con mi forma de pensar. Dicho eso, como mencionan otros en este hilo, también estoy a favor de ignorar la mayoría de estas solicitudes de funcionalidades y conservar la simplicidad de lo que ya crearon. Incluida mi propia solicitud.
Entiendo la idea “inversa”. Me pregunto si bastaría con que
C-Enterpudiera configurarse para insertar un bloque nuevo antes del bloque actual, y que Heynote, al iniciarse, ponga el cursor al inicio del búfer en lugar de al final como hace ahora.La UX ideal sería agregar un búfer nuevo arriba, pero con suficiente padding como para llenar la ventana y que no se vea el movimiento de los bloques anteriores mientras escribes.
Todavía no he descargado la app, pero quizá ya se comporte de forma parecida. Se ve bien y tengo ganas de probarla.
Probablemente pagaría por esto si tuviera: atajos de teclado de vi, que muestre la ubicación del archivo para poder moverlo o sincronizarlo/respaldarlo entre varios dispositivos, y orden inverso.
Está muy, muy bueno.
Se ve genial. Me gusta la idea de los bloques, así que voy a descargarlo y probarlo.
Como siempre, hay mucha charla sobre Electron, así que si todavía no lo viste, quería mencionar Tauri. Es una herramienta similar a Electron basada en Rust, y en lugar de Chromium usa el webview del sistema, lo que reduce bastante el tamaño del paquete y el uso de memoria.
Viendo el código, no parece haber muchísimo código específico de Electron, así que si te interesa probar Rust, quizá no sea tan difícil reemplazarlo. Una app de edición de video que estaba creando empezó con Electron y luego la cambié a Tauri a mitad de camino, y fue bastante bien.
No es una solicitud, puedes ignorarlo sin problema.
Después de probar otras herramientas multiplataforma para mobile tenía expectativas muy bajas, pero en la práctica trabajar con Electron fue muy cómodo y no me arrepiento de la elección. Casi no hubo bugs, el ecosistema es grande, y me gustó que fuera fácil automatizar builds para varias plataformas y actualizaciones automáticas.
Me encanta. Es simple y está implementado de forma sólida. Hace tiempo quería crear algo parecido; quizá haga un fork y juegue un poco con esto.
Ahora estaba usando algo similar en Obsidian, creando una nota nueva cada día y separando “bloques” con líneas horizontales de Markdown (
---), pero esto es mucho más limpio.La fortaleza de este enfoque es que hace que capturar sea extremadamente fácil. Creas un bloque nuevo y escribes de inmediato, sin preocuparte por dónde ponerlo ni cómo encaja en la estructura existente. Cuando te pones a pensar en eso, a veces pierdes la idea mientras buscas dónde colocarla.
La desventaja, por supuesto, es volver a encontrar las cosas. Estaría bueno poder poner etiquetas o títulos a los bloques y buscar por etiqueta/título. Más ambicioso aún, sería interesante experimentar con LLMs y embeddings para etiquetar, resumir, clasificar y agrupar bloques automáticamente.
Hay muchas direcciones posibles, pero también coincido con quienes dicen que no conviene agregar demasiadas funciones y perder la simplicidad que lo hace atractivo. También me da curiosidad cómo manejan el rendimiento cuando el búfer crece mucho.
Dicho eso, vi pequeños problemas de rendimiento al manejar bloques muy grandes en ciertos modos de lenguaje.
Acabo de descargarlo e instalarlo, y es realmente impresionante. Me gustó el concepto de bloques matemáticos, pero me tomó unos segundos descubrir cómo convertir un bloque nuevo en un bloque matemático.
El texto de arriba
⌘ + L Change block languageno me llevó de inmediato a pensar en “cambiar el tipo de bloque”. Estaría bueno ajustarlo un poco, por ejemplo:⌘ + L Change block language (Math, Markdown, etc.).Por lo demás, me parece un proyecto excelente que resuelve justo una necesidad concreta.
Me gusta. Es justo lo que necesitaba. Hasta ahora usaba para esto un grupo de WhatsApp en el que solo estoy yo
Mis solicitudes de funciones son: paquete para Arch, que los resultados matemáticos se incluyan en
buffer.txty en el contenido copiado después deCtrl+a, cambiar la fuente y el tema de colores, soporte de imágenes y medios en bloques Markdown, marcas de tiempo por bloque, recargar archivos y posibilidad de uso móvilEn particular, para los colores me gustaría que se mantuvieran mínimos como ahora, pero que en lugar de CSS personalizado se pudieran configurar solo algunos colores. Para pegar imágenes, me gustaría que fuera como en Markdown de VS Code: al insertar una imagen con
Ctrl+v, se inserta el Markdown y la imagen se guarda como archivo. Una vista previa de Markdown también estaría bien, aunque entiendo si consideran que queda fuera del alcanceLas marcas de tiempo me vendrían especialmente bien si se guardaran
createdAtyupdatedAten la línea debuffer.txtque tiene el símbolo de infinito, porque así podrían extraerse fácilmente congrepycut. Más abajo dijeron que están trabajando en recargar archivos para poder respaldarlos con Git o algo similar, y también espero eso con ganasCoincido en que estaría bueno que el resultado también quedara en
buffer.txt, pero por detalles de implementación parece más difícilEn cuanto a configurar fuentes y temas de color, por ahora me inclino por reducir la cantidad de opciones configurables, así que es muy probable que no lo agregue
Las marcas de tiempo por bloque están en la lista de pendientes, igual que la recarga de archivos. Lo móvil probablemente sea difícil
Eso también permitiría usar CSS llamativo en algunas notas
Es realmente, realmente bueno. Enseguida se ganó un lugar permanente en mi Dock
Tengo una petición por la que estaría dispuesto a pagar: me gustaría que se pudieran ejecutar bloques de código y generar salida. Suelo abrir la consola del navegador para probar JS, y sería fantástico poder hacerlo justo al lado de otras notas
Me recuerda mucho al org-mode de https://orgmode.org/. Me pregunto si hay planes de agregar funciones parecidas a org, como la evaluación de bloques de código
Personalmente no creo que vaya a dejar org-mode, pero estaría bueno tener algo que recomendarles, aunque sea como app independiente, a quienes son reacios a usar Emacs
Excelente. Para este tipo de uso siempre terminaba volviendo a TextEdit, pero ahora voy a probar Heynote y ver qué tal
Me gusta ver cosas así en HN, como en los viejos buenos tiempos. Me pregunto si hay planes de soportar atajos de vi
Ahora me pregunto si podría conseguir algo parecido con un plugin de Vim o hacerlo yo mismo. Si estuviera dentro de la terminal, tendría la ventaja de poder dejarlo en una sesión persistente de
tmuxy acceder de forma remotaTambién me gustaría recibir feedback :)
Repositorio de Heynote en GitHub: https://github.com/heyman/heynote
Tengo algunos comentarios para mejorar o aclarar cosas. No encontré el atajo para cambiar de lenguaje hasta pasar el mouse sobre el elemento de la barra de estado, así que debería haber una opción de menú que muestre el atajo
El cambio entre modo claro/oscuro y la comprobación de actualizaciones no suelen estar en la barra de estado en otras apps, así que parece mejor moverlos a configuración. También debería seguir por defecto el modo claro/oscuro del sistema, con la opción de sobrescribirlo por app si se quiere
Si no hay suficiente contenido para poner en la barra de estado, quizá convendría eliminarla por completo. Ahora se siente como si hubieran reunido varias cosas ahí para justificar la barra de estado
El branding verde está bien, pero la app tiene una personalidad bastante fuerte. Vale la pena pensar si la app debería tener una identidad tan marcada. Podrían considerar una paleta más neutra que encaje mejor con macOS, o varias opciones de color de acento que incluyan una neutra
427 MB es mucho. Por suerte no consume tanta memoria con documentos pequeños, pero el bundle es demasiado grande para algo de esta escala. Me pregunto por qué incluye ffmpeg, si realmente necesita GLES y si el framework base de Electron de verdad supera los 300 MB
Hay una opción de keymap, pero cuando borré el contenido inicial perdí el mapa de teclas real. Estaría bien tener una referencia de ayuda dentro de la app o, al menos, una página de documentación vinculada desde el menú de ayuda
También estaría bueno poder cambiar la fuente. Tampoco entiendo el modelo de guardado. Me pregunto dónde se almacenan los datos, si puedo controlarlo, si hace falta guardar manualmente o cada cuánto se persisten. Quisiera saber si se puede poner en almacenamiento en la nube para sincronizar entre dispositivos y, si ya lo hace, si se puede desactivar
Personalmente no me gusta que el ícono de la app incluya el nombre de la app. La mayoría de las apps no lo hacen, así que sugeriría un ícono más sutil
O también una opción para rastrear la hora de creación de cada bloque y mostrarla en pequeño en alguna parte de la UI del bloque. Tener fechas es muy útil cuando uno vuelve a buscar notas antiguas
Vi que alguien pidió pestañas, pero a mí me gustaría poder abrir varias ventanas