7

How can I insert these numeral symbols

enter image description here

in LaTeX? Are these available via some package?

Werner
  • 603,163
  • 3
    do you have a font with them (if not they could be included as graphics)] – David Carlisle Jan 06 '20 at 00:59
  • 2
    There seems to be one non-free font that provides them: https://www.linguistsoftware.com/linup.htm. None of the free fonts seem to. – Alan Munn Jan 07 '20 at 13:56
  • @AlanMunn Interesting! They look more fancy than the above ones. One could still get similar characters with the calligraphy library, I think. –  Jan 07 '20 at 17:06

2 Answers2

12

You could build them with TikZ, see here for a discussion. TikZ does not only allow us to draw these things, but it also comes with all the means to do the modulo arithmetic to make this enterprise a bit enjoyable. (One could make it much more "interesting" and shorter using tricks like the turtle library. However, this post is to give you a start without these gimmicks.) This implements the numbers 1-20. Their font size and weight adjusts itself to the surrounding.

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\makeatletter
\DeclareRobustCommand{\checkbold}[1]{% https://tex.stackexchange.com/a/24635/121799
 \edef\@tempa{\math@version}\edef\@tempb{bold}%
 \ifx\@tempa\@tempb%
  \def#1{1}%
 \else
  \def#1{0}%
 \fi}
