Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Auto Extension FilesNew to Visual Studio Code? Get it now.
Auto Extension Files

Auto Extension Files

jorgetoledomoreno

| (0) | Free
Automatically adds a likely file extension when creating files without one.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Auto Extension Files

Español

Auto Extension Files añade automáticamente una extensión probable cuando creas un archivo sin extensión.

Ejemplos:

  • En un proyecto JavaScript, app se convierte en app.js.
  • En un proyecto Python, main se convierte en main.py.
  • En un proyecto Rust, lib se convierte en lib.rs.

La extensión intenta detectar el lenguaje del proyecto y evita que tengas que escribir la extensión cada vez.

Cómo funciona

Funciona de dos formas:

  1. Ejecuta el comando Auto Extension: New File desde la paleta de comandos o desde el menú contextual del Explorador.
  2. Crea un archivo normalmente desde el Explorador de VS Code. Si autoExtensionFiles.enableAutoRename está activado, los archivos sin extensión se renombran automáticamente.

La extensión elige la extensión usando este orden:

  1. Lenguaje del editor activo, si pertenece al mismo workspace.
  2. Extensión de código más común en el proyecto.
  3. Archivos marcadores como package.json, tsconfig.json, pyproject.toml, Cargo.toml, go.mod, composer.json, etc.
  4. Valor de autoExtensionFiles.defaultExtension.
  5. Si no encuentra nada, te pregunta qué extensión usar.

Instalación

Puedes instalar el archivo .vsix desde la terminal:

code --install-extension C:\Users\jorge\Documents\Codex\2026-06-12\como-configurar-vs-code-para-que\outputs\auto-extension-files\auto-extension-files-0.0.2.vsix

También puedes instalarlo desde VS Code:

  1. Abre VS Code.
  2. Ve a Extensions.
  3. Abre el menú de tres puntos.
  4. Elige Install from VSIX....
  5. Selecciona auto-extension-files-0.0.2.vsix.

Después de instalarla, reinicia VS Code si el comando no aparece inmediatamente.

Cómo probarla

Abre un proyecto JavaScript que tenga package.json y crea un archivo llamado:

app

La extensión debería convertirlo en:

app.js

En un proyecto Python con pyproject.toml o requirements.txt, main debería convertirse en main.py.

Configuración útil

Puedes configurar la extensión en settings.json:

{
  "autoExtensionFiles.enableAutoRename": true,
  "autoExtensionFiles.defaultExtension": "js",
  "autoExtensionFiles.preferActiveEditorLanguage": true
}

Cómo añadir más lenguajes

Si falta un lenguaje, añade una entrada en autoExtensionFiles.extensionByLanguage.

Ejemplo:

{
  "autoExtensionFiles.extensionByLanguage": {
    "javascript": "js",
    "typescript": "ts",
    "python": "py",
    "rust": "rs",
    "mi-lenguaje": "miex"
  }
}

La clave es el language id de VS Code y el valor es la extensión que quieres usar.

Ejemplo para un lenguaje personalizado:

{
  "autoExtensionFiles.extensionByLanguage": {
    "my-custom-language": "custom"
  }
}

Si quieres que un proyecto sin detección use siempre una extensión concreta:

{
  "autoExtensionFiles.defaultExtension": "js"
}

También puedes ajustar el peso de una extensión cuando la extensión intenta detectar el lenguaje dominante del proyecto:

{
  "autoExtensionFiles.extensionWeights": {
    "tsx": 20,
    "ts": 15,
    "js": 5
  }
}

Esto ayuda, por ejemplo, si un proyecto tiene muchos archivos .js generados pero tú quieres que los nuevos archivos sean .ts o .tsx.

Lenguajes cubiertos

Incluye una cobertura amplia para JavaScript/TypeScript, Python, Java, C/C++/C#, Go, Rust, PHP, Ruby, Swift, Kotlin, Dart, R, Julia, Lua, Perl/Raku, Elixir/Erlang/Gleam, Haskell, OCaml, Reason, ReScript, F#, Clojure, Lisp, Scheme, Racket, Zig, Nim, Crystal, D, Fortran, COBOL, Ada, Pascal, Scala, Groovy, MATLAB, SQL, Solidity, Move, Cairo, Terraform, Nix, Bicep, VHDL, Verilog/SystemVerilog, GLSL/HLSL/WGSL, Godot, Arduino, Vue/Svelte/Astro, HTML/CSS/Sass/Less/Stylus, Markdown/MDX, LaTeX, YAML/JSON/TOML/XML, Docker, Make, Bazel, CMake, Gherkin, Robot, WebAssembly y más.

