Program touch-tone instructions for my fingers
Python 2, 423 bytes (no */# support)

k='/.@~ABC~DEF~GHI~JKL~MNO~PQRSTUV~WXYZ+~~~ '
d='123456789~0'
g={c:(i/12,i%12/4,i%4)for i,c in enumerate(k)}
g.update(((c,(i/3,i%3,0))for i,c in enumerate(d)))
del g['~']
def f(s):
 s,a=[c for c in s[::-1].upper() if c in g],[]
 q=[1,1,1]
 while s:
  y,x,r=g[s.pop()]
  n,m,_=(9,9,9)if not s else g[s[-1]]
  v=y-q[x]
  q[x]=y
  a+=[(v&lt;0)*'-'+`x+1`+(v!=0)*`abs(v)`]+r*[`x+1`]+(c in k and(y,x)==(n,m))*['P']
 print','.join(a)