Mercurial > emacs
view etc/MORE.STUFF @ 107804:24c4451bcaf7
Lucid menus can now use Xft for fonts.
* xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
(parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
in current_font.
(init_gconf): Read value of SYSTEM_FONT and save it in current_font.
(Ffont_get_system_normal_font, xsettings_get_system_normal_font): New
functions.
(syms_of_xsettings): Initialize current_font. defsubr
Sfont_get_system_normal_font.
* xsettings.h (Ffont_get_system_normal_font,
xsettings_get_system_normal_font): Declare.
* xfns.c (extern xlwmenu_default_font): Remove.
(Fx_create_frame): Remove setting of xlwmenu_default_font, moved
to xlwmenu.c.
* menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
menu items in UTF-8.
* xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
(apply_systemfont_to_menu): New function.
(set_frame_menubar, create_and_show_popup_menu): Call
apply_systemfont_to_menu.
* xlwmenu.c (xlwmenu_default_font): Make static.
(xlwMenuResources): Add XtNfaceName and XtNdefaultFace.
(string_width): Use XftTextExtentsUtf8 if HAVE_XFT.
(MENU_FONT_HEIGHT, MENU_FONT_ASCENT): Add versions for
HAVE_XFT.
(size_menu): Set max_rest_width in window_state structure.
(display_menu_item): If HAVE_XFT and xft_draw is set, use
XftDrawRect and XftDrawStringUtf8 to draw text.
(make_windows_if_needed): Set max_rest_width and xft_draw
in windows[i].
(openXftFont): New.
(XlwMenuInitialize): Call openXftFont if HAVE_XFT. If mw->menu.font
is not set, load font fixed and save it in xlwmenu_default_font.
(XlwMenuInitialize): Set max_rest_width and xft_draw in windows[0].
(XlwMenuClassInitialize): Initialize xlwmenu_default_font.
(XlwMenuRealize): Set xft_fg, xft_bg, xft_disabled_fg and
windows[0].xft_draw if xft_font is set.
(XlwMenuDestroy): Destroy all xft_draw and close xft_font.
(facename_changed): New.
(XlwMenuSetValues): Call facename_changed. If face name did change,
close old fonts and destroy xft_draw:s. Then create new ones.
* xlwmenu.h (XtNfaceName, XtCFaceName, XtNdefaultFace,
XtCDefaultFace): New.
* xlwmenuP.h (_window_state): Add max_rest_width and xft_draw.
(_XlwMenu_part): Add faceName,xft_fg, xft_bg, xft_disabled_fg and
xft_font.
* xresources.texi (Lucid Resources): Mention faceName to set Xft fonts.
author | Jan D. <jan.h.d@swipnet.se> |
---|---|
date | Thu, 08 Apr 2010 18:20:32 +0200 |
parents | 82e44180c8a6 |
children | 41c0782814ff |
line wrap: on
line source
More Neat Stuff for your Emacs Copyright (C) 1993, 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. See the end of the file for license conditions. This file describes GNU Emacs programs and resources that are maintained by other people. Some of these may become part of the Emacs distribution in the future. Others we unfortunately can't distribute, even though they are free software, because we lack legal papers for copyright purposes. Also included are sites where development versions of some packages distributed with Emacs may be found. You might also look at the Emacs web page <URL:http://www.gnu.org/software/emacs/emacs.html>. If you use the Windows-32 version of Emacs, see the NTEmacs sites listed in the FAQ. Please submit a bug report if you find that any of the addresses listed here fail. * The `Emacs Lisp List' at <URL:http://www.damtp.cam.ac.uk/user/eglen/emacs/ell.html> has pointers to sources of a large number of packages. * gnu.emacs.sources Packages posted to the gnu.emacs.sources newsgroup (see etc/MAILINGLISTS) might be archived specifically (try a web search engine) or retrievable from general Usenet archive services. * emacswiki.org The Emacs Wiki has an area for storing elisp files <URL:http://www.emacswiki.org/cgi-bin/wiki/ElispArea>. * Emacs tutorials and manuals * Emacs slides and tutorials can be found here: <URL:http://web.psung.name/emacs/> * Maintenance versions of some packages distributed with Emacs You might find bug-fixes or enhancements in these places. * Ada-mode: <URL:http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html> * Battery and Info Look: <URL:http://ralph-schleicher.de/emacs.html> * BS: <URL:http://www.geekware.de/software/emacs/index.html> * Calculator: <URL:http://www.barzilay.org/misc/calculator.el> * CC mode: <URL:http://cc-mode.sourceforge.net/> * CPerl: <URL:http://math.berkeley.edu/~ilya/software/emacs/> * Ediff and Viper: <URL:http://www.cs.sunysb.edu/~kifer/emacs.html> * Eldoc and Rlogin: <URL:http://www.splode.com/~friedman/software/emacs-lisp/> * ERC: <URL:http://savannah.gnu.org/projects/erc/> * Etags: <URL:http://fly.isti.cnr.it/software/> * Gnus: <URL:http://www.gnus.org/> * Ispell: <URL:http://www.kdstevens.com/stevens/ispell-page.html> * MH-E: <URL:http://mh-e.sourceforge.net/> * nXML: <URL:http://www.thaiopensource.com/nxml-mode/> * Org mode: <URL:http://orgmode.org/> * PS mode: <URL:http://odur.let.rug.nl/%7Ekleiweg/postscript/> * PS-print: <URL:http://www.emacswiki.org/cgi-bin/wiki/PsPrintPackage> * Python: <URL:http://www.loveshack.ukfsn.org/emacs/> * QuickURL: <URL:http://www.davep.org/emacs/> * RefTeX: <URL:http://www.gnu.org/software/auctex/reftex.html> * Remember: <URL:https://gna.org/p/remember-el> * Speedbar, Checkdoc etc: <URL:http://cedet.sourceforge.net/> * SQL: <URL:http://www.emacswiki.org/cgi-bin/wiki/sql.el> * Tramp: Remote file access via rsh/ssh <URL:http://savannah.gnu.org/projects/tramp/> * Webjump: <URL:http://www.neilvandyke.org/webjump> * Auxiliary files * (Tex)info files for use with Info-look that don't come from GNU packages: * Scheme: <URL:http://groups.csail.mit.edu/mac/ftpdir/scm/r5rs.info.tar.gz> * LaTeX: <URL:ftp://ctan.tug.org/tex-archive/info/latex2e-help-texinfo/ latex2e.texi> (or CTAN mirrors) * Perl: <URL:ftp://ftp.cpan.org/pub/CPAN/doc/manual/texinfo/> (or CPAN mirrors) * GNU Zile: <URL:http://www.gnu.org/software/zile/> A lightweight Emacs clone, for when you don't have room for Emacs proper. * Packages and add-ons not bundled with Emacs Various major packages or useful additions aren't distributed as part of Emacs for various reasons, sometimes because their authors haven't made a copyright assignment to the FSF. Some of them may be integrated in the future. You might like to check whether they are packaged for your system. Several are for Debian GNU/Linux in particular. * AUCTeX: <URL:http://www.gnu.org/software/auctex/> An extensible package that supports writing and formatting TeX files (including AMS-TeX, LaTeX, Texinfo, ConTeXt, and docTeX). * BBDB: personal Info Rolodex integrated with mail/news: <URL:http://bbdb.sourceforge.net/> [You might want to set the coding system of your .bbdb file to emacs-mule, say by adding `("\\.bbdb\\'" . emacs-mule)' to `file-coding-system-alist' for non-ASCII characters.] * Boxquote: <URL:http://www.davep.org/emacs/> * CJK-emacs: Converting MULE-encoded text to TeX: <URL:ftp://ctan.tug.org/tex-archive/language/chinese/CJK/> and mirrors of the `CTAN' TeX archives. * Dismal: spreadsheet: <URL:http://ritter.ist.psu.edu/dismal/dismal.html> * ECB: Emacs Code Browser: <URL:http://ecb.sourceforge.net/> * EDB: database: <URL:http://www.gnuvola.org/software/edb/> * Ee: categorizing information manager: <URL:http://www.jurta.org/en/emacs/ee/> * EFS: enhanced version of ange-ftp: <URL:http://www-pu.informatik.uni-tuebingen.de/users/sperber/software/efs/> * Elib library: <URL:http://www.gnu.org/software/elib/elib.html> From GNU distribution mirrors. (Much of this functionality is now in Emacs.) * EMacro: <URL:http://emacro.sourceforge.net/> EMacro is a portable configuration file that configures itself. * Emacs Muse: <URL:http://mwolson.org/projects/EmacsMuse.html> An authoring and publishing environment for Emacs. * Emacs speaks statistics (ESS): statistical programming within Emacs <URL:http://ess.r-project.org> * Emacspeak -- A Speech Output Subsystem For Emacs: <URL:http://emacspeak.sourceforge.net/> * Emacs-w3m : <URL:http://emacs-w3m.namazu.org/> A simple Emacs interface to w3m, which is a text-mode WWW browser * Emacs Wiki Mode: <URL:http://mwolson.org/projects/EmacsWikiMode.html> A wiki-like publishing tool and personal information manager * Gnuserv: <URL:http://www.hpl.hp.com/personal/ange/gnuserv/home.html> Alternative emacsclient/emacsserver. Also available from this Web page: eiffel-mode.el. * Go in a buffer: Go Text Protocol client: <URL:http://www.gnuvola.org/software/personal-elisp/dist/lisp/diversions/gnugo.el> A modified version is also bundled with GNU Go: <URL:http://www.gnu.org/software/gnugo/gnugo.html> * hm--html-menus: <URL:ftp://sunsite.unc.edu/pub/Linux/apps/editors/emacs/> HTML-specific editing. Can work with PSGML. * Hyperbole: <URL:http://directory.fsf.org/hyperbole.html> Hyperbole is an open, efficient, programmable information management and hypertext system. * JDEE: <URL:http://jdee.sourceforge.net/> Provides a Java development environment for Emacs. * Mailcrypt: <URL:http://mailcrypt.sourceforge.net/> PGP and GPG support. PGP isn't free software, but GPG, the GNU Privacy Guard, is a free replacement <URL:http://www.gnupg.org/>. * Mew: <URL:http://www.mew.org/> A MIME mail reader for Emacs/XEmacs. * MMM Mode: <URL:http://mmm-mode.sourceforge.net/> MMM Mode is an emacs add-on package providing a minor mode that allows Multiple Major Modes to coexist in one buffer. * Planner Mode: <URL:http://www.wjsullivan.net/PlannerMode.html> Planner is an organizer and day planner for Emacs. * Preview LaTeX: embed preview LaTeX images in source buffer. <URL:http://www.gnu.org/software/auctex/preview-latex.html> * PSGML: <URL:http://www.lysator.liu.se/projects/about_psgml.html> DTD-aware serious SGML/XML editing. * Quack: <URL:http://www.neilvandyke.org/quack/> Quack enhances Emacs support for Scheme. * Session: <URL:http://emacs-session.sourceforge.net/> Session Management for Emacs. * SLIME: The Superior Lisp Interaction Mode for Emacs: <URL:http://common-lisp.net/project/slime/> * Tamago: Chinese/Japanese/Korean input method <URL:http://www.m17n.org/tamago/index.en.html> Emacs Lisp package to provide input methods for CJK characters. It can use these background conversion servers: FreeWnn (jserver, cserver, tserver), Wnn6, SJ3 Ver.2 * Tiny Tools: <URL:http://freshmeat.net/projects/emacs-tiny-tools> * VM (View Mail): Alternative mail reader <URL:http://launchpad.net/vm> Previously hosted at: <URL:http://www.nongnu.org/viewmail/> There are VM newsgroups: <URL:news:gnu.emacs.vm.info>, and <URL:news:gnu.emacs.vm.bug>. * W3: <URL:http://savannah.gnu.org/projects/w3/> Web browser. There's a W3 mail list/newsgroup <URL:http://savannah.gnu.org/mail/?group=w3>. * Wanderlust: <URL:http://www.gohome.org/wl/> Yet Another Message Interface on Emacsen. Wanderlust is a mail/news reader supporting IMAP4rev1 for emacsen. * WhizzyTex: <URL:http://cristal.inria.fr/whizzytex/> WhizzyTeX provides a minor mode for Emacs or XEmacs, a (bash) shell-script daemon and some LaTeX macros. * X-Symbol: <URL:http://x-symbol.sourceforge.net/> Quasi-WYSIWYG editing of TeX & al. Local Variables: mode: text mode: view mode: goto-address End: This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. arch-tag: c1d4e7c8-db85-44e6-909e-659e2b20fefa