Vim does not currently support integration with Ruby 1.9,
but it's on the list (see :help todo).
Masaki Suketa supplied a patch[1] to the vim_dev mailing list in
July 2009, under the subject line "Patch for Vim with Ruby 1.9".
Using this patch, I'm able to build Vim with support for Ruby
1.9 (on Arch Linux), as well as Ruby 1.8 (on Fedora 12 Linux).
The Ruby-based plugins I use (LustyExplorer[2] and
LustyJuggler[3]) work fine Ruby 1.8 and Masaki's patch. With
Ruby 1.9, LustyExplorer is throwing an exception[4], but I think
it's a problem with the plugin and the changing Ruby language
definition, not a problem with integrating Ruby into Vim.
Until Ruby 1.9 is supported in Vim, it will be more difficult
for plugin authors to try Ruby 1.9 and fix any problems. Arch
Linux uses Ruby-1.9, so the Arch packager for Vim has disabled
Ruby integration[5] pending a Vim patch that works with Ruby
1.9. This leave Arch users somewhat out in the cold for Ruby
integration.
Is Masaki's patch ready to be incorporated, or is more testing
required? Masaki had done testing with multiple versions of
Ruby, including 1.8.7, 1.9.1, and 1.9.2dev. It's working for me
with Ruby 1.8 on Fedora, so it looks harmless for Ruby 1.8
users, while allowing Ruby 1.9 users a chance to more widely
exercise Ruby-based plugins and shake out compatibility bugs.
Thanks,
Michael Henry
[1]:
http://groups.google.com/group/vim_dev/browse_thread/thread/699c65598bc6348b/e5c0a53a8a26624e?lnk=raot&pli=1
[2]: http://www.vim.org/scripts/script.php?script_id=1890
[3]: http://www.vim.org/scripts/script.php?script_id=2050
[4]: The exception looks like this:
type mismatch: Fixnum given
(eval):118:in `index'
(eval):118:in `block in buildScoreArray'
(eval):117:in `each_byte'
(eval):117:in `buildScoreArray'
(eval):103:in `score'
(eval):326:in `block in matching_entries'
(eval):325:in `select'
(eval):325:in `matching_entries'
(eval):312:in `compute_ordered_matching_entries'
(eval):246:in `refresh'
(eval):222:in `key_pressed'
(eval):560:in `block in key_pressed'
(eval):492:in `time'
(eval):531:in `key_pressed'
(eval):1:in `<main>'
[5]: http://bugs.archlinux.org/task/16710
> Seeing that Vim doesn't compile that well with the latest Ruby releases
Does for me.
ld: library not found for -lruby.1.9.1