addHelp ::
    Config ModKey -> Theme -> Language -> Font ->
    Widget.Size -> Widget f -> Widget f
addHelp config theme language font size widget =
    widget
    & Widget.wState . Widget._StateFocused . Lens.mapped %~
    (EventMapHelp.addHelpView size ?? env)
    where
        env =
            HelpEnv
            { _heConfig =
                EventMapHelp.Config
                { EventMapHelp._configOverlayDocKeys = config ^. Config.helpKeys
                }
            , _heAnimIdPrefix = ["help box"]
            , _heDirLayout = language ^. has
            , _heDirTexts = language ^. has
            , _heEventMapTexts = language ^. has
            , _heGlueTexts = language ^. has
            , _heStyle = helpStyle font (theme ^. Theme.help)
            , _heCommonTexts = language ^. has
            }
addHelp ::
    Config ModKey -> Theme -> Language -> Font ->
    Widget.Size -> Widget f -> Widget f
addHelp config theme language font size widget =
    widget
    & Widget.wState . Widget._StateFocused . Lens.mapped %~
    (EventMapHelp.addHelpView size ?? env)
    where
        env =
            HelpEnv
            { _heConfig =
                EventMapHelp.Config
                { EventMapHelp._configOverlayDocKeys = config ^. Config.helpKeys
                }
            , _heAnimIdPrefix = ["help box"]
            , _heDirLayout = language ^. has
            , _heDirTexts = language ^. has
            , _heEventMapTexts = language ^. has
            , _heGlueTexts = language ^. has
            , _heStyle = helpStyle font (theme ^. Theme.help)
            , _heCommonTexts = language ^. has
            }
addHelp config theme language font size widget =
    widget
    & Widget.wState . Widget._StateFocused . Lens.mapped %~
    (EventMapHelp.addHelpView size ?? env)
    where
        env =
            HelpEnv
            { _heConfig =
                EventMapHelp.Config
                { EventMapHelp._configOverlayDocKeys = config ^. Config.helpKeys
                }
            , _heAnimIdPrefix = ["help box"]
            , _heDirLayout = language ^. has
            , _heDirTexts = language ^. has
            , _heEventMapTexts = language ^. has
            , _heGlueTexts = language ^. has
            , _heStyle = helpStyle font (theme ^. Theme.help)
            , _heCommonTexts = language ^. has
            }