[erlang-questions] erlang emacs mode question

Anders Dahlin <>
Tue Dec 15 13:35:05 CET 2009


The one bug I know about in the emacs mode released with R13B03 is that
in a fully qualified function call where the function name is identical
to an existing BIF, the function name will be highlighted as a BIF.
Example: in foo:hd(X) ‘hd’ will be highlighted.

The new emacs mode supports emacs 21.3 and later versions. It should
compile without warnings on 21.3, 22.x and 23.x. If support for 21.3
could be dropped, elisp regexps used for various things in the mode
could be improved, but a large company closely involved with Erlang/OTP
is stuck on 21.3, so that's not an option :)

Probably the most visual differences are the changes to the syntax
highlighting (there's a fourth level and the known set of bifs, guards,
keywords etc are near complete) and the fixes to the indentation (guards
and type defs improved a lot).

Regarding the skeletons, I'd prefer an option to use edoc compatible or
not. Probably type defs should be added as well.

Another difference is not being able to switch between “old style
comment indentations”.  I did not add that since I think the new style
is simply wrong (IMHO), but it's of course easy to add.

For those who like to have different length of the separators used in
the skeletons, there's a non-document setting that can be used (the
default value is 70):

;; Set the length of the skeleton separators.
(setq erlang-skel-separator-length 90)

It would be interesting to know which versions of emacs that the erlang
community thinks should be supported and also if there's any
functionality missing.

/Anders


On 2009-12-15 09:32, Dan Gudmundsson wrote:
> Hi Martin
> 
> I guess you haven't tested the new erlang mode either :-)
> or have you incorporated the fixes we have done?
> 
> I used the erlware version myself before Kenneth hit me hard and told
> me to fix our version and apply the patches we had received.
> 
> The one thing I miss is the edoc skeltons which you have and that you broke
> out the skeletons to a separate file.
> I don't use distel either so maybe your variant works better with that.
> 
> But I have "stolen" some of the fixes you had and done many more and added
> several large patches from Anders Dahlin and Tomas Abrahamsson into
> which I think
> is a better version.
> 
> Hopefully now with erlang on github we can join our efforts again, so
> that we can
> get the best of the two things. I know that our support of the emacs
> mode havn't been
> the best and when time is tight the emacs mode get down prioritized.
> It will probably happen again but now with erlang on github available
> it should be easier to
> apply the improvements the community makes.
> 
> Cheers (I think I owe you one)
> /Dan
> 
> On Mon, Dec 14, 2009 at 11:28 PM, Logan, Martin <> wrote:
>> BTW,  the erlware erlang mode “erlware-mode” is much better than the erlang
>> mode.  Many bugs have been fixed and the skeletons are all edoc’d.  It has
>> been well maintained for over 2 years and is now way ahead IMHO.  You can
>> find it at erlware.org or over at the google code site
>> code.google.com/p/erlware-mode
>>
>> Cheers,
>> Martin
>>
>>
>> On 12/14/09 10:36 AM, "Göran Båge" <> wrote:
>>
>> Thanks Dan,
>>
>> Yes it worked in R13B03, adding '%% ' and removing '%% '. Just my kind
>> of timing bringing it up just when it was fixed, it's been bugging me for
>> quite some time before I got around to asking:-). We are very slow
>> moving to new releases as we have long lived products running out there,
>> we still have some R9 based ones and I've not run R13 before, just installed
>> it as a matter of fact.
>>
>> Cheers
>> --Göran
>>
>> Dan Gudmundsson wrote:
>>> On Mon, Dec 14, 2009 at 4:56 PM, Göran Båge<>
>>>  wrote:
>>>> Hi,
>>>>
>>>> Is there a reason why the erlang emacs mode treats comment (^C^C) and
>>>> un-comment
>>>> (^C^U) asymmetrical, comment adds '%% ' and uncomment removes '%'. Pretty
>>>> annoying if you ask me (but who would even think of doing that :-). It
>>>> used
>>>> to work by adding only '%' earlier (maybe very much earlier like in R9 or
>>>> so).
>>>
>>> Have you tried the latest erlang mode, on github or in R13B03?
>>>
>>> Both ^U^C^C and ^C^U works for me.
>>>
>>> /Dan
>>> PS: There are a lot of changes in the latest release of the erlang emacs
>>> mode,
>>>         so if we broke something please report or even better post a
>>> patch.
>>
>> --
>> -- Goran
>> --------------------- May the Snow be with you --------
>>   Goran Bage         MobileArts        www.mobilearts.se
>>   Tjarhovsgatan 56  SE-116 28 STOCKHOLM           Sweden
>>            phone: +46 733 358405
>>
>> ________________________________________________________________
>> erlang-questions mailing list. See http://www.erlang.org/faq.html
>> erlang-questions (at) erlang.org
>>
>>
>>
> 
> ________________________________________________________________
> erlang-questions mailing list. See http://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
> 


More information about the erlang-questions mailing list