diff options
author | Bram Moolenaar <Bram@vim.org> | 2005-11-23 21:25:05 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2005-11-23 21:25:05 +0000 |
commit | a5792f58905da28f0ab37e1c4c3cfd8171b2e602 (patch) | |
tree | 258ddcfde89bbf98b90d42dd6c297e1b22a20d09 /src | |
parent | af289d333a2985051948a53d510fa345df1ddeb3 (diff) |
updated for version 7.0158v7.0158
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile | 13 | ||||
-rwxr-xr-x | src/auto/configure | 19 | ||||
-rw-r--r-- | src/charset.c | 4 | ||||
-rw-r--r-- | src/configure.in | 17 | ||||
-rw-r--r-- | src/eval.c | 3 | ||||
-rw-r--r-- | src/ex_cmds.c | 29 | ||||
-rw-r--r-- | src/ex_docmd.c | 18 | ||||
-rw-r--r-- | src/fileio.c | 80 | ||||
-rw-r--r-- | src/gui_x11.c | 5 | ||||
-rw-r--r-- | src/if_python.c | 10 | ||||
-rw-r--r-- | src/memfile.c | 2 | ||||
-rw-r--r-- | src/normal.c | 6 | ||||
-rw-r--r-- | src/ops.c | 12 | ||||
-rw-r--r-- | src/os_unix.c | 23 | ||||
-rw-r--r-- | src/po/check.vim | 5 | ||||
-rw-r--r-- | src/po/cleanup.vim | 10 | ||||
-rw-r--r-- | src/po/pl.cp1250.po | 654 | ||||
-rw-r--r-- | src/po/pl.po | 654 | ||||
-rw-r--r-- | src/po/sk.cp1250.po | 3149 | ||||
-rw-r--r-- | src/po/sk.po | 3149 | ||||
-rw-r--r-- | src/search.c | 2 | ||||
-rw-r--r-- | src/testdir/Makefile | 2 | ||||
-rw-r--r-- | src/testdir/test51.in | 2 | ||||
-rw-r--r-- | src/vim.h | 4 |
24 files changed, 5236 insertions, 2636 deletions
diff --git a/src/Makefile b/src/Makefile index 3c0429b02c..56ab707a3a 100644 --- a/src/Makefile +++ b/src/Makefile @@ -149,7 +149,7 @@ # make -n uninstall # }}} # -### This Makefile has been succesfully tested on many systems. {{{ +### This Makefile has been successfully tested on many systems. {{{ ### Only the ones that require special options are mentioned here. ### Check the (*) column for remarks, listed below. ### Later code changes may cause small problems, otherwise Vim is supposed to @@ -296,7 +296,7 @@ CClink = $(CC) # below. As shipped, this file contains a target that causes to run # configure. Once configure was run, this file contains a list of # make variables with predefined values instead. Thus any second invocation -# of make, will buid Vim. +# of make, will build Vim. # CONFIGURE - configure arguments {{{1 # You can give a lot of options to configure. @@ -374,6 +374,7 @@ CClink = $(CC) # Uncomment this when you want to include the Python interface. # NOTE: This may cause threading to be enabled, which has side effects (such # as using different libraries and debugging becomes more difficult). +# NOTE: Using this together with Perl may cause a crash in initialization. #CONF_OPT_PYTHON = --enable-pythoninterp # TCL @@ -420,10 +421,10 @@ CClink = $(CC) # though configure can find support for it. #CONF_OPT_NLS = --disable-nls -# XIM - X Input Method. Special character input support for X11 (chinese, -# japanese, special symbols, etc). Also needed for dead-key support. +# XIM - X Input Method. Special character input support for X11 (Chinese, +# Japanese, special symbols, etc). Also needed for dead-key support. # When omitted it's automatically enabled for the X-windows GUI. -# HANGUL - Input Hangul (korean) language using internal routines. +# HANGUL - Input Hangul (Korean) language using internal routines. # Uncomment one of these when you want to input a multibyte language. #CONF_OPT_INPUT = --enable-xim #CONF_OPT_INPUT = --disable-xim @@ -462,7 +463,7 @@ CClink = $(CC) #CONF_OPT_X = --without-x # X WINDOWS DIRECTORY - specify X directories -# If configure can't find you X stuff, or if you have multiple X11 derivates +# If configure can't find you X stuff, or if you have multiple X11 derivatives # installed, you may wish to specify which one to use. # Select nothing to let configure choose. # This here selects openwin (as found on sun). diff --git a/src/auto/configure b/src/auto/configure index 1056c0b1b0..c109822693 100755 --- a/src/auto/configure +++ b/src/auto/configure @@ -2801,8 +2801,8 @@ if test -z "$CFLAGS"; then fi if test "$GCC" = yes; then gccversion=`"$CC" --version | sed -e '2,$d;s/^[^0-9]*\([0-9]\.[0-9.]*\).*$/\1/g'` - if test "$gccversion" = "3.0.1" -o "$gccversion" = "3.0.2"; then - echo 'GCC 3.0.x has a bug in the optimizer, disabling "-O#"' + if test "$gccversion" = "3.0.1" -o "$gccversion" = "3.0.2" -o "$gccversion" = "4.0.1"; then + echo 'GCC 34.0.12 has a bug in the optimizer, disabling "-O#"' CFLAGS=`echo "$CFLAGS" | sed 's/-O[23456789]/-O/'` else if test "$gccversion" = "3.1" -o "$gccversion" = "3.2" -o "$gccversion" = "3.2.1" && `echo "$CFLAGS" | grep -v fno-strength-reduce >/dev/null`; then @@ -4516,7 +4516,7 @@ echo $ECHO_N "checking for location of tclConfig.sh script... $ECHO_C" >&6 echo "${ECHO_T}$try/tclConfig.sh" >&6 . $try/tclConfig.sh TCL_LIBS=`eval echo "$TCL_LIB_SPEC $TCL_LIBS"` - TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\ /\X/' | tr ' ' '\012' | sed -e '/^-[^D]/d' -e '/-D[^_]/d' -e 's/-D_/ -D_/' | tr -d '\012'` + TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\\ /\\X/' | tr ' ' '\012' | sed -e '/^-[^D]/d' -e '/-D[^_]/d' -e 's/-D_/ -D_/' | tr -d '\012'` break fi done @@ -16048,13 +16048,22 @@ echo "${ECHO_T}no" >&6 fi fi +echo "$as_me:$LINENO: checking for GCC 3 or later" >&5 +echo $ECHO_N "checking for GCC 3 or later... $ECHO_C" >&6 DEPEND_CFLAGS_FILTER= if test "$GCC" = yes; then - gccmajor=`"$CC" --version | sed -e '2,$d;s/^[^0-9]*\([3-9]\)\.[0-9.]*.*$/\1/g'` - if test "$gccmajor" != ""; then + gccmajor=`"$CC" --version | sed -e '2,$d;s/^[^0-9]*\([1-9]\)\.[0-9.]*.*$/\1/g'` + if test "$gccmajor" > "2"; then DEPEND_CFLAGS_FILTER="| sed 's+-I */+-isystem /+g'" fi fi +if test "$DEPEND_CFLAGS_FILTER" = ""; then + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +else + echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6 +fi ac_config_files="$ac_config_files auto/config.mk:config.mk.in" diff --git a/src/charset.c b/src/charset.c index 19f202acf5..1e0e8372e9 100644 --- a/src/charset.c +++ b/src/charset.c @@ -1381,8 +1381,8 @@ getvvcol(wp, pos, start, cursor, end) if (c != TAB && vim_isprintc(c)) { endadd = char2cells(c) - 1; - if (coladd >= endadd) - coladd -= endadd; + if (coladd > endadd) /* past end of line */ + endadd = 0; else coladd = 0; } diff --git a/src/configure.in b/src/configure.in index ba22f581b8..404fbafd06 100644 --- a/src/configure.in +++ b/src/configure.in @@ -30,8 +30,9 @@ if test -z "$CFLAGS"; then fi if test "$GCC" = yes; then gccversion=`"$CC" --version | sed -e '2,$d;s/^[[^0-9]]*\([[0-9]]\.[[0-9.]]*\).*$/\1/g'` - if test "$gccversion" = "3.0.1" -o "$gccversion" = "3.0.2"; then - echo 'GCC 3.0.x has a bug in the optimizer, disabling "-O#"' + dnl version 4.0.1 was reported to cause trouble on Macintosh by Marcin Dalecki + if test "$gccversion" = "3.0.1" -o "$gccversion" = "3.0.2" -o "$gccversion" = "4.0.1"; then + echo 'GCC [34].0.[12] has a bug in the optimizer, disabling "-O#"' CFLAGS=`echo "$CFLAGS" | sed 's/-O[[23456789]]/-O/'` else if test "$gccversion" = "3.1" -o "$gccversion" = "3.2" -o "$gccversion" = "3.2.1" && `echo "$CFLAGS" | grep -v fno-strength-reduce >/dev/null`; then @@ -748,7 +749,7 @@ if test "$enable_tclinterp" = "yes"; then TCL_LIBS=`eval echo "$TCL_LIB_SPEC $TCL_LIBS"` dnl Use $TCL_DEFS for -D_THREAD_SAFE et al. But only use the dnl "-D_ABC" items. Watch out for -DFOO=long\ long. - TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\ /\X/' | tr ' ' '\012' | sed -e '/^-[[^D]]/d' -e '/-D[[^_]]/d' -e 's/-D_/ -D_/' | tr -d '\012'` + TCL_DEFS=`echo $TCL_DEFS | sed -e 's/\\ /\\X/' | tr ' ' '\012' | sed -e '/^-[[^D]]/d' -e '/-D[[^_]]/d' -e 's/-D_/ -D_/' | tr -d '\012'` break fi done @@ -3071,13 +3072,19 @@ fi dnl gcc 3.1 changed the meaning of -MM. The only solution appears to be to dnl use "-isystem" instead of "-I" for all non-Vim include dirs. dnl But only when making dependencies, cproto and lint don't take "-isystem". +AC_MSG_CHECKING(for GCC 3 or later) DEPEND_CFLAGS_FILTER= if test "$GCC" = yes; then - gccmajor=`"$CC" --version | sed -e '2,$d;s/^[[^0-9]]*\([[3-9]]\)\.[[0-9.]]*.*$/\1/g'` - if test "$gccmajor" != ""; then + gccmajor=`"$CC" --version | sed -e '2,$d;s/^[[^0-9]]*\([[1-9]]\)\.[[0-9.]]*.*$/\1/g'` + if test "$gccmajor" > "2"; then DEPEND_CFLAGS_FILTER="| sed 's+-I */+-isystem /+g'" fi fi +if test "$DEPEND_CFLAGS_FILTER" = ""; then + AC_MSG_RESULT(no) +else + AC_MSG_RESULT(yes) +fi AC_SUBST(DEPEND_CFLAGS_FILTER) dnl write output files diff --git a/src/eval.c b/src/eval.c index ef84aeecc0..423faea52e 100644 --- a/src/eval.c +++ b/src/eval.c @@ -16538,7 +16538,8 @@ set_var(name, tv, copy) { /* Make sure the variable name is valid. */ for (p = varname; *p != NUL; ++p) - if (!eval_isnamec1(*p) && (p == varname || !VIM_ISDIGIT(*p))) + if (!eval_isnamec1(*p) && (p == varname || !VIM_ISDIGIT(*p)) + && *p != AUTOLOAD_CHAR) { EMSG2(_(e_illvar), varname); return; diff --git a/src/ex_cmds.c b/src/ex_cmds.c index 84c5b49f27..ac3a2b257c 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -12,6 +12,9 @@ */ #include "vim.h" +#ifdef HAVE_FCNTL_H +# include <fcntl.h> +#endif #include "version.h" #ifdef FEAT_EX_EXTRA @@ -1797,7 +1800,17 @@ write_viminfo(file, forceit) if (tempname != NULL) { - fp_out = mch_fopen((char *)tempname, WRITEBIN); + int fd; + + /* Use mch_open() to be able to use O_NOFOLLOW and set file + * protection same as original file, but strip s-bit. */ + fd = mch_open((char *)tempname, + O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW, + (int)((st_old.st_mode & 0777) | 0600)); + if (fd < 0) + fp_out = NULL; + else + fp_out = fdopen(fd, WRITEBIN); /* * If we can't create in the same directory, try creating a @@ -1809,18 +1822,14 @@ write_viminfo(file, forceit) if ((tempname = vim_tempname('o')) != NULL) fp_out = mch_fopen((char *)tempname, WRITEBIN); } -#ifdef UNIX + +#if defined(UNIX) && defined(HAVE_FCHOWN) /* - * Set file protection same as original file, but strip s-bit - * and make sure the owner can read/write it. + * Make sure the owner can read/write it. This only works for + * root. */ if (fp_out != NULL) - { - (void)mch_setperm(tempname, - (long)((st_old.st_mode & 0777) | 0600)); - /* this only works for root: */ - (void)chown((char *)tempname, st_old.st_uid, st_old.st_gid); - } + (void)fchown(fileno(fp_out), st_old.st_uid, st_old.st_gid); #endif } } diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 7242381795..4a4e89f6b1 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -2152,20 +2152,16 @@ do_one_cmd(cmdlinep, sourcing, */ if (!global_busy && ea.line1 > ea.line2) { - if (sourcing || exmode_active) - { - errormsg = (char_u *)_("E493: Backwards range given"); - goto doend; - } - else + if (msg_silent == 0) { - int msg_silent_save = msg_silent; - - msg_silent = 0; + if (sourcing || exmode_active) + { + errormsg = (char_u *)_("E493: Backwards range given"); + goto doend; + } if (ask_yesno((char_u *) _("Backwards range given, OK to swap"), FALSE) != 'y') - goto doend; - msg_silent = msg_silent_save; + goto doend; } lnum = ea.line1; ea.line1 = ea.line2; diff --git a/src/fileio.c b/src/fileio.c index f04612d886..a3ceb4b5d8 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -3111,7 +3111,12 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit, if (st_old.st_nlink > 1 || mch_lstat((char *)fname, &st) < 0 || st.st_dev != st_old.st_dev - || st.st_ino != st_old.st_ino) + || st.st_ino != st_old.st_ino +# ifndef HAVE_FCHOWN + || st.st_uid != st_old.st_uid + || st.st_gid != st_old.st_gid +# endif + ) backup_copy = TRUE; else # endif @@ -3126,18 +3131,19 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit, for (i = 4913; ; i += 123) { sprintf((char *)gettail(IObuff), "%d", i); - if (mch_stat((char *)IObuff, &st) < 0) + if (mch_lstat((char *)IObuff, &st) < 0) break; } - fd = mch_open((char *)IObuff, O_CREAT|O_WRONLY|O_EXCL, perm); - close(fd); + fd = mch_open((char *)IObuff, + O_CREAT|O_WRONLY|O_EXCL|O_NOFOLLOW, perm); if (fd < 0) /* can't write in directory */ backup_copy = TRUE; else { # ifdef UNIX - chown((char *)IObuff, st_old.st_uid, st_old.st_gid); - (void)mch_setperm(IObuff, perm); +# ifdef HAVE_FCHOWN + fchown(fd, st_old.st_uid, st_old.st_gid); +# endif if (mch_stat((char *)IObuff, &st) < 0 || st.st_uid != st_old.st_uid || st.st_gid != st_old.st_gid @@ -3145,6 +3151,7 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit, backup_copy = TRUE; # endif mch_remove(IObuff); + close(fd); } } } @@ -3338,7 +3345,8 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit, /* Open with O_EXCL to avoid the file being created while * we were sleeping (symlink hacker attack?) */ bfd = mch_open((char *)backup, - O_WRONLY|O_CREAT|O_EXTRA|O_EXCL, perm & 0777); + O_WRONLY|O_CREAT|O_EXTRA|O_EXCL|O_NOFOLLOW, + perm & 0777); if (bfd < 0) { vim_free(backup); @@ -3357,11 +3365,9 @@ buf_write(buf, fname, sfname, start, end, eap, append, forceit, * bits for the group same as the protection bits for * others. */ - if (st_new.st_gid != st_old.st_gid && + if (st_new.st_gid != st_old.st_gid # ifdef HAVE_FCHOWN /* sequent-ptx lacks fchown() */ - fchown(bfd, (uid_t)-1, st_old.st_gid) != 0 -# else - chown((char *)backup, (uid_t)-1, st_old.st_gid) != 0 + && fchown(bfd, (uid_t)-1, st_old.st_gid) != 0 # endif ) mch_setperm(backup, @@ -4023,6 +4029,29 @@ restore_backup: } #endif +#ifdef UNIX + /* When creating a new file, set its owner/group to that of the original + * file. Get the new device and inode number. */ + if (backup != NULL && !backup_copy) + { +# ifdef HAVE_FCHOWN + struct stat st; + + /* don't change the owner when it's already OK, some systems remove + * permission or ACL stuff */ + if (mch_stat((char *)wfname, &st) < 0 + || st.st_uid != st_old.st_uid + || st.st_gid != st_old.st_gid) + { + fchown(fd, st_old.st_uid, st_old.st_gid); + if (perm >= 0) /* set permission again, may have changed */ + (void)mch_setperm(wfname, perm); + } +# endif + buf_setino(buf); + } +#endif + if (close(fd) != 0) { errmsg = (char_u *)_("E512: Close failed"); @@ -4047,27 +4076,6 @@ restore_backup: mch_set_acl(wfname, acl); #endif -#ifdef UNIX - /* When creating a new file, set its owner/group to that of the original - * file. Get the new device and inode number. */ - if (backup != NULL && !backup_copy) - { - struct stat st; - - /* don't change the owner when it's already OK, some systems remove - * permission or ACL stuff */ - if (mch_stat((char *)wfname, &st) < 0 - || st.st_uid != st_old.st_uid - || st.st_gid != st_old.st_gid) - { - chown((char *)wfname, st_old.st_uid, st_old.st_gid); - if (perm >= 0) /* set permission again, may have changed */ - (void)mch_setperm(wfname, perm); - } - buf_setino(buf); - } -#endif - #if defined(FEAT_MBYTE) && defined(FEAT_EVAL) if (wfname != fname) @@ -4288,7 +4296,8 @@ restore_backup: int empty_fd; if (org == NULL - || (empty_fd = mch_open(org, O_CREAT | O_EXTRA | O_EXCL, + || (empty_fd = mch_open(org, + O_CREAT | O_EXTRA | O_EXCL | O_NOFOLLOW, perm < 0 ? 0666 : (perm & 0777))) < 0) EMSG(_("E206: patchmode: can't touch empty original file")); else @@ -5757,7 +5766,8 @@ vim_rename(from, to) return -1; /* Create the new file with same permissions as the original. */ - fd_out = mch_open((char *)to, O_CREAT|O_EXCL|O_WRONLY|O_EXTRA, (int)perm); + fd_out = mch_open((char *)to, + O_CREAT|O_EXCL|O_WRONLY|O_EXTRA|O_NOFOLLOW, (int)perm); if (fd_out == -1) { close(fd_in); @@ -7273,7 +7283,7 @@ au_event_disable(what) save_ei = vim_strsave(p_ei); if (save_ei != NULL) { - new_ei = vim_strnsave(p_ei, (int)STRLEN(p_ei) + 8); + new_ei = vim_strnsave(p_ei, (int)(STRLEN(p_ei) + STRLEN(what))); if (new_ei != NULL) { STRCAT(new_ei, what); diff --git a/src/gui_x11.c b/src/gui_x11.c index 829176b5b2..be93cc5b2c 100644 --- a/src/gui_x11.c +++ b/src/gui_x11.c @@ -535,7 +535,7 @@ static XrmOptionDescRec cmdline_options[] = {"+reverse", "*reverseVideo", XrmoptionNoArg, "False"}, {"+rv", "*reverseVideo", XrmoptionNoArg, "False"}, {"-display", ".display", XrmoptionSepArg, NULL}, - {"-iconic", "*iconic", XrmoptionNoArg, "True"}, + {"-iconic", ".iconic", XrmoptionNoArg, "True"}, {"-name", ".name", XrmoptionSepArg, NULL}, {"-bw", ".borderWidth", XrmoptionSepArg, NULL}, {"-borderwidth", ".borderWidth", XrmoptionSepArg, NULL}, @@ -1610,7 +1610,8 @@ gui_mch_new_colors() gui_mch_open() { /* Actually open the window */ - XtPopup(vimShell, XtGrabNone); + XtRealizeWidget(vimShell); + XtManageChild(XtNameToWidget(vimShell, "*vimForm")); gui.wid = gui_x11_get_wid(); gui.blank_pointer = gui_x11_create_blank_mouse(); diff --git a/src/if_python.c b/src/if_python.c index 623731a55f..d58f7cf1e2 100644 --- a/src/if_python.c +++ b/src/if_python.c @@ -436,6 +436,14 @@ static void Python_Release_Vim(void) void python_end() { + static int recurse = 0; + + /* If a crash occurs while doing this, don't try again. */ + if (recurse != 0) + return; + + ++recurse; + #ifdef DYNAMIC_PYTHON if (hinstPython && Py_IsInitialized()) { @@ -450,6 +458,8 @@ python_end() Py_Finalize(); } #endif + + --recurse; } static int diff --git a/src/memfile.c b/src/memfile.c index 8c41832c20..e1a6b603b9 100644 --- a/src/memfile.c +++ b/src/memfile.c @@ -1287,7 +1287,7 @@ mf_do_open(mfp, fname, flags) /* * try to open the file */ - flags |= O_EXTRA; + flags |= O_EXTRA | O_NOFOLLOW; #ifdef WIN32 /* Prevent handle inheritance that cause problems with Cscope * (swap file may not be deleted if cscope connection was open after diff --git a/src/normal.c b/src/normal.c index 73c4cfd006..2d574d5c04 100644 --- a/src/normal.c +++ b/src/normal.c @@ -4229,9 +4229,7 @@ nv_mousescroll(cap) cmdarg_T *cap; { # if defined(FEAT_GUI) && defined(FEAT_WINDOWS) - win_T *old_curwin; - - old_curwin = curwin; + win_T *old_curwin = curwin; /* Currently we only get the mouse coordinates in the GUI. */ if (gui.in_use && mouse_row >= 0 && mouse_col >= 0) @@ -8083,6 +8081,8 @@ nv_beginline(cap) if ((fdo_flags & FDO_HOR) && KeyTyped && cap->oap->op_type == OP_NOP) foldOpenCursor(); #endif + ins_at_eol = FALSE; /* Don't move cursor past eol (only necessary in a + one-character line). */ } #ifdef FEAT_VISUAL @@ -3724,13 +3724,17 @@ end: && curwin->w_cursor.col > 0 && !(restart_edit || (State & INSERT))) { -#ifdef FEAT_VIRTUALEDIT - col = curwin->w_cursor.col; -#endif + /* Put the cursor on the last character in the line. */ dec_cursor(); #ifdef FEAT_VIRTUALEDIT if (ve_flags == VE_ALL) - curwin->w_cursor.coladd = col - curwin->w_cursor.col; + { + colnr_T scol, ecol; + + /* Coladd is set to the width of the last character. */ + getvcol(curwin, &curwin->w_cursor, &scol, NULL, &ecol); + curwin->w_cursor.coladd = ecol - scol + 1; + } #endif } } diff --git a/src/os_unix.c b/src/os_unix.c index 491d41a2e0..f951f18469 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -3709,6 +3709,11 @@ mch_call_shell(cmd, options) putenv(envbuf_Columns); # endif + /* + * stderr is only redirected when using the GUI, so that a + * program like gpg can still access the terminal to get a + * passphrase using stderr. + */ # ifdef FEAT_GUI if (pty_master_fd >= 0) { @@ -3719,8 +3724,11 @@ mch_call_shell(cmd, options) dup(pty_slave_fd); close(1); dup(pty_slave_fd); - close(2); - dup(pty_slave_fd); + if (gui.in_use) + { + close(2); + dup(pty_slave_fd); + } close(pty_slave_fd); /* has been dupped, close it now */ } @@ -3739,9 +3747,14 @@ mch_call_shell(cmd, options) dup(fd_fromshell[1]); close(fd_fromshell[1]); - /* set up stderr for the child */ - close(2); - dup(1); +# ifdef FEAT_GUI + if (gui.in_use) + { + /* set up stderr for the child */ + close(2); + dup(1); + } +# endif } } diff --git a/src/po/check.vim b/src/po/check.vim index a5f25aa0b2..50ed9a40f1 100644 --- a/src/po/check.vim +++ b/src/po/check.vim @@ -19,6 +19,9 @@ func! GetMline() let idline .= substitute(line, '"\(.*\)"$', '\1', '') endwhile + " remove '%', not used for formatting. + let idline = substitute(idline, "'%'", '', 'g') + " remove everything but % items. return substitute(idline, '[^%]*\(%[-+ #''.0-9*]*l\=[dsuxXpoc%]\)\=', '\1', 'g') endfunc @@ -39,6 +42,8 @@ while 1 let toline = GetMline() if fromline != toline echo 'Mismatching % in line ' . (line('.') - 1) + echo 'msgid: ' . fromline + echo 'msgstr: ' . toline let error = 1 endif endif diff --git a/src/po/cleanup.vim b/src/po/cleanup.vim index 313f1595cd..78d1e5afe8 100644 --- a/src/po/cleanup.vim +++ b/src/po/cleanup.vim @@ -3,8 +3,8 @@ " - Comment-out fuzzy and empty messages. " - Make sure there is a space before the string (required for Solaris). " Requires Vim 6.0 or later (because of multi-line search patterns). -g/^#: /d -g/^#, fuzzy\(, .*\)\=\nmsgid ""\@!/.+1,/^$/-1s/^/#\~ / -g/^msgstr"/s//msgstr "/ -g/^msgid"/s//msgid "/ -g/^msgstr ""\(\n"\)\@!/?^msgid?,.s/^/#\~ / +silent g/^#: /d +silent g/^#, fuzzy\(, .*\)\=\nmsgid ""\@!/.+1,/^$/-1s/^/#\~ / +silent g/^msgstr"/s//msgstr "/ +silent g/^msgid"/s//msgid "/ +silent g/^msgstr ""\(\n"\)\@!/?^msgid?,.s/^/#\~ / diff --git a/src/po/pl.cp1250.po b/src/po/pl.cp1250.po index 8014f25d0b..aa4566248a 100644 --- a/src/po/pl.cp1250.po +++ b/src/po/pl.cp1250.po @@ -1,18 +1,18 @@ # translation of pl.po to Polish # Polish Translation for Vim # -# updated 2001 for vim-6.0 +# updated 2005 for vim-7.0 +# # FIRST AUTHOR Marcin Dalecki <martin@dalecki.de>, 2000. # Mikolaj Machowski <mikmach@wp.pl>, 2004, 2005. -# msgid "" msgstr "" "Project-Id-Version: pl\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-06-27 01:18+0200\n" -"PO-Revision-Date: 2005-06-27 10:45+0200\n" +"POT-Creation-Date: 2005-10-14 01:26+0200\n" +"PO-Revision-Date: 2005-10-14 12:24+0200\n" "Last-Translator: Mikolaj Machowski <mikmach@wp.pl>\n" -"Language-Team: Polish <kde-transl@mer.chemia.polsl.gliwice.pl>\n" +"Language-Team: Polish <mikmach@wp.pl>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=cp1250\n" "Content-Transfer-Encoding: 8bit\n" @@ -218,13 +218,8 @@ msgid " Keyword completion (^N^P)" msgstr " Dopełnianie słów kluczowych (^N^P)" #. ctrl_x_mode == 0, ^P/^N compl. -msgid " ^X mode (^E^Y^L^]^F^I^K^D^U^V^N^P)" -msgstr " ^X tryb (^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 " Lokalne dopełnianie słów kluczowych (^N^P)" +msgid " ^X mode (^]^D^E^F^I^K^L^N^O^P^S^U^V^Y)" +msgstr " ^X tryb (^]^D^E^F^I^K^L^N^O^P^S^U^V^Y)" msgid " Whole line completion (^L^N^P)" msgstr " Dopełnianie pełnych wierszy (^L^N^P)" @@ -253,15 +248,24 @@ msgstr " Dopełnianie wiersza poleceń (^V^N^P)" msgid " User defined completion (^U^N^P)" msgstr "Dopełnianie zdefiniowane przez użytkownika (^U^N^P)" +msgid " Omni completion (^O^N^P)" +msgstr " Omni uzupełnianie (^O^N^P)" + +msgid " Spelling suggestion (^S^N^P)" +msgstr "Propozycja ortografii (^L^N^P)" + +msgid " Keyword Local completion (^N^P)" +msgstr " Lokalne dopełnianie słów kluczowych (^N^P)" + msgid "Hit end of paragraph" msgstr "Dobiłem do końca akapitu" -msgid "'thesaurus' option is empty" -msgstr "opcja 'thesaurus' jest pusta" - msgid "'dictionary' option is empty" msgstr "opcja 'dictionary' jest pusta" +msgid "'thesaurus' option is empty" +msgstr "opcja 'thesaurus' jest pusta" + #, c-format msgid "Scanning dictionary: %s" msgstr "Przeglądam słownik: %s" @@ -311,9 +315,8 @@ msgid "E18: Unexpected characters in :let" msgstr "E18: Nieoczekiwane znaki w :let" #, c-format -#, fuzzy -#~ msgid "E684: list index out of range: %ld" -#~ msgstr "E684: : %ld" +msgid "E684: list index out of range: %ld" +msgstr "E684: Indeks listy poza zakresem: %ld" #, c-format msgid "E121: Undefined variable: %s" @@ -372,11 +375,11 @@ msgstr "E130: Nieznana funkcja: %s" msgid "E461: Illegal variable name: %s" msgstr "E418: Niedozwolona nazwa zmiennej: %s" -#~ msgid "E687: Less targets than List items" -#~ msgstr "" +msgid "E687: Less targets than List items" +msgstr "E687: Mniej celów niż elementów Listy" -#~ msgid "E688: More targets than List items" -#~ msgstr "" +msgid "E688: More targets than List items" +msgstr "E688: Więcej celów niż elementów Listy" msgid "Double ; in list of variables" msgstr "Podwójny ; w liście zmiennych" @@ -394,11 +397,11 @@ msgstr "E708: [:] musi być ostatnie" msgid "E709: [:] requires a List value" msgstr "E709: [:] wymaga wartości listy" -#~ msgid "E710: List value has more items than target" -#~ msgstr "" +msgid "E710: List value has more items than target" +msgstr "E710: Lista ma więcej elementów niż cel" -#~ msgid "E711: List value has not enough items" -#~ msgstr "" +msgid "E711: List value has not enough items" +msgstr "E711: Lista nie ma wystarczającej ilości elementów" msgid "E690: Missing \"in\" after :for" msgstr "E690: Brak \"in\" po :for" @@ -438,9 +441,8 @@ msgstr "E694: Nieprawidłowa operacja dla Funcref" msgid "E110: Missing ')'" msgstr "E110: Brak ')'" -#, fuzzy -#~ msgid "E695: Cannot index a Funcref" -#~ msgstr "E90: Nie mogę wyładować ostatniego bufora" +msgid "E695: Cannot index a Funcref" +msgstr "E695: Nie można zindeksować Funcref" #, c-format msgid "E112: Option name missing: %s" @@ -472,7 +474,7 @@ msgstr "E720: Brak dwukropka w Słowniku: %s" #, c-format msgid "E721: Duplicate key in Dictionary: \"%s\"" -msgstr "E721: Podwójny klucz w Słowniku: \"%s\"" +msgstr "E721: Powtórzony klucz w Słowniku: \"%s\"" #, c-format msgid "E722: Missing comma in Dictionary: %s" @@ -524,8 +526,8 @@ msgstr "E745: Zakres niedozwolony" msgid "E701: Invalid type for len()" msgstr "E701: Nieprawidłowy typ dla len()" -#~ msgid "E726: Stride is zero" -#~ msgstr "" +msgid "E726: Stride is zero" +msgstr "E726: Skok to zero" msgid "E727: Start past end" msgstr "E727: Początek po końcu" @@ -549,9 +551,8 @@ msgstr "E655: Za dużo dowiązań symbolicznych (pętla?)" msgid "E258: Unable to send to client" msgstr "E258: Nie mogę wysłać do klienta" -#, fuzzy -#~ msgid "E702: Sort compare function failed" -#~ msgstr "E237: Wybór drukarki nie powiódł się" +msgid "E702: Sort compare function failed" +msgstr "E702: Funkcja porównywania w sort nie powiodła się" msgid "(Invalid)" msgstr "(Niewłaściwe)" @@ -582,8 +583,8 @@ msgid "E704: Funcref variable name must start with a capital: %s" msgstr "E704: Nazwa Funcref musi się zaczynać wielką literą: %s" #, c-format -#~ msgid "705: Variable name conflicts with existing function: %s" -#~ msgstr "" +msgid "E705: Variable name conflicts with existing function: %s" +msgstr "E705: Nazwa zmiennej jest w konflikcie z istniejącą funkcją: %s" #, c-format msgid "E706: Variable type mismatch for: %s" @@ -623,7 +624,9 @@ msgstr "E129: Wymagana jest nazwa funkcji" #, c-format msgid "E128: Function name must start with a capital or contain a colon: %s" -msgstr "E128: Nazwa funkcji musi rozpoczynać się wielką literą lub zawierać dwukropek: %s" +msgstr "" +"E128: Nazwa funkcji musi rozpoczynać się wielką literą lub zawierać " +"dwukropek: %s" #, c-format msgid "E131: Cannot delete function %s: It is in use" @@ -663,6 +666,13 @@ msgstr "" "\n" "# zmienne globalne:\n" +msgid "" +"\n" +"\tLast set from " +msgstr "" +"\n" +"\tOstatnie ustawienie przez " + msgid "Entering Debug mode. Type \"cont\" to continue." msgstr "Wchodzę w tryb odpluskwiania. Wprowadź \"cont\" aby kontynuować." @@ -771,90 +781,6 @@ msgid "E168: :finish used outside of a sourced file" msgstr "E168: użyto :finish poza wczytywanym plikiem" #, c-format -msgid "Page %d" -msgstr "Strona %d" - -msgid "No text to be printed" -msgstr "Brak tekstu do drukowania" - -#, c-format -msgid "Printing page %d (%d%%)" -msgstr "Drukuję stronę %d (%d%%)" - -#, c-format -msgid " Copy %d of %d" -msgstr " Kopia %d z %d" - -#, c-format -msgid "Printed: %s" -msgstr "Wydrukowano: %s" - -msgid "Printing aborted" -msgstr "Drukowanie odwołane" - -msgid "E455: Error writing to PostScript output file" -msgstr "E455: Nie można zapisać do wyjściowego pliku PostScriptu" - -#, c-format -msgid "E624: Can't open file \"%s\"" -msgstr |