Recently, emacs version 23.2 was released. It's a quick update after 23.1 came out (July 29 of 2009); it seems Chong Yidong / Stefan Monnier
(interview) are doing releases more often than before they took over emacs
maintainership. A welcome change, I would say.
The amount of changes is obviously also a bit smaller than in 23.1, but
there are still some interesting updates. Let's go through a couple of those
here; I am not striving for completeness, and I won't really go into the
biggest change (inclusion of the CEDET IDE-framework), as I haven't been
using that enough to say anything about it. Instead, let's look at some of
the other highlights; for the full list of changes, please refer to the
NEWS-file. If you have some other cool new feature that deserves mentioning,
please add a comment.
Some highlights
Maximum file size increased to 512Mb (this used to be 256 on 32-bit
machines). This may be useful for big log files etc. It does take a while
to load such big files, but after that it's not too slow, at least if you
have enough RAM. For 'normal' files, you're unlikely to ever hit the
limit; e.g. Tolstoy's War and Peace is only 3 MB…
Note, you can setlarge-file-warning-threshold
to set the maximum file
size after which emacs will starting asking you for confirmation when
trying to open (eh, visit) files.
By default, the mouse cursor turns invisible when typing, so there is no
more need formouse-avoidance-mode
and similar tricks. However, if you
insist on seeing the mouse cursor, you can add to your.emacs
:
(setq make-pointer-invisible nil)
On X-based systems, emacs now listens for font changes (Xft), and can
automatically use the GNOME mono-spaced font (as set in the GNOME
Appearance preferences dialog). Note that this may not work for all
fonts/settings (at least in my tests, setting the font to italic does
not seem to reflect in emacs). Anyway, to enable this, put the following
in your.emacs
(or the moral equivalent):
(setq font-use-system-font t)
On Unix, Emacs 23.2 now follows the freedesktop trash specification for
file deletion; thus, the hacks we hacks we mentioned before are no longer
needed.
Some cool additions for Tramp, allowing emacs to access files inrsync
and evenimap://
-locations. On systems supporting GVFS, emacs can now
directly use e.g.obex://
-uris (Bluetooth). I need to play a bit with
these things! Tramp support has also been built intoeshell
.
There are already quite some ways to do auto-completion in emacs using theTAB
-key, and emacs 23.2 makes this a bit easier to set up. You can add
basic auto-completion with:
(setq tab-always-indent 'complete)
After setting that, theTAB
-key will (after trying if there's anything to
indent first) provide possible completions. It works pretty well for
Emacs-Lisp (I did not test other languages), although the way it shows the
completions (separate*Completions*
-buffer) is a bit clumsier that what
for instanceyasnippet
orcompany-mode
do.
You can also do partial completions now, by appendinginitials
to the
completion style, i.e.:
;; there must be a more elegant way...
(setq completion-styles (append completion-style '(initials)))
With this, you can complete on the initials of functions and variables in
the minibuffer, say, typingC-h v tai
and then pressingTAB
will give
youtab-always-indent
.
As mentioned, the biggest change is the addition on the CEDET-framework,
which contains things like smart completion, code browsing, UML diagram
creation, project management – features somewhat similar to those in
e.g. Eclipse. I don't know how well it works in practice, but I will give
it a try. At least, inclusion in Emacs should make setting it up with all
dependencies a bit easier, as there is now a guaranteed-to-work setup for
Emacs 23.2 at least.
Summarizing, 23.2 provides us with some nice updates all around and brings
CEDET to the masses. Chong Yidong / Stefan Monnier have done a very good job
in making faster releases, while still keeping an eye on the quality. On the
other hand, the previous version (23.1) is a very solid release, and if you
don't need CEDET, there is no real need to hurry to 23.2.
Future releases
A lot is happening in the world of GNU/Emacs, with changes being proposed
and implemented in many different places. There's Eli Zaretskii's way work
on making emacs support bidirectional languages (for right-to-left writing
systems such as Hebrew and Arabic; the /bi/directional part is that one
should be able to mix left-to-right and right-to-left). There is Jan
Djärv's work on adding UI-tabs to emacs (like e.g. Firefox has them). There
is Ken Raeburn and Andy Wingo's work on adding Guile Scheme support to emacs - possibly replacing the current Emacs Lisp implementation in the
future. These are just a few of the more prominent projects.
Nobody knows in which release these items will be available (if at all),
but it's exciting to see all the directions people are taking emacs.
No comments:
Post a Comment