From f31b9729cdb62072f12a98746c7e24557083b475 Mon Sep 17 00:00:00 2001 From: Jindrich Novy Date: Thu, 4 Jan 2007 16:14:38 +0000 Subject: [PATCH] - update to new CVS snapshot (fixes #220828) - update bindings again --- .cvsignore | 1 + mc-extensions.patch | 58 +++++--- mc-utf8.patch | 349 ++++++++++++++++++++++---------------------- mc.spec | 8 +- sources | 2 +- 5 files changed, 220 insertions(+), 198 deletions(-) diff --git a/.cvsignore b/.cvsignore index fca3d0d..8f7c202 100644 --- a/.cvsignore +++ b/.cvsignore @@ -5,3 +5,4 @@ mc-2006-09-12-21.tar.gz mc-2006-09-25-14.tar.gz mc-2006-10-15-16.tar.gz mc-2006-11-14-16.tar.gz +mc-2006-12-28-05.tar.gz diff --git a/mc-extensions.patch b/mc-extensions.patch index 3ef6513..b021d4e 100644 --- a/mc-extensions.patch +++ b/mc-extensions.patch @@ -1,5 +1,5 @@ ---- mc-2006-11-14-16/configure.ac.extensions 2006-11-14 17:05:09.000000000 +0100 -+++ mc-2006-11-14-16/configure.ac 2006-12-04 12:53:03.000000000 +0100 +--- mc/configure.ac.extensions 2006-12-28 06:34:31.000000000 +0100 ++++ mc/configure.ac 2007-01-04 15:42:15.000000000 +0100 @@ -83,7 +83,7 @@ AC_CHECK_TOOL(AR, ar, ar) @@ -9,9 +9,9 @@ dnl dnl Ovverriding mmap support. This has to be before AC_FUNC_MMAP is used. ---- mc-2006-11-14-16/configure.extensions 2006-11-14 17:05:25.000000000 +0100 -+++ mc-2006-11-14-16/configure 2006-12-04 12:53:03.000000000 +0100 -@@ -5767,7 +5767,7 @@ +--- mc/configure.extensions 2006-12-28 06:34:48.000000000 +0100 ++++ mc/configure 2007-01-04 15:42:15.000000000 +0100 +@@ -7166,7 +7166,7 @@ fi @@ -20,8 +20,8 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 ---- mc-2006-11-14-16/lib/mc.ext.in.extensions 2006-06-22 15:40:51.000000000 +0200 -+++ mc-2006-11-14-16/lib/mc.ext.in 2006-12-04 13:07:36.000000000 +0100 +--- mc/lib/mc.ext.in.extensions 2006-12-28 04:45:29.000000000 +0100 ++++ mc/lib/mc.ext.in 2007-01-04 15:53:33.000000000 +0100 @@ -220,14 +220,25 @@ # C @@ -65,7 +65,7 @@ # Manual page # Exception - .so libraries are not manual pages -@@ -328,18 +342,24 @@ +@@ -328,18 +341,24 @@ type/^Netpbm Include=image @@ -92,22 +92,37 @@ View=%view{ascii} identify %f #View=%view{ascii} asciiview %f -@@ -357,8 +377,12 @@ +@@ -347,7 +366,8 @@ + ### Sound files ### + + regex/\.([wW][aA][vV]|[sS][nN][dD]|[vV][oO][cC]|[aA][uU]|[sS][mM][pP]|[aA][iI][fF][fF]|[sS][nN][dD])$ +- Open=if [ "$DISPLAY" = "" ]; then play %f; else (xmms %f >/dev/null 2>&1 &); fi ++ Open=play %f ++# Open=if [ "$DISPLAY" = "" ]; then play %f; else (xmms %f >/dev/null 2>&1 &); fi + + regex/\.([mM][oO][dD]|[sS]3[mM]|[xX][mM]|[iI][tT]|[mM][tT][mM]|669|[sS][tT][mM]|[uU][lL][tT]|[fF][aA][rR])$ + Open=mikmod %f +@@ -357,11 +377,16 @@ Open=vplay -s 22 %f regex/\.([mM][pP]3)$ -- Open=if [ "$DISPLAY" = "" ]; then mpg123 %f; else (xmms %f &); fi +- Open=if [ "$DISPLAY" = "" ]; then mpg123 %f; else (xmms %f >/dev/null 2>&1 &); fi - View=%view{ascii} mpg123 -vtn1 %f 2>&1 | sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p' + Include=audio -+ #Open=if [ "$DISPLAY" = "" ]; then mpg123 %f; else (xmms %f &); fi -+ #View=%view{ascii} mpg123 -vtn1 %f 2>&1 | sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p' ++# Open=if [ "$DISPLAY" = "" ]; then mpg123 %f; else (xmms %f >/dev/null 2>&1 &); fi ++# View=%view{ascii} mpg123 -vtn1 %f 2>&1 | sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p' + +regex/\.([mM][kK][aA])$ + Include=audio regex/\.([oO][gG][gG])$ - Open=if [ "$DISPLAY" = "" ]; then ogg123 %f; else (xmms %f &); fi -@@ -371,6 +395,9 @@ +- Open=if [ "$DISPLAY" = "" ]; then ogg123 %f; else (xmms %f >/dev/null 2>&1 &); fi ++ Open=ogg123 %f ++# Open=if [ "$DISPLAY" = "" ]; then ogg123 %f; else (xmms %f >/dev/null 2>&1 &); fi + View=%view{ascii} ogginfo %s + + regex/\.([mM][iI][dD][iI]?|[rR][mM][iI][dD]?)$ +@@ -371,11 +396,15 @@ Open=mplayer -vo null %f View=%view{ascii} mplayer -quiet -slave -frames 0 -vo null -ao null -identify %f 2>/dev/null | tail +13 || file %f @@ -117,7 +132,14 @@ ### Play lists ### -@@ -395,20 +422,27 @@ + regex/\.([mM]3[uU]|[pP][lL][sS])$ +- Open=if [ -z "$DISPLAY" ]; then mplayer -vo null -playlist %f; else (xmms -p %f >/dev/null 2>&1 &); fi ++ Open=mplayer -vo null -playlist %f ++# Open=if [ -z "$DISPLAY" ]; then mplayer -vo null -playlist %f; else (xmms -p %f >/dev/null 2>&1 &); fi + + + ### Video ### +@@ -395,20 +424,27 @@ regex/\.([mM][pP]4|[mM][pP][eE]?[gG])$ Include=video @@ -146,7 +168,7 @@ #Open=(gtv %f >/dev/null 2>&1 &) #Open=(xanim %f >/dev/null 2>&1 &) -@@ -417,12 +451,13 @@ +@@ -417,12 +453,13 @@ # Postscript type/^PostScript @@ -162,7 +184,7 @@ #Open=(acroread %f &) #Open=(ghostview %f &) View=%view{ascii} pdftotext %f - -@@ -433,7 +468,7 @@ +@@ -433,7 +470,7 @@ # html regex/\.([hH][tT][mM][lL]?)$ Open=(if test -n "@X11_WWW@" && test -n "$DISPLAY"; then (@X11_WWW@ file://%d/%p &) 1>&2; else links %f || lynx -force_html %f || ${PAGER:-more} %f; fi) 2>/dev/null @@ -171,7 +193,7 @@ # StarOffice 5.2 shell/.sdw -@@ -450,22 +485,27 @@ +@@ -450,22 +487,27 @@ # Microsoft Word Document regex/\.([Dd][oO][cCtT]|[Ww][rR][iI])$ diff --git a/mc-utf8.patch b/mc-utf8.patch index e804465..f7cc929 100644 --- a/mc-utf8.patch +++ b/mc-utf8.patch @@ -1,5 +1,5 @@ ---- mc-2006-09-25-14/acinclude.m4.utf8 2006-09-09 00:35:29.000000000 +0200 -+++ mc-2006-09-25-14/acinclude.m4 2006-10-10 09:35:14.000000000 +0200 +--- mc/acinclude.m4.utf8 2006-09-09 00:35:29.000000000 +0200 ++++ mc/acinclude.m4 2007-01-04 16:20:56.000000000 +0100 @@ -399,14 +399,14 @@ AC_DEFUN([MC_WITH_SLANG], [ fi @@ -23,8 +23,8 @@ if test x$with_screen = xslang; then AC_DEFINE(HAVE_SYSTEM_SLANG, 1, ---- mc-2006-09-25-14/src/layout.c.utf8 2006-09-25 16:47:33.000000000 +0200 -+++ mc-2006-09-25-14/src/layout.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/layout.c.utf8 2006-11-10 01:22:30.000000000 +0100 ++++ mc/src/layout.c 2007-01-04 16:20:56.000000000 +0100 @@ -366,36 +366,36 @@ init_layout (void) while (i--) { @@ -98,8 +98,8 @@ widget_set_size (&the_menubar->widget, 0, 0, 1, COLS); ---- mc-2006-09-25-14/src/tty.c.utf8 2006-05-23 16:20:39.000000000 +0200 -+++ mc-2006-09-25-14/src/tty.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/tty.c.utf8 2006-05-23 16:20:39.000000000 +0200 ++++ mc/src/tty.c 2007-01-04 16:20:56.000000000 +0100 @@ -134,10 +134,12 @@ tty_print_char(int c) * defined or not. Congratulations! At least, they left the API call * for SLsmg_write_nchars as it has always been. @@ -117,8 +117,8 @@ #else addch(c); #endif ---- mc-2006-09-25-14/src/option.c.utf8 2006-02-28 18:44:28.000000000 +0100 -+++ mc-2006-09-25-14/src/option.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/option.c.utf8 2006-02-28 18:44:28.000000000 +0100 ++++ mc/src/option.c 2007-01-04 16:20:56.000000000 +0100 @@ -123,12 +123,12 @@ init_configure (void) title2 = _(" Pause after run... "); title3 = _(" Other options "); @@ -166,8 +166,8 @@ i18n_config_flag = 1; } ---- mc-2006-09-25-14/src/menu.h.utf8 2004-12-03 20:17:47.000000000 +0100 -+++ mc-2006-09-25-14/src/menu.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/menu.h.utf8 2004-12-03 20:17:47.000000000 +0100 ++++ mc/src/menu.h 2007-01-04 16:20:56.000000000 +0100 @@ -21,6 +21,8 @@ typedef struct Menu { menu_entry *entries; int start_x; /* position relative to menubar start */ @@ -177,8 +177,8 @@ } Menu; extern int menubar_visible; ---- mc-2006-09-25-14/src/menu.c.utf8 2005-09-06 22:36:23.000000000 +0200 -+++ mc-2006-09-25-14/src/menu.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/menu.c.utf8 2005-09-06 22:36:23.000000000 +0200 ++++ mc/src/menu.c 2007-01-04 16:20:56.000000000 +0100 @@ -22,6 +22,7 @@ #include @@ -380,8 +380,8 @@ g_free (menu->name); g_free (menu->help_node); g_free (menu); ---- mc-2006-09-25-14/src/filegui.c.utf8 2006-01-30 18:01:58.000000000 +0100 -+++ mc-2006-09-25-14/src/filegui.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/filegui.c.utf8 2006-01-30 18:01:58.000000000 +0100 ++++ mc/src/filegui.c 2007-01-04 16:20:56.000000000 +0100 @@ -65,6 +65,7 @@ #include "filegui.h" #include "key.h" /* get_event */ @@ -527,8 +527,8 @@ + g_free(def_text); return dest_dir; } ---- mc-2006-09-25-14/src/panelize.c.utf8 2005-05-27 05:35:15.000000000 +0200 -+++ mc-2006-09-25-14/src/panelize.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/panelize.c.utf8 2005-05-27 05:35:15.000000000 +0200 ++++ mc/src/panelize.c 2007-01-04 16:20:56.000000000 +0100 @@ -127,7 +127,7 @@ init_panelize (void) i = sizeof (panelize_but) / sizeof (panelize_but[0]); while (i--) { @@ -553,8 +553,8 @@ #endif /* ENABLE_NLS */ ---- mc-2006-09-25-14/src/slint.c.utf8 2005-09-06 22:36:23.000000000 +0200 -+++ mc-2006-09-25-14/src/slint.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/slint.c.utf8 2005-09-06 22:36:23.000000000 +0200 ++++ mc/src/slint.c 2007-01-04 16:20:56.000000000 +0100 @@ -141,7 +141,9 @@ void slang_init (void) { @@ -566,8 +566,8 @@ /* * If the terminal in not in terminfo but begins with a well-known * string such as "linux" or "xterm" S-Lang will go on, but the ---- mc-2006-09-25-14/src/main.c.utf8 2006-09-25 16:47:34.000000000 +0200 -+++ mc-2006-09-25-14/src/main.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/main.c.utf8 2006-09-25 16:47:34.000000000 +0200 ++++ mc/src/main.c 2007-01-04 16:20:56.000000000 +0100 @@ -704,7 +704,7 @@ load_prompt (int fd, void *unused) int prompt_len; @@ -589,8 +589,8 @@ *s = '?'; } while (*++s); fprintf (stdout, "\33]0;mc - %s\7", p); ---- mc-2006-09-25-14/src/view.c.utf8 2006-08-03 17:50:57.000000000 +0200 -+++ mc-2006-09-25-14/src/view.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/view.c.utf8 2006-12-12 18:39:33.000000000 +0100 ++++ mc/src/view.c 2007-01-04 16:20:56.000000000 +0100 @@ -43,6 +43,10 @@ #include #include @@ -681,8 +681,8 @@ } col++; tty_setcolor (NORMAL_COLOR); ---- mc-2006-09-25-14/src/screen.c.utf8 2006-02-09 02:59:16.000000000 +0100 -+++ mc-2006-09-25-14/src/screen.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/screen.c.utf8 2006-02-09 02:59:16.000000000 +0100 ++++ mc/src/screen.c 2007-01-04 16:20:56.000000000 +0100 @@ -171,21 +171,56 @@ add_permission_string (char *dest, int w static const char * string_file_name (file_entry *fe, int len) @@ -1110,8 +1110,8 @@ paint_panel (panel); } ---- mc-2006-09-25-14/src/widget.h.utf8 2006-02-28 18:44:28.000000000 +0100 -+++ mc-2006-09-25-14/src/widget.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/widget.h.utf8 2006-02-28 18:44:28.000000000 +0100 ++++ mc/src/widget.h 2007-01-04 16:20:56.000000000 +0100 @@ -22,6 +22,7 @@ typedef struct WButton { char *text; /* text of button */ int hotkey; /* hot KEY */ @@ -1154,8 +1154,8 @@ GList *history; /* The history */ int need_push; /* need to push the current Input on hist? */ char **completions; /* Possible completions array */ ---- mc-2006-09-25-14/src/tty.h.utf8 2006-05-15 17:46:20.000000000 +0200 -+++ mc-2006-09-25-14/src/tty.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/tty.h.utf8 2006-05-15 17:46:20.000000000 +0200 ++++ mc/src/tty.h 2007-01-04 16:20:56.000000000 +0100 @@ -8,6 +8,8 @@ of ifdefs in the other files small. */ @@ -1165,8 +1165,8 @@ #ifdef HAVE_SLANG # include "myslang.h" #endif ---- mc-2006-09-25-14/src/hotlist.c.utf8 2006-08-08 19:55:46.000000000 +0200 -+++ mc-2006-09-25-14/src/hotlist.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/hotlist.c.utf8 2006-08-08 19:55:46.000000000 +0200 ++++ mc/src/hotlist.c 2007-01-04 16:20:56.000000000 +0100 @@ -563,7 +563,7 @@ init_i18n_stuff(int list_type, int cols) row = hotlist_but [i].y; @@ -1227,8 +1227,8 @@ char *label_string = g_strdup (current_panel->cwd); strip_password (label_string, 1); ---- mc-2006-09-25-14/src/help.c.utf8 2005-07-22 11:29:50.000000000 +0200 -+++ mc-2006-09-25-14/src/help.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/help.c.utf8 2005-07-22 11:29:50.000000000 +0200 ++++ mc/src/help.c 2007-01-04 16:20:56.000000000 +0100 @@ -449,10 +449,28 @@ static void help_show (Dlg_head *h, cons #ifndef HAVE_SLANG addch (acs_map [c]); @@ -1271,8 +1271,8 @@ if (!filename) g_free (hlpfile); ---- mc-2006-09-25-14/src/wtools.c.utf8 2006-09-14 16:16:10.000000000 +0200 -+++ mc-2006-09-25-14/src/wtools.c 2006-10-10 09:36:13.000000000 +0200 +--- mc/src/wtools.c.utf8 2006-09-14 16:16:10.000000000 +0200 ++++ mc/src/wtools.c 2007-01-04 16:20:56.000000000 +0100 @@ -49,11 +49,11 @@ create_listbox_window (int cols, int lin /* Adjust sizes */ lines = (lines > LINES - 6) ? LINES - 6 : lines; @@ -1332,8 +1332,8 @@ quick_widgets[0].x_divisions = quick_widgets[1].x_divisions = len; #endif /* ENABLE_NLS */ ---- mc-2006-09-25-14/src/util.h.utf8 2006-02-06 17:55:43.000000000 +0100 -+++ mc-2006-09-25-14/src/util.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/util.h.utf8 2006-02-06 17:55:43.000000000 +0100 ++++ mc/src/util.h 2007-01-04 16:20:56.000000000 +0100 @@ -103,6 +103,13 @@ void init_uid_gid_cache (void); char *get_group (int); char *get_owner (int); @@ -1348,8 +1348,8 @@ #define MAX_I18NTIMELENGTH 14 #define MIN_I18NTIMELENGTH 10 #define STD_I18NTIMELENGTH 12 ---- mc-2006-09-25-14/src/widget.c.utf8 2006-05-30 15:46:15.000000000 +0200 -+++ mc-2006-09-25-14/src/widget.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/widget.c.utf8 2006-05-30 15:46:15.000000000 +0200 ++++ mc/src/widget.c 2007-01-04 16:20:56.000000000 +0100 @@ -36,6 +36,9 @@ #include "global.h" @@ -2065,8 +2065,8 @@ return in; } ---- mc-2006-09-25-14/src/util.c.utf8 2005-11-03 03:01:12.000000000 +0100 -+++ mc-2006-09-25-14/src/util.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/util.c.utf8 2005-11-03 03:01:12.000000000 +0100 ++++ mc/src/util.c 2007-01-04 16:20:56.000000000 +0100 @@ -33,7 +33,11 @@ #include #include @@ -2536,8 +2536,8 @@ } *w = 0; return s; ---- mc-2006-09-25-14/src/file.c.utf8 2006-05-23 16:20:39.000000000 +0200 -+++ mc-2006-09-25-14/src/file.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/file.c.utf8 2006-05-23 16:20:39.000000000 +0200 ++++ mc/src/file.c 2007-01-04 16:20:56.000000000 +0100 @@ -161,15 +161,20 @@ static const char * do_transform_source (FileOpContext *ctx, const char *source) { @@ -2592,8 +2592,8 @@ if (i > 0) { fmd_xlen += i; fmd_init_i18n (TRUE); /* to recalculate positions of child widgets */ ---- mc-2006-09-25-14/src/find.c.utf8 2006-02-06 17:55:43.000000000 +0100 -+++ mc-2006-09-25-14/src/find.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/find.c.utf8 2006-02-06 17:55:43.000000000 +0100 ++++ mc/src/find.c 2007-01-04 16:20:56.000000000 +0100 @@ -217,7 +217,7 @@ find_parameters (char **start_dir, char int l1, maxlen = 0; @@ -2641,8 +2641,8 @@ list->list[next_free].fname = name; list->list[next_free].f.marked = 0; list->list[next_free].f.link_to_dir = link_to_dir; ---- mc-2006-09-25-14/src/myslang.h.utf8 2005-09-06 22:36:23.000000000 +0200 -+++ mc-2006-09-25-14/src/myslang.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/myslang.h.utf8 2005-09-06 22:36:23.000000000 +0200 ++++ mc/src/myslang.h 2007-01-04 16:20:56.000000000 +0100 @@ -11,6 +11,16 @@ #endif /* HAVE_SLANG_SLANG_H */ #endif @@ -2660,8 +2660,8 @@ enum { KEY_BACKSPACE = 400, KEY_END, KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, ---- mc-2006-09-25-14/src/achown.c.utf8 2005-09-06 22:36:23.000000000 +0200 -+++ mc-2006-09-25-14/src/achown.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/achown.c.utf8 2005-09-06 22:36:23.000000000 +0200 ++++ mc/src/achown.c 2007-01-04 16:20:56.000000000 +0100 @@ -584,6 +584,12 @@ init_chown_advanced (void) b_att[2] = button_new (XTRACT (6)); b_user = button_new (XTRACT (5)); @@ -2675,8 +2675,8 @@ add_widget (ch_dlg, b_group); add_widget (ch_dlg, b_user); ---- mc-2006-09-25-14/src/dialog.c.utf8 2005-09-06 22:36:23.000000000 +0200 -+++ mc-2006-09-25-14/src/dialog.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/dialog.c.utf8 2005-09-06 22:36:23.000000000 +0200 ++++ mc/src/dialog.c 2007-01-04 16:20:56.000000000 +0100 @@ -166,7 +166,7 @@ common_dialog_repaint (struct Dlg_head * if (h->title) { @@ -2686,8 +2686,8 @@ addstr (h->title); } } ---- mc-2006-09-25-14/src/boxes.c.utf8 2006-02-28 18:44:28.000000000 +0100 -+++ mc-2006-09-25-14/src/boxes.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/boxes.c.utf8 2006-02-28 18:44:28.000000000 +0100 ++++ mc/src/boxes.c 2007-01-04 16:20:56.000000000 +0100 @@ -153,23 +153,23 @@ display_init (int radio_sel, char *init_ display_title = _(display_title); for (i = 0; i < LIST_TYPES; i++) { @@ -2860,8 +2860,8 @@ i18n_flag = 1; } ---- mc-2006-09-25-14/src/learn.c.utf8 2005-05-27 05:35:15.000000000 +0200 -+++ mc-2006-09-25-14/src/learn.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/src/learn.c.utf8 2005-05-27 05:35:15.000000000 +0200 ++++ mc/src/learn.c 2007-01-04 16:20:56.000000000 +0100 @@ -237,7 +237,7 @@ init_learn (void) learn_but[0].x = 78 / 2 + 4; @@ -2871,8 +2871,8 @@ learn_title = _(learn_title); i18n_flag = 1; ---- mc-2006-09-25-14/edit/edit-widget.h.utf8 2006-03-20 17:44:32.000000000 +0100 -+++ mc-2006-09-25-14/edit/edit-widget.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/edit/edit-widget.h.utf8 2006-03-20 17:44:32.000000000 +0100 ++++ mc/edit/edit-widget.h 2007-01-04 16:20:56.000000000 +0100 @@ -30,6 +30,11 @@ typedef struct edit_key_map_type { long command; } edit_key_map_type; @@ -2912,8 +2912,8 @@ unsigned long stack_size; unsigned long stack_size_mask; unsigned long stack_bottom; ---- mc-2006-09-25-14/edit/editkeys.c.utf8 2006-02-02 00:05:15.000000000 +0100 -+++ mc-2006-09-25-14/edit/editkeys.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/edit/editkeys.c.utf8 2006-02-02 00:05:15.000000000 +0100 ++++ mc/edit/editkeys.c 2007-01-04 16:20:56.000000000 +0100 @@ -182,10 +182,10 @@ static const edit_key_map_type common_ke * 'command' is one of the editor commands from editcmddef.h. */ @@ -2968,9 +2968,9 @@ /* unchanged, key has no function here */ return 0; } ---- mc-2006-09-25-14/edit/editwidget.c.utf8 2005-09-07 17:53:03.000000000 +0200 -+++ mc-2006-09-25-14/edit/editwidget.c 2006-10-10 09:35:14.000000000 +0200 -@@ -344,7 +344,8 @@ edit_callback (Widget *w, widget_msg_t m +--- mc/edit/editwidget.c.utf8 2006-12-12 18:39:33.000000000 +0100 ++++ mc/edit/editwidget.c 2007-01-04 16:20:56.000000000 +0100 +@@ -331,7 +331,8 @@ edit_callback (Widget *w, widget_msg_t m case WIDGET_KEY: { @@ -2980,8 +2980,8 @@ /* The user may override the access-keys for the menu bar. */ if (edit_translate_key (e, parm, &cmd, &ch)) { ---- mc-2006-09-25-14/edit/editcmd.c.utf8 2006-03-20 17:44:32.000000000 +0100 -+++ mc-2006-09-25-14/edit/editcmd.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/edit/editcmd.c.utf8 2006-11-27 15:19:29.000000000 +0100 ++++ mc/edit/editcmd.c 2007-01-04 16:20:56.000000000 +0100 @@ -61,7 +61,7 @@ #define edit_get_save_file(f,h) input_expand_dialog (h, _(" Enter file name: "), f) @@ -3074,7 +3074,7 @@ /* If 0 (quick save) then a) create/truncate file, b) save to ; if 1 (safe save) then a) save to , -@@ -345,32 +391,48 @@ edit_save_file (WEdit *edit, const char +@@ -360,32 +406,48 @@ edit_save_file (WEdit *edit, const char buf = 0; filelen = edit->last_byte; while (buf <= (edit->curs1 >> S_EDIT_BUF_SIZE) - 1) { @@ -3126,7 +3126,7 @@ EDIT_BUF_SIZE) != EDIT_BUF_SIZE) { filelen = -1; break; -@@ -686,13 +748,21 @@ edit_delete_macro (WEdit * edit, int k) +@@ -705,13 +767,21 @@ edit_delete_macro (WEdit * edit, int k) if (!n || n == EOF) break; n = 0; @@ -3148,7 +3148,7 @@ fprintf (g, ";\n"); } } -@@ -725,7 +795,11 @@ int edit_save_macro_cmd (WEdit * edit, s +@@ -744,7 +814,11 @@ int edit_save_macro_cmd (WEdit * edit, s if (f) { fprintf (f, ("key '%d 0': "), s); for (i = 0; i < n; i++) @@ -3160,7 +3160,7 @@ fprintf (f, ";\n"); fclose (f); if (saved_macros_loaded) { -@@ -775,10 +849,18 @@ int edit_load_macro_cmd (WEdit * edit, s +@@ -794,10 +868,18 @@ int edit_load_macro_cmd (WEdit * edit, s saved_macro[i++] = s; if (!found) { *n = 0; @@ -3179,7 +3179,7 @@ } fscanf (f, ";\n"); if (s == k) -@@ -925,7 +1007,7 @@ int eval_marks (WEdit * edit, long *star +@@ -944,7 +1026,7 @@ int eval_marks (WEdit * edit, long *star #define space_width 1 static void @@ -3188,7 +3188,7 @@ { long cursor; int i, col; -@@ -973,7 +1055,7 @@ edit_block_copy_cmd (WEdit *edit) +@@ -992,7 +1074,7 @@ edit_block_copy_cmd (WEdit *edit) { long start_mark, end_mark, current = edit->curs1; int size; @@ -3197,7 +3197,7 @@ edit_update_curs_col (edit); if (eval_marks (edit, &start_mark, &end_mark)) -@@ -1013,7 +1095,7 @@ edit_block_move_cmd (WEdit *edit) +@@ -1032,7 +1114,7 @@ edit_block_move_cmd (WEdit *edit) { long count; long current; @@ -3206,7 +3206,7 @@ long start_mark, end_mark; int deleted = 0; int x = 0; -@@ -1074,7 +1156,7 @@ edit_block_move_cmd (WEdit *edit) +@@ -1093,7 +1175,7 @@ edit_block_move_cmd (WEdit *edit) edit_push_action (edit, COLUMN_ON); column_highlighting = 0; } else { @@ -3215,7 +3215,7 @@ edit_cursor_move (edit, start_mark - edit->curs1); edit_scroll_screen_over_cursor (edit); count = start_mark; -@@ -1413,7 +1495,11 @@ static long sargs[NUM_REPL_ARGS][256 / s +@@ -1432,7 +1514,11 @@ static long sargs[NUM_REPL_ARGS][256 / s /* This function is a modification of mc-3.2.10/src/view.c:regexp_view_search() */ /* returns -3 on error in pattern, -1 on not found, found_len = 0 if either */ static int @@ -3227,7 +3227,7 @@ int match_bol, int icase, int *found_len, void *d) { static regex_t r; -@@ -1422,6 +1508,11 @@ string_regexp_search (char *pattern, cha +@@ -1441,6 +1527,11 @@ string_regexp_search (char *pattern, cha regmatch_t *pmatch; static regmatch_t s[1]; @@ -3239,7 +3239,7 @@ pmatch = (regmatch_t *) d; if (!pmatch) pmatch = s; -@@ -1441,13 +1532,51 @@ string_regexp_search (char *pattern, cha +@@ -1460,13 +1551,51 @@ string_regexp_search (char *pattern, cha old_type = match_type; old_icase = icase; } @@ -3291,7 +3291,7 @@ *found_len = pmatch[0].rm_eo - pmatch[0].rm_so; return (pmatch[0].rm_so); } -@@ -1455,13 +1584,29 @@ string_regexp_search (char *pattern, cha +@@ -1474,13 +1603,29 @@ string_regexp_search (char *pattern, cha /* thanks to Liviu Daia for getting this (and the above) routines to work properly - paul */ @@ -3322,7 +3322,7 @@ int n = 0; for (p = 0; p < l; p++) /* count conversions... */ -@@ -1470,19 +1615,22 @@ edit_find_string (long start, unsigned c +@@ -1489,19 +1634,22 @@ edit_find_string (long start, unsigned c n++; if (replace_scanf || replace_regexp) { @@ -3352,7 +3352,7 @@ if (replace_case) { for (p = start; p < last_byte && p < start + MAX_REPL_LEN; p++) buf[p - start] = (*get_byte) (data, p); -@@ -1496,20 +1644,36 @@ edit_find_string (long start, unsigned c +@@ -1515,20 +1663,36 @@ edit_find_string (long start, unsigned c } buf[(q = p - start)] = 0; @@ -3390,7 +3390,7 @@ if (q + start < last_byte) { if (replace_case) { buf[q] = (*get_byte) (data, q + start); -@@ -1523,7 +1687,11 @@ edit_find_string (long start, unsigned c +@@ -1542,7 +1706,11 @@ edit_find_string (long start, unsigned c start++; buf++; /* move the window along */ if (buf == mbuf + MAX_REPL_LEN) { /* the window is about to go past the end of array, so... */ @@ -3402,7 +3402,7 @@ buf = mbuf; } q--; -@@ -1549,10 +1717,16 @@ edit_find_string (long start, unsigned c +@@ -1568,10 +1736,16 @@ edit_find_string (long start, unsigned c buf = mbuf; while (q) { @@ -3420,7 +3420,7 @@ return -3; } else if (found_start == -1) /* not found: try next line */ -@@ -1563,15 +1737,27 @@ edit_find_string (long start, unsigned c +@@ -1582,15 +1756,27 @@ edit_find_string (long start, unsigned c match_bol = 0; continue; } @@ -3450,7 +3450,7 @@ memmove (mbuf, buf, q); p = start + q; move_win = 1; -@@ -1581,36 +1767,59 @@ edit_find_string (long start, unsigned c +@@ -1600,36 +1786,59 @@ edit_find_string (long start, unsigned c } } } else { @@ -3518,7 +3518,7 @@ return -2; } -@@ -1624,9 +1833,14 @@ edit_find_forwards (long search_start, u +@@ -1643,9 +1852,14 @@ edit_find_forwards (long search_start, u while ((p = edit_find_string (p, exp, len, last_byte, get_byte, data, once_only, d)) >= 0) { if (replace_whole) { @@ -3533,7 +3533,7 @@ return p; if (once_only) return -2; -@@ -1658,6 +1872,7 @@ edit_find (long search_start, unsigned c +@@ -1677,6 +1891,7 @@ edit_find (long search_start, unsigned c #define is_digit(x) ((x) >= '0' && (x) <= '9') @@ -3541,7 +3541,7 @@ #define snprint(v) { \ *p1++ = *p++; \ *p1 = '\0'; \ -@@ -1665,33 +1880,48 @@ edit_find (long search_start, unsigned c +@@ -1684,33 +1899,48 @@ edit_find (long search_start, unsigned c if (n >= (size_t) (e - s)) goto nospc; \ s += n; \ } @@ -3598,7 +3598,7 @@ s += n; q = p; p1 = q1; -@@ -1719,45 +1949,78 @@ static int snprintf_p (char *str, size_t +@@ -1738,45 +1968,78 @@ static int snprintf_p (char *str, size_t *p1++ = *p++; if (*p == '*') { p++; @@ -3687,7 +3687,7 @@ snprint (*va_arg (ap, long *)); } else if (*p == 'p') { snprint (*va_arg (ap, void **)); -@@ -1766,10 +2029,17 @@ static int snprintf_p (char *str, size_t +@@ -1785,10 +2048,17 @@ static int snprintf_p (char *str, size_t q = p; } va_end (ap); @@ -3705,7 +3705,7 @@ return s + n - str; nospc: va_end (ap); -@@ -1948,8 +2218,11 @@ edit_replace_cmd (WEdit *edit, int again +@@ -1967,8 +2237,11 @@ edit_replace_cmd (WEdit *edit, int again } } if (replace_yes) { /* delete then insert new */ @@ -3718,7 +3718,7 @@ int ret = 0; /* we need to fill in sargs just like with scanf */ -@@ -1958,17 +2231,25 @@ edit_replace_cmd (WEdit *edit, int again +@@ -1977,17 +2250,25 @@ edit_replace_cmd (WEdit *edit, int again for (k = 1; k < NUM_REPL_ARGS && pmatch[k].rm_eo >= 0; k++) { @@ -3745,7 +3745,7 @@ edit-> search_start - -@@ -1986,14 +2267,23 @@ edit_replace_cmd (WEdit *edit, int again +@@ -2005,14 +2286,23 @@ edit_replace_cmd (WEdit *edit, int again } if (!ret) ret = @@ -3769,7 +3769,7 @@ } else { edit_error_dialog (_(" Replace "), ret == -@@ -2007,10 +2297,18 @@ edit_replace_cmd (WEdit *edit, int again +@@ -2026,10 +2316,18 @@ edit_replace_cmd (WEdit *edit, int again times_replaced++; while (i--) edit_delete (edit); @@ -3788,7 +3788,7 @@ } /* so that we don't find the same string again */ if (replace_backwards) { -@@ -2183,16 +2481,17 @@ edit_ok_to_exit (WEdit *edit) +@@ -2202,16 +2500,17 @@ edit_ok_to_exit (WEdit *edit) #define TEMP_BUF_LEN 1024 /* Return a null terminated length of text. Result must be g_free'd */ @@ -3810,7 +3810,7 @@ x = edit_move_forward3 (edit, edit_bol (edit, start), 0, start); c = edit_get_byte (edit, start); -@@ -2225,11 +2524,15 @@ edit_save_block (WEdit * edit, const cha +@@ -2244,11 +2543,15 @@ edit_save_block (WEdit * edit, const cha return 0; if (column_highlighting) { @@ -3827,7 +3827,7 @@ if (r < 0) break; p += r; -@@ -2237,15 +2540,19 @@ edit_save_block (WEdit * edit, const cha +@@ -2256,15 +2559,19 @@ edit_save_block (WEdit * edit, const cha } g_free (block); } else { @@ -3849,7 +3849,7 @@ start = end; } g_free (buf); -@@ -2583,17 +2890,20 @@ edit_block_process_cmd (WEdit *edit, con +@@ -2602,17 +2909,20 @@ edit_block_process_cmd (WEdit *edit, con /* prints at the cursor */ /* returns the number of chars printed */ @@ -3872,7 +3872,7 @@ static void pipe_mail (WEdit *edit, char *to, char *subject, char *cc) { FILE *p = 0; -@@ -2687,15 +2997,20 @@ void edit_mail_dialog (WEdit * edit) +@@ -2706,15 +3016,20 @@ void edit_mail_dialog (WEdit * edit) /* find first character of current word */ static int edit_find_word_start (WEdit *edit, long *word_start, int *word_len) { @@ -3895,7 +3895,7 @@ return 0; /* search start of word to be completed */ -@@ -2705,11 +3020,19 @@ static int edit_find_word_start (WEdit * +@@ -2724,11 +3039,19 @@ static int edit_find_word_start (WEdit * return 0; last = c; @@ -3916,7 +3916,7 @@ return 0; *word_start = edit->curs1 - (i - 1); /* start found */ -@@ -2742,7 +3065,7 @@ edit_collect_completions (WEdit *edit, l +@@ -2761,7 +3084,7 @@ edit_collect_completions (WEdit *edit, l int *num) { int len, max_len = 0, i, skip; @@ -3925,7 +3925,7 @@ /* collect max MAX_WORD_COMPLETIONS completions */ while (*num < MAX_WORD_COMPLETIONS) { -@@ -2761,11 +3084,16 @@ edit_collect_completions (WEdit *edit, l +@@ -2780,11 +3103,16 @@ edit_collect_completions (WEdit *edit, l buffers1[start >> S_EDIT_BUF_SIZE][start & M_EDIT_BUF_SIZE]; skip = 0; for (i = 0; i < *num; i++) { @@ -3945,7 +3945,7 @@ skip = 1; break; /* skip it, already added */ } -@@ -2773,7 +3101,7 @@ edit_collect_completions (WEdit *edit, l +@@ -2792,7 +3120,7 @@ edit_collect_completions (WEdit *edit, l if (skip) continue; @@ -3954,7 +3954,7 @@ compl[*num].len = len; for (i = 0; i < len; i++) compl[*num].text[i] = *(bufpos + i); -@@ -2787,6 +3115,18 @@ edit_collect_completions (WEdit *edit, l +@@ -2806,6 +3134,18 @@ edit_collect_completions (WEdit *edit, l return max_len; } @@ -3973,7 +3973,7 @@ /* let the user select its preferred completion */ static void -@@ -2799,6 +3139,9 @@ edit_completion_dialog (WEdit * edit, in +@@ -2818,6 +3158,9 @@ edit_completion_dialog (WEdit * edit, in WListbox *compl_list; int compl_dlg_h; /* completion dialog height */ int compl_dlg_w; /* completion dialog width */ @@ -3983,7 +3983,7 @@ /* calculate the dialog metrics */ compl_dlg_h = num_compl + 2; -@@ -2834,9 +3177,18 @@ edit_completion_dialog (WEdit * edit, in +@@ -2853,9 +3196,18 @@ edit_completion_dialog (WEdit * edit, in add_widget (compl_dlg, compl_list); /* fill the listbox with the completions */ @@ -4002,7 +4002,7 @@ /* pop up the dialog */ run_dlg (compl_dlg); -@@ -2844,9 +3196,17 @@ edit_completion_dialog (WEdit * edit, in +@@ -2863,9 +3215,17 @@ edit_completion_dialog (WEdit * edit, in /* apply the choosen completion */ if (compl_dlg->ret_value == B_ENTER) { listbox_get_current (compl_list, &curr, NULL); @@ -4021,7 +4021,7 @@ } /* destroy dialog before return */ -@@ -2863,8 +3223,9 @@ edit_complete_word_cmd (WEdit *edit) +@@ -2882,8 +3242,9 @@ edit_complete_word_cmd (WEdit *edit) { int word_len = 0, i, num_compl = 0, max_len; long word_start = 0; @@ -4033,7 +4033,7 @@ struct selection compl[MAX_WORD_COMPLETIONS]; /* completions */ /* don't want to disturb another search */ -@@ -2881,16 +3242,32 @@ edit_complete_word_cmd (WEdit *edit) +@@ -2900,16 +3261,32 @@ edit_complete_word_cmd (WEdit *edit) /* prepare match expression */ bufpos = &edit->buffers1[word_start >> S_EDIT_BUF_SIZE] [word_start & M_EDIT_BUF_SIZE]; @@ -4066,8 +4066,8 @@ if (num_compl > 0) { /* insert completed word if there is only one match */ ---- mc-2006-09-25-14/edit/wordproc.c.utf8 2006-06-17 04:55:41.000000000 +0200 -+++ mc-2006-09-25-14/edit/wordproc.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/edit/wordproc.c.utf8 2006-06-17 04:55:41.000000000 +0200 ++++ mc/edit/wordproc.c 2007-01-04 16:20:56.000000000 +0100 @@ -40,7 +40,12 @@ #define tab_width option_tab_spacing @@ -4287,8 +4287,8 @@ g_free (t); return; } ---- mc-2006-09-25-14/edit/edit.h.utf8 2006-02-06 17:55:42.000000000 +0100 -+++ mc-2006-09-25-14/edit/edit.h 2006-10-10 09:35:14.000000000 +0200 +--- mc/edit/edit.h.utf8 2006-12-12 18:39:33.000000000 +0100 ++++ mc/edit/edit.h 2007-01-04 16:20:56.000000000 +0100 @@ -25,6 +25,27 @@ #include @@ -4349,7 +4349,7 @@ int edit_count_lines (WEdit * edit, long current, int upto); long edit_move_forward (WEdit * edit, long current, int lines, long upto); long edit_move_forward3 (WEdit * edit, long current, int cols, long upto); -@@ -146,11 +173,11 @@ int edit_block_delete_cmd (WEdit * edit) +@@ -148,11 +175,11 @@ int edit_block_delete_cmd (WEdit * edit) void edit_delete_line (WEdit * edit); int edit_delete (WEdit * edit); @@ -4363,7 +4363,7 @@ long edit_write_stream (WEdit * edit, FILE * f); char *edit_get_write_filter (const char *writename, const char *filename); int edit_save_confirm_cmd (WEdit * edit); -@@ -181,7 +208,7 @@ void edit_goto_cmd (WEdit * edit); +@@ -183,7 +210,7 @@ void edit_goto_cmd (WEdit * edit); int eval_marks (WEdit * edit, long *start_mark, long *end_mark); void edit_status (WEdit * edit); void edit_execute_key_command (WEdit *edit, int command, @@ -4372,7 +4372,7 @@ void edit_update_screen (WEdit * edit); int edit_print_string (WEdit * e, const char *s); void edit_move_to_line (WEdit * e, long line); -@@ -231,7 +258,7 @@ void edit_mail_dialog (WEdit *edit); +@@ -233,7 +260,7 @@ void edit_mail_dialog (WEdit *edit); void format_paragraph (WEdit *edit, int force); /* either command or char_for_insertion must be passed as -1 */ @@ -4381,8 +4381,8 @@ #define get_sys_error(s) (s) ---- mc-2006-09-25-14/edit/editdraw.c.utf8 2005-09-06 22:36:20.000000000 +0200 -+++ mc-2006-09-25-14/edit/editdraw.c 2006-10-10 09:35:14.000000000 +0200 +--- mc/edit/editdraw.c.utf8 2006-12-09 16:19:48.000000000 +0100 ++++ mc/edit/editdraw.c 2007-01-04 16:20:56.000000000 +0100 @@ -69,11 +69,16 @@ static void status_string (WEdit * edit, * as decimal and as hex. */ @@ -4473,9 +4473,9 @@ - unsigned int c; + mc_wint_t c; int color; - int i, book_mark = -1; + int i; -@@ -287,66 +300,96 @@ edit_draw_this_line (WEdit *edit, long b +@@ -282,62 +295,92 @@ edit_draw_this_line (WEdit *edit, long b if (row <= edit->total_lines - edit->start_line) { while (col <= end_col - edit->start_col) { @@ -4505,14 +4505,9 @@ + p->style |= MOD_BOLD; c = edit_get_byte (edit, q); /* we don't use bg for mc - fg contains both */ - if (book_mark == -1) { - edit_get_syntax_color (edit, q, &color); -- *p |= color << 16; -+ p->style |= color << 16; - } else { -- *p |= book_mark << 16; -+ p->style |= book_mark << 16; - } + edit_get_syntax_color (edit, q, &color); +- *p |= color << 16; ++ p->style |= color << 16; q++; switch (c) { case '\n': @@ -4543,10 +4538,10 @@ if (c < 32) { - *(p++) = '^' | MOD_ABNORMAL; - *(p++) = (c + 0x40) | MOD_ABNORMAL; -+ p->ch = '^'; ++ p->ch = '^'; + p->style = MOD_ABNORMAL; + p++; -+ p->ch = c + 0x40; ++ p->ch = c + 0x40; + p->style = MOD_ABNORMAL; col += 2; break; @@ -4592,7 +4587,7 @@ } col++; break; -@@ -356,7 +399,7 @@ edit_draw_this_line (WEdit *edit, long b +@@ -347,7 +390,7 @@ edit_draw_this_line (WEdit *edit, long b } else { start_col_real = start_col = 0; } @@ -4601,10 +4596,10 @@ print_to_widget (edit, row, start_col, start_col_real, end_col, line); } ---- mc-2006-09-25-14/edit/edit.c.utf8 2006-02-13 22:35:05.000000000 +0100 -+++ mc-2006-09-25-14/edit/edit.c 2006-10-10 09:35:14.000000000 +0200 -@@ -103,7 +103,11 @@ char *option_backup_ext = NULL; - static void edit_move_to_prev_col (WEdit *edit, long p); +--- mc/edit/edit.c.utf8 2006-12-12 18:39:33.000000000 +0100 ++++ mc/edit/edit.c 2007-01-04 16:20:56.000000000 +0100 +@@ -102,7 +102,11 @@ char *option_backup_ext = NULL; + static void user_menu (WEdit *edit); +#ifndef UTF8 @@ -4615,7 +4610,7 @@ { unsigned long p; if (byte_index >= (edit->curs1 + edit->curs2) || byte_index < 0) -@@ -132,7 +136,7 @@ edit_init_buffers (WEdit *edit) +@@ -131,7 +135,7 @@ edit_init_buffers (WEdit *edit) edit->curs1 = 0; edit->curs2 = 0; @@ -4624,7 +4619,7 @@ } /* -@@ -157,7 +161,7 @@ edit_load_file_fast (WEdit *edit, const +@@ -156,7 +160,7 @@ edit_load_file_fast (WEdit *edit, const } if (!edit->buffers2[buf2]) @@ -4633,7 +4628,7 @@ mc_read (file, (char *) edit->buffers2[buf2] + EDIT_BUF_SIZE - -@@ -167,7 +171,7 @@ edit_load_file_fast (WEdit *edit, const +@@ -166,7 +170,7 @@ edit_load_file_fast (WEdit *edit, const for (buf = buf2 - 1; buf >= 0; buf--) { /* edit->buffers2[0] is already allocated */ if (!edit->buffers2[buf]) @@ -4642,7 +4637,7 @@ mc_read (file, (char *) edit->buffers2[buf], EDIT_BUF_SIZE); } -@@ -240,9 +244,44 @@ edit_insert_stream (WEdit * edit, FILE * +@@ -239,9 +243,44 @@ edit_insert_stream (WEdit * edit, FILE * { int c; long i = 0; @@ -4688,7 +4683,7 @@ } return i; } -@@ -250,9 +289,32 @@ edit_insert_stream (WEdit * edit, FILE * +@@ -249,9 +288,32 @@ edit_insert_stream (WEdit * edit, FILE * long edit_write_stream (WEdit * edit, FILE * f) { long i; @@ -4721,7 +4716,7 @@ return i; } -@@ -291,12 +353,46 @@ edit_insert_file (WEdit *edit, const cha +@@ -290,12 +352,46 @@ edit_insert_file (WEdit *edit, const cha int i, file, blocklen; long current = edit->curs1; unsigned char *buf; @@ -4768,7 +4763,7 @@ } edit_cursor_move (edit, current - edit->curs1); g_free (buf); -@@ -386,7 +482,11 @@ cleanup: +@@ -385,7 +481,11 @@ cleanup: static int edit_load_file (WEdit *edit) { @@ -4780,7 +4775,7 @@ /* Cannot do fast load if a filter is used */ if (edit_find_filter (edit->filename) >= 0) -@@ -452,6 +552,7 @@ edit_load_position (WEdit *edit) +@@ -451,6 +551,7 @@ edit_load_position (WEdit *edit) edit->prev_col = column; edit_move_to_prev_col (edit, edit_bol (edit, edit->curs1)); edit_move_display (edit, line - (edit->num_widget_lines / 2)); @@ -4797,22 +4792,22 @@ if (edit_load_file (edit)) { /* edit_load_file already gives an error message */ if (to_free) -@@ -689,13 +790,23 @@ void edit_push_action (WEdit * edit, lon +@@ -689,14 +790,23 @@ void edit_push_action (WEdit * edit, lon { unsigned long sp = edit->stack_pointer; unsigned long spm1; - long *t; -+ -+ struct action *t; -+ mc_wchar_t ch = 0; + -+ if (c == CHAR_INSERT || c == CHAR_INSERT_AHEAD) { -+ va_list ap; -+ va_start (ap, c); -+ ch = va_arg (ap, mc_wint_t); -+ va_end (ap); -+ } ++ struct action *t; ++ mc_wchar_t ch = 0; + ++ if (c == CHAR_INSERT || c == CHAR_INSERT_AHEAD) { ++ va_list ap; ++ va_start (ap, c); ++ ch = va_arg (ap, mc_wint_t); ++ va_end (ap); ++ } + /* first enlarge the stack if necessary */ if (sp > edit->stack_size - 10) { /* say */ if (option_max_undo < 256) @@ -4823,7 +4818,7 @@ if (t) { edit->undo_stack = t; edit->stack_size <<= 1; -@@ -710,7 +821,7 @@ void edit_push_action (WEdit * edit, lon +@@ -711,7 +821,7 @@ void edit_push_action (WEdit * edit, lon #ifdef FAST_MOVE_CURSOR if (c == CURS_LEFT_LOTS || c == CURS_RIGHT_LOTS) { va_list ap; @@ -4832,7 +4827,7 @@ edit->stack_pointer = (edit->stack_pointer + 1) & edit->stack_size_mask; va_start (ap, c); c = -(va_arg (ap, int)); -@@ -721,12 +832,14 @@ void edit_push_action (WEdit * edit, lon +@@ -722,12 +832,14 @@ void edit_push_action (WEdit * edit, lon && spm1 != edit->stack_bottom && ((sp - 2) & edit->stack_size_mask) != edit->stack_bottom) { int d; @@ -4852,7 +4847,7 @@ return; } } -@@ -734,19 +847,20 @@ void edit_push_action (WEdit * edit, lon +@@ -735,19 +847,20 @@ void edit_push_action (WEdit * edit, lon #ifndef NO_STACK_CURSMOVE_ANIHILATION else if ((c == CURS_LEFT && d == CURS_RIGHT) || (c == CURS_RIGHT && d == CURS_LEFT)) { /* a left then a right anihilate each other */ @@ -4878,7 +4873,7 @@ goto check_bottom; } #ifndef NO_STACK_CURSMOVE_ANIHILATION -@@ -758,7 +872,9 @@ void edit_push_action (WEdit * edit, lon +@@ -759,7 +872,9 @@ void edit_push_action (WEdit * edit, lon #endif } } @@ -4889,7 +4884,7 @@ check_bottom: edit->stack_pointer = (edit->stack_pointer + 1) & edit->stack_size_mask; -@@ -771,10 +887,10 @@ void edit_push_action (WEdit * edit, lon +@@ -772,10 +887,10 @@ void edit_push_action (WEdit * edit, lon (((unsigned long) c + 1) & edit->stack_size_mask) == edit->stack_bottom) do { edit->stack_bottom = (edit->stack_bottom + 1) & edit->stack_size_mask; @@ -4902,7 +4897,7 @@ edit->stack_bottom = edit->stack_pointer = 0; } -@@ -783,30 +899,30 @@ void edit_push_action (WEdit * edit, lon +@@ -784,30 +899,30 @@ void edit_push_action (WEdit * edit, lon then the file should be as it was when he loaded up. Then set edit->modified to 0. */ static long @@ -4944,7 +4939,7 @@ } /* is called whenever a modification is made by one of the four routines below */ -@@ -827,7 +943,7 @@ static inline void edit_modification (WE +@@ -828,7 +943,7 @@ static inline void edit_modification (WE */ void @@ -4953,7 +4948,7 @@ { /* check if file has grown to large */ if (edit->last_byte >= SIZE_LIMIT) -@@ -865,12 +981,11 @@ edit_insert (WEdit *edit, int c) +@@ -866,12 +981,11 @@ edit_insert (WEdit *edit, int c) /* add a new buffer if we've reached the end of the last one */ if (!(edit->curs1 & M_EDIT_BUF_SIZE)) edit->buffers1[edit->curs1 >> S_EDIT_BUF_SIZE] = @@ -4969,7 +4964,7 @@ /* update file length */ edit->last_byte++; -@@ -881,7 +996,7 @@ edit_insert (WEdit *edit, int c) +@@ -882,7 +996,7 @@ edit_insert (WEdit *edit, int c) /* same as edit_insert and move left */ @@ -4978,7 +4973,7 @@ { if (edit->last_byte >= SIZE_LIMIT) return; -@@ -904,7 +1019,7 @@ void edit_insert_ahead (WEdit * edit, in +@@ -905,7 +1019,7 @@ void edit_insert_ahead (WEdit * edit, in edit->last_get_rule += (edit->last_get_rule >= edit->curs1); if (!((edit->curs2 + 1) & M_EDIT_BUF_SIZE)) @@ -4987,7 +4982,7 @@ edit->buffers2[edit->curs2 >> S_EDIT_BUF_SIZE][EDIT_BUF_SIZE - (edit->curs2 & M_EDIT_BUF_SIZE) - 1] = c; edit->last_byte++; -@@ -914,7 +1029,7 @@ void edit_insert_ahead (WEdit * edit, in +@@ -915,7 +1029,7 @@ void edit_insert_ahead (WEdit * edit, in int edit_delete (WEdit * edit) { @@ -4996,7 +4991,7 @@ if (!edit->curs2) return 0; -@@ -938,7 +1053,7 @@ int edit_delete (WEdit * edit) +@@ -939,7 +1053,7 @@ int edit_delete (WEdit * edit) edit->total_lines--; edit->force |= REDRAW_AFTER_CURSOR; } @@ -5005,7 +5000,7 @@ if (edit->curs1 < edit->start_display) { edit->start_display--; if (p == '\n') -@@ -952,7 +1067,7 @@ int edit_delete (WEdit * edit) +@@ -953,7 +1067,7 @@ int edit_delete (WEdit * edit) static int edit_backspace (WEdit * edit) { @@ -5014,7 +5009,7 @@ if (!edit->curs1) return 0; -@@ -976,7 +1091,7 @@ edit_backspace (WEdit * edit) +@@ -977,7 +1091,7 @@ edit_backspace (WEdit * edit) edit->total_lines--; edit->force |= REDRAW_AFTER_CURSOR; } @@ -5023,7 +5018,7 @@ if (edit->curs1 < edit->start_display) { edit->start_display--; -@@ -989,10 +1104,18 @@ edit_backspace (WEdit * edit) +@@ -990,10 +1104,18 @@ edit_backspace (WEdit * edit) #ifdef FAST_MOVE_CURSOR @@ -5043,7 +5038,7 @@ edit->curs_line--; next -= (unsigned long) dest; n -= next; -@@ -1005,7 +1128,7 @@ int +@@ -1006,7 +1128,7 @@ int edit_move_backward_lots (WEdit *edit, long increment) { int r, s, t; @@ -5052,7 +5047,7 @@ if (increment > edit->curs1) increment = edit->curs1; -@@ -1045,7 +1168,7 @@ edit_move_backward_lots (WEdit *edit, lo +@@ -1046,7 +1168,7 @@ edit_move_backward_lots (WEdit *edit, lo edit->buffers2[edit->curs2 >> S_EDIT_BUF_SIZE] = p; else edit->buffers2[edit->curs2 >> S_EDIT_BUF_SIZE] = @@ -5061,7 +5056,7 @@ } else { g_free (p); } -@@ -1083,7 +1206,7 @@ edit_move_backward_lots (WEdit *edit, lo +@@ -1084,7 +1206,7 @@ edit_move_backward_lots (WEdit *edit, lo edit->buffers2[edit->curs2 >> S_EDIT_BUF_SIZE] = p; else edit->buffers2[edit->curs2 >> S_EDIT_BUF_SIZE] = @@ -5070,7 +5065,7 @@ } else { g_free (p); } -@@ -1115,7 +1238,7 @@ int edit_cursor_move (WEdit * edit, long +@@ -1116,7 +1238,7 @@ int edit_cursor_move (WEdit * edit, long c = edit_get_byte (edit, edit->curs1 - 1); if (!((edit->curs2 + 1) & M_EDIT_BUF_SIZE)) @@ -5079,7 +5074,7 @@ edit->buffers2[edit->curs2 >> S_EDIT_BUF_SIZE][EDIT_BUF_SIZE - (edit->curs2 & M_EDIT_BUF_SIZE) - 1] = c; edit->curs2++; c = edit->buffers1[(edit->curs1 - 1) >> S_EDIT_BUF_SIZE][(edit->curs1 - 1) & M_EDIT_BUF_SIZE]; -@@ -1140,7 +1263,7 @@ int edit_cursor_move (WEdit * edit, long +@@ -1141,7 +1263,7 @@ int edit_cursor_move (WEdit * edit, long c = edit_get_byte (edit, edit->curs1); if (!(edit->curs1 & M_EDIT_BUF_SIZE)) @@ -5088,7 +5083,7 @@ edit->buffers1[edit->curs1 >> S_EDIT_BUF_SIZE][edit->curs1 & M_EDIT_BUF_SIZE] = c; edit->curs1++; c = edit->buffers2[(edit->curs2 - 1) >> S_EDIT_BUF_SIZE][EDIT_BUF_SIZE - ((edit->curs2 - 1) & M_EDIT_BUF_SIZE) - 1]; -@@ -1247,7 +1370,7 @@ long edit_move_forward3 (WEdit * edit, l +@@ -1248,7 +1370,7 @@ long edit_move_forward3 (WEdit * edit, l q = edit->last_byte + 2; for (col = 0, p = current; p < q; p++) { @@ -5097,7 +5092,7 @@ if (cols != -10) { if (col == cols) return p; -@@ -1265,7 +1388,7 @@ long edit_move_forward3 (WEdit * edit, l +@@ -1266,7 +1388,7 @@ long edit_move_forward3 (WEdit * edit, l } else if (c < 32 || c == 127) col += 2; /* Caret notation for control characters */ else @@ -5106,7 +5101,7 @@ } return col; } -@@ -1398,7 +1521,7 @@ static int +@@ -1399,7 +1521,7 @@ static int is_blank (WEdit *edit, long offset) { long s, f; @@ -5115,7 +5110,7 @@ s = edit_bol (edit, offset); f = edit_eol (edit, offset) - 1; while (s <= f) { -@@ -1770,13 +1893,13 @@ static void edit_left_delete_word (WEdit +@@ -1771,13 +1893,13 @@ static void edit_left_delete_word (WEdit static void edit_do_undo (WEdit * edit) { @@ -5132,7 +5127,7 @@ case STACK_BOTTOM: goto done_undo; case CURS_RIGHT: -@@ -1797,31 +1920,33 @@ edit_do_undo (WEdit * edit) +@@ -1798,31 +1920,33 @@ edit_do_undo (WEdit * edit) case COLUMN_OFF: column_highlighting = 0; break; @@ -5179,7 +5174,7 @@ edit_update_curs_row (edit); done_undo:; -@@ -2101,7 +2226,7 @@ static void edit_goto_matching_bracket ( +@@ -2102,7 +2226,7 @@ static void edit_goto_matching_bracket ( * passed as -1. Commands are executed, and char_for_insertion is * inserted at the cursor. */ @@ -5188,7 +5183,7 @@ { if (command == CK_Begin_Record_Macro) { edit->macro_i = 0; -@@ -2136,7 +2261,7 @@ static const char * const shell_cmd[] = +@@ -2137,7 +2261,7 @@ static const char * const shell_cmd[] = all of them. It also does not check for the Undo command. */ void @@ -5197,7 +5192,7 @@ { edit->force |= REDRAW_LINE; -@@ -2169,7 +2294,7 @@ edit_execute_cmd (WEdit *edit, int comma +@@ -2170,7 +2294,7 @@ edit_execute_cmd (WEdit *edit, int comma } /* An ordinary key press */ diff --git a/mc.spec b/mc.spec index ac164b5..e4417ae 100644 --- a/mc.spec +++ b/mc.spec @@ -1,9 +1,9 @@ -%define date 2006-11-14-16 +%define date 2006-12-28-05 Summary: User-friendly text console file manager and visual shell Name: mc Version: 4.6.1a -Release: 38%{?dist} +Release: 39%{?dist} Epoch: 1 License: GPL Group: System Environment/Shells @@ -200,6 +200,10 @@ rm -rf $RPM_BUILD_ROOT %dir %{_sysconfdir}/mc %changelog +* Thu Jan 4 2007 Jindrich Novy 4.6.1a-39 +- update to new CVS snapshot (fixes #220828) +- update bindings again + * Thu Dec 21 2006 Jindrich Novy 4.6.1a-38 - rebuild because of the %%{_host} macro change (Related: #220273) diff --git a/sources b/sources index 0aad430..2af6ce4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -bd4f2e1c98a283ce7634365c9d4567f0 mc-2006-11-14-16.tar.gz +36677cf9331e463c98109ea7fa7f5c47 mc-2006-12-28-05.tar.gz