Compartir a través de


Información sobre el corrector ortográfico

Muchas de las características de Visual Studio están diseñadas para ayudarle a escribir código de la forma que más le convenga. Algunas garantizan la compilación del código y otras le ayudan a mejorar el estilo. Ahora, con la característica Corrector ortográfico (que se introdujo en la versión 17.5), Visual Studio puede incluso garantizar una ortografía precisa.

Captura de pantalla de un ejemplo del corrector ortográfico en acción.

El corrector ortográfico está disponible para cualquier archivo de C#, C++ o Markdown. Cuando el corrector ortográfico está habilitado, Visual Studio marca las palabras que detecta que están mal escritas. Visual Studio también ofrece ortografías alternativas como sugerencia y ayuda a corregirlas. Además, la característica actúa de forma contextual para cambiar el nombre de identificadores cuando detecta un error en ellos para que el código se pueda compilar.

Para activar o desactivar el corrector ortográfico, use el botón Alternar corrector ortográfico de la barra de herramientas principal o seleccione el comando Editar>Avanzado>Alternar corrector ortográfico en la barra de menús.

¿Cómo se usa?

Cuando el cursor de texto se encuentra sobre un error ortográfico, las acciones rápidas proporcionan soluciones para corregirlo. Puede abrir las acciones rápidas mediante los métodos abreviados de teclado Ctrl+. o Alt+Entrar. Cuando aparece el menú contextual, Visual Studio muestra tres opciones para resolver una incidencia ortográfica.

Si alguno de los diccionarios proporciona sugerencias de ortografía, Visual Studio las muestra. Si varios diccionarios proporcionan sugerencias, Visual Studio agrupa las sugerencias por diccionario. En el caso de cadenas y comentarios, al elegir una de estas sugerencias se realiza un único reemplazo en esa posición. Si se trata de identificadores de un documento de C++ o C#, al aceptar una sugerencia se realiza una refactorización de cambio de nombre que actualiza todas las instancias del identificador para garantizar la compilación del código.

Captura de pantalla del corrector ortográfico de texto con una lista de varios diccionarios.

También puede optar por omitir la incidencia ortográfica. Al omitir la incidencia, Visual Studio crea un archivo exclusion.dic en el directorio AppData de la máquina local. Después de omitir una palabra, el corrector ortográfico la omitirá en todas las instancias de Visual Studio.

¿Cómo funciona?

Dado que C#, C++y Markdown usan el inglés como idioma para sus palabras clave, Visual Studio suele usar el diccionario "Inglés (Estados Unidos)" o "en-us" para la revisión ortográfica. Visual Studio comprueba el idioma que está usando la instancia de Windows y, si no es "en-us", usa también el diccionario de dicho idioma.

Nota:

C# y C++ también tienen diccionarios adicionales para las palabras clave de esos lenguajes, lo que evita que palabras como "namespace" o "alloc" se marquen como palabras mal escritas.

Los comentarios de los primeros usuarios de esta característica nos informaron de que los desarrolladores solo quieren saber sobre los errores del documento con el que están trabajando actualmente. En respuesta a esos comentarios, el corrector ortográfico solo examina los documentos que están activos en el editor.

En la tabla siguiente se muestran algunos de los métodos heurísticos que utiliza el corrector ortográfico cuando examina un documento de código:

Lo que hay en el código Lo que comprueba Visual Studio ¿Por qué?
Hola Hola, hola Comprobar siempre nombres propios y comunes
HelloWorld Hola, hola, Mundo, mundo Mayúsculas mediales usadas para marcar límites de palabras
Hola.Mundo Hola, hola, Mundo, mundo Puntuación usada como límite de palabras
_Hola123 Hola, hola Números iniciales o finales y marcas de puntuación suprimidos
Hola2Mundo Hola, hola, Mundo, mundo Números mediales, al igual que las marcas de puntuación, usados como límite de palabras
btnMundo Mundo, mundo Fragmentos de tres caracteres o menos omitidos
helloworld Holamundo, holamundo Indicador que identifique límites de palabras no existente

Si Visual Studio identifica una coincidencia para el token en cualquiera de los diccionarios que usa, el token se considera aceptable y el examen continúa. De lo contrario, el token se considera mal escrito y Visual Studio lo marca como un error ortográfico.

Captura de pantalla de un ejemplo de errores ortográficos en la Lista de errores.

Personalización del corrector ortográfico

Puede personalizar el corrector ortográfico con el fin de optimizarlo para un entorno de colaboración. De este modo, Visual Studio usa un archivo de configuración EditorConfig para permitirle controlar el comportamiento del corrector ortográfico en un repositorio.

