Skip to search.

Breaking News Visit Yahoo! News for the latest.

×Close this window

vimdev · Vim (Vi IMproved) text editor developers list

The Yahoo! Groups Product Blog

Check it out!

Group Information

? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Hear how Yahoo! Groups has changed the lives of others. Take me there.

Messages

Advanced
Messages Help
Messages 19471 - 19500 of 70038   Oldest  |  < Older  |  Newer >  |  Newest
Messages: Show Message Summaries Sort by Date ^  
#19471 From: Alexey Marinichev <lyosha@...>
Date: Tue Apr 3, 2001 6:36 pm
Subject: toggling keymap in normal mode
lyosha@...
Send Email Send Email
 
Hello,

How do I toggle keyboard map set by 'keymap' option from the normal
mode?  There isn't anything simpler than :normal a <Ctrl-^> <Esc> <CR>,
is there?

Related issue: if I set 'keymap' option, keyboard gets remapped.  It
would be nice to be able to set the option and leave the keyboard in its
unmapped state, to have Ctrl-^ switch the mappings.

	 --Lyosha

#19472 From: Bram Moolenaar <Bram@...>
Date: Tue Apr 3, 2001 6:45 pm
Subject: Re: toggling keymap in normal mode
Bram@...
Send Email Send Email
 
Alexey Marinichev wrote:

> How do I toggle keyboard map set by 'keymap' option from the normal
> mode?  There isn't anything simpler than :normal a <Ctrl-^> <Esc> <CR>,
> is there?

No, since the mappings only take effect in Insert mode, it's logical that you
can only enable/disable them from Insert mode.  Well, except when you want to
use "r".

> Related issue: if I set 'keymap' option, keyboard gets remapped.  It
> would be nice to be able to set the option and leave the keyboard in its
> unmapped state, to have Ctrl-^ switch the mappings.

Pff, yet another option?

Why do you first tell Vim to map keys for your language and then say "but I
don't want to use them"?  Perhaps you should postpone loading them until you
really want to use them.

--
I learned the customs and mannerisms of engineers by observing them, much the
way Jane Goodall learned about the great apes, but without the hassle of
grooming.
				 (Scott Adams - The Dilbert principle)

  ///  Bram Moolenaar -- Bram@... -- http://www.moolenaar.net  \\\
(((   Creator of Vim - http://www.vim.org -- ftp://ftp.vim.org/pub/vim   )))
  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///

#19473 From: "Ron Aaron" <raaron@...>
Date: Tue Apr 3, 2001 8:28 pm
Subject: Re: toggling keymap in normal mode
raaron@...
Send Email Send Email
 
Alexey Marinichev <lyosha@...> writes:
>I use vim as an editor to compose emails.  Sometimes I write in English
>and sometimes in Russian.  I do not know in advance which language it

Hi, Alexey!

Will you be contributing your russian Keymaps?  All we have so far in the
official distro is my Hebrew ones.

Best regards,
Ron

#19474 From: Alexey Marinichev <lyosha@...>
Date: Tue Apr 3, 2001 8:05 pm
Subject: Re: toggling keymap in normal mode
lyosha@...
Send Email Send Email
 
On Tue, Apr 03, 2001 at 08:45:18PM +0200, Bram Moolenaar wrote:
>
> Alexey Marinichev wrote:
>
> > How do I toggle keyboard map set by 'keymap' option from the normal
> > mode?  There isn't anything simpler than :normal a <Ctrl-^> <Esc> <CR>,
> > is there?
>
> No, since the mappings only take effect in Insert mode, it's logical that you
> can only enable/disable them from Insert mode.  Well, except when you want to
> use "r".

Also "f" and "F".  That's the whole point of lmaps, to have remapping
working everywhere.

> > Related issue: if I set 'keymap' option, keyboard gets remapped.  It
> > would be nice to be able to set the option and leave the keyboard in its
> > unmapped state, to have Ctrl-^ switch the mappings.
>
> Pff, yet another option?

It doesn't have to be an option.  I'm file with normal mode command that
switches mapping, then I could do :normal g<C-^> or whatever it would
be.

> Why do you first tell Vim to map keys for your language and then say "but I
> don't want to use them"?  Perhaps you should postpone loading them until you
> really want to use them.

I use vim as an editor to compose emails.  Sometimes I write in English
and sometimes in Russian.  I do not know in advance which language it
will be.  Right now, I have to type :set keymap=something once before I
can type cyrillic.  That's annoying.  I just want C-^ to always work.
Imapping C-^ to clever combination of setting keymap and unmapping C-^
is just too hacky, is it not?

	 --Lyosha

#19475 From: Bram Moolenaar <Bram@...>
Date: Tue Apr 3, 2001 9:02 pm
Subject: Re: toggling keymap in normal mode
Bram@...
Send Email Send Email
 
Alexey Marinichev wrote:

> I use vim as an editor to compose emails.  Sometimes I write in English
> and sometimes in Russian.  I do not know in advance which language it
> will be.  Right now, I have to type :set keymap=something once before I
> can type cyrillic.  That's annoying.  I just want C-^ to always work.
> Imapping C-^ to clever combination of setting keymap and unmapping C-^
> is just too hacky, is it not?

The current support of 'keymap' is for what most people would need.  If you
start editing a Russian file, you select the Russian 'keymap'.  That should be
easy and straightforward.

If you want to switch the 'keymap' on/off for specific situations, like when
editing an e-mail that contains a MIME note about the charset, feel free to
make any mapping, script and function that you need.  The most obvious would
be:

	 :map <F4> :set keymap=russian<CR>
	 :map <F5> :set keymap=<CR>

Actually, if there would be an option to enable/disable the keymap, this would
probably end up being used with a mapping as well.

--
Often you're less important than your furniture.  If you think about it, you
can get fired but your furniture stays behind, gainfully employed at the
company that didn't need _you_ anymore.
				 (Scott Adams - The Dilbert principle)

  ///  Bram Moolenaar -- Bram@... -- http://www.moolenaar.net  \\\
(((   Creator of Vim - http://www.vim.org -- ftp://ftp.vim.org/pub/vim   )))
  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///

#19476 From: Alexey Marinichev <lyosha@...>
Date: Tue Apr 3, 2001 9:28 pm
Subject: Re: toggling keymap in normal mode
lyosha@...
Send Email Send Email
 
On Tue, Apr 03, 2001 at 11:02:20PM +0200, Bram Moolenaar wrote:
[...]
> If you want to switch the 'keymap' on/off for specific situations, like when
> editing an e-mail that contains a MIME note about the charset, feel free to
> make any mapping, script and function that you need.  The most obvious would
> be:
>
>  :map <F4> :set keymap=russian<CR>
>  :map <F5> :set keymap=<CR>

The problem is once <F5> is pressed, insert mode Ctrl-^ is not working
anymore.

In any case: I *always* *always* want insert mode Ctrl-^ to work.  I do
not want to remember to press <F4> to initialise keymap option.  *And*,
when I start vim, I expect it to be in normal latin mode.  That's it.
What's the simplest way to do it?

	 --Lyosha

#19477 From: Paul Moore <gustav@...>
Date: Tue Apr 3, 2001 9:36 pm
Subject: Re: How can I preserve old filetype?
gustav@...
Send Email Send Email
 
On Tue,  3 Apr 2001 10:58:05 -0700, you wrote:

>Hi all!
>
>I'm using ftplugin scripts to get special behavior, scripts, etc. loaded for
>particular files.  Specifically, I have a line like:
>
> vim: ft=specialty ft=c :
>
>in a C file to load the scripts in 'ftplugin/specialty.vim' when I edit that
>file (specifically).
>
>The question is, is there a way within my ftplugin script to get the old value
>of '&ft', so I can automatically restore it to its prior value?

I don't think you can do this. You're abusing the filetype system pretty
seriously here, so I think you're on your own... (I didn't even realise that
setting ft twice like this would work).

As an alternative, how about writing your own "behaviour" function. The
following seems like the sort of thing. It looks for lines of the form

     [text][space]behaviour:[space]word word ...:

within 'modelines' of the start or end of the file, and executes any files in
a "behaviour" subdirectory of $VIMRUNTIME for each of the words in the line
(it uses the same algorithm as for filetypes - run any or all of
behaviour/word.vim, behaviour/word_*.vim and behaviour/word/*.vim).

So your example would become

     vim: set ft=c: behaviour: specialty:

That was fun to do! For now, it's in my _vimrc, but I'll probably make it into
a proper plugin.

Paul


--- Code attached here to be included in _vimrc, or made into a plugin.

" Just being clever - check lines within 'modelines' of the
" end, just like "real" modelines
function CheckBehaviour(n)
     let i = 1
     let end = line('$')
     while i <= a:n && i <= end
         echo 'doing line' i
         call CheckBehaviourLine(getline(i))
         let i = i + 1
     endwhile
     let i = end
     let finish = end - a:n
     if finish <= 0
         return
     endif
     if finish < a:n
         let finish = a:n
     endif
     while i > finish
         echo 'doing line' i
         call CheckBehaviourLine(getline(i))
         let i = i - 1
     endwhile
endfunction

" This function just does a match and splits the result into words.
" String processing in Vim is hard!!! (Silly, isn't it?)
function CheckBehaviourLine(line)
     " Look for the required pattern. Note the use of \zs and \ze to pick
     " out the part of the line we are interested in
     let res = matchstr(a:line, '\<behaviour:\s\+\zs.*\ze:')
     if res == ""
         return
     endif
     " Trim whitespace
     let res = substitute(res, '^\s*', '', '')
     let res = substitute(res, '\s*$', '', '')
     " Split off words
     while res != ""
         let word = substitute(res, '\s.*$', '', '')
         let res = substitute(res, '^\S*\s*', '', '')
         " Use the same behaviour as for filetype plugins
         " (see $VIMRUNTIME/ftplugin.vim)
         exec "runtime! behaviour/" . word . ".vim" .
           \  " behaviour/" . word . "_*.vim" .
           \  " behaviour/" . word . "/*.vim"
     endwhile
endfunction

au BufReadPost * call CheckBehaviour(&modelines)

#19478 From: "Ron Aaron" <raaron@...>
Date: Tue Apr 3, 2001 9:39 pm
Subject: mapping Ctrl-Shift-A ... how?
raaron@...
Send Email Send Email
 
I want to make Ctrl-Shift-A map to something.  But when I have


	 map <c-s-a> ...stuff...

I get
	 map <C-A> ...stuff...

which of course means pressing Ctrl-A no longer works.  Is there any way to
distinguish the shifted and unshifted Ctrl keys?

Ron

--
"VINE is not PINE"
            get it from: http://www.mossbayeng.com/~ron/vim/vine.html
Ron Aaron                                       Moss Bay Engineering
425-649-8817                              Precision Crafted Software
http://www.mossbayeng.com/~ron/ronsresume.html

#19479 From: Alexey Marinichev <lyosha@...>
Date: Tue Apr 3, 2001 9:35 pm
Subject: Re: toggling keymap in normal mode
lyosha@...
Send Email Send Email
 
On Tue, Apr 03, 2001 at 01:28:58PM -0700, Ron Aaron wrote:
[...]
> Hi, Alexey!
>
> Will you be contributing your russian Keymaps?  All we have so far in the
> official distro is my Hebrew ones.
[...]

Hello,

I shall be delighted to.  Unfortunately the layout I am using is not the
standard one, so the version I have is little use for others.  I will
put together keymap to emulate windows ones.  Do we want all codepages
or UTF-8 is enough?

	 --Lyosha

#19480 From: "Ron Aaron" <raaron@...>
Date: Tue Apr 3, 2001 9:45 pm
Subject: Re: How can I preserve old filetype?
raaron@...
Send Email Send Email
 
Paul Moore <gustav@...> writes:
>On Tue,  3 Apr 2001 10:58:05 -0700, you wrote:
>
>I don't think you can do this. You're abusing the filetype system pretty
>seriously here

:-)  ... but it works!  The reason is that vim just processes each option in
modelines as it appears -- you can set as many options, as many times, as you
like.

>As an alternative, how about writing your own "behaviour" function. The
>following seems like the sort of thing. It looks for lines of the form

Very clever! But this means I have to call that function for every file I
open, when the whole point is that I only want 'special' behaviour for a
particular file or two.

Ron

#19481 From: "Ron Aaron" <raaron@...>
Date: Tue Apr 3, 2001 10:39 pm
Subject: fold menu
raaron@...
Send Email Send Email
 
I just noticed there's no fold menu.  Are there plans to add one?

--
"VINE: Vim Integrated News and Email"
            get it from: http://www.mossbayeng.com/~ron/vim/vine.html
Ron Aaron                                       Moss Bay Engineering
425-649-8817                              Precision Crafted Software
http://www.mossbayeng.com/~ron/ronsresume.html

#19482 From: Benji Fisher <benji@...>
Date: Wed Apr 4, 2001 1:39 am
Subject: Re: How can I preserve old filetype?
benji@...
Send Email Send Email
 
Paul Moore wrote:
[snip]

> As an alternative, how about writing your own "behaviour" function. The
> following seems like the sort of thing. It looks for lines of the form
>
>     [text][space]behaviour:[space]word word ...:
>
> within 'modelines' of the start or end of the file, and executes any files in
> a "behaviour" subdirectory of $VIMRUNTIME for each of the words in the line
> (it uses the same algorithm as for filetypes - run any or all of
> behaviour/word.vim, behaviour/word_*.vim and behaviour/word/*.vim).
>
> So your example would become
>
>     vim: set ft=c: behaviour: specialty
  >

> That was fun to do! For now, it's in my _vimrc, but I'll probably make it into
> a proper plugin.
>
> Paul
>
>
> --- Code attached here to be included in _vimrc, or made into a plugin.
>
> " Just being clever - check lines within 'modelines' of the
> " end, just like "real" modelines
> function CheckBehaviour(n)
>     let i = 1
>     let end = line('$')
>     while i <= a:n && i <= end
>         echo 'doing line' i
>         call CheckBehaviourLine(getline(i))
>         let i = i + 1
>     endwhile
>     let i = end
>     let finish = end - a:n
>     if finish <= 0
>         return
>     endif
>     if finish < a:n
>         let finish = a:n
>     endif
>     while i > finish
>         echo 'doing line' i
>         call CheckBehaviourLine(getline(i))
>         let i = i - 1
>     endwhile
> endfunction

       Wouldn't it be easier to use :global?

let n = (a:n < line("$") ? a:n : line("$"))
execute "1," . n . "g/^/call CheckBehaviorLine(getline('.'))"
execute (line("$")-n+1) . ",$g/^/call CheckBehaviorLine(getline('.'))"

(untested)  You could probably speed things up by using a more interesting
pattern after "g/".  I think my version and yours both have the problem
that a modeline can be executed twice (in a short file) if it is near both
the beginning and the end.

> " This function just does a match and splits the result into words.
> " String processing in Vim is hard!!! (Silly, isn't it?)
> function CheckBehaviourLine(line)
>     " Look for the required pattern. Note the use of \zs and \ze to pick
>     " out the part of the line we are interested in
>     let res = matchstr(a:line, '\<behaviour:\s\+\zs.*\ze:')
>     if res == ""
>         return
>     endif

       You do not really need this test.

>     " Trim whitespace
>     let res = substitute(res, '^\s*', '', '')
>     let res = substitute(res, '\s*$', '', '')
>     " Split off words
>     while res != ""
>         let word = substitute(res, '\s.*$', '', '')
>         let res = substitute(res, '^\S*\s*', '', '')
>         " Use the same behaviour as for filetype plugins
>         " (see $VIMRUNTIME/ftplugin.vim)
>         exec "runtime! behaviour/" . word . ".vim" .
>           \  " behaviour/" . word . "_*.vim" .
>           \  " behaviour/" . word . "/*.vim"
>     endwhile
> endfunction
>
> au BufReadPost * call CheckBehaviour(&modelines)

					 --Benji Fisher

#19483 From: Benji Fisher <benji@...>
Date: Wed Apr 4, 2001 1:47 am
Subject: Re: mapping Ctrl-Shift-A ... how?
benji@...
Send Email Send Email
 
Ron Aaron wrote:

> I want to make Ctrl-Shift-A map to something.  But when I have
>
>
>  map <c-s-a> ...stuff...
>
> I get
>  map <C-A> ...stuff...
>
> which of course means pressing Ctrl-A no longer works.  Is there any way to
> distinguish the shifted and unshifted Ctrl keys?

       I think that <c-s-a> and <c-a> have the same ASCII value, like <esc>
and <C-[>, so there is no way to map them differently.

					 --Benji Fisher

#19484 From: Bohdan Vlasyuk <bohdan@...>
Date: Wed Apr 4, 2001 6:22 am
Subject: Re: mapping Ctrl-Shift-A ... how?
bohdan@...
Send Email Send Email
 
Hello Ron,
Wednesday, April 04, 2001, 12:39:45 AM, you wrote:

RA> I want to make Ctrl-Shift-A map to something.  But when I have
RA>         map <c-s-a> ...stuff...
RA> I get
RA>         map <C-A> ...stuff...

RA> which of course means pressing Ctrl-A no longer works. Is there
RA> any way to distinguish the shifted and unshifted Ctrl keys?
If you use Linux - you should play with your keymaps in order to get
it right, for example, I have following string there:
         keycode 30 =    +a  +A      +198    +230
     control keycode 30 =    Control_a,
so with my settings <C-s-A> will be treated just as <C-A>, however,
you may write, for example,
control shift 30 = F21
string F21="\033[35~"
,and then in vim:
:imap ^V<C-s-A> text
(don't type it literally, but press it)

It works for me - RH 6.2
08:18:17 [root,~]$ uname -r
2.2.18
08:18:19 [root,~]$ rpm -q console-tools
console-tools-19990829-10bc
08:18:21 [root,~]$

--
Best regards,
  Bohdan                            mailto:bohdan@...

#19485 From: Michael Piefel <piefel@...>
Date: Wed Apr 4, 2001 8:39 am
Subject: Re: fold menu
piefel@...
Send Email Send Email
 
On  3/04/01 at 15:39:55, Ron Aaron wrote:
> I just noticed there's no fold menu.  Are there plans to add one?

Like this one?

amenu F&olding.&Manual                  :set foldmethod=manual<CR>
amenu Folding.&Indent                   :set foldmethod=indent<CR>
amenu Folding.&Expression               :set foldmethod=expr<CR>
amenu Folding.Mar&ker                   :set foldmethod=marker<CR>
amenu Folding.&Syntax                   :set foldmethod=syntax<CR>
menu Folding.-sep-                      <nul>
amenu Folding.&Open/Close<TAB>za        :normal za

Actually I don't like menus, even though I use them for tasks I do
rarely and such can't remember the keycombos. I have "aunmenu Help" in
my .gvimrc ... [1]

Bye,
     Mike

[1] Related question: Now that I tried a Vim with translations on, I of
course get a warning about a nonexisting menu (it's now called "Hilfe").
Any way to solve this generally?

--
|=| Michael Piefel                    piefel@...
|=| Humboldt-Universität zu Berlin              http://www.piefel.de
|=| Tel. (+49 30) 2093 3831

#19486 From: Bram Moolenaar <Bram@...>
Date: Wed Apr 4, 2001 8:41 am
Subject: Re: fold menu
Bram@...
Send Email Send Email
 
Ron Aaron wrote:

> I just noticed there's no fold menu.  Are there plans to add one?

What would the Fold menu contain?  There are too many options and commands to
put them all in a menu.

--
hundred-and-one symptoms of being an internet addict:
1. You actually wore a blue ribbon to protest the Communications Decency Act.

  ///  Bram Moolenaar -- Bram@... -- http://www.moolenaar.net  \\\
(((   Creator of Vim - http://www.vim.org -- ftp://ftp.vim.org/pub/vim   )))
  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///

#19487 From: Vince Negri <vnegri@...>
Date: Wed Apr 4, 2001 9:06 am
Subject: RE: fold menu
vnegri@...
Send Email Send Email
 
On 04 Apr 2001, 09:41 Bram Moolenaar wrote:
> Ron Aaron wrote:
>
> > I just noticed there's no fold menu.  Are there plans to add one?
>
> What would the Fold menu contain?  There are too many options and commands
to
> put them all in a menu.

Unless of course, you implemented folding *inside menus*

;-)))




--
Vince Negri (vnegri@...) The Man with no Mouse
What a depressingly stupid machine.
Legal Disclaimer: Any views expressed by the sender of this message are
not necessarily those of Application Solutions Ltd. Information in this
e-mail may be confidential and is for the use of the intended recipient
only, no mistake in transmission is intended to waive or compromise such
privilege. Please advise the sender if you receive this e-mail by mistake.

#19488 From: "Moore, Paul" <Paul.Moore@...>
Date: Wed Apr 4, 2001 9:05 am
Subject: RE: How can I preserve old filetype?
Paul.Moore@...
Send Email Send Email
 
From: Benji Fisher [mailto:benji@...]
>       Wouldn't it be easier to use :global?
>
> let n = (a:n < line("$") ? a:n : line("$"))
> execute "1," . n . "g/^/call CheckBehaviorLine(getline('.'))"
> execute (line("$")-n+1) . ",$g/^/call CheckBehaviorLine(getline('.'))"
>
> (untested)  You could probably speed things up by using a
> more interesting pattern after "g/".  I think my version and
> yours both have the problem  that a modeline can be executed
> twice (in a short file) if it is near both the beginning and
> the end.

That's a good idea. And yes, by including the string we're looking for in
the g// command will speed it up. But while your version (as it stands -
it's not difficult to fix) does run the line twice in short files, mine
doesn't. I know it doesn't, because it did, and then I fixed it :-)

> >     if res == ""
> >         return
> >     endif
>
>       You do not really need this test.

True. It was there before I thought of substitute() for the word splitting.
My previous code needed it...

Paul.

#19489 From: Michael Piefel <piefel@...>
Date: Wed Apr 4, 2001 12:51 pm
Subject: Plugin for PO-Files
piefel@...
Send Email Send Email
 
Hello all,

I've written a simple PO mode for Vim. PO files, if you don't know it,
are a message catalog file format for gettext used for localising
software. Vim already has a nice syntax highlighting mode.

But the Emacs mode is much more powerful. I've now implemented a little
menu for certain things a PO writer might like. I'd appreciate all
comments for this, please have a look at it if you find the time.

Cheers,
     Mike

--
|=| Michael Piefel                    piefel@...
|=| Humboldt-Universität zu Berlin              http://www.piefel.de
|=| Tel. (+49 30) 2093 3831
" VIM filetype plugin
" Language: PO-files (message catalogs for gettext)
" Maintainer: Michael Piefel <piefel@...>
" Last Change: 4 April 2001

if exists("g:did_po_ftplugin")
     finish
endif

" Don't load another plugin (this is global)
let g:did_po_ftplugin = 1

" This function removes the quotes in a translation entry.
" It also joins lines which are split because the PO file is supposed to only
" have a tw of 80 (Emacs?), but where the contents of the line is shorter than
" 80 characters.
function s:Unstringify()
     let l:reportsave=&report
     set report=65535
     if search('^msgstr ""$', "b") > 0
	 let l:anfang = line(".")+1
	 if search('^$') > 0
	     let l:ende = line(".")
	     execute l:ende . "," . l:ende . 's/^$/###---end of entry---###/'
	     execute l:anfang . "," . l:ende . 's/^"//'
	     execute l:anfang . "," . l:ende . 's/\\n"$//e'
	     execute l:anfang . "," . l:ende . 's/ "\n/ /e'
	 endif
     endif
     let &report=l:reportsave
endfunction

" This adds quotes around an entry.
" It also adds the \n characters. It doesn't split lines which are too long,
" because there's really no need for that.
function s:Stringify()
     let l:reportsave=&report
     set report=65535
     if search('^msgstr ""$', "b") > 0
	 let l:anfang = line(".")+1
	 if search('^###---end of entry---###$') > 0
	     let l:ende = line(".")-1
	     execute (l:ende+1) . "," . (l:ende+1) . 's/###---end of entry---###//'
	     execute l:anfang . "," . l:ende . 's/^\(.*\)$/"\1\\n"/'
	 endif
     endif
     let &report=l:reportsave
endfunction

" This opens the file under the cursor
" In PO files, there are comments like src/hallo.c:45 to point to the spot the
" string is defined. This routine extracts the name and the line number,
" splits the window and positions the cursor.
function s:OpenFile()
     let l:currline=line(".")
     if search(" ", 'b') != l:currline
	 return
     else
	 let l:anfang=col(".")
     endif

     if search(":") != l:currline
	 return
     else
	 let l:mitte=col(".")
     endif

     if search(" ") != l:currline
	 let l:ende=strlen(getline(l:currline))+1
     else
	 let l:ende=col(".")
     end

     let l:datei=strpart(getline(l:currline), l:anfang, l:mitte-l:anfang-1)
     let l:line=strpart(getline(l:currline), l:mitte, l:ende-l:mitte-1)

     if matchend(getcwd(), '/po$') == strlen(getcwd())
	 let l:dirpre="../"
     else
	 let l:dirpre=""
     endif
     exec("silent sp +" . l:line . " " . l:dirpre . l:datei )
endfunction

function s:MakeMenu()
     amenu &PO-Editing.&Remove\ quotes  :call <SID>Unstringify()<CR>
     amenu PO-Editing.&Add\ quotes  :call <SID>Stringify()<CR>
     amenu PO-Editing.Jump\ to\ &File<TAB>Enter :call <SID>OpenFile()<CR>
     amenu PO-Editing.Unfu&zzy 	 :?fuzzy? s/, fuzzy//<CR>
     menu PO-Editing.-sep- 	 <nul>
     amenu PO-Editing.&Next\ entry  :normal /\(fuzzy\)\\|\(""\n\n\) <CR>
     amenu PO-Editing.Next\ &fuzzy  :normal /fuzzy <CR>
     amenu PO-Editing.Next\ &untranslated :normal /""\n\n <CR>
endfunction

augroup poMenu
au BufEnter * if &filetype == "po" | call <SID>MakeMenu() | setlocal tw=79 |
endif
au BufLeave * if &filetype == "po" | aunmenu PO-Editing | endif
augroup END

nnoremap <buffer> <CR>     :call <SID>OpenFile()<CR>

#19490 From: Oliver Brandt <oliver.brandt@...>
Date: Wed Apr 4, 2001 1:01 pm
Subject: Re: Error-Window
oliver.brandt@...
Send Email Send Email
 
Didn't get any response, so here it is again:

Oliver Brandt schrieb:
>
> Question: Is it possible that the error-window is
> automatically opened if a ":make" or ":grep"
> signals some errors and the error-window *is not*
> already open?
>
> Also it should be closed if a ":make" or ":grep"
> doesn't signals any errors and the error-window *is*
> already open.
>
> Think some kind of autocmd will do this, but doesn't
> get which to use :-(
>

Regards
Oliver

#19491 From: Bram Moolenaar <Bram@...>
Date: Wed Apr 4, 2001 4:13 pm
Subject: Re: Error-Window
Bram@...
Send Email Send Email
 
Oliver Brandt schrieb:
>
> Question: Is it possible that the error-window is
> automatically opened if a ":make" or ":grep"
> signals some errors and the error-window *is not*
> already open?
>
> Also it should be closed if a ":make" or ":grep"
> doesn't signals any errors and the error-window *is*
> already open.
>
> Think some kind of autocmd will do this, but doesn't
> get which to use :-(

This is not possible directly with an option.

You could perhaps write a ":Make" command that does this.  The difficult part
is how to know if there are errors or not.  You probably want to restrict this
to recognized errors, which have a file name and line number.  However, there
could also be unrecognized errors, e.g., from the linker: "library xyz not
found".  You don't want to miss those.

--
hundred-and-one symptoms of being an internet addict:
8. You spend half of the plane trip with your laptop on your lap...and your
    child in the overhead compartment.

  ///  Bram Moolenaar -- Bram@... -- http://www.moolenaar.net  \\\
(((   Creator of Vim - http://www.vim.org -- ftp://ftp.vim.org/pub/vim   )))
  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///

#19492 From: "Ron Aaron" <raaron@...>
Date: Wed Apr 4, 2001 4:30 pm
Subject: Re: fold menu
raaron@...
Send Email Send Email
 
Bram Moolenaar <Bram@...> writes:
>Ron Aaron wrote:
>
>> I just noticed there's no fold menu.  Are there plans to add one?
>
>What would the Fold menu contain?  There are too many options and commands to
>put them all in a menu.

There are too many {editing,buffer,file,window} commands to have an
{'Edit','Buffers','File','Window'} menu, we shouldn't have one :-)

Just as the rest of the menus are intended to give a novice user an interface
which is familiar for the most common items, so too a fold menu should have
the most common, simplest uses:

	 Fold
		 Type
			 Manual
			 By indent
		 Range
		 Open fold
		 Close fold
		 Open all folds
		 Close all folds

Something like that, that's all.  Let people know such a feature *exists*,
which is completely unobvious at present.

Ron

#19493 From: Benji Fisher <fisherbb@...>
Date: Wed Apr 4, 2001 4:39 pm
Subject: Re: fold menu
fisherbb@...
Send Email Send Email
 
Ron Aaron wrote:
>
> Bram Moolenaar <Bram@...> writes:
> >Ron Aaron wrote:
> >
> >> I just noticed there's no fold menu.  Are there plans to add one?
> >
> >What would the Fold menu contain?  There are too many options and commands to
> >put them all in a menu.
>
> There are too many {editing,buffer,file,window} commands to have an
> {'Edit','Buffers','File','Window'} menu, we shouldn't have one :-)
>
> Just as the rest of the menus are intended to give a novice user an interface
> which is familiar for the most common items, so too a fold menu should have
> the most common, simplest uses:
>
>         Fold
>                 Type
>                         Manual
>                         By indent
>                 Range
>                 Open fold
>                 Close fold
>                 Open all folds
>                 Close all folds
>
> Something like that, that's all.  Let people know such a feature *exists*,
> which is completely unobvious at present.
>
> Ron

      The nice thing about menus is that they do not take up much room on
the screen.  We currently have an "Options..." item under the Edit menu,
and this does the same as :options.  This is good:  a lot of users are
used to finding a "Preferences" menu there.  It might not be a bad idea
to have a menu-based approach to the same list of options.  That is,
have a submenu above "Options..." that leads to further submenus with
the same structure as the sections of the :options window.  It would
probably not be as efficient as :options, but it might be more familiar
for many users, and this is not the sort of thing that people have to
fiddle with every day, so efficiency is not crucial.

      In fact, there are a lot of questions on the users' mailing list
that could be answered if people knew to browse through :options.  If
these users could find the options more easily through a menu, I would
not have to answer all those questions! ;)

					 --Benji Fisher

#19494 From: Pritesh Mistry <MPritesh@...>
Date: Wed Apr 4, 2001 5:18 pm
Subject: Jump to the first fold ahead
MPritesh@...
Send Email Send Email
 
Hello Folks,

Is it possible to achieve the following in any manner:

	 If on a closed fold,
		 'zo' would open that fold
	 else
		 'zo' would open the first closed fold ahead.

	 Do the same for open folds as well.

If not that, then:

	 Is there any way that one could jump straight to the
	 first closed or an open fold ahead, whatever one likes.

TIA,

#19495 From: "Martin [Keso] Keseg" <Martin.Keseg@...>
Date: Wed Apr 4, 2001 12:23 pm
Subject: Re: Vim crashes when help is invoked
Martin.Keseg@...
Send Email Send Email
 
Thomas Köhler (jean-luc@...) wrote :

> Hi,
>
> On Mon, Apr 02, 2001 at 02:00:47PM -0700,
> Yegappan Lakshmanan <yega@...> wrote:
> >
> > Hi,
> >
> > If I run Vim built on SunOS 5.6 on SunOS 5.5.1 and invoke help
> > then I am getting the following exception:
> >
> > ld.so.1: /usr/local/packages/vim/vim-5.7/bin/vim: fatal: relocation
> > error: file /usr/local/packages/vim/vim-5.7/bin/vim: symbol
> > fseeko: referenced symbol not found
> > Killed
> >
> > I am getting around this problem, by building Vim on SunOS 5.5.1.
> > I am able to use this version on both Vim 5.6 and 5.5.1 without
> > any problems.
>
> That's why you should never run a binary built for Solaris Version X on
> a Solaris Version Y system (and usually not even vice versa): The
> libraries may be screwed up and unusuable.
>
> In this particular case, you've built vim on SunOS 5.6, and one of the
> libraries used on that system tells vim to use fseeko (a library
> routine, or a global variable, or something similar), but on the SunOS
> 5.5.1 system, that item is not available yet and thus can't be used.
>
> Solution? Usually: Recompile for every platform. Once for SunOS 5.6,
> once for SunOS 5.5.1. Everything else is beging for trouble :-/
>

yes, Thomas is right, Solaris is not binary compatible from new version to old
one, it's true if you run vim compiled on SunOS 5.5.1 on Solaris 2.6 (SunOS 2.6)


--
                                    Keso
                            You point, I punch!
                           No words, just swords!

#19496 From: Dan Sharp <vimuser@...>
Date: Wed Apr 4, 2001 6:16 pm
Subject: Re: fold menu
vimuser@...
Send Email Send Email
 
At 12:39 PM 4/4/01 -0400, Benji Fisher wrote:
>      The nice thing about menus is that they do not take up much room on
>the screen.  We currently have an "Options..." item under the Edit menu,
>and this does the same as :options.  This is good:  a lot of users are
>used to finding a "Preferences" menu there.  It might not be a bad idea
>to have a menu-based approach to the same list of options.  That is,
>have a submenu above "Options..." that leads to further submenus with
>the same structure as the sections of the :options window.  It would
>probably not be as efficient as :options, but it might be more familiar
>for many users, and this is not the sort of thing that people have to
>fiddle with every day, so efficiency is not crucial.

This is the idea behind the "Edit\Settings" menu items.  Granted, I think
it is redundant to have an Options item followed by a Settings item, so see
if this patch works better.  It combines Edit\Options and Edit\Settings
into one set of menus.  The first item calls :options, and the other items
are the items from the Settings submenu.

Dan Sharp
*** menu.vim.bak Mon Apr  2 15:59:15 2001
--- menu.vim Wed Apr  4 14:10:35 2001
***************
*** 3,9 ****
   " Note that ":amenu" is often used to make a menu work in all modes.
   "
   " Maintainer: Bram Moolenaar <Bram@...>
! " Last Change: Mon, 02 Apr 2001 15:59:14 Eastern Daylight Time

   " Make sure the '<' and 'C' flags are not included in 'cpoptions', otherwise
   " <CR> would not be recognized.  See ":help 'cpoptions'".
--- 3,9 ----
   " Note that ":amenu" is often used to make a menu work in all modes.
   "
   " Maintainer: Bram Moolenaar <Bram@...>
! " Last Change: Wed, 04 Apr 2001 14:10:34 Eastern Daylight Time

   " Make sure the '<' and 'C' flags are not included in 'cpoptions', otherwise
   " <CR> would not be recognized.  See ":help 'cpoptions'".
***************
*** 147,153 ****
     vmenu        &Edit.Find\ and\ Rep&lace<Tab>:s  :s/
   endif
   amenu 20.425 &Edit.-SEP3- 	 :
! amenu 20.430 &Edit.Options\.\.\.  :options<CR>

   " Programming menu
   amenu 40.300 &Tools.&Jump\ to\ this\ tag<Tab>g^] g<C-]>
--- 147,188 ----
     vmenu        &Edit.Find\ and\ Rep&lace<Tab>:s  :s/
   endif
   amenu 20.425 &Edit.-SEP3- 	 :
! amenu 20.430 &Edit.Options.Edit\ All\ Options\.\.\.<TAB>:options :options<CR>
!
! fun <SID>ToggleGuiOption(option)
!     " If a:option is already set in guioptions, then we want to remove it
!     if match( &guioptions, a:option ) > -1
!  exec "set guioptions-=" . a:option
!     else
!  exec "set guioptions+=" . a:option
!     endif
! endfun
!
! amenu 20.435 &Edit.Options.-SEP1-     :
!
! " Build boolean options
! amenu 20.440 &Edit.Options.Toggle\ Line\ Numbering<TAB>:set\ number! :set
number!<CR>
! amenu 20.450 &Edit.Options.Toggle\ Line\ Wrap<TAB>:set\ wrap!  :set wrap!<CR>
! amenu 20.460 &Edit.Options.Toggle\ hlsearch<TAB>:set\ hlsearch! :set
hlsearch!<CR>
! amenu 20.470 &Edit.Options.Toggle\ expandtab<TAB>:set\ expandtab! :set
expandtab!<CR>
!
! " Build GUI options
! amenu 20.475 &Edit.Options.-SEP2-     :
! amenu 20.480 &Edit.Options.Toggle\ Toolbar  :call
<SID>ToggleGuiOption("T")<CR>
! amenu 20.490 &Edit.Options.Toggle\ Bottom\ Scrollbar :call
<SID>ToggleGuiOption("b")<CR>
! amenu 20.500 &Edit.Options.Toggle\ Left\ Scrollbar :call
<SID>ToggleGuiOption("l")<CR>
! amenu 20.510 &Edit.Options.Toggle\ Right\ Scrolbar :call
<SID>ToggleGuiOption("r")<CR>
!
! " Build variable options
! amenu 20.515 &Edit.Options.-SEP3-     :
! amenu 20.520 &Edit.Options.Shiftwidth.2   :set shiftwidth=2<CR>
! amenu 20.530 &Edit.Options.Shiftwidth.3   :set shiftwidth=3<CR>
! amenu 20.540 &Edit.Options.Shiftwidth.4   :set shiftwidth=4<CR>
! amenu 20.550 &Edit.Options.Shiftwidth.5   :set shiftwidth=5<CR>
! amenu 20.560 &Edit.Options.Shiftwidth.6   :set shiftwidth=6<CR>
! amenu 20.570 &Edit.Options.Shiftwidth.8   :set shiftwidth=8<CR>
! amenu 20.580 &Edit.Options.Text\ Width    :let &tw=
! 	 \ input("Enter new text width (0 to disable formatting): ")<CR>

   " Programming menu
   amenu 40.300 &Tools.&Jump\ to\ this\ tag<Tab>g^] g<C-]>

#19497 From: Bram Moolenaar <Bram@...>
Date: Wed Apr 4, 2001 7:20 pm
Subject: And now for something completely different: Vim 6.0aa
Bram@...
Send Email Send Email
 
It's....  vimdiff!

This is a nice way to edit two or three different versions of a file.
Changed lines are highlighted.  A change within a line is highlighted
differently, so that you can spot an inserted word, for example.  Deleted
lines are highlighted in one window and filled up in the other window, so that
scroll-binding makes it possible to put the windows side-by-side and compare
the text.  Folding is used to hide the text that has no changes.

It's still new, there could be a few problems.  The colors are ugly...
To get started, try this command:

	 vim -d file.orig file

See ":help diff.txt".  Note that this requires the "diff" program.  It's
standard on Unix, for other systems you will have to find it somewhere.
Likewise, the "patch" program is required for ":diffpatch".


Major changes
-------------

Added diff mode:
- Added the vimdiff command to start diff mode on a few files.
- Added the vimdiff manpage.
- Added the ":diffsplit" command to start diff mode with the current file and
   another file.
- Added the ":diffpatch" command to start diff mode with the current file and
   a patch file.
- The 'diff' option switches diff mode on in a window.
- The ":diffupdate" refreshes the diffs.
- The 'scrollbind' option recognizes windows that have 'diff' set and binds
   them based on the changes in the files.
- The 'diffopt' option changes how diffs are displayed.
- The 'diffexpr' option can be set to create a diff with an expression.
- The 'patchexpr' option can be set to patch a file with an expression.
- Added the "diff" folding method.
- Added the DiffAdd, DiffChange, DiffDelete and DiffText highlight groups to
   specify the highlighting for differences.  The defaults are ugly...
- Unix: make a vimdiff symbolic link for "make install".

Included the QNX port.  Supports the Photon GUI, mouse, etc. (Julian Kinraid)

Unix: Included support for the "SJIS" locale, with "shift-jis" and "cp932" as
aliases.

GUI: Added a Toolbar for Athena. (David Harrison)

Unix: Use the X clipboard in any terminal, not just in an xterm.

The source archive was over the 1.4M floppy limit.  Now also provide bzip2
compressed versions of the sources and runtime archives.


Other changes
-------------

Renamed the variables used for the 'charconvert' option from
"v:charconvert_in" to "v:fname_in" and "v:charconvert_out" to "v:fname_out".

When typing CTRL-D in Insert mode, just after an autoindent, then hitting CR
kept the remaining white space.  Now made it work like BS: delete the
autoindent to avoid a blank non-empty line results.

Moved a few more common items from gui_w32.c and gui_w16.c to gui_w48.c.
(Vince Negri)

language mapping:
- Use a different mouse cursor for when ":lmap" mappings are active.  Can
   specify two highlight groups for an item in 'guicursor'.  By default
   "lCursor" and "Cursor" are equal, the user must set a color he likes.
- Show "(lang)" for 'showmode' when language mapping is enabled.
- When starting to edit a new buffer, copy the langmap state.  Avoids that
   language mappings suddenly stop working.
- UTF-8: Made "r" work with a ":lmap" that includes a composing character.
   Also works for "f", which now works to find a character that includes a
   composing character.
- Moved the 'keymap' code from mbyte.c to digraph.c.  It doesn't depend on the
   multibyte code, it's more like inputting characters in a special way.

Added a few messages for when 'verbose' is non-zero to show what happens when
trying to connect to the X server.  Should help when trying to find out why
startup is slow.

Added the 'cscopepathcomp' option. (Scott Hauck)

Made CTRL-X CTRL-L in Insert mode use the 'complete' option.  It now also
scans other loaded buffers for matching lines.

Made ":syntax keyword" work with multi-byte characters.

When available, call bind_textdomain_codeset() to have gettext() translate
messages to 'encoding'.  This requires GNU gettext 0.10.36.  But it doesn't
work...


Fixes
-----

Win32: Cygwin doesn't have the ACL items.  Don't use the "advapi" items
when HAVE_ACL isn't defined.

When resetting 'previewwindow' a bogus error message would appear.

Motif GUI:
- When changing the menu font to a different height the Vim window needed
   resizing. (David Harrison)
- ":hi menu font=name" crashed Vim in some situations.  Was freeing a font
   twice.  (David Harrison)
- ":hi menu font=k12,r12" causes a crash, using a fontset for the menu didn't
   work.
- UTF-8: "/a<BS>A" where a is lang mapped to a character with a composing char
   caused the composing char to appear on A.  Now NUL-terminate the command
   line to avoid a composing char beyond the end to be included.

In the console pasting with the mouse on the command line ('mouse' includes
'c' or 'a') pasted the last used register instead of the selection/clipboard.
Use the "* register when the clipboard is working.

A ":normal" command would reset the 'scrollbind' info.  Causes problems when
using a ":normal" command in an autocommand for opening a file.

When using CTRL-W = and two vertically split windows could become the same
width the current window would get two extra columns.

When the termcap query from the xterm returns a different number of colors,
reset the highlighting to be able to use "LightRed" and "LightBlue".

Windows GUI: a point size with a dot, like "7.5", wasn't recognized. (Muraoka
Taro)

When 'scrollbind' wasn't set would still remember the current position,
wasting time.

Folding:
- When a fold ends in "}}}1", deleting the "{{{" that starts it didn't remove
   the fold.
- When closing folds with a Visual selection, and 'foldminlines' prevents the
   folds from actually being closed, the Visual highlighting wasn't removed.
- Folding a line with multi-byte text caused trouble.  Redid the fold_line()
   function.
- "zC" didn't close all folds recursively, just the top one.

GTK: Crash when 'shell' doesn't exist and doing":!ls".  Use _exit() instead of
exit() when the child couldn't execute the shell.

Multi-byte:
- UTF-8: non-Visual selection could add random composing characters.
- GUI with double-byte encoding: a mouse click in left halve of double-wide
   character put the cursor in previous char.
- Using double-byte encoding and 'selection' is "exclusive": "vey" and "^Vey"
   included the character after the word.
- When using a double-byte encoding and there is a lead byte at the end of the
   line, the preceding line would be displayed.  "ga" also showed wrong info.

GUI: The cursor was sometimes not removed when scrolling.  Changed the policy
from redrawing the cursor after each call to gui_write() to only update it at
the end of update_screen() or when setting the cursor position.  Also only
update the scrollbars at the end of update_screen(), that's the only place
where the window text may have been scrolled.

When 'virtualedit' is used, "~" didn't work correctly in Visual mode.  Set
coladd to zero in inc().  May also fix other problems.  (Chase Tingley)
When 'virtualedit' is "block" ^Vey doesn't include the last char when it's
double-width.

Formatting "/*<Tab>long text", produced "* <Tab>" in the next line.  Now
remove the space before the Tab.
Formatting "/*<Tab>  long text", produced "* <Tab> long text" in the next
line.  Now keep the space after the Tab.

In some places non-ASCII alphabetical characters were accepted, which could
cause problems.  For example, ":X" (X being such a character).

When a pattern matches the end of the line, the last character in the line was
highlighted for 'hlsearch'.  That looks wrong for "/\%3c".  Now highlight the
character just after the line.


Epilogue
--------

WARNING: This is really an unstable version.  Many things have been added
without proper testing.  It does crash.  It may destroy your work.  New
features may change incompatibly in the next version.

This version is for developers, thus it comes as source code only.
If you run into something that doesn't work, please try to figure out why,
try to solve it and send me a patch.  If you can't do that, at least send me
precise information to save me time.

More info about the new 6.0 features with ":help version6".

If you don't like the syntax of a command, the name of an option or how the
new features work, let's discuss this in the vim-dev maillist.

Lots of things are not working yet.  Check ":help todo" for known items.

I NEED YOUR HELP: There is still a lot of work to be done.  If I have to do it
all by myself it will take a very long time until Vim.6.0 is ready.  Please
give a hand by implementing one of the items in the todo list.


You can find Vim 6.0 here: ftp://ftp.vim.org/pub/vim/unreleased/

unix/vim-6.0aa-rt.tar.gz runtime files
unix/vim-6.0aa-rt.tar.bz2 same, compressed with bzip2
unix/vim-6.0aa-src.tar.gz sources
unix/vim-6.0aa-src.tar.bz2 same, compressed with bzip2

extra/vim-6.0aa-extra.tar.gz extra files
extra/vim-6.0aa-lang.tar.gz multi-language files

Happy Vimming!

--
hundred-and-one symptoms of being an internet addict:
11. You find yourself typing "com" after every period when using a word
     processor.com

  ///  Bram Moolenaar -- Bram@... -- http://www.moolenaar.net  \\\
(((   Creator of Vim - http://www.vim.org -- ftp://ftp.vim.org/pub/vim   )))
  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///

#19498 From: "Ron Aaron" <raaron@...>
Date: Wed Apr 4, 2001 7:45 pm
Subject: 6.0aa compile error (Linux)
raaron@...
Send Email Send Email
 
Bram Moolenaar <Bram@...> writes:
>It's....  vimdiff!
>
Excellent!

One problem:

	 configure --with-features=big --without-gnome
	 make

	 ...
		 move.c:35: conflicting types for 'loff_t'
		 /usr/include/sys/types.h:42: previous declaration of 'loff_t'

This is on Mandrake (Linux) 7.2

#19499 From: "Ron Aaron" <raaron@...>
Date: Wed Apr 4, 2001 8:07 pm
Subject: Vim60aa - problem with guicursor on GTK
raaron@...
Send Email Send Email
 
I have my guicursor set to:

n-v-c:block-Cursor,ve:ver35-Cursor,o:hor50-Cursor,i-ci:ver25-Cursor,r-cr:hor20-C\
ursor,sm:block-Cursor,a:blinkon0

and it was working up until 60aa.  Now it does very strange things (the cursor
disappears, for instance, in insert mode).

--
Ron Aaron                                       Moss Bay Engineering
425-649-8817                              Precision Crafted Software
http://www.mossbayeng.com/~ron/ronsresume.html

"If you have acquired knowledge, what do you lack?
     If you lack knowledge, what have you acquired?"
Lev. R. 1:6

#19500 From: Bram Moolenaar <Bram@...>
Date: Wed Apr 4, 2001 8:10 pm
Subject: Re: 6.0aa compile error (Linux)
Bram@...
Send Email Send Email
 
Ron Aaron wrote:

> One problem:
>
>  configure --with-features=big --without-gnome
>  make
>
>  ...
> 	 move.c:35: conflicting types for 'loff_t'
> 	 /usr/include/sys/types.h:42: previous declaration of 'loff_t'

Hmm, what else could we use then?  lino_t? :-)

Perhaps "lineoff_t".  It's a bit longer, but also clearer.


(for those who don't get it, "linotype" is a company).

--
hundred-and-one symptoms of being an internet addict:
12. You turn off your modem and get this awful empty feeling, like you just
     pulled the plug on a loved one.

  ///  Bram Moolenaar -- Bram@... -- http://www.moolenaar.net  \\\
(((   Creator of Vim - http://www.vim.org -- ftp://ftp.vim.org/pub/vim   )))
  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///

Messages 19471 - 19500 of 70038   Oldest  |  < Older  |  Newer >  |  Newest
Add to My Yahoo!      XML What's This?

Copyright © 2010 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines NEW - Help