ForHosting KIT · Utilidades de desarrollo

Contar líneas de código: código, comentarios y vacías

Sepa cuánto de un archivo es código de verdad: la función de muestra da 6 líneas, de las que 4 son código, 1 comentario y 1 en blanco, según las reglas de comentario del lenguaje que usted elija. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Idioma
Javascript
Obtiene
Total de líneas
6
Líneas en blanco
1
Líneas de comentario
1
Líneas de código
4

Mida un fragmento o archivo fuente completo con las reglas de comentarios propias de su lenguaje de programación. El contador asigna cada línea física a una sola categoría: vacía, comentario o código, y también devuelve el total. Reconoce comentarios de línea y de bloque habituales, ignora los marcadores que aparecen dentro de cadenas entrecomilladas y considera código toda línea que combine código y comentario. Así obtiene resultados repetibles para informes, revisiones, migraciones y automatizaciones.

Elija el lenguaje y conserve el texto fuente

Envíe el código exactamente como aparece y seleccione su lenguaje en la lista admitida. Esta elección importa porque los mismos caracteres significan cosas distintas: la almohadilla inicia comentarios en Python y shell, dos barras lo hacen en JavaScript y Java, dos guiones en SQL y HTML usa un marcador emparejado. El contador aplica la tabla elegida, sin adivinar por el nombre del archivo ni por su contenido.

Las líneas pueden estar separadas por LF, CRLF o retorno de carro. Una nueva línea final genera una línea física vacía y se cuenta como tal; una cadena vacía representa igualmente una línea vacía. No recorte el texto ni elimine comentarios si desea medirlos.

Si el lenguaje no figura en la lista, recibirá un error de entrada en lugar de una clasificación genérica engañosa.

Interprete la clasificación de cada línea

Cada línea física pertenece una sola vez a una categoría excluyente. Una línea con espacios o tabulaciones únicamente está vacía, salvo que se encuentre dentro de un comentario de bloque abierto. Una línea que solo contiene un comentario cuenta como comentario.

Si contiene cualquier elemento de código, cuenta como código aunque incluya también un comentario final o intercalado. Así, las tres cifras siempre suman el total. Los comentarios de bloque permanecen activos hasta su cierre; si hay código antes de abrirlos o después de cerrarlos, la línea es código.

El analizador reconoce comillas simples, dobles, invertidas y escapes con barra inversa. Por ello, una URL con dos barras o una cadena con una almohadilla siguen siendo código. Se cuentan líneas físicas, no sentencias: varias sentencias en una línea producen una línea de código y una sentencia repartida puede producir varias.

Use los totales con un criterio constante

La respuesta contiene el lenguaje normalizado y los campos de líneas totales, vacías, de comentario y de código. Puede comprobarla sumando las tres categorías y comparando el resultado con el total. Use las líneas de código como indicio aproximado del volumen, los comentarios como contexto documental y las vacías como contexto de formato, nunca como medida directa de productividad o calidad.

Los archivos generados, las dependencias, las pruebas y el estilo compacto pueden alterar mucho las cifras. Para un repositorio, determine primero qué archivos incluye, procese cada uno con el lenguaje correcto y agregue resultados bajo una política documentada. El cálculo no busca archivos, no infiere extensiones ni usa red, reloj o azar.

Preparar un inventario del repositorio

Clasifique archivos fuente y agregue totales coherentes de código, comentarios y líneas vacías para un informe interno.

Estimar el alcance de una migración

Compare el volumen físico de componentes seleccionados antes de planificar un cambio de lenguaje o framework.

Seguir cambios en código generado

Registre categorías deterministas y detecte variaciones inesperadas en el volumen de código o comentarios.

¿Cuánto cuesta un recuento?

La experiencia del navegador ejecuta localmente la misma lógica determinista.

¿Una línea con código y comentario final cuenta dos veces?

No. Cuenta una vez como línea de código, por lo que todas las categorías son excluyentes.

¿Los marcadores dentro de cadenas se interpretan como comentarios?

No. Los marcadores presentes en cadenas entrecomilladas reconocidas se consideran código.

¿Cómo se cuentan los comentarios de bloque multilínea?

Las líneas que solo pertenecen al bloque cuentan como comentarios; una línea que además contiene código cuenta como código.

¿Detecta el lenguaje de programación por sí solo?

No. Usted elige el lenguaje de la lista y se aplican sus reglas de comentario. Nunca lo adivina por el nombre del archivo ni por el contenido, así que el mismo texto siempre da el mismo recuento y un fragmento ambiguo no se juzga con reglas ajenas.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/dev2/count-lines-of-code

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/dev2/count-lines-of-code \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"function add(a, b) {\n  // Return the sum\n  return a + b;\n}\n","language":"javascript"}'
{
  "text": "function add(a, b) {\n  // Return the sum\n  return a + b;\n}\n",
  "language": "javascript"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev2.count_lines_of_code",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Use los totales con un criterio constante

Solo examina el texto suministrado, de modo que entradas idénticas generan el mismo JSON y las exclusiones del proyecto siguen bajo su control.

¿Qué ocurre si el lenguaje es desconocido?

La capacidad devuelve un error invalid_input que indica que el lenguaje no se reconoce, sin adivinar reglas.

Ver la documentación completa del KIT →