si escribo una función de la siguiente manera:
int foo(int bar)
{}
Sublime destaca foo
correctamente. Sin embargo, en este caso:
int foo
(int bar)
{}
foo
pierde todo el resaltado.
Una de las cosas que amo de C ++ es que no le importa el espacio en blanco. ¿Hay alguna manera de hacer que este código sublime resalte correctamente?
Editar:
Después de obtener algunos punteros y explorar los archivos de sintaxis defualt, esto:
<string>(?x)
(?: ^ # begin-of-line
|
(?: (?= \s ) (?<!else|new|return) (?<=\w) # or word + space before name
| (?= \s*[A-Za-z_] ) (?<!&&) (?<=[*&>]) # or type modifier before name
)
)
(\s*) (?!(while|for|do|if|else|switch|catch|enumerate|return|r?iterate)\s*\()
(
(?: [A-Za-z_][A-Za-z0-9_]*+ | :: )++ | # actual name
(?: (?<=operator) (?: [-*&<>=+!]+ | \(\) | \[\] ) ) # if it is a C++ operator
)
\s*(?=\()</string>
parece ser la expresión regular que funciona mal. Sin embargo, no puedo entender por qué no está obteniendo mi código; la última línea, \s*(?=\()
debería coincidir con cualquier cantidad de espacios en blanco o líneas nuevas antes del paréntesis de apertura, ¿no?
Ctrl+Shift+Alt+P
(en Windows, otros sistemas operativos usan accesos directos diferentes) con el cursor en el nombre de la función. Los estilos de resaltado utilizados actualmente aparecerán en la barra de estado. Estos se utilizan para establecer colores en las reglas de resaltado de sintaxis, por lo que puede buscarlos en las listas para ubicar las secciones que necesita un poco más rápido.Ctrl+Shift+P
, que no funcionó para mí. Podría ser capaz de tomarlo de aquí en adelante.