diff --git a/7.3.080 b/7.3.080 new file mode 100644 index 0000000..6cf9f6d --- /dev/null +++ b/7.3.080 @@ -0,0 +1,205 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.080 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +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 -- Bram@Moolenaar.net -- 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 ///