Patch 7.3.080
Problem:    Spell doesn't work on VMS.
Solution:   Use different file names. (Zoltan Bartos, Zoltan Arpadffy)
Files:      src/spell.c


*** ../vim-7.3.079/src/spell.c  2010-12-08 13:11:15.000000000 +0100
--- src/spell.c 2010-12-08 17:01:13.000000000 +0100
***************
*** 327,332 ****
--- 327,342 ----
  typedef long idx_T;
  #endif
  
+ #ifdef VMS
+ # define SPL_FNAME_TMPL  "%s_%s.spl"
+ # define SPL_FNAME_ADD   "_add."
+ # define SPL_FNAME_ASCII "_ascii."
+ #else
+ # define SPL_FNAME_TMPL  "%s.%s.spl"
+ # define SPL_FNAME_ADD   ".add."
+ # define SPL_FNAME_ASCII ".ascii."
+ #endif
+ 
  /* Flags used for a word.  Only the lowest byte can be used, the region byte
   * comes above it. */
  #define WF_REGION   0x01      /* region byte follows */
***************
*** 2471,2484 ****
         * Find the first spell file for "lang" in 'runtimepath' and load it.
         */
        vim_snprintf((char *)fname_enc, sizeof(fname_enc) - 5,
!                                       "spell/%s.%s.spl", lang, spell_enc());
        r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &sl);
  
        if (r == FAIL && *sl.sl_lang != NUL)
        {
            /* Try loading the ASCII version. */
            vim_snprintf((char *)fname_enc, sizeof(fname_enc) - 5,
!                                                 "spell/%s.ascii.spl", lang);
            r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &sl);
  
  #ifdef FEAT_AUTOCMD
--- 2481,2504 ----
         * Find the first spell file for "lang" in 'runtimepath' and load it.
         */
        vim_snprintf((char *)fname_enc, sizeof(fname_enc) - 5,
! #ifdef VMS
!                                       "spell/%s_%s.spl",
! #else
!                                       "spell/%s.%s.spl",
! #endif
!                                                          lang, spell_enc());
        r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &sl);
  
        if (r == FAIL && *sl.sl_lang != NUL)
        {
            /* Try loading the ASCII version. */
            vim_snprintf((char *)fname_enc, sizeof(fname_enc) - 5,
! #ifdef VMS
!                                                 "spell/%s_ascii.spl",
! #else
!                                                 "spell/%s.ascii.spl",
! #endif
!                                                                       lang);
            r = do_in_runtimepath(fname_enc, FALSE, spell_load_cb, &sl);
  
  #ifdef FEAT_AUTOCMD
***************
*** 2496,2502 ****
  
      if (r == FAIL)
      {
!       smsg((char_u *)_("Warning: Cannot find word list \"%s.%s.spl\" or 
\"%s.ascii.spl\""),
                                                     lang, spell_enc(), lang);
      }
      else if (sl.sl_slang != NULL)
--- 2516,2527 ----
  
      if (r == FAIL)
      {
!       smsg((char_u *)
! #ifdef VMS
!       _("Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""),
! #else
!       _("Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""),
! #endif
                                                     lang, spell_enc(), lang);
      }
      else if (sl.sl_slang != NULL)
***************
*** 2530,2536 ****
  int_wordlist_spl(fname)
      char_u        *fname;
  {
!     vim_snprintf((char *)fname, MAXPATHL, "%s.%s.spl",
                                                  int_wordlist, spell_enc());
  }
  
--- 2555,2561 ----
  int_wordlist_spl(fname)
      char_u        *fname;
  {
!     vim_snprintf((char *)fname, MAXPATHL, SPL_FNAME_TMPL,
                                                  int_wordlist, spell_enc());
  }
  
***************
*** 2785,2792 ****
        if (lp->sl_fname == NULL)
            goto endFAIL;
  
!       /* Check for .add.spl. */
!       lp->sl_add = strstr((char *)gettail(fname), ".add.") != NULL;
      }
      else
        lp = old_lp;
--- 2810,2817 ----
        if (lp->sl_fname == NULL)
            goto endFAIL;
  
!       /* Check for .add.spl (_add.spl for VMS). */
!       lp->sl_add = strstr((char *)gettail(fname), SPL_FNAME_ADD) != NULL;
      }
      else
        lp = old_lp;
***************
*** 9109,9116 ****
            /* For ":mkspell path/vim" output file is "path/vim.latin1.spl". */
            innames = &fnames[0];
            incount = 1;
!           vim_snprintf((char *)wfname, sizeof(wfname), "%s.%s.spl", fnames[0],
!                            spin.si_ascii ? (char_u *)"ascii" : spell_enc());
        }
        else if (len > 4 && STRCMP(fnames[0] + len - 4, ".spl") == 0)
        {
--- 9134,9141 ----
            /* For ":mkspell path/vim" output file is "path/vim.latin1.spl". */
            innames = &fnames[0];
            incount = 1;
!           vim_snprintf((char *)wfname, sizeof(wfname), SPL_FNAME_TMPL,
!                 fnames[0], spin.si_ascii ? (char_u *)"ascii" : spell_enc());
        }
        else if (len > 4 && STRCMP(fnames[0] + len - 4, ".spl") == 0)
        {
***************
*** 9119,9133 ****
        }
        else
            /* Name should be language, make the file name from it. */
!           vim_snprintf((char *)wfname, sizeof(wfname), "%s.%s.spl", fnames[0],
!                            spin.si_ascii ? (char_u *)"ascii" : spell_enc());
  
        /* Check for .ascii.spl. */
!       if (strstr((char *)gettail(wfname), ".ascii.") != NULL)
            spin.si_ascii = TRUE;
  
        /* Check for .add.spl. */
!       if (strstr((char *)gettail(wfname), ".add.") != NULL)
            spin.si_add = TRUE;
      }
  
--- 9144,9158 ----
        }
        else
            /* Name should be language, make the file name from it. */
!           vim_snprintf((char *)wfname, sizeof(wfname), SPL_FNAME_TMPL,
!                 fnames[0], spin.si_ascii ? (char_u *)"ascii" : spell_enc());
  
        /* Check for .ascii.spl. */
!       if (strstr((char *)gettail(wfname), SPL_FNAME_ASCII) != NULL)
            spin.si_ascii = TRUE;
  
        /* Check for .add.spl. */
!       if (strstr((char *)gettail(wfname), SPL_FNAME_ADD) != NULL)
            spin.si_add = TRUE;
      }
  
*** ../vim-7.3.079/src/version.c        2010-12-08 14:54:58.000000000 +0100
--- src/version.c       2010-12-08 16:58:03.000000000 +0100
***************
*** 716,717 ****
--- 716,719 ----
  {   /* Add new patch number below this line */
+ /**/
+     80,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
5. You find yourself brainstorming for new subjects to search.

 /// 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    ///

-- 
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

Raspunde prin e-mail lui