Descrição Overview Descripción
Quem aprendeu a programar nos anos 1980 conhece números de linha num sentido completamente diferente: em BASIC, cada linha de código precisava de um número explícito — `10 PRINT 'OLÁ'`, `20 GOTO 10`. Não era opcional; era a sintaxe da linguagem. O número de linha era o endereço da instrução, e `GOTO 100` significava literalmente saltar para a linha 100. Isso tornava a refatoração um pesadelo: inserir uma nova linha entre 10 e 20 exigia renumerar tudo, o que levou ao surgimento de convenções como usar múltiplos de 10 para deixar espaço. Editores modernos de BASIC chegaram a ter um comando `RENUM` que renumerava automaticamente o arquivo inteiro. Quando as linguagens estruturadas como C e Pascal substituíram o BASIC como linguagem de ensino nos anos 1990, os números de linha sumiram da sintaxe — mas continuaram indispensáveis como metadados de ferramenta.
Hoje os números de linha são onipresentes como sistema de referência. O formato de saída do `grep -n` inclui o número da linha para cada correspondência — é a diferença entre encontrar no arquivo e encontrar na linha 347 do arquivo. Mensagens de erro de compiladores e interpretadores como GCC, Python e rustc sempre incluem linha e coluna: `TypeError: unsupported operand type(s) for +: 'int' and 'str' (line 23)`. O formato de diff unificado do `git diff` usa cabeçalhos como `@@ -15,7 +15,9 @@` para indicar quais linhas foram alteradas — e revisores de pull request no GitHub e GitLab clicam em números de linha para adicionar comentários inline. Editores como VS Code e Vim têm comandos como `:23` que levam o cursor diretamente a uma linha específica.
Esta ferramenta resolve o problema inverso: você tem um bloco de texto sem numeração e precisa adicionar números para criar um documento referenciável. Casos de uso práticos: transformar uma lista de termos ou itens em formato numerado para incluir em documentação técnica; preparar pseudocódigo ou roteiro de apresentação com números de etapa; adicionar prefixos de linha a logs para criar referências cruzadas; criar exercícios ou provas com questões numeradas a partir de um rascunho. O separador e a largura de padding são configuráveis — `001.`, `1:`, `1 -` — dependendo do contexto onde o output será usado.
Anyone who learned programming in the 1980s knows line numbers in a completely different sense: in BASIC, every line of code required an explicit number — `10 PRINT 'HELLO'`, `20 GOTO 10`. It was not optional; it was the syntax of the language. The line number was the address of the instruction, and `GOTO 100` literally meant jump to line 100. This made refactoring a nightmare: inserting a new line between 10 and 20 required renumbering everything, which gave rise to conventions like using multiples of 10 to leave room. Modern BASIC editors even introduced a `RENUM` command that automatically renumbered the entire file. When structured languages like C and Pascal replaced BASIC as the teaching language in the 1990s, line numbers disappeared from syntax — but remained indispensable as tool metadata.
Today line numbers are ubiquitous as a reference system. The `grep -n` output format includes the line number for each match — the difference between found it in the file and found it at line 347 of the file. Error messages from compilers and interpreters like GCC, Python, and rustc always include line and column: `TypeError: unsupported operand type(s) for +: 'int' and 'str' (line 23)`. The unified diff format from `git diff` uses headers like `@@ -15,7 +15,9 @@` to indicate which lines changed — and pull request reviewers on GitHub and GitLab click on line numbers to add inline comments. Editors like VS Code and Vim have commands like `:23` that jump the cursor directly to a specific line.
This tool solves the inverse problem: you have a block of text without numbering and need to add numbers to create a referenceable document. Practical use cases: turning a list of terms or items into numbered format for technical documentation; preparing pseudocode or a presentation script with step numbers; adding line prefixes to log output to create cross-references; creating exercises or exams with numbered questions from a draft. The separator and padding width are configurable — `001.`, `1:`, `1 -` — depending on the context where the output will be used.
Quien aprendió a programar en los años ochenta conoce los números de línea en un sentido completamente diferente: en BASIC, cada línea de código necesitaba un número explícito — `10 PRINT 'HOLA'`, `20 GOTO 10`. No era opcional; era la sintaxis del lenguaje. El número de línea era la dirección de la instrucción, y `GOTO 100` significaba literalmente saltar a la línea 100. Esto hacía que refactorizar fuera una pesadilla: insertar una nueva línea entre 10 y 20 obligaba a renumerar todo, lo que dio lugar a convenciones como usar múltiplos de 10 para dejar espacio. Los editores modernos de BASIC llegaron a incorporar un comando `RENUM` que renumeraba automáticamente todo el archivo. Cuando los lenguajes estructurados como C y Pascal sustituyeron al BASIC como lenguaje de enseñanza en los años noventa, los números de línea desaparecieron de la sintaxis — pero siguieron siendo indispensables como metadatos de herramienta.
Hoy los números de línea son ubicuos como sistema de referencia. El formato de salida de `grep -n` incluye el número de línea de cada coincidencia — la diferencia entre lo encontré en el archivo y lo encontré en la línea 347 del archivo. Los mensajes de error de compiladores e intérpretes como GCC, Python y rustc siempre incluyen línea y columna: `TypeError: unsupported operand type(s) for +: 'int' and 'str' (line 23)`. El formato de diff unificado de `git diff` usa encabezados como `@@ -15,7 +15,9 @@` para indicar qué líneas cambiaron — y los revisores de pull request en GitHub y GitLab hacen clic en los números de línea para añadir comentarios inline. Editores como VS Code y Vim tienen comandos como `:23` que llevan el cursor directamente a una línea específica.
Esta herramienta resuelve el problema inverso: tienes un bloque de texto sin numerar y necesitas añadir números para crear un documento referenciable. Casos de uso prácticos: convertir una lista de términos o ítems a formato numerado para documentación técnica; preparar pseudocódigo o guión de presentación con números de paso; añadir prefijos de línea a logs para crear referencias cruzadas; crear ejercicios o exámenes con preguntas numeradas a partir de un borrador. El separador y el ancho de relleno son configurables — `001.`, `1:`, `1 -` — según el contexto en que se usará el resultado.
Detalhamento técnico
Pontos frequentes
- Para que serve esta ferramenta?: Ela roda 100% no seu navegador: útil para validar, formatar ou converter dados no dia a dia de desenvolvimento.
- Meus dados são enviados a algum servidor?: O processamento é feito localmente via JavaScript. Não armazenamos o conteúdo que você cola nas caixas de texto.
- Posso usar em produção ou para dados reais?: Use por sua conta e risco. Para segredos (senhas, tokens), prefira ambientes controlados e políticas da sua empresa. E lembre sempre de revisar os conteúdos gerados. Nunca confie cegamente nas coisas que vê na internet.
Trecho para testar
- Há também o bloco "Exemplo de Código" com o trecho completo; use esse texto rápido para colar nos campos e validar: Exemplo — a b → 001: a 002: b (com início 1 e largura 3)
Technical deep dive
Common questions summarized
- What is this tool for?: It runs fully in your browser: useful to validate, format, or convert data in everyday development.
- Are my inputs sent to a server?: Processing happens locally with JavaScript. We do not store what you paste into the text areas.
- Can I use this for real production data?: Use at your own risk. For secrets (passwords, tokens), prefer controlled environments and your company policies. And always review the generated contents. Never trust blindly things you see on the internet.
Sample payload to try
- See also the larger "Code Snippets" sample; paste this excerpt to try locally: Sample — a b → 001: a 002: b (com início 1 e largura 3)
Detalle técnico
Ideas claras antes de usar la herramienta
- ¿Para qué sirve esta herramienta?: Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.
- ¿Se envían mis datos a algún servidor?: El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.
- ¿Puedo usarlo con datos reales en producción?: Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.
Fragmento corto para probar
- Debajo aparece también el ejemplo largo en "Fragmentos de Código"; pega esta versión corta: Ejemplo — a b → 001: a 002: b (com início 1 e largura 3)
Guia da ferramenta Tool guide Guía de la herramienta
-
O objeto tratado Texto multilinha.
-
O que a ferramenta faz Prefixa cada linha com um número sequencial, separador configurável e opcional preenchimento com zeros (001, 002, …).
-
Por que usar Referenciar trechos em code review, alinhar com mensagens de erro que citam número de linha, formatar logs colados.
-
What you are working with Multi-line text.
-
What the tool does Prefixes each line with a sequential number, configurable separator, and optional zero padding (001, 002, …).
-
Why use it Reference snippets in review, align with error messages that cite line numbers, format pasted logs.
-
Con qué trabajas Texto multilínea.
-
Qué hace la herramienta Antepone a cada línea un número secuencial, separador configurable y relleno con ceros opcional (001, 002, …).
-
Por qué usarla Referenciar fragmentos en revisión, alinear con mensajes de error que citan número de línea, formatear logs pegados.
Exemplo de Código Code Snippets Fragmentos de Código
a
b → 001: a
002: b (com início 1 e largura 3)
a
b → 001: a
002: b (com início 1 e largura 3)
a
b → 001: a
002: b (com início 1 e largura 3)
Exemplo Sample Ejemplo
a
b → 001: a
002: b (com início 1 e largura 3)
Perguntas frequentes FAQ Preguntas frecuentes
Para que serve esta ferramenta?
What is this tool for?
¿Para qué sirve esta herramienta?
Ela roda 100% no seu navegador: útil para validar, formatar ou converter dados no dia a dia de desenvolvimento.
It runs fully in your browser: useful to validate, format, or convert data in everyday development.
Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.
Meus dados são enviados a algum servidor?
Are my inputs sent to a server?
¿Se envían mis datos a algún servidor?
O processamento é feito localmente via JavaScript. Não armazenamos o conteúdo que você cola nas caixas de texto.
Processing happens locally with JavaScript. We do not store what you paste into the text areas.
El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.
Posso usar em produção ou para dados reais?
Can I use this for real production data?
¿Puedo usarlo con datos reales en producción?
Use por sua conta e risco. Para segredos (senhas, tokens), prefira ambientes controlados e políticas da sua empresa. E lembre sempre de revisar os conteúdos gerados. Nunca confie cegamente nas coisas que vê na internet.
Use at your own risk. For secrets (passwords, tokens), prefer controlled environments and your company policies. And always review the generated contents. Never trust blindly things you see on the internet.
Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.