[ANN] aeditor 1.0 released

Discussion in 'Ruby' started by Simon Strandgaard, Jul 5, 2004.

  1. screenshots:
    http://aeditor.rubyforge.org/wiki/wiki.pl?MainThemes

    download:
    http://rubyforge.org/frs/download.php/921/aeditor-1.0.tar.gz


    dependency#1, iterator:
    http://rubyforge.org/frs/download.php/703/iterator-0.8.tar.gz

    dependency#2, fxruby
    http://fxruby.sourceforge.net/
    If you are on a windows box it may be possible that fxruby already
    are installed.

    on windows there are font problems.. you can make me happy if you can
    make solve this problem. Thanks in advance.

    I have attached my ~/.aeditor file, which may be interesting to you.

    --
    Simon Strandgaard

    mode :ruby do |m|
    m.tabsize = 2
    m.file_suffixes = %w(rb)
    m.lexer = :ruby
    m.cursor_through_tabs = true
    end

    mode :c do |m|
    m.tabsize = 4
    m.file_suffixes = %w(c cpp cxx cc h hpp hxx hh)
    m.cursor_through_tabs = false
    end

    theme_blue = {
    :ivar1 => [[55, 75, 215], [40, 50, 120]],
    :mcomment_tab => [[30, 30, 120], [0, 0, 0]],
    :endoffile_tab => [[83, 83, 97], [0, 0, 0]],
    :string1 => [[65, 85, 225], [0, 0, 0]],
    :ident => [[55, 75, 215], [90, 80, 80]],
    :string => [[65, 85, 225], [30, 80, 0]],
    :keyword => [[60, 80, 220], [0, 0, 0]],
    :any => [[60, 80, 220], [30, 40, 20]],
    :ivar => [[60, 80, 200], [0, 0, 0]],
    :tab => [[30, 70, 190], [30, 40, 20]],
    :regexp => [[30, 80, 0], [165, 185, 25]],
    :space => [[60, 80, 220], [30, 40, 20]],
    :gvar => [[160, 180, 100], [90, 0, 0]],
    :heredoc => [[80, 60, 220], [30, 40, 20]],
    :regexp1 => [[60, 80, 180], [165, 185, 25]],
    :eek:ut => [[60, 60, 60], [180, 100, 100]],
    :dot => [[60, 80, 205], [0, 0, 0]],
    :symbol => [[30, 80, 220], [90, 80, 80]],
    :comment => [[60, 80, 120], [0, 0, 0]],
    :heredoc_tab => [[30, 70, 190], [30, 40, 20]],
    :punct => [[30, 80, 220], [120, 120, 120]],
    :empty => [[30, 30, 100], [0, 0, 0]],
    :dot1 => [[60, 80, 220], [0, 0, 0]],
    :mcomment => [[60, 80, 120], [0, 0, 0]],
    :endoffile => [[100, 100, 100], [0, 0, 0]],
    :number => [[65, 85, 225], [30, 80, 0]]
    }

    theme_gvim = {
    :ivar1 => [[55, 75, 215], [40, 50, 120]],
    :mcomment_tab => [[197, 197, 197], [231, 231, 231]],
    :endoffile_tab => [[209, 209, 209], [209, 209, 209]],
    :string1 => [[231, 231, 231], [0, 138, 142]],
    :ident => [[231, 231, 231], [0, 138, 142]],
    :string => [[231, 231, 231], [97, 101, 97]],
    :keyword => [[231, 231, 231], [158, 32, 239]],
    :any => [[231, 231, 231], [30, 40, 20]],
    :ivar => [[231, 231, 231], [0, 138, 142]],
    :tab => [[231, 231, 231], [231, 231, 231]],
    :regexp => [[30, 80, 0], [165, 185, 25]],
    :space => [[231, 231, 231], [30, 40, 20]],
    :gvar => [[160, 180, 100], [90, 0, 0]],
    :heredoc => [[231, 231, 231], [97, 101, 97]],
    :regexp1 => [[60, 80, 180], [165, 185, 25]],
    :eek:ut => [[60, 60, 60], [180, 100, 100]],
    :dot => [[231, 231, 231], [0, 0, 0]],
    :symbol => [[231, 231, 231], [0, 138, 142]],
    :comment => [[231, 231, 231], [0, 0, 255]],
    :heredoc_tab => [[209, 209, 209], [207, 211, 207]],
    :punct => [[231, 231, 231], [0, 0, 0]],
    :empty => [[30, 30, 100], [0, 0, 0]],
    :dot1 => [[60, 80, 220], [0, 0, 0]],
    :mcomment => [[231, 231, 231], [0, 0, 255]],
    :endoffile => [[231, 231, 231], [0, 0, 255]],
    :number => [[231, 231, 231], [97, 101, 97]]
    }

    def theme_import(theme_hash, name=nil)
    name ||= :imported
    theme name do |t|
    theme_hash.each do |key, (bg, fg)|
    t.set_rgb_pair key, bg, fg
    end
    end
    end

    theme_import(theme_blue, 'blue')
    theme_import(theme_gvim, 'gvim')

    puts "done loading config file"
     
    Simon Strandgaard, Jul 5, 2004
    #1
    1. Advertising

  2. Simon Strandgaard

    Sean O'Dell Guest

    On Sunday 04 July 2004 17:13, Simon Strandgaard wrote:

    Aeditor is a text editor with syntax highlighting?

    Sean O'Dell
     
    Sean O'Dell, Jul 5, 2004
    #2
    1. Advertising

  3. On Monday 05 July 2004 02:19, Sean O'Dell wrote:
    > On Sunday 04 July 2004 17:13, Simon Strandgaard wrote:
    >
    > Aeditor is a text editor with syntax highlighting?
    >


    yes.. I forgot to mention that.. I am a little tired.

    features:
    syntax coloring.. (2 lexers at the moment: ruby, plaintext).
    its able to do recognize heredocs spanning over multiple lines,
    also multiline comments.. and correctly deal with the __END__ tag.

    bookmarks.. F8=inserts/removes anonymonus bookmark.
    F9=jumps to next anonymous bookmark.

    swaplines.. Shift-Up, moves the current line up.
    Shift-Down, moves the current line down.

    indent/unindent.. Shift-Left unindents, Shift-Right indents.

    selections.. F5=enable/disable selection mode, F6=paste, F7=cut.

    search/replace.

    multiple buffers.

    sideways scrolling are fairly ok.

    autoindent.

    maybe there are more features?

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 5, 2004
    #3
  4. Simon Strandgaard

    Guest

    Hi,

    At Mon, 5 Jul 2004 09:13:32 +0900,
    Simon Strandgaard wrote in [ruby-talk:105240]:
    > mode :ruby do |m|
    > m.tabsize = 2


    Just a question; does this change tabstop size? Can it change
    indent size regardless of tabstop?

    --
    Nobu Nakada
     
    , Jul 5, 2004
    #4
  5. On Monday 05 July 2004 02:45, wrote:
    > At Mon, 5 Jul 2004 09:13:32 +0900,
    > Simon Strandgaard wrote in [ruby-talk:105240]:
    > > mode :ruby do |m|
    > > m.tabsize = 2

    >
    > Just a question; does this change tabstop size? Can it change
    > indent size regardless of tabstop?


    no.. sorry, not at the moment.

    I did some experiements with the old aeditor. I will add it to the todo list.

    it uses strategy pattern for editing strategies.
    It has ThrougTabs, Tabs, VirtualSpace and Normal.
    I guess it could be implemented by adding an extra strategy.

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 5, 2004
    #5
  6. -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1

    | on windows there are font problems.. you can make me happy if you can
    | make solve this problem. Thanks in advance.

    Making you happy:
    @font.create is not executed before onCanvasPrepare, and the font thusly
    accessed is invalid, causing segmentation fault. Solution proposed:

    def create
    read_registry
    super # this is where it looses control
    @font_created = true
    @font.create
    @back_buffer.create
    @canvas.setFocus
    update_title
    end

    and then a

    return unless @font_created

    in onCanvasPrepare (at the very start). Problems with this solution are:
    a race condition exists. You would have to do that with a semaphore or
    other.

    The speed of the whole editor seems to be very slow under windows with
    Fox. Can I ask you again to the exact reason why another fully evolved
    editor like SciTE will not do ?

    best regards,

    kaspar

    semantics & semiotics
    code manufacture

    www.tua.ch/ruby
    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.2.4 (MingW32)
    Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

    iD8DBQFA6WmUFifl4CA0ImQRAq8CAJ9LS5UFhgvgcDcM7LouCXOTmshgfgCeJlnX
    WSvQq49Z9lYTq4zp+hbFIvc=
    =5C9h
    -----END PGP SIGNATURE-----
     
    Kaspar Schiess, Jul 5, 2004
    #6
  7. il Mon, 5 Jul 2004 23:40:53 +0900, Kaspar Schiess <> ha
    scritto::

    >
    >Making you happy:
    >@font.create is not executed before onCanvasPrepare, and the font thusly
    >accessed is invalid, causing segmentation fault. Solution proposed:


    well, it's strange anyway that on linux this does work :/

    >The speed of the whole editor seems to be very slow under windows with
    >Fox. Can I ask you again to the exact reason why another fully evolved
    >editor like SciTE will not do ?


    I believe the author actually does not only wants to build an editor.
    He's even writing an opponent to the Scintilla library,
    see this:
    http://aeditor.rubyforge.org/faq.html
     
    gabriele renzi, Jul 5, 2004
    #7
  8. Simon Strandgaard

    James Britt Guest

    gabriele renzi wrote:
    > He's even writing an opponent to the Scintilla library,




    Ah. Opponent-based software. Yes, I think I seen some of that lately.

    :)


    James, teasing.
     
    James Britt, Jul 5, 2004
    #8
  9. On Monday 05 July 2004 16:40, Kaspar Schiess wrote:
    > | on windows there are font problems.. you can make me happy if you can
    > | make solve this problem. Thanks in advance.
    >
    > Making you happy:
    > @font.create is not executed before onCanvasPrepare, and the font thusly
    > accessed is invalid, causing segmentation fault. Solution proposed:


    Wonderful!


    > def create
    > read_registry
    > super # this is where it looses control
    > @font_created = true
    > @font.create
    > @back_buffer.create
    > @canvas.setFocus
    > update_title
    > end
    >
    > and then a
    >
    > return unless @font_created


    I had assumed that #create was invoked before anything else.
    but not realized this could be a problem.. (even though I have tried on 2 of
    my friends windows boxes.. changing random things in the code).


    > in onCanvasPrepare (at the very start). Problems with this solution are:
    > a race condition exists. You would have to do that with a semaphore or
    > other.


    I will browse fox's souce code to investigate this further.


    > The speed of the whole editor seems to be very slow under windows with
    > Fox.


    how slow? there is outputed timing information to the console.
    may I ask about details.

    one time when I tried on windows I had really poor performance.
    it took 10 seconds to render one frame. On my 700MHz linux box it
    takes 0.05 seconds to lex+render one frame.

    I have no explanaition if the slowdown is greater than 1 second.

    Suggestions how to track it down are appreciated.


    > Can I ask you again to the exact reason why another fully evolved
    > editor like SciTE will not do ?


    Im obsessed by ruby. I want to be able to write plugins in Ruby.
    I want to be able to do changes in the editor core via plugins.
    It is not possible with Scintilla to have so much freedom in the
    plugins. What I want is maybe emacs ala ruby?

    At some point it could be interesting to integrate my editor widget into
    freeride, and see what happens.

    >
    > best regards,
    >
    > kaspar


    Thanks Kaspar for making me happy :)

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 5, 2004
    #9
  10. Simon Strandgaard

    Lyle Johnson Guest

    On Mon, 5 Jul 2004 23:40:53 +0900, Kaspar Schiess <> wrote:

    > The speed of the whole editor seems to be very slow under windows with
    > Fox. Can I ask you again to the exact reason why another fully evolved
    > editor like SciTE will not do?


    I will not argue the merits of (potentially) reinventing the wheel
    here. But as for the speed issue, bear in mind that SciTE is compiled
    C++ code, and Simon's editor is written in Ruby. If AEditor was
    written directly in C++, I think it's safe to say you'd see
    performance much more comparable to SciTE's.
     
    Lyle Johnson, Jul 5, 2004
    #10
  11. Hello Simon,

    >> Can I ask you again to the exact reason why another fully evolved
    >> editor like SciTE will not do ?


    SS> Im obsessed by ruby. I want to be able to write plugins in Ruby.
    SS> I want to be able to do changes in the editor core via plugins.
    SS> It is not possible with Scintilla to have so much freedom in the
    SS> plugins. What I want is maybe emacs ala ruby?

    emacs has about 100.000 lines of C code to avoid the slowness of
    elisp. This are not inside files like buffer.c and do not belong to
    the lisp interpreter core.


    --
    Best regards, emailto: scholz at scriptolutions dot com
    Lothar Scholz http://www.ruby-ide.com
    CTO Scriptolutions Ruby, PHP, Python IDE 's
     
    Lothar Scholz, Jul 5, 2004
    #11
  12. On Monday 05 July 2004 18:06, Lothar Scholz wrote:
    > Hello Simon,
    >
    > >> Can I ask you again to the exact reason why another fully evolved
    > >> editor like SciTE will not do ?

    >
    > SS> Im obsessed by ruby. I want to be able to write plugins in Ruby.
    > SS> I want to be able to do changes in the editor core via plugins.
    > SS> It is not possible with Scintilla to have so much freedom in the
    > SS> plugins. What I want is maybe emacs ala ruby?
    >
    > emacs has about 100.000 lines of C code to avoid the slowness of
    > elisp. This are not inside files like buffer.c and do not belong to
    > the lisp interpreter core.


    wew.. thats many lines, my project has ~3400 lines of source code
    and ~2000 lines of testcode at the moment.

    my old editor had many more lines and could do some other things:
    folding, undo/redo/macros. It had much more testcode.. I have become
    a better tester since that time, and writes simpler tests.
    I believe the new editor is somewhat better tested than the old.

    my current intent is to keep it small and only use ruby. In the past
    I had an idea about writing the frontend in C++, to obtain speed.
    I think the speed of the current ruby implementation are acceptable.
    No need for C++.

    when I get back from my 3 week vacation in the us, I will focus on
    only blitting the dirty areas to the display.. and only do lexing of the
    current line (lexing really takes long time).

    I hope that I can release an editor package, that works on windows before
    saturday, where I go on vacation.

    any kind of patches are warmly welcome (hint) :)

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 5, 2004
    #12
  13. Simon Strandgaard

    Curt Hibbs Guest

    Simon Strandgaard wrote:
    >
    > > Can I ask you again to the exact reason why another fully evolved
    > > editor like SciTE will not do ?

    >
    > Im obsessed by ruby. I want to be able to write plugins in Ruby.
    > I want to be able to do changes in the editor core via plugins.
    > It is not possible with Scintilla to have so much freedom in the
    > plugins. What I want is maybe emacs ala ruby?
    >
    > At some point it could be interesting to integrate my editor widget into
    > freeride, and see what happens.


    It would, indeed, be interesting to see an aeditor freeride plugin. One of
    the goals of freeride is to be an IDE written in ruby. Obviously, aeditor
    fits right into that mold! If you decide to give it a go, we (the freeride
    developers) will be happy to answer your questions and provide whatever
    assistance we can.

    You mentioned that you want to have editor plugins. Do you have this
    already? The reason I ask is because freeride is entirely plugin based. Its
    plugin management is handled by a completely independent piece of code we
    call FreeBASE (pun intended) which handles plug loading, dependencies, and
    inter-plugin communications.

    Someday we are going to make a separate RubyForge project for FreeBASE to
    make it more visible and accessible.

    If you don't already have a plugin system, then you should consider
    FreeBASE. Doing so would not only save you a lot of time, but would make
    integration into FreeRIDE much easier.

    Curt
     
    Curt Hibbs, Jul 5, 2004
    #13
  14. On Monday 05 July 2004 19:07, Curt Hibbs wrote:
    > Simon Strandgaard wrote:
    > > > Can I ask you again to the exact reason why another fully evolved
    > > > editor like SciTE will not do ?

    > >
    > > Im obsessed by ruby. I want to be able to write plugins in Ruby.
    > > I want to be able to do changes in the editor core via plugins.
    > > It is not possible with Scintilla to have so much freedom in the
    > > plugins. What I want is maybe emacs ala ruby?
    > >
    > > At some point it could be interesting to integrate my editor widget into
    > > freeride, and see what happens.

    >
    > It would, indeed, be interesting to see an aeditor freeride plugin. One of
    > the goals of freeride is to be an IDE written in ruby. Obviously, aeditor
    > fits right into that mold! If you decide to give it a go, we (the freeride
    > developers) will be happy to answer your questions and provide whatever
    > assistance we can.


    I need to enhance the editor sligthly more, before I give it a shot.
    Here is a very optimiztic plan, in no paticular order:
    I will first experiment with supporting different encodings, such as
    unicode, big5, sjis.. etc.
    I will port my old undo/redo/macro system to the new editor.
    I will add line folding (my old editor had arbitary folding).


    > You mentioned that you want to have editor plugins. Do you have this
    > already? The reason I ask is because freeride is entirely plugin based. Its
    > plugin management is handled by a completely independent piece of code we
    > call FreeBASE (pun intended) which handles plug loading, dependencies, and
    > inter-plugin communications.


    no, I don't have any plugins yet.
    I have looked at your plugin system earlier, and found it interesting.


    > Someday we are going to make a separate RubyForge project for FreeBASE to
    > make it more visible and accessible.


    If I understand you correct, freebase is a standalone plugin architecture ?


    > If you don't already have a plugin system, then you should consider
    > FreeBASE. Doing so would not only save you a lot of time, but would make
    > integration into FreeRIDE much easier.


    I have considered it, but not come to any conclusion.

    The kind of plugins I imagine, which will need to interact with the lower
    layers of editor could be:
    coverage/profiling.. will have to color each line, and keep track of
    profiling information per line.
    cvs-annotate.. will have to keep track of version-numbers per line.
    abstract-syntax-tree.. pointers between the model and the ast.
    custom editing modes.. which has control of cursor movement.
    These things have to dig deep into the model.

    There are probably many more possible plugins.

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 5, 2004
    #14
  15. On Monday 05 July 2004 17:46, Simon Strandgaard wrote:
    > On Monday 05 July 2004 16:40, Kaspar Schiess wrote:
    > > | on windows there are font problems.. you can make me happy if you can
    > > | make solve this problem. Thanks in advance.
    > >
    > > Making you happy:
    > > @font.create is not executed before onCanvasPrepare, and the font thusly
    > > accessed is invalid, causing segmentation fault. Solution proposed:

    >
    > Wonderful!


    I think I have added your suggested idea.. however I don't know if it changes
    anything on windows, and thus would like to hear if the new code works for
    you (or for others windows users).

    The new 'viewfox.rb' file are located here
    http://rubyforge.org/cgi-bin/viewcv...=aeditor&content-type=text/vnd.viewcvs-markup

    Tell me if replacing the old 'viewfox.rb' file with the new, changes anything?

    Thanks in advance

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 5, 2004
    #15
  16. il Tue, 6 Jul 2004 01:21:40 +0900, Simon Strandgaard
    <> ha scritto::

    >my current intent is to keep it small and only use ruby. In the past
    >I had an idea about writing the frontend in C++, to obtain speed.
    >I think the speed of the current ruby implementation are acceptable.
    >No need for C++.


    if we just had a ruby ->c++/ObjectiveC translator..
     
    gabriele renzi, Jul 5, 2004
    #16
  17. Simon Strandgaard

    Curt Hibbs Guest

    Simon Strandgaard wrote:
    >
    > On Monday 05 July 2004 19:07, Curt Hibbs wrote:
    >
    > > Someday we are going to make a separate RubyForge project for

    > FreeBASE to
    > > make it more visible and accessible.

    >
    > If I understand you correct, freebase is a standalone plugin
    > architecture ?


    Yes, FreeBASE is already a completely standalone system. Rich Kilmer (its
    primary author) is already using it in a couple other projects.

    Its just that it is currently buried in a subdirectory of the FreeRIDE CVS
    tree and, consequently, most people don't realize that they could use it.
    That's why we need to put it into a separate RubyForge project. Somehow it
    just never makes it to the tops of the list of important stuff to get done.
    :-(

    Curt
     
    Curt Hibbs, Jul 5, 2004
    #17
  18. On Monday 05 July 2004 02:13, Simon Strandgaard wrote:
    > screenshots:
    > http://aeditor.rubyforge.org/wiki/wiki.pl?MainThemes


    I hope I have fixed the font issues, so that it now works
    on windows.

    download:
    http://rubyforge.org/frs/download.php/936/aeditor-1.1.tar.gz

    I have also added a fontdialog.. so you can choose your
    own font.

    If you give it a shot, then please tell me how it works out.
    I am especially curious to if it works on windows.
    Ideas for improvements are very welcome.. If you manage
    to make a nicer theme then please share the colors.
    If something sux or is unacceptable slow, then please
    also contact me.

    I hope I havn't dissapointed anyone.


    > dependency#1, iterator:
    > http://rubyforge.org/frs/download.php/703/iterator-0.8.tar.gz
    >
    > dependency#2, fxruby
    > http://fxruby.sourceforge.net/
    > If you are on a windows box it may be possible that fxruby already
    > are installed.
    >
    > on windows there are font problems.. you can make me happy if you can
    > make solve this problem. Thanks in advance.
    >
    > I have attached my ~/.aeditor file, which may be interesting to you.
    >
    > --
    > Simon Strandgaard
    >
    > mode :ruby do |m|
    > m.tabsize = 2
    > m.file_suffixes = %w(rb)
    > m.lexer = :ruby
    > m.cursor_through_tabs = true
    > end
    >
    > mode :c do |m|
    > m.tabsize = 4
    > m.file_suffixes = %w(c cpp cxx cc h hpp hxx hh)
    > m.cursor_through_tabs = false
    > end
    >
    > theme_blue = {
    >
    > :ivar1 => [[55, 75, 215], [40, 50, 120]],
    > :mcomment_tab => [[30, 30, 120], [0, 0, 0]],
    > :endoffile_tab => [[83, 83, 97], [0, 0, 0]],
    > :string1 => [[65, 85, 225], [0, 0, 0]],
    > :ident => [[55, 75, 215], [90, 80, 80]],
    > :string => [[65, 85, 225], [30, 80, 0]],
    > :keyword => [[60, 80, 220], [0, 0, 0]],
    > :any => [[60, 80, 220], [30, 40, 20]],
    > :ivar => [[60, 80, 200], [0, 0, 0]],
    > :tab => [[30, 70, 190], [30, 40, 20]],
    > :regexp => [[30, 80, 0], [165, 185, 25]],
    > :space => [[60, 80, 220], [30, 40, 20]],
    > :gvar => [[160, 180, 100], [90, 0, 0]],
    > :heredoc => [[80, 60, 220], [30, 40, 20]],
    > :regexp1 => [[60, 80, 180], [165, 185, 25]],
    > :eek:ut => [[60, 60, 60], [180, 100, 100]],
    > :dot => [[60, 80, 205], [0, 0, 0]],
    > :symbol => [[30, 80, 220], [90, 80, 80]],
    > :comment => [[60, 80, 120], [0, 0, 0]],
    > :heredoc_tab => [[30, 70, 190], [30, 40, 20]],
    > :punct => [[30, 80, 220], [120, 120, 120]],
    > :empty => [[30, 30, 100], [0, 0, 0]],
    > :dot1 => [[60, 80, 220], [0, 0, 0]],
    > :mcomment => [[60, 80, 120], [0, 0, 0]],
    > :endoffile => [[100, 100, 100], [0, 0, 0]],
    > :number => [[65, 85, 225], [30, 80, 0]]
    >
    > }
    >
    > theme_gvim = {
    >
    > :ivar1 => [[55, 75, 215], [40, 50, 120]],
    > :mcomment_tab => [[197, 197, 197], [231, 231, 231]],
    > :endoffile_tab => [[209, 209, 209], [209, 209, 209]],
    > :string1 => [[231, 231, 231], [0, 138, 142]],
    > :ident => [[231, 231, 231], [0, 138, 142]],
    > :string => [[231, 231, 231], [97, 101, 97]],
    > :keyword => [[231, 231, 231], [158, 32, 239]],
    > :any => [[231, 231, 231], [30, 40, 20]],
    > :ivar => [[231, 231, 231], [0, 138, 142]],
    > :tab => [[231, 231, 231], [231, 231, 231]],
    > :regexp => [[30, 80, 0], [165, 185, 25]],
    > :space => [[231, 231, 231], [30, 40, 20]],
    > :gvar => [[160, 180, 100], [90, 0, 0]],
    > :heredoc => [[231, 231, 231], [97, 101, 97]],
    > :regexp1 => [[60, 80, 180], [165, 185, 25]],
    > :eek:ut => [[60, 60, 60], [180, 100, 100]],
    > :dot => [[231, 231, 231], [0, 0, 0]],
    > :symbol => [[231, 231, 231], [0, 138, 142]],
    > :comment => [[231, 231, 231], [0, 0, 255]],
    > :heredoc_tab => [[209, 209, 209], [207, 211, 207]],
    > :punct => [[231, 231, 231], [0, 0, 0]],
    > :empty => [[30, 30, 100], [0, 0, 0]],
    > :dot1 => [[60, 80, 220], [0, 0, 0]],
    > :mcomment => [[231, 231, 231], [0, 0, 255]],
    > :endoffile => [[231, 231, 231], [0, 0, 255]],
    > :number => [[231, 231, 231], [97, 101, 97]]
    >
    > }
    >
    > def theme_import(theme_hash, name=nil)
    > name ||= :imported
    > theme name do |t|
    > theme_hash.each do |key, (bg, fg)|
    > t.set_rgb_pair key, bg, fg
    > end
    > end
    > end
    >
    > theme_import(theme_blue, 'blue')
    > theme_import(theme_gvim, 'gvim')
    >
    > puts "done loading config file"
     
    Simon Strandgaard, Jul 6, 2004
    #18
  19. --------------070205020701060305080909
    Content-Type: text/plain; charset=us-ascii; format=flowed
    Content-Transfer-Encoding: 7bit

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1

    Simon Strandgaard wrote:
    | If you give it a shot, then please tell me how it works out.
    | I am especially curious to if it works on windows.
    | Ideas for improvements are very welcome.. If you manage
    | to make a nicer theme then please share the colors.
    | If something sux or is unacceptable slow, then please
    | also contact me.

    Thank you for your effort, sorry for not answering. I have tried this
    version, but there seems to be another issue here (see attached file).
    Can anyone confirm this on windows ? I don't know what that is since I
    haven't had the time to trace this...

    btw: ruby 1.8.1 (2003-12-25) [i386-mingw32]

    best regards,
    kaspar

    semantics & semiotics
    code manufacture

    www.tua.ch/ruby
    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.2.4 (MingW32)
    Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

    iD8DBQFA6xycFifl4CA0ImQRAoJ1AKCBRpAB526R0g0nKbSxpAMv3pNy3wCfX5HM
    A2KBD4BE6l68yzFxgmgbylc=
    =oXcI
    -----END PGP SIGNATURE-----

    --------------070205020701060305080909
    Content-Type: text/plain;
    name="run.txt"
    Content-Transfer-Encoding: 7bit
    Content-Disposition: inline;
    filename="run.txt"

    did not found a configuration file
    cannot read, No such file or directory - D:/temp/aeditor-1.1/err.txt
    spawning editor in window mode.
    refresh buffer menu
    could not load the theme "nil"!
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    dirty all
    render took 0.01 seconds.
    render took 0.01 seconds.
    render took 0.01 seconds.
    render took 0.02 seconds.
    render took 0.02 seconds.
    render took 0.03 seconds.
    render took 0.03 seconds.
    render took 0.04 seconds.
    render took 0.04 seconds.
    render took 0.04 seconds.
    render took 0.05 seconds.
    render took 0.05 seconds.
    render took 0.06 seconds.
    render took 0.06 seconds.
    render took 0.06 seconds.
    render took 0.07 seconds.
    render took 0.07 seconds.
    render took 0.08 seconds.
    render took 0.08 seconds.
    render took 0.08 seconds.
    render took 0.09 seconds.
    render took 0.09 seconds.
    render took 0.09 seconds.
    render took 0.1 seconds.
    render took 0.1 seconds.
    render took 0.11 seconds.
    render took 0.11 seconds.
    render took 0.11 seconds.
    render took 0.16 seconds.
    render took 0.16 seconds.
    render took 0.16 seconds.
    render took 0.17 seconds.
    render took 0.17 seconds.
    render took 0.17 seconds.
    render took 0.18 seconds.
    render took 0.18 seconds.
    render took 0.18 seconds.
    render took 0.19 seconds.
    render took 0.19 seconds.
    render took 0.19 seconds.
    render took 0.2 seconds.
    render took 0.2 seconds.
    render took 0.2 seconds.
    render took 0.2 seconds.
    render took 0.21 seconds.
    render took 0.21 seconds.
    render took 0.21 seconds.
    render took 0.22 seconds.
    render took 0.22 seconds.
    render took 0.22 seconds.
    render took 0.23 seconds.
    render took 0.23 seconds.
    render took 0.23 seconds.
    render took 0.24 seconds.
    render took 0.24 seconds.
    render took 0.24 seconds.
    render took 0.24 seconds.
    render took 0.25 seconds.
    render took 0.25 seconds.
    render took 0.25 seconds.
    render took 0.25 seconds.
    render took 0.26 seconds.
    render took 0.26 seconds.
    render took 0.26 seconds.
    render took 0.27 seconds.
    render took 0.27 seconds.
    render took 0.27 seconds.
    render took 0.27 seconds.
    render took 0.28 seconds.
    render took 0.28 seconds.
    render took 0.28 seconds.
    render took 0.28 seconds.
    render took 0.32 seconds.
    render took 0.32 seconds.
    render took 0.33 seconds.
    render took 0.33 seconds.
    render took 0.33 seconds.
    render took 0.33 seconds.
    render took 0.33 seconds.
    render took 0.34 seconds.
    render took 0.34 seconds.
    render took 0.34 seconds.
    render took 0.34 seconds.
    render took 0.35 seconds.
    render took 0.35 seconds.
    render took 0.
    This application has requested the Runtime to terminate it in an unusual way.
    Please contact the application's support team for more information.
    35 seconds.
    render took 0.35 seconds.
    render took 0.35 seconds.
    render took 0.36 seconds.
    render took 0.36 seconds.
    render took 0.36 seconds.
    render took 0.36 seconds.
    render took 0.36 seconds.
    render took 0.37 seconds.
    render took 0.37 seconds.
    render took 0.37 seconds.
    render took 0.37 seconds.
    render took 0.38 seconds.
    render took 0.39 seconds.
    render took 0.39 seconds.
    render took 0.39 seconds.
    render took 0.39 seconds.
    render took 0.39 seconds.
    render took 0.39 seconds.
    render took 0.4 seconds.
    render took 0.4 seconds.
    render took 0.4 seconds.
    render took 0.4 seconds.
    render took 0.4 seconds.
    render took 0.4 seconds.
    render took 0.41 seconds.
    render took 0.41 seconds.
    render took 0.41 seconds.
    render took 0.41 seconds.
    render took 0.41 seconds.
    render took 0.41 seconds.
    render took 0.41 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.42 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.43 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.44 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    render took 0.45 seconds.
    c:/unix/ruby/lib/ruby/site_ruby/1.8/iterator.rb:160:in `next1': stack level too deep (SystemStackError)
    from c:/unix/ruby/lib/ruby/site_ruby/1.8/iterator.rb:77:in `next'
    from c:/unix/ruby/lib/ruby/site_ruby/1.8/iterator.rb:77:in `times'
    from c:/unix/ruby/lib/ruby/site_ruby/1.8/iterator.rb:77:in `next'
    from ./lib/aeditor/buffer.rb:334:in `reload_lines'
    from ./lib/aeditor/buffer.rb:321:in `call'
    from ./lib/aeditor/buffer.rb:361:in `with_iterator_begin'
    from ./lib/aeditor/buffer.rb:321:in `reload_lines'
    from ./lib/aeditor/buffer.rb:320:in `call'
    ... 1710 levels...
    from ./lib/aeditor/cli.rb:83:in `parse'
    from ./lib/aeditor/main.rb:26
    from bin/editor:2:in `require'
    from bin/editor:2
    bin/editor:2: [BUG] Segmentation fault
    ruby 1.8.1 (2003-12-25) [i386-mingw32]


    --------------070205020701060305080909--
     
    Kaspar Schiess, Jul 6, 2004
    #19
  20. On Tuesday 06 July 2004 23:36, Kaspar Schiess wrote:
    > Thank you for your effort, sorry for not answering. I have tried this
    > version, but there seems to be another issue here (see attached file).
    > Can anyone confirm this on windows ? I don't know what that is since I
    > haven't had the time to trace this...
    >
    > btw: ruby 1.8.1 (2003-12-25) [i386-mingw32]


    I had a chat session with Robert Klemme, who experienced almost the same,
    but Robert unfortunatly had to go.. so we never hunted it down.

    It seems to be an endless recursion. The backtrace doesn't reveal how
    it happened, thus I have made a small change so we can get a look at
    the full backtrace.

    please fetch this version of 'viewfox.rb' and try again, and afterwards
    mail me the '__backtrace__' file.
    http://rubyforge.org/cgi-bin/viewcv...=aeditor&content-type=text/vnd.viewcvs-markup

    This will hopefully reveal where the recursion begins.


    Another issue, in line#2 of the output it says
    cannot read, No such file or directory - D:/temp/aeditor-1.1/err.txt
    I guess this is because the program is invoked with a non-existing file.
    I am curious to what happens if you invoke the program with an existing file?
    c:\> editor autoexec.bat

    Also if you don't supply any arguments to the editor when you start it.. what
    happens then?
    c:\> editor


    Do you have ideas how to hunt down this recursion?

    Thanks for valuable info.. I am grateful

    --
    Simon Strandgaard
     
    Simon Strandgaard, Jul 6, 2004
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Simon Strandgaard

    [ANN] Aeditor-0.1 is unleashed

    Simon Strandgaard, Jul 1, 2003, in forum: Ruby
    Replies:
    12
    Views:
    214
    Simon Strandgaard
    Jul 2, 2003
  2. Simon Strandgaard

    [ANN] Aeditor 0.6, feedback wanted

    Simon Strandgaard, Jul 11, 2003, in forum: Ruby
    Replies:
    4
    Views:
    179
    Simon Strandgaard
    Jul 13, 2003
  3. Recheis Meinrad

    AW: [ann] AEditor 0.10, folding added

    Recheis Meinrad, Aug 12, 2003, in forum: Ruby
    Replies:
    1
    Views:
    110
    Simon Strandgaard
    Aug 12, 2003
  4. Simon Strandgaard

    [ANN] AEditor 0.12 released

    Simon Strandgaard, Apr 1, 2004, in forum: Ruby
    Replies:
    0
    Views:
    103
    Simon Strandgaard
    Apr 1, 2004
  5. Simon Strandgaard
    Replies:
    0
    Views:
    113
    Simon Strandgaard
    Jul 7, 2004
Loading...

Share This Page