-*change.txt* For Vim version 7.0aa. Last change: 2005 Jun 16
+*change.txt* For Vim version 7.0aa. Last change: 2005 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
Note that using ":sort" with ":global" doesn't sort the matching lines, it's
quite useless.
+The details about sorting depend on the library function used. There is no
+guarantee that sorting is "stable" or obeys the current locale. You will have
+to try it out.
+
vim:tw=78:ts=8:ft=help:norl:
-*eval.txt* For Vim version 7.0aa. Last change: 2005 Jun 20
+*eval.txt* For Vim version 7.0aa. Last change: 2005 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
{word} can be a badly spelled word followed by other text.
This allows for joining two words that were split. The
- suggestions then also include the following text.
+ suggestions also include the following text, thus you can
+ replace a line.
+
+ {word} may also be a good word. Similar words will then be
+ returned. {word} itself is also included, most likely as the
+ first entry, thus this can be used to check spelling.
The spelling information for the current window is used. The
- 'spell' option must be set and 'spelllang' is relevant.
+ 'spell' option must be set and the value of 'spelllang' is
+ used.
split({expr} [, {pattern} [, {keepempty}]]) *split()*
-*repeat.txt* For Vim version 7.0aa. Last change: 2005 Jun 16
+*repeat.txt* For Vim version 7.0aa. Last change: 2005 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
Delete breakpoint {nr}. Use |:breaklist| to see the number of
each breakpoint.
+:breakd[el] *
+ Delete all breakpoints.
+
:breakd[el] func [lnum] {name}
Delete a breakpoint in a function.
-*spell.txt* For Vim version 7.0aa. Last change: 2005 Jun 23
+*spell.txt* For Vim version 7.0aa. Last change: 2005 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
*:spellw* *:spellwrong*
:spellw[rong] {word} Add [word} as a wrong (bad) word to 'spellfile'.
-After adding a word to 'spellfile' its associated ".spl" file will
-automatically be updated. More details about the 'spellfile' format below
-|spell-wordlist-format|.
+After adding a word to 'spellfile' with the above commands its associated
+".spl" file will automatically be updated. If you edit 'spellfile' manually
+you need to use the |:mkspell| command. This sequence of commands mostly
+works well: >
+ :exe 'e ' . &spellfile
+< (make changes to the spell file) >
+ :mkspell! %
+
+More details about the 'spellfile' format below |spell-wordlist-format|.
Finding suggestions for bad words:
The table with word characters is stored in the main .spl file. Therefore it
matters what the current locale is when generating it! A .add.spl file does
-not contain a word table.
+not contain a word table though.
A word that starts with a digit is always ignored. That includes hex numbers
in the form 0xff and 0XFF.
:source_crnl repeat.txt /*:source_crnl*
:sp windows.txt /*:sp*
:spe spell.txt /*:spe*
+:spelld spell.txt /*:spelld*
+:spelldump spell.txt /*:spelldump*
:spellgood spell.txt /*:spellgood*
:spellw spell.txt /*:spellw*
:spellwrong spell.txt /*:spellwrong*
E749 eval.txt /*E749*
E75 vi_diff.txt /*E75*
E750 repeat.txt /*E750*
+E751 spell.txt /*E751*
E754 spell.txt /*E754*
E756 spell.txt /*E756*
E758 spell.txt /*E758*
spell-affix-vim spell.txt /*spell-affix-vim*
spell-dic-format spell.txt /*spell-dic-format*
spell-file-format spell.txt /*spell-file-format*
+spell-load spell.txt /*spell-load*
spell-mkspell spell.txt /*spell-mkspell*
spell-quickstart spell.txt /*spell-quickstart*
spell-syntax spell.txt /*spell-syntax*
- Add SPELLCHECKER, with support for many languages.
- Spell checking code todo's:
+ - Special handling of ' and -: define in the .aff file.
+ Aspell does this with "special".
+ - Support user function to make suggestions:
+ :set spellsuggest=MySuggest,fast
+ Also support a list with common mistakes?
+ - For "z?" a "replace all" mechanism would be welcome.
- Add hl groups to 'spelllang'?
:set spelllang=en_us,en-rare/SpellRare,en-math/SpellMath
More complicated: Regions with different languages? E.g. comments
-*version7.txt* For Vim version 7.0aa. Last change: 2005 Jun 21
+*version7.txt* For Vim version 7.0aa. Last change: 2005 Jun 25
VIM REFERENCE MANUAL by Bram Moolenaar
When running the tests and one of them fails to produce "test.out" the
following tests are still executed. This helps when running out of memory.
+When compiling with EXITFREE defined and the ccmalloc library it is possible
+to detect memory leaks. Some memory will always reported as leaked, such as
+allocated by X11 library functions and the memory allocated in alloc_cmdbuff()
+to store the ":quit" command.
+
==============================================================================
BUG FIXES *bug-fixes-7*
" Language: Lua script
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
" First Author: Max Ischenko <mfi 'at' ukr.net>
-" Last Change: 2005 Jun 09
+" Last Change: 2005 Jun 23
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
endif
let b:did_indent = 1
-" Only define the function once.
-if exists("*GetLuaIndent")
- finish
-endif
-
setlocal indentexpr=GetLuaIndent()
" To make Vim call GetLuaIndent() when it finds '\s*end' or '\s*until'
-" on the current line (else is default).
+" on the current line ('else' is default and includes 'elseif').
setlocal indentkeys+=0=end,0=until
setlocal autoindent
+" Only define the function once.
+if exists("*GetLuaIndent")
+ finish
+endif
+
function! GetLuaIndent()
" Find a non-blank line above the current line.
let lnum = prevnonblank(v:lnum - 1)
return 0
endif
- " Add a 'shiftwidth' after lines beginning with:
- " function, if, for, while, repeat, else, elseif, '{'
+ " Add a 'shiftwidth' after lines that start a block:
+ " 'function', 'if', 'for', 'while', 'repeat', 'else', 'elseif', '{'
let ind = indent(lnum)
let flag = 0
let prevline = getline(lnum)
- if prevline =~ '^\s*\%(if\>\|for\>\|while\>\|repeat\>\|else\>\|elseif\>\|do\>\)' || prevline =~ '{\s*$' || prevline =~ '\<function\>\s*\%(\k\|[.:]\)\{-}\s*('
+ if prevline =~ '^\s*\%(if\>\|for\>\|while\>\|repeat\>\|else\>\|elseif\>\|do\>\|then\>\)'
+ \ || prevline =~ '{\s*$' || prevline =~ '\<function\>\s*\%(\k\|[.:]\)\{-}\s*('
let ind = ind + &shiftwidth
let flag = 1
endif
" Subtract a 'shiftwidth' after lines ending with
- " 'end' when they begin with while, if, for, etc.
+ " 'end' when they begin with 'while', 'if', 'for', etc. too.
if flag == 1 && prevline =~ '\<end\>\|\<until\>'
let ind = ind - &shiftwidth
endif
}
}
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_last_insert()
+{
+ vim_free(last_insert);
+ last_insert = NULL;
+}
+#endif
+
/*
* Add character "c" to buffer "s". Escape the special meaning of K_SPECIAL
* and CSI. Handle multi-byte characters.
{
l = tv.vval.v_list;
if (tv.v_type != VAR_LIST || l == NULL)
+ {
EMSG(_(e_listreq));
+ clear_tv(&tv);
+ }
else
{
fi->fi_list = l;
forinfo_T *fi = (forinfo_T *)fi_void;
if (fi != NULL && fi->fi_list != NULL)
+ {
list_rem_watch(fi->fi_list, &fi->fi_lw);
+ list_unref(fi->fi_list);
+ }
vim_free(fi);
}
msgmore((long)count);
}
+static char_u *prevcmd = NULL; /* the previous command */
+
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_prev_shellcmd()
+{
+ vim_free(prevcmd);
+}
+#endif
+
/*
* Handle the ":!cmd" command. Also for ":r !cmd" and ":w !cmd"
* Bangs in the argument are replaced with the previously entered command.
char_u *arg = eap->arg; /* command */
linenr_T line1 = eap->line1; /* start of range */
linenr_T line2 = eap->line2; /* end of range */
- static char_u *prevcmd = NULL; /* the previous command */
char_u *newcmd = NULL; /* the new command */
int free_newcmd = FALSE; /* need to free() newcmd */
int ins_prevcmd;
}
#endif /* FEAT_VIMINFO */
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_old_sub()
+{
+ vim_free(old_sub);
+}
+#endif
+
#if (defined(FEAT_WINDOWS) && defined(FEAT_QUICKFIX)) || defined(PROTO)
/*
* Set up for a tagpreview.
struct debuggy *bp, *bpi;
int nr;
int todel = -1;
+ int del_all = FALSE;
int i;
linenr_T best_lnum = 0;
break;
}
}
+ else if (*eap->arg == '*')
+ {
+ todel = 0;
+ del_all = TRUE;
+ }
else
{
/* ":breakdel {func|file} [lnum] {name}" */
if (todel < 0)
EMSG2(_("E161: Breakpoint not found: %s"), eap->arg);
else
- {
- vim_free(BREAKP(todel).dbg_name);
- vim_free(BREAKP(todel).dbg_prog);
- --dbg_breakp.ga_len;
- if (todel < dbg_breakp.ga_len)
- mch_memmove(&BREAKP(todel), &BREAKP(todel + 1),
- (dbg_breakp.ga_len - todel) * sizeof(struct debuggy));
- ++debug_tick;
- }
+ while (dbg_breakp.ga_len > 0)
+ {
+ vim_free(BREAKP(todel).dbg_name);
+ vim_free(BREAKP(todel).dbg_prog);
+ --dbg_breakp.ga_len;
+ if (todel < dbg_breakp.ga_len)
+ mch_memmove(&BREAKP(todel), &BREAKP(todel + 1),
+ (dbg_breakp.ga_len - todel) * sizeof(struct debuggy));
+ ++debug_tick;
+ if (!del_all)
+ break;
+ }
}
/*
* Doing this here prevents an exception for a parsing error being
* discarded by throwing the interrupt exception later on.
*/
- if (!(eap->cstack->cs_flags[eap->cstack->cs_idx] & CSF_TRUE) &&
- dbg_check_skipped(eap))
+ if (!(eap->cstack->cs_flags[eap->cstack->cs_idx] & CSF_TRUE)
+ && dbg_check_skipped(eap))
(void)do_intthrow(eap->cstack);
--eap->cstack->cs_idx;
* ":return", or ":finish" before the finally clause. We must not
* discard it, unless an error or interrupt occurred afterwards.
*/
- if (did_emsg || got_int ||
- (cstack->cs_flags[idx] & CSF_FINALLY))
+ if (did_emsg || got_int || (cstack->cs_flags[idx] & CSF_FINALLY))
{
switch (cstack->cs_pending[idx])
{
* memory used to store it.
*/
if ((cstack->cs_flags[idx] & CSF_TRY)
- && (cstack->cs_flags[idx] & CSF_SILENT))
+ && (cstack->cs_flags[idx] & CSF_SILENT))
{
eslist_T *elem;
return OK;
}
+#if defined(FEAT_ARABIC) || defined(PROTO)
+static char_u *arshape_buf = NULL;
+
+# if defined(EXITFREE) || defined(PROTO)
+ void
+free_cmdline_buf()
+{
+ vim_free(arshape_buf);
+}
+# endif
+#endif
+
/*
* Draw part of the cmdline at the current cursor position. But draw stars
* when cmdline_star is TRUE.
#ifdef FEAT_ARABIC
if (p_arshape && !p_tbidi && enc_utf8 && len > 0)
{
- static char_u *buf;
static int buflen = 0;
char_u *p;
int j;
{
/* Re-allocate the buffer. We keep it around to avoid a lot of
* alloc()/free() calls. */
- vim_free(buf);
+ vim_free(arshape_buf);
buflen = len * 2;
- buf = alloc(buflen);
- if (buf == NULL)
+ arshape_buf = alloc(buflen);
+ if (arshape_buf == NULL)
return; /* out of memory */
}
u8c = arabic_shape(u8c, NULL, &u8c_c1, pc, pc1, nc);
- newlen += (*mb_char2bytes)(u8c, buf + newlen);
+ newlen += (*mb_char2bytes)(u8c, arshape_buf + newlen);
if (u8c_c1 != 0)
{
- newlen += (*mb_char2bytes)(u8c_c1, buf + newlen);
+ newlen += (*mb_char2bytes)(u8c_c1, arshape_buf + newlen);
if (u8c_c2 != 0)
- newlen += (*mb_char2bytes)(u8c_c2, buf + newlen);
+ newlen += (*mb_char2bytes)(u8c_c2,
+ arshape_buf + newlen);
}
}
else
{
prev_c = u8c;
- mch_memmove(buf + newlen, p, mb_l);
+ mch_memmove(arshape_buf + newlen, p, mb_l);
newlen += mb_l;
}
}
- msg_outtrans_len(buf, newlen);
+ msg_outtrans_len(arshape_buf, newlen);
}
else
#endif
gui_argv[gui_argc] = NULL;
}
+#if defined(EXITFREE) || defined(PROTO)
+ void
+gui_mch_free_all()
+{
+ vim_free(gui_argv);
+}
+#endif
+
/*
* This should be maybe completely removed.
* Doesn't seem possible, since check_copy_area() relies on
#endif
int n_commands = 0; /* no. of commands from + or -c */
char_u *commands[MAX_ARG_CMDS]; /* commands from + or -c option */
+ char_u cmds_tofree[MAX_ARG_CMDS]; /* commands that need free() */
#ifdef FEAT_PRECOMMANDS
int p_commands = 0; /* no. of commands from --cmd */
char_u *pre_commands[MAX_ARG_CMDS]; /* commands from --cmd option */
TIME_MSG("GUI prepared");
#endif
+ vim_memset(cmds_tofree, 0, sizeof(cmds_tofree));
+
/* Init the table of Normal mode commands. */
init_normal_cmds();
if (p == NULL)
mch_exit(2);
sprintf((char *)p, "so %s", a);
+ cmds_tofree[n_commands] = TRUE;
commands[n_commands++] = p;
}
else
current_SID = SID_CARG;
#endif
for (i = 0; i < n_commands; ++i)
+ {
do_cmdline_cmd(commands[i]);
+ if (cmds_tofree[i])
+ vim_free(commands[i]);
+ }
sourcing_name = NULL;
#ifdef FEAT_EVAL
current_SID = 0;
}
}
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_homedir()
+{
+ vim_free(homedir);
+}
+#endif
+
/*
* Expand environment variable with path name.
* "~/" is also expanded, using $HOME. For Unix "~user/" is expanded.
# include <fcntl.h> /* for chdir() */
#endif
+static char_u *username = NULL; /* cached result of mch_get_user_name() */
+
+static char_u *ff_expand_buffer = NULL; /* used for expanding filenames */
+
#if defined(FEAT_VIRTUALEDIT) || defined(PROTO)
static int coladvance2 __ARGS((pos_T *pos, int addspaces, int finetune, colnr_T wcol));
}
#if defined(EXITFREE) || defined(PROTO)
+
+# if defined(FEAT_SEARCHPATH)
+static void free_findfile __ARGS((void));
+# endif
+
/*
* Free everything that we allocated.
* Can be used to detect memory leaks, e.g., with ccmalloc.
- * Doesn't do nearly all that is required...
+ * NOTE: This is tricky! Things are freed that functions depend on. Don't be
+ * surprised if Vim crashes...
+ * Some things can't be freed, esp. things local to a library function.
*/
void
free_all_mem()
{
buf_T *buf, *nextbuf;
+ static int entered = FALSE;
+
+ /* When we cause a crash here it is caught and Vim tries to exit cleanly.
+ * Don't try freeing everything again. */
+ if (entered)
+ return;
+ entered = TRUE;
++autocmd_block; /* don't want to trigger autocommands here */
spell_free_all();
# endif
-#if defined(FEAT_USR_CMDS)
+# if defined(FEAT_USR_CMDS)
/* Clear user commands (before deleting buffers). */
ex_comclear(NULL);
-#endif
+# endif
# ifdef FEAT_MENU
/* Clear menus. */
do_cmdline_cmd((char_u *)"aunmenu *");
# endif
- /* Clear mappings and abbreviations. */
+ /* Clear mappings, abbreviations, breakpoints. */
do_cmdline_cmd((char_u *)"mapclear");
do_cmdline_cmd((char_u *)"mapclear!");
do_cmdline_cmd((char_u *)"abclear");
+# if defined(FEAT_EVAL)
+ do_cmdline_cmd((char_u *)"breakdel *");
+# endif
+
+# ifdef FEAT_TITLE
+ free_titles();
+# endif
+# if defined(FEAT_SEARCHPATH)
+ free_findfile();
+# endif
/* Obviously named calls. */
# if defined(FEAT_EVAL)
free_all_autocmds();
# endif
clear_termcodes();
+ free_all_options();
+ free_all_marks();
+ alist_clear(&global_alist);
+ free_homedir();
+ free_search_patterns();
+ free_old_sub();
+ free_last_insert();
+ free_prev_shellcmd();
+ free_regexp_stuff();
+ free_tag_stuff();
+ free_cd_dir();
+ set_expr_line(NULL);
+ diff_clear();
+
+ /* Free some global vars. */
+ vim_free(username);
+ vim_free(clip_exclude_prog);
+ vim_free(last_cmdline);
+ vim_free(new_last_cmdline);
+ vim_free(keep_msg);
+ vim_free(ff_expand_buffer);
/* Clear cmdline history. */
p_hi = 0;
init_history();
+#ifdef FEAT_QUICKFIX
+ qf_free_all();
+#endif
+
+ /* Close all script inputs. */
+ close_all_scripts();
+
+#if defined(FEAT_WINDOWS)
+ /* Destroy all windows. Must come before freeing buffers. */
+ win_free_all();
+#endif
+
/* Free all buffers. */
for (buf = firstbuf; buf != NULL; )
{
buf = firstbuf;
}
-#if defined(FEAT_WINDOWS)
- /* Destroy all windows. */
- win_free_all();
+#ifdef FEAT_ARABIC
+ free_cmdline_buf();
#endif
/* Clear registers. */
ResetRedobuff();
ResetRedobuff();
+#ifdef FEAT_CLIENTSERVER
+ vim_free(serverDelayedStartName);
+#endif
+
/* highlight info */
free_highlight();
eval_clear();
# endif
+ free_termoptions();
+
/* screenlines (can't display anything now!) */
free_screenlines();
#if defined(USE_XSMP)
xsmp_close();
#endif
+#ifdef FEAT_GUI_GTK
+ gui_mch_free_all();
+#endif
+ clear_hl_tables();
vim_free(IObuff);
vim_free(NameBuff);
char_u **ffsc_stopdirs_v;
#endif
int ffsc_need_dir;
-}ff_search_ctx_T;
-static ff_search_ctx_T *ff_search_ctx = NULL;
+} ff_search_ctx_T;
-/* used for expanding filenames */
-static char_u *ff_expand_buffer = NULL;
+static ff_search_ctx_T *ff_search_ctx = NULL;
/* locally needed functions */
#ifdef FEAT_PATH_EXTRA
ff_expand_buffer[len++] = *wc_part++;
}
ff_expand_buffer[len] = NUL;
- ff_search_ctx->ffsc_wc_path =
- vim_strsave(ff_expand_buffer);
+ ff_search_ctx->ffsc_wc_path = vim_strsave(ff_expand_buffer);
if (ff_search_ctx->ffsc_wc_path == NULL)
goto error_return;
vim_findfile_cleanup(ctx)
void *ctx;
{
- if (NULL == ctx)
+ if (ctx == NULL)
return;
ff_search_ctx = ctx;
* still wildcards left, push the directories for further
* search
*/
- for (i = ctx->ffs_filearray_cur; i < ctx->ffs_filearray_size;
- ++i)
+ for (i = ctx->ffs_filearray_cur;
+ i < ctx->ffs_filearray_size; ++i)
{
if (!mch_isdir(ctx->ffs_filearray[i]))
continue; /* not a directory */
*/
if (STRNCMP(ctx->ffs_wc_path, "**", 2) == 0)
{
- for (i = ctx->ffs_filearray_cur; i < ctx->ffs_filearray_size; ++i)
+ for (i = ctx->ffs_filearray_cur;
+ i < ctx->ffs_filearray_size; ++i)
{
if (fnamecmp(ctx->ffs_filearray[i], ctx->ffs_fix_path) == 0)
continue; /* don't repush same directory */
ff_stack_T *ctx;
{
/* check for NULL pointer, not to return an error to the user, but
- * to prevent a crash
- */
+ * to prevent a crash */
if (ctx != NULL)
{
ctx->ffs_prev = ff_search_ctx->ffsc_stack_ptr;
FALSE, rel_fname);
}
+static char_u *ff_file_to_find = NULL;
+static void *fdip_search_ctx = NULL;
+
+#if defined(EXITFREE)
+ static void
+free_findfile()
+{
+ vim_free(ff_file_to_find);
+ vim_findfile_cleanup(fdip_search_ctx);
+}
+#endif
+
/*
* Find the directory name "ptr[len]" in the path.
*
int need_dir; /* looking for directory name */
char_u *rel_fname; /* file name we are looking relative to. */
{
- static void *search_ctx = NULL;
static char_u *dir;
- static char_u *file_to_find = NULL;
static int did_findfile_init = FALSE;
char_u save_char;
char_u *file_name = NULL;
expand_env(ptr, NameBuff, MAXPATHL);
ptr[len] = save_char;
- vim_free(file_to_find);
- file_to_find = vim_strsave(NameBuff);
- if (file_to_find == NULL) /* out of memory */
+ vim_free(ff_file_to_find);
+ ff_file_to_find = vim_strsave(NameBuff);
+ if (ff_file_to_find == NULL) /* out of memory */
{
file_name = NULL;
goto theend;
}
}
- rel_to_curdir = (file_to_find[0] == '.'
- && (file_to_find[1] == NUL
- || vim_ispathsep(file_to_find[1])
- || (file_to_find[1] == '.'
- && (file_to_find[2] == NUL
- || vim_ispathsep(file_to_find[2])))));
- if (vim_isAbsName(file_to_find)
+ rel_to_curdir = (ff_file_to_find[0] == '.'
+ && (ff_file_to_find[1] == NUL
+ || vim_ispathsep(ff_file_to_find[1])
+ || (ff_file_to_find[1] == '.'
+ && (ff_file_to_find[2] == NUL
+ || vim_ispathsep(ff_file_to_find[2])))));
+ if (vim_isAbsName(ff_file_to_find)
/* "..", "../path", "." and "./path": don't use the path_option */
|| rel_to_curdir
#if defined(MSWIN) || defined(MSDOS) || defined(OS2)
/* handle "\tmp" as absolute path */
- || vim_ispathsep(file_to_find[0])
+ || vim_ispathsep(ff_file_to_find[0])
/* handle "c:name" as absulute path */
- || (file_to_find[0] != NUL && file_to_find[1] == ':')
+ || (ff_file_to_find[0] != NUL && ff_file_to_find[1] == ':')
#endif
#ifdef AMIGA
/* handle ":tmp" as absolute path */
- || file_to_find[0] == ':'
+ || ff_file_to_find[0] == ':'
#endif
)
{
int l;
int run;
- if (path_with_url(file_to_find))
+ if (path_with_url(ff_file_to_find))
{
- file_name = vim_strsave(file_to_find);
+ file_name = vim_strsave(ff_file_to_find);
goto theend;
}
* Otherwise or when this fails use the current directory. */
for (run = 1; run <= 2; ++run)
{
- l = (int)STRLEN(file_to_find);
+ l = (int)STRLEN(ff_file_to_find);
if (run == 1
&& rel_to_curdir
&& (options & FNAME_REL)
&& STRLEN(rel_fname) + l < MAXPATHL)
{
STRCPY(NameBuff, rel_fname);
- STRCPY(gettail(NameBuff), file_to_find);
+ STRCPY(gettail(NameBuff), ff_file_to_find);
l = (int)STRLEN(NameBuff);
}
else
{
- STRCPY(NameBuff, file_to_find);
+ STRCPY(NameBuff, ff_file_to_find);
run = 2;
}
if (first == TRUE)
{
/* vim_findfile_free_visited can handle a possible NULL pointer */
- vim_findfile_free_visited(search_ctx);
+ vim_findfile_free_visited(fdip_search_ctx);
dir = path_option;
did_findfile_init = FALSE;
}
if (did_findfile_init)
{
ff_search_ctx->ffsc_need_dir = need_dir;
- file_name = vim_findfile(search_ctx);
+ file_name = vim_findfile(fdip_search_ctx);
ff_search_ctx->ffsc_need_dir = FALSE;
if (file_name != NULL)
break;
{
/* We searched all paths of the option, now we can
* free the search context. */
- vim_findfile_cleanup(search_ctx);
- search_ctx = NULL;
+ vim_findfile_cleanup(fdip_search_ctx);
+ fdip_search_ctx = NULL;
break;
}
#else
r_ptr = NULL;
#endif
- search_ctx = vim_findfile_init(buf, file_to_find, r_ptr, 100,
- FALSE, TRUE, search_ctx, FALSE, rel_fname);
- if (search_ctx != NULL)
+ fdip_search_ctx = vim_findfile_init(buf, ff_file_to_find,
+ r_ptr, 100, FALSE, TRUE,
+ fdip_search_ctx, FALSE, rel_fname);
+ if (fdip_search_ctx != NULL)
did_findfile_init = TRUE;
vim_free(buf);
}
{
if (need_dir)
EMSG2(_("E344: Can't find directory \"%s\" in cdpath"),
- file_to_find);
+ ff_file_to_find);
else
EMSG2(_("E345: Can't find file \"%s\" in path"),
- file_to_find);
+ ff_file_to_find);
}
else
{
if (need_dir)
EMSG2(_("E346: No more directory \"%s\" found in cdpath"),
- file_to_find);
+ ff_file_to_find);
else
EMSG2(_("E347: No more file \"%s\" found in path"),
- file_to_find);
+ ff_file_to_find);
}
}
char_u *buf;
int len;
{
- static char_u *name = NULL;
-
- if (name == NULL)
+ if (username == NULL)
{
if (mch_get_user_name(buf, len) == FAIL)
return FAIL;
- name = vim_strsave(buf);
+ username = vim_strsave(buf);
}
else
- STRNCPY(buf, name, len);
+ STRNCPY(buf, username, len);
return OK;
}
options[findoption((char_u *)name)].def_val[VI_DEFAULT] = (char_u *)val;
}
+#if defined(EXITFREE) || defined(PROTO)
+/*
+ * Free all options.
+ */
+ void
+free_all_options()
+{
+ int i;
+
+ for (i = 0; !istermoption(&options[i]); i++)
+ {
+ if (options[i].indir == PV_NONE)
+ {
+ /* global option: free value and default value. */
+ if (options[i].flags & P_ALLOCED && options[i].var != NULL)
+ free_string_option(*(char_u **)options[i].var);
+ if (options[i].flags & P_DEF_ALLOCED)
+ free_string_option(options[i].def_val[VI_DEFAULT]);
+ }
+ else if (options[i].var != VAR_WIN
+ && (options[i].flags & P_STRING))
+ /* buffer-local option: free global value */
+ free_string_option(*(char_u **)options[i].var);
+ }
+}
+#endif
+
+
/*
* Initialize the options, part two: After getting Rows and Columns and
* setting 'term'.
void
clear_termoptions()
{
- struct vimoption *p;
-
/*
* Reset a few things before clearing the old options. This may cause
* outputting a few things that the terminal doesn't understand, but the
#endif
stoptermcap(); /* stop termcap mode */
+ free_termoptions();
+}
+
+ void
+free_termoptions()
+{
+ struct vimoption *p;
+
for (p = &options[0]; p->fullname != NULL; p++)
if (istermoption(p))
{
void
mch_free_mem()
{
-# if defined(HAVE_SIGALTSTACK) || defined(HAVE_SIGSTACK)
- vim_free(signal_stack);
+# if defined(FEAT_CLIPBOARD) && defined(FEAT_X11)
+ if (clip_star.owned)
+ clip_lose_selection(&clip_star);
+ if (clip_plus.owned)
+ clip_lose_selection(&clip_plus);
# endif
# if (defined(FEAT_X11) && defined(FEAT_XCLIPBOARD)) || defined(PROTO)
if (xterm_Shell != (Widget)0)
if (app_context != (XtAppContext)NULL)
XtDestroyApplicationContext(app_context);
# endif
+# ifdef FEAT_X11
+ if (x11_display != NULL && x11_display != xterm_dpy)
+ XCloseDisplay(x11_display);
+# endif
+# if defined(HAVE_SIGALTSTACK) || defined(HAVE_SIGSTACK)
+ vim_free(signal_stack);
+ signal_stack = NULL;
+# endif
+# ifdef FEAT_TITLE
+ vim_free(oldtitle);
+ vim_free(oldicon);
+# endif
}
#endif
void ex_diffthis __ARGS((exarg_T *eap));
void diff_win_options __ARGS((win_T *wp, int addbuf));
void ex_diffoff __ARGS((exarg_T *eap));
+void diff_clear __ARGS((void));
int diff_check __ARGS((win_T *wp, linenr_T lnum));
int diff_check_fill __ARGS((win_T *wp, linenr_T lnum));
void diff_set_topline __ARGS((win_T *fromwin, win_T *towin));
int comp_textwidth __ARGS((int ff));
int stop_arrow __ARGS((void));
void set_last_insert __ARGS((int c));
+void free_last_insert __ARGS((void));
char_u *add_char2buf __ARGS((int c, char_u *s));
void beginline __ARGS((int flags));
int oneright __ARGS((void));
void ex_retab __ARGS((exarg_T *eap));
int do_move __ARGS((linenr_T line1, linenr_T line2, linenr_T dest));
void ex_copy __ARGS((linenr_T line1, linenr_T line2, linenr_T n));
+void free_prev_shellcmd __ARGS((void));
void do_bang __ARGS((int addr_count, exarg_T *eap, int forceit, int do_in, int do_out));
void do_shell __ARGS((char_u *cmd, int flags));
char_u *make_filter_cmd __ARGS((char_u *cmd, char_u *itmp, char_u *otmp));
void global_exe __ARGS((char_u *cmd));
int read_viminfo_sub_string __ARGS((vir_T *virp, int force));
void write_viminfo_sub_string __ARGS((FILE *fp));
+void free_old_sub __ARGS((void));
void prepare_tagpreview __ARGS((void));
void ex_help __ARGS((exarg_T *eap));
char_u *check_help_lang __ARGS((char_u *arg));
void alist_slash_adjust __ARGS((void));
void ex_splitview __ARGS((exarg_T *eap));
void do_exedit __ARGS((exarg_T *eap, win_T *old_curwin));
+void free_cd_dir __ARGS((void));
void do_sleep __ARGS((long msec));
int vim_mkdir_emsg __ARGS((char_u *name, int prot));
FILE *open_exfile __ARGS((char_u *fname, int forceit, char *mode));
int cmdline_overstrike __ARGS((void));
int cmdline_at_end __ARGS((void));
colnr_T cmdline_getvcol_cursor __ARGS((void));
+void free_cmdline_buf __ARGS((void));
void putcmdline __ARGS((int c, int shift));
void unputcmdline __ARGS((void));
int put_on_cmdline __ARGS((char_u *str, int len, int redraw));
void save_typeahead __ARGS((tasave_T *tp));
void restore_typeahead __ARGS((tasave_T *tp));
void openscript __ARGS((char_u *name, int directly));
+void close_all_scripts __ARGS((void));
int using_script __ARGS((void));
void updatescript __ARGS((int c));
int vgetc __ARGS((void));
void copy_jumplist __ARGS((win_T *from, win_T *to));
void free_jumplist __ARGS((win_T *wp));
void set_last_cursor __ARGS((win_T *win));
+void free_all_marks __ARGS((void));
int read_viminfo_filemark __ARGS((vir_T *virp, int force));
void write_viminfo_filemarks __ARGS((FILE *fp));
int removable __ARGS((char_u *name));
void beep_flush __ARGS((void));
void vim_beep __ARGS((void));
void init_homedir __ARGS((void));
+void free_homedir __ARGS((void));
void expand_env __ARGS((char_u *src, char_u *dst, int dstlen));
void expand_env_esc __ARGS((char_u *src, char_u *dst, int dstlen, int esc));
char_u *vim_getenv __ARGS((char_u *name, int *mustfree));
void set_init_1 __ARGS((void));
void set_string_default __ARGS((char *name, char_u *val));
void set_number_default __ARGS((char *name, long val));
+void free_all_options __ARGS((void));
void set_init_2 __ARGS((void));
void set_init_3 __ARGS((void));
void set_helplang_default __ARGS((char_u *lang));
int makeset __ARGS((FILE *fd, int opt_flags, int local_only));
int makefoldset __ARGS((FILE *fd));
void clear_termoptions __ARGS((void));
+void free_termoptions __ARGS((void));
void set_term_defaults __ARGS((void));
void comp_col __ARGS((void));
char_u *get_equalprg __ARGS((void));
/* quickfix.c */
int qf_init __ARGS((char_u *efile, char_u *errorformat, int newlist));
+void qf_free_all __ARGS((void));
void qf_jump __ARGS((int dir, int errornr, int forceit));
void qf_list __ARGS((exarg_T *eap));
void qf_age __ARGS((exarg_T *eap));
/* regexp.c */
+void free_regexp_stuff __ARGS((void));
int re_multiline __ARGS((regprog_T *prog));
int re_lookbehind __ARGS((regprog_T *prog));
char_u *skip_regexp __ARGS((char_u *startp, int dirc, int magic, char_u **newp));
char_u *get_search_pat __ARGS((void));
void save_search_patterns __ARGS((void));
void restore_search_patterns __ARGS((void));
+void free_search_patterns __ARGS((void));
int ignorecase __ARGS((char_u *pat));
char_u *last_search_pat __ARGS((void));
void reset_search_dir __ARGS((void));
void hl_set_font_name __ARGS((char_u *font_name));
void hl_set_bg_color_name __ARGS((char_u *name));
void hl_set_fg_color_name __ARGS((char_u *name));
+void clear_hl_tables __ARGS((void));
int hl_combine_attr __ARGS((int char_attr, int prim_attr));
attrentry_T *syn_gui_attr2entry __ARGS((int attr));
attrentry_T *syn_term_attr2entry __ARGS((int attr));
void tag_freematch __ARGS((void));
void do_tags __ARGS((exarg_T *eap));
int find_tags __ARGS((char_u *pat, int *num_matches, char_u ***matchesp, int flags, int mincount, char_u *buf_ffname));
+void free_tag_stuff __ARGS((void));
void simplify_filename __ARGS((char_u *filename));
int expand_tags __ARGS((int tagnames, char_u *pat, int *num_file, char_u ***file));
int get_tags __ARGS((list_T *list, char_u *pat));
qf_lists[qf_curlist].qf_count = 0;
}
+#if defined(EXITFREE) || defined(PROTO)
+ void
+qf_free_all()
+{
+ int i;
+
+ for (i = 0; i < qf_listcount; ++i)
+ qf_free(i);
+}
+#endif
+
/*
* Add an entry to the end of the list of errors.
* Returns OK or FAIL.
*/
#define JUST_CALC_SIZE ((char_u *) -1)
-static char_u *reg_prev_sub;
+static char_u *reg_prev_sub = NULL;
+
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_regexp_stuff()
+{
+ vim_free(reg_prev_sub);
+}
+#endif
/*
* REGEXP_INRANGE contains all characters which are always special in a []
/* NOTREACHED */
case Magic('~'): /* previous substitute pattern */
- if (reg_prev_sub)
+ if (reg_prev_sub != NULL)
{
char_u *lp;
}
#endif
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_search_patterns()
+{
+ vim_free(spats[0].pat);
+ vim_free(spats[1].pat);
+}
+#endif
+
/*
* Return TRUE when case should be ignored for search pattern "pat".
* Uses the 'ignorecase' and 'smartcase' options.
*** de_DE.orig.aff Fri Jun 17 10:01:18 2005
---- de_DE.aff Sat Jun 18 19:46:19 2005
+--- de_DE.aff Thu Jun 23 17:41:38 2005
***************
*** 3,4 ****
--- 3,8 ----
-+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+
# (c) copyright by Bjoern Jacke <bjoern@j3e.de>
*** de_DE.orig.dic Fri Jun 17 10:01:27 2005
*** en_AU.orig.aff Fri Apr 15 13:20:36 2005
---- en_AU.aff Sat Jun 18 19:42:07 2005
+--- en_AU.aff Thu Jun 23 17:43:22 2005
***************
*** 7,9 ****
SET ISO8859-1
! TRY esiaénrtolcdugmphbyfvkw-'.zqjxSNRTLCGDMPHBEAUYOFIVKWöâôZQJXÅçèîêàïüäñ
REP 24
---- 7,15 ----
+--- 7,17 ----
SET ISO8859-1
! TRY esiaénrtolcdugmphbyfvkw-'.zqjxSNRTLCGDMPHBEAUYOFIVKWöâôZQJXÅçèîêàïüäñ
!
-! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
+! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
!
+! RAR ?
+! BAD !
!
REP 24
***************
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
---- 40,59 ----
+--- 42,61 ----
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
---- 63,457 ----
+--- 65,459 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
---- 464,1149 ----
+--- 466,1272 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
+!
+! MAP 5
+! MAP aàáâãäå
+! MAP eèéêë
+! MAP iìíîï
+! MAP oòóôõö
+! MAP uùúûü
+! MAP nñ
+! MAP cç
+! MAP yÿý
+! MAP sß
+!
+! # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
+!
+! SAL AH(AEIOUY)-^ *H
+! SAL AR(AEIOUY)-^ *R
+! SAL A(HR)^ *
+! SAL A^ *
+! SAL AH(AEIOUY)- H
+! SAL AR(AEIOUY)- R
+! SAL A(HR) _
+! SAL À^ *
+! SAL Å^ *
+! SAL BB- _
+! SAL B B
+! SAL CQ- _
+! SAL CIA X
+! SAL CH X
+! SAL C(EIY)- S
+! SAL CK K
+! SAL COUGH^ KF
+! SAL CC< C
+! SAL C K
+! SAL DG(EIY) K
+! SAL DD- _
+! SAL D T
+! SAL É< E
+! SAL EH(AEIOUY)-^ *H
+! SAL ER(AEIOUY)-^ *R
+! SAL E(HR)^ *
+! SAL ENOUGH^$ *NF
+! SAL E^ *
+! SAL EH(AEIOUY)- H
+! SAL ER(AEIOUY)- R
+! SAL E(HR) _
+! SAL FF- _
+! SAL F F
+! SAL GN^ N
+! SAL GN$ N
+! SAL GNS$ NS
+! SAL GNED$ N
+! SAL GH(AEIOUY)- K
+! SAL GH _
+! SAL GG9 K
+! SAL G K
+! SAL H H
+! SAL IH(AEIOUY)-^ *H
+! SAL IR(AEIOUY)-^ *R
+! SAL I(HR)^ *
+! SAL I^ *
+! SAL ING6 N
+! SAL IH(AEIOUY)- H
+! SAL IR(AEIOUY)- R
+! SAL I(HR) _
+! SAL J K
+! SAL KN^ N
+! SAL KK- _
+! SAL K K
+! SAL LAUGH^ LF
+! SAL LL- _
+! SAL L L
+! SAL MB$ M
+! SAL MM M
+! SAL M M
+! SAL NN- _
+! SAL N N
+! SAL OH(AEIOUY)-^ *H
+! SAL OR(AEIOUY)-^ *R
+! SAL O(HR)^ *
+! SAL O^ *
+! SAL OH(AEIOUY)- H
+! SAL OR(AEIOUY)- R
+! SAL O(HR) _
+! SAL PH F
+! SAL PN^ N
+! SAL PP- _
+! SAL P P
+! SAL Q K
+! SAL RH^ R
+! SAL ROUGH^ RF
+! SAL RR- _
+! SAL R R
+! SAL SCH(EOU)- SK
+! SAL SC(IEY)- S
+! SAL SH X
+! SAL SI(AO)- X
+! SAL SS- _
+! SAL S S
+! SAL TI(AO)- X
+! SAL TH @
+! SAL TCH-- _
+! SAL TOUGH^ TF
+! SAL TT- _
+! SAL T T
+! SAL UH(AEIOUY)-^ *H
+! SAL UR(AEIOUY)-^ *R
+! SAL U(HR)^ *
+! SAL U^ *
+! SAL UH(AEIOUY)- H
+! SAL UR(AEIOUY)- R
+! SAL U(HR) _
+! SAL V^ W
+! SAL V F
+! SAL WR^ R
+! SAL WH^ W
+! SAL W(AEIOU)- W
+! SAL X^ S
+! SAL X KS
+! SAL Y(AEIOU)- Y
+! SAL ZZ- _
+! SAL Z S
*** en_AU.orig.dic Fri Apr 15 13:20:36 2005
---- en_AU.dic Tue Jun 21 20:24:15 2005
+--- en_AU.dic Wed Jun 22 14:06:35 2005
***************
*** 912,914 ****
Alaska/M
+ Bram/M
braid/DGS
***************
+*** 5753,5755 ****
+ cad/ZSM
+- c/aE
+ CAE
+--- 5753,5754 ----
+***************
+*** 8535,8537 ****
+ coniferous
+- conj
+ conjectural
+--- 8534,8535 ----
+***************
+*** 8544,8545 ****
+--- 8542,8544 ----
+ conjunctiva/MS
++ conj.
+ conjunctive/S
+***************
*** 10288,10289 ****
---- 10288,10292 ----
+--- 10287,10291 ----
dB/M
+ dBi
+ dBm
+ dBd
DBMS
***************
+*** 11781,11783 ****
+ DNA
+- d/o
+ DOB
+--- 11783,11784 ----
+***************
*** 12468,12469 ****
---- 12471,12473 ----
+--- 12469,12471 ----
Dutch/5m
+ Farsi
Dutchwomen/M
***************
+*** 12516,12518 ****
+ dystrophy/M
+- e
+ ea
+--- 12518,12519 ----
+***************
*** 13779,13781 ****
estuary/MS
! et
ETA
---- 13783,13786 ----
+--- 13780,13783 ----
estuary/MS
! et cetera
! et al.
ETA
***************
+*** 15296,15298 ****
+ fjord/SM
+! f/K
+ flab/2zZM
+--- 15298,15300 ----
+ fjord/SM
+! pref
+ flab/2zZM
+***************
+*** 16480,16482 ****
+ FYI
+- g/7
+ gabardine/SM
+--- 16482,16483 ----
+***************
+*** 18599,18601 ****
+ HDTV
+- h/E
+ headache/SM
+--- 18600,18601 ----
+***************
*** 19214,19216 ****
Hobbes
! hobbit
hobble/RGSD
---- 19219,19221 ----
+--- 19214,19216 ----
Hobbes
! hobbit/MS
hobble/RGSD
***************
+*** 21791,21793 ****
+ jive/DSMG
+- j/k
+ jnr.
+--- 21791,21792 ----
+***************
+*** 22125,22127 ****
+ kcal
+- k/E
+ Keane
+--- 22124,22125 ----
+***************
+*** 22606,22608 ****
+ Kyushu/M
+- l/3
+ label/AGaSD
+--- 22604,22605 ----
+***************
*** 22885,22887 ****
lass/SM
- last-ditch
lasted/e
---- 22890,22891 ----
+--- 22882,22883 ----
***************
*** 22890,22892 ****
last/kJYDSG
- last-minute
lasts/e
---- 22894,22895 ----
+--- 22886,22887 ----
***************
*** 26417,26418 ****
---- 26420,26422 ----
+--- 26412,26414 ----
Moolawatana
+ Moolenaar/M
Moomba
nationhood/M
! nation/M
nationwide
---- 27192,27196 ----
+--- 27184,27188 ----
nationals/4
! national/sQq3SZ
nationhood/M
nationwide
***************
*** 27194,27195 ****
---- 27198,27201 ----
+--- 27190,27193 ----
nativity/MS
+ natively
+ nativeness
NATO/M
***************
+*** 28365,28367 ****
+ nuzzle/SDG
+- n/xvuNVn
+ Nyah
+--- 28363,28364 ----
+***************
+*** 29464,29466 ****
+ oz
+- o/z
+ Ozark/MS
+--- 29461,29462 ----
+***************
*** 31035,31037 ****
Pk
- p/KF
pl.
---- 31041,31042 ----
+--- 31031,31032 ----
***************
*** 31288,31289 ****
---- 31293,31295 ----
+--- 31283,31285 ----
pneumonia/MS
+ pneumonic
PO
***************
*** 31460,31461 ****
---- 31466,31468 ----
+--- 31456,31458 ----
pompom/MS
+ pompon/M
pomposity/MS
***************
+*** 32865,32867 ****
+ pyx/S
+- q
+ Qatar
+--- 32862,32863 ----
+***************
*** 33378,33380 ****
razzmatazz
- r/d
Rd/M
---- 33385,33386 ----
+--- 33374,33375 ----
***************
*** 34979,34981 ****
RSPCA
- rte
rub-a-dub
---- 34985,34986 ----
+--- 34974,34975 ----
***************
*** 36012,36014 ****
sec.
! s/eca
secant/MS
---- 36017,36019 ----
+--- 36006,36008 ----
sec.
! outs
secant/MS
***************
+*** 40242,40244 ****
+ Szechwan/M
+! t/7k
+ Ta
+--- 40236,40238 ----
+ Szechwan/M
+! tingly
+ Ta
+***************
*** 42616,42618 ****
Tyson/M
- u
ubiquitousness
---- 42621,42622 ----
+--- 42610,42611 ----
***************
*** 42990,42991 ****
---- 42994,42996 ----
+--- 42983,42985 ----
unscrupulous
+ searchable
unsearchable
***************
+*** 43252,43254 ****
+ Uzi/M
+- v
+ vacancy/MS
+--- 43246,43247 ----
+***************
*** 43749,43751 ****
Vilnius/M
! vim/M
vinaigrette/MS
---- 43754,43756 ----
+--- 43742,43744 ----
Vilnius/M
! Vim/M
vinaigrette/MS
***************
+*** 45494,45496 ****
+ yippee
+- y/K
+ YMCA
+--- 45487,45488 ----
+***************
+*** 45586,45588 ****
+ zap/SGRD
+- z/d
+ Zealanders
+--- 45578,45579 ----
+***************
*** 45655 ****
---- 45660,45661 ----
+--- 45646,45652 ----
zymurgy/S
+ nd
++ the the/!
++ a a/!
++ a an/!
++ an a/!
++ an an/!
*** en_CA.orig.aff Fri Apr 15 13:20:36 2005
---- en_CA.aff Sat Jun 18 19:42:19 2005
+--- en_CA.aff Thu Jun 23 17:43:26 2005
***************
*** 3,4 ****
---- 3,8 ----
+--- 3,11 ----
-+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
++
++ RAR ?
++ BAD !
+
PFX A Y 1
***************
! SFX N y ication y
! SFX N 0 en [^ey]
---- 34,37 ----
+--- 37,40 ----
SFX N e ion e
! SFX N y ication y
! SFX N 0 en [^ey]
SFX H y ieth y
! SFX H 0 th [^y]
---- 44,46 ----
+--- 47,49 ----
SFX H y ieth y
! SFX H 0 th [^y]
SFX G e ing e
! SFX G 0 ing [^e]
---- 51,53 ----
+--- 54,56 ----
SFX G e ing e
! SFX G 0 ing [^e]
+***************
+*** 98 ****
+--- 105,226 ----
+ SFX L 0 ment .
++
++ MAP 5
++ MAP aàáâãäå
++ MAP eèéêë
++ MAP iìíîï
++ MAP oòóôõö
++ MAP uùúûü
++ MAP nñ
++ MAP cç
++ MAP yÿý
++ MAP sß
++
++ # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
++
++ SAL AH(AEIOUY)-^ *H
++ SAL AR(AEIOUY)-^ *R
++ SAL A(HR)^ *
++ SAL A^ *
++ SAL AH(AEIOUY)- H
++ SAL AR(AEIOUY)- R
++ SAL A(HR) _
++ SAL À^ *
++ SAL Å^ *
++ SAL BB- _
++ SAL B B
++ SAL CQ- _
++ SAL CIA X
++ SAL CH X
++ SAL C(EIY)- S
++ SAL CK K
++ SAL COUGH^ KF
++ SAL CC< C
++ SAL C K
++ SAL DG(EIY) K
++ SAL DD- _
++ SAL D T
++ SAL É< E
++ SAL EH(AEIOUY)-^ *H
++ SAL ER(AEIOUY)-^ *R
++ SAL E(HR)^ *
++ SAL ENOUGH^$ *NF
++ SAL E^ *
++ SAL EH(AEIOUY)- H
++ SAL ER(AEIOUY)- R
++ SAL E(HR) _
++ SAL FF- _
++ SAL F F
++ SAL GN^ N
++ SAL GN$ N
++ SAL GNS$ NS
++ SAL GNED$ N
++ SAL GH(AEIOUY)- K
++ SAL GH _
++ SAL GG9 K
++ SAL G K
++ SAL H H
++ SAL IH(AEIOUY)-^ *H
++ SAL IR(AEIOUY)-^ *R
++ SAL I(HR)^ *
++ SAL I^ *
++ SAL ING6 N
++ SAL IH(AEIOUY)- H
++ SAL IR(AEIOUY)- R
++ SAL I(HR) _
++ SAL J K
++ SAL KN^ N
++ SAL KK- _
++ SAL K K
++ SAL LAUGH^ LF
++ SAL LL- _
++ SAL L L
++ SAL MB$ M
++ SAL MM M
++ SAL M M
++ SAL NN- _
++ SAL N N
++ SAL OH(AEIOUY)-^ *H
++ SAL OR(AEIOUY)-^ *R
++ SAL O(HR)^ *
++ SAL O^ *
++ SAL OH(AEIOUY)- H
++ SAL OR(AEIOUY)- R
++ SAL O(HR) _
++ SAL PH F
++ SAL PN^ N
++ SAL PP- _
++ SAL P P
++ SAL Q K
++ SAL RH^ R
++ SAL ROUGH^ RF
++ SAL RR- _
++ SAL R R
++ SAL SCH(EOU)- SK
++ SAL SC(IEY)- S
++ SAL SH X
++ SAL SI(AO)- X
++ SAL SS- _
++ SAL S S
++ SAL TI(AO)- X
++ SAL TH @
++ SAL TCH-- _
++ SAL TOUGH^ TF
++ SAL TT- _
++ SAL T T
++ SAL UH(AEIOUY)-^ *H
++ SAL UR(AEIOUY)-^ *R
++ SAL U(HR)^ *
++ SAL U^ *
++ SAL UH(AEIOUY)- H
++ SAL UR(AEIOUY)- R
++ SAL U(HR) _
++ SAL V^ W
++ SAL V F
++ SAL WR^ R
++ SAL WH^ W
++ SAL W(AEIOU)- W
++ SAL X^ S
++ SAL X KS
++ SAL Y(AEIOU)- Y
++ SAL ZZ- _
++ SAL Z S
*** en_CA.orig.dic Sat Apr 16 14:40:06 2005
---- en_CA.dic Tue Jun 21 20:25:01 2005
+--- en_CA.dic Wed Jun 22 14:06:43 2005
***************
*** 46,48 ****
R/G
easternmost
--- 46,47 ----
***************
-*** 59,61 ****
+*** 59,66 ****
a
! b/KGDT
Emmey/M
---- 58,61 ----
+ baggagemen
+! c/EAS
+ antimalarial/S
+- d/AMV
+ enveloper/M
+--- 58,65 ----
a
! probing
! probed
Emmey/M
+ baggagemen
+! recs
+ antimalarial/S
+ enveloper/M
***************
-*** 82,84 ****
- m/XG
+*** 68,98 ****
+ Balearic/M
+! e/FDSM
+! f/BVXT
+ Karamazov/M
+! g/VXB
+! h/VEMS
+! i
+ Braille/DSGM
+- j/FTV
+ transceiver/MS
+! k/FGISE
+ promising/YU
+! l/XTJGV
+ Emmet/M
+! m/XG
! n/FKT
- o
---- 82,84 ----
- m/XG
-! pron
- o
-***************
-*** 86,91 ****
+! o
+ xviii
fitting/PSY
-- p/KRT
- q
+! p/KRT
+! q
! r/GVTJ
! s/FK
fatting
---- 86,89 ----
+! t/BGXTJ
+ Franciska/M
+ oedipal
+! u
+! v/VTK
+! w/JXTGV
+ youths
+--- 67,94 ----
+ Balearic/M
+! fens
+ Karamazov/M
+! gens
+ Braille/DSGM
+ transceiver/MS
+! inking
+! disking
+! conking
+! inks
+! disks
+! conks
+ promising/YU
+! lings
+ Emmet/M
+! ming
+! pron
+ xviii
fitting/PSY
- q
! cons
fatting
-***************
-*** 94,96 ****
+! tings
+ Franciska/M
oedipal
-- u
- v/VTK
---- 92,93 ----
+! vive
+! wens
+! wings
+ youths
+***************
+*** 100,103 ****
+ x
+! y/F
+! z/JGT
+ crumby/RT
+--- 96,98 ----
+ x
+! zings
+ crumby/RT
+***************
+*** 714,715 ****
+--- 709,711 ----
+ silty/RT
++ conj.
+ conjectural/Y
***************
*** 3145,3146 ****
---- 3142,3144 ----
+--- 3141,3143 ----
semester/MS
+ etc.
etch/GZSRDJ
***************
+*** 6190,6191 ****
+--- 6187,6190 ----
+ Paula/M
++ coned
++ cone/MS
+ coneflower/M
+***************
*** 7022,7024 ****
DA
- DB
DC
---- 7020,7021 ----
+--- 7021,7022 ----
+***************
+*** 7395,7397 ****
+ rec
+! red/YPS
+ Eamon/M
+--- 7393,7395 ----
+ rec
+! red/YPSM
+ Eamon/M
***************
*** 8388,8390 ****
slotting
- ON
OR
---- 8385,8386 ----
+--- 8386,8387 ----
***************
*** 9125,9127 ****
perchance
- rte
hastiness/MS
---- 9121,9122 ----
+--- 9122,9123 ----
***************
*** 10603,10604 ****
---- 10598,10602 ----
+--- 10599,10603 ----
dB/M
+ dBi
+ dBm
Garold/M
- db
tollhouse/M
---- 10613,10614 ----
+--- 10614,10615 ----
***************
*** 11017,11019 ****
hr
- ht
MCI/M
---- 11014,11015 ----
+--- 11015,11016 ----
***************
*** 11609,11611 ****
demureness/SM
! nd/A
MIA
---- 11605,11607 ----
+--- 11606,11608 ----
demureness/SM
! nd
MIA
engross/LDRSG
! hobbit
certainty/MUS
---- 13665,13667 ----
+--- 13666,13668 ----
engross/LDRSG
! hobbit/MS
certainty/MUS
***************
*** 14434,14435 ****
---- 14430,14432 ----
+--- 14431,14433 ----
pompom/MS
+ pompon/M
Devland/M
bloodstone/M
! cetera/S
storm/SGZRDM
---- 19262,19264 ----
+--- 19263,19265 ----
bloodstone/M
! et cetera/S
storm/SGZRDM
Hansel/M
! ring/GZJDRM
Hansen/M
---- 20159,20161 ----
+--- 20160,20162 ----
Hansel/M
! ring/GZJDRMS
Hansen/M
***************
+*** 26960,26965 ****
+ Wisenheimer/M
+! disc/GDM
+ horticulturist/SM
+ isotropically
+! dish/DG
+ disburser/M
+--- 26958,26963 ----
+ Wisenheimer/M
+! disc/GDMS
+ horticulturist/SM
+ isotropically
+! dish/DGMS
+ disburser/M
+***************
*** 28157,28158 ****
---- 28154,28156 ----
+--- 28155,28157 ----
pneumonia/MS
+ pneumonic
Socratic/S
claque/MS
- etc
Chad/M
---- 34997,34998 ----
+--- 34998,34999 ----
***************
*** 36707,36708 ****
---- 36704,36706 ----
+--- 36705,36707 ----
Moody/M
+ Moolenaar/M
Bresenham/M
***************
*** 50272,50273 ****
---- 50270,50272 ----
+--- 50271,50273 ----
Dutch/M
+ Farsi
Sharon/M
hatchery/MS
! vim/SM
compatriot/MS
---- 52564,52566 ----
+--- 52565,52567 ----
hatchery/MS
! Vim/SM
compatriot/MS
***************
*** 53490,53491 ****
---- 53489,53491 ----
+--- 53490,53492 ----
unsearchable
+ searchable
felicitous/IY
***************
*** 62341 ****
---- 62341,62342 ----
+--- 62342,62348 ----
data/M
+ et al.
++ the the/!
++ a a/!
++ a an/!
++ an a/!
++ an an/!
*** en_GB.orig.aff Fri Apr 15 13:20:36 2005
---- en_GB.aff Sat Jun 18 19:42:24 2005
+--- en_GB.aff Thu Jun 23 17:43:30 2005
***************
*** 7,9 ****
SET ISO8859-1
! TRY esiaénrtolcdugmphbyfvkw-'.zqjxSNRTLCGDMPHBEAUYOFIVKWöâôZQJXÅçèîêàïüäñ
REP 24
---- 7,14 ----
+--- 7,17 ----
SET ISO8859-1
! TRY esiaénrtolcdugmphbyfvkw-'.zqjxSNRTLCGDMPHBEAUYOFIVKWöâôZQJXÅçèîêàïüäñ
!
-! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
+! FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+! LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
+! UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+!
+! RAR ?
+! BAD !
!
REP 24
***************
PFX E Y 1
! PFX E 0 dis .
PFX F Y 5
---- 39,58 ----
+--- 42,61 ----
PFX A Y 2
! PFX A 0 re [^e]
! PFX A 0 re- e
SFX T y iest [^aeiou]y
! SFX T 0 er [aeiou]y
SFX T 0 est [aeiou]y
---- 62,456 ----
+--- 65,459 ----
PFX F 0 col l
! PFX F 0 con [^abehilmopru].
PFX K Y 1
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
---- 463,1148 ----
+--- 466,1272 ----
SFX R Y 72
! SFX R 0 r e
! SFX R 0 rs e
! SFX 3 0 ist's [aeioubp]y
! SFX 3 o ist's o
! SFX 3 0 ist's [^eoy]
+!
+! MAP 5
+! MAP aàáâãäå
+! MAP eèéêë
+! MAP iìíîï
+! MAP oòóôõö
+! MAP uùúûü
+! MAP nñ
+! MAP cç
+! MAP yÿý
+! MAP sß
+!
+! # This comes from Aspell en_phonet.dat, version 1.1, 2000-01-07
+!
+! SAL AH(AEIOUY)-^ *H
+! SAL AR(AEIOUY)-^ *R
+! SAL A(HR)^ *
+! SAL A^ *
+! SAL AH(AEIOUY)- H
+! SAL AR(AEIOUY)- R
+! SAL A(HR) _
+! SAL À^ *
+! SAL Å^ *
+! SAL BB- _
+! SAL B B
+! SAL CQ- _
+! SAL CIA X
+! SAL CH X
+! SAL C(EIY)- S
+! SAL CK K
+! SAL COUGH^ KF
+! SAL CC< C
+! SAL C K
+! SAL DG(EIY) K
+! SAL DD- _
+! SAL D T
+! SAL É< E
+! SAL EH(AEIOUY)-^ *H
+! SAL ER(AEIOUY)-^ *R
+! SAL E(HR)^ *
+! SAL ENOUGH^$ *NF
+! SAL E^ *
+! SAL EH(AEIOUY)- H
+! SAL ER(AEIOUY)- R
+! SAL E(HR) _
+! SAL FF- _
+! SAL F F
+! SAL GN^ N
+! SAL GN$ N
+! SAL GNS$ NS
+! SAL GNED$ N
+! SAL GH(AEIOUY)- K
+! SAL GH _
+! SAL GG9 K
+! SAL G K
+! SAL H H
+! SAL IH(AEIOUY)-^ *H
+! SAL IR(AEIOUY)-^ *R
+! SAL I(HR)^ *
+! SAL I^ *
+! SAL ING6 N
+! SAL IH(AEIOUY)- H
+! SAL IR(AEIOUY)- R
+! SAL I(HR) _
+! SAL J K
+! SAL KN^ N
+! SAL KK- _
+! SAL K K
+! SAL LAUGH^ LF
+! SAL LL- _
+! SAL L L
+! SAL MB$ M
+! SAL MM M
+! SAL M M
+! SAL NN- _
+! SAL N N
+! SAL OH(AEIOUY)-^ *H
+! SAL OR(AEIOUY)-^ *R
+! SAL O(HR)^ *
+! SAL O^ *
+! SAL OH(AEIOUY)- H
+! SAL OR(AEIOUY)- R
+! SAL O(HR) _
+! SAL PH F
+! SAL PN^ N
+! SAL PP- _
+! SAL P P
+! SAL Q K
+! SAL RH^ R
+! SAL ROUGH^ RF
+! SAL RR- _
+! SAL R R
+! SAL SCH(EOU)- SK
+! SAL SC(IEY)- S
+! SAL SH X
+! SAL SI(AO)- X
+! SAL SS- _
+! SAL S S
+! SAL TI(AO)- X
+! SAL TH @
+! SAL TCH-- _
+! SAL TOUGH^ TF
+! SAL TT- _
+! SAL T T
+! SAL UH(AEIOUY)-^ *H
+! SAL UR(AEIOUY)-^ *R
+! SAL U(HR)^ *
+! SAL U^ *
+! SAL UH(AEIOUY)- H
+! SAL UR(AEIOUY)- R
+! SAL U(HR) _
+! SAL V^ W
+! SAL V F
+! SAL WR^ R
+! SAL WH^ W
+! SAL W(AEIOU)- W
+! SAL X^ S
+! SAL X KS
+! SAL Y(AEIOU)- Y
+! SAL ZZ- _
+! SAL Z S
*** en_GB.orig.dic Sun Apr 17 18:08:50 2005
---- en_GB.dic Tue Jun 21 20:26:11 2005
+--- en_GB.dic Wed Jun 22 14:06:46 2005
***************
*** 187,189 ****
aitch/SM
al-Jazeera
--- 187,188 ----
***************
+*** 1795,1796 ****
+--- 1794,1796 ----
+ conic/S
++ conj.
+ conjectural
+***************
+*** 2103,2105 ****
+ czarship
+- d/o
+ d'art
+--- 2103,2104 ----
+***************
*** 2148,2150 ****
dazzle/DRkGJS
- dBm
+ dBd
DCB
***************
+*** 11591,11593 ****
+ dérailleur/SM
+- e
+ e'en
+--- 11590,11591 ----
+***************
*** 14591,14592 ****
---- 14590,14592 ----
+--- 14589,14591 ----
native/SP
+ natively
nativity/SM
RSPCA
- rte
rubati
---- 16172,16173 ----
+--- 16171,16172 ----
+***************
+*** 17251,17253 ****
+ séance/SM
+- t/ac
+ T'ang
+--- 17249,17250 ----
***************
*** 17808,17809 ****
---- 17807,17809 ----
+--- 17805,17807 ----
unsearchable
+ searchable
unshakable/Y
***************
+*** 18268,18270 ****
+ xylophone/SM
+- y/K
+ yachters
+--- 18266,18267 ----
+***************
*** 18322,18323 ****
---- 18322,18324 ----
+--- 18319,18321 ----
émigré/S
+ nd
3GPP
***************
*** 19303,19304 ****
---- 19304,19306 ----
+--- 19301,19303 ----
Brampton/M
+ Bram/M
brand/MRDGSZ
estimative
! et
etalon
---- 21099,21102 ----
+--- 21096,21099 ----
estimative
! et cetera
! et al.
etalon
***************
+*** 21228,21230 ****
+ Ezra
+- f/37
+ Faber/M
+--- 21228,21229 ----
+***************
+*** 22734,22736 ****
+ justification/M
+- k/E
+ Kabul
+--- 22733,22734 ----
+***************
*** 23632,23633 ****
---- 23635,23637 ----
+--- 23630,23632 ----
Moog
+ Moolenaar/M
moonlight/GRDSM
oxygenation/M
- p/FYAI
Pablo/M
---- 24246,24247 ----
+--- 24241,24242 ----
***************
*** 27223,27225 ****
Villiers
! vim/M
Vinci/M
---- 27226,27228 ----
+--- 27221,27223 ----
Villiers
! Vim/M
Vinci/M
***************
+*** 27568,27570 ****
+ Yvette
+- z/d
+ Zealanders
+--- 27566,27567 ----
+***************
*** 28174,28176 ****
Aztec/M
- b/bp
Baal/M
---- 28177,28178 ----
+--- 28171,28172 ----
+***************
+*** 28890,28892 ****
+ Cathy
+! cation/MW
+ catnip/SM
+--- 28886,28888 ----
+ Cathy
+! cation/MWS
+ catnip/SM
+***************
+*** 30587,30589 ****
+ fissionable/S
+! fist/6GD
+ fit/6TRGMYJPSDj
+--- 30583,30585 ----
+ fissionable/S
+! fist/6GDMS
+ fit/6TRGMYJPSDj
+***************
+*** 30846,30848 ****
+ fuzzy/TP
+- g/73
+ Ga/y
+--- 30842,30843 ----
***************
*** 31409,31411 ****
hob/MDGZS
! hobbit
Hobbs
---- 31411,31413 ----
+--- 31404,31406 ----
hob/MDGZS
! hobbit/MS
Hobbs
***************
+*** 32110,32112 ****
+ kWh
+! l/F
+ lab/MoS
+--- 32105,32107 ----
+ kWh
+! coll
+ lab/MoS
+***************
*** 32174,32176 ****
lasso/GMDS
- last-ditch
Laszlo/M
---- 32176,32177 ----
+--- 32169,32170 ----
+***************
+*** 34188,34190 ****
+ pâté/M
+- q
+ Qatar
+--- 34182,34183 ----
+***************
+*** 36324,36326 ****
+ uttermost
+- v
+ vacate/nDGNS
+--- 36317,36318 ----
+***************
+*** 37916,37918 ****
+ bys
+- c/nN
+ Ca/y
+--- 37908,37909 ----
+***************
+*** 40468,40470 ****
+ Gödel/M
+- h/E
+ ha'p'orth
+--- 40459,40460 ----
***************
*** 43275,43276 ****
---- 43276,43278 ----
+--- 43265,43267 ----
pneumonia/MS
+ pneumonic
PO
qwerty
- r/d
Ra
---- 43667,43668 ----
+--- 43656,43657 ----
+***************
+*** 46148 ****
+--- 46138,46143 ----
+ à
++ the the/!
++ a a/!
++ a an/!
++ an a/!
++ an an/!
*** en_US.orig.aff Fri Apr 15 13:20:36 2005
---- en_US.aff Tue Jun 21 20:46:52 2005
+--- en_US.aff Thu Jun 23 17:42:05 2005
***************
*** 3,4 ****
---- 3,10 ----
+--- 3,11 ----
-+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+
+ RAR ?
++ BAD !
+
PFX A Y 1
***************
! SFX N y ication y
! SFX N 0 en [^ey]
---- 36,39 ----
+--- 37,40 ----
SFX N e ion e
! SFX N y ication y
! SFX N 0 en [^ey]
SFX H y ieth y
! SFX H 0 th [^y]
---- 46,48 ----
+--- 47,49 ----
SFX H y ieth y
! SFX H 0 th [^y]
SFX G e ing e
! SFX G 0 ing [^e]
---- 53,55 ----
+--- 54,56 ----
SFX G e ing e
! SFX G 0 ing [^e]
***************
*** 137,138 ****
---- 143,146 ----
+--- 144,147 ----
REP uy i
+ REP y ie
+ REP ie y
REP i ee
***************
*** 188 ****
---- 196,317 ----
+--- 197,318 ----
REP shun cion
+
+ MAP 5
+ SAL ZZ- _
+ SAL Z S
*** en_US.orig.dic Fri Apr 15 13:20:36 2005
---- en_US.dic Tue Jun 21 20:26:22 2005
+--- en_US.dic Wed Jun 22 14:06:29 2005
***************
*** 5944,5946 ****
bk
! probed
Bk/M
***************
+*** 9007,9009 ****
+ Cazzie/M
+- c/B
+ CB
+--- 9008,9009 ----
+***************
*** 9233,9235 ****
cetacean/S
- cetera/S
Cetus/M
---- 9234,9235 ----
+--- 9233,9234 ----
+***************
+*** 11575,11576 ****
+--- 11574,11577 ----
+ conduit/MS
++ coned
++ cone/MS
+ coneflower/M
+***************
+*** 11712,11713 ****
+--- 11713,11715 ----
+ coniferous
++ conj.
+ conjectural/Y
***************
*** 14038,14043 ****
dazzling/Y
dbl
dB/M
DBMS
---- 14038,14044 ----
+--- 14040,14046 ----
dazzling/Y
dbl
dB/M
+ dBd
DBMS
***************
+*** 15464,15466 ****
+ dingbat/MS
+! ding/GD
+ dinghy/SM
+--- 15467,15469 ----
+ dingbat/MS
+! ding/GDS
+ dinghy/SM
+***************
+*** 15690,15692 ****
+ dishevelment/MS
+! dish/GD
+ dishonest
+--- 15693,15695 ----
+ dishevelment/MS
+! dish/GDMS
+ dishonest
+***************
+*** 15973,15975 ****
+ djellaba/S
+- d/JGVX
+ Djibouti/M
+--- 15976,15977 ----
+***************
*** 16911,16912 ****
---- 16912,16914 ----
+--- 16913,16915 ----
dusty/RPT
+ Farsi
Dutch/M
***************
+*** 17357,17359 ****
+ EFL
+- e/FMDS
+ Efrain/M
+--- 17360,17361 ----
+***************
*** 18780,18782 ****
estuary/SM
! et
! etc.
etcetera/SM
***************
+*** 20559,20561 ****
+ Fiori/M
+- f/IRAC
+ firearm/SM
+--- 20562,20563 ----
+***************
+*** 24402,24404 ****
+ guzzler/M
+! g/VBX
+ Gwalior/M
+--- 24404,24406 ----
+ guzzler/M
+! gens
+ Gwalior/M
+***************
+*** 25473,25475 ****
+ hemp/MNS
+- h/EMS
+ hemstitch/DSMG
+--- 25475,25476 ----
+***************
*** 25963,25965 ****
hobbing
! hobbit
hobbler/M
---- 25966,25968 ----
+--- 25964,25966 ----
hobbing
! hobbit/MS
hobbler/M
HST
- ht
HTML
---- 26527,26528 ----
+--- 26525,26526 ----
+***************
+*** 26942,26944 ****
+ Hz
+- i
+ I
+--- 26942,26943 ----
+***************
+*** 29627,29629 ****
+ Jezebel/MS
+- j/F
+ JFK/M
+--- 29626,29627 ----
+***************
+*** 30578,30580 ****
+ keyword/SM
+! k/FGEIS
+ kg
+--- 30576,30583 ----
+ keyword/SM
+! inking
+! disking
+! conking
+! inks
+! disks
+! conks
+ kg
+***************
+*** 32694,32696 ****
+ Lizzy/M
+! l/JGVXT
+ Ljubljana/M
+--- 32697,32699 ----
+ Lizzy/M
+! lings
+ Ljubljana/M
+***************
+*** 34456,34458 ****
+ mash/JGZMSRD
+! m/ASK
+ masked/U
+--- 34459,34462 ----
+ mash/JGZMSRD
+! rems
+! prom/S
+ masked/U
***************
*** 34746,34747 ****
---- 34748,34751 ----
+--- 34750,34753 ----
Mb
+ Mbyte
+ Mbit
MB
***************
*** 36605,36606 ****
---- 36609,36611 ----
+--- 36611,36613 ----
Moog
+ Moolenaar/M
moo/GSD
NSF
- n/T
NT
---- 38876,38877 ----
+--- 38878,38879 ----
+***************
+*** 39011,39013 ****
+ NZ
+- o
+ O
+--- 39017,39018 ----
***************
*** 39532,39534 ****
om/XN
- ON
onanism/M
---- 39536,39537 ----
+--- 39537,39538 ----
***************
*** 42508,42510 ****
pinfeather/SM
! ping/GDRM
pinheaded/P
---- 42511,42513 ----
+--- 42512,42514 ----
pinfeather/SM
! ping/GDRMS
pinheaded/P
***************
*** 42983,42984 ****
---- 42986,42988 ----
+--- 42987,42989 ----
pneumonia/MS
+ pneumonic
PO
pompom/SM
! pompon's
pomposity/MS
---- 43220,43222 ----
+--- 43221,43223 ----
pompom/SM
! pompon/M
pomposity/MS
PX
- p/XTGJ
Pygmalion/M
---- 44944,44945 ----
+--- 44945,44946 ----
+***************
+*** 44983,44985 ****
+ pyx/MDSG
+- q
+ Q
+--- 44987,44988 ----
***************
*** 46507,46509 ****
Renault/MS
! sings
sybarite/MS
***************
+*** 57728,57730 ****
+ TX
+! t/XTJBG
+ Tybalt/M
+--- 57727,57729 ----
+ TX
+! tings
+ Tybalt/M
+***************
*** 57809,57811 ****
Tzeltal/M
- u
+ searchable
unseasonal
***************
+*** 59072,59074 ****
+ vast/PTSYR
+! v/ASV
+ VAT
+--- 59071,59073 ----
+ vast/PTSYR
+! revs
+ VAT
+***************
*** 59538,59540 ****
vi/MDR
! vim/MS
! Vim/MS
vinaigrette/MS
***************
+*** 61534,61536 ****
+ WWW
+! w/XTJGV
+ WY
+--- 61533,61536 ----
+ WWW
+! wens
+! wings
+ WY
+***************
+*** 61750,61752 ****
+ yew/SM
+- y/F
+ Yggdrasil/M
+--- 61750,61751 ----
+***************
+*** 62058,62060 ****
+ Zsigmondy/M
+! z/TGJ
+ Zubenelgenubi/M
+--- 62057,62059 ----
+ Zsigmondy/M
+! zings
+ Zubenelgenubi/M
+***************
*** 62077 ****
---- 62076,62078 ----
+--- 62076,62082 ----
zymurgy/S
-+ the the/?
+ nd
++ the the/!
++ a a/!
++ a an/!
++ an a/!
++ an an/!
*** fr_FR.orig.aff Sun Apr 14 17:18:22 2002
---- fr_FR.aff Sat Jun 18 19:43:02 2005
+--- fr_FR.aff Sat Jun 25 15:12:00 2005
***************
*** 3,4 ****
--- 3,8 ----
-+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
+
PFX A Y 10
+***************
+*** 691,692 ****
+--- 695,707 ----
+
++
++ MAP 5
++ MAP aàáâãäå
++ MAP eèéêë
++ MAP iìíîï
++ MAP oòóôõö
++ MAP uùúûü
++ MAP nñ
++ MAP cç
++ MAP yÿý
++ MAP sß
+
*** nl_NL.orig.aff Wed Apr 20 11:48:16 2005
---- nl_NL.aff Tue Jun 21 11:08:32 2005
+--- nl_NL.aff Thu Jun 23 20:52:18 2005
***************
*** 3,4 ****
---- 3,8 ----
+--- 3,10 ----
-+ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþß
-+ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß
++ FOL àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ LOW àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþßÿ
++ UPP ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßÿ
++
++ KEP =
+
NOSPLITSUGS
***************
! SFX J 0 je [aeiou][bcdfgkpt]
! SFX J 0 jes [aeiou][bcdfgkpt]
---- 37,56 ----
+--- 39,58 ----
SFX J N 18
! SFX J 0 tje [aeiou][aeiou]
! SFX J 0 tjes [aeiou][aeiou]
REP ubi ibu
! REP croc krok
REP ten than
---- 257,259 ----
+--- 259,261 ----
REP ubi ibu
! REP croc krok
REP ten than
REP capucino cappuccino
! REP celcius Celsius
REP kado cadeau
---- 292,294 ----
+--- 294,296 ----
REP capucino cappuccino
! REP celcius Celsius
REP kado cadeau
REP kommittee comité
! REP kwis quiz
REP kwissen quizzen
---- 298,304 ----
+--- 300,306 ----
REP committee comité
! REP komitee comité
! REP komittee comité
REP copy kopij
! REP pitoresque pittoreske
REP reikweite reikwijdte
---- 306,308 ----
+--- 308,310 ----
REP copy kopij
! REP pitoresque pittoreske
REP reikweite reikwijdte
! REP kontekst context
! REP korrekt correct
REP kritikus criticus
---- 318,323 ----
+--- 320,325 ----
REP klup club
! REP wiskid whizzkid
! REP kontakt contact
REP kritikus criticus
***************
*** 333 ****
---- 337,458 ----
+--- 339,462 ----
REP aflassen afgelasten
++ REP svp s.v.p.
++ REP zoz z.o.z.
+
+ MAP 5
+ MAP aàáâãäå
+ SAL ZZ- _
+ SAL Z S
*** nl_NL.orig.dic Tue Apr 19 21:03:15 2005
---- nl_NL.dic Wed Jun 15 10:36:20 2005
+--- nl_NL.dic Fri Jun 24 15:42:29 2005
+***************
+*** 1,3 ****
+ 119937
+! 'Versie-12-8-2003. Copyright (c) Nederlandse Tex Gebruikersgroep en S.Brouwer'
+ 's-Graveland
+--- 1,3 ----
+ 119937
+! #Versie-12-8-2003. Copyright (c) Nederlandse Tex Gebruikersgroep en S.Brouwer'
+ 's-Graveland
***************
*** 8,9 ****
--- 8,11 ----
Dwingeloo
***************
*** 7485,7486 ****
---- 7489,7493 ----
+--- 7489,7498 ----
avond/SN
-+ 's avonds
-+ 's middags
-+ 's ochtends
++ 's avonds/=
++ 's middags/=
++ 's ochtends/=
++ 's morgens/=
++ 's Avonds
++ 's Middags
++ 's Ochtends
++ 's Morgens
avondappèl/S
***************
*** 20681,20682 ****
---- 20688,20690 ----
+--- 20693,20695 ----
cytostatica
+ d.m.v.
daad/P
***************
*** 46300,46301 ****
---- 46308,46310 ----
+--- 46313,46315 ----
informaticus
+ informatie/S
informatie-uitwisseling
***************
*** 60206,60208 ****
---- 60215,60222 ----
+--- 60220,60227 ----
löss
+ m.a.w.
+ m.b.t.
maag
***************
*** 97474,97475 ****
---- 97488,97490 ----
+--- 97493,97496 ----
suïciderisico/X
+ s.v.p.
++ z.o.z.
swagger/S
***************
*** 101428,101429 ****
---- 101443,101446 ----
+--- 101449,101452 ----
toezichthouder/S
+ toezichthoudersaansprakelijkheidsverzekering
+ toezichthoudersaansprakelijkheidsverzekeringen
toezie/N
***************
*** 103707,103708 ****
---- 103724,103726 ----
+--- 103730,103732 ----
tête-à-tête/S
+ u
uchtend/N
***************
*** 119938 ****
---- 119956,120126 ----
+--- 119962,120136 ----
überhaupt
+ Christiaan/X
+ Fred/X
+ wishful thinking
+ à gogo
+ à propos
++ ca.
++ evt.
++ enz.
++ bijv.
int i;
for (i = 0; i < highlight_ga.ga_len; ++i)
+ {
highlight_clear(i);
+ vim_free(HL_TABLE()[i].sg_name);
+ vim_free(HL_TABLE()[i].sg_name_u);
+ }
ga_clear(&highlight_ga);
}
#endif
attrentry_T *aep;
{
int i;
- attrentry_T *gap;
+ attrentry_T *taep;
static int recursive = FALSE;
/*
*/
for (i = 0; i < table->ga_len; ++i)
{
- gap = &(((attrentry_T *)table->ga_data)[i]);
- if ( aep->ae_attr == gap->ae_attr
+ taep = &(((attrentry_T *)table->ga_data)[i]);
+ if ( aep->ae_attr == taep->ae_attr
&& (
#ifdef FEAT_GUI
(table == &gui_attr_table
- && (aep->ae_u.gui.fg_color == gap->ae_u.gui.fg_color
- && aep->ae_u.gui.bg_color == gap->ae_u.gui.bg_color
- && aep->ae_u.gui.sp_color == gap->ae_u.gui.sp_color
- && aep->ae_u.gui.font == gap->ae_u.gui.font
+ && (aep->ae_u.gui.fg_color == taep->ae_u.gui.fg_color
+ && aep->ae_u.gui.bg_color
+ == taep->ae_u.gui.bg_color
+ && aep->ae_u.gui.sp_color
+ == taep->ae_u.gui.sp_color
+ && aep->ae_u.gui.font == taep->ae_u.gui.font
# ifdef FEAT_XFONTSET
- && aep->ae_u.gui.fontset == gap->ae_u.gui.fontset
+ && aep->ae_u.gui.fontset == taep->ae_u.gui.fontset
# endif
))
||
#endif
(table == &term_attr_table
- && (aep->ae_u.term.start == NULL) ==
- (gap->ae_u.term.start == NULL)
+ && (aep->ae_u.term.start == NULL)
+ == (taep->ae_u.term.start == NULL)
&& (aep->ae_u.term.start == NULL
|| STRCMP(aep->ae_u.term.start,
- gap->ae_u.term.start) == 0)
- && (aep->ae_u.term.stop == NULL) ==
- (gap->ae_u.term.stop == NULL)
+ taep->ae_u.term.start) == 0)
+ && (aep->ae_u.term.stop == NULL)
+ == (taep->ae_u.term.stop == NULL)
&& (aep->ae_u.term.stop == NULL
|| STRCMP(aep->ae_u.term.stop,
- gap->ae_u.term.stop) == 0))
+ taep->ae_u.term.stop) == 0))
|| (table == &cterm_attr_table
- && aep->ae_u.cterm.fg_color == gap->ae_u.cterm.fg_color
- && aep->ae_u.cterm.bg_color == gap->ae_u.cterm.bg_color)
+ && aep->ae_u.cterm.fg_color
+ == taep->ae_u.cterm.fg_color
+ && aep->ae_u.cterm.bg_color
+ == taep->ae_u.cterm.bg_color)
))
return i + ATTR_OFF;
}
recursive = TRUE;
-#ifdef FEAT_GUI
- ga_clear(&gui_attr_table);
-#endif
- ga_clear(&term_attr_table);
- ga_clear(&cterm_attr_table);
+ clear_hl_tables();
+
must_redraw = CLEAR;
for (i = 0; i < highlight_ga.ga_len; ++i)
if (ga_grow(table, 1) == FAIL)
return 0;
- gap = &(((attrentry_T *)table->ga_data)[table->ga_len]);
- vim_memset(gap, 0, sizeof(attrentry_T));
- gap->ae_attr = aep->ae_attr;
+ taep = &(((attrentry_T *)table->ga_data)[table->ga_len]);
+ vim_memset(taep, 0, sizeof(attrentry_T));
+ taep->ae_attr = aep->ae_attr;
#ifdef FEAT_GUI
if (table == &gui_attr_table)
{
- gap->ae_u.gui.fg_color = aep->ae_u.gui.fg_color;
- gap->ae_u.gui.bg_color = aep->ae_u.gui.bg_color;
- gap->ae_u.gui.sp_color = aep->ae_u.gui.sp_color;
- gap->ae_u.gui.font = aep->ae_u.gui.font;
+ taep->ae_u.gui.fg_color = aep->ae_u.gui.fg_color;
+ taep->ae_u.gui.bg_color = aep->ae_u.gui.bg_color;
+ taep->ae_u.gui.sp_color = aep->ae_u.gui.sp_color;
+ taep->ae_u.gui.font = aep->ae_u.gui.font;
# ifdef FEAT_XFONTSET
- gap->ae_u.gui.fontset = aep->ae_u.gui.fontset;
+ taep->ae_u.gui.fontset = aep->ae_u.gui.fontset;
# endif
}
#endif
if (table == &term_attr_table)
{
if (aep->ae_u.term.start == NULL)
- gap->ae_u.term.start = NULL;
+ taep->ae_u.term.start = NULL;
else
- gap->ae_u.term.start = vim_strsave(aep->ae_u.term.start);
+ taep->ae_u.term.start = vim_strsave(aep->ae_u.term.start);
if (aep->ae_u.term.stop == NULL)
- gap->ae_u.term.stop = NULL;
+ taep->ae_u.term.stop = NULL;
else
- gap->ae_u.term.stop = vim_strsave(aep->ae_u.term.stop);
+ taep->ae_u.term.stop = vim_strsave(aep->ae_u.term.stop);
}
else if (table == &cterm_attr_table)
{
- gap->ae_u.cterm.fg_color = aep->ae_u.cterm.fg_color;
- gap->ae_u.cterm.bg_color = aep->ae_u.cterm.bg_color;
+ taep->ae_u.cterm.fg_color = aep->ae_u.cterm.fg_color;
+ taep->ae_u.cterm.bg_color = aep->ae_u.cterm.bg_color;
}
++table->ga_len;
return (table->ga_len - 1 + ATTR_OFF);
}
+/*
+ * Clear all highlight tables.
+ */
+ void
+clear_hl_tables()
+{
+ int i;
+ attrentry_T *taep;
+
+#ifdef FEAT_GUI
+ ga_clear(&gui_attr_table);
+#endif
+ for (i = 0; i < term_attr_table.ga_len; ++i)
+ {
+ taep = &(((attrentry_T *)term_attr_table.ga_data)[i]);
+ vim_free(taep->ae_u.term.start);
+ vim_free(taep->ae_u.term.stop);
+ }
+ ga_clear(&term_attr_table);
+ ga_clear(&cterm_attr_table);
+}
+
#if defined(FEAT_SYN_HL) || defined(PROTO)
/*
* Combine special attributes (e.g., for spelling) with other attributes
* type == DT_LAST: jump to last match of same tag
* type == DT_SELECT: ":tselect [tag]", select tag from a list of all matches
* type == DT_JUMP: ":tjump [tag]", jump to tag or select tag from a list
- * type == DT_CSCOPE: use cscope to find the tag.
+ * type == DT_CSCOPE: use cscope to find the tag
+ * type == DT_FREE: free cached matches
*
* for cscope, returns TRUE if we jumped to tag or aborted, FALSE otherwise
*/
static char_u **matches = NULL;
static int flags;
+#ifdef EXITFREE
+ if (type == DT_FREE)
+ {
+ /* remove the list of matches */
+ FreeWild(num_matches, matches);
+# ifdef FEAT_CSCOPE
+ cs_free_tags();
+# endif
+ num_matches = 0;
+ return FALSE;
+ }
+#endif
+
if (type == DT_HELP)
{
type = DT_TAG;
* other tag: <mtt><tag_fname><NUL><NUL><lbuf>
* without Emacs tags: <mtt><tag_fname><NUL><lbuf>
*/
- len = (int)STRLEN(tag_fname) + (int)STRLEN(lbuf_line) + 3;
+ len = (int)STRLEN(tag_fname)
+ + (int)STRLEN(lbuf_line) + 3;
#ifdef FEAT_EMACS_TAGS
if (is_etag)
len += (int)STRLEN(ebuf) + 1;
vim_strsave(fname);
}
+static void *search_ctx = NULL;
+
+#if defined(EXITFREE) || defined(PROTO)
+ void
+free_tag_stuff()
+{
+ vim_findfile_cleanup(search_ctx);
+ do_tag(NULL, DT_FREE, 0, 0, 0);
+}
+#endif
+
/*
* Get the next name of a tag file from the tag file list.
* For help files, use "tags" file only.
int first; /* TRUE when first file name is wanted */
char_u *buf; /* pointer to buffer of MAXPATHL chars */
{
- static void *search_ctx = NULL;
static char_u *np = NULL;
static int did_filefind_init;
static int hf_idx = 0;
}
}
}
+ else
+ uep->ue_array = NULL;
uep->ue_next = curbuf->b_u_newhead->uh_entry;
curbuf->b_u_newhead->uh_entry = uep;
curbuf->b_u_synced = FALSE;
{
while (n)
U_FREE_LINE(uep->ue_array[--n]);
+ U_FREE_LINE((char_u *)uep->ue_array);
U_FREE_LINE((char_u *)uep);
}
{
while (buf->b_u_newhead != NULL)
u_freelist(buf, buf->b_u_newhead);
+ U_FREE_LINE(buf->b_u_line_ptr);
}
#else
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 24)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 24, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 25)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jun 25, compiled "