Code: Select all
\DeclareRobustCommand\hspace{\@ifstar\@hspacer\@hspace}
\def\@hspace#1{\hskip #1\relax}
\def\@hspacer#1{\vrule \@width\z@\nobreak
\hskip #1\hskip \z@skip}
hskip
as well as
kern
are TeX primitives (which LaTeX is based on). So, that tells us they are different.
hskip, meaning some horizontal skipping
The implementation of kern from tex.web:
Code: Select all
@ A |kern_node| has a |width| field to specify a (normally negative)
amount of spacing. This spacing correction appears in horizontal lists
between letters like A and V when the font designer said that it looks
better to move them closer together or further apart. A kern node can
also appear in a vertical list, when its `|width|' denotes additional
spacing in the vertical direction. The |subtype| is either |normal| (for
kerns inserted from font information or math mode calculations) or |explicit|
(for kerns inserted from \.{\\kern} and \.{\\/} commands) or |acc_kern|
(for kerns inserted from non-math accents) or |mu_glue| (for kerns
inserted from \.{\\mkern} specifications in math formulas).
So, kern has a completely different purpose.
The smart way: Calm down and take a deep breath, read posts and provided links attentively, try to understand and ask if necessary.