I might have to change editors now…

The biggest gripe I’ve had with emacs — alright, besides the finger-breaking key combo’s ;-) — is that it is just plain ugly. It just doesn’t fit with my beautiful gtk desktop with anti-aliased truetype fonts. Gvim got this right a long time ago.

But, no longer does this have to be true:

Emacs-gtk with xft support.

I already knew about the gtk interface, but I never heard of the xft support. I got the instructions from EmacsWiki:

$ cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/cvsroot/emacs co -remacs-unicode-2 emacs
$ cd emacs
$ ./configure --with-gtk --enable-font-backend --with-xft
$ make bootstrap && make && sudo make install
$ emacs --enable-font-backend --font "Bitstream Vera Sans Mono-10"

9 thoughts on “I might have to change editors now…

  1. Now this is fricken sweet. I’d like to know how to make it the default-backend, other than aliasing it. Perhaps a entry in .emacs? /me needs to read up on this…

  2. I’m getting as far as make bootstrap but the process craps out as soon as its done compiling c code and starts trying to byte compile elisp files. Here’s the output I’m seeing, beginning with the last successful gcc call:

    gcc -nostdlib `./prefix-args -Xlinker -L/usr/local/lib -znocombreloc` -Wl,-znocombreloc -L/usr/X11R6/lib -o temacs pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o dispnew.o frame.o etc etc …
    RUNEMACS=”`/bin/pwd`/temacs”; cd /usr/local/src/emacs/src/../admin/unidata; make RUNEMACS=”${RUNEMACS}” DSTDIR=/usr/local/src/emacs/src/../lisp/international
    make: don’t know how to make unidata-gen.elc. Stop
    *** Error code 2

    Stop in /usr/local/src/emacs/src.
    *** Error code 1

    Stop in /usr/local/src/emacs.
    *** Error code 1

    Stop in /usr/local/src/emacs.

    In the error output I’m seeing a couple of suspicious things:
    —- at line 33
    Global:delete new
    Global:.MAKEFILE_LIST = /usr/share/mk/sys.mk /etc/make.conf .. /usr/share/mk/bsd.compat.mk ..
    Searching for bsd.cpu.mk…failed.
    Searching for bsd.cpu.mk…failed.
    Searching for bsd.cpu.mk…/usr/share/mk…here…returning /usr/share/mk/bsd.cpu.mk
    Global:.MAKEFILE_LIST = /usr/share/mk/sys.mk /etc/make.conf .. /usr/share/mk/bsd.compat.mk .. /usr
    Global:_CPUCFLAGS =
    lhs = “i386”, rhs = “i386”, op = ==
    Global:MACHINE_CPU = i486
    lhs = “i386”, rhs = “alpha”, op = ==
    lhs = “i386”, rhs = “amd64”, op = ==
    lhs = “i386”, rhs = “ia64”, op = ==
    lhs = “i386”, rhs = “sparc64”, op = ==
    lhs = “i386”, rhs = “alpha”, op = ==
    lhs = “cc”, rhs = “icc”, op = ==
    Global:CFLAGS = -O -pipe ${_CPUCFLAGS}
    Global:.MAKEFILE_LIST = /usr/share/mk/sys.mk /etc/make.conf .. /usr/share/mk/bsd.compat.mk .. /usr
    /share/mk/bsd.cpu.mk ..
    Global:.MAKEFILE_LIST = /usr/share/mk/sys.mk /etc/make.conf .. /usr/share/mk/bsd.compat.mk .. /usr
    /share/mk/bsd.cpu.mk .. ..
    Searching for BSDmakefile…failed.
    Searching for BSDmakefile…/usr/share/mk…failed.
    Searching for makefile…failed.
    Searching for makefile…/usr/share/mk…failed.
    Global:MAKEFILE = Makefile
    Global:.MAKEFILE_LIST = /usr/share/mk/sys.mk /etc/make.conf .. /usr/share/mk/bsd.compat.mk .. /usr
    /share/mk/bsd.cpu.mk .. .. Makefile
    Global:EMACS = ../../src/emacs
    Global:DSTDIR = ../../lisp/international
    Global:RUNEMACS = ${EMACS} -Q –multibyte -batch
    Global:.MAKEFILE_LIST = /usr/share/mk/sys.mk /etc/make.conf .. /usr/share/mk/bsd.compat.mk .. /usr
    /share/mk/bsd.cpu.mk .. .. Makefile ..
    Searching for .depend…failed.
    Searching for .depend…/usr/share/mk…failed.
    Global:.INCLUDES =
    Global:.LIBS =
    SuffFindDeps (all)
    No known suffix on all. Using .NULL suffix
    not adding suffix rules
    all:@ = all
    all:* = all
    SuffFindDeps (/usr/local/src/emacs/src/../lisp/international/charprop.el)
    No known suffix on /usr/local/src/emacs/src/../lisp/international/charprop.el. Using .NULL
    not adding suffix rules
    /usr/local/src/emacs/src/../lisp/international/charprop.el:@ = /usr/local/src/emacs/src/../lisp/in
    /usr/local/src/emacs/src/../lisp/international/charprop.el:* = /usr/local/src/emacs/src/../lisp/in
    SuffFindDeps (unidata-gen.elc)
    No known suffix on unidata-gen.elc. Using .NULL suffix
    adding suffix rules
    trying unidata-gen.elc.c…Searching for unidata-gen.elc.c…failed.
    not there
    trying unidata-gen.elc.cc…Searching for unidata-gen.elc.cc…failed.
    not there
    trying unidata-gen.elc.cpp…Searching for unidata-gen.elc.cpp…failed.
    not there
    trying unidata-gen.elc.cxx…Searching for unidata-gen.elc.cxx…failed.
    not there
    trying unidata-gen.elc.C…Searching for unidata-gen.elc.C…failed.
    not there
    trying unidata-gen.elc.F…Searching for unidata-gen.elc.F…failed.
    not there
    trying unidata-gen.elc.f…Searching for unidata-gen.elc.f…failed.
    not there
    trying unidata-gen.elc.e…Searching for unidata-gen.elc.e…failed.
    not there
    trying unidata-gen.elc.r…Searching for unidata-gen.elc.r…failed.
    not there
    trying unidata-gen.elc.sh…Searching for unidata-gen.elc.sh…failed.
    not there
    trying unidata-gen.elc.y…Searching for unidata-gen.elc.y…failed.
    not there
    trying unidata-gen.elc.l…Searching for unidata-gen.elc.l…failed.
    not there
    unidata-gen.elc:@ = unidata-gen.elc
    unidata-gen.elc:* = unidata-gen.elc
    Searching for unidata-gen.elc…failed.
    Examining unidata-gen.elc…Searching for unidata-gen.elc…failed.
    non-existent…non-existent and no sources…out-of-date.
    unidata-gen.elc:? =
    unidata-gen.elc:> =
    make: don’t know how to make unidata-gen.elc. Stop

    ANY ideas much appreciated!

  3. Forgot to note that unidata-gen.el does exist in what appears to be the right spot, viz, src/admin/unidata .

  4. TexLogic: Are you sure you are using GNU make? BSD make will display the error you mentioned.

  5. I have the same problem to build the eamcs-unicode2. As TexLogic say, I should use gmake? Right? I will try and give the result here, if successful.

  6. I’ve been doing this for months and it’s wicked!!Emacs looks sweet that way :)

    I generally use vi for quick editing but when I have to grep through 250mb+ logs, Emacs does an excellent job on pointing me into each line that matched the greped pattern :))

  7. I too recently saw this development, great news. I’m thinking now’d be a good time to check out emacs and see what it can offer me.

    I’m still waiting for the stock icon support; I’d love this to integrate with the Tango icon theme I’m already using…. ;)

Comments are closed.