¿Cómo puedo excluir un directorio de la pestaña "Explorar" del código de Visual Studio?

269

Estoy tratando de excluir varias carpetas en la pestaña "Explorar" en Visual Studio Code. Para hacer eso, he agregado el siguiente jsconfig.json a la raíz de mi proyecto:

{
    "compilerOptions": {
        "target": "ES6"
    },
    "exclude": [
        "node_modules"
    ]
}

Pero la carpeta "node_modules" todavía está visible en el árbol de directorios. ¿Qué estoy haciendo mal? ¿Hay más opciones?

Andrey
fuente
Ver también stackoverflow.com/questions/31639563/…
mikemaccana
Ahora esto tiene una GUI! Mira mi respuesta.
totymedli

Respuestas:

488

Use files.exclude :

  • Vaya a Archivo -> Preferencias -> Configuración (o en Código Mac -> Preferencias -> Configuración )
  • Elige la workspace settingspestaña
  • Agregue este código al settings.jsonarchivo que se muestra en el lado derecho:

    // Place your settings in this file to overwrite default and user settings.
    
    {
        "settings": {
            "files.exclude": {
                "**/.git": true,         // this is a default value
                "**/.DS_Store": true,    // this is a default value
    
                "**/node_modules": true, // this excludes all folders 
                                        // named "node_modules" from 
                                        // the explore tree
    
                // alternative version
                "node_modules": true    // this excludes the folder 
                                        // only from the root of
                                        // your workspace 
            }
        }
    }
    

Si elige Archivo -> Preferencias -> Configuración de usuario , configurará las carpetas de exclusión globalmente para su usuario actual.

Wosi
fuente
8
Solo si alguien se pregunta: una barra diagonal final no está ayudando (ni perjudicando) al limitar la exclusión solo a las Carpetas. "**/BACKUP/": truees decir, es tan bueno / malo como sin la última barra.
Frank Nocke
El valor que proporciona en el RHS parece estar fusionado con el valor en el LHS. Presumiblemente, uno tendría que copiar el valor del LHS y configurarlo falsepara sobrescribir los valores predeterminados.
roganartu
Corrección: debería ser "** / node_modules": verdadero
Shekhar Kumar
¿Cómo funciona la herencia aquí? ¿Tengo que enumerar todas las exclusiones o solo las que no figuran en la configuración del usuario?
Robert Jeppesen
66
Vale la pena señalar que en la versión actual del Código (1.28.2), la files.excludeclave pertenece dentro de la settingsclave del code-workspacearchivo.
Tom
81

En las versiones más recientes de VS Code, navega a la configuración ( Ctrl+ ,) y se asegura de seleccionar Configuración del espacio de trabajo en la esquina superior derecha.

ingrese la descripción de la imagen aquí

Luego agregue un files.exclude opción para especificar patrones para excluir.

También puede agregar search.excludesi solo desea excluir un archivo de los resultados de búsqueda, y no del explorador de carpetas.

Drew Noakes
fuente
77
Excluir de la búsqueda sin dejar de buscar archivos en el explorador, ¡exactamente lo que necesitaba, gracias!
davnicwil
1
Gracias por especificarWorkspace Settings
JJS
3
Tenía que lugar files.excludeen el interior settings:{ ... }cuando se aplica a los ajustes de espacio de trabajo ( .code-espacio de trabajo de archivos) de lo contrario, se quejó de las líneas de la propiedad siendo desconocido. Había una tercera pestaña "Configuración de carpeta" (.vscode / settings.json) en la que funcionaba en las llaves más externas.
PAT
42

tl; dr

  1. Presione Ctrl+ Shift+ Po Command+ Shift+P en mac
  2. Escriba "Configuración del espacio de trabajo".
  3. Cambie la configuración de exclusión a través de la GUI o en settings.json:

Manera GUI

  1. Escriba "excluir" en la barra de búsqueda.
  2. Haga clic en el botón "Agregar patrón". Agregar patrón de exclusión en la configuración del Código VS

Forma de código

  1. Haga clic en el pequeño {}ícono en la esquina superior derecha para abrir settings.json: Haga clic en el icono de paréntesis para abrir settings.json
  2. Agregar carpetas excluidas a files.exclude. También echa un vistazo search.excludey files.watcherExcludetambién pueden ser útiles. Este fragmento contiene sus explicaciones y valores predeterminados:

    {
      // Configure glob patterns for excluding files and folders. 
      // For example, the files explorer decides which files and folders to show 
      // or hide based on this setting. 
      // Read more about glob patterns [here](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options).
      "files.exclude": {
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true
      },
      // Configure glob patterns for excluding files and folders in searches. 
      // Inherits all glob patterns from the `files.exclude` setting.   
      // Read more about glob patterns [here](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options).
      "search.exclude": {
        "**/node_modules": true,
        "**/bower_components": true
      },
      // Configure glob patterns of file paths to exclude from file watching. 
      // Patterns must match on absolute paths 
      // (i.e. prefix with ** or the full path to match properly). 
      // Changing this setting requires a restart. 
      // When you experience Code consuming lots of cpu time on startup, 
      // you can exclude large folders to reduce the initial load.
      "files.watcherExclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/*/**": true
      }
    }

Para obtener más detalles sobre las otras configuraciones, consulte la referencia oficialsettings.json .

totymedli
fuente
6

En la versión 1.28 de Visual Studio Code "files.exclude"debe colocarse dentro de unsettings nodo.

Resultando en un archivo de espacio de trabajo que se parece a:

{
    "settings": {
        "files.exclude": {
            "**/node_modules": true
        }
    }
}
Nisd
fuente
1

En las versiones más recientes de VSCode, esto se movió a un bloque de configuración específico de carpeta.

  • Vaya a Archivo -> Preferencias -> Configuración (o en Código Mac -> Preferencias -> Configuración)
  • Elija la pestaña Configuración de carpeta

A continuación, agregue un bloque "files.exclude", enumerando los globos de directorio que desea excluir:

{
    "files.exclude": {
        "**/bin": true,
        "**/obj": true
    },
}

ingrese la descripción de la imagen aquí

moof2k
fuente
-9

Logré eliminar los errores deshabilitando las validaciones:

{
    "javascript.validate.enable": false,
    "html.validate.styles": false,
    "html.validate.scripts": false,
    "css.validate": false,
    "scss.validate": false
}

Obs: Mi proyecto es un PWA que usa StyledComponents, React, Flow, Eslint y Prettier.

Rafael Santos Sá
fuente
9
Esto no responde a la pregunta del OP en absoluto.
JoeMoe1984