\makeatother 
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.5ex,0);}},
2/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.4ex,0)-- (0.8ex,1ex);}},
3/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.3ex,0)-- (0.6ex,1ex) -- (0.9ex,0ex);}},
4/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.25ex,0)-- (0.5ex,1ex) -- (0.75ex,0ex)-- (1ex,1ex) ;}},
5/.style={code={\draw (0,0) -- (1ex,0.4ex);}},
10/.style={code={\draw (0,0) -- (1ex,0.3ex) -- (0,0.6ex);}},
15/.style={code={\draw (0,0) -- (1ex,0.25ex) -- (0,0.5ex) --(1ex,0.75ex);}},
}
\newcommand{\InupiaqNo}[2][]{\checkbold\tmp%
\scalerel*{%
\begin{tikzpicture}[baseline=0em,line width={(1+0.45*\tmp)*0.06em},
    line cap=round,line join=round,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
  \fi   
 \fi
\fi
\end{tikzpicture}}{M}%
}
\begin{document}
\foreach \X [evaluate=\X as \Y using {int(\X+10)}] in {1,...,10}
{$\X:~\InupiaqNo{\X}\ifnum\X=10 \quad~\,\else\qquad\fi\Y:~\InupiaqNo{\Y}$\par}

{\Large $12:~\InupiaqNo{12}$} {\Large\boldmath $12:~\InupiaqNo{12}$} 
{\Huge $7:~\InupiaqNo{7}$} {\Huge\boldmath $17:~\InupiaqNo{17}$}
\end{document}

enter image description here

EDIT: Made them single-stroke characters, thanks to @DavidCarlisle for reminding me.

It might be just me but somehow these symbols remind me of something...

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\makeatletter
\DeclareRobustCommand{\checkbold}[1]{% https://tex.stackexchange.com/a/24635/121799
 \edef\@tempa{\math@version}\edef\@tempb{bold}%
 \ifx\@tempa\@tempb%
  \def#1{1}%
 \else
  \def#1{0}%
 \fi}
\makeatother 
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.5ex,0);}},
2/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.4ex,0)-- (0.8ex,1ex);}},
3/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.3ex,0)-- (0.6ex,1ex) -- (0.9ex,0ex);}},
4/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.25ex,0)-- (0.5ex,1ex) -- (0.75ex,0ex)-- (1ex,1ex) ;}},
5/.style={code={\draw (0,0) -- (1ex,0.4ex);}},
10/.style={code={\draw (0,0) -- (1ex,0.3ex) -- (0,0.6ex);}},
15/.style={code={\draw (0,0) -- (1ex,0.25ex) -- (0,0.5ex) --(1ex,0.75ex);}},
}
\newcommand{\InupiaqNo}[2][]{\checkbold\tmp%
\scalerel*{%
\begin{tikzpicture}[baseline=0em,line width={(1+0.45*\tmp)*0.06em},
    line cap=round,line join=round,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
  \fi   
 \fi
\fi
\end{tikzpicture}}{M}%
}
\begin{document}
\Huge\noindent\pagecolor{black}\color{green}\foreach \X in {1,...,496}
{\pgfmathtruncatemacro{\myrnd}{1+20*rnd}\InupiaqNo{\myrnd}\space}

\end{document}

enter image description here

ADDENDUM: Just for fun: played a bit with the cool calligraphy library. There is a lot room for improvement (on my side, of course) but this was just to try out things. It also stores the characters in saveboxes which is advantageous if you use lots of them.

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\usetikzlibrary{calligraphy}
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi to[bend right=10]  (0.5ex,0);}},
2/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi
to[bend right=10] (0.4ex,0) to[bend left=10] (0.8ex,1ex);}},
3/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi
to[bend right=10] (0.3ex,0) to[bend left=10] (0.6ex,1ex) to[bend right=10] (0.9ex,0ex);}},
4/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi
to[bend right=10] (0.25ex,0) to[bend left=10] (0.5ex,1ex) to[bend right=10]
(0.75ex,0ex) to[bend left=10] (1ex,1ex) ;}},
5/.style={code={\calligraphy (0,0) to[bend right=10] (1ex,0.4ex);}},
10/.style={code={\calligraphy (0,0) to[bend right=10] (1ex,0.3ex) to[bend
left=10] (0,0.6ex);}},
15/.style={code={\calligraphy (1ex,0.75ex) to[bend left=10] (0,0.5ex)
 to[bend right=10] (1ex,0.25ex) to[bend left=10] (0,0);}},
}
\newcommand{\InupiaqNoTikZ}[2][]{%
\begin{tikzpicture}[baseline=0em,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \pen (-90:{0.06ex})  -- (90:{0.06ex});
   \calligraphy[light,looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \pen (-95:{0.08em})  -- (85:{0.08em});
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi;
   \pen (-180:{0.08em}) -- (0:{0.08em});
   \path \ifnum\FiveDigits=0 \else (0.08ex,1.28ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
   \ifnum\the\numexpr\SingleDigits*\FiveDigits>0
   \fi
  \fi   
 \fi
\fi
\end{tikzpicture}}
\foreach \X in {1,...,20}
{\expandafter\newsavebox\csname InupiaqBox\X\endcsname
\global\expandafter\sbox\csname InupiaqBox\X\endcsname{\InupiaqNoTikZ{\X}}}

\newcommand{\InupiaqNo}[1]{\scalerel*{\expandafter\usebox\csname InupiaqBox#1\endcsname}{M}%
}
\begin{document}
\Huge
\foreach \X in {1,...,20} {\X:\InupiaqNo{\X}\space}
\end{document}

enter image description here

  • 1
    nice but my understanding from https://www.languagesandnumbers.com/how-to-count-in-inupiaq/en/esi/ and elsewhere that they are supposed to be a singe stroke so connected top bars – David Carlisle Jan 06 '20 at 09:30
  • 1
    @DavidCarlisle Thanks! Now they are. –  Jan 06 '20 at 12:21
1

This is just a small adjustment to the discussion. The symbol used above for 20 is actually the digit for 0 in the base 20 numeral system used by Kaktovik, not the symbol for 20 see Bartley, Wm. Clark "Making the Old Way Count" and Silva, Eduardo Marín; Miller, Kirk; Strand, Catherine "Unicode request for Kaktovik numerals (L2/21-058R)". 20 is written as the digit for 1 followed by the digit for 0.

This revision of the the first (most simple) LaTeX solution by @user194703 addresses this issue

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\makeatletter
\DeclareRobustCommand{\checkbold}[1]{% https://tex.stackexchange.com/a/24635/121799
 \edef\@tempa{\math@version}\edef\@tempb{bold}%
 \ifx\@tempa\@tempb%
  \def#1{1}%
 \else
  \def#1{0}%
 \fi}
\makeatother 
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.5ex,0);}},
2/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.4ex,0)-- (0.8ex,1ex);}},
3/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.3ex,0)-- (0.6ex,1ex) -- (0.9ex,0ex);}},
4/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.25ex,0)-- (0.5ex,1ex) -- (0.75ex,0ex)-- (1ex,1ex) ;}},
5/.style={code={\draw (0,0) -- (1ex,0.4ex);}},
10/.style={code={\draw (0,0) -- (1ex,0.3ex) -- (0,0.6ex);}},
15/.style={code={\draw (0,0) -- (1ex,0.25ex) -- (0,0.5ex) --(1ex,0.75ex);}},
}
\newcommand{\InupiaqNo}[2][]{\checkbold\tmp%
\scalerel*{%
\begin{tikzpicture}[baseline=0em,line width={(1+0.45*\tmp)*0.06em},
    line cap=round,line join=round,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \pgfmathtruncatemacro{\SingleDigits}{1}%
   \pgfmathtruncatemacro{\FiveDigits}{0}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
   (0,0) (1ex,2ex);
   \begin{scope} [xshift=1ex,yshift=0ex]
   \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
   \end{scope}
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
  \fi   
 \fi
\else
 \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
 \path (0,0) (1ex,2ex); 
\fi
\end{tikzpicture}}{M}%
}
\begin{document}
\foreach \X [evaluate=\X as \Y using {int(\X+10)}] in {1,...,10}
{$\X:~\InupiaqNo{\X}\ifnum\X=10 \quad~\,\else\qquad\fi\Y:~\InupiaqNo{\Y}$\par}

{\Large $12:~\InupiaqNo{12}$} {\Large\boldmath $12:~\InupiaqNo{12}$} {\Huge $7:~\InupiaqNo{7}$} {\Huge\boldmath $17:~\InupiaqNo{17}$} \end{document}