Best practice for kerning?

The biggest issue in font design seems to be kerning. I spend about eight times longer messing around with kerning than I do with actually making the design.  Kerning is always the first thing that gets criticised; and the inevitability of 'missing one' is a huge frustration. 

What's the best way to ensure decent kerning? FontLab's automatic kerning of certain pairs (but not all pairs) is 'non-optimal' – but it strikes me that kerning is exactly the sort of thing that computers ought to be doing for us, yet neither FontLab nor Glyphs do this well, if at all, without third-party python scripts, etc. 

Currently, I'm just setting large swathes of text in my font, or creating random combinations of glyphs, looking through it, and then manually adjusting by eye in FontLab when I see something that looks wrong. 

Am I missing something? Thanks.

Comments

  • John Hudson
    John Hudson Posts: 3,685
    edited 6:33PM
    You need sets of systematic test strings that you can step through, targeting individual pair combinations in context. Here, for example, is my basic set for Latin lc-to-lc spacing and kerning. The pain in kerning is not this stuff: it’s the exceptions for diacritic letters.

    aa bazaar 
    ab habits 
    ac back 
    ad hadrian 
    ae achaea 
    af cafeteria 
    ag haggard 
    ah maharaja 
    ai said 
    aj major 
    ak make 
    al caliph 
    am same 
    an random 
    ao extraordinary 
    ap perhaps 
    aq radiopaque 
    ar share 
    as chase 
    at hate 
    au because 
    av have 
    aw hawk 
    ax taxman 
    ay maypole 
    az magazine 
    aß Anmaßlichkeit 
    ba lambada 
    bb lobby 
    bc subcommittee 
    bd subdivide 
    be amber 
    bf clubfoot 
    bg subgroup 
    bh clubhouse 
    bi ambivalent 
    bj subject 
    bk subkingdom 
    bl public 
    bm submarine 
    bn obnoxious 
    bo about 
    bp bombproof 
    bq subquality 
    br ambrosia 
    bs observed 
    bt obtained 
    bu ambulance 
    bv obviously 
    bw subway 
    bx subxerophilous 
    by cubbyhole 
    bz subzone 
    ca incan 
    cb ecbolic 
    cc according 
    cd anecdote 
    ce sincere 
    cf flicflac 
    cg ecgonine 
    ch anchovies 
    ci recite 
    cj arcjet 
    ck reckless 
    cl disclose 
    cm acme 
    cn picnic 
    co beachcomber 
    cp ecphonesis 
    cq acquire 
    cr across 
    cs politics 
    ct factual 
    cu haircut 
    cv mechanicville 
    cw cwm 
    cx acxoyatl 
    cy adipocyte 
    cz eczema 
    da pendant 
    db goodbye 
    dc broadcast 
    dd added 
    de madder 
    df grandfather 
    dg knowledge 
    dh childhood 
    di undid 
    dj adjustment 
    dk handkerchief 
    dl hardly 
    dm administration 
    dn didnt 
    do undone 
    dp standpoint 
    dq headquarters 
    dr children 
    ds hands 
    dt width 
    du endure 
    dv advantage 
    dw edwin 
    dx tolodxi 
    dy bodybuilder 
    dz adze 
    ea year 
    eb baseball 
    ec because 
    ed redden 
    ee been 
    ef before 
    eg began 
    eh behind 
    ei their 
    ej rejected 
    ek weekly 
    el well 
    em hemlock 
    en unending 
    eo people 
    ep repertory 
    eq required 
    er were 
    es these 
    et methyl 
    eu neutral 
    ev seven 
    ew newer 
    ex next 
    ey theyre 
    ez squeeze 
    eß abgießend 
    fa defame 
    fb halfback 
    fc briefcase 
    fd serfdom 
    fe lifers 
    ff office 
    fg afghan 
    fh offhand 
    fi defile 
    fj halfje 
    fk calfkill 
    fl influx 
    fm feoffment 
    fn aloofness 
    fo california 
    fp offprint 
    fq futalaufquen 
    fr alfred 
    fs beliefs 
    ft after 
    fu awful 
    fv arfvedsonite 
    fw halfway 
    fx afxentiou 
    fy acidifying 
    fz styfziekte 
    ga against 
    gb pegboard 
    gc dogcart 
    gd kingdom 
    ge forget 
    gf meaningful 
    gg suggested 
    gh higher 
    gi forgive 
    gj logjam 
    gk gingko 
    gl english 
    gm judgment 
    gn foreigner 
    go ungodly 
    gp bagpipe 
    gq ngqika 
    gr ungrateful 
    gs things 
    gt washington 
    gu figure 
    gv dogvane 
    gw dogwood 
    gx longxuyen 
    gy androgyne 
    gz zigzag 
    ha that 
    hb neighborhood 
    hc forthcoming 
    hd birthday 
    he them 
    hf youthful 
    hg churchgoing 
    hh withheld 
    hi shire 
    hj highjacker 
    hk latchkey 
    hl highly 
    hm establishment 
    hn technical 
    ho whore 
    hp birthplace 
    hq earthquake 
    hr through 
    hs months 
    ht eighth 
    hu church 
    hv boschvark 
    hw highway 
    hx meohx 
    hy anhydrous 
    hz mahzor 
    ia social 
    ib possible 
    ic which 
    id side 
    ie experience 
    if rife 
    ig might 
    ih likelihood 
    ii skiing 
    ij marijuana 
    ik like 
    il will 
    im dime 
    in shine 
    io national 
    ip equipment 
    iq technique 
    ir theirs 
    is chisel 
    it chitin 
    iu medium 
    iv give 
    iw handiwork 
    ix sixes 
    iy biyearly 
    iz size 
    iß Anreißlehre 
    ja ajar 
    jb rajbansi 
    jc wojcik 
    jd oujda 
    je subject 
    jf fajfer 
    jg bajgier 
    jh bijhalen 
    ji djinn 
    jj hajji 
    jk rijksdaalder 
    jl majlis 
    jm jajman 
    jn jnana 
    jo major 
    jp rajpramukh 
    jq fejqien 
    jr bajra 
    js wijsmethod 
    jt mujtahid 
    ju adjust 
    jv blijver 
    jw bijwoner 
    jx dijxhoorn 
    jy jyngine 
    jz gijzegm 
    ka remarkable 
    kb workbench 
    kc bookcase 
    kd breakdown 
    ke quicken 
    kf breakfast 
    kg background 
    kh stockholder 
    ki unkind 
    kj blackjack 
    kk bookkeeping 
    kl quickly 
    km workmen 
    kn unknown 
    ko reckon 
    kp cockpit 
    kq cuckquean 
    kr bankruptcy 
    ks weeks 
    kt cocktail 
    ku pickup 
    kv lekvar 
    kw backward 
    kx kickxia 
    ky valkyrie 
    kz achakzai 
    la elastic 
    lb elbow 
    lc welcome 
    ld colder 
    le peopled 
    lf sulfide 
    lg pilgrim 
    lh schoolhouse 
    li unlike 
    lj killjoy 
    lk walked 
    ll allergy 
    lm almost 
    ln illness 
    lo elope 
    lp helper 
    lq catafalque 
    lr already 
    ls also 
    lt culture 
    lu value 
    lv themselves 
    lw always 
    lx calxes 
    ly flyleaf 
    lz colza 
    ma unmarked 
    mb number 
    mc armchair 
    md filmdom 
    me summer 
    mf comfort 
    mg slumgullion 
    mh farmhouse 
    mi diminish 
    mj jimjam 
    mk gymkhana 
    ml firmly 
    mm community 
    mn columns 
    mo remorse 
    mp important 
    mq kumquat 
    mr comrade 
    ms himself 
    mt warmth 
    mu tumult 
    mv circumvent 
    mw teamwork 
    mx xemxija 
    my daimyos 
    mz hamza 
    na rename 
    nb unbroken 
    nc since 
    nd andover 
    ne shiner 
    nf information 
    ng longhorn 
    nh inherit 
    ni united 
    nj enjoyed 
    nk thinker 
    nl only 
    nm government 
    nn cannot 
    no cannot 
    np input 
    nq inquiry 
    nr sunrise 
    ns against 
    nt into 
    nu innumerable 
    nv involved 
    nw meanwhile 
    nx anxiety 
    ny anyone 
    nz bronze 
    oa board 
    ob problem 
    oc social 
    od goodness 
    oe does 
    of profess 
    og program 
    oh coherent 
    oi going 
    oj project 
    ok looker 
    ol hold 
    om home 
    on honest 
    oo tool 
    op people 
    oq eloquent 
    or for 
    os most 
    ot moth 
    ou your 
    ov hover 
    ow blowhard 
    ox boxer 
    oy boyhood 
    oz dozen 
    oß Stoßlast 
    pa depart 
    pb shipbuilding 
    pc topcoat 
    pd updated 
    pe spent 
    pf helpful 
    pg campground 
    ph ephemera 
    pi spirit 
    pj skipjack 
    pk upkeep 
    pl people 
    pm development 
    pn dampness 
    po upon 
    pp support 
    pq popquiz 
    pr reprove 
    ps perhaps 
    pt scepter 
    pu republic 
    pv hopvine 
    pw upward 
    px qaopx 
    py antipyrine 
    pz leipzig 
    qa aqaba 
    qb shuqba 
    qc qcepo 
    qd taluqdar 
    qe ashqelon 
    qf cinqfoil 
    qg iraqgate 
    qh fiqh 
    qi iraqis 
    qj feqjakuqe 
    qk aqkiyenik 
    ql taqlid 
    qm luqman 
    qn qnaitra 
    qo qoph 
    qp maqpiato 
    qq zaqqum 
    qr miqra 
    qs buqsha 
    qt qtrah 
    qu requite 
    qv qvint 
    qw acqwyte 
    qx clerqx 
    qy qyrghyz 
    qz ahmaqzai 
    ra general 
    rb urban 
    rc church 
    rd warden 
    re dared 
    rf surface 
    rg large 
    rh perhaps 
    ri shrill 
    rj perjury 
    rk firkin 
    rl world 
    rm former 
    rn government 
    ro from 
    rp purpose 
    rq torque 
    rr carried 
    rs first 
    rt partner 
    ru true 
    rv service 
    rw forward 
    rx marxist 
    ry acrylic 
    rz scherzo 
    sa unsafe 
    sb husband 
    sc school 
    sd tuesday 
    se chosen 
    sf successful 
    sg disguised 
    sh fishes 
    si rising 
    sj misjudged 
    sk asked 
    sl island 
    sm unsmooth 
    sn wasnt 
    so ensor 
    sp inspire 
    sq disquiet 
    sr classroom 
    ss less 
    st sister 
    su result 
    sv transverse 
    sw answer 
    sx mesx 
    sy assyria 
    sz janszoon 
    ta state 
    tb football 
    tc kitchen 
    td outdoor 
    te after 
    tf platform 
    tg outgoing 
    th other 
    ti noting 
    tj bootjack 
    tk catkin 
    tl little 
    tm department 
    tn witness 
    to motor 
    tp output 
    tq cotquean 
    tr country 
    ts its 
    tt better 
    tu return 
    tv postvocalic 
    tw antwerp 
    tx postxyphoid 
    ty style 
    tz blitzed 
    ua individual 
    ub public 
    uc such 
    ud study 
    ue question 
    uf sufficient 
    ug through 
    uh brouhaha 
    ui quite 
    uj hallelujah 
    uk duke 
    ul would 
    um number 
    un sundry 
    uo continuous 
    up duped 
    uq bouquet 
    ur our 
    us must 
    ut butch 
    uu vacuum 
    uv juvenile 
    uw rauwolfia 
    ux bauxite 
    uy buy
    uz puzzle 
    uß Fußliek 
    va available 
    vb vberte 
    vc novcic 
    vd plovdiv 
    ve saved 
    vf thravffe 
    vg avgas 
    vh givhans 
    vi service 
    vj evje 
    vk sovkhoz 
    vl pavlov 
    vm tradevman 
    vn czarevna 
    vo revoke 
    vp sovprene 
    vq sovquinet 
    vr chevron 
    vs revs 
    vt polovtsians 
    vu revue 
    vv flivver 
    vw vwang 
    vx molynevx 
    vy envying 
    vz evzone 
    wa prewar 
    wb cowboy 
    wc newcomer 
    wd chowder 
    we power 
    wf awful 
    wg blowgun 
    wh arrowhead 
    wi showing 
    wj plowjogger 
    wk hawken 
    wl knowledge 
    wm showmanship 
    wn downer 
    wo unwound 
    wp viewpoint 
    wq cawquaw 
    wr rewrite 
    ws news 
    wt growth 
    wu swung 
    wv lowveld 
    ww glowworm 
    wx hawxhurst 
    wy lawyer 
    wz frowzy 
    xa example 
    xb oxbow 
    xc except 
    xd sexdecillion 
    xe fixed 
    xf oxford 
    xg foxglove 
    xh exhibit 
    xi existence 
    xj vaxjo 
    xk boxkeeper 
    xl axle 
    xm axminster 
    xn laxness 
    xo exotic 
    xp experience 
    xq exquisite 
    xr banxring 
    xs coxswain 
    xt dextrose 
    xu sexual 
    xv poxvirus 
    xw boxwood 
    xx waxxenn 
    xy oxygen 
    xz exzodiacal 
    ya banyan 
    yb maybe 
    yc cycle 
    yd hydrogen 
    ye hyena 
    yf playful 
    yg oxygen 
    yh anyhow 
    yi trying 
    yj pyjamas 
    yk tyke 
    yl style 
    ym symbol 
    yn polynomial 
    yo anyone 
    yp type 
    yq triptyque 
    yr thyroid 
    ys aneurysm 
    yt anything 
    yu picayune 
    yv polyvinyl 
    yw anyway 
    yx asphyxiate 
    yy gayyou 
    yz analyzed 
    za organization 
    zb whizbang 
    zc mezcal 
    zd mazdaism 
    ze sized 
    zf topazfels 
    zg whizgig 
    zh muzhik 
    zi amazing 
    zj muzjik 
    zk blitzkrieg 
    zl puzzle 
    zm mizmaze 
    zn ghaznevid 
    zo horizon 
    zp mizpah 
    zq mezquit 
    zr arzrunite 
    zs vammazsa 
    zt aztec 
    zu seizure 
    zv rendezvous 
    zw buzzword 
    zx nazxul 
    zy enzyme 
    zz pizzle 
    ß
    ßa großartige 
    ßb Fußboden 
    ßc Fäßchen 
    ßd Stoßdegen 
    ße außerdem 
    ßf Fußfessel 
    ßg Bußgeld 
    ßh Gießharz 
    ßi Anstößigkeit 
    ßk Gießkanne 
    ßl Maßlinie 
    ßm Großmutter 
    ßn Reißnagel 
    ßo Großonkel 
    ßp Bußpredigt 
    ßq Stoßquerschnitt 
    ßr Fußrücken 
    ßs bloßstellen 
    ßt Großtante 
    ßu Abstoßung 
    ßv Fußvolk 
    ßw Fußwege 
    ßz Reißzwecke
  • John Hudson
    John Hudson Posts: 3,685
    Obviously, there’s a lot of stuff in that list that doesn’t require kerning, or that will be covered by class kerning. I still find it useful to see everything, and to see combinations popping up in different contexts, because I find it helps to ireratively review and refine.