Hi Slava,

"Slava Pestov" <[EMAIL PROTECTED]> writes:

> Hi Jose,
>
> I'm very impressed with factor.el. I did find a few problems though,
> it would make factor.el even nicer to use if they were fixed:
>

Thanks a lot for taking the time to test factor.el. I'm addressing all
the bugs and feature requests below in forthcoming emails/patches, but
before i'd like to ask for your (and all list members') opinion on a
couple of issues:

  - Should we find a name for the thing? Glenn suggested Facture, but
    i'm not sure i like its also meaning bill :) An alternative
    i've thought is 'factel'. Suggestions?
  - The code is growing to the point where i'd like to split it in
    several elisp files, and i'll start writing a support vocabulary in
    factor itself. Where's a good place in the source tree to put those
    files? I was thinking of putting all them together in, say,
    misc/factel. Does that sound right?

> - There should be a command to transmit the current file's
> USE:/USING:/IN: forms into the listener. Don't forget about <PRIVATE;
> that's like USE: <my in>.private
> - The error message displayed by 'edit' if the listener is not running
> is not very intuitive. 'see' shows a better error message.

On the way, including better support for evaluating single definitions.

> - In jEdit, I have a macro bound to a key that cycles between
> foo.factor, foo-docs.factor and foo-tests.factor. Very handy.
> Something similar would be nice
> - I'd like an 'edit vocabulary' command which read a line from the
> minibuffer, and then executed "foo" edit-vocab in the listener.

Count on both of them, the latter including completion. They're easy
hacks. 

> - kill-sexp doesn't appear to work.
> - prev-sexp and next-sexp show an error if I'm already at the start or
> end of a quotation. It would be nice if they would jump outward to the
> containing quotation, perhaps.
> - raise-sexp doesn't do the right thing, eg try it with [ [ foo-bar ]
> ] and the point on foo-bar

These are definitely bugs. I'll see to fix them shortly.

> - ] should be electric: if the matching [ is not on the same line, it
> should decrease indent

OK. I'll probably add to that inserting the correct matching paren (]};)
according to context. Would you people find useful to always insert
parens in pairs?

> - In jEdit, I have a 'visible wrap margin' feature that is very useful
> even if word wrap is off. I try to keep my source lines under 64
> characters, and having a visible margin is good for that. Does emacs
> have an equivalent feature?

I use a variation of the following:

   (defun add-font-lock-width-warning ()
     (font-lock-add-keywords
      'factor-mode
      '(("^[^\n]\\{64\\}\\(.*\\)$" 1
         font-lock-warning-face prepend))))

   (add-hook 'factor-mode-hook 'add-font-lock-width-warning)

which shows text beyond the limit in a red bold face. There's also
column-marker:

<http://www.emacswiki.org/cgi-bin/emacs/column-marker.el>

but i don't use it.

> - There is a bug with the indentation of ;. Try the following, it works:
>
> : foo ( -- )
>     ;
>
> : blah ...
>
> But this doesn't
>
> : foo ( -- )
>     ; inline
>
>     : blah ...
>
> Having declarations (inline, foldable, etc) after ; confuses the indentation.
>

Will fix.

> I'm looking forward to seeing some SLIME-like features showing up!

Me too! :) After the last patches, the first one is in with eldoc-mode
in factor buffers. Next one will be word completion with M-TAB. Please
everybody feel free to ask for those features you'd like best and i'll
see what i can do.

Cheers,
jao

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to