On Mon, Dec 21, 2015 at 9:44 PM, Bram Moolenaar <[email protected]> wrote:
>
> Since Vim is very stable, it does not happen often that a new version is
> released.  Mostly it's fine to run an older version. Unless you run into
> a bug there is no pressing reason to update.  With the result that many
> users keep using the last official release, since that's just easier.
>
> What does change between releases is the set of runtime files.  These
> are updated more frequently, and often this is a more important reason
> to update than getting all the patches.  We often see people complaining
> about a syntax highlighting error that was already fixed.
>
> There are various ways in which users can get an updated version,
> including package managers or getting the latest with git and building
> yourself.  For at least some people using git to get the latest version
> is fine, but there is a large group of users, especially on MS-Windows
> and Mac, for who this is not so easy.  For this group of users I'm
> thinking of the following solution.
>
> Include a plugin with Vim that provides the command:
>
>         :RuntimeUpdate
>
> This will get the latest files from github and put them under
> $VIMRUNTIME.  The user can run this once in a while, e.g. when someone
> mentions it will solve the problem he experiences.
>
> How would this work?
>
> - Include a file $VIMRUNTIME/CONTENTS that lists all the files, with a
>   checksum or "DELETED".
> - The plugin computes the checksum for the local file, and if it differs
>   from the entry in CONTENTS it fetches the new file.  Github supports
>   direct raw access, e.g.:
>   https://raw.githubusercontent.com/vim/vim/master/runtime/syntax/vim.vim
> - If the file was deleted, delete it (duh).
> - If the $VIMRNTIME directory is not writable by the current user, put
>   the updates in a temp directory and generate a shell script to move
>   them into place.  The have one "sudo" command to do the work.
> - Rely on the netrw plugin to download the files.
>
>
> Some things that might cause problems:
> - If the line endings are changed from LF to CR-LF then the checksum
>   will always differ.  Perhaps we need two entries for each file, with
>   and without CR-LF?
> - I'm not sure how to put the files in place on MS-Windows if the
>   current user can't write in the $VIMRUNTIME directory.  Create a .bat
>   file perhaps?
> - If the user has local changes, they will be lost.  We probably don't
>   care. Files that the user adds are left alone, but they can get
>   overwritten.
>
> Comments are welcome.
>
>
> --
> CONCORDE: Message for you, sir.
>    He falls forward revealing the arrow with the note.
>                  "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
>
>  /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
> ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
> \\\  an exciting new programming language -- http://www.Zimbu.org        ///
>  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

IIUC (but maybe I don't), on Windows privilege elevation works
differently (no "sudo" or "su" commands available), and the shell
script language is different too. I suppose that at least two versions
of the script will be necessary:
- Unix-like (Linux; Mac OS X; Windows with Cygwin or MinGW)
- MS-DOS-like (Windows without Cygwin or MinGW)
I suppose Mac OS 9 or earlier (which IIRC was not Unix-like) is not
supported anymore? (by Vim I mean)
rsync would also work (if the rsync server which used to serve the
patches is still running), but I don't remember if it is available for
Windows installations without Unix-like tools.

Best regards,
Tony.

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui