summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/GvimExt/GvimExt.reg4
-rw-r--r--src/Makefile26
-rw-r--r--src/feature.h22
-rw-r--r--src/fileio.c11
-rw-r--r--src/globals.h4
-rw-r--r--src/gui.c2
-rw-r--r--src/gui.h2
-rw-r--r--src/gui_athena.c2
-rw-r--r--src/mbyte.c18
-rw-r--r--src/msvc2008.bat5
-rw-r--r--src/os_unix.c171
-rw-r--r--src/os_win32.c3
-rw-r--r--src/os_win32.h3
-rw-r--r--src/po/Make_cyg.mak4
-rw-r--r--src/po/Makefile10
-rw-r--r--src/po/ja.po239
-rw-r--r--src/po/pl.UTF-8.po21
-rw-r--r--src/po/sk.po14
-rw-r--r--src/po/vi.po4
-rw-r--r--src/po/zh_CN.UTF-8.po2
-rw-r--r--src/po/zh_TW.UTF-8.po8
-rw-r--r--src/tag.c23
22 files changed, 449 insertions, 149 deletions
diff --git a/src/GvimExt/GvimExt.reg b/src/GvimExt/GvimExt.reg
index 7f7bfee59..02b174774 100644
--- a/src/GvimExt/GvimExt.reg
+++ b/src/GvimExt/GvimExt.reg
@@ -15,6 +15,6 @@ REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Vim\Gvim]
"path"="gvim.exe"
-[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Vim 7.1]
- "DisplayName"="Vim 7.1: Edit with Vim popup menu entry"
+[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Vim 7.2a]
+ "DisplayName"="Vim 7.2a: Edit with Vim popup menu entry"
"UninstallString"="uninstal.exe"
diff --git a/src/Makefile b/src/Makefile
index 44c9c6f38..cca2eef9f 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -48,7 +48,9 @@
# - Uncomment the line with --disable-acl to disable ACL support even
# though your system supports it.
# - Uncomment the line with --disable-gpm to disable gpm support
-# even though you have gpm libraries and includes
+# even though you have gpm libraries and includes.
+# - Uncomment the line with --disable-sysmouse to disable sysmouse
+# support even though you have /dev/sysmouse and includes.
# - Uncomment one of the lines with CFLAGS and/or CC if you have
# something very special or want to tune the optimizer.
# - Search for the name of your system to see if it needs anything
@@ -447,9 +449,14 @@ CClink = $(CC)
# gpm - For mouse support on Linux console via gpm
# Uncomment this when you do not want to include gpm support, even
-# though you have gpm libraries and includes
+# though you have gpm libraries and includes.
#CONF_OPT_GPM = --disable-gpm
+# sysmouse - For mouse support on FreeBSD and DragonFly console via sysmouse
+# Uncomment this when you do not want do include sysmouse support, even
+# though you have /dev/sysmouse and includes.
+#CONF_OPT_SYSMOUSE = --disable-sysmouse
+
# FEATURES - For creating Vim with more or less features
# Uncomment one of these lines when you want to include few to many features.
# The default is "normal".
@@ -535,6 +542,10 @@ CClink = $(CC)
# PURIFY - remove the # to use the "purify" program (hoi Nia++!)
#PURIFY = purify
+
+# NBDEBUG - debugging the netbeans interface.
+#EXTRA_DEFS = -DNBDEBUG
+
# }}}
# LINT - for running lint
@@ -888,7 +899,7 @@ MAN1DIR = /man1
### Vim version (adjusted by a script)
VIMMAJOR = 7
-VIMMINOR = 1
+VIMMINOR = 2a
### Location of Vim files (should not need to be changed, and {{{1
### some things might not work when they are changed!)
@@ -1219,7 +1230,7 @@ CARBONGUI_IPATH = -I. -Iproto
CARBONGUI_LIBS_DIR =
CARBONGUI_LIBS1 = -framework Carbon
CARBONGUI_LIBS2 =
-CARBONGUI_INSTALL = install_macosx install_gui_extra
+CARBONGUI_INSTALL = install_macosx
CARBONGUI_TARGETS =
CARBONGUI_MAN_TARGETS =
CARBONGUI_TESTTARGET = gui
@@ -1566,7 +1577,8 @@ config auto/config.mk: auto/configure config.mk.in config.h.in
$(CONF_OPT_OUTPUT) $(CONF_OPT_GPM) $(CONF_OPT_WORKSHOP) \
$(CONF_OPT_SNIFF) $(CONF_OPT_FEAT) $(CONF_TERM_LIB) \
$(CONF_OPT_COMPBY) $(CONF_OPT_ACL) $(CONF_OPT_NETBEANS) \
- $(CONF_ARGS) $(CONF_OPT_MZSCHEME) $(CONF_OPT_PLTHOME)
+ $(CONF_ARGS) $(CONF_OPT_MZSCHEME) $(CONF_OPT_PLTHOME) \
+ $(CONF_OPT_SYSMOUSE)
# Use "make reconfig" to rerun configure without cached values.
# When config.h changes, most things will be recompiled automatically.
@@ -2580,7 +2592,7 @@ install_macosx: gui_bundle
ln -s `pwd`/../runtime $(RESDIR)/vim
# Copy rgb.txt, Mac doesn't always have X11
$(INSTALL_DATA) $(SCRIPTSOURCE)/rgb.txt $(DESTDIR)$(prefix)/$(RESDIR)/vim/runtime
-# TODO: Create the vimtutor application.
+# TODO: Create the vimtutor and/or gvimtutor application.
gui_bundle: $(RESDIR) bundle-dir bundle-executable bundle-info bundle-resource \
bundle-language
@@ -2759,7 +2771,7 @@ objects/option.o: option.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h
objects/os_unix.o: os_unix.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
- arabic.h if_mzsch.h os_unixx.h
+ arabic.h os_unixx.h
objects/pathdef.o: auto/pathdef.c ./vim.h ./auto/config.h ./feature.h ./os_unix.h \
./auto/osdef.h ./ascii.h ./keymap.h ./term.h ./macros.h ./option.h \
./structs.h ./regexp.h ./gui.h ./gui_beval.h proto/gui_beval.pro \
diff --git a/src/feature.h b/src/feature.h
index 734f6e64c..a96a3d1c2 100644
--- a/src/feature.h
+++ b/src/feature.h
@@ -35,7 +35,7 @@
* +small few features enabled, as basic as possible
* +normal A default selection of features enabled
* +big many features enabled, as rich as possible.
- * +huge all possible featues enabled.
+ * +huge all possible features enabled.
*
* When +small is used, +tiny is also included. +normal implies +small, etc.
*/
@@ -376,9 +376,13 @@
/*
* +eval Built-in script language and expression evaluation,
* ":let", ":if", etc.
+ * +float Floating point variables.
*/
#ifdef FEAT_NORMAL
# define FEAT_EVAL
+# if defined(HAVE_FLOAT_FUNCS) || defined(WIN3264) || defined(MACOS)
+# define FEAT_FLOAT
+# endif
#endif
/*
@@ -1010,6 +1014,8 @@
* +mouse_gpm Unix only: Include code for Linux console mouse
* handling.
* +mouse_pterm PTerm mouse support for QNX
+ * +mouse_sysmouse Unix only: Include code for FreeBSD and DragonFly
+ * console mouse handling.
* +mouse Any mouse support (any of the above enabled).
*/
/* OS/2 and Amiga console have no mouse support */
@@ -1034,11 +1040,17 @@
#if defined(FEAT_NORMAL) && defined(HAVE_GPM)
# define FEAT_MOUSE_GPM
#endif
+
+#if defined(FEAT_NORMAL) && defined(HAVE_SYSMOUSE)
+# define FEAT_SYSMOUSE
+#endif
/* Define FEAT_MOUSE when any of the above is defined or FEAT_GUI. */
-#if !defined(FEAT_MOUSE_TTY) && (defined(FEAT_MOUSE_XTERM) \
- || defined(FEAT_MOUSE_NET) || defined(FEAT_MOUSE_DEC) \
- || defined(DOS_MOUSE) || defined(FEAT_MOUSE_GPM) \
- || defined(FEAT_MOUSE_JSB) || defined(FEAT_MOUSE_PTERM))
+#if !defined(FEAT_MOUSE_TTY) \
+ && (defined(FEAT_MOUSE_XTERM) \
+ || defined(FEAT_MOUSE_NET) || defined(FEAT_MOUSE_DEC) \
+ || defined(DOS_MOUSE) || defined(FEAT_MOUSE_GPM) \
+ || defined(FEAT_MOUSE_JSB) || defined(FEAT_MOUSE_PTERM) \
+ || defined(FEAT_SYSMOUSE))
# define FEAT_MOUSE_TTY /* include non-GUI mouse support */
#endif
#if !defined(FEAT_MOUSE) && (defined(FEAT_MOUSE_TTY) || defined(FEAT_GUI))
diff --git a/src/fileio.c b/src/fileio.c
index de123a09c..b97e38f92 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -21,10 +21,6 @@
#include "vim.h"
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-
#ifdef __TANDEM
# include <limits.h> /* for SSIZE_MAX */
#endif
@@ -4702,7 +4698,7 @@ nofail:
* front of the file name. */
if (errnum != NULL)
{
- mch_memmove(IObuff + numlen, IObuff, STRLEN(IObuff) + 1);
+ STRMOVE(IObuff + numlen, IObuff);
mch_memmove(IObuff, errnum, (size_t)numlen);
}
STRCAT(IObuff, errmsg);
@@ -5976,7 +5972,7 @@ buf_modname(shortname, fname, ext, prepend_dot)
#endif
)
{
- mch_memmove(e + 1, e, STRLEN(e) + 1);
+ STRMOVE(e + 1, e);
#ifdef RISCOS
*e = '/';
#else
@@ -6593,7 +6589,8 @@ buf_check_timestamp(buf, focus)
buf_reload(buf, orig_mode);
#ifdef FEAT_AUTOCMD
- if (buf_valid(buf))
+ /* Trigger FileChangedShell when the file was changed in any way. */
+ if (buf_valid(buf) && retval != 0)
(void)apply_autocmds(EVENT_FILECHANGEDSHELLPOST,
buf->b_fname, buf->b_fname, FALSE, buf);
#endif
diff --git a/src/globals.h b/src/globals.h
index 469801bb8..b31e05436 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -168,6 +168,8 @@ EXTERN int emsg_off INIT(= 0); /* don't display errors for now,
EXTERN int info_message INIT(= FALSE); /* printing informative message */
EXTERN int msg_hist_off INIT(= FALSE); /* don't add messages to history */
#ifdef FEAT_EVAL
+EXTERN int need_clr_eos INIT(= FALSE); /* need to clear text before
+ displaying a message. */
EXTERN int emsg_skip INIT(= 0); /* don't display errors for
expression that is skipped */
EXTERN int emsg_severe INIT(= FALSE); /* use message of next of several
@@ -1172,7 +1174,7 @@ EXTERN int stl_syntax INIT(= 0);
EXTERN int no_hlsearch INIT(= FALSE);
#endif
-#ifdef FEAT_BEVAL
+#if defined(FEAT_BEVAL) && !defined(NO_X11_INCLUDES)
EXTERN BalloonEval *balloonEval INIT(= NULL);
# if defined(FEAT_NETBEANS_INTG) || defined(FEAT_SUN_WORKSHOP)
EXTERN int bevalServers INIT(= 0);
diff --git a/src/gui.c b/src/gui.c
index 1e8ad84d7..09c3027cb 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -3497,7 +3497,7 @@ get_tabline_label(tp, tooltip)
if (modified)
STRCAT(buf, "+");
STRCAT(buf, " ");
- mch_memmove(NameBuff + STRLEN(buf), NameBuff, STRLEN(NameBuff) + 1);
+ STRMOVE(NameBuff + STRLEN(buf), NameBuff);
mch_memmove(NameBuff, buf, STRLEN(buf));
}
}
diff --git a/src/gui.h b/src/gui.h
index e4ee182bc..875b5e423 100644
--- a/src/gui.h
+++ b/src/gui.h
@@ -425,7 +425,7 @@ typedef struct Gui
#endif /* FEAT_GUI_GTK */
#if defined(FEAT_GUI_TABLINE) \
- && (defined(FEAT_GUI_W32) || defined(FEAT_GUI_MOTIF) \
+ && (defined(FEAT_GUI_W32) || defined(FEAT_GUI_MOTIF) \
|| defined(FEAT_GUI_MAC))
int tabline_height;
#endif
diff --git a/src/gui_athena.c b/src/gui_athena.c
index df1367f83..c86703eeb 100644
--- a/src/gui_athena.c
+++ b/src/gui_athena.c
@@ -2245,7 +2245,7 @@ gui_mch_dialog(type, title, message, buttons, dfltbutton, textfield)
for (next = p; *next; ++next)
{
if (*next == DLG_HOTKEY_CHAR)
- mch_memmove(next, next + 1, STRLEN(next));
+ STRMOVE(next, next + 1);
if (*next == DLG_BUTTON_SEP)
{
*next++ = NUL;
diff --git a/src/mbyte.c b/src/mbyte.c
index 6ab73f2b6..4e9059366 100644
--- a/src/mbyte.c
+++ b/src/mbyte.c
@@ -2940,7 +2940,7 @@ mb_fix_col(col, row)
&& dbcs_screen_head_off(ScreenLines + LineOffset[row],
ScreenLines + LineOffset[row] + col))
|| (enc_utf8 && ScreenLines[LineOffset[row] + col] == 0)))
- --col;
+ return col - 1;
return col;
}
# endif
@@ -3008,31 +3008,31 @@ enc_canonize(enc)
/* Change "microsoft-cp" to "cp". Used in some spell files. */
if (STRNCMP(p, "microsoft-cp", 12) == 0)
- mch_memmove(p, p + 10, STRLEN(p + 10) + 1);
+ STRMOVE(p, p + 10);
/* "iso8859" -> "iso-8859" */
if (STRNCMP(p, "iso8859", 7) == 0)
{
- mch_memmove(p + 4, p + 3, STRLEN(p + 2));
+ STRMOVE(p + 4, p + 3);
p[3] = '-';
}
/* "iso-8859n" -> "iso-8859-n" */
if (STRNCMP(p, "iso-8859", 8) == 0 && p[8] != '-')
{
- mch_memmove(p + 9, p + 8, STRLEN(p + 7));
+ STRMOVE(p + 9, p + 8);
p[8] = '-';
}
/* "latin-N" -> "latinN" */
if (STRNCMP(p, "latin-", 6) == 0)
- mch_memmove(p + 5, p + 6, STRLEN(p + 5));
+ STRMOVE(p + 5, p + 6);
if (enc_canon_search(p) >= 0)
{
/* canonical name can be used unmodified */
if (p != r)
- mch_memmove(r, p, STRLEN(p) + 1);
+ STRMOVE(r, p);
}
else if ((i = enc_alias_search(p)) >= 0)
{
@@ -3692,7 +3692,11 @@ im_preedit_end_cb(GtkIMContext *context, gpointer data)
preedit_start_col = MAXCOL;
xim_has_preediting = FALSE;
+#if 0
+ /* Removal of this line suggested by Takuhiro Nishioka. Fixes that IM was
+ * switched off unintentionally. */
im_is_active = FALSE;
+#endif
gui_update_cursor(TRUE, FALSE);
im_show_info();
}
@@ -4144,6 +4148,7 @@ xim_queue_key_press_event(GdkEventKey *event, int down)
* committed while we're processing one of these keys, we can ignore
* that commit and go ahead & process it ourselves. That way we can
* still distinguish keypad keys for use in mappings.
+ * Also add GDK_space to make <S-Space> work.
*/
switch (event->keyval)
{
@@ -4163,6 +4168,7 @@ xim_queue_key_press_event(GdkEventKey *event, int down)
case GDK_KP_7: xim_expected_char = '7'; break;
case GDK_KP_8: xim_expected_char = '8'; break;
case GDK_KP_9: xim_expected_char = '9'; break;
+ case GDK_space: xim_expected_char = ' '; break;
default: xim_expected_char = NUL;
}
xim_ignored_char = FALSE;
diff --git a/src/msvc2008.bat b/src/msvc2008.bat
new file mode 100644
index 000000000..55155f884
--- /dev/null
+++ b/src/msvc2008.bat
@@ -0,0 +1,5 @@
+rem To be used on MS-Windows for Visual C++ 2008 Express Edition
+rem aka Microsoft Visual Studio 9.0.
+rem See INSTALLpc.txt for information.
+
+call "%VS90COMNTOOLS%%vsvars32.bat"
diff --git a/src/os_unix.c b/src/os_unix.c
index 4c3f39f2c..ef73270da 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -35,10 +35,6 @@
# include "if_mzsch.h"
#endif
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
-
#include "os_unixx.h" /* unix includes for os_unix.c only */
#ifdef USE_XSMP
@@ -92,6 +88,15 @@ static int gpm_open __ARGS((void));
static int mch_gpm_process __ARGS((void));
#endif
+#ifdef FEAT_SYSMOUSE
+# include <sys/consio.h>
+# include <sys/fbio.h>
+
+static int sysmouse_open __ARGS((void));
+static void sysmouse_close __ARGS((void));
+static RETSIGTYPE sig_sysmouse __ARGS(SIGPROTOARG);
+#endif
+
/*
* end of autoconf section. To be extended...
*/
@@ -289,7 +294,8 @@ static struct signalinfo
#ifdef SIGUSR1
{SIGUSR1, "USR1", TRUE},
#endif
-#ifdef SIGUSR2
+#if defined(SIGUSR2) && !defined(FEAT_SYSMOUSE)
+ /* Used for sysmouse handling */
{SIGUSR2, "USR2", TRUE},
#endif
#ifdef SIGINT
@@ -2055,6 +2061,21 @@ vim_is_xterm(name)
|| STRCMP(name, "builtin_xterm") == 0);
}
+#if defined(FEAT_MOUSE_XTERM) || defined(PROTO)
+/*
+ * Return TRUE if "name" appears to be that of a terminal
+ * known to support the xterm-style mouse protocol.
+ * Relies on term_is_xterm having been set to its correct value.
+ */
+ int
+use_xterm_like_mouse(name)
+ char_u *name;
+{
+ return (name != NULL
+ && (term_is_xterm || STRNICMP(name, "screen", 6) == 0));
+}
+#endif
+
#if defined(FEAT_MOUSE_TTY) || defined(PROTO)
/*
* Return non-zero when using an xterm mouse, according to 'ttymouse'.
@@ -2279,10 +2300,10 @@ mch_FullName(fname, buf, len, force)
char_u *p;
int retval = OK;
#ifdef __CYGWIN__
- char_u posix_fname[MAX_PATH];
+ char_u posix_fname[MAXPATHL]; /* Cygwin docs mention MAX_PATH, but
+ it's not always defined */
#endif
-
#ifdef VMS
fname = vms_fixfilename(fname);
#endif
@@ -3255,6 +3276,22 @@ mch_setmouse(on)
}
# endif
+# ifdef FEAT_SYSMOUSE
+ else
+ {
+ if (on)
+ {
+ if (sysmouse_open() == OK)
+ ison = TRUE;
+ }
+ else
+ {
+ sysmouse_close();
+ ison = FALSE;
+ }
+ }
+# endif
+
# ifdef FEAT_MOUSE_JSB
else
{
@@ -3342,6 +3379,15 @@ check_mouse_termcode()
set_mouse_termcode(KS_MOUSE, (char_u *)IF_EB("\033MG", ESC_STR "MG"));
# endif
+# ifdef FEAT_SYSMOUSE
+ if (!use_xterm_mouse()
+# ifdef FEAT_GUI
+ && !gui.in_use
+# endif
+ )
+ set_mouse_termcode(KS_MOUSE, (char_u *)IF_EB("\033MS", ESC_STR "MS"));
+# endif
+
# ifdef FEAT_MOUSE_JSB
/* conflicts with xterm mouse: "\033[" and "\033[M" ??? */
if (!use_xterm_mouse()
@@ -5170,7 +5216,7 @@ mch_expand_wildcards(num_pat, pat, num_file, file, flags)
static int did_find_nul = FALSE;
int ampersent = FALSE;
/* vimglob() function to define for Posix shell */
- static char *sh_vimglob_func = "vimglob() { while [ $# -ge 1 ]; do echo -n \"$1\"; echo; shift; done }; vimglob >";
+ static char *sh_vimglob_func = "vimglob() { while [ $# -ge 1 ]; do echo \"$1\"; shift; done }; vimglob >";
*num_file = 0; /* default: no files found */
*file = NULL;
@@ -5811,7 +5857,6 @@ gpm_open()
/*
* Closes connection to gpm
- * returns non-zero if connection successfully closed
*/
static void
gpm_close()
@@ -5906,6 +5951,114 @@ mch_gpm_process()
}
#endif /* FEAT_MOUSE_GPM */
+#ifdef FEAT_SYSMOUSE
+/*
+ * Initialize connection with sysmouse.
+ * Let virtual console inform us with SIGUSR2 for pending sysmouse
+ * output, any sysmouse output than will be processed via sig_sysmouse().
+ * Return OK if succeeded, FAIL if failed.
+ */
+ static int
+sysmouse_open()
+{
+ struct mouse_info mouse;
+
+ mouse.operation = MOUSE_MODE;
+ mouse.u.mode.mode = 0;
+ mouse.u.mode.signal = SIGUSR2;
+ if (ioctl(1, CONS_MOUSECTL, &mouse) != -1)
+ {
+ signal(SIGUSR2, (RETSIGTYPE (*)())sig_sysmouse);
+ mouse.operation = MOUSE_SHOW;
+ ioctl(1, CONS_MOUSECTL, &mouse);
+ return OK;
+ }
+ return FAIL;
+}
+
+/*
+ * Stop processing SIGUSR2 signals, and also make sure that
+ * virtual console do not send us any sysmouse related signal.
+ */
+ static void
+sysmouse_close()
+{
+ struct mouse_info mouse;
+
+ signal(SIGUSR2, restricted ? SIG_IGN : SIG_DFL);
+ mouse.operation = MOUSE_MODE;
+ mouse.u.mode.mode = 0;
+ mouse.u.mode.signal = 0;
+ ioctl(1, CONS_MOUSECTL, &mouse);
+}
+
+/*
+ * Gets info from sysmouse and adds special keys to input buf.
+ */
+/* ARGSUSED */
+ static RETSIGTYPE
+sig_sysmouse SIGDEFARG(sigarg)
+{
+ struct mouse_info mouse;
+ struct video_info video;
+ char_u string[6];
+ int row, col;
+ int button;
+ int buttons;
+ static int oldbuttons = 0;
+
+#ifdef FEAT_GUI
+ /* Don't put events in the input queue now. */
+ if (hold_gui_events)
+ return;
+#endif
+
+ mouse.operation = MOUSE_GETINFO;
+ if (ioctl(1, FBIO_GETMODE, &video.vi_mode) != -1
+ && ioctl(1, FBIO_MODEINFO, &video) != -1
+ && ioctl(1, CONS_MOUSECTL, &mouse) != -1
+ && video.vi_cheight > 0 && video.vi_cwidth > 0)
+ {
+ row = mouse.u.data.y / video.vi_cheight;
+ col = mouse.u.data.x / video.vi_cwidth;
+ buttons = mouse.u.data.buttons;
+ string[0] = ESC; /* Our termcode */
+ string[1] = 'M';
+ string[2] = 'S';
+ if (oldbuttons == buttons && buttons != 0)
+ {
+ button = MOUSE_DRAG;
+ }
+ else
+ {
+ switch (buttons)
+ {
+ case 0:
+ button = MOUSE_RELEASE;
+ break;
+ case 1:
+ button = MOUSE_LEFT;
+ break;
+ case 2:
+ button = MOUSE_MIDDLE;
+ break;
+ case 4:
+ button = MOUSE_RIGHT;
+ break;
+ default:
+ return;
+ }
+ oldbuttons = buttons;
+ }
+ string[3] = (char_u)(button);
+ string[4] = (char_u)(col + ' ' + 1);
+ string[5] = (char_u)(row + ' ' + 1);
+ add_to_input_buf(string, 6);
+ }
+ return;
+}
+#endif /* FEAT_SYSMOUSE */
+
#if defined(FEAT_LIBCALL) || defined(PROTO)
typedef char_u * (*STRPROCSTR)__ARGS((char_u *));
typedef char_u * (*INTPROCSTR)__ARGS((int));
diff --git a/src/os_win32.c b/src/os_win32.c
index 54837ecb2..99523b7aa 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -27,9 +27,6 @@
# include "if_mzsch.h"
#endif
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h>
-#endif
#include <sys/types.h>
#include <errno.h>
#include <signal.h>
diff --git a/src/os_win32.h b/src/os_win32.h
index 15e616061..b57ee2388 100644
--- a/src/os_win32.h
+++ b/src/os_win32.h
@@ -28,6 +28,9 @@
#ifndef HAVE_STRING_H
# define HAVE_STRING_H
#endif
+#ifndef HAVE_MATH_H
+# define HAVE_MATH_H
+#endif
#define HAVE_STRCSPN
#ifndef __GNUC__
#define HAVE_STRICMP
diff --git a/src/po/Make_cyg.mak b/src/po/Make_cyg.mak
index 15258f48c..26a8168d6 100644
--- a/src/po/Make_cyg.mak
+++ b/src/po/Make_cyg.mak
@@ -18,7 +18,9 @@ LANGUAGES = af \
cs.cp1250 \
de \
en_GB \
+ eo \
es \
+ fi \
fr \
ga \
it \
@@ -48,7 +50,9 @@ MOFILES = af.mo \
cs.mo \
de.mo \
en_GB.mo \
+ eo.mo \
es.mo \
+ fi.mo \
fr.mo \
ga.mo \
it.mo \
diff --git a/src/po/Makefile b/src/po/Makefile
index d30d72ff4..2b7eae068 100644
--- a/src/po/Makefile
+++ b/src/po/Makefile
@@ -10,7 +10,9 @@ LANGUAGES = \
cs \
de \
en_GB \
+ eo \
es \
+ fi \
fr \
ga \
it \
@@ -34,7 +36,9 @@ MOFILES = \
cs.mo \
de.mo \
en_GB.mo \
+ eo.mo \
es.mo \
+ fi.mo \
fr.mo \
ga.mo \
it.mo \
@@ -68,7 +72,9 @@ CHECKFILES = \
cs.ck \
de.ck \
en_GB.ck \
+ eo.ck \
es.ck \
+ fi.ck \
fr.ck \
ga.ck \
it.ck \
@@ -199,8 +205,8 @@ ru.cp1251.po: ru.po
# Convert uk.po to create uk.cp1251.po.
uk.cp1251.po: uk.po
rm -f uk.cp1251.po
- iconv -f koi8-u -t cp1251 uk.po | \
- sed -e 's/charset=koi8-u/charset=cp1251/' -e 's/# Original translations/# Generated from uk.po, DO NOT EDIT/' > uk.cp1251.po
+ iconv -f utf-8 -t cp1251 uk.po | \
+ sed -e 's/charset=utf-8/charset=cp1251/' -e 's/# Original translations/# Generated from uk.po, DO NOT EDIT/' > uk.cp1251.po
prefixcheck:
@if test "x" = "x$(prefix)"; then \
diff --git a/src/po/ja.po b/src/po/ja.po
index 9549c240f..05389403b 100644
--- a/src/po/ja.po
+++ b/src/po/ja.po
@@ -3,16 +3,17 @@
# Do ":help uganda" in Vim to read copying and usage conditions.
# Do ":help credits" in Vim to see a list of people who contributed.
#
-# MURAOKA Taro <koron@tka.att.ne.jp>, 2001-6.
-# Last Change: 18-Apr-2006.
+# MURAOKA Taro <koron.kaoriya@gmail.com>, 2001-8.
+# Last Change: 31-May-2008.
#
msgid ""
msgstr ""
-"Project-Id-Version: Vim 7.0\n"
-"POT-Creation-Date: 2006-04-18 11:00+0900\n"
-"PO-Revision-Date: 2006-04-18 11:30+0900\n"
-"Last-Translator: MURAOKA Taro <koron@tka.att.ne.jp>\n"
-"Language-Team: MURAOKA Taro <koron@tka.att.ne.jp>\n"
+"Project-Id-Version: Vim 7.1\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-05-31 22:00+0900\n"
+"PO-Revision-Date: 2008-05-31 22:30+0900\n"
+"Last-Translator: MURAOKA Taro <koron.kaoriya@gmail.com>\n"
+"Language-Team: MURAOKA Taro <koron.kaoriya@gmail.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=euc-jp\n"
"Content-Transfer-Encoding: 8-bit\n"
@@ -114,12 +115,15 @@ msgstr "[読込エラー]"
msgid "[readonly]"
msgstr "[読込専用]"
+#, c-format
msgid "1 line --%d%%--"
msgstr "1 行 --%d%%--"
+#, c-format
msgid "%ld lines --%d%%--"
msgstr "%ld 行 --%d%%--"
+#, c-format
msgid "line %ld of %ld --%d%%-- col "
msgstr "行 %ld (全体 %ld) --%d%%-- col "
@@ -145,6 +149,7 @@ msgstr "末尾"
msgid "Top"
msgstr "先頭"
+#, c-format
msgid ""
"\n"
"# Buffer list:\n"
@@ -189,6 +194,9 @@ msgstr "E98: diffの出力を読込めません"
msgid "E99: Current buffer is not in diff mode"
msgstr "E99: 現在のバッファは差分モードではありません"
+msgid "E793: No other buffer in diff mode is modifiable"
+msgstr "E793: 差分モードである他のバッファは変更可能です"
+
msgid "E100: No other buffer in diff mode"
msgstr "E100: 差分モードである他のバッファはありません"
@@ -216,6 +224,9 @@ msgstr "E544: キーマップファイルがみつかりません"
msgid "E105: Using :loadkeymap not in a sourced file"
msgstr "E105: :source で取込むファイル以外では :loadkeymap を使えません"
+msgid "E791: Empty keymap entry"
+msgstr "E791: 空のキーマップエントリ"
+
msgid " Keyword completion (^N^P)"
msgstr " キーワード補完 (^N^P)"
@@ -282,6 +293,7 @@ msgstr " (置換) スクロール (^E/^Y)"
msgid "Scanning: %s"
msgstr "スキャン中: %s"
+#, c-format
msgid "Scanning tags."
msgstr "タグをスキャン中."
@@ -338,7 +350,7 @@ msgid "E713: Cannot use empty key for Dictionary"
msgstr "E713: 辞書型に空のキーを使うことはできません"
msgid "E714: List required"
-msgstr "E471: リスト型が必要です"
+msgstr "E714: リスト型が必要です"
msgid "E715: Dictionary required"
msgstr "E715: 辞書型が必要です"
@@ -613,6 +625,10 @@ msgid "E706: Variable type mismatch for: %s"
msgstr "E706: 変数の型が一致しません: %s"
#, c-format
+msgid "E795: Cannot delete variable %s"
+msgstr "E795: 変数 %s を削除できません"
+
+#, c-format
msgid "E741: Value is locked: %s"
msgstr "E741: 値がロックされています: %s"
@@ -678,6 +694,7 @@ msgstr "%s の実行を継続中です"
msgid "E133: :return not inside a function"
msgstr "E133: 関数外に :return がありました"
+#, c-format
msgid ""
"\n"
"# global variables:\n"
@@ -744,6 +761,7 @@ msgstr " マーク"
msgid " FAILED"
msgstr " 失敗"
+#. avoid a wait_return for this message, it's annoying
#, c-format
msgid "E137: Viminfo file is not writable: %s"
msgstr "E137: viminfoファイルが書込みできません: %s"
@@ -761,6 +779,7 @@ msgstr "viminfoファイル \"%s\" を書込み中"
msgid "# This viminfo file was generated by Vim %s.\n"
msgstr "# この viminfo ファイルは Vim %s によって生成されました.\n"
+#, c-format
msgid ""
"# You may edit it if you're careful!\n"
"\n"
@@ -768,6 +787,7 @@ msgstr ""
"# 変更する際には十分注意してください!\n"
"\n"
+#, c-format
msgid "# Value of 'encoding' when this file was written\n"
msgstr "# このファイルが書かれた時の 'encoding' の値\n"
@@ -810,6 +830,20 @@ msgstr ""
"\"%s\" には 'readonly' オプションが設定されています.\n"
"上書き強制をしますか?"
+#, c-format
+msgid ""
+"File permissions of \"%s\" are read-only.\n"
+"It may still be possible to write it.\n"
+"Do you wish to try?"
+msgstr ""
+"ファイル \"%s\" のパーミッションが読込専用です.\n"
+"それでも恐らく書き込むことは可能です.\n"
+"継続しますか?"
+
+#, c-format
+msgid "E505: \"%s\" is read-only (add ! to override)"
+msgstr "E505: \"%s\" は読込専用です (強制書込には ! を追加)"
+
msgid "Edit File"
msgstr "ファイルを編集"
@@ -864,6 +898,7 @@ msgstr "E148: globalコマンドに正規表現が指定されていません"
msgid "Pattern found in every line: %s"
msgstr "パターンが全ての行でみつかりました: %s"
+#, c-format
msgid ""
"\n"
"# Last Substitute String:\n"
@@ -1207,10 +1242,10 @@ msgstr "スワップファイルがありません"
msgid "Append File"
msgstr "追加ファイル"
-msgid "E747: Cannot change directory, buffer is modifed (add ! to override)"
+msgid "E747: Cannot change directory, buffer is modified (add ! to override)"
msgstr ""
-"E747: バッファが修正されているので, ディレクトリを変更できません (! "
-"を追加で上書)"
+"E747: バッファが修正されているので, ディレクトリを変更できません (! を追加で"
+"上書)"
msgid "E186: No previous directory"
msgstr "E186: 前のディレクトリはありません"
@@ -1446,6 +1481,9 @@ msgstr " はディレクトリです"
msgid "is not a file"
msgstr " はファイルではありません"
+msgid "is a device (disabled with 'opendevice' option)"
+msgstr " はデバイスです ('opendevice' オプションで回避できます)"
+
msgid "[New File]"
msgstr "[新ファイル]"
@@ -1483,6 +1521,9 @@ msgstr "[FIFO]"
msgid "[socket]"
msgstr "[ソケット]"
+msgid "[character special]"
+msgstr "[キャラクタ・デバイス]"
+
msgid "[RO]"
msgstr "[読専]"
@@ -1543,6 +1584,9 @@ msgstr "NetBeansバッファの一部を書き出すことはできません"
msgid "is not a file or writable device"
msgstr "はファイルでも書込み可能デバイスでもありません"
+msgid "writing to device disabled with 'opendevice' option"
+msgstr "'opendevice' オプションによりデバイスへの書き込みはできません"
+
msgid "is read-only (add ! to override)"
msgstr "は読込専用です (強制書込には ! を追加)"
@@ -2151,6 +2195,7 @@ msgstr "%d ページ"
msgid "No text to be printed"
msgstr "印刷するテキストがありません"
+#, c-format
msgid "Printing page %d (%d%%)"
msgstr "印刷中: ページ %d (%d%%)"
@@ -2290,15 +2335,15 @@ msgstr "E622: cscopeの起動準備(fork)に失敗しました"
msgid "cs_create_connection exec failed"
msgstr "cs_create_connection の実行に失敗しました"
-msgid "E623: Could not spawn cscope process"
-msgstr "E623: cscopeプロセスを起動できませんでした"
-
msgid "cs_create_connection: fdopen for to_fp failed"
msgstr "cs_create_connection: to_fp の fdopen に失敗しました"
msgid "cs_create_connection: fdopen for fr_fp failed"
msgstr "cs_create_connection: fr_fp の fdopen に失敗しました"
+msgid "E623: Could not spawn cscope process"
+msgstr "E623: cscopeプロセスを起動できませんでした"
+
msgid "E567: no cscope connections"
msgstr "E567: cscope接続に失敗しました"
@@ -2373,8 +2418,8 @@ msgid ""
"???: Sorry, this command is disabled, the MzScheme library could not be "
"loaded."
msgstr ""
-"???: このコマンドは無効です, ごめんなさい: MzScheme "
-"ライブラリをロードできませんでした."
+"???: このコマンドは無効です, ごめんなさい: MzScheme ライブラリをロードできま"
+"せんでした."
msgid "invalid expression"
msgstr "無効な式です"
@@ -2427,25 +2472,12 @@ msgstr "範囲外の行番号です"
msgid "not allowed in the Vim sandbox"
msgstr "サンドボックスでは許されません"
-#, c-format
-msgid "E370: Could not load library %s"
-msgstr "E370: ライブラリ %s をロードできませんでした"
-
-msgid "Sorry, this command is disabled: the Perl library could not be loaded."
-msgstr ""
-"このコマンドは無効です, ごめんなさい: Perlライブラリをロードできませんでした."
-
-msgid "E299: Perl evaluation forbidden in sandbox without the Safe module"
-msgstr ""
-"E299: サンドボックスでは Safe "
-"モジュールを使用しないPerlスクリプトは禁じられています"
-
msgid ""
"E263: Sorry, this command is disabled, the Python library could not be "
"loaded."
msgstr ""
-"E263: このコマンドは無効です,ごめんなさい: "
-"Pythonライブラリをロードできませんでした."
+"E263: このコマンドは無効です,ごめんなさい: Pythonライブラリをロードできません"
+"でした."
# Added at 07-Feb-2004.
msgid "E659: Cannot invoke Python recursively"
@@ -2512,11 +2544,11 @@ msgstr "E265: $_ は文字列のインスタンスでなければなりません"
msgid ""
"E266: Sorry, this command is disabled, the Ruby library could not be loaded."
msgstr ""
-"E266: このコマンドは無効です,ごめんなさい: "
-"Rubyライブラリをロードできませんでした."
+"E266: このコマンドは無効です,ごめんなさい: Rubyライブラリをロードできませんで"
+"した."
msgid "E267: unexpected return"
-msgstr "E265: 予期せぬ return です"
+msgstr "E267: 予期せぬ return です"
msgid "E268: unexpected next"
msgstr "E268: 予期せぬ next です"
@@ -2595,8 +2627,8 @@ msgid ""
"Cannot connect to SNiFF+. Check environment (sniffemacs must be found in "
"$PATH).\n"
msgstr ""
-"SNiFF+に接続できません. 環境をチェックしてください(sniffemacs が $PATH "
-"になければなりません).\n"
+"SNiFF+に接続できません. 環境をチェックしてください(sniffemacs が $PATH になけ"
+"ればなりません).\n"
msgid "E274: Sniff: Error during read. Disconnected"
msgstr "E274: Sniff: 読込中にエラーが発生しました. 切断しました"
@@ -2660,8 +2692,8 @@ msgstr "vim エラー"
msgid "cannot create buffer/window command: object is being deleted"
msgstr ""
-"バッファ/ウィンドウ作成コマンドを作成できません: "
-"オブジェクトが消去されていました"
+"バッファ/ウィンドウ作成コマンドを作成できません: オブジェクトが消去されていま"
+"した"
msgid ""
"cannot register callback command: buffer/window is already being deleted"
@@ -2670,27 +2702,27 @@ msgstr ""
#. This should never happen. Famous last word?
msgid ""
-"E280: TCL FATAL ERROR: reflist corrupt!? Please report this to "
-"vim-dev@vim.org"
+"E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim."
+"org"
msgstr ""
"E280: TCL 致命的エラー: reflist 汚染!? vim-dev@vim.org に報告してください"
msgid "cannot register callback command: buffer/window reference not found"
msgstr ""
-"コールバックコマンドを登録できません: "
-"バッファ/ウィンドウの参照がみつかりません"
+"コールバックコマンドを登録できません: バッファ/ウィンドウの参照がみつかりませ"
+"ん"
msgid ""
"E571: Sorry, this command is disabled: the Tcl library could not be loaded."
msgstr ""
-"E571: このコマンドは無効です,ごめんなさい: "
-"Tclライブラリをロードできませんでした."
+"E571: このコマンドは無効です,ごめんなさい: Tclライブラリをロードできませんで"
+"した."
msgid ""
"E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org"
msgstr ""
-"E281: TCL エラー: 終了コードが整数値ではありません!? vim-dev@vim.org "
-"に報告してください"
+"E281: TCL エラー: 終了コードが整数値ではありません!? vim-dev@vim.org に報告し"
+"てください"
#, c-format
msgid "E572: exit code %d"
@@ -2801,8 +2833,12 @@ msgstr ""
"\n"
" もしくは:"
-msgid "where case is ignored prepend / to make flag upper case"
-msgstr "大文字小文字は無視されます / フラグは大文字にしてください"
+msgid ""
+"\n"
+"Where case is ignored prepend / to make flag upper case"
+msgstr ""
+"\n"
+"大小文字が無視される場合は大文字にするために / を前置してください"
msgid ""
"\n"
@@ -2870,8 +2906,8 @@ msgstr "-C\t\t\tVi互換モード: 'compatible'"
msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'"
msgstr "-N\t\t\tVi非互換モード: 'nocompatible"
-msgid "-V[N]\t\tVerbose level"
-msgstr "-V[N]\t\tVerbose レベル"
+msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]"
+msgstr "-V[N][fname]\t\tログ出力設定 [レベル N] [ログファイル名 fname]"
msgid "-D\t\t\tDebugging mode"
msgstr "-D\t\t\tデバッグモード"
@@ -2971,8 +3007,11 @@ msgid ""
"--remote-wait-silent <files> Same, don't complain if there is no server"
msgstr "--remote-wait-silent <files> 同上, サーバが無くても警告文を出力しない"
-msgid "--remote-tab <files> As --remote but open tab page for each file"
-msgstr "--remote-tab <files> --remoteでファイル1つにつき1つのタブページを開く"
+msgid ""
+"--remote-tab[-wait][-silent] <files> As --remote but use tab page per file"
+msgstr ""
+"--remote-tab[-wait][-silent] <files> --remoteでファイル1つにつき1つのタブ"
+"ページを開く"
msgid "--remote-send <keys>\tSend <keys> to a Vim server and exit"
msgstr "--remote-send <keys>\tVimサーバに <keys> を送信して終了する"
@@ -3097,6 +3136,9 @@ msgstr "--socketid <xid>\t異なるGTK widgetでVimを開く"
msgid "-P <parent title>\tOpen Vim inside parent application"
msgstr "-P <親のタイトル>\tVimを親アプリケーションの中で起動する"
+msgid "--windowid <HWND>\tOpen Vim inside another win32 widget"
+msgstr "--windowid <HWND>\t異なるWin32 widgetの内部にVimを開く"
+
msgid "No display"
msgstr "ディスプレイが見つかりません"
@@ -3149,6 +3191,7 @@ msgstr ""
"\n"
"変更 行 列 テキスト"
+#, c-format
msgid ""
"\n"
"# File marks:\n"
@@ -3157,6 +3200,7 @@ msgstr ""
"# ファイルマーク:\n"
#. Write the jumplist with -'
+#, c-format
msgid ""
"\n"
"# Jumplist (newest first):\n"
@@ -3164,6 +3208,7 @@ msgstr ""
"\n"
"# ジャンプリスト (新しいものが先):\n"
+#, c-format
msgid ""
"\n"
"# History of marks within files (newest to oldest):\n"
@@ -3289,6 +3334,9 @@ msgstr ""
",\n"
"もしくはファイルが損傷しています."
+msgid " has been damaged (page size is smaller than minimum value).\n"
+msgstr " は損傷しています (ページサイズが最小値を下回っています).\n"
+
#, c-format
msgid "Using swap file \"%s\""
msgstr "スワップファイル \"%s\" を使用中"
@@ -3629,6 +3677,10 @@ msgstr "E328: メニューは他のモードにだけあります"
msgid "E329: No menu \"%s\""
msgstr "E329: \"%s\" というメニューはありません"
+#. Only a mnemonic or accelerator is not valid.
+msgid "E792: Empty menu name"
+msgstr "E792: メニュー名が空です"
+
msgid "E330: Menu path must not lead to a sub-menu"
msgstr "E330: メニューパスはサブメニューを生じるべきではありません"
@@ -3680,7 +3732,7 @@ msgid "E354: Invalid register name: '%s'"
msgstr "E354: 無効なレジスタ名: '%s'"
msgid "Messages maintainer: Bram Moolenaar <Bram@vim.org>"
-msgstr "日本語メッセージ翻訳/監修: 村岡 太郎 <koron@tka.att.ne.jp>"
+msgstr "日本語メッセージ翻訳/監修: 村岡 太郎 <koron.kaoriya@gmail.com>"
msgid "Interrupt: "
msgstr "割込み: "
@@ -3776,6 +3828,7 @@ msgstr "Vim: ファイルを保存中...\n"
msgid "Vim: Finished.\n"
msgstr "Vim: 終了しました.\n"
+#, c-format
msgid "ERROR: "
msgstr "エラー: "
@@ -3839,8 +3892,8 @@ msgid ""
"E343: Invalid path: '**[number]' must be at the end of the path or be "
"followed by '%s'."
msgstr ""
-"E343: 無効なパスです: '**[数値]' はpathの最後か '%s' "
-"が続いてないといけません."
+"E343: 無効なパスです: '**[数値]' はpathの最後か '%s' が続いてないといけませ"
+"ん."
#, c-format
msgid "E344: Can't find directory \"%s\" in cdpath"
@@ -3984,6 +4037,7 @@ msgstr ""
msgid "Illegal register name"
msgstr "不正なレジスタ名"
+#, c-format
msgid ""
"\n"
"# Registers:\n"
@@ -4140,6 +4194,13 @@ msgstr "E594: 最低 %d のカラム幅が必要です"
msgid "E355: Unknown option: %s"
msgstr "E355: 未知のオプションです: %s"
+#. There's another character after zeros or the string
+#. * is empty. In both cases, we are trying to set a
+#. * num option using a string.
+#, c-format
+msgid "E521: Number required: &%s = '%s'"
+msgstr "E521: 数字が必要です: &%s = '%s'"
+
msgid ""
"\n"
"--- Terminal codes ---"
@@ -4270,6 +4331,7 @@ msgstr "Vim: 2重のシグナルのため, 終了します\n"
msgid "Vim: Caught deadly signal %s\n"
msgstr "Vim: 致命的シグナル %s を検知しました\n"
+#, c-format
msgid "Vim: Caught deadly signal\n"
msgstr "Vim: 致命的シグナルを検知しました\n"
@@ -4292,6 +4354,20 @@ msgstr "X display の open がタイムアウトしました"
msgid ""
"\n"
+"Could not get security context for "
+msgstr ""
+"\n"
+"セキュリティコンテキストを取得できません "
+
+msgid ""
+"\n"
+"Could not set security context for "
+msgstr ""
+"\n"
+"セキュリティコンテキストを設定できません "
+
+msgid ""
+"\n"
"Cannot execute shell "
msgstr ""
"\n"
@@ -4399,21 +4475,26 @@ msgstr ""
msgid "Vim Warning"
msgstr "Vimの警告"
+#, c-format
msgid "E372: Too many %%%c in format string"
msgstr "E372: フォーマット文字列に %%%c が多過ぎます"
+#, c-format
msgid "E373: Unexpected %%%c in format string"
msgstr "E373: フォーマット文字列に予期せぬ %%%c がありました"
msgid "E374: Missing ] in format string"
msgstr "E374: フォーマット文字列に ] がありません"
+#, c-format
msgid "E375: Unsupported %%%c in format string"
msgstr "E375: フォーマット文字列では %%%c はサポートされません"
+#, c-format
msgid "E376: Invalid %%%c in format string prefix"
msgstr "E376: フォーマット文字列の前置に無効な %%%c があります"
+#, c-format
msgid "E377: Invalid %%%c in format string"
msgstr "E377: フォーマット文字列に無効な %%%c があります"
@@ -4459,6 +4540,10 @@ msgstr "E681: バッファは読み込まれませんでした"
msgid "E777: String or List expected"
msgstr "E777: 文字列かリストが必要です"
+#, c-format
+msgid "E369: invalid item in %s%%[]"
+msgstr "E369: 無効な項目です: %s%%[]"
+
msgid "E339: Pattern too long"
msgstr "E339: パターンが長過ぎます"
@@ -4472,6 +4557,7 @@ msgstr "E51: %s( が多過ぎます"
msgid "E52: Unmatched \\z("
msgstr "E52: \\z( が釣り合っていません"
+#, c-format
msgid "E53: Unmatched %s%%("
msgstr "E53: %s%%( が釣り合っていません"
@@ -4524,17 +4610,21 @@ msgid "E68: Invalid character after \\z"
msgstr "E68: \\z の後に不正な文字がありました"
#
+#, c-format
msgid "E69: Missing ] after %s%%["
msgstr "E69: %s%%[ の後に ] がありません"
+#, c-format
msgid "E70: Empty %s%%[]"
msgstr "E70: %s%%[] が空です"
#
+#, c-format
msgid "E678: Invalid character after %s%%[dxouU]"
msgstr "E678: %s%%[dxouU] の後に不正な文字がありました"
#
+#, c-format
msgid "E71: Invalid character after %s%%"
msgstr "E71: %s%% の後に不正な文字がありました"
@@ -4752,16 +4842,16 @@ msgid ""
"Defining COMPOUNDFORBIDFLAG after PFX item may give wrong results in %s line "
"%d"
msgstr ""
-"%s の %d 行目の PFX 項目の後の COMPOUNDFORBIDFLAG "
-"の定義は誤った結果を生じることがあります"
+"%s の %d 行目の PFX 項目の後の COMPOUNDFORBIDFLAG の定義は誤った結果を生じる"
+"ことがあります"
#, c-format
msgid ""
"Defining COMPOUNDPERMITFLAG after PFX item may give wrong results in %s line "
"%d"
msgstr ""
-"%s の %d 行目の PFX 項目の後の COMPOUNDPERMITFLAG "
-"の定義は誤った結果を生じることがあります"
+"%s の %d 行目の PFX 項目の後の COMPOUNDPERMITFLAG の定義は誤った結果を生じる"
+"ことがあります"
#, c-format
msgid "Wrong COMPOUNDWORDMAX value in %s line %d: %s"
@@ -4920,6 +5010,7 @@ msgstr "%s の %d 行目 認識不能なフラグです: %s"
msgid "Ignored %d words with non-ASCII characters"
msgstr "非ASCII文字を含む %d 個の単語を無視しました"
+#, c-format
msgid "Compressed %d of %d nodes; %d (%d%%) remaining"
msgstr "ノード %d 個(全 %d 個中) を圧縮しました; 残り %d (%d%%)"
@@ -4991,6 +5082,7 @@ msgstr "残念ですが, 修正候補はありません"
msgid "Sorry, only %ld suggestions"
msgstr "残念ですが, 修正候補は %ld 個しかありません"
+#. for when 'cmdheight' > 1
#. avoid more prompt
#, c-format
msgid "Change \"%.*s\" to:"
@@ -5396,6 +5488,9 @@ msgstr "番号 変更 時刻"
msgid "%ld seconds ago"
msgstr "%ld 秒経過しています"
+msgid "E790: undojoin is not allowed after undo"
+msgstr "E790: undo の直後に undojoin はできません"
+
msgid "E439: undo list corrupt"
msgstr "E439: アンドゥリストが壊れています"
@@ -5412,6 +5507,13 @@ msgstr ""
msgid ""
"\n"
+"MS-Windows 64 bit GUI version"
+msgstr ""
+"\n"
+"MS-Windows 64 ビット GUI 版"
+
+msgid ""
+"\n"
"MS-Windows 32 bit GUI version"
msgstr ""
"\n"
@@ -5727,6 +5829,19 @@ msgstr "E446: カーソルの下にファイル名がありません"
msgid "E447: Can't find file \"%s\" in path"
msgstr "E447: pathには \"%s\" というファイルがありません"
+#, c-format
+msgid "E370: Could not load library %s"
+msgstr "E370: ライブラリ %s をロードできませんでした"
+
+msgid "Sorry, this command is disabled: the Perl library could not be loaded."
+msgstr ""
+"このコマンドは無効です, ごめんなさい: Perlライブラリをロードできませんでした."
+
+msgid "E299: Perl evaluation forbidden in sandbox without the Safe module"
+msgstr ""
+"E299: サンドボックスでは Safe モジュールを使用しないPerlスクリプトは禁じられ"
+"ています"
+
msgid "Edit with &multiple Vims"
msgstr "複数のVimで編集する (&M)"
@@ -5739,6 +5854,7 @@ msgstr "Vimで差分を見る"
msgid "Edit with &Vim"
msgstr "Vimで編集する (&V)"
+#. Now concatenate
msgid "Edit with existing Vim - "
msgstr "既存のVimで編集する - "
@@ -5994,8 +6110,8 @@ msgid "E46: Cannot change read-only variable \"%s\""
msgstr "E46: 読取専用変数 \"%s\" には値を設定できません"
#, c-format
-msgid "E46: Cannot set variable in the sandbox: \"%s\""
-msgstr "E46: サンドボックスでは変数 \"%s\" に値を設定できません"
+msgid "E794: Cannot set variable in the sandbox: \"%s\""
+msgstr "E794: サンドボックスでは変数 \"%s\" に値を設定できません"
msgid "E47: Error while reading errorfile"
msgstr "E47: エラーファイルの読込中にエラーが発生しました"
@@ -6079,7 +6195,6 @@ msgstr "E363: パターンが 'maxmempattern' 以上のメモリを使用します"
msgid "E749: empty buffer"
msgstr "E749: バッファが空です"
-#
msgid "E682: Invalid search pattern or delimiter"
msgstr "E682: 検索パターンか区切り記号が不正です"
diff --git a/src/po/pl.UTF-8.po b/src/po/pl.UTF-8.po
index 75270caed..e13c85595 100644
--- a/src/po/pl.UTF-8.po
+++ b/src/po/pl.UTF-8.po
@@ -73,7 +73,7 @@ msgstr "E88: Nie mog przej przed pierwszy bufor"
#, c-format
msgid "E89: No write since last change for buffer %ld (add ! to override)"
-msgstr "E89 Nie zapisano zmian w buforze %ld (wymu przez !)"
+msgstr "E89: Nie zapisano zmian w buforze %ld (wymu przez !)"
msgid "E90: Cannot unload last buffer"
msgstr "E90: Nie mog wyadowa ostatniego bufora"
@@ -339,7 +339,7 @@ msgstr "E111: Brak ']'"
#, c-format
msgid "E686: Argument of %s must be a List"
-msgstr "E487: Argument %s musi by List"
+msgstr "E686: Argument %s musi by List"
#, c-format
msgid "E712: Argument of %s must be a List or Dictionary"
@@ -385,7 +385,7 @@ msgstr "E130: Nieznana funkcja: %s"
#, c-format
msgid "E461: Illegal variable name: %s"
-msgstr "E418: Niedozwolona nazwa zmiennej: %s"
+msgstr "E461: Niedozwolona nazwa zmiennej: %s"
msgid "E687: Less targets than List items"
msgstr "E687: Mniej cel坦w ni甜 element坦w Listy"
@@ -1064,7 +1064,7 @@ msgid "E156: Missing sign name"
msgstr "E156: Brak nazwy znaku"
msgid "E612: Too many signs defined"
-msgstr "E255: Zbyt wiele nazw znak坦w"
+msgstr "E612: Zbyt wiele nazw znak坦w"
#, c-format
msgid "E239: Invalid sign text: %s"
@@ -1228,7 +1228,7 @@ msgstr "Brak pliku wymiany"
msgid "Append File"
msgstr "Docz plik"
-msgid "E747: Cannot change directory, buffer is modifed (add ! to override)"
+msgid "E747: Cannot change directory, buffer is modified (add ! to override)"
msgstr ""
"E747: Nie mog zmieni katalogu, bufor zosta zmodyfikowany (dodaj ! aby "
"wymusi)"
@@ -1465,8 +1465,8 @@ msgstr "jest katalogiem"
msgid "is not a file"
msgstr "nie jest plikiem"
-msgid "is a device (disabled with 'opendevice' option"
-msgstr "jest urzdzeniem (wyczonym w opcji 'opendevice'"
+msgid "is a device (disabled with 'opendevice' option)"
+msgstr "jest urzdzeniem (wyczonym w opcji 'opendevice')"
msgid "[New File]"
msgstr "[Nowy Plik]"
@@ -2523,8 +2523,7 @@ msgid "E265: $_ must be an instance of String"
msgstr "E265: $_ musi by reprezentacj acucha"
msgid "E266: Sorry, this command is disabled, the Ruby library could not be loaded."
-msgstr ""
-"E263: Przykro mi, ta komenda jest wyczona, bo nie mo甜na zaadowa "
+msgstr "E266: Przykro mi, ta komenda jest wyczona, bo nie mo甜na zaadowa "
"biblioteki Ruby."
msgid "E267: unexpected return"
@@ -2692,7 +2691,7 @@ msgstr ""
"bufora/okna"
msgid "E571: Sorry, this command is disabled: the Tcl library could not be loaded."
-msgstr "Przykro mi, ta komenda jest wyczona, bo nie mo甜na zaadowa biblioteki Tcl."
+msgstr "E571: Przykro mi, ta komenda jest wyczona, bo nie mo甜na zaadowa biblioteki Tcl."
msgid "E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org"
msgstr ""
@@ -3843,7 +3842,7 @@ msgid "E548: digit expected"
msgstr "E548: oczekiwano cyfry"
msgid "E549: Illegal percentage"
-msgstr "E459: Niedozwolony procent"
+msgstr "E549: Niedozwolony procent"
msgid "Enter encryption key: "
msgstr "Wprowad添 klucz do odkodowania: "
diff --git a/src/po/sk.po b/src/po/sk.po
index 3c67b32c7..8d62d3bb9 100644
--- a/src/po/sk.po
+++ b/src/po/sk.po
@@ -346,7 +346,7 @@ msgid "E716: Key not present in Dictionary: %s"
msgstr "E716: k禦 sa v Slovnku (Dictionary) nenachdza: %s"
msgid "E122: Function %s already exists, add ! to replace it"
-msgstr "E112: Funkcia %s u existuje. Pouite ! pre jej nahradenie."
+msgstr "E122: Funkcia %s u existuje. Pouite ! pre jej nahradenie."
msgid "E717: Dictionary entry already exists"
msgstr "E717: Zznam v Slovnku (Dictionary) u existuje"
@@ -527,7 +527,7 @@ msgid "E241: Unable to send to %s"
msgstr "E241: Nemem posla na %s"
msgid "E277: Unable to read a server reply"
-msgstr "E227: Nemem 蓁ta odpove servra"
+msgstr "E277: Nemem 蓁ta odpove servra"
msgid "E655: Too many symbolic links (cycle?)"
msgstr "E655: Prli mnoho symbolickch odkazov (sluka?)"
@@ -866,7 +866,7 @@ msgid "E156: Missing sign name"
msgstr "E156: Chba meno pre znaku"
msgid "E612: Too many signs defined"
-msgstr "E255: Prli mnoho definovanch znaiek"
+msgstr "E612: Prli mnoho definovanch znaiek"
#, c-format
msgid "E239: Invalid sign text: %s"
@@ -1128,7 +1128,7 @@ msgstr "iadny odkladac sbor"
msgid "Append File"
msgstr "Pripoji sbor"
-msgid "E747: Cannot change directory, buffer is modifed (add ! to override)"
+msgid "E747: Cannot change directory, buffer is modified (add ! to override)"
msgstr "E747: Nemono zmeni adresr, buffer je modifikovan (pouite ! pre vyntenie)"
msgid "E186: No previous directory"
@@ -1260,13 +1260,13 @@ msgid "E579: :if nesting too deep"
msgstr "E579: vnorenie :if je prli hlbok"
msgid "E580: :endif without :if"
-msgstr "E580 :endif bez zodpovedajceho :if"
+msgstr "E580: :endif bez zodpovedajceho :if"
msgid "E581: :else without :if"
-msgstr "E581 :else bez zodpovedajceho :if"
+msgstr "E581: :else bez zodpovedajceho :if"
msgid "E582: :elseif without :if"
-msgstr "E582 :elseif bez zodpovedajceho :if"
+msgstr "E582: :elseif bez zodpovedajceho :if"
msgid "E583: multiple :else"
msgstr "E583: viacnsobn :else"
diff --git a/src/po/vi.po b/src/po/vi.po
index 5bc9f5342..f1bfb31f5 100644
--- a/src/po/vi.po
+++ b/src/po/vi.po
@@ -2779,7 +2779,7 @@ msgid "E296: Seek error in swap file write"
msgstr "E296: L畛i t狸m ki畉m khi ghi nh畛 t畉p tin trao 畛i (swap)"
msgid "E297: Write error in swap file"
-msgstr "E295: L畛i ghi nh畛 t畉p tin trao 畛i (swap)"
+msgstr "E297: L畛i ghi nh畛 t畉p tin trao 畛i (swap)"
msgid "E300: Swap file already exists (symlink attack?)"
msgstr ""
@@ -3772,7 +3772,7 @@ msgid "'columns' is not 80, cannot execute external commands"
msgstr "T湛y ch畛n 'columns' kh叩c 80, ch動董ng tr狸nh ngo畉i tr炭 kh担ng th畛 th畛c hi畛n"
msgid "E237: Printer selection failed"
-msgstr "E327: Ch畛n m叩y in kh担ng thnh c担ng"
+msgstr "E237: Ch畛n m叩y in kh担ng thnh c担ng"
#, c-format
msgid "to %s on %s"
diff --git a/src/po/zh_CN.UTF-8.po b/src/po/zh_CN.UTF-8.po
index cb516e609..018231874 100644
--- a/src/po/zh_CN.UTF-8.po
+++ b/src/po/zh_CN.UTF-8.po
@@ -1207,7 +1207,7 @@ msgstr "篋ゆ∽篁"
msgid "Append File"
msgstr "菴遵篁"
-msgid "E747: Cannot change directory, buffer is modifed (add ! to override)"
+msgid "E747: Cannot change directory, buffer is modified (add ! to override)"
msgstr "E747: 筝醇劫綵鐚膽峨阪群篆 (莚桁 ! 綣阪倶ц)"
msgid "E186: No previous directory"
diff --git a/src/po/zh_TW.UTF-8.po b/src/po/zh_TW.UTF-8.po
index b4260b458..3ef058ddd 100644
--- a/src/po/zh_TW.UTF-8.po
+++ b/src/po/zh_TW.UTF-8.po
@@ -705,7 +705,7 @@ msgstr "E478: 筝荀薊!"
#, c-format
msgid "E661: Sorry, no '%s' help for %s"
-msgstr "E149: 掩, 羃 %s-%s 茯"
+msgstr "E661: 掩, 羃 %s-%s 茯"
#, c-format
msgid "E149: Sorry, no help for %s"
@@ -1684,7 +1684,7 @@ msgid "E231: 'guifontwide' invalid"
msgstr "E231: 筝罩g∈ 'guifontwide'"
msgid "E599: Value of 'imactivatekey' is invalid"
-msgstr "E559: 'imactivatekey' 寂罩g∈"
+msgstr "E599: 'imactivatekey' 寂罩g∈"
#, c-format
msgid "E254: Cannot allocate color %s"
@@ -4011,7 +4011,7 @@ msgstr "E56: %s* 膊篁ユ腥榊"
#, c-format
msgid "E57: %s+ operand could be empty"
-msgstr "E56: %s+ 膊篁ユ腥榊"
+msgstr "E57: %s+ 膊篁ユ腥榊"
#, c-format
msgid "E59: invalid character after %s@"
@@ -4937,7 +4937,7 @@ msgstr "E234: 筝罩g∈絖 (Fontset): %s"
#, c-format
msgid "E235: Unknown font: %s"
-msgstr "筝罩g∈絖腮: %s"
+msgstr "E235: 筝罩g∈絖腮: %s"
#, c-format
msgid "E236: Font \"%s\" is not fixed-width"
diff --git a/src/tag.c b/src/tag.c
index c1628d266..29893de76 100644
--- a/src/tag.c
+++ b/src/tag.c
@@ -17,10 +17,6 @@
#include "vim.h"
-#ifdef HAVE_FCNTL_H
-# include <fcntl.h> /* for lseek() */
-#endif
-
/*
* Structure to hold pointers to various items in a tag line.
*/
@@ -2664,7 +2660,7 @@ get_tagfname(tnp, first, buf)
/* move the filename one char forward and truncate the
* filepath with a NUL */
filename = gettail(buf);
- mch_memmove(filename + 1, filename, STRLEN(filename) + 1);
+ STRMOVE(filename + 1, filename);
*filename++ = NUL;
tnp->tn_search_ctx = vim_findfile_init(buf, filename,
@@ -3392,13 +3388,6 @@ expand_tag_fname(fname, tag_fname, expand)
}
/*
- * Moves the tail part of the path (including the terminating NUL) pointed to
- * by "tail" to the new location pointed to by "here". This should accomodate
- * an overlapping move.
- */
-#define movetail(here, tail) mch_memmove(here, tail, STRLEN(tail) + (size_t)1)
-
-/*
* Converts a file name into a canonical form. It simplifies a file name into
* its simplest form by stripping out unneeded components, if any. The
* resulting file name is simplified in place and will either be the same
@@ -3451,7 +3440,7 @@ simplify_filename(filename)
else
#endif
if (vim_ispathsep(*p))
- movetail(p, p + 1); /* remove duplicate "/" */
+ STRMOVE(p, p + 1); /* remove duplicate "/" */
else if (p[0] == '.' && (vim_ispathsep(p[1]) || p[1] == NUL))
{
if (p == start && relative)
@@ -3468,7 +3457,7 @@ simplify_filename(filename)
mb_ptr_adv(tail);
else if (p > start)
--p; /* strip preceding path separator */
- movetail(p, tail);
+ STRMOVE(p, tail);
}
}
else if (p[0] == '.' && p[1] == '.' &&
@@ -3584,19 +3573,19 @@ simplify_filename(filename)
{
if (p > start && tail[-1] == '.')
--p;
- movetail(p, tail); /* strip previous component */
+ STRMOVE(p, tail); /* strip previous component */
}
--components;
}
}
else if (p == start && !relative) /* leading "/.." or "/../" */
- movetail(p, tail); /* strip ".." or "../" */
+ STRMOVE(p, tail); /* strip ".." or "../" */
else
{
if (p == start + 2 && p[-2] == '.') /* leading "./../" */
{
- movetail(p - 2, p); /* strip leading "./" */
+ STRMOVE(p - 2, p); /* strip leading "./" */
tail -= 2;
}
p = tail; /* skip to char after ".." or "../" */