summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2008-06-24 21:16:56 +0000
committerBram Moolenaar <Bram@vim.org>2008-06-24 21:16:56 +0000
commit3577c6fafb77da5419cd1001dac56f204d480bdc (patch)
tree46a08e8d03068c31624359c2601b3645c2881d8c /src
parenta7241f5f19fd0865ce697939c347a8c88fb507d5 (diff)
updated for version 7.2a
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 7f7bfee596..02b1747741 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 44c9c6f387..cca2eef9f8 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 734f6e64c1..a96a3d1c24 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 de123a09ce..b97e38f92f 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 469801bb80..b31e05436b 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 1e8ad84d7a..09c3027cb1 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 e4ee182bcf..875b5e423c 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 df1367f834..c86703eebb 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 6ab73f2b67..4e90593665 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 0000000000..55155f8844
--- /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 4c3f39f2c7..ef73270da9 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 54837ecb2e..99523b7aa6 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 15e616061e..b57ee23886 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 15258f48ce..26a8168d67 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 d30d72ff4c..2b7eae0689 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 9549c240fa..05389403bd 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 ""
-"???: このコマンドは無効です, ごめんなさい: