SOLUTION:

<dtml-let res="filteredTreeNodes(REQUEST,
 PAGES,'titleshort','asc')">
 <!-- Character-Navigation -->
 <dtml-call "REQUEST.set('ch','')">
 <dtml-in res>
  <dtml-if "ch!=getTitlealt(REQUEST)[0]">
   <dtml-if "ch!=''">
    &middot;
   </dtml-if>
   <dtml-call "REQUEST.set('ch', getTitlealt(REQUEST)[0].upper())">
   <a href="#ch_<dtml-var ch>">
    <dtml-var ch>
   </a>
  </dtml-if>
 </dtml-in>
 <hr>
 <!-- Title-Navigation -->
 <dtml-call "REQUEST.set('ch','')">
 <dtml-in res>
  <dtml-if "ch!=getTitlealt(REQUEST)[0]">
   <dtml-call "REQUEST.set('ch', getTitlealt(REQUEST)[0].upper())">
   <a name="ch_<dtml-var ch>">
   <h2><dtml-var ch></h2>
  </dtml-if>
  <a href="<dtml-var "getHref2IndexHtml(REQUEST)">">
   <dtml-var "getTitle(REQUEST)">
  </a>
  <br>
 </dtml-in>
</dtml-let>