Ninguna extensión puede cubrir literalmente todos los lenguajes existentes o futuros, pero esta extensión está pensada para ser ampliable desde configuración.

English

Auto Extension Files automatically adds a likely extension when you create a file without one.

Examples:

  • In a JavaScript project, app becomes app.js.
  • In a Python project, main becomes main.py.
  • In a Rust project, lib becomes lib.rs.

The extension tries to detect the project language so you do not have to type the extension every time.

How It Works

It works in two ways:

  1. Run Auto Extension: New File from the command palette or the Explorer context menu.
  2. Create a file normally from the VS Code Explorer. If autoExtensionFiles.enableAutoRename is enabled, extensionless files are renamed automatically.

The extension chooses an extension using this order:

  1. Active editor language, when it belongs to the same workspace.
  2. Most common code extension already present in the project.
  3. Project marker files such as package.json, tsconfig.json, pyproject.toml, Cargo.toml, go.mod, composer.json, and more.
  4. autoExtensionFiles.defaultExtension.
  5. If nothing matches, it asks you.

Installation

You can install the .vsix file from the terminal:

code --install-extension C:\Users\jorge\Documents\Codex\2026-06-12\como-configurar-vs-code-para-que\outputs\auto-extension-files\auto-extension-files-0.0.2.vsix

You can also install it from VS Code:

  1. Open VS Code.
  2. Go to Extensions.
  3. Open the three-dot menu.
  4. Choose Install from VSIX....
  5. Select auto-extension-files-0.0.2.vsix.

After installing it, restart VS Code if the command does not appear immediately.

How To Test It

Open a JavaScript project with a package.json file and create a file named:

app

The extension should rename it to:

app.js

In a Python project with pyproject.toml or requirements.txt, main should become main.py.

Useful Settings

You can configure the extension in settings.json:

{
  "autoExtensionFiles.enableAutoRename": true,
  "autoExtensionFiles.defaultExtension": "js",
  "autoExtensionFiles.preferActiveEditorLanguage": true
}

How To Add More Languages

If a language is missing, add an entry to autoExtensionFiles.extensionByLanguage.

Example:

{
  "autoExtensionFiles.extensionByLanguage": {
    "javascript": "js",
    "typescript": "ts",
    "python": "py",
    "rust": "rs",
    "my-language": "myext"
  }
}

The key is the VS Code language id, and the value is the extension you want to use.

Example for a custom language:

{
  "autoExtensionFiles.extensionByLanguage": {
    "my-custom-language": "custom"
  }
}

If you want undetected projects to always use a specific extension:

{
  "autoExtensionFiles.defaultExtension": "js"
}

You can also adjust extension weights when the extension tries to detect the dominant project language:

{
  "autoExtensionFiles.extensionWeights": {
    "tsx": 20,
    "ts": 15,
    "js": 5
  }
}

This is useful, for example, when a project has many generated .js files but you want new files to become .ts or .tsx.

Covered Languages

The extension includes broad coverage for JavaScript/TypeScript, Python, Java, C/C++/C#, Go, Rust, PHP, Ruby, Swift, Kotlin, Dart, R, Julia, Lua, Perl/Raku, Elixir/Erlang/Gleam, Haskell, OCaml, Reason, ReScript, F#, Clojure, Lisp, Scheme, Racket, Zig, Nim, Crystal, D, Fortran, COBOL, Ada, Pascal, Scala, Groovy, MATLAB, SQL, Solidity, Move, Cairo, Terraform, Nix, Bicep, VHDL, Verilog/SystemVerilog, GLSL/HLSL/WGSL, Godot, Arduino, Vue/Svelte/Astro, HTML/CSS/Sass/Less/Stylus, Markdown/MDX, LaTeX, YAML/JSON/TOML/XML, Docker, Make, Bazel, CMake, Gherkin, Robot, WebAssembly, and more.

No extension can literally cover every existing or future programming language, but this extension is designed to be expanded from settings.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft