Las respuestas actuales están bien, pero si trabajas con cadenas en el código, puedes usar s
biblioteca de manipulación de cadenas. s-capitalize
escribe en mayúscula la primera palabra de una oración.
ELISP> (s-capitalize "can't win the war on drugs in a prison, where the hell you gonna win it?")
"Can't win the war on drugs in a prison, where the hell you gonna win it?"
ELISP> (s-join " " (-map 's-capitalize (s-split " " "can't win the war on drugs in a prison, where the hell you gonna win it?")))
"Can't Win The War On Drugs In A Prison, Where The Hell You Gonna Win It?"
s-titleize
capitaliza cada palabra de una cadena, pero es un simple envoltorio alrededor de una función de capitalize
, por lo tanto, se aplica Karl Voigtland's workaround.
ELISP> (s-titleize "Girl, you can't even think of calling this shit a war.")
"Girl, You Can'T Even Think Of Calling This Shit A War."
ELISP> (progn (modify-syntax-entry ?' "w") (s-titleize "Girl, you can't even think of calling this shit a war."))
"Girl, You Can't Even Think Of Calling This Shit A War."
1, una advertencia con esto, sin embargo: (capitalizar "se trata de una 'prueba'") "Esta es una 'prueba'" – cobbal