diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile | 39 | ||||
-rwxr-xr-x | src/auto/configure | 13 | ||||
-rw-r--r-- | src/buffer.c | 1 | ||||
-rw-r--r-- | src/configure.in | 12 | ||||
-rw-r--r-- | src/edit.c | 111 | ||||
-rw-r--r-- | src/ex_getln.c | 3 | ||||
-rw-r--r-- | src/gui_mac.c | 21 | ||||
-rw-r--r-- | src/gui_w48.c | 1 | ||||
-rw-r--r-- | src/if_mzsch.c | 36 | ||||
-rw-r--r-- | src/if_perl.xs | 75 | ||||
-rw-r--r-- | src/if_python.c | 36 | ||||
-rw-r--r-- | src/if_ruby.c | 34 | ||||
-rw-r--r-- | src/if_tcl.c | 30 | ||||
-rw-r--r-- | src/if_xcmdsrv.c | 2 | ||||
-rw-r--r-- | src/mbyte.c | 4 | ||||
-rw-r--r-- | src/option.c | 14 | ||||
-rw-r--r-- | src/po/it.po | 430 | ||||
-rw-r--r-- | src/proto/gui_w32.pro | 2 | ||||
-rw-r--r-- | src/proto/search.pro | 2 | ||||
-rw-r--r-- | src/quickfix.c | 29 | ||||
-rw-r--r-- | src/spell.c | 2 | ||||
-rw-r--r-- | src/structs.h | 26 | ||||
-rw-r--r-- | src/version.h | 4 | ||||
-rw-r--r-- | src/vim.h | 4 |
24 files changed, 518 insertions, 413 deletions
diff --git a/src/Makefile b/src/Makefile index cebbbc3d7..0340f796b 100644 --- a/src/Makefile +++ b/src/Makefile @@ -119,12 +119,14 @@ # If you don't want to install everything, there are other targets: # make installvim only installs Vim, not the tools # make installvimbin only installs the Vim executable -# make installruntime only installs the Vim help and +# make installruntime installs most of the runtime files +# make installrtbase only installs the Vim help and # runtime files # make installlinks only installs the Vim binary links # make installmanlinks only installs the Vim manpage links # make installmacros only installs the Vim macros -# make installtutor only installs the Vim tutor +# make installtutorbin only installs the Vim tutor program +# make installtutor only installs the Vim tutor files # make installspell only installs the spell files # make installtools only installs xxd # If you install Vim, not to install for real but to prepare a package @@ -1725,7 +1727,8 @@ install: $(GUI_INSTALL) install_normal: installvim installtools $(INSTALL_LANGS) install-icons -installvim: installvimbin installruntime installlinks installmanlinks installmacros installtutor installspell +installvim: installvimbin installtutorbin \ + installruntime installlinks installmanlinks installvimbin: $(VIMTARGET) $(DESTDIR)$(exec_prefix) $(DEST_BIN) -if test -f $(DEST_BIN)/$(VIMTARGET); then \ @@ -1743,8 +1746,11 @@ installvimbin: $(VIMTARGET) $(DESTDIR)$(exec_prefix) $(DEST_BIN) INSTALLMANARGS = $(VIMLOC) $(SCRIPTLOC) $(VIMRCLOC) $(HELPSOURCE) $(MANMOD) \ $(VIMNAME) $(VIMDIFFNAME) $(EVIMNAME) +# Install most of the runtime files +installruntime: installrtbase installmacros installtutor installspell + # install the help files; first adjust the contents for the final location -installruntime: $(HELPSOURCE)/vim.1 $(DEST_VIM) $(DEST_RT) \ +installrtbase: $(HELPSOURCE)/vim.1 $(DEST_VIM) $(DEST_RT) \ $(DEST_HELP) $(DEST_PRINT) $(DEST_COL) $(DEST_SYN) $(DEST_IND) \ $(DEST_FTP) $(DEST_AUTO) $(DEST_PLUG) $(DEST_TUTOR) \ $(DEST_SPELL) $(DEST_COMP) @@ -1834,9 +1840,11 @@ installmacros: $(DEST_VIM) $(DEST_RT) $(DEST_MACRO) fi # install the tutor files -installtutor: $(DEST_VIM) $(DEST_RT) $(DEST_TUTOR) +installtutorbin: $(DEST_VIM) $(INSTALL_DATA) vimtutor $(DEST_BIN)/$(VIMNAME)tutor chmod $(SCRIPTMOD) $(DEST_BIN)/$(VIMNAME)tutor + +installtutor: $(DEST_RT) $(DEST_TUTOR) -$(INSTALL_DATA) $(TUTORSOURCE)/README* $(TUTORSOURCE)/tutor* $(DEST_TUTOR) chmod $(HELPMOD) $(DEST_TUTOR)/* @@ -2539,7 +2547,19 @@ ICONS = $(RESDIR)/$(ICON_APP) #ICONS = $(addprefix $(RESDIR)/, $(ICON_APP) $(ICON_DOC) $(ICON_DOCTXT)) install_macosx: gui_bundle +# Remove the link to the runtime dir, don't want to copy all of that. + -rm $(APPDIR)/runtime $(INSTALL_DATA_R) $(APPDIR) $(DESTDIR)$(prefix) +# Install the runtime files. Recursive! + -mkdir $(DESTDIR)$(prefix)/$(APPDIR)/runtime + -mkdir $(DESTDIR)$(prefix)/$(APPDIR)/bin + srcdir=`pwd`; $(MAKE) -f Makefile installruntime \ + VIMEXE=$$srcdir/$(VIMTARGET) \ + prefix=$(DESTDIR)$(prefix)/$(APPDIR) \ + VIMRTLOC=$(DESTDIR)$(prefix)/$(APPDIR)/runtime +# Put the link back. + ln -s `pwd`/../runtime $(APPDIR) +# TODO: Create the vimtutor application. gui_bundle: $(APPDIR) bundle-dir bundle-executable bundle-info bundle-resource \ bundle-language @@ -2549,12 +2569,9 @@ $(APPDIR): bundle-dir: $(APPDIR)/Contents $(VIMTARGET) -@srcdir=`pwd`; cd $(HELPSOURCE); $(MAKE) VIMEXE=$$srcdir/$(VIMTARGET) vimtags - cp -R ../runtime $(APPDIR) -# When using CVS some CVS directories might have been copied. - cvs=`find $(APPDIR) \( -name CVS -o -name AAPDIR \) -print`; \ - if test -n "$$cvs"; then \ - rm -rf $$cvs; \ - fi +# Make a link to the runtime directory, so that we can try out the executable +# without installing it. + -ln -s `pwd`/../runtime $(APPDIR) bundle-executable: $(VIMTARGET) cp $(VIMTARGET) $(APPDIR)/Contents/MacOS/$(VIMTARGET) diff --git a/src/auto/configure b/src/auto/configure index ecb716182..6e11978d9 100755 --- a/src/auto/configure +++ b/src/auto/configure @@ -2851,7 +2851,6 @@ echo "${ECHO_T}yes" >&6;; echo "${ECHO_T}no" >&6;; esac -DEFAULT_VIMNAME=vim echo "$as_me:$LINENO: checking for Darwin (Mac OS X)" >&5 echo $ECHO_N "checking for Darwin (Mac OS X)... $ECHO_C" >&6 if test "`(uname) 2>/dev/null`" = Darwin; then @@ -3274,7 +3273,6 @@ fi if test "x$CARBON" = "xyes"; then if test -z "$with_x" -a "X$enable_gui" != Xmotif -a "X$enable_gui" != Xathena -a "X$enable_gui" != Xgtk -a "X$enable_gui" != Xgtk2; then with_x=no - DEFAULT_VIMNAME=Vim fi fi fi @@ -3316,7 +3314,7 @@ if test "${with_vim_name+set}" = set; then VIMNAME="$withval"; echo "$as_me:$LINENO: result: $VIMNAME" >&5 echo "${ECHO_T}$VIMNAME" >&6 else - VIMNAME="$DEFAULT_VIMNAME"; echo "$as_me:$LINENO: result: Defaulting to $VIMNAME" >&5 + VIMNAME="vim"; echo "$as_me:$LINENO: result: Defaulting to $VIMNAME" >&5 echo "${ECHO_T}Defaulting to $VIMNAME" >&6 fi; @@ -7521,7 +7519,7 @@ echo "${ECHO_T}found $qt_major_version.$qt_minor_version in $ROOTQT" >&6 do for j in qstyle.h; do - echo "configure: 7524: $i/$j" >&5 + echo "configure: 7522: $i/$j" >&5 if test -r "$i/$j"; then echo "taking that" >&5 qt_incdir=$i @@ -7541,7 +7539,7 @@ echo "$as_me: error: Could not find Qt headers in $QT_INCLUDES" >&2;} do for j in kapplication.h; do - echo "configure: 7544: $i/$j" >&5 + echo "configure: 7542: $i/$j" >&5 if test -r "$i/$j"; then echo "taking that" >&5 kde_incdir=$i @@ -8080,6 +8078,9 @@ echo $ECHO_N "checking for Carbon GUI... $ECHO_C" >&6 echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6; GUITYPE=CARBONGUI + if test "$VIMNAME" = "vim"; then + VIMNAME=Vim + fi SKIP_GTK=YES; SKIP_GTK2=YES; SKIP_GNOME=YES; @@ -11203,7 +11204,6 @@ echo "${ECHO_T}no" >&6 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -if test "x$MACOSX" != "xyes"; then for ac_header in strings.h do @@ -11354,7 +11354,6 @@ fi done -fi echo "$as_me:$LINENO: checking if strings.h can be included after string.h" >&5 echo $ECHO_N "checking if strings.h can be included after string.h... $ECHO_C" >&6 diff --git a/src/buffer.c b/src/buffer.c index 1fb95fdd7..21b3bc490 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -1746,6 +1746,7 @@ free_buf_options(buf, free_p_ff) #endif #ifdef FEAT_COMPL_FUNC clear_string_option(&buf->b_p_cfu); + clear_string_option(&buf->b_p_ofu); #endif #ifdef FEAT_QUICKFIX clear_string_option(&buf->b_p_gp); diff --git a/src/configure.in b/src/configure.in index e9f21a2ca..74fc0170f 100644 --- a/src/configure.in +++ b/src/configure.in @@ -79,7 +79,6 @@ esac dnl Check for Darwin and MacOS X dnl We do a check for MacOS X in the very beginning because there dnl are a lot of other things we need to change besides GUI stuff -DEFAULT_VIMNAME=vim AC_MSG_CHECKING([for Darwin (Mac OS X)]) if test "`(uname) 2>/dev/null`" = Darwin; then AC_MSG_RESULT(yes) @@ -114,7 +113,6 @@ if test "`(uname) 2>/dev/null`" = Darwin; then if test "x$CARBON" = "xyes"; then if test -z "$with_x" -a "X$enable_gui" != Xmotif -a "X$enable_gui" != Xathena -a "X$enable_gui" != Xgtk -a "X$enable_gui" != Xgtk2; then with_x=no - DEFAULT_VIMNAME=Vim fi fi fi @@ -153,7 +151,7 @@ fi AC_MSG_CHECKING(--with-vim-name argument) AC_ARG_WITH(vim-name, [ --with-vim-name=NAME what to call the Vim executable], VIMNAME="$withval"; AC_MSG_RESULT($VIMNAME), - VIMNAME="$DEFAULT_VIMNAME"; AC_MSG_RESULT(Defaulting to $VIMNAME)) + VIMNAME="vim"; AC_MSG_RESULT(Defaulting to $VIMNAME)) AC_SUBST(VIMNAME) AC_MSG_CHECKING(--with-ex-name argument) AC_ARG_WITH(ex-name, [ --with-ex-name=NAME what to call the Ex executable], @@ -1558,6 +1556,9 @@ if test "x$MACOSX" = "xyes" -a -z "$SKIP_CARBON" -a "x$CARBON" = "xyes"; then dnl already did this AC_MSG_RESULT(yes); GUITYPE=CARBONGUI + if test "$VIMNAME" = "vim"; then + VIMNAME=Vim + fi dnl skip everything else SKIP_GTK=YES; SKIP_GTK2=YES; @@ -2257,10 +2258,7 @@ AC_TRY_COMPILE([ AC_DEFINE(HAVE_PTHREAD_NP_H), AC_MSG_RESULT(no)) -dnl On Mac OS X strings.h exists but produces a warning message :-( -if test "x$MACOSX" != "xyes"; then - AC_CHECK_HEADERS(strings.h) -fi +AC_CHECK_HEADERS(strings.h) dnl Check if strings.h and string.h can both be included when defined. AC_MSG_CHECKING([if strings.h can be included after string.h]) diff --git a/src/edit.c b/src/edit.c index f399f3031..d1a48dec9 100644 --- a/src/edit.c +++ b/src/edit.c @@ -819,7 +819,7 @@ doESCkey: /*FALLTHROUGH*/ case Ctrl_O: /* execute one command */ -#ifdef FEAT_INS_EXPAND +#ifdef FEAT_COMPL_FUNC if (ctrl_x_mode == CTRL_X_OCCULT) goto docomplete; #endif @@ -1844,9 +1844,9 @@ vim_is_ctrl_x_key(c) #ifdef FEAT_COMPL_FUNC case CTRL_X_FUNCTION: return (c == Ctrl_U || c == Ctrl_P || c == Ctrl_N); -#endif case CTRL_X_OCCULT: return (c == Ctrl_O || c == Ctrl_P || c == Ctrl_N); +#endif case CTRL_X_SPELL: return (c == Ctrl_S || c == Ctrl_P || c == Ctrl_N); } @@ -2360,10 +2360,10 @@ ins_compl_prep(c) case Ctrl_U: ctrl_x_mode = CTRL_X_FUNCTION; break; -#endif case Ctrl_O: ctrl_x_mode = CTRL_X_OCCULT; break; +#endif case 's': case Ctrl_S: ctrl_x_mode = CTRL_X_SPELL; @@ -2581,36 +2581,38 @@ ins_compl_next_buf(buf, flag) } #ifdef FEAT_COMPL_FUNC -static int expand_by_function __ARGS((int col, char_u *base, char_u ***matches)); +static int expand_by_function __ARGS((int type, char_u *base, char_u ***matches)); /* - * Execute user defined complete function 'completefunc', and get matches in - * "matches". + * Execute user defined complete function 'completefunc' or 'occultfunc', and + * get matches in "matches". * Return value is number of matches. */ static int -expand_by_function(col, base, matches) - int col; +expand_by_function(type, base, matches) + int type; /* CTRL_X_OCCULT or CTRL_X_FUNCTION */ char_u *base; char_u ***matches; { list_T *matchlist; - char_u colbuf[30]; - char_u *args[3]; + char_u *args[2]; listitem_T *li; garray_T ga; char_u *p; + char_u *funcname; + pos_T pos; - if (*curbuf->b_p_cfu == NUL) + funcname = (type == CTRL_X_FUNCTION) ? curbuf->b_p_cfu : curbuf->b_p_ofu; + if (*funcname == NUL) return 0; /* Call 'completefunc' to obtain the list of matches. */ args[0] = (char_u *)"0"; - sprintf((char *)colbuf, "%d", col + (int)STRLEN(base)); - args[1] = colbuf; - args[2] = base; + args[1] = base; - matchlist = call_func_retlist(curbuf->b_p_cfu, 3, args, FALSE); + pos = curwin->w_cursor; + matchlist = call_func_retlist(funcname, 2, args, FALSE); + curwin->w_cursor = pos; /* restore the cursor position */ if (matchlist == NULL) return 0; @@ -2634,30 +2636,6 @@ expand_by_function(col, base, matches) } #endif /* FEAT_COMPL_FUNC */ -static int expand_occult __ARGS((linenr_T lnum, int col, char_u *base, char_u ***matches)); - -/* - * Perform occult completion' - * Return value is number of candidates and array of candidates as "matchp". - */ - static int -expand_occult(lnum, col, pat, matchp) - linenr_T lnum; - int col; - char_u *pat; - char_u ***matchp; -{ - int num_matches; - - /* Use tag completion for now. */ - if (find_tags(pat, &num_matches, matchp, - TAG_REGEXP | TAG_NAMES | TAG_NOIC | - TAG_INS_COMP | (ctrl_x_mode ? TAG_VERBOSE : 0), - TAG_MANY, curbuf->b_ffname) == FAIL) - return 0; - return num_matches; -} - /* * Get the next expansion(s), using "compl_pattern". * The search starts at position "ini" in curbuf and in the direction dir. @@ -2870,19 +2848,12 @@ ins_compl_get_exp(ini, dir) #ifdef FEAT_COMPL_FUNC case CTRL_X_FUNCTION: - num_matches = expand_by_function(first_match_pos.col, - compl_pattern, &matches); - if (num_matches > 0) - ins_compl_add_matches(num_matches, matches, dir); - break; -#endif - case CTRL_X_OCCULT: - num_matches = expand_occult(first_match_pos.lnum, - first_match_pos.col, compl_pattern, &matches); + num_matches = expand_by_function(type, compl_pattern, &matches); if (num_matches > 0) ins_compl_add_matches(num_matches, matches, dir); break; +#endif case CTRL_X_SPELL: #ifdef FEAT_SYN_HL @@ -3302,7 +3273,7 @@ ins_complete(c) compl_col = compl_startpos.col; } compl_length = curwin->w_cursor.col - (int)compl_col; - /* IObuf is used to add a "word from the next line" would we + /* IObuff is used to add a "word from the next line" would we * have enough space? just being paranoic */ #define MIN_SPACE 75 if (compl_length > (IOSIZE - MIN_SPACE)) @@ -3486,27 +3457,31 @@ ins_complete(c) compl_col = startcol; compl_length = curs_col - startcol; } -#ifdef FEAT_COMPL_FUNC - else if (ctrl_x_mode == CTRL_X_FUNCTION) + else if (ctrl_x_mode == CTRL_X_FUNCTION || ctrl_x_mode == CTRL_X_OCCULT) { +#ifdef FEAT_COMPL_FUNC /* - * Call user defined function 'completefunc' with "a:findstart" is - * 1 to obtain the length of text to use for completion. + * Call user defined function 'completefunc' with "a:findstart" + * set to 1 to obtain the length of text to use for completion. */ - char_u colbuf[30]; - char_u *args[3]; + char_u *args[2]; int col; - - /* Call 'completefunc' and get pattern length as a string */ - if (*curbuf->b_p_cfu == NUL) + char_u *funcname; + pos_T pos; + + /* Call 'completefunc' or 'occultfunc' and get pattern length as a + * string */ + funcname = ctrl_x_mode == CTRL_X_FUNCTION + ? curbuf->b_p_cfu : curbuf->b_p_ofu; + if (*funcname == NUL) return FAIL; args[0] = (char_u *)"1"; - sprintf((char *)colbuf, "%d", (int)curs_col); - args[1] = colbuf; - args[2] = NULL; + args[1] = NULL; + pos = curwin->w_cursor; + col = call_func_retnr(funcname, 2, args, FALSE); + curwin->w_cursor = pos; /* restore the cursor position */ - col = call_func_retnr(curbuf->b_p_cfu, 3, args, FALSE); if (col < 0) return FAIL; compl_col = col; @@ -3519,19 +3494,7 @@ ins_complete(c) compl_length = curs_col - compl_col; compl_pattern = vim_strnsave(line + compl_col, compl_length); if (compl_pattern == NULL) - return FAIL; - } #endif - else if (ctrl_x_mode == CTRL_X_OCCULT) - { - /* TODO: let language-specific function handle locating the text - * to be completed. */ - while (--startcol >= 0 && vim_isIDc(line[startcol])) - ; - compl_col += ++startcol; - compl_length = (int)curs_col - startcol; - compl_pattern = vim_strnsave(line + compl_col, compl_length); - if (compl_pattern == NULL) return FAIL; } else if (ctrl_x_mode == CTRL_X_SPELL) diff --git a/src/ex_getln.c b/src/ex_getln.c index cd40a689d..c6190bed6 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -2150,7 +2150,8 @@ redraw: return (char_u *)line_ga.ga_data; } -#ifdef CURSOR_SHAPE +# if defined(MCH_CURSOR_SHAPE) || defined(FEAT_GUI) \ + || defined(FEAT_MOUSESHAPE) || defined(PROTO) /* * Return TRUE if ccline.overstrike is on. */ diff --git a/src/gui_mac.c b/src/gui_mac.c index 9253aa101..50e96695e 100644 --- a/src/gui_mac.c +++ b/src/gui_mac.c @@ -4930,16 +4930,6 @@ clip_mch_request_selection(cbd) #endif tempclip[scrapSize] = 0; - searchCR = (char *)tempclip; - while (searchCR != NULL) - { - searchCR = strchr(searchCR, '\r'); - - if (searchCR != NULL) - searchCR[0] = '\n'; - - } - #if defined(FEAT_MBYTE) && defined(USE_CARBONIZED) /* Convert from utf-16 (clipboard) */ size_t encLen = 0; @@ -4951,6 +4941,17 @@ clip_mch_request_selection(cbd) tempclip = to; } #endif + + searchCR = (char *)tempclip; + while (searchCR != NULL) + { + searchCR = strchr(searchCR, '\r'); + + if (searchCR != NULL) + searchCR[0] = '\n'; + + } + clip_yank_selection(type, tempclip, scrapSize, cbd); vim_free(tempclip); diff --git a/src/gui_w48.c b/src/gui_w48.c index 5649aeb18..03b7d7175 100644 --- a/src/gui_w48.c +++ b/src/gui_w48.c @@ -105,6 +105,7 @@ typedef int LPSTR; typedef int LPWINDOWPOS; typedef int LPWORD; typedef int LRESULT; +typedef int HRESULT; # undef MSG typedef int MSG; typedef int NEWTEXTMETRIC; diff --git a/src/if_mzsch.c b/src/if_mzsch.c index dde31eb92..186ee66eb 100644 --- a/src/if_mzsch.c +++ b/src/if_mzsch.c @@ -956,12 +956,12 @@ do_mzscheme_command(exarg_T *eap, void *data, Scheme_Closed_Prim *what) void mzscheme_buffer_free(buf_T *buf) { - if (buf->mzscheme_ref) + if (buf->b_mzscheme_ref) { vim_mz_buffer *bp; - bp = buf->mzscheme_ref; + bp = buf->b_mzscheme_ref; bp->buf = INVALID_BUFFER_VALUE; - buf->mzscheme_ref = NULL; + buf->b_mzscheme_ref = NULL; scheme_gc_ptr_ok(bp); } } @@ -972,12 +972,12 @@ mzscheme_buffer_free(buf_T *buf) void mzscheme_window_free(win_T *win) { - if (win->mzscheme_ref) + if (win->w_mzscheme_ref) { vim_mz_window *wp; - wp = win->mzscheme_ref; + wp = win->w_mzscheme_ref; wp->win = INVALID_WINDOW_VALUE; - win->mzscheme_ref = NULL; + win->w_mzscheme_ref = NULL; scheme_gc_ptr_ok(wp); } } @@ -1462,21 +1462,21 @@ window_new(win_T *win) vim_mz_window *self; /* We need to handle deletion of windows underneath us. - * If we add a "mzscheme_ref" field to the win_T structure, + * If we add a "w_mzscheme_ref" field to the win_T structure, * then we can get at it in win_free() in vim. * * On a win_free() we set the Scheme object's win_T *field * to an invalid value. We trap all uses of a window * object, and reject them if the win_T *field is invalid. */ - if (win->mzscheme_ref) - return win->mzscheme_ref; + if (win->w_mzscheme_ref != NULL) + return win->w_mzscheme_ref; self = scheme_malloc_fail_ok(scheme_malloc, sizeof(vim_mz_window)); vim_memset(self, 0, sizeof(vim_mz_window)); scheme_dont_gc_ptr(self); /* because win isn't visible to GC */ - win->mzscheme_ref = self; + win->w_mzscheme_ref = self; self->win = win; self->tag = mz_window_type; @@ -1787,17 +1787,17 @@ buffer_new(buf_T *buf) vim_mz_buffer *self; /* We need to handle deletion of buffers underneath us. - * If we add a "mzscheme_buf" field to the buf_T structure, + * If we add a "b_mzscheme_ref" field to the buf_T structure, * then we can get at it in buf_freeall() in vim. */ - if (buf->mzscheme_ref) - return buf->mzscheme_ref; + if (buf->b_mzscheme_ref) + return buf->b_mzscheme_ref; self = scheme_malloc_fail_ok(scheme_malloc, sizeof(vim_mz_buffer)); vim_memset(self, 0, sizeof(vim_mz_buffer)); scheme_dont_gc_ptr(self); /* because buf isn't visible to GC */ - buf->mzscheme_ref = self; + buf->b_mzscheme_ref = self; self->buf = buf; self->tag = mz_buffer_type; @@ -2620,20 +2620,20 @@ static Vim_Prim prims[]= static vim_mz_buffer * get_vim_curr_buffer(void) { - if (!curbuf->mzscheme_ref) + if (curbuf->b_mzscheme_ref == NULL) return (vim_mz_buffer *)buffer_new(curbuf); else - return (vim_mz_buffer *)curbuf->mzscheme_ref; + return (vim_mz_buffer *)curbuf->b_mzscheme_ref; } /* return MzScheme wrapper for curwin */ static vim_mz_window * get_vim_curr_window(void) { - if (!curwin->mzscheme_ref) + if (curwin->w_mzscheme_ref == NULL) return (vim_mz_window *)window_new(curwin); else - return (vim_mz_window *)curwin->mzscheme_ref; + return (vim_mz_window *)curwin->w_mzscheme_ref; } static void diff --git a/src/if_perl.xs b/src/if_perl.xs index 072ddcdc8..0f1dcd27f 100644 --- a/src/if_perl.xs +++ b/src/if_perl.xs @@ -437,37 +437,50 @@ eval_to_string(arg, nextcmd) /* * Create a new reference to an SV pointing to the SCR structure - * The perl_private part of the SCR structure points to the SV, - * so there can only be one such SV for a particular SCR structure. - * When the last reference has gone (DESTROY is called), - * perl_private is reset; When the screen goes away before + * The b_perl_private/w_perl_private part of the SCR structure points to the + * SV, so there can only be one such SV for a particular SCR structure. When + * the last reference has gone (DESTROY is called), + * b_perl_private/w_perl_private is reset; When the screen goes away before * all references are gone, the value of the SV is reset; * any subsequent use of any of those reference will produce * a warning. (see typemap) */ -#define newANYrv(TYPE, TNAME) \ -static SV * \ -new ## TNAME ## rv(rv, ptr) \ - SV *rv; \ - TYPE *ptr; \ -{ \ - sv_upgrade(rv, SVt_RV); \ - if (!ptr->perl_private) \ - { \ - ptr->perl_private = newSV(0); \ - sv_setiv(ptr->perl_private, (IV)ptr); \ - } \ - else \ - SvREFCNT_inc(ptr->perl_private); \ - SvRV(rv) = ptr->perl_private; \ - SvROK_on(rv); \ - return sv_bless(rv, gv_stashpv("VI" #TNAME, TRUE)); \ + + static SV * +newWINrv(rv, ptr) + SV *rv; + win_T *ptr; +{ + sv_upgrade(rv, SVt_RV); + if (ptr->w_perl_private == NULL) + { + ptr->w_perl_private = newSV(0); + sv_setiv(ptr->w_perl_private, (IV)ptr); + } + else + SvREFCNT_inc(ptr->w_perl_private); + SvRV(rv) = ptr->w_perl_private; + SvROK_on(rv); + return sv_bless(rv, gv_stashpv("VIWIN", TRUE)); } -/* LINTED: avoid warning: cast from pointer to integer of different size */ -newANYrv(win_T, WIN) -/* LINTED: avoid warning: cast from pointer to integer of different size */ -newANYrv(buf_T, BUF) + static SV * +newBUFrv(rv, ptr) + SV *rv; + buf_T *ptr; +{ + sv_upgrade(rv, SVt_RV); + if (ptr->b_perl_private == NULL) + { + ptr->b_perl_private = newSV(0); + sv_setiv(ptr->b_perl_private, (IV)ptr); + } + else + SvREFCNT_inc(ptr->b_perl_private); + SvRV(rv) = ptr->b_perl_private; + SvROK_on(rv); + return sv_bless(rv, gv_stashpv("VIBUF", TRUE)); +} /* * perl_win_free @@ -477,8 +490,8 @@ newANYrv(buf_T, BUF) perl_win_free(wp) win_T *wp; { - if (wp->perl_private) - sv_setiv((SV *)wp->perl_private, 0); + if (wp->w_perl_private) + sv_setiv((SV *)wp->w_perl_private, 0); return; } @@ -486,8 +499,8 @@ perl_win_free(wp) perl_buf_free(bp) buf_T *bp; { - if (bp->perl_private) - sv_setiv((SV *)bp->perl_private, 0); + if (bp->b_perl_private) + sv_setiv((SV *)bp->b_perl_private, 0); return; } @@ -915,7 +928,7 @@ DESTROY(win) CODE: if (win_valid(win)) - win->perl_private = 0; + win->w_perl_private = 0; SV * Buffer(win) @@ -979,7 +992,7 @@ DESTROY(vimbuf) CODE: if (buf_valid(vimbuf)) - vimbuf->perl_private = 0; + vimbuf->b_perl_private = 0; void Name(vimbuf) diff --git a/src/if_python.c b/src/if_python.c index 1b5d0e33b..623731a55 100644 --- a/src/if_python.c +++ b/src/if_python.c @@ -1305,12 +1305,12 @@ static PyTypeObject BufferType = { BufferNew(buf_T *buf) { /* We need to handle deletion of buffers underneath us. - * If we add a "python_ref" field to the buf_T structure, + * If we add a "b_python_ref" field to the buf_T structure, * then we can get at it in buf_freeall() in vim. We then * need to create only ONE Python object per buffer - if * we try to create a second, just INCREF the existing one * and return it. The (single) Python object referring to - * the buffer is stored in "python_ref". + * the buffer is stored in "b_python_ref". * Question: what to do on a buf_freeall(). We'll probably * have to either delete the Python object (DECREF it to * zero - a bad idea, as it leaves dangling refs!) or @@ -1320,9 +1320,9 @@ BufferNew(buf_T *buf) BufferObject *self; - if (buf->python_ref) + if (buf->b_python_ref != NULL) { - self = buf->python_ref; + self = buf->b_python_ref; Py_INCREF(self); } else @@ -1331,7 +1331,7 @@ BufferNew(buf_T *buf) if (self == NULL) return NULL; self->buf = buf; - buf->python_ref = self; + buf->b_python_ref = self; } return (PyObject *)(self); @@ -1343,7 +1343,7 @@ BufferDestructor(PyObject *self) BufferObject *this = (BufferObject *)(self); if (this->buf && this->buf != INVALID_BUFFER_VALUE) - this->buf->python_ref = NULL; + this->buf->b_python_ref = NULL; PyMem_DEL(self); } @@ -1788,12 +1788,12 @@ static PyTypeObject WindowType = { WindowNew(win_T *win) { /* We need to handle deletion of windows underneath us. - * If we add a "python_ref" field to the win_T structure, + * If we add a "w_python_ref" field to the win_T structure, * then we can get at it in win_free() in vim. We then * need to create only ONE Python object per window - if * we try to create a second, just INCREF the existing one * and return it. The (single) Python object referring to - * the window is stored in "python_ref". + * the window is stored in "w_python_ref". * On a win_free() we set the Python object's win_T* field * to an invalid value. We trap all uses of a window * object, and reject them if the win_T* field is invalid. @@ -1801,9 +1801,9 @@ WindowNew(win_T *win) WindowObject *self; - if (win->python_ref) + if (win->w_python_ref) { - self = win->python_ref; + self = win->w_python_ref; Py_INCREF(self); } else @@ -1812,7 +1812,7 @@ WindowNew(win_T *win) if (self == NULL) return NULL; self->win = win; - win->python_ref = self; + win->w_python_ref = self; } return (PyObject *)(self); @@ -1824,7 +1824,7 @@ WindowDestructor(PyObject *self) WindowObject *this = (WindowObject *)(self); if (this->win && this->win != INVALID_WINDOW_VALUE) - this->win->python_ref = NULL; + this->win->w_python_ref = NULL; PyMem_DEL(self); } @@ -2144,11 +2144,11 @@ CurrentSetattr(PyObject *self, char *name, PyObject *value) void python_buffer_free(buf_T *buf) { - if (buf->python_ref) + if (buf->b_python_ref != NULL) { - BufferObject *bp = buf->python_ref; + BufferObject *bp = buf->b_python_ref; bp->buf = INVALID_BUFFER_VALUE; - buf->python_ref = NULL; + buf->b_python_ref = NULL; } } @@ -2156,11 +2156,11 @@ python_buffer_free(buf_T *buf) void python_window_free(win_T *win) { - if (win->python_ref) + if (win->w_python_ref != NULL) { - WindowObject *wp = win->python_ref; + WindowObject *wp = win->w_python_ref; wp->win = INVALID_WINDOW_VALUE; - win->python_ref = NULL; + win->w_python_ref = NULL; } } #endif diff --git a/src/if_ruby.c b/src/if_ruby.c index 4396b467d..f09b220ae 100644 --- a/src/if_ruby.c +++ b/src/if_ruby.c @@ -388,17 +388,19 @@ void ex_rubyfile(exarg_T *eap) void ruby_buffer_free(buf_T *buf) { - if (buf->ruby_ref) { - rb_hash_aset(objtbl, rb_obj_id((VALUE) buf->ruby_ref), Qnil); - RDATA(buf->ruby_ref)->data = NULL; + if (buf->b_ruby_ref) + { + rb_hash_aset(objtbl, rb_obj_id((VALUE) buf->b_ruby_ref), Qnil); + RDATA(buf->b_ruby_ref)->data = NULL; } } void ruby_window_free(win_T *win) { - if (win->ruby_ref) { - rb_hash_aset(objtbl, rb_obj_id((VALUE) win->ruby_ref), Qnil); - RDATA(win->ruby_ref)->data = NULL; + if (win->w_ruby_ref) + { + rb_hash_aset(objtbl, rb_obj_id((VALUE) win->w_ruby_ref), Qnil); + RDATA(win->w_ruby_ref)->data = NULL; } } @@ -532,12 +534,14 @@ static VALUE vim_evaluate(VALUE self, VALUE str) static VALUE buffer_new(buf_T *buf) { - if (buf->ruby_ref) { - return (VALUE) buf->ruby_ref; + if (buf->b_ruby_ref) + { + return (VALUE) buf->b_ruby_ref; } - else { + else + { VALUE obj = Data_Wrap_Struct(cBuffer, 0, 0, buf); - buf->ruby_ref = (void *) obj; + buf->b_ruby_ref = (void *) obj; rb_hash_aset(objtbl, rb_obj_id(obj), obj); return obj; } @@ -688,12 +692,14 @@ static VALUE buffer_append(VALUE self, VALUE num, VALUE str) static VALUE window_new(win_T *win) { - if (win->ruby_ref) { - return (VALUE) win->ruby_ref; + if (win->w_ruby_ref) + { + return (VALUE) win->w_ruby_ref; } - else { + else + { VALUE obj = Data_Wrap_Struct(cVimWindow, 0, 0, win); - win->ruby_ref = (void *) obj; + win->w_ruby_ref = (void *) obj; rb_hash_aset(objtbl, rb_obj_id(obj), obj); return obj; } diff --git a/src/if_tcl.c b/src/if_tcl.c index 8f75e0d08..30f7d9857 100644 --- a/src/if_tcl.c +++ b/src/if_tcl.c @@ -113,9 +113,10 @@ static tcl_info tclinfo = { NULL, 0, 0, 0, NULL, NULL }; /* * List of Tcl interpreters who reference a vim window or buffer. - * Each buffer and window has it's own list in the tcl_ref struct member. - * We need this because Tcl can create sub-interpreters with the "interp" - * command, and each interpreter can reference all windows and buffers. + * Each buffer and window has it's own list in the w_tcl_ref or b_tcl_ref + * struct member. We need this because Tcl can create sub-interpreters with + * the "interp" command, and each interpreter can reference all windows and + * buffers. */ struct ref { @@ -932,7 +933,7 @@ bufselfcmd(ref, interp, objc, objv) err = TCL_ERROR; break; } - err = tclsetdelcmd(interp, buf->tcl_ref, (void *)buf, objv[2]); + err = tclsetdelcmd(interp, buf->b_tcl_ref, (void *)buf, objv[2]); break; default: @@ -1058,7 +1059,7 @@ winselfcmd(ref, interp, objc, objv) err = TCL_ERROR; break; } - err = tclsetdelcmd(interp, win->tcl_ref, (void *)win, objv[2]); + err = tclsetdelcmd(interp, win->w_tcl_ref, (void *)win, objv[2]); break; case WIN_CURSOR: @@ -1465,7 +1466,8 @@ delref(cref) static char * tclgetref(interp, refstartP, prefix, vimobj, proc) Tcl_Interp *interp; - void **refstartP; /* ptr to tcl_ref member of win_T/buf_T struct */ + void **refstartP; /* ptr to w_tcl_ref/b_tcl-ref member of + win_T/buf_T struct */ char *prefix; /* "win" or "buf" */ void *vimobj; /* win_T* or buf_T* */ Tcl_ObjCmdProc *proc; /* winselfcmd or bufselfcmd */ @@ -1533,7 +1535,7 @@ tclgetwindow(interp, win) Tcl_Interp *interp; win_T *win; { - return tclgetref(interp, &(win->tcl_ref), "win", (void *)win, winselfcmd); + return tclgetref(interp, &(win->w_tcl_ref), "win", (void *)win, winselfcmd); } static char * @@ -1541,7 +1543,7 @@ tclgetbuffer(interp, buf) Tcl_Interp *interp; buf_T *buf; { - return tclgetref(interp, &(buf->tcl_ref), "buf", (void *)buf, bufselfcmd); + return tclgetref(interp, &(buf->b_tcl_ref), "buf", (void *)buf, bufselfcmd); } static int @@ -2095,12 +2097,12 @@ tcl_buffer_free(buf) return; #endif - reflist = (struct ref*)(buf->tcl_ref); + reflist = (struct ref *)(buf->b_tcl_ref); if (reflist != &refsdeleted) { - buf->tcl_ref = (void *)&refsdeleted; + buf->b_tcl_ref = (void *)&refsdeleted; tcldelallrefs(reflist); - buf->tcl_ref = NULL; + buf->b_tcl_ref = NULL; } } @@ -2116,12 +2118,12 @@ tcl_window_free(win) return; #endif - reflist = (struct ref*)(win->tcl_ref); + reflist = (struct ref*)(win->w_tcl_ref); if (reflist != &refsdeleted) { - win->tcl_ref = (void *)&refsdeleted; + win->w_tcl_ref = (void *)&refsdeleted; tcldelallrefs(reflist); - win->tcl_ref = NULL; + win->w_tcl_ref = NULL; } } #endif diff --git a/src/if_xcmdsrv.c b/src/if_xcmdsrv.c index 63faf0c18..d19f50dd8 100644 --- a/src/if_xcmdsrv.c +++ b/src/if_xcmdsrv.c @@ -1273,7 +1273,7 @@ serverEventProc(dpy, eventPtr) ga_grow(&reply, 50 + STRLEN(p_enc)); sprintf(reply.ga_data, "%cr%c-E %s%c-s %s%c-r ", 0, 0, p_enc, 0, serial, 0); - reply.ga_len = 14 + STRLEN(serial); + reply.ga_len = 14 + STRLEN(p_enc) + STRLEN(serial); #else ga_grow(&reply, 50); sprintf(reply.ga_data, "%cr%c-s %s%c-r ", 0, 0, serial, 0); diff --git a/src/mbyte.c b/src/mbyte.c index bf86b5e10..abdb9e8b3 100644 --- a/src/mbyte.c +++ b/src/mbyte.c @@ -2987,16 +2987,12 @@ enc_locale() # ifdef HAVE_NL_LANGINFO_CODESET if ((s = nl_langinfo(CODESET)) == NULL || *s == NUL) # endif -# ifdef MACOS - s = "utf-8"; -# else # if defined(HAVE_LOCALE_H) || defined(X_LOCALE) if ((s = setlocale(LC_CTYPE, NULL)) == NULL || *s == NUL) # endif if ((s = getenv("LC_ALL")) == NULL || *s == NUL) if ((s = getenv("LC_CTYPE")) == NULL || *s == NUL) s = getenv("LANG"); -# endif if (s == NULL || *s == NUL) return FAIL; diff --git a/src/option.c b/src/option.c index bbf564a50..bfe3ed6d0 100644 --- a/src/option.c +++ b/src/option.c @@ -109,6 +109,7 @@ typedef enum , PV_NU , PV_NUW , PV_OFT + , PV_OFU , PV_PATH , PV_PI , PV_PVW @@ -181,6 +182,7 @@ static char_u *p_cpt; #endif #ifdef FEAT_COMPL_FUNC static char_u *p_cfu; +static char_u *p_ofu; #endif static int p_eol; static int p_et; @@ -1601,6 +1603,15 @@ static struct vimoption (char_u *)NULL, PV_NONE, #endif {(char_u *)8L, (char_u *)4L}}, + {"occultfunc", "ofu", P_STRING|P_ALLOCED|P_VI_DEF|P_SECURE, +#ifdef FEAT_COMPL_FUNC + (char_u *)&p_ofu, PV_OFU, + {(char_u *)"", (char_u *)0L} +#else + (char_u *)NULL, PV_NONE, + {(char_u *)0L, (char_u *)0L} +#endif + }, {"open", NULL, P_BOOL|P_VI_DEF, (char_u *)NULL, PV_NONE, {(char_u *)FALSE, (char_u *)0L}}, @@ -4740,6 +4751,7 @@ check_buf_options(buf) #endif #ifdef FEAT_COMPL_FUNC check_string_option(&buf->b_p_cfu); + check_string_option(&buf->b_p_ofu); #endif #ifdef FEAT_KEYMAP check_string_option(&buf->b_p_keymap); @@ -8447,6 +8459,7 @@ get_varp(p) #endif #ifdef FEAT_COMPL_FUNC case PV_CFU: return (char_u *)&(curbuf->b_p_cfu); + case PV_OFU: return (char_u *)&(curbuf->b_p_ofu); #endif case PV_EOL: return (char_u *)&(curbuf->b_p_eol); case PV_ET: return (char_u *)&(curbuf->b_p_et); @@ -8778,6 +8791,7 @@ buf_copy_options(buf, flags) #endif #ifdef FEAT_COMPL_FUNC buf->b_p_cfu = vim_strsave(p_cfu); + buf->b_p_ofu = vim_strsave(p_ofu); #endif buf->b_p_sts = p_sts; buf->b_p_sts_nopaste = p_sts_nopaste; diff --git a/src/po/it.po b/src/po/it.po index ee0becf45..ed25f47fc 100644 --- a/src/po/it.po +++ b/src/po/it.po @@ -13,8 +13,8 @@ msgid "" msgstr "" "Project-Id-Version: vim 7.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-07-02 18:00+0200\n" -"PO-Revision-Date: 2005-07-02 18:00+0200\n" +"POT-Creation-Date: 2005-08-25 09:30+0200\n" +"PO-Revision-Date: 2005-08-29 21:30+0200\n" "Last-Translator: Vlad Sandrini <marco@sandrini.biz>\n" "Language-Team: Italian" " Antonio Colombo <azc10@yahoo.com>" @@ -224,13 +224,8 @@ msgid " Keyword completion (^N^P)" msgstr " Completamento Keyword (^N^P)" #. ctrl_x_mode == 0, ^P/^N compl. -msgid " ^X mode (^E^Y^L^]^F^I^K^D^U^V^N^P)" -msgstr " modalità ^X (^E^Y^L^]^F^I^K^D^U^V^N^P)" - -#. Scroll has it's own msgs, in it's place there is the msg for local -#. * ctrl_x_mode = 0 (eg continue_status & CONT_LOCAL) -- Acevedo -msgid " Keyword Local completion (^N^P)" -msgstr " Completamento Keyword Locale (^N^P)" +msgid " ^X mode (^]^D^E^F^I^K^L^N^O^P^S^U^V^Y)" +msgstr " modalità ^X (^]^D^E^F^I^K^L^N^O^P^S^U^V^Y)" msgid " Whole line completion (^L^N^P)" msgstr " Completamento Linea Intera (^L^N^P)" @@ -259,15 +254,24 @@ msgstr " Completamento linea comandi (^V^N^P)" msgid " User defined completion (^U^N^P)" msgstr " Completamento definito dall'utente (^U^N^P)" +msgid " Occult completion (^O^N^P)" +msgstr " Completamento nascosto (^O^N^P)" + +msgid " Spelling suggestion (^S^N^P)" +msgstr " Suggerimento ortografico (^S^N^P)" + +msgid " Keyword Local completion (^N^P)" +msgstr " Completamento Keyword Locale (^N^P)" + msgid "Hit end of paragraph" msgstr "Giunto alla fine del paragrafo" -msgid "'thesaurus' option is empty" -msgstr "l'opzione 'thesaurus' è vuota" - msgid "'dictionary' option is empty" msgstr "l'opzione 'dictionary' è vuota" +msgid "'thesaurus' option is empty" +msgstr "l'opzione 'thesaurus' è vuota" + #, c-format msgid "Scanning dictionary: %s" msgstr "Scansione dizionario: %s" @@ -669,6 +673,13 @@ msgstr "" "\n" "# variabili globali:\n" +msgid "" +"\n" +"\tLast set from " +msgstr "" +"\n" +"\tImpostata l'ultima volta da " + msgid "Entering Debug mode. Type \"cont\" to continue." msgstr "Entro modalità Debug. Batti \"cont\" per continuare." @@ -779,90 +790,6 @@ msgid "E168: :finish used outside of a sourced file" msgstr "E168: :finish usato fuori da file di comandi" #, c-format -msgid "Page %d" -msgstr "Pagina %d" - -msgid "No text to be printed" -msgstr "Manca testo da stampare" - -#, c-format -msgid "Printing page %d (%d%%)" -msgstr "Sto stampando pagina %d (%d%%)" - -#, c-format -msgid " Copy %d of %d" -msgstr " Copia %d di %d" - -#, c-format -msgid "Printed: %s" -msgstr "Stampato: %s" - -msgid "Printing aborted" -msgstr "Stampa non completata'" - -msgid "E455: Error writing to PostScript output file" -msgstr "E455: Errore in scrittura a file PostScript di output" - -#, c-format -msgid "E624: Can't open file \"%s\"" -msgstr "E624: Non riesco ad aprire il file \"%s\"" - -#, c-format -msgid "E457: Can't read PostScript resource file \"%s\"" -msgstr "E457: Non riesco a leggere file risorse PostScript \"%s\"" - -#, c-format -msgid "E618: file \"%s\" is not a PostScript resource file" -msgstr "E618: file \"%s\" non è un file di risorse PostScript" - -#, c-format -msgid "E619: file \"%s\" is not a supported PostScript resource file" -msgstr "E619: file \"%s\" non è un file di risorse PostScript supportato" - -#, c-format -msgid "E621: \"%s\" resource file has wrong version" -msgstr "E621: il file di risorse \"%s\" ha una versione sbagliata" - -msgid "E673: Incompatible multi-byte encoding and character set." -msgstr "E673: Codifica e set di caratteri multi-byte non compatibili." - -msgid "E674: printmbcharset cannot be empty with multi-byte encoding." -msgstr "E674: printmbcharset non può essere nullo con codifica multi-byte." - -msgid "E675: No default font specified for multi-byte printing." -msgstr "E675: Font predefinito non specificato per stampa multi-byte." - -msgid "E324: Can't open PostScript output file" -msgstr "E324: Non riesco ad aprire file PostScript di output" - -#, c-format -msgid "E456: Can't open file \"%s\"" -msgstr "E456: Non riesco ad aprire il file \"%s\"" - -msgid "E456: Can't find PostScript resource file \"prolog.ps\"" -msgstr "E456: Non trovo file risorse PostScript \"prolog.ps\"" - -msgid "E456: Can't find PostScript resource file \"cidfont.ps\"" -msgstr "E456: Non trovo file risorse PostScript \"cidfont.ps\"" - -#, c-format -msgid "E456: Can't find PostScript resource file \"%s.ps\"" -msgstr "E456: Non trovo file risorse PostScript \"%s.ps\"" - -#, c-format -msgid "E620: Unable to convert to print encoding \"%s\"" -msgstr "E620: Impossibile convertire a codifica di stampa \"%s\"" - -msgid "Sending to printer..." -msgstr "Invio a stampante..." - -msgid "E365: Failed to print PostScript file" -msgstr "E365: Non riesco ad aprire file PostScript" - -msgid "Print job sent." -msgstr "Richiesta di stampa inviata." - -#, c-format msgid "Current %slanguage: \"%s\"" msgstr "Lingua %sin uso: \"%s\"" @@ -965,6 +892,14 @@ msgid "Overwrite existing file \"%s\"?" msgstr "Riscrittura del file esistente \"%s\"?" #, c-format +msgid "Swap file \"%s\" exists, overwrite anyway?" +msgstr "Il file swap \"%s\" esiste già, sovrascrivo?" + +#, c-format +msgid "E768: Swap file exists: %s (:silent! overrides)" +msgstr "E768: File swap esistente: %s (:silent! per sovrascriverlo)" + +#, c-format msgid "E141: No file name for buffer %ld" msgstr "E141: Manca nome file per il buffer %ld" @@ -1221,7 +1156,7 @@ msgstr "E182: Nome comando non valido" msgid "E183: User defined commands must start with an uppercase letter" msgstr "" -"E183 I comandi definiti dall'utente devono iniziare con lettera maiuscola" +"E183: I comandi definiti dall'utente devono iniziare con lettera maiuscola" #, c-format msgid "E184: No such user-defined command: %s" @@ -2163,6 +2098,99 @@ msgstr "Dimensione:" msgid "E256: Hangul automata ERROR" msgstr "E256: ERRORE processore Hangul" +msgid "E550: Missing colon" +msgstr "E550: Manca ':'" + +msgid "E551: Illegal component" +msgstr "E551: Componente non valido" + +msgid "E552: digit expected" +msgstr "E552: aspettavo un numero" + +#, c-format +msgid "Page %d" +msgstr "Pagina %d" + +msgid "No text to be printed" +msgstr "Manca testo da stampare" + +#, c-format +msgid "Printing page %d (%d%%)" +msgstr "Sto stampando pagina %d (%d%%)" + +#, c-format +msgid " Copy %d of %d" +msgstr " Copia %d di %d" + +#, c-format +msgid "Printed: %s" +msgstr "Stampato: %s" + +msgid "Printing aborted" +msgstr "Stampa non completata'" + +msgid "E455: Error writing to PostScript output file" +msgstr "E455: Errore in scrittura a file PostScript di output" + +#, c-format +msgid "E624: Can't open file \"%s\"" +msgstr "E624: Non riesco ad aprire il file \"%s\"" + +#, c-format +msgid "E457: Can't read PostScript resource file \"%s\"" +msgstr "E457: Non riesco a leggere file risorse PostScript \"%s\"" + +#, c-format +msgid "E618: file \"%s\" is not a PostScript resource file" +msgstr "E618: file \"%s\" non è un file di risorse PostScript" + +#, c-format +msgid "E619: file \"%s\" is not a supported PostScript resource file" +msgstr "E619: file \"%s\" non è un file di risorse PostScript supportato" + +#, c-format +msgid "E621: \"%s\" resource file has wrong version" +msgstr "E621: il file di risorse \"%s\" ha una versione sbagliata" + +msgid "E673: Incompatible multi-byte encoding and character set." +msgstr "E673: Codifica e set di caratteri multi-byte non compatibili." + +msgid "E674: printmbcharset cannot be empty with multi-byte encoding." +msgstr "E674: printmbcharset non può essere nullo con codifica multi-byte." + +msgid "E675: No default font specified for multi-byte printing." +msgstr "E675: Font predefinito non specificato per stampa multi-byte." + +msgid "E324: Can't open PostScript output file" +msgstr "E324: Non riesco ad aprire file PostScript di output" + +#, c-format +msgid "E456: Can't open file \"%s\"" +msgstr "E456: Non riesco ad aprire il file \"%s\"" + +msgid "E456: Can't find PostScript resource file \"prolog.ps\"" +msgstr "E456: Non trovo file risorse PostScript \"prolog.ps\"" + +msgid "E456: Can't find PostScript resource file \"cidfont.ps\"" +msgstr "E456: Non trovo file risorse PostScript \"cidfont.ps\"" + +#, c-format +msgid "E456: Can't find PostScript resource file \"%s.ps\"" +msgstr "E456: Non trovo file risorse PostScript \"%s.ps\"" + +#, c-format +msgid "E620: Unable to convert to print encoding \"%s\"" +msgstr "E620: Impossibile convertire a codifica di stampa \"%s\"" + +msgid "Sending to printer..." +msgstr "Invio a stampante..." + +msgid "E365: Failed to print PostScript file" +msgstr "E365: Non riesco ad aprire file PostScript" + +msgid "Print job sent." +msgstr "Richiesta di stampa inviata." + msgid "Add a new database" msgstr "Aggiungi un nuovo database" @@ -2612,8 +2640,8 @@ msgstr "E573: Identificativo di server non valido: %s" msgid "E251: VIM instance registry property is badly formed. Deleted!" msgstr "E251: Proprietà registry relative a VIM non adeguate. Cancellate!" -msgid "Unknown option" -msgstr "Opzione inesistente" +msgid "Unknown option argument" +msgstr "Argomento di opzione sconosciuto" msgid "Too many edit arguments" msgstr "Troppi argomenti di edit" @@ -2621,8 +2649,8 @@ msgstr "Troppi argomenti di edit" msgid "Argument missing after" msgstr "Argomento mancante dopo" -msgid "Garbage after option" -msgstr "Spazzatura dopo opzione" +msgid "Garbage after option argument" +msgstr "Spazzatura dopo argomento di opzione" msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments" msgstr "Troppi argomenti \"+command\", \"-c command\" o \"--cmd command\"" @@ -2630,6 +2658,10 @@ msgstr "Troppi argomenti \"+command\", \"-c command\" o \"--cmd command\"" msgid "Invalid argument for" msgstr "Argomento non valido per" +#, c-format +msgid "%d files to edit\n" +msgstr "%d file da elaborare\n" + msgid "This Vim was not compiled with the diff feature." msgstr "Vim non compilato con opzione 'diff'." @@ -2651,10 +2683,6 @@ msgstr "Vim: Attenzione: Output non diretto a un terminale\n" msgid "Vim: Warning: Input is not from a terminal\n" msgstr "Vim: Attenzione: Input non proveniente da un terminale\n" -#, c-format -msgid "%d files to edit\n" -msgstr "%d file da elaborare\n" - #. just in case.. msgid "pre-vimrc command line" msgstr "linea comandi prima di vimrc" @@ -3549,8 +3577,9 @@ msgstr "" msgid "E328: Menu only exists in another mode" msgstr "E328: I Menu esistono solo in un'altra modalità" -msgid "E329: No menu of that name" -msgstr "E329: Nessun Menu con quel nome" +#, c-format +msgid "E329: No menu \"%s\"" +msgstr "E329: Nessun Menu \"%s\"" msgid "E330: Menu path must not lead to a sub-menu" msgstr "E330: Il percorso del Menu non deve condurre a un sotto-Menu" @@ -3609,17 +3638,14 @@ msgstr "Manutentore messaggi: Vlad Sandrini <marco@sandrini.biz>" msgid "Interrupt: " msgstr "Interruzione: " -msgid "Hit ENTER or type command to continue" -msgstr "Batti INVIO o un comando per proseguire" +msgid "Press ENTER or type command to continue" +msgstr "Premi INVIO o un comando per proseguire" msgid "-- More --" msgstr "-- Ancora --" -msgid " (RET/BS: line, SPACE/b: page, d/u: half page, q: quit)" -msgstr " (RET/BS: linea, SPAZIO/b: pagina, d/u: mezza pagina, q: esci)" - -msgid " (RET: line, SPACE: page, d: half page, q: quit)" -msgstr " (RET: linea, SPAZIO: pagina, d: mezza pagina, q: esci)" +msgid " SPACE/d/j: screen/page/line down, b/u/k: up, q: quit " +msgstr " SPAZIO/d/j: schermo/pagina/riga giù, b/u/k: su, q: abbandona" msgid "Question" msgstr "Domanda" @@ -3657,6 +3683,12 @@ msgstr "Apri File dialogo" msgid "E338: Sorry, no file browser in console mode" msgstr "E338: Spiacente, niente esplorazione file in modalità console" +msgid "E766: Insufficient arguments for printf()" +msgstr "E766: Argomenti non sufficienti per printf()" + +msgid "E767: Too many arguments to printf()" +msgstr "E767: Troppi argomenti per printf()" + msgid "W10: Warning: Changing a readonly file" msgstr "W10: Attenzione: Modifica a un file in sola-lettura" @@ -3776,15 +3808,6 @@ msgstr "E346: Nessun altra directory \"%s\" trovata nel 'cdpath'" msgid "E347: No more file \"%s\" found in path" msgstr "E347: Nessun altro file \"%s\" trovato nel percorso" -msgid "E550: Missing colon" -msgstr "E550: Manca ':'" - -msgid "E551: Illegal component" -msgstr "E551: Componente non valido" - -msgid "E552: digit expected" -msgstr "E552: aspettavo un numero" - #. Get here when the server can't be found. msgid "Cannot connect to Netbeans #2" msgstr "Non posso connettermi a Netbeans #2" @@ -3964,13 +3987,6 @@ msgstr "E519: Opzione non supportata" msgid "E520: Not allowed in a modeline" msgstr "E520: Non consentito in una 'modeline'" -msgid "" -"\n" -"\tLast set from " -msgstr "" -"\n" -"\tImpostata l'ultima volta da " - msgid "E521: Number required after =" msgstr "E521: Ci vuole un numero dopo =" @@ -4482,6 +4498,10 @@ msgid "E71: Invalid character after %s%%" msgstr "E71: Carattere non ammesso dopo %s%%" #, c-format +msgid "E769: Missing ] after %s[" +msgstr "E769: Manca ] dopo %s[" + +#, c-format msgid "E554: Syntax error in %s{...}" msgstr "E554: Errore sintattico in %s{...}" @@ -4607,29 +4627,51 @@ msgstr "E759: Errore di formato nel file ortografico" msgid "E758: Truncated spell file" msgstr "E758: File ortografico troncato" +#, c-format +msgid "Trailing text in %s line %d: %s" +msgstr "Testo in eccesso in %s linea %d: %s" + +#, c-format +msgid "Affix name too long in %s line %d: %s" +msgstr "Nome affisso troppo lungo in %s linea %d: %s" + +msgid "E761: Format error in affix file FOL, LOW or UPP" +msgstr "E761: Errore di formato nel file affissi FOL, LOW o UPP" + +msgid "E762: Character in FOL, LOW or UPP is out of range" +msgstr "E762: Carattere fuori intervallo in FOL, LOW o UPP" + +msgid "Compressing word tree..." +msgstr "Comprimo albero di parole..." + msgid "E756: Spell checking is not enabled" msgstr "E756: Il controllo ortografico non è abilitato" #, c-format -msgid "Warning: Cannot find word list \"%s\"" -msgstr "Attenzione: Non trovo lista parole \"%s\"" +msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\"" +msgstr "Attenzione: Non trovo lista parole \"%s.%s.spl\" o \"%s.ascii.spl\"" #, c-format msgid "Reading spell file \"%s\"" msgstr "Lettura file ortografico \"%s\"" -msgid "E757: Wrong file ID in spell file" -msgstr "E757: File ID errato nel file ortografico" +msgid "E757: This does not look like a spell file" +msgstr "E757: Questo non sembra un file ortografico" + +msgid "E771: Old spell file, needs to be updated" +msgstr "E771: File ortografico obsoleto, necessario aggiornamento" + +msgid "E772: Spell file is for newer version of Vim" +msgstr "E772: Il file ortografico è per versioni di Vim più recenti" + +msgid "E770: Unsupported section in spell file" +msgstr "E770: Sezione non supportata nel file ortografico" #, c-format msgid "Warning: region %s not supported" msgstr "Attenzione: regione %s non supportata" #, c-format -msgid "Affix name too long in %s line %d: %s" -msgstr "Nome affisso troppo lungo in %s linea %d: %s" - -#, c-format msgid "Reading affix file %s ..." msgstr "Lettura file affissi %s ..." @@ -4646,28 +4688,40 @@ msgid "Conversion in %s not supported" msgstr "Conversione in %s non supportata" #, c-format -msgid "Trailing text in %s line %d: %s" -msgstr "Testo in eccesso in %s linea %d: %s" +msgid "Invalid value for FLAG in %s line %d: %s" +msgstr "Valore di FLAG non valido in %s linea %d: %s" #, c-format -msgid "Expected Y or N in %s line %d: %s" -msgstr "Y o N deve essere presente in %s linea %d: %s" +msgid "FLAG after using flags in %s line %d: %s" +msgstr "FLAG dopo l'uso di flags in %s linea %d: %s" #, c-format -msgid "Duplicate affix in %s line %d: %s" -msgstr "Affisso duplicato in %s linea %d: %s" +msgid "Character used for SLASH must be ASCII; in %s line %d: %s" +msgstr "Il carattere usato per SLASH deve essere ASCII; in %s linea %d: %s" #, c-format -msgid "Duplicate FOL in %s line %d" -msgstr "FOL duplicato in %s linea %d" +msgid "Wrong COMPOUNDMAX value in %s line %d: %s" +msgstr "Valore errato per COMPOUNDMAX in %s linea %d: %s" #, c-format -msgid "Duplicate LOW in %s line %d" -msgstr "LOW duplicato in %s linea %d" +msgid "Wrong COMPOUNDMIN value in %s line %d: %s" +msgstr "Valore errato per COMPOUNDMIN in %s linea %d: %s" #, c-format -msgid "Duplicate UPP in %s line %d" -msgstr "UPP duplicato in %s linea %d" +msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s" +msgstr "Valore errato per COMPOUNDSYLMAX in %s linea %d: %s" + +#, c-format +msgid "Expected Y or N in %s line %d: %s" +msgstr "Y o N deve essere presente in %s linea %d: %s" + +#, c-format +msgid "Duplicate affix in %s line %d: %s" +msgstr "Affisso duplicato in %s linea %d: %s" + +#, c-format +msgid "Broken condition in %s line %d: %s" +msgstr "Condizione non rispettata in %s linea %d: %s" #, c-format msgid "Expected REP count in %s line %d" @@ -4682,8 +4736,24 @@ msgid "Duplicate character in MAP in %s line %d" msgstr "Carattere duplicato in MAP in %s linea %d" #, c-format -msgid "Unrecognized item in %s line %d: %s" -msgstr "Elemento non riconosciuto in %s linea %d: %s" +msgid "Unrecognized or duplicate item in %s line %d: %s" +msgstr "Elemento non riconosciuto o duplicato in %s linea %d: %s" + +#, c-format +msgid "Missing FOL/LOW/UPP line in %s" +msgstr "Linea FOL/LOW/UPP mancante in %s" + +msgid "COMPOUNDSYLMAX used without SYLLABLE" +msgstr "COMPOUNDSYLMAX usato senza SYLLABLE" + +msgid "Too many postponed prefixes" +msgstr "Troppi prefissi posposti" + +msgid "Too many compound flags" +msgstr "Troppi flag composti" + +msgid "Too many posponed prefixes and/or compound flags" +msgstr "Troppi prefissi posposti e/o flag composti" #, c-format msgid "Missing SOFO%s line in %s" @@ -4694,8 +4764,16 @@ msgid "Both SAL and SOFO lines in %s" msgstr "Linee sia SAL che SOFO in %s" #, c-format -msgid "Missing FOL/LOW/UPP line in %s" -msgstr "Linea FOL/LOW/UPP mancante in %s" +msgid "Flag is not a number in %s line %d: %s" +msgstr "Il flag non è un numero in %s linea %d: %s" + +#, c-format +msgid "Illegal flag in %s line %d: %s" +msgstr "Flag non ammesso in %s linea %d: %s" + +#, c-format +msgid "%s value differs from what is used in another .aff file" +msgstr "Il valore di %s è diverso da quello usato in un altro file .aff" #, c-format msgid "Reading dictionary file %s ..." @@ -4714,8 +4792,16 @@ msgid "Duplicate word in %s line %d: %s" msgstr "Parola duplicata in %s linea %d: %s" #, c-format -msgid "Ignored %d words with non-ASCII characters" -msgstr "%d parole con caratteri non-ASCII ignorate" +msgid "First duplicate word in %s line %d: %s" +msgstr "Prima parola duplicata in %s linea %d: %s" + +#, c-format +msgid "%d duplicate word(s) in %s" +msgstr "%d parole duplicate in %s" + +#, c-format +msgid "Ignored %d word(s) with non-ASCII characters in %s" +msgstr "%d parole con caratteri non-ASCII ignorate in %s" #, c-format msgid "Reading word file %s ..." @@ -4750,6 +4836,10 @@ msgid "Unrecognized flags in %s line %d: %s" msgstr "Flag non riconosciuti in %s linea %d: %s" #, c-format +msgid "Ignored %d words with non-ASCII characters" +msgstr "%d parole con caratteri non-ASCII ignorate" + +#, c-format msgid "Compressed %d of %d nodes; %d%% remaining" msgstr "%d di %d nodi compressi; ne restano %d%%" @@ -4763,8 +4853,8 @@ msgstr "E754: Sono supportate fino ad 8 regioni" msgid "E755: Invalid region in %s" msgstr "E755: Regione non valida in %s" -msgid "Compressing word tree..." -msgstr "Comprimo albero di parole..." +msgid "Warning: both compounding and NOBREAK specified" +msgstr "Attenzione: specificati sia composizione sia NOBREAK" #, c-format msgid "Writing spell file %s ..." @@ -4780,11 +4870,9 @@ msgstr "Uso stimato di memoria durante esecuzione: %d bytes" msgid "E764: 'spellfile' is not set" msgstr "E764: opzione 'spellfile' vuota" -msgid "E761: Format error in affix file FOL, LOW or UPP" -msgstr "E761: Errore di formato nel file affissi FOL, LOW o UPP" - -msgid "E762: Character in FOL, LOW or UPP is out of range" -msgstr "E762: Carattere fuori intervallo in FOL, LOW o UPP" +#, c-format +msgid "E765: 'spellfile' does not have %ld enties" +msgstr "E765: 'spellfile' non ha %ld elementi" msgid "E763: Word characters differ between spell files" msgstr "E763: Caratteri di parola differenti nei file ortografici" @@ -4792,27 +4880,19 @@ msgstr "E763: Caratteri di parola differenti nei file ortografici" msgid "Sorry, no suggestions" msgstr "Spiacente, nessun suggerimento" +#, c-format +msgid "Sorry, only %ld suggestions" +msgstr "Spiacente, solo %ld suggerimenti" + #. avoid more prompt #, c-format msgid "Change \"%.*s\" to:" msgstr "Cambiare \"%.*s\" in:" #, c-format -msgid "%2d \"%s\"" -msgstr "%2d \"%s\"" - -#, c-format msgid " < \"%.*s\"" msgstr " < \"%.*s\"" -#, c-format -msgid " (%s%d - %d)" -msgstr " (%s%d - %d)" - -#, c-format -msgid " (%d)" -msgstr " (%d)" - msgid "E752: No previous spell replacement" msgstr "E752: Nessuna sostituzione ortografica precedente" diff --git a/src/proto/gui_w32.pro b/src/proto/gui_w32.pro index 491971c54..31f44aa2e 100644 --- a/src/proto/gui_w32.pro +++ b/src/proto/gui_w32.pro @@ -82,11 +82,11 @@ void gui_mch_set_foreground __ARGS((void)); void gui_mch_drawsign __ARGS((int row, int col, int typenr)); void *gui_mch_register_sign __ARGS((char_u *signfile)); void gui_mch_destroy_sign __ARGS((void *sign)); +int multiline_balloon_available __ARGS((void)); void gui_mch_disable_beval_area __ARGS((BalloonEval *beval)); void gui_mch_enable_beval_area __ARGS((BalloonEval *beval)); void gui_mch_post_balloon __ARGS((BalloonEval *beval, char_u *mesg)); BalloonEval *gui_mch_create_beval_area __ARGS((void *target, char_u *mesg, void (*mesgCB)(BalloonEval *, int), void *clientData)); void gui_mch_destroy_beval_area __ARGS((BalloonEval *beval)); void netbeans_draw_multisign_indicator __ARGS((int row)); -int multiline_balloon_available __ARGS((void)); /* vim: set ft=c : */ diff --git a/src/proto/search.pro b/src/proto/search.pro index 15e8b3007..8e222aa2a 100644 --- a/src/proto/search.pro +++ b/src/proto/search.pro @@ -26,7 +26,7 @@ int bckend_word __ARGS((long count, int bigword, int eol)); int current_word __ARGS((oparg_T *oap, long count, int include, int bigword)); int current_sent __ARGS((oparg_T *oap, long count, int include)); int current_block __ARGS((oparg_T *oap, long count, int include, int what, int other)); -int current_tagblock __ARGS((oparg_T *oap, long count, int include)); +int current_tagblock __ARGS((oparg_T *oap, long count_arg, int include)); int current_par __ARGS((oparg_T *oap, long count, int include, int type)); int current_quote __ARGS((oparg_T *oap, long count, int include, int quotechar)); int linewhite __ARGS((linenr_T lnum)); diff --git a/src/quickfix.c b/src/quickfix.c index bf0b0b8c6..d595c4f5e 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -187,7 +187,7 @@ qf_init_ext(efile, buf, tv, errorformat, newlist, lnumfirst, lnumlast) char *pattern; } fmt_pat[FMT_PATTERNS] = { - {'f', "\\f\\+"}, + {'f', ".\\+"}, /* only used when at end */ {'n', "\\d\\+"}, {'l', "\\d\\+"}, {'c', "\\d\\+"}, @@ -319,16 +319,25 @@ qf_init_ext(efile, buf, tv, errorformat, newlist, lnumfirst, lnumlast) ptr += 10; } #endif - if (*efmp == 'f' && efmp[1] != NUL - && efmp[1] != '\\' && efmp[1] != '%') + if (*efmp == 'f' && efmp[1] != NUL) { - /* A file name may contain spaces, but this isn't in - * "\f". For "%f:%l:%m" there may be a ":" in the - * file name. Use ".\{-1,}x" instead (x is the next - * character), the requirement that :999: follows - * should work. */ - STRCPY(ptr, ".\\{-1,}"); - ptr += 7; + if (efmp[1] != '\\' && efmp[1] != '%') + { + /* A file name may contain spaces, but this isn't + * in "\f". For "%f:%l:%m" there may be a ":" in + * the file name. Use ".\{-1,}x" instead (x is + * the next character), the requirement that :999: + * follows should work. */ + STRCPY(ptr, ".\\{-1,}"); + ptr += 7; + } + else + { + /* File name followed by '\\' or '%': include as + * many file name chars as possible. */ + STRCPY(ptr, "\\f\\+"); + ptr += 4; + } } else { diff --git a/src/spell.c b/src/spell.c index 56c891d82..2c21d94c8 100644 --- a/src/spell.c +++ b/src/spell.c @@ -7654,7 +7654,7 @@ spell_add_word(word, len, bad, index) break; if (*spf == NUL) { - EMSGN(_("E765: 'spellfile' does not have %ld enties"), index); + EMSGN(_("E765: 'spellfile' does not have %ld entries"), index); return; } } diff --git a/src/structs.h b/src/structs.h index 5473510e2..9c63407a8 100644 --- a/src/structs.h +++ b/src/structs.h @@ -1288,6 +1288,7 @@ struct file_buffer #endif #ifdef FEAT_COMPL_FUNC char_u *b_p_cfu; /* 'completefunc' */ + char_u *b_p_ofu; /* 'occultfunc' */ #endif int b_p_eol; /* 'endofline' */ int b_p_et; /* 'expandtab' */ @@ -1410,23 +1411,23 @@ struct file_buffer #endif #ifdef FEAT_MZSCHEME - void *mzscheme_ref; /* The MzScheme reference to this buffer */ + void *b_mzscheme_ref; /* The MzScheme reference to this buffer */ #endif #ifdef FEAT_PERL - void *perl_private; + void *b_perl_private; #endif #ifdef FEAT_PYTHON - void *python_ref; /* The Python reference to this buffer */ + void *b_python_ref; /* The Python reference to this buffer */ #endif #ifdef FEAT_TCL - void *tcl_ref; + void *b_tcl_ref; #endif #ifdef FEAT_RUBY - void *ruby_ref; + void *b_ruby_ref; #endif #ifdef FEAT_SYN_HL @@ -1810,31 +1811,30 @@ struct window #ifdef FEAT_MZSCHEME - void *mzscheme_ref; /* The MzScheme value referring to this window */ + void *w_mzscheme_ref; /* The MzScheme value for this window */ #endif #ifdef FEAT_PERL - void *perl_private; + void *w_perl_private; #endif #ifdef FEAT_PYTHON - void *python_ref; /* The Python value referring to this - window */ + void *w_python_ref; /* The Python value for this window */ #endif #ifdef FEAT_TCL - void *tcl_ref; + void *w_tcl_ref; #endif #ifdef FEAT_RUBY - void *ruby_ref; + void *w_ruby_ref; #endif }; /* * Arguments for operators. */ -typedef struct oparg +typedef struct oparg_S { int op_type; /* current pending operator type */ int regname; /* register to use for the operator */ @@ -1865,7 +1865,7 @@ typedef struct oparg /* * Arguments for Normal mode commands. */ -typedef struct cmdarg +typedef struct cmdarg_S { oparg_T *oap; /* Operator arguments */ int prechar; /* prefix character (optional, always 'g') */ diff --git a/src/version.h b/src/version.h index 2ea46ab9b..0db9ab214 100644 --- a/src/version.h +++ b/src/version.h @@ -36,5 +36,5 @@ #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 Aug 30)" -#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Aug 30, compiled " +#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Sep 1)" +#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Sep 1, compiled " @@ -68,6 +68,10 @@ # ifndef HAVE_CONFIG_H # define UNIX # endif +# ifdef HAVE_STRINGS_H +/* On Mac OS X strings.h exists but produces an annoying warning message. */ +# undef HAVE_STRINGS_H +# endif #endif #if defined(MACOS_X) || defined(MACOS_CLASSIC) # define MACOS |