<a id="top"></a><?xml version="1.0" encoding="iso-8859-1" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd--> <html xmlns="http://www.w3.org/1999/xhtml" > <head><title>mfirstuc.sty v1.05: uppercasing first letter</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> <meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> <!-- xhtml,fn-in,css-in --> <meta name="src" content="mfirstuc-manual.tex" /> <meta name="date" content="2011-04-13 19:41:00" /> <style type="text/css"> <!-- /* start css.sty */ .ecrm-1728{font-size:170%;} .ecrm-1200{font-size:120%;} .ectt-1200{font-size:120%; font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ectt-1200{ font-family: monospace;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ecss-1000{ font-family: sans-serif;} .ectt-0900{font-size:90%; font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-0900{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ectt-1000{ font-family: monospace;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecti-1000{ font-style: italic;} .ecrm-0900{font-size:90%;} .ecrm-0800{font-size:80%;} .ecss-0800{font-size:80%; font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} .ecss-0800{ font-family: sans-serif;} p.noindent { text-indent: 0em } td p.noindent { text-indent: 0em; margin-top:0em; } p.nopar { text-indent: 0em; } p.indent{ text-indent: 1.5em } @media print {div.crosslinks {visibility:hidden;}} a img { border-top: 0; border-left: 0; border-right: 0; } center { margin-top:1em; margin-bottom:1em; } td center { margin-top:0em; margin-bottom:0em; } .Canvas { position:relative; } img.math{vertical-align:middle;} li p.indent { text-indent: 0em } li p:first-child{ margin-top:0em; } li p:last-child, li div:last-child { margin-bottom:0.5em; } li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } .enumerate1 {list-style-type:decimal;} .enumerate2 {list-style-type:lower-alpha;} .enumerate3 {list-style-type:lower-roman;} .enumerate4 {list-style-type:upper-alpha;} div.newtheorem { margin-bottom: 2em; margin-top: 2em;} .obeylines-h,.obeylines-v {white-space: nowrap; } div.obeylines-v p { margin-top:0; margin-bottom:0; } .overline{ text-decoration:overline; } .overline img{ border-top: 1px solid black; } td.displaylines {text-align:center; white-space:nowrap;} .centerline {text-align:center;} .rightline {text-align:right;} div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } .fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } div.fbox {display:table} div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } div.minipage{width:100%;} div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} div.center div {text-align: left;} div.flushright, div.flushright div.flushright {text-align: right;} div.flushright div {text-align: left;} div.flushleft {text-align: left;} .underline{ text-decoration:underline; } .underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } .framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } .framebox-c {text-align:center;} .framebox-l {text-align:left;} .framebox-r {text-align:right;} span.thank-mark{ vertical-align: super } span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } table.tabular td p{margin-top:0em;} table.tabular {margin-left: auto; margin-right: auto;} td p:first-child{ margin-top:0em; } td p:last-child{ margin-bottom:0em; } div.td00{ margin-left:0pt; margin-right:0pt; } div.td01{ margin-left:0pt; margin-right:5pt; } div.td10{ margin-left:5pt; margin-right:0pt; } div.td11{ margin-left:5pt; margin-right:5pt; } table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } td.td00{ padding-left:0pt; padding-right:0pt; } td.td01{ padding-left:0pt; padding-right:5pt; } td.td10{ padding-left:5pt; padding-right:0pt; } td.td11{ padding-left:5pt; padding-right:5pt; } table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } .hline hr, .cline hr{ height : 1px; margin:0px; } .tabbing-right {text-align:right;} span.TEX {letter-spacing: -0.125em; } span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} a span.TEX span.E {text-decoration: none; } span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} span.LATEX span.TEX{ position:relative; left: -0.4em; } div.float, div.figure {margin-left: auto; margin-right: auto;} div.float img {text-align:center;} div.figure img {text-align:center;} .marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} .marginpar p{margin-top:0.4em; margin-bottom:0.4em;} table.equation {width:100%;} .equation td{text-align:center; } td.equation { margin-top:1em; margin-bottom:1em; } td.equation-label { width:5%; text-align:center; } td.eqnarray4 { width:5%; white-space: normal; } td.eqnarray2 { width:5%; } table.eqnarray-star, table.eqnarray {width:100%;} div.eqnarray{text-align:center;} div.array {text-align:center;} div.pmatrix {text-align:center;} table.pmatrix {width:100%;} span.pmatrix img{vertical-align:middle;} div.pmatrix {text-align:center;} table.pmatrix {width:100%;} span.bar-css {text-decoration:overline;} img.cdots{vertical-align:middle;} .partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} .index-item, .index-subitem, .index-subsubitem {display:block} div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} div.caption span.id{font-weight: bold; white-space: nowrap; } h1.partHead{text-align: center} p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } .paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} .subparagraphHead, .likesubparagraphHead { font-weight: bold;} .quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} .verse{white-space:nowrap; margin-left:2em} div.maketitle {text-align:center;} h2.titleHead{text-align:center;} div.maketitle{ margin-bottom: 2em; } div.author, div.date {text-align:center;} div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } .quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } .abstract p {margin-left:5%; margin-right:5%;} div.abstract {width:100%;} table.multicols { width:100%; margin-left:1em; margin-top:1em; margin-bottom:1em; } .alltt P { margin-bottom : 0em; margin-top : 0em; } .alltt { margin-bottom : 1em; margin-top : 1em; } div.important { background-color:red; } /* end css.sty */ --> </style> </head><body > <div class="maketitle"> <h2 class="titleHead">mfirstuc.sty v1.05: uppercasing first letter</h2> <div class="author" ><span class="ecrm-1200">Nicola L.C. Talbot</span> <br /> <span class="ecrm-1200">School of Computing Sciences</span> <br /> <span class="ecrm-1200">University of East Anglia</span> <br /> <span class="ecrm-1200">Norwich. Norfolk</span> <br /> <span class="ecrm-1200">NR4 7TJ. United Kingdom.</span> <br /><a href="http://theoval.cmp.uea.ac.uk/~nlct/" class="url" ><span class="ectt-1200">http://theoval.cmp.uea.ac.uk/~nlct/</span></a></div><br /> <div class="date" ><span class="ecrm-1200">2011-04-02</span></div> </div> <!--l. 27--><p class="indent" > The <span class="ecss-1000">glossaries </span>bundle is supplied with the package <span class="ecss-1000">mfirstuc</span><a id="dx1-2"></a> which provides the command: </p><!--l. 29--><p class="indent" > <hr><div title="Definition"><span class="marginpar"><span class="ectt-0900">\makefirstuc</span><span class="ectt-0900"> </span></span><a id="dx1-3"></a> <span class="ectt-1000">\makefirstuc{</span><span class="cmsy-10">⟨</span><span class="ecti-1000">stuff </span><span class="cmsy-10">⟩</span><span class="ectt-1000">} </span></div><hr> </p><!--l. 31--><p class="noindent" > This makes the first object of <span class="cmsy-10">⟨</span><span class="ecti-1000">stuff </span><span class="cmsy-10">⟩ </span>uppercase unless <span class="cmsy-10">⟨</span><span class="ecti-1000">stuff </span><span class="cmsy-10">⟩ </span>starts with a control sequence followed by a non-empty group, in which case the first object in the group is converted to uppercase. Examples: </p> <ul class="itemize1"> <li class="itemize"><span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{abc}</span></span></span> produces Abc. </li> <li class="itemize"><span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{\emph{abc}}</span></span></span> produces <span class="ecti-1000">Abc </span>(<span class="ectt-1000">\MakeUppercase</span><a id="dx1-4"></a> has been applied to the letter “a” rather than <span class="ectt-1000">\emph</span>). Note however that <div class="verbatim" id="verbatim-1"> \makefirstuc{{\em abc}} </div> <!--l. 44--><p class="nopar" > produces <span class="ecti-1000">ABC </span>(first object is <span class="obeylines-h"><span class="verb"><span class="ectt-1000">{\em</span><span class="ectt-1000"> abc}</span></span></span> so equivalent to <span class="obeylines-h"><span class="verb"><span class="ectt-1000">\MakeUppercase{\em</span><span class="ectt-1000"> abc}</span></span></span>), and </p> <div class="verbatim" id="verbatim-2"> {\makefirstuc{\em abc}} </div> <!--l. 49--><p class="nopar" > produces abc (<span class="obeylines-h"><span class="verb"><span class="ectt-1000">\em</span></span></span> doesn’t have an argument therefore first object is <span class="obeylines-h"><span class="verb"><span class="ectt-1000">\em</span></span></span> so equivalent to <span class="obeylines-h"><span class="verb"><span class="ectt-1000">{\MakeUppercase{\em}abc}</span></span></span>). </p></li> <li class="itemize"><span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{{\’a}bc}</span></span></span> produces �bc. </li> <li class="itemize"><span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{\ae</span><span class="ectt-1000"> bc}</span></span></span> produces �bc. </li> <li class="itemize"><span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{{\ae}bc}</span></span></span> produces �bc. </li> <li class="itemize"><span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{{</span><span class="ectt-1000">�}bc}</span></span></span> produces �bc. </li></ul> <!--l. 63--><p class="noindent" >Note that non-Latin or accented characters appearing at the start of the text must be placed in a group (even if you are using the <span class="ecss-1000">inputenc</span><a id="dx1-5"></a> package) due to expansion issues. </p><!--l. 67--><p class="indent" > <div class="important" title="Important Note"> In version 1.02 of <span class="ecss-1000">mfirstuc</span>, a bug fix resulted in a change in output if the first object is a control sequence followed by an empty group. Prior to version 1.02, <span class="obeylines-h"><span class="verb"><span class="ectt-1000">\makefirstuc{\ae{}bc}</span></span></span> produced �Bc. However as from version 1.02, it now produces �bc. </div> </p><!--l. 73--><p class="noindent" > </p><!--l. 75--><p class="indent" > Note also that </p> <div class="verbatim" id="verbatim-3"> \newcommand{\abc}{abc}  <br />\makefirstuc{\abc} </div> <!--l. 79--><p class="nopar" > produces: ABC. This is because the first object in the argument of <span class="ectt-1000">\makefirstuc </span>is <span class="ectt-1000">\abc</span>, so it does <span class="obeylines-h"><span class="verb"><span class="ectt-1000">\MakeUppercase{\abc}</span></span></span>. Whereas: </p> <div class="verbatim" id="verbatim-4"> \newcommand{\abc}{abc}  <br />\expandafter\makefirstuc\expandafter{\abc} </div> <!--l. 86--><p class="nopar" > produces: Abc. There is a short cut command which will do this: </p><!--l. 88--><p class="indent" > <hr><div title="Definition"><span class="marginpar"><span class="ectt-0900">\xmakefirstuc</span><span class="ectt-0900"> </span></span><a id="dx1-6"></a> <span class="ectt-1000">\xmakefirstuc{</span><span class="cmsy-10">⟨</span><span class="ecti-1000">stuff </span><span class="cmsy-10">⟩</span><span class="ectt-1000">} </span></div><hr> </p><!--l. 90--><p class="noindent" > This is equivalent to <span class="ectt-1000">\expandafter\makefirstuc\expandafter{</span><span class="cmsy-10">⟨</span><span class="ecti-1000">stuff </span><span class="cmsy-10">⟩</span><span class="ectt-1000">}</span>. So </p> <div class="verbatim" id="verbatim-5"> \newcommand{\abc}{abc}  <br />\xmakefirstuc{\abc} </div> <!--l. 95--><p class="nopar" > produces: Abc. </p><!--l. 100--><p class="indent" > <div class="important" title="Important Note"> <span class="ectt-1000">\xmakefirstuc </span>only performs one level expansion on the first object in its argument. It does not fully expand the entire argument. </div> </p><!--l. 104--><p class="noindent" > </p><!--l. 106--><p class="indent" > If you want to use an alternative command to convert to uppercase, for example <span class="ectt-1000">\MakeTextUppercase</span>,<span class="footnote-mark"><a href="#fn1x0" id="fn1x0-bk"><sup class="textsuperscript">1</sup></a></span><a id="x1-7f1"></a> you can redefine <span class="ectt-1000">\glsmakefirstuc</span>. For example: </p> <div class="verbatim" id="verbatim-6"> \renewcommand{\glsmakefirstuc}[1]{\MakeTextUppercase #1} </div> <!--l. 112--><p class="nopar" > </p> <div class="footnotes"><!--l. 108--><p class="indent" > <span class="footnote-mark"><a href="#fn1x0-bk" id="fn1x0"><sup class="textsuperscript">1</sup></a></span><span class="ecrm-0800">defined in the </span><span class="ecss-0800">textcase </span><span class="ecrm-0800">package</span></p> </div> </body></html>