Al configurar un archivo EditorConfig, puede establecer los estándares de programación que espera que sigan todos los usuarios. Esto le permite mantener una coherencia en el código que podría resultar difícil de obtener a través de otros métodos.

Importante

Las opciones de error ortográfico son específicas del archivo. Debe especificar a qué opciones de ortografía se aplican los archivos. En el ejemplo siguiente, las opciones de ortografía se aplican a todos los archivos de C# de la solución:

[*.cs]

Estos son algunos ejemplos y casos de uso de los modificadores que puede configurar en un archivo EditorConfig:

  • Enumere los idiomas que se van a usar en Visual Studio. En este ejemplo, Visual Studio solo usaría los diccionarios "en-us" y "fr-fr" al comprobar si hay incidencias ortográficas.

    spelling_languages = _language_[,_language_]
    (Example: = en-us,fr-fr)

    Nota:

    Asegúrese de instalar el paquete de idioma de cualquier idioma que use para evitar que Visual Studio marque incorrectamente las palabras como errores ortográficos.

  • Controle las comprobaciones que realiza Visual Studio. En este ejemplo, Visual Studio comprobaría los identificadores y los comentarios en busca de errores ortográficos, pero no haría comprobaciones dentro de las cadenas.

    spelling_checkable_types = strings,identifiers,comments
    (Example: = identifiers,comments)

  • Controle la gravedad que Visual Studio asigna a los errores ortográficos en la lista de errores. En este ejemplo, los errores ortográficos se muestran como errores.

    spelling_error_severity = error OR warning OR information OR hint
    (Example: = error)

  • Cree su propio diccionario de exclusiones para especificar las palabras que considere correctamente escritas. En este ejemplo, la primera vez que el corrector ortográfico se ejecuta en cualquier archivo de la solución, Visual Studio comprueba si hay un archivo exclusion.dic. Visual Studio comprueba el mismo directorio del archivo de .sln para un proyecto de C# o en el directorio raíz de un directorio de C++. Si no existe ningún archivo exclusion.dic, Visual Studio crea uno. A continuación, siempre que el usuario decida omitir una palabra, Visual Studio la agrega al archivo exclusion.dic. Visual Studio considera que cualquier palabra que aparezca en el archivo exclusion.dic está correctamente escrita.

    spelling_exclusion_path = absolute OR relative path to exclusion dictionary
    (Example: = .\exclusion.dic)

    Nota:

    Visual Studio usa el diccionario de exclusión especificado por el modificador spelling_exclusion_path del archivo .editorconfig o un archivo exclusion.dic del directorio %localappdata%\Microsoft\VisualStudio\<Version> si no se encuentra ningún modificador.

  • Controlar si se usa el diccionario de exclusión específico del idioma predeterminado. Esta marca se establece en true de forma predeterminada. Las palabras agregadas al diccionario de exclusión específico del idioma se considerarán correctamente ortográficas. Establézcalo en false para omitir los diccionarios de exclusión específicos de C++ o C#.

    spelling_use_default_exclusion_dictionary = true OR false
    (Example: = spelling_use_default_exclusion_dictionary = false)

Este es un ejemplo completo:

[*.{cs,vb}]                                         //specify which files the spelling options apply to
spelling_languages = en-us,fr-fr                    //specifies the en-us and fr-fr dictionaries for use in spell checking
spelling_checkable_types = identifiers,comments     //specifies that identifiers and comments are the only checked elements
spelling_error_severity = error                     //sets severity assigned to spelling errors to error in the error list
spelling_exclusion_path = exclusion.dic             //defines a custom exclusion dictionary location and file
spelling_use_default_exclusion_dictionary = false   //ignores the language-specific default exclusion dictionary

Control de casos especiales

Visual Studio tiene algunos comportamientos únicos al comprobar el código para detectar errores ortográficos que difieren de los de un corrector ortográfico tradicional diseñado para texto escrito. Entre ellos, cabe destacar:

  • En una cadena que incluye puntuación, por ejemplo, "misc", Visual Studio no sugerirá una corrección porque la puntuación en un identificador podría dar lugar a código que no se compile.
  • Las barras diagonales inversas en una cadena omitirán la corrección ortográfica del carácter posterior y tratarán tanto la barra como el carácter posterior como un delimitador de palabra. Por ejemplo, en la cadena hello\nworld, Visual Studio detecta primero la barra diagonal inversa. Visual Studio trata \n como un delimitador de palabras, que deja "hello" y "world", y ambos se comprueban individualmente.
  • La ortografía de las cadenas que contienen direcciones URL, como https://... o mailto:.., no se revisará en toda la cadena.