0

I need to insert a harpoon arrow up with a dash, that can be both at the beginning or at the end of the arrow.

I've found this method but it only allows me to insert normal arrows.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows}

\makeatletter \newcommand@erelb@r[1]{% \mathrel{\tikz[baseline=-.5ex]\draw[#1] (0,0)--(0.3,0);} } % 0 is for nothing % 1 is for arrowhead % 2 is for bar % 3 is for both \newcommand{\erelbar}[1]{@erelbar#1} \def@erelbar#1#2{% \ifcase\numexpr#1*4+#2\relax @erelb@r{-}\or % 00 @erelb@r{->}\or % 01 @erelb@r{-|}\or % 02 @erelb@r{->|}\or % 03 @erelb@r{<-}\or % 10 @erelb@r{<->}\or % 11 @erelb@r{<-|}\or % 12 @erelb@r{<->}\or % 13 @erelb@r{|-}\or % 20 @erelb@r{|->}\or % 21 @erelb@r{|-|}\or % 22 @erelb@r{|<->|}\or % 23 @erelb@r{|<-}\or % 30 @erelb@r{|<->}\or % 31 @erelb@r{|<-|}\or % 32 @erelb@r{|<->|} % 33 \else @wrong \fi } \makeatother \begin{document}

$a\erelbar{11}b$

$\begin{array}{cccc} \erelbar{00} & \erelbar{10} & \erelbar{20} & \erelbar{30} \ \erelbar{01} & \erelbar{11} & \erelbar{21} & \erelbar{31} \ \erelbar{02} & \erelbar{12} & \erelbar{22} & \erelbar{32} \ \erelbar{03} & \erelbar{13} & \erelbar{23} & \erelbar{33} \ \end{array}$ \end{document}

I've tried to use

\@erelb@r{|\righthaproonup}    % 33

but the output is just this: -

egreg
  • 1,121,712

1 Answers1

2

Change the code into

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}

\makeatletter \newcommand@erelb@r[1]{% \mathrel{\tikz[baseline=-.5ex,>={Classical TikZ Rightarrow[harpoon]}]\draw[#1] (0,0)--(0.3,0);} } % 0 is for nothing % 1 is for arrowhead % 2 is for bar % 3 is for both \newcommand{\erelbar}[1]{@erelbar#1} \def@erelbar#1#2{% \ifcase\numexpr#1*4+#2\relax @erelb@r{-}\or % 00 @erelb@r{->}\or % 01 @erelb@r{-|}\or % 02 @erelb@r{->|}\or % 03 @erelb@r{<-}\or % 10 @erelb@r{<->}\or % 11 @erelb@r{<-|}\or % 12 @erelb@r{<->}\or % 13 @erelb@r{|-}\or % 20 @erelb@r{|->}\or % 21 @erelb@r{|-|}\or % 22 @erelb@r{|<->|}\or % 23 @erelb@r{|<-}\or % 30 @erelb@r{|<->}\or % 31 @erelb@r{|<-|}\or % 32 @erelb@r{|<->|} % 33 \else @wrong \fi } \makeatother \begin{document}

$a\erelbar{11}b$

$\begin{array}{cccc} \erelbar{00} & \erelbar{10} & \erelbar{20} & \erelbar{30} \ \erelbar{01} & \erelbar{11} & \erelbar{21} & \erelbar{31} \ \erelbar{02} & \erelbar{12} & \erelbar{22} & \erelbar{32} \ \erelbar{03} & \erelbar{13} & \erelbar{23} & \erelbar{33} \ \end{array}$ \end{document}

enter image description here

egreg
  • 1,121,712