DataUtils Hub — Extensión para Visual Studio Code
Extensión oficial para Visual Studio Code que integra todas las capacidades de DataUtils Hub: extracción inteligente de identificadores desestructurados, validación matemática de documentos oficiales españoles, reconocimiento óptico de caracteres (OCR), generador visual de consultas SQL y constructor interactivo de expresiones regulares, todo directamente dentro de tu editor de código.
🚀 Características Principales
- Chasis / VIN (17 caracteres): Extrae números de bastidor cumpliendo la norma internacional (excluyendo caracteres prohibidos
I, O, Q), con algoritmo de ventana deslizante y desambiguación que separa VINs continuos encadenados sin espacios ni saltos de línea (ej. SJNF...SJNJ...).
- Matrículas Españolas: Extrae matrículas del sistema moderno (4 dígitos + 3 consonantes válidas:
[BCDFGHJKLMNPRSTVWXYZ]), normalizando automáticamente guiones y espacios.
- DNI, NIE y CIF Españoles (Validación Estricta y Corrección OCR):
- DNI/NIF: Validación algorítmica oficial mediante Módulo 23 (
TRWAGMYFPDXBNJZSQVHLCKE).
- NIE: Mapeo de prefijos extranjeros (
X $\rightarrow$ 0, Y $\rightarrow$ 1, Z $\rightarrow$ 2) y cálculo de dígito de control.
- CIF (Entidades y Empresas): Algoritmo de ponderación de posiciones pares e impares, reducciones de suma y verificación de dígito o letra de control (
JABCDEFGHI) según tipo de entidad.
- Recuperación ante fallos OCR: Corrige confusiones frecuentes entre caracteres (
O/0, I/1, L/1, S/5, B/8, Z/2).
- Expresiones Regulares Personalizadas: Permite introducir cualquier patrón regex y extraer coincidencias al instante.
- Formateo flexible:
- Formato de lista (un elemento por línea).
- Cláusula SQL
IN ('val1', 'val2', 'val3').
- Opción de eliminar duplicados.
2. 📷 Lector OCR (Tesseract.js)
- Procesa imágenes de capturas de pantalla, escaneos o documentos (
.png, .jpg, .jpeg, .webp).
- Soporte para idiomas Español (
spa), Inglés (eng) o Ambos (spa+eng).
- Arrastra y suelta imágenes directamente en la Webview, selecciónalas desde el explorador de archivos de VS Code o ejecuta el comando sobre cualquier archivo de imagen.
- Envía el texto reconocido directamente al editor o al Extractor de Datos con un solo clic.
3. 💾 Constructor de Queries SQL y Traductor a Laravel Eloquent
Generador visual interactivo que produce sentencias SQL nativas y código PHP para Laravel Query Builder / Eloquent con formateo y tipado automático (cadenas entre comillas, números, null, arrays PHP):
- Traductor SQL $\rightarrow$ Laravel (PHP): Conmuta con un solo clic entre la sentencia SQL nativa y el código equivalente en PHP con
DB::table(...) listo para producción (->select(), ->where(), ->whereIn(), ->insert(), ->update(), ->delete(), ->get()).
- Traductor Exprés de SQL a Laravel: Pega cualquier consulta SQL arbitraria (
SELECT, INSERT, UPDATE, DELETE) y tradúcela al instante a sintaxis fluent de Laravel.
- Acción Contextual: Selecciona cualquier consulta SQL en tu código y haz clic derecho en DataUtils Hub $\rightarrow$ Traducir SQL a Laravel Query Builder (PHP) para reemplazarla, copiarla o crear un archivo PHP.
- SELECT: Columnas dinámicas, origen de tabla o subconsulta recursiva con alias, condiciones
WHERE dinámicas (=, !=, LIKE, IN, NOT IN, <, >, etc.) con operadores lógicos AND/OR.
- INSERT: Pares dinámicos columna-valor con auto-detección de tipos.
- UPDATE: Cláusulas
SET múltiples y filtrado condicional WHERE.
- DELETE: Eliminación con condiciones seguras.
- SCORE (Ponderación): Generación de consultas con sumatorio de reglas condicionales
CASE WHEN ... THEN weight ELSE 0 END, filtrado por corte HAVING score >= [umbral] y ordenación ORDER BY score DESC.
- CONCAT (Migración Batch): Genera sentencias preparadas para scripting de actualizaciones y borrados masivos por ID.
4. 🧩 Constructor Visual de Expresiones Regulares (Regex Builder)
- Diseña expresiones regulares mediante bloques secuenciales sin necesidad de recordar sintaxis compleja:
- Clases: Letras
[A-Za-z], Dígitos [0-9], Alfanumérico [A-Za-z0-9], Espacios \s, Cualquier carácter ., Texto Fijo Literal con escape automático, Clase personalizada [...].
- Cuantificadores: Exactamente 1 vez, Opcional (
?), Cero o más (*), Uno o más (+), Cantidad exacta ({N}), Rango ({min, max}).
- Banderas: Inicio (
^), Fin ($), Insensible a mayúsculas (i), Búsqueda global (g).
- Sandbox en tiempo real: Prueba tu expresión al instante en un área de pruebas con resaltado visual interactivo de coincidencias.
- Botón "Usar en Extractor": Envía la expresión regular creada directamente al Extractor de Datos.
🕹️ Modos de Uso en Visual Studio Code
1. Panel Completo e Interactivo
Abre el panel en una pestaña de editor con todas las herramientas:
- Ejecuta el comando:
DataUtils Hub: Abrir Panel Completo en la paleta de comandos (Ctrl+Shift+P en Windows/Linux o Cmd+Shift+P en macOS).
2. Barra Lateral (Activity Bar)
- Haz clic en el icono de DataUtils Hub en la barra lateral izquierda de VS Code para tener acceso rápido a las utilidades mientras programas o editas archivos.
Selecciona cualquier texto en un archivo y haz clic derecho:
DataUtils Hub $\rightarrow$ Extraer Chasis (VIN) de la Selección
DataUtils Hub $\rightarrow$ Extraer Matrículas Españolas de la Selección
DataUtils Hub $\rightarrow$ Extraer y Validar DNI / NIE / CIF de la Selección
DataUtils Hub $\rightarrow$ Extraer con Expresión Regular Personalizada...
DataUtils Hub $\rightarrow$ Formatear Selección como Cláusula SQL IN ('a', 'b')
Al extraer, se te preguntará si deseas:
- Reemplazar el texto seleccionado en el archivo.
- Copiar los resultados al portapapeles.
- Abrir los resultados en un nuevo documento temporal.
- Generar una cláusula SQL
IN (...).
4. OCR desde el Explorador o Paleta
- Ejecuta
DataUtils: Extraer Texto de Imagen con OCR... para seleccionar un archivo o haz clic derecho sobre una imagen en el explorador.
📦 Desarrollo y Compilación
Si deseas probar o modificar la extensión:
# Entrar a la carpeta del plugin
cd D:\.dev\vscode-datautils-hub
# Instalar dependencias
npm install
# Compilar en modo producción
npm run build
# O compilar en modo desarrollo
npm run build:dev
Probar en VS Code
- Abre esta carpeta (
D:\.dev\vscode-datautils-hub) en Visual Studio Code.
- Pulsa F5 para lanzar una nueva ventana de VS Code (Extension Development Host) con el plugin activo.
📄 Licencia
MIT © Kilamper
| |