Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > Scriptable text editor with Ruby?

Reply
Thread Tools

Scriptable text editor with Ruby?

 
 
Dolazy
Guest
Posts: n/a
 
      01-03-2007
Hi all!

Vim and emacs are text editor that can be scripted using internal
script languages. I'm thinking of writing a platform independent text
editor myself that uses the ruby language for executing scripts. The
host application would be written in C++ (+Qt) and it would somehow be
able to interact with ruby.

I think there are basically two ways of implementing this interaction:
- using IPC
- command line interaction (host executes the ruby script with
parameters and catches the output)

IPC is the most powerful I think, but then again I have various options
to achieve this communication:
- TCP
- XmlRpc
- shared memory

I'm very new to the concept of inter-process-communication and I would
greatly appreciate your insights on how I would best proceed to achieve
this interaction.

Or maybe there is a more obvious and straightforward approach that I
overlooked?

Best regards,
Francis

 
Reply With Quote
 
 
 
 
Michael P. Soulier
Guest
Posts: n/a
 
      01-03-2007
On 1/3/07, Dolazy <> wrote:
> Hi all!
>
> Vim and emacs are text editor that can be scripted using internal
> script languages. I'm thinking of writing a platform independent text
> editor myself that uses the ruby language for executing scripts. The
> host application would be written in C++ (+Qt) and it would somehow be
> able to interact with ruby.


Vim runs everywhere. Are you sure that this is necessary?

Mike
--
Michael P. Soulier <>
"Any intelligent fool can make things bigger and more complex... It takes a
touch of genius - and a lot of courage to move in the opposite direction."
--Albert Einstein

 
Reply With Quote
 
 
 
 
Dolazy
Guest
Posts: n/a
 
      01-03-2007

Michael P. Soulier schreef:

> Vim runs everywhere. Are you sure that this is necessary?
>
> Mike


Are you sure Vim was necessary? Emacs runs everywhere...

 
Reply With Quote
 
Gregory Brown
Guest
Posts: n/a
 
      01-03-2007
On 1/3/07, Dolazy <> wrote:
>
> Michael P. Soulier schreef:
>
> > Vim runs everywhere. Are you sure that this is necessary?
> >
> > Mike

>
> Are you sure Vim was necessary? Emacs runs everywhere...


but vi *must* run everywhere (According to POSIX).

To the OP:

Both editors run everywhere and in my opinion, if you're not planning
on building a cross platform TextMate clone that is at least 95% as
good, you won't pry anyone from vim, emacs, *or* TextMate.

But if you're looking to try something different, or build the perfect
editor for you, have fun. I know I'd at least play around with yet
another Ruby enabled editor. (Though QT is yucky)

 
Reply With Quote
 
James Britt
Guest
Posts: n/a
 
      01-03-2007
Dolazy wrote:
> Hi all!
>
> Vim and emacs are text editor that can be scripted using internal
> script languages. I'm thinking of writing a platform independent text
> editor myself that uses the ruby language for executing scripts.


Vim can do that now. Build it with Ruby support and you can drive the
editor with Ruby.


--
James Britt

"I was born not knowing and have had only a little
time to change that here and there."
- Richard P. Feynman

 
Reply With Quote
 
Dolazy
Guest
Posts: n/a
 
      01-03-2007

Gregory Brown schreef:

> On 1/3/07, Dolazy <> wrote:
> >
> > Michael P. Soulier schreef:
> >
> > > Vim runs everywhere. Are you sure that this is necessary?
> > >
> > > Mike

> >
> > Are you sure Vim was necessary? Emacs runs everywhere...

>
> but vi *must* run everywhere (According to POSIX).
>
> To the OP:
>
> Both editors run everywhere and in my opinion, if you're not planning
> on building a cross platform TextMate clone that is at least 95% as
> good, you won't pry anyone from vim, emacs, *or* TextMate.
>
> But if you're looking to try something different, or build the perfect
> editor for you, have fun. I know I'd at least play around with yet
> another Ruby enabled editor. (Though QT is yucky)


Thanks

This is really a pet project and I develop it in the first place to
deal with some of my specific needs (gdb integration). And also because
I want to learn Qt.

Btw I use Vim as primary editor.

 
Reply With Quote
 
Dolazy
Guest
Posts: n/a
 
      01-03-2007

> Embed the Ruby interpreter in the text editor itself? Then just make certain
> functions available to Ruby and script away.
>
> Jason


That would be one of those obvious approaches that I couldn't think of
myself.. Thanks!


 
Reply With Quote
 
M. Edward (Ed) Borasky
Guest
Posts: n/a
 
      01-03-2007
Dolazy wrote:
> Hi all!
>
> Vim and emacs are text editor that can be scripted using internal
> script languages. I'm thinking of writing a platform independent text
> editor myself that uses the ruby language for executing scripts. The
> host application would be written in C++ (+Qt) and it would somehow be
> able to interact with ruby.
>

Well, given QtRuby, you probably don't really need C++ at all -- you
could do it all in Ruby. But I'm not sure what the most recent status of
QtRuby is, and there is always the licensing gotcha -- you have to use
Qt 4 for open source Windows projects. If you use another GUI toolkit,
there are a number with Ruby bindings. For that matter, most of them
have some kind of text editor widget built in, which makes life even easier.
> I think there are basically two ways of implementing this interaction:
> - using IPC
> - command line interaction (host executes the ruby script with
> parameters and catches the output)
>
> IPC is the most powerful I think, but then again I have various options
> to achieve this communication:
> - TCP
> - XmlRpc
> - shared memory
>
> I'm very new to the concept of inter-process-communication and I would
> greatly appreciate your insights on how I would best proceed to achieve
> this interaction.
>
> Or maybe there is a more obvious and straightforward approach that I
> overlooked?
>

Two comments:

1. As a number of folks have pointed out, "vim" has an excellent Ruby
scripting facility already.
2. Rather than delving into issues of low-level implementation,
interprocess communication vs. shelling out to a command like vs.
whatever, I'd recommend a more agile and pragmatic approach. Pick a
toolkit, find a Windows user, a Mac user and a Linux user, set up a
project on RubyForge and start building the thing!


--
M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given rabbits fire.


 
Reply With Quote
 
Simon Strandgaard
Guest
Posts: n/a
 
      01-03-2007
On 1/3/07, Dolazy <> wrote:
[snip stuff about ruby/c++]
> Or maybe there is a more obvious and straightforward approach that I
> overlooked?


have you considered writing the entire editor in ruby and
then use ruby qt.. so you don't use any c++?

Ruby is good at string manipulation, so its possible
to do the entire syntax coloring in ruby. I think
this task is pretty big in c++.

--
Simon Strandgaard
http://opcoders.com/

 
Reply With Quote
 
Thomas Mueller
Guest
Posts: n/a
 
      01-03-2007
Hi,

You might want to have a look at Java 6. I have just installed that
yesterday and haven't played around with it at all yet, but from what
I read on the website it's integration with scripting languages might
make it relatively easy to include Ruby scripting in your text editor.

I realise there would be quite a few disadvantages to this approach
(need the runtime, need a brand new runtime, cannot code it in
Ruby...) but it might be worth looking into this.

Thomas


2007/1/4, Simon Strandgaard <>:
> On 1/3/07, Dolazy <> wrote:
> [snip stuff about ruby/c++]
> > Or maybe there is a more obvious and straightforward approach that I
> > overlooked?

>
> have you considered writing the entire editor in ruby and
> then use ruby qt.. so you don't use any c++?
>
> Ruby is good at string manipulation, so its possible
> to do the entire syntax coloring in ruby. I think
> this task is pretty big in c++.
>
> --
> Simon Strandgaard
> http://opcoders.com/
>
>


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Cinema.Craft.Encoder.SP.v2.70.01.05, Magic.Bullet.Editor.v.1.01.for.Avid.Xpress.Pro, Magic.Bullet.Editor.v.1.01.for.Premiere.Pro, Magic.Bullet.Editor.v.1.01.for.Sony.Vegas, Avid.Xpress.Pro.HD.v5.0 1CD, Sony.Vegas.v5.0d, ola DVD Video 0 01-14-2005 10:53 AM
scriptable editing XP explorer bug greg ASP .Net 0 08-23-2004 09:01 PM
ANN: New low-cost XML Editor, XSLT Editor, XSLT Debugger, DTD/Schema Editor Stylus Studio Java 0 08-03-2004 03:53 PM
ANN: Guis-1.3 a GTK2 widget server (scriptable in Python & Ruby) Basile STARYNKEVITCH Python 0 09-02-2003 02:42 PM
ANN: scintilla based, scriptable code editor CUTE 0.1.6 released Heiko =?ISO-8859-15?Q?K=F6hler?= Python 0 07-27-2003 02:56 PM



Advertisments
 



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57