Andreas Ehliar
Guest
Tue Jul 12, 2011 5:47 pm
On 2011-06-27, Philippe Faes <philippe.faes_at_sigasi.com> wrote:
Quote:
To end my series of blog posts about Emacs vs. Eclipse/Sigasi, I am
interested to hear what you think: are there any _technical_ reasons
why Emacs is still better than an IDE solution? Or is it just a matter
of "I love this tool and nobody is going to deny me my rights?"
Well, I think I could characterize myself as a fairly competent Emacs
user. However, just for fun I have just downloaded Sigasi 2.0 to look
into whether it could replace Emacs for my VHDL editing tasks.
However, do be aware that I've used Emacs as my main editor since
about 1998. So this is not likely to be a very fair comparison since I
haven't used Sigasi for more than an hour or so by following the
tutorial and trying it on one of my own VHDL projects.
What follows are some notes from my testing and what I find missing as
compared to Emacs. Of course, some of these features may be present
but not working in exactly the same way as in Emacs which is why I
didn't find them.
* When using Emacs I can just type "emacs filename.vhd" (or an alias
for emacsclient if I expect that I will need to look into a lot of
different files using the same editor instance).
I'm not sure how to do this in Sigasi. Merely typing sigasi
filename.vhd doesn't seem to work at least and sigasi -h or sigasi
--help didn't give me any indication that it is possible to do this
from the commandline easily.
* It was fairly easy to find and enable the Emacs key scheme which
made it quite a bit more comfortable to use for me. Good.
* Incremental search worked as expected when pressing C-s and
C-r. However, some useful commands in Emacs are not present. Of this
the greatest loss is C-w (which adds the string following the cursor
to the search string). Very convenient when you want to search for
the word you are currently looking at. Nevertheless, merely the
presence of an easy to use incremental search is a big plus.
* Ctrl-g didn't work to abort a search and return to the start
location of the search as expected. However, Ctrl-x Ctrl-x worked as
expected which is good.
* I use M-q in Emacs all the time when writing text (for example in
the form of comments) to make sure that the text is nicely aligned
and doesn't exceed a user configurable number of characters per
line. (Usually a little less than 80.) In Sigasi M-q doesn't seem to
do anything.
* There doesn't seem to be any kill ring functionality. (Or similar
history functionality for other commands such as search.)
* The keys for rectangular cut and paste and string rectangle don't do
anything. (Neither the standard keybindings nor the cua-mode version
where you press ctrl-enter to start a rectangular selection.)
* I couldn't find any keyboard macro functionality

This is actually
a really big issue for me. If you don't have macros you can't do a
lot of really really neat tricks. While I don't use keybaord macros
every day, they can really save you a lot of work in some
situations. See the following youtube clip for some inspiration:
http://www.youtube.com/watch?v=zropjwVQlWQ&NR=1
* C-x C-b worked to select the buffer as expected. Good! (However, it
is not as powerful as iswitchb-mode in Emacs.)
* I turned off the Emacs keybindings to enable the use of C-SPACE
for template insertion. I'm somewhat skeptical about how these are
implemented, but I admit that this may be because I'm not used to
them.
* After trying out C-SPACE I changed the keys back to Emacs again. But
this change didn't seem to take effect. Perhaps I did something
wrong? A restart of Sigasi didn't fix it either.
* When opening an existing design which included components written in
both VHDL and Verilog there was no support for Verilog at all in the
editor. (Since I use both Verilog and VHDL fairly frequently this is
an issue for me. If you use Verilog rarely it may not be a big
problem though.)
All in all, Sigasi seems to be a major step up as compared to some
other VHDL editing solutions (for example, I'd much rather use Sigasi
than the ISE text editor). However, it will not replace Emacs for me
anytime soon I'm afraid.
The main reason why it is very hard to get me to change from Emacs to
some other editor is that my entire workflow is based around
Emacs. This allows me to utilize the same skill set regardless of
whether I edit Verilog, VHDL, HTML, C, shell script, or MP3
files. (Yes, I have done some simple editing of MP3 files in Emacs in
some situations.)
In addition to text editing I'm also using Emacs for reading mail,
organizing my schedule, and dealing with my TODO-list. I often find
myself running a shell from within Emacs as well. (The unix shell
running in split screen with a scratch buffer in Emacs can do some
really powerful things when combined with macros.)
I could probably spend another hour here merely listing some nice
Emacs tricks but I think I'll end here by wishing you good luck. While
I don't expect many die hard Emacs users to switch to Sigasi I think
you may have a good chance of snatching up people who only use Emacs
for VHDL editing.
regards
/Andreas
Philippe Faes
Guest
Wed Jul 13, 2011 2:24 pm
On Jul 12, 5:47 pm, Andreas Ehliar <ehliar-nos...@isy.liu.se> wrote:
Quote:
Well, I think I could characterize myself as a fairly competent Emacs
user. However, just for fun I have just downloaded Sigasi 2.0 to look
into whether it could replace Emacs for my VHDL editing tasks.
However, do be aware that I've used Emacs as my main editor since
about 1998. So this is not likely to be a very fair comparison since I
haven't used Sigasi for more than an hour or so by following the
tutorial and trying it on one of my own VHDL projects.
Andreas, thank you for your in-depth evaluation. It seems you have
focussed on text editing and search operations. Obviously, the tool
you have known for years will give you better results.
I'm not sure if you have looked at type-time compilation (with error
checking), and other advanced VHDL-specific features (navigation,
hovers, refactoring). If anybody is to be convinced of dropping Emacs,
it would be because of those features.
Quote:
What follows are some notes from my testing and what I find missing as
compared to Emacs. Of course, some of these features may be present
but not working in exactly the same way as in Emacs which is why I
didn't find them.
* When using Emacs I can just type "emacs filename.vhd" (or an alias
for emacsclient if I expect that I will need to look into a lot of
different files using the same editor instance).
I'm not sure how to do this in Sigasi. Merely typing sigasi
filename.vhd doesn't seem to work at least and sigasi -h or sigasi
--help didn't give me any indication that it is possible to do this
from the commandline easily.
We'll get that working soon. Thanks for pointing it out.
Quote:
* It was fairly easy to find and enable the Emacs key scheme which
made it quite a bit more comfortable to use for me. Good.
Thanks
Quote:
* Incremental search worked as expected when pressing C-s and
C-r. However, some useful commands in Emacs are not present. Of this
the greatest loss is C-w (which adds the string following the cursor
to the search string). Very convenient when you want to search for
the word you are currently looking at. Nevertheless, merely the
presence of an easy to use incremental search is a big plus.
* Ctrl-g didn't work to abort a search and return to the start
location of the search as expected. However, Ctrl-x Ctrl-x worked as
expected which is good.
* I use M-q in Emacs all the time when writing text (for example in
the form of comments) to make sure that the text is nicely aligned
and doesn't exceed a user configurable number of characters per
line. (Usually a little less than 80.) In Sigasi M-q doesn't seem to
do anything.
Code formatting is mapped to CTRL+SHIFT+F. Remappable, though.
Quote:
* There doesn't seem to be any kill ring functionality. (Or similar
history functionality for other commands such as search.)
Not that I know of...
Quote:
* The keys for rectangular cut and paste and string rectangle don't do
anything. (Neither the standard keybindings nor the cua-mode version
where you press ctrl-enter to start a rectangular selection.)
Rectangle editing (block select) can be activated using CRTL+ALT+A
with normal key bindings.
There is also an icon in the tool bar:
http://www.vasanth.in/2009/03/31/eclipse-tip-block-selection-mode/
Quote:
* I couldn't find any keyboard macro functionality

This is actually
a really big issue for me. If you don't have macros you can't do a
lot of really really neat tricks. While I don't use keybaord macros
every day, they can really save you a lot of work in some
situations. See the following youtube clip for some inspiration:
http://www.youtube.com/watch?v=zropjwVQlWQ&NR=1
Good point. There might be an Eclipse plugin that offers marcros in a
way that you need. I'm not sure.
Quote:
* C-x C-b worked to select the buffer as expected. Good! (However, it
is not as powerful as iswitchb-mode in Emacs.)
* I turned off the Emacs keybindings to enable the use of C-SPACE
for template insertion. I'm somewhat skeptical about how these are
implemented, but I admit that this may be because I'm not used to
them.
You can tie the template insertion to another key combination if you
like:
http://www.sigasi.com/faq/can-i-change-default-key-bindings
Quote:
* After trying out C-SPACE I changed the keys back to Emacs again. But
this change didn't seem to take effect. Perhaps I did something
wrong? A restart of Sigasi didn't fix it either.
Bug in Eclipse. Try "restore to defaults".
Quote:
* When opening an existing design which included components written in
both VHDL and Verilog there was no support for Verilog at all in the
editor. (Since I use both Verilog and VHDL fairly frequently this is
an issue for me. If you use Verilog rarely it may not be a big
problem though.)
Yeah, we'll get to Verilog. We didn't want to offer syntax
highlighting because that could create false expectations.
http://www.sigasi.com/keep-me-informed-about-verilog
Quote:
All in all, Sigasi seems to be a major step up as compared to some
other VHDL editing solutions (for example, I'd much rather use Sigasi
than the ISE text editor). However, it will not replace Emacs for me
anytime soon I'm afraid.
The main reason why it is very hard to get me to change from Emacs to
some other editor is that my entire workflow is based around
Emacs. This allows me to utilize the same skill set regardless of
whether I edit Verilog, VHDL, HTML, C, shell script, or MP3
files. (Yes, I have done some simple editing of MP3 files in Emacs in
some situations.)
You can edit HTML, C and shell scripts in Eclipse. Just install the
right plugin. (No MP3 editing in Eclipse, though!)
Quote:
In addition to text editing I'm also using Emacs for reading mail,
organizing my schedule, and dealing with my TODO-list. I often find
myself running a shell from within Emacs as well. (The unix shell
running in split screen with a scratch buffer in Emacs can do some
really powerful things when combined with macros.)
I could probably spend another hour here merely listing some nice
Emacs tricks but I think I'll end here by wishing you good luck. While
I don't expect many die hard Emacs users to switch to Sigasi I think
you may have a good chance of snatching up people who only use Emacs
for VHDL editing.
regards
/Andreas
Thanks for the encouraging words!
--
kind regards
Philippe