mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-19 05:24:23 +01:00
* 21124: Src/Zle/zle_main.c, Src/init.c, Src/params.c: have zle cache a
wide-char version of WORDCHARS each time it's changed (when ZLE_UNICODE_SUPPORT is defined).
This commit is contained in:
parent
cb19345676
commit
5571605340
@ -1,3 +1,9 @@
|
||||
2005-04-08 Clint Adams <clint@zsh.org>
|
||||
|
||||
* 21124: Src/Zle/zle_main.c, Src/init.c, Src/params.c:
|
||||
have zle cache a wide-char version of WORDCHARS each time
|
||||
it's changed (when ZLE_UNICODE_SUPPORT is defined).
|
||||
|
||||
2005-04-08 Oliver Kiddle <opk@zsh.org>
|
||||
|
||||
* 21107: configure.ac: handle case where there is a native iconv
|
||||
|
@ -101,6 +101,11 @@ mod_export ZLE_INT_T lastchar_wide;
|
||||
/**/
|
||||
mod_export int
|
||||
lastchar_wide_valid;
|
||||
|
||||
/**/
|
||||
mod_export ZLE_STRING_T zle_wordchars;
|
||||
#else
|
||||
# define zle_wordchars wordchars;
|
||||
#endif
|
||||
|
||||
/* the bindings for the previous and for this key */
|
||||
@ -1507,6 +1512,17 @@ trashzle(void)
|
||||
kungetct = 0;
|
||||
}
|
||||
|
||||
/**/
|
||||
mod_export void
|
||||
wordcharstrigger(void)
|
||||
{
|
||||
#ifdef ZLE_UNICODE_SUPPORT
|
||||
zrealloc(zle_wordchars, strlen(wordchars)*MB_CUR_MAX);
|
||||
mbsrtowcs(zle_wordchars, &wordchars, strlen(wordchars), NULL);
|
||||
/* TODO: error handling here */
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Hook functions. Used to allow access to zle parameters if zle is
|
||||
* active. */
|
||||
|
||||
@ -1572,6 +1588,7 @@ setup_(UNUSED(Module m))
|
||||
kungetbuf = (char *) zalloc(kungetsz = 32);
|
||||
comprecursive = 0;
|
||||
rdstrs = NULL;
|
||||
wordcharstriggerptr = wordcharstrigger;
|
||||
|
||||
/* initialise the keymap system */
|
||||
init_keymaps();
|
||||
@ -1645,6 +1662,7 @@ finish_(UNUSED(Module m))
|
||||
zlegetlineptr = NULL;
|
||||
zlereadptr = fallback_zleread;
|
||||
zlesetkeymapptr= noop_function_int;
|
||||
wordcharstriggerptr = noop_function;
|
||||
|
||||
getkeyptr = NULL;
|
||||
|
||||
|
@ -1151,6 +1151,9 @@ mod_export ZleVoidIntFn zlesetkeymapptr = noop_function_int;
|
||||
|
||||
#endif /* !LINKED_XMOD_zshQszle */
|
||||
|
||||
/**/
|
||||
mod_export ZleVoidFn wordcharstriggerptr = noop_function;
|
||||
|
||||
/**/
|
||||
unsigned char *
|
||||
autoload_zleread(char **lp, char **rp, int ha, int con)
|
||||
|
@ -3316,6 +3316,7 @@ wordcharssetfn(UNUSED(Param pm), char *x)
|
||||
zsfree(wordchars);
|
||||
wordchars = x;
|
||||
inittyptab();
|
||||
wordcharstriggerptr();
|
||||
}
|
||||
|
||||
/* Function to get value for special parameter `_' */
|
||||
|
Loading…
Reference in New Issue
Block a user