Un corrector ortográfico básico que funciona bien con código y documentos.
El objetivo de este corrector ortográfico es ayudar a detectar errores ortográficos comunes manteniendo baja la cantidad de falsos positivos.
Cargue un archivo TypeScript, JavaScript, texto, etc. Las palabras que no están en los archivos del diccionario tendrán un subrayado ondulado.
Para ver la lista de sugerencias:
Después de posicionar el cursor en la palabra, cualquiera de las siguientes debería mostrar la lista de sugerencias:
Haga clic en (bombilla) en el margen izquierdo.
Comando de acción del Editor Quick Fix
:
Mac: ⌘
+ .
o Cmd
+ .
PC: Ctrl
+ .
Abra VS Code y presione F1
y escriba ext
seleccione instalar y escriba code-spell-checker
presione enter y vuelva a cargar la ventana para habilitar.
Inglés (Estados Unidos)
Inglés (GB): actívelo cambiando "cSpell.language": "en"
a "cSpell.language": "en-GB"
Griego antiguo: extensión del diccionario griego antiguo para VS Code.
Árabe: extensión del diccionario árabe para VS Code.
Inglés australiano: extensión del diccionario de inglés australiano para VS Code.
Alemán austriaco - Extensión del diccionario alemán austriaco para VS Code.
Vasco - Extensión del diccionario vasco para VS Code.
Inglés británico: extensión del diccionario de inglés británico para VS Code.
Búlgaro: extensión del diccionario búlgaro para VS Code.
Inglés canadiense: extensión del diccionario de inglés canadiense para VS Code.
Catalán - Extensión del diccionario catalán para VS Code.
Croata: extensión del diccionario croata para VS Code.
Checo: extensión del diccionario checo para VS Code.
Danés: extensión del diccionario danés para VS Code.
Holandés - Extensión del diccionario holandés / holandés para VS Code.
Esperanto: extensión del diccionario de esperanto para VS Code.
Estonio: extensión del diccionario estonio para VS Code.
Finlandés: extensión del diccionario finlandés para VS Code.
Francés - Extensión del diccionario francés para VS Code.
French Réforme 90 - Extensión del diccionario francés Réforme 90 para VS Code.
Alemán - Extensión del diccionario alemán para VS Code.
Griego: extensión del diccionario griego para VS Code.
Hebreo: extensión del diccionario hebreo para VS Code.
Húngaro: extensión del diccionario húngaro para VS Code.
Indonesio: extensión del diccionario indonesio para VS Code.
Italiano - Extensión del diccionario italiano para VS Code.
Latín: extensión del diccionario latino para VS Code.
Letón: extensión del diccionario letón para VS Code.
Lituano - Extensión del diccionario lituano para VS Code.
Macedonio: extensión del diccionario macedonio para VS Code.
Bokmål noruego: extensión del diccionario bokmål noruego para VS Code.
Persa: extensión del diccionario persa para VS Code.
Polaco: extensión del diccionario polaco para VS Code.
Portugués - Extensión del diccionario portugués para VS Code.
Portugués brasileño: extensión del diccionario portugués brasileño para VS Code.
Rumano: extensión del diccionario rumano para VS Code.
Ruso: extensión del diccionario ruso para VS Code.
Serbio: extensión del diccionario serbio para VS Code.
Eslovaco: extensión del diccionario eslovaco para VS Code.
Esloveno - Extensión del diccionario esloveno para VS Code.
Español - Complemento en español para el corrector ortográfico de códigos
Sueco: extensión del diccionario sueco para VS Code.
Alemán suizo: extensión del diccionario alemán suizo para VS Code.
Turco - Extensión del diccionario turco para VS Code.
Ucraniano: extensión del diccionario ucraniano para VS Code.
Vietnamita: extensión del diccionario vietnamita para VS Code.
Términos médicos: complemento de términos médicos para el corrector ortográfico de códigos
Términos científicos: extensión del diccionario de términos científicos para VS Code.
Win32: extensión del diccionario Win32 para VS Code.
AsciiDoc
C, C++
DO#
css, menos, scss
Dardo
Elixir
Ir
HTML
Java
javascript
JSON/JSONC
Látex
Reducción
PHP
PowerShell
Pug/Jade
Pitón
texto reestructurado
Rubí
Óxido
escala
Texto
Mecanografiado
YAML
SQL
Para habilitar o deshabilitar la revisión ortográfica para un tipo de archivo:
Haga clic en el estado del corrector ortográfico en la barra de estado:
En la pantalla Información, haga clic en la casilla de verificación.
El concepto es simple: dividir las palabras de camelCase antes de compararlas con una lista de palabras conocidas en inglés.
camelCase -> caso camello
HTMLInput -> entrada html: observe que I
está asociado con Input
y no con HTML
Snake_case_words -> palabras de caso de serpiente
camel2snake -> serpiente camello -- (el 2 se ignora)
Hay algunos casos especiales que ayudan con las prácticas comunes de ortografía para palabras TODAS EN MAYÚSCULAS.
Las s
, ing
, ies
, es
, ed
finales se mantienen con la palabra anterior.
CURL -> rizos - s
finales
CURLedRequest -> solicitud curvada - ed
final
Este corrector ortográfico no distingue entre mayúsculas y minúsculas. No detectará errores como el inglés, que debería ser inglés.
El corrector ortográfico utiliza un diccionario de palabras local. No envía nada fuera de su máquina.
Las palabras del diccionario pueden contener errores, y de hecho lo hacen.
Faltan palabras.
Sólo se verifican las palabras de más de 3 caracteres. "jsj" no está marcado, mientras que "jsja" sí está marcado y se marcará como incorrecto porque no existe en ninguno de los diccionarios.
Se ignoran todos los símbolos y puntuación.
Es posible agregar configuraciones de revisión ortográfica a su código fuente. Esto es para ayudar con problemas específicos de archivos que pueden no ser aplicables a todo el proyecto.
Todas las configuraciones tienen el prefijo cSpell:
o spell-checker:
disable
: desactiva el corrector ortográfico de una sección de código.
enable
: vuelve a activar el corrector ortográfico después de desactivarlo.
ignore
: especifica una lista de palabras que se ignorarán.
words
: especifique una lista de palabras que se considerarán correctas y aparecerán en la lista de sugerencias.
locale
: establece la configuración regional (ejemplo: cSpell:locale fr,en
para usar los idiomas francés e inglés)
ignoreRegExp
: NO se revisará la ortografía de ningún texto que coincida con la expresión regular.
includeRegExp
: solo se verificará el texto que coincida con la colección de includeRegExp.
enableCompoundWords
/ disableCompoundWords
: permite/no permite palabras como: "stringlength".
Es posible desactivar/activar el corrector ortográfico añadiendo comentarios a su código.
cSpell:disable
spell-checker: disable
spellchecker: disable
cspell: disable-line
cspell: disable-next-line
cSpell:enable
spell-checker: enable
spellchecker: enable
// cSpell:disableconst wackyWord = ['zaallano', 'wooorrdd', 'zzooommmmmmmm'];/* cSpell:enable */// Nest deshabilitar / habilitar no es compatible// corrector ortográfico:disable// Ahora está deshabilitado .var liep = 1;/* cspell:disable */// Todavía está deshabilitado// cSpell:enable// Ahora está habilitadoconst str = 'bueno'; // <- se marcará como un error.// corrector ortográfico: habilitar <- no hace nada// cSPELL:DISABLE <-- también funciona.// si no hay una habilitación, la ortografía está deshabilitada hasta el final del archivo.const str = 'goedemorgen'; // <- NO se marcará como error.
<!--- cSpell:disable --->Este texto no está marcado.<!--- cSpell:enable --->Este texto está marcado.
Ignorar le permite especificar una lista de palabras que desea ignorar dentro del documento.
// cSpell:ignorar zaallano, wooorrdd// cSpell:ignorar zzooommmmmmmmconst wackyWord = ['zaallano', 'wooorrdd', 'zzooommmmmmmm'];
Nota: las palabras definidas con ignore
se ignorarán en todo el archivo.
La lista de palabras le permite agregar palabras que se considerarán correctas y se utilizarán como sugerencias.
// cSpell:palabras woorxs sweetbeatconst companyName = 'woorxs sweetbeat';
Nota: las palabras definidas con words
se utilizarán para todo el archivo.
En algunos lenguajes de programación es común pegar palabras.
// cSpell:enableCompoundWordschar * errormessage; // Está bien con cSpell: enableCompoundWordsint errornumber; // También está bien.
Nota: La verificación de palabras compuestas no se puede activar o desactivar en el mismo archivo. La última configuración del archivo determina el valor de todo el archivo.
De forma predeterminada, se revisa la ortografía de todo el documento. cSpell:disable
/ cSpell:enable
arriba le permite bloquear secciones del documento. ignoreRegExp
e includeRegExp
le brindan la posibilidad de ignorar o incluir patrones de texto. De forma predeterminada, las banderas gim
se agregan si no se proporcionan banderas.
El corrector ortográfico funciona de la siguiente manera:
Buscar todas las coincidencias de texto includeRegExp
Elimine cualquier texto que coincida con excludeRegExp
Consulta el texto restante.
// cSpell:ignoreRegExp 0x[0-9a-f]+ -- ignorará los números hexadecimales de estilo c// cSpell:ignoreRegExp /0x[0-9A-F]+/g -- ignorará los números hexadecimales de estilo c en mayúsculas. // cSpell:ignoreRegExp g{5} h{5} -- solo coincidirá con ggggg, pero no con hhhhh o 'ggggg hhhhh'// cSpell:ignoreRegExp g{5}|h{5} -- coincidirá con ggggg y hhhhh// cSpell:ignoreRegExp /g{5} h{5}/ -- coincidirá con 'ggggg hhhhh'/* cSpell:ignoreRegExp /n {5}/ -- NO funcionará como se esperaba debido al comentario final -> *//* cSpell:ignoreRegExp /q{5}/ -- coincidirá con qqqqq bien pero NO QQQQQ*/// cSpell:ignoreRegExp /[^s]{40,}/ -- ignorará cadenas largas sin espacios.// cSpell:ignoreRegExp Email -- esto ignorará correos electrónicos como patrones: consulte Expresiones RegExp predefinidasvar encodedImage = 'HR+cPzr7XGAOJNurPL0G8I2kU0UhKcqFssoKvFTR7z0T3VJfK37vS025uKroHfJ9nA6WWbHZ/ASn...';var email1 = 'dirección de correo electró[email protected]';var email2 = '<dirección de correo electró[email protected]>';
Nota: ignoreRegExp e includeRegExp se aplican a todo el archivo. No empiezan ni se detienen.
En general, no debería necesitar utilizar includeRegExp
. Pero si mezclas idiomas, podría resultar útil.
# cSpell:includeRegExp #.*# cSpell:includeRegExp /(["]{3}|[']{3})[^1]*?1/g# solo se comprobará la ortografía de los comentarios y las cadenas de bloqueo.def sum_it( self, seq):"""Se revisa la ortografía"""variabele = 0alinea = 'esto no está verificado'para num en seq:# El estado local de El 'valor' se conservará entre iteracionesvariabele += numyield variabele
Urls
1 : coincide con las URL
HexValues
: coincide con el formato hexadecimal común como #aaa
, 0xfeef
, u0134
EscapeCharacters
1 : coincide con caracteres especiales: n
, t
etc.
Base64
1 : coincide con bloques de texto base64 de más de 40 caracteres.
Email
: coincide con la mayoría de las direcciones de correo electrónico.
Everything
1 : de forma predeterminada, hacemos coincidir un documento completo y eliminamos las exclusiones.
string
: coincide con formatos de cadena comunes como '...', "..." y `...`
CStyleComment
: estos son comentarios de estilo C /* */ y //
PhpHereDoc
: coincide con las cadenas PHPHereDoc.
1. Estos patrones son parte de la lista de inclusión/exclusión predeterminada para cada archivo.
La configuración del corrector ortográfico se puede controlar mediante las preferencias de VS Code o el archivo de configuración cspell.json
.
Orden de precedencia:
Carpeta del espacio de trabajo cspell.json
Carpeta del espacio de trabajo .vscode/cspell.json
Sección cSpell
Preferencias de VS Code.
Tiene la opción de agregar sus propias palabras al diccionario del espacio de trabajo. Lo más fácil es colocar el cursor en la palabra que desea agregar, cuando aparezca la bombilla, presione Ctrl+.
(ventanas) / Cmd+.
(Impermeable). Obtendrá una lista de sugerencias y la opción de agregar la palabra.
También puede escribir una palabra que desee agregar al diccionario: F1
add word
: seleccione Add Word to Dictionary
y escriba la palabra que desea agregar.
Las palabras agregadas al diccionario se colocan en el archivo cspell.json
en la carpeta del espacio de trabajo . Tenga en cuenta que la configuración en cspell.json
anulará la configuración de cSpell equivalente en settings.json
de VS Code.
// cSpell Settings{// Versión del archivo de configuración. Siempre 0.2"version": "0.2",// idioma - idioma de ortografía activo actual"language": "en",// palabras - lista de palabras que siempre se considerarán correctas"words": ["mkdirp","tsmerge" ,"githubusercontent","streetsidesoftware","vsmarketplacebadge","visualstudio"],// flagWords: lista de palabras que siempre se considerarán incorrectas// Esto es útil para palabras ofensivas y errores ortográficos comunes.// Por ejemplo, "hte" debería ser "las""palabras bandera": ["hte"]}
//-------- Configuración del corrector ortográfico del código --------// La configuración regional del idioma que se utilizará al revisar la ortografía. Actualmente, "en", "en-US" y "en-GB" son compatibles de forma predeterminada."cSpell.language": "en",// Controla el número máximo de errores ortográficos por documento."cSpell.maxNumberOfProblems": 100 ,// Controla el número de sugerencias mostradas."cSpell.numSuggestions": 8,// La longitud mínima de una palabra antes de compararla con un diccionario."cSpell.minWordLength": 4,// Especifique los tipos de archivos para revisar la ortografía."cSpell.enabledLanguageIds": ["csharp","go","javascript","javascriptreact","markdown","php","plaintext","typescript","typescriptreact", "yaml","sql"],// Habilitar/Deshabilitar el corrector ortográfico."cSpell.enabled": true,// Palabras para agregar al diccionario de un espacio de trabajo."cSpell.words": [],// Habilitar / Deshabilitar compuesto palabras como 'errormessage'"cSpell.allowCompoundWords": false,// Palabras que se deben ignorar y no sugerir."cSpell.ignoreWords": ["behaviour"],// Palabras de usuario para agregar al diccionario. Solo debe estar en la configuración del usuario."cSpell.userWords": [],// Especifica rutas/archivos a ignorar."cSpell.ignorePaths": ["node_modules", // esto ignorará todo el directorio node_modules"**/ node_modules", // lo mismo para este"**/node_modules/**", // lo mismo para este"node_modules/**", // No funciona actualmente debido a cómo está el directorio de trabajo actual está determinado."vscode-extension", //".git", // Ignorar el directorio .git"*.dll", // Ignorar todos los archivos .dll."**/*.dll" // Ignorar todos. dll],// flagWords - lista de palabras que siempre se considerarán incorrectas// Esto es útil para palabras ofensivas y errores ortográficos comunes.// Por ejemplo, "hte" debería ser "the"`"cSpell.flagWords": [" hte"],// Establezca el retraso antes de revisar la ortografía del documento. El valor predeterminado es 50. Sugerencia: informe los problemas de ortografía como sugerencias, no aparecerá en Problemas"cSpell.diagnosticLevel": "Información",
El corrector ortográfico incluye un conjunto de diccionarios predeterminados.
palabrasEn - Derivado de las palabras del inglés estadounidense de Hunspell.
palabrasEnGb - Derivado de las palabras inglesas de Hunspell GB.
empresas - Lista de empresas conocidas
softwareTerms : términos y conceptos de software como "corrutina", "antirrebote", "árbol", etc.
misc : términos que no pertenecen a los otros diccionarios.
mecanografiado : palabras clave para mecanografiado y Javascript
nodo : términos relacionados con el uso de nodejs.
php - palabras clave de php y métodos de biblioteca
ir - ir palabras clave y métodos de biblioteca
Python - palabras clave de Python
powershell - palabras clave de powershell
html - palabras clave relacionadas con html
css - palabras clave relacionadas con css , less y scss
fuentes - larga lista de fuentes - para ayudar con CSS
Según el lenguaje de programación, se cargarán diferentes diccionarios.
Estas son algunas de las reglas predeterminadas:
"*"
coincide con cualquier lenguaje de programación/tipo de archivo.
"locale"
se utiliza para filtrar según la configuración "cSpell.language"
.
{"cSpell.languageSettings": [ { "languageId": '*', "locale": 'en', "diccionarios": ['wordsEn'] }, { "languageId": '*', "locale": 'en-US', "dictionaries": ['wordsEn'] }, { "languageId": '*', "locale": 'en-GB', "diccionarios": ['wordsEnGb'] }, { "languageId": '*', "diccionarios": ['empresas', 'softwareTerms', 'misc'] }, { "languageId": "python", "diccionarios": ["python"]}, { "languageId": "ir", "diccionarios": ["ir"] }, { "languageId": "javascript", "diccionarios": ["mecanografiado", "nodo"] }, { "languageId": "javascriptreact", "diccionarios": ["mecanografiado", "nodo"] }, { "languageId": "mecanografiado", "diccionarios": ["mecanografiado", "nodo"] }, { "languageId": "typescriptreact", "dictionaries": ["typescript", "node"] }, { "languageId": "html", "diccionarios": ["html", "fuentes", "mecanografiado", "css"] }, { "languageId": "php", "diccionarios": ["php", "html", "fuentes", "css", "mecanografiado"] }, { "languageId": "css", "diccionarios": ["fuentes", "css"] }, { "languageId": "menos", "diccionarios": ["fuentes", "css"] }, { "languageId": "scss", "diccionarios": ["fuentes", "css"] },];}
cSpell.customDictionaries
Configuración de interfaz {'cSpell.customDictionaries': {[name: string]: CustomDictionary;};}interface CustomDictionary {/** * @title Nombre del diccionario * El nombre de referencia del diccionario. * * * Ejemplo: `Mis palabras` o `personalizado` * * * Si su nombre coincide con un diccionario predefinido, anulará el diccionario predefinido. * Si usa: `typescript`, reemplazará el diccionario TypeScript incorporado. */name?: DictionaryId;/** * @title Descripción del diccionario * Opcional: una descripción legible por humanos. */description?: string;/** * @title Ruta al archivo de texto del diccionario * Defina la ruta al archivo de texto del diccionario. * * * **Nota:** si la ruta es `indefinida`, se espera que el diccionario `name`d se encuentre * en `dictionaryDefinitions`. * * * Formato de archivo: cada línea del archivo se considera una entrada del diccionario. * Se conservan las mayúsculas y minúsculas mientras se eliminan los espacios iniciales y finales. * La ruta debe ser absoluta o relativa al espacio de trabajo. * * **Ejemplo:** relativo a la carpeta del Usuario * * ``` * ~/dictionaries/custom_dictionary.txt * ``` * * **Ejemplo:** relativo a la carpeta `cliente` en un espacio de trabajo de múltiples raíces * * ``` * ${workspaceFolder:client}/build/custom_dictionary.txt * ``` * * **Ejemplo:** relativo a la carpeta del espacio de trabajo actual en un espacio de trabajo de raíz única * * **Nota:** esto podría no ser el esperado en un espacio de trabajo de múltiples raíces, ya que se basa en el * espacio de trabajo relativo del archivo abierto actualmente. * * ``` * ${workspaceFolder}/build/custom_dictionary.txt * ``` * * **Ejemplo:** relativo a la carpeta del espacio de trabajo en un espacio de trabajo de raíz única o a la primera carpeta en * un espacio de trabajo de múltiples raíces * * ``` * ./build/custom_dictionary.txt * ``` */path?: FsPath;/** * @title Agregar palabras al diccionario * Indique si este diccionario personalizado debe usarse para almacenar palabras agregadas. * @default true */addWords?: boolean;/** * @title Alcance del diccionario * Las opciones son * - `user` - palabras que se aplican a todos los proyectos y espacios de trabajo * - `workspace` - palabras que se aplican a todo el espacio de trabajo * - `carpeta` - palabras que se aplican solo a una carpeta del espacio de trabajo */scope?: CustomDictionaryScope | Ámbito del diccionario personalizado[];}
Para agregar un diccionario global, necesitará cambiar su configuración de usuario.
En su configuración de usuario, deberá indicarle al corrector ortográfico dónde encontrar su lista de palabras.
Ejemplo agregando términos médicos, para que se puedan encontrar palabras como acantopterigio .
Configuración del código VS
"cSpell.diccionarios personalizados": { "misPalabras": {"nombre": "misPalabras","ruta": "~/mis-palabras.txt","scope": "usuario","addWords": true }}
Explicado: En este ejemplo, le hemos dicho al corrector ortográfico dónde encontrar nuestro diccionario personal llamado myWords
.
name
: este es el nombre del diccionario, todas las referencias a este diccionario se realizan por el nombre.
path
: esta es la ruta al archivo del diccionario. Como está en la configuración del usuario, tenemos que usar rutas absolutas o rutas relativas al directorio del usuario usando ~/
.
scope
: (opcional) se utiliza para "alcance" un diccionario al user
, workspace
o folder
. El alcance se utiliza para ayudar a comunicar el uso previsto del diccionario.
addWords
: (opcional) predeterminado: true
: se usa para mostrar/ocultar el diccionario como posible destino para agregar palabras.
cspell.json
Para agregar un diccionario a nivel de proyecto se debe definir en un archivo cspell.json
para que pueda usarse con la herramienta de línea de comandos cspell
. Este archivo puede estar en la raíz del proyecto o en el directorio .vscode.
Ejemplo de agregar términos médicos, donde los términos se registran en el proyecto y solo queremos usarlos para archivos .md.
{"dictionaryDefinitions": [{ "nombre": "medicalTerms", "ruta": "./dictionaries/medicalterms-en.txt"},{ "nombre": "ciudades", "ruta": "./dictionaries/ ciudades.txt"}],"diccionarios": ["ciudades"],"languageSettings": [{ "languageId": "markdown", "diccionarios": ["medicalTerms"] },{ "languageId": "texto sin formato", "diccionarios": ["términos médicos"] }]}
Explicado: En este ejemplo, se definieron dos diccionarios: ciudades y términos médicos . Las rutas son relativas a la ubicación del archivo cSpell.json . Esto permite incorporar diccionarios al proyecto.
El diccionario de ciudades se utiliza para cada tipo de archivo, porque se agregó a la lista de diccionarios . El diccionario de términos médicos solo se utiliza al editar archivos de rebajas o de texto sin formato .
DiccionarioDefinición
interfaz DictionaryDefinition {/** * Este es el nombre de un diccionario. * *Formato del nombre: * - Debe contener al menos 1 número o letra. * - Se permiten espacios. * - Se eliminarán los espacios iniciales y finales. * - Los nombres distinguen entre mayúsculas y minúsculas. * - No debe contener `*`, `!`, `;`, `,`, `{`, `}`, `[`, `]`, `~`. */nombre: DictionaryId;/** Descripción opcional. */description?: string;/** Ruta al archivo de texto del diccionario personalizado. */path: CustomDictionaryPath;/** * Define el ámbito en el que se agregarán palabras al diccionario. * Valores de alcance: `usuario`, `espacio de trabajo`, `carpeta`. */alcance?: Ámbito del diccionario personalizado | CustomDictionaryScope[];/** * Cuando es "verdadero", el corrector ortográfico sabe que se pueden agregar palabras a este diccionario. */addWords: booleano;}
Configuración del código VS
"cSpell.customDictionaries": {