Show HN: jnv: filtro interactivo de JSON con jq
(github.com/ynqa)-
jnv_jnv_ para explorar JSON
- jnv_jnv_ ofrece un visor interactivo de JSON y un editor de filtros
jq. - Está diseñado con inspiración en jid y jiq.
- jnv_jnv_ ofrece un visor interactivo de JSON y un editor de filtros
-
Funciones
- Visor interactivo de JSON y editor de filtros
jqcon resaltado de sintaxis JSON. - Puede recibir JSON desde la entrada estándar (stdin), archivos y URL.
- Soporta autocompletado de filtros.
- Tipos de filtro compatibles: Identity, Object Identifier-Index, Array Index.
- Proporciona mensajes de ayuda para evaluar filtros.
- Visor interactivo de JSON y editor de filtros
-
Cómo instalarlo
- Instalación con Homebrew:
brew install ynqa/tap/jnv - Instalación con Cargo:
- Requisito previo: automake
- Comando de instalación:
cargo install jnv
- jnv no requiere que el usuario instale
jqen el sistema, porque utiliza j9, un binding de Rust.
- Instalación con Homebrew:
-
Ejemplos
- Leer desde un archivo:
jnv data.json - Leer desde la entrada estándar:
cat data.json | jnv
- Leer desde un archivo:
-
Mapa de teclas
Ctrl + C: salir de jnvTab: autocompletar filtro jq- Teclas de flecha y combinaciones con
Ctrl: mover el cursor y borrar caracteres del filtro Enter: alternar expandir/contraer en el visor JSONCtrl + P/N: expandir/contraer todos los pliegues en el visor JSON
-
Uso
- Explorador de JSON y filtro interactivo usando jq.
- Ejemplo de uso:
jnv [OPTIONS] [INPUT] - Opciones:
- Especificar el modo de edición: "insert" o "overwrite"
- Ajustar el formato de visualización de JSON: cambiar el nivel de sangría
- Mostrar u ocultar pistas: si se muestran pistas para ofrecer sugerencias o guía al usuario
- Especificar la profundidad inicial de expansión: profundidad inicial de expansión de los nodos JSON
- Controlar la longitud de la lista de sugerencias: ajustar la longitud de la lista para que el usuario pueda elegir con más eficiencia
Opinión de GN⁺
- jnv_jnv_ es una herramienta que facilita explorar y filtrar datos JSON, especialmente útil para desarrolladores que trabajan con conjuntos de datos grandes.
- Esta herramienta ofrece la potencia de
jqcon una interfaz amigable, haciendo más eficiente el procesamiento de datos JSON. - jnv_jnv_ está implementado en Rust, por lo que puede ofrecer ventajas en rendimiento y estabilidad, y también tiene el beneficio de no requerir una instalación separada de
jqen el sistema. - Otras herramientas con funciones similares incluyen herramientas de prueba de API como Postman o Insomnia, pero están más enfocadas en pruebas de API y menos especializadas en exploración pura de JSON como jnv_jnv_.
- Al adoptar jnv_jnv_, conviene considerar qué tan intuitiva es la interfaz de usuario y las limitaciones de sus funciones de filtrado; si se necesita un procesamiento complejo de JSON, puede ser necesario aprender scripts de
jqpor separado.
1 comentarios
Comentarios en Hacker News
Muy genial, una pequeña observación:
Se ve realmente interesante; sin duda lo voy a revisar.
¡¡Está buenísimo!! Lo instalaré en cuanto tenga mi laptop en las manos.
¡Está realmente genial! Se ve muy parecido a jless.
A veces pienso que sería bueno poder buscar dentro de la salida JSON en el navegador o en el IDE.
Si usas Emacs, también existe jq-mode.
Está muy genial; algo que siempre me ha frustrado al usar jq es que no puedes ver qué datos vas a obtener hasta que haces la consulta sobre los datos.
Si usas Sublime Text, hay un plugin que hace posible eso.
Ojalá todo el mundo conociera la alternativa "fx".
Muy genial. No sé si es pedir demasiado, pero ¿podría adaptarse para que también funcione con OjG, que usa JSONPath en lugar de la sintaxis de jq?