Browse Source

added CharName; changed behaviour of NeuerName

master
Jonathan Spratte 2 years ago
parent
commit
7728d33299
3 changed files with 29 additions and 9 deletions
  1. 8
    2
      DSAchar.sty
  2. BIN
      Doc/doc_DSALaTeX.pdf
  3. 21
    7
      Doc/tex/doc_DSAchar.tex

+ 8
- 2
DSAchar.sty View File

@@ -17,8 +17,10 @@
17 17
     \cs_new_protected:Npn #1
18 18
       {
19 19
         #2~#3
20
-        \cs_gset_protected:Npn #1 { #2 \@ifstar { ~#3 } {} }
21
-        \@ifstar {} {}
20
+        \@ifstar {}
21
+          {
22
+            \cs_gset_protected:Npn #1 { #2 \@ifstar { ~#3 } {} }
23
+          }
22 24
       }
23 25
   }%<<<
24 26
 \newcommand*\DSAcharEigStandard{8}
@@ -355,6 +357,10 @@
355 357
 \NewDocumentCommand \CharParse { m +m }%>>>
356 358
   {
357 359
   }%<<<
360
+\NewExpandableDocumentCommand \CharName { m }%>>>
361
+  {
362
+    \DSAchar_get_key_expandable_inner_b:nnn { #1 } { fullname } { tl }
363
+  }%<<<
358 364
 \NewDocumentCommand \CharBasis { m }%>>>
359 365
   {
360 366
     \tl_set:Nn \l_DSAchar_key_tl { #1 }

BIN
Doc/doc_DSALaTeX.pdf View File


+ 21
- 7
Doc/tex/doc_DSAchar.tex View File

@@ -1,5 +1,5 @@
1 1
 \section{Das \pkg{DSAchar} Paket}
2
-\pkg{DSAchar} stellt Macros zur zentralen Verwaltung von Charaktereigenschaften
2
+\pkg{DSAchar} stellt Makros zur zentralen Verwaltung von Charaktereigenschaften
3 3
 zur Verfügung. Diese Charaktereigenschaften können mittels verschiedener Makros
4 4
 im Text verwendet werden.
5 5
 
@@ -8,16 +8,18 @@ im Text verwendet werden.
8 8
   \begin{syntax}
9 9
     \cs{NeuerName}\marg{Kontrollwort}\marg{Vorname}\marg{Nachname}
10 10
   \end{syntax}
11
-  Definiert ein Macro namens \meta{Kontrollwort}, das bei der ersten Verwendung
11
+  Definiert ein Makro namens \meta{Kontrollwort}, das bei der ersten Verwendung
12 12
   zu „\meta{Vorname} \meta{Nachname}“ expandiert. Bei allen weiteren
13 13
   Verwendungen wird nur der \meta{Vorname} verwendet, es sei denn, es wird ein
14
-  |*| hinter dem Macro verwendet. Bei der ersten Verwendung hat ein
15
-  nachgestellter |*| keinen Einfluss. Die Definition erfolgt global.
14
+  |*| hinter dem Makro verwendet. Wird die gesternte Variante zu erst verwendet,
15
+  zählt es nicht als erste Verwendung -- eine spätere ungesternte Verwendung
16
+  zählt als weiterhin als die erste. Die Definition erfolgt global.
16 17
   Beispiel (links Code, rechts Resultat):\\
17 18
   \begin{minipage}[b]{.45\linewidth}
18 19
     \begin{verbatim}
19 20
     \obeylines
20 21
     \NeuerName\iwar{Iwar}{Foll}
22
+    \iwar*
21 23
     \iwar
22 24
     \iwar
23 25
     \iwar*
@@ -26,6 +28,7 @@ im Text verwendet werden.
26 28
   \begin{minipage}[b]{.45\linewidth}
27 29
     \obeylines
28 30
     \NeuerName\iwar{Iwar}{Foll}
31
+    \iwar*
29 32
     \iwar
30 33
     \iwar
31 34
     \iwar*
@@ -48,6 +51,17 @@ im Text verwendet werden.
48 51
 \subsection{Verwendung von Charakteren}%>>>
49 52
 Die Beispiele in diesem Unterabschnitt verwenden den Character \lasse*. Dieser
50 53
 wurde mit dem Code aus \autoref{sec:LasseBluten} definiert.
54
+\begin{function}{\CharName}
55
+  \begin{syntax}
56
+    \cs{CharName}\marg{Kürzel}
57
+  \end{syntax}
58
+  Ist vollständig expandierbar und expandiert zu dem Namen des Charakters
59
+  \meta{Kürzel}. Es expandiert immer auf den vollständigen Namen und führt keine
60
+  Umdefinierung des automatisch erstellten Kürzelmakros von |\NeuerName| durch.
61
+  Ist nur für Charaktere, die mit |\NeuerChar| erstellt wurden, verfügbar.
62
+  Beispielausgabe (\bverb|\CharName{lasse}|): \CharName{lasse}
63
+\end{function}
64
+
51 65
 \begin{function}{\CharBasis}
52 66
   \begin{syntax}
53 67
     \cs{CharBasis}\marg{Kürzel}
@@ -141,7 +155,7 @@ wurde mit dem Code aus \autoref{sec:LasseBluten} definiert.
141 155
   Gibt die angegebene \meta{Liste} des Charakters \meta{Kürzel} aus, als
142 156
   Trennung zwischen den einzelnen Einträgen wird \meta{Trenner} verwendet
143 157
   (Standardeinstellung ", ", also ein Komma gefolgt von einem Leerzeichen). Der
144
-  Unterschied zu den obigen Macros ist das Weglassen des Listennamen und das
158
+  Unterschied zu den obigen Makros ist das Weglassen des Listennamen und das
145 159
   Verhalten bei einer nicht vorhandenen Liste, \cs{CharListe} gibt hier einen
146 160
   eher kryptischen \LaTeX3-Fehler zurück.
147 161
   Beispielausgabe (\bverb|\CharListe{lasse}{manoever}|):\\
@@ -267,9 +281,9 @@ verwendet. Einige können geändert werden:
267 281
   \begin{syntax}
268 282
     \cs{NeueStandards}\meta{*}\marg{Key=Value}
269 283
   \end{syntax}
270
-  Mit diesem Macro können beliebige Werte als Standard für alle zukünftigen
284
+  Mit diesem Makro können beliebige Werte als Standard für alle zukünftigen
271 285
   \cs{NeuerChar}s definiert werden. Wird die gesternte Version verwendet, so
272
-  werden vorherige, mit diesem Macro gesetzte Standards gelöscht und nur die
286
+  werden vorherige, mit diesem Makro gesetzte Standards gelöscht und nur die
273 287
   angegebenen verwendet.
274 288
 \end{function}
275 289
 %<<<

Loading…
Cancel
Save