This is so ugly. People should learn English instead of using antiquated text input methods ;)
Suckless is also about the input interface. If a typographic system sucks, because it consists of thousands of letters, it has to be fixed. On Tue, 12 Feb 2019 at 10:12, <[email protected]> wrote: > > commit f5036b90efd9423d805923a0bc73cd54e30e72ab > Author: Hiltjo Posthuma <[email protected]> > AuthorDate: Tue Feb 12 19:10:43 2019 +0100 > Commit: Hiltjo Posthuma <[email protected]> > CommitDate: Tue Feb 12 19:10:43 2019 +0100 > > fix crash when XOpenIM returns NULL > > for example when IME variables are set, but the program is not started > (yet). > > diff --git a/dmenu.c b/dmenu.c > index f803149..ae56f4f 100644 > --- a/dmenu.c > +++ b/dmenu.c > @@ -664,8 +664,17 @@ setup(void) > CWOverrideRedirect | CWBackPixel | CWEventMask, > &swa); > XSetClassHint(dpy, win, &ch); > > - /* open input methods */ > - xim = XOpenIM(dpy, NULL, NULL, NULL); > + > + /* input methods */ > + if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL) { > + XSetLocaleModifiers("@im=local"); > + if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL) { > + XSetLocaleModifiers("@im="); > + if ((xim = XOpenIM(dpy, NULL, NULL, NULL)) == NULL) > + die("XOpenIM failed. Could not open input > device.\n"); > + } > + } > + > xic = XCreateIC(xim, XNInputStyle, XIMPreeditNothing | > XIMStatusNothing, > XNClientWindow, win, XNFocusWindow, win, NULL); > >
