# \[Bug\] String.titlecase failing on UTF-8 with accented chars

**URL:** <https://www.ruby-forum.com/t/bug-string-titlecase-failing-on-utf-8-with-accented-chars/105700>\
**Category:** Ruby\
**Created:** [June 1, 2007, 3:19pm UTC](https://www.ruby-forum.com/t/bug-string-titlecase-failing-on-utf-8-with-accented-chars/105700 "2007-06-01T15:19:23Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![mlemos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/839c29/32.png) [@mlemos](https://www.ruby-forum.com/u/mlemos)\
**Post date:** [June 1, 2007, 3:19pm UTC](https://www.ruby-forum.com/t/bug-string-titlecase-failing-on-utf-8-with-accented-chars/105700/1 "2007-06-01T15:19:23Z")

</div>

Anybody knows how to solve that?

Check this:

> > u.lastname  
> > =\> “Guimar\303\243es”
> 
> > puts u.lastname  
> > GuimarÃ£es  
> > =\> nil
> 
> > u.lastname.titlecase  
> > =\> “Guimar\303\243Es”
> 
> > puts u.lastname.titlecase  
> > GuimarÃ£Es # ------------------\> Check the E in capital, this is a bug  
> > =\> nil
> 
> >

---

<div class="post-metadata">

**Author:** ![mlemos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/839c29/32.png) [@mlemos](https://www.ruby-forum.com/u/mlemos)\
**Post date:** [June 1, 2007, 3:49pm UTC](https://www.ruby-forum.com/t/bug-string-titlecase-failing-on-utf-8-with-accented-chars/105700/2 "2007-06-01T15:49:09Z")

</div>

Hi,

In message “Re: [Bug] String.titlecase failing on UTF-8 with accented  
chars”  
on Fri, 1 Jun 2007 22:19:23 +0900, Manoel L. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
writes:

|Anybody knows how to solve that?

case conversion functions do/will not support characters out of ASCII  
range (A-Za-z). Tim B. enlightened us.

```
          matz.

```

---

<div class="post-metadata">

**Author:** ![mlemos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/839c29/32.png) [@mlemos](https://www.ruby-forum.com/u/mlemos)\
**Post date:** [June 1, 2007, 4:23pm UTC](https://www.ruby-forum.com/t/bug-string-titlecase-failing-on-utf-8-with-accented-chars/105700/3 "2007-06-01T16:23:13Z")

</div>

On 2007-06-01 22:19:23 +0900 (Fri, Jun), Manoel L. wrote:

> =\> “Guimar\303\243Es”
> 
> > > puts u.lastname.titlecase  
> > > GuimarÃ£Es # ------------------\> Check the E in capital, this is a bug  
> > > =\> nil

Titlecase is a Rails-ism (and the usual policy here is that Rails  
questions should go to Rails lists or #rubyonrails IRC channel), but you  
can try:

puts u.lastname.chars.titlecase

Read: ri ActiveSupport::CoreExtensions::String::Unicode#chars

---

<div class="post-metadata">

**Author:** ![mlemos](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/839c29/32.png) [@mlemos](https://www.ruby-forum.com/u/mlemos)\
**Post date:** [June 1, 2007, 4:30pm UTC](https://www.ruby-forum.com/t/bug-string-titlecase-failing-on-utf-8-with-accented-chars/105700/4 "2007-06-01T16:30:17Z")

</div>

Manoel L. wrote:

> =\> “Guimar\303\243Es”
> 
> > > puts u.lastname.titlecase  
> > > GuimarÃ£Es # ------------------\> Check the E in capital, this is a bug  
> > > =\> nil

If you’re going to use utf-8 you need at least to set $KCODE=‘u’

> > $KCODE=‘n’  
> > puts “Guimar\303\243es”.titlecase  
> > GuimarÃ£Es

> > $KCODE=‘u’  
> > puts “Guimar\303\243es”.titlecase  
> > GuimarÃ£es

-Daniel
