help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why isn't ert-buffer.el part of Emacs?


From: Emanuel Berg
Subject: Re: Why isn't ert-buffer.el part of Emacs?
Date: Sat, 14 Jun 2014 14:54:02 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Thorsten Jolitz <tjolitz@gmail.com> writes:

>>> I recently discovered 'ert-buffer.el' and find it
>>> very useful. It is introduced and discussed here
>>> ... I wonder why such a generally useful library
>>> isn't included in Emacs (I don't even find it in
>>> the package repos)?
>>>
>> I stopped reading here, because I don't have any
>> comments on that specific software.  But, in
>> general, I have found tons of useful stuff that
>> isn't included, and I have written tons of stuff
>> that I think should be included, perhaps not my
>> implementation specifically, but rather the
>> functionality.
>
> I stopped reading here, because It was ... too long
> ;)
>
> Of course the Emacs universe is almost infinite, and
> by far not everything belongs into core. But since
> the buffer is *the* fundamental concept of Emacs,
> writing tests that compare buffer states appear like
> a core task.

I don't know if the buffer is the fundamental concept
of Emacs, one of many fundamentals, perhaps... But
fundamental or not, I would assume there is tons of
buffer-related stuff around that are just spread across
countless of .el and .emacs files and won't ever make
it to the official release.

For example, I wrote this

(setq
 buffer-menu-buffer-font-lock-keywords
 '(("[[:space:]]+\\([[:digit:]]+\\)[[:space:]]+" (1 
font-lock-comment-delimiter-face))
   ("\\*\\(Messages\\|Backtrace\\)\\*" . font-lock-comment-face)
   ("\\*scratch\\*" . 'font-lock-regexp-grouping-construct)
   ("\\*Help\\*"    .  font-lock-constant-face)
   ("\\*Group\\*"   .  font-lock-doc-face)
   ("\\(\\*Man\\) \\(.*\\)\\(\\*\\) "
    (1 font-lock-type-face)
    (2 font-lock-negation-char-face)
    (3 font-lock-type-face) )
   ("[[:space:]%*.]*\\(.*\\.el\\) "                     (1 
font-lock-string-face))
   ("[[:space:]%*.]*\\(.*\\.\\(c\\|cpp\\)\\) "          (1 
font-lock-function-name-face) )
   ("[[:space:]%*.]*\\(.*\\.\\(txt\\|html\\|htm\\)\\) " (1 
font-lock-function-name-face) )
   ("[[:space:]%*.]*\\(.*\\.\\(h\\|hh\\|tex\\)\\) "     (1 
font-lock-variable-name-face) )
   ("[[:space:]%*.]*\\( \\.[[:alnum:]\\_\\.\\-]*\\) "   (1 font-lock-type-face) 
)
   ("\\*w3m\\*" . 'font-lock-regexp-grouping-backslash)
   (".*\\(<[0-9]>\\) " (1 font-lock-negation-char-face))
   ("\\(KILL\\|my-kill\\) " . font-lock-warning-face)
))

so that the buffer menu wouldn't look so boring:
screenshot here -

http://user.it.uu.se/~embe8573/buffer_menu.png

The buffer menu is central but I don't think anyone
will include that just the same.

> Can it be done easily with included ERT libraries
> (using real world buffers too)? I'm not the expert
> here, but at least it is not obvious how to do it
> without reimplementing (parts of) ert-buffer.el
> (probably over and over again ...)

In this particular case, what does it matter? You have
the code you need so just use it, I would say.

-- 
underground experts united:
http://user.it.uu.se/~embe8573


reply via email to

[Prev in Thread] Current Thread [Next in Thread]