Typesetting latin small letter u with diaeresis and caron

I'm looking for ways to typeset an ǚ.

This character is necessary for typesetting pinyin (汉语拼音, the most common way of transcribing Mandarin Chinese), as it contains syllables such as lǚ (Chinese 铝/鋁; "aluminum").

I've tried

\v{\"{u}}


and

\unichar{474}


(from the ucs package)

both of which produce a caron alone followed by ü - not what I want. If there's a way of getting the accents package to do what I want, I can't find it.

This seems like such a basic feature, I'm astonished it's proving so hard to find a way of doing it.

-
I would use ǚ directly with XeTeX. –  Leo Liu May 23 '12 at 6:41
If you load \usepackage[T1]{fontenc}, then \v{\"{u}} works. –  egreg May 23 '12 at 6:49
You should use T1 fontenc for accented characters AND load a vector font, for example latin modern using \usepackage{lmodern}. –  matth May 23 '12 at 7:16

Very few of the fonts available for pdflatex have a precomposed ‘ǚ’ character, but it can be built from other pieces. However, TeX doesn't allow to pile up accents in a straightforward way, so it's better to put one accent over a precomposed ’ü’, which can be done with T1 encoded fonts. Therefore you can get the character with \v{\"u} if you say

\usepackage[T1]{fontenc}


in the preamble. You can also use the character directly for input with

\documentclass{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{newunicodechar}
\newunicodechar{ǚ}{\v{ü}}

\begin{document}

Typesetting the ǚ' character

\end{document}


that renders as

If you're willing to use the Libertine fonts, as suggested by Leo Liu, the definition is slightly different

\documentclass{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{newunicodechar}
\newunicodechar{ǚ}{\libertineGlyph{uni01DA}}

\begin{document}

Typesetting the ǚ' character

\end{document}


A different strategy is to switch to XeLaTeX or LuaLaTeX:

\documentclass{article}
\usepackage{fontspec}
% omitting the following line would use the Latin Modern fonts
\setmainfont[Ligatures=TeX]{Linux Libertine O}

\begin{document}

Typesetting the ǚ' character

\end{document}


-
Just what I was looking for, thank you. –  Bakkot May 25 '12 at 7:05

Change the font encoding to use the font with ü, then \v would work:

\documentclass{article}
\usepackage[T1]{fontenc}
\begin{document}
\v{\"u}
\end{document}


It is made of two glyphs, however.

Only some of the fonts supports this glyph, for example:

\documentclass{article}
\usepackage{libertine}
\begin{document}
\libertineGlyph{uni01DA}
\end{document}


You can also use XeLaTeX/LuaLaTeX to use unicode glyphs directly:

\documentclass{article}
\usepackage{fontspec}
\begin{document}
ǚ
\end{document}
`
-