[EMBOSS] An emacs mode to edit acd files

Ye Wenbin wenbinye at gmail.com
Tue Aug 14 02:56:35 UTC 2007


On Tue, 14 Aug 2007 00:46:13 +0800, Peter Rice <pmr at ebi.ac.uk> wrote:

> Do you have a short user guide to explain what features it has? I  
> discovered things like "appl<space>" and "sec<space>" which are nice.
I wrote some simple description about features of acd-mode in the header
of the files. Except keywords highlight and indentation as a major modes
should do, I add some useful feature for editing:
  1. support for imenu. You can use M-x imenu to move to other tokens
  2. abbrevation using tempo.el. As you see, currently I add two abbrev
     "appl" and "sec", but you can add more as you like. That is easy,
     after load 'acd.el', you can use acd-define-tempo-template to add an
     new tempo template, for example:
     (acd-define-tempo-template
      "int"
      '("integer")
      '("default" "information"))
     The new abbrev cannot be used in a buffer opened before it defined, you
     have to M-x acd-mode to ask tempo install the new tempo-local-tags.
     Now you can type int<space> and expand it to:
     integer: <point> [
       default: "<mark>"
       information: "<mark>"
     ]
    tempo can create marks when expand the template, so you move around
    using tempo-forward-marks and tempo-backward-marks, which are bound to
    C-c C-n and C-c C-p in acd-mode. This feature make me choose it rather
    than skeleton. And if you think you abbrev still to long, you can use
    M-x tempo-complete-tag to complete an abbrev, it is bound to C-c TAB.
  3. Completion. Many things can be completed using TAB. For example,
    the name of data type bool<TAB> can complete to boolean. And the
    attributes of the data type can be completed like:
    boolean feature [
       def<TAB>
    will get "default".
    The name of variable can be completed when it is declare before point:
     sequence: inseq [
       features: $(fe<TAB>
    will get "feature" if the variable "feature" is declare before.
    The calculated attributes also can be completed. $(inseq.le<TAB> can get
    "length" if the "inseq" is declared as type "sequence" before.
    Today I add completions for standard groups because I think it is hard  
to
    remember so many groups. You can complete group name as:
      groups: "<TAB>

That all what acd-mode do.

I want add a command acd-pretty that use command acdpretty to reformat
code, but I don't know how to make the command read input from stdin,
I use command:
$ cat appl.acd | acdpretty -filter
but failed. Is it possible to make the command read from stdin?

>  Which version of EMBOSS did you use?
I check out the cvs version of emboss, and build it myself.
This is some question about the document of library. I can find some  
scripts to generate
documents for libraries under directory "scripts", but I can find command  
to build it.
I try "make html" "make info", but get nothing. And run embossdoc.csh get  
errors:
$ csh scripts/embossdoc.csh /home/ywb/downloads/emboss/emboss/  
/home/ywb/downloads/emboss/emboss/doc
touch: Cannot touch  
'/home/ywb/downloads/emboss/emboss/doc/ajax/dummy.html': No such file or  
directory
foreach: No match.
How can I use those scripts?

Thanks!

-- 
Best regards,
Ye Wenbin



More information about the EMBOSS mailing list