Commit Graph

118 Commits

Author SHA1 Message Date
Pavel Roskin
857565ca21 * edit.c (check_file_access): Use non-blocking open() followed
by fstat() to avoid race conditions.  Don't ask users to
recompile the editor.
2002-12-16 01:59:49 +00:00
Pavel Roskin
2eb1245290 Comment change. 2002-12-16 01:38:24 +00:00
Pavel Roskin
8148b4973c * edit.c (edit_reload): Don't initialize edit->macro_i, because
edit_init() takes care of it.
* editwidget.c (edit): Likewise.
2002-12-16 01:27:44 +00:00
Pavel Roskin
2048c47dfb Comment change. 2002-12-15 22:58:33 +00:00
Pavel Roskin
aaf569bd48 * edit.h: Don't inclide malloc.h. Use g_malloc() and g_free()
instead.  Adjust all dependencies.
2002-12-15 18:55:53 +00:00
Pavel Roskin
77bd4c7f55 * edit.c (edit_load_file): Merge edit_open_file(). Disable fast
loading on non-local VFS because the file size can be wrong.
(init_dynamic_edit_buffers): Split into edit_init_buffers() and
edit_load_file_fast().
2002-12-15 09:47:25 +00:00
Pavel Roskin
433726e56b * (edit_init): Move file loading to ...
(edit_load_file): ... a separate function.
2002-12-15 08:07:02 +00:00
Pavel Roskin
6716e7ecff * edit.c (init_dynamic_edit_buffers): Remove unused code to
support loading text from buffer.
2002-12-15 06:53:52 +00:00
Pavel Roskin
ceb3e9eb60 Comment fixes. 2002-12-15 02:54:00 +00:00
Pavel Roskin
ca658f44a6 * editcmd.c (edit_split_filename): Rename to edit_set_filename,
use g_malloc() and g_free() on edit->filename.
2002-12-15 02:40:38 +00:00
Pavel Roskin
581cf41929 * edit.c (edit_open_file): Remove "text" and "text_size"
arguments.  Adjust all callers.
2002-12-08 09:10:38 +00:00
Pavel Roskin
78155218a6 * edit.c (edit_move_to_column): Remove, use
edit_move_to_prev_col() instead.
2002-12-08 08:18:57 +00:00
Pavel Roskin
c935eaa6c2 * edit.c: Commit the rest of the position saving code.
(edit_load_position): New function, load position.
(edit_save_position): New function, save position.
(edit_init): Take new argument "line".  If it's 0, load position
from .mc/filepos.
(edit_clean): Save file position to .mc/filepos even if the file
is not being saved.
* editwidget.c (edit): Don't set the initial line, pass it to
edit_init().
2002-12-08 07:47:59 +00:00
Pavel Roskin
c3cdbeb001 * edit.c (check_file_access): Use O_EXCL when opening new files.
Don't allow editing stale symlinks.
Reported by Max Derzhak <max@linux.zp.ua>
2002-12-08 00:55:03 +00:00
Pavel Roskin
b64955fbbd s/Failed trying to/Cannot/ 2002-12-08 00:40:11 +00:00
Pavel Roskin
f2ccab3adc * edit-widget.h: Remove "from_here" and "to_here".
* edit.c (edit_purge_widget): New function - clean struct WEdit
except the Widget part.
2002-12-06 04:49:58 +00:00
Pavel Roskin
dd7f5798fa * edit.h: Remove "dir" field in WEdit - it's always an empty
string.  Adjust all dependencies.
2002-11-30 19:50:51 +00:00
Pavel Roskin
41fbb5099f * edit.c: Use g_malloc() and g_free() on buffers1 and buffers2.
Eliminate CMalloc.
(edit_get_buffer_as_text): Remove, it's unused.
2002-11-30 17:53:12 +00:00
Pavel Roskin
b628d515c0 * edit.h: Don't define HAVE_SYNTAXH.
* syntax.c: Syntax highlighting is no more optional.
(edit_check_spelling): Remove.
2002-11-30 02:29:43 +00:00
Pavel Roskin
527cb0c64c * edit.c: First part of the position saving code.
(edit_move_to_column): New function.
2002-11-30 00:35:07 +00:00
Pavel Roskin
18de4488e3 * edit-widget.h: Move typedef WEdit and file names ...
* edit.h: ... here.  Don't include edit-widget.h.  Adjust all
dependencies.
2002-11-29 03:01:06 +00:00
Pavel Roskin
7969f851bb * edit.h: Decentralize includes. 2002-11-14 19:38:26 +00:00
Pavel Roskin
c6e56452ea * exit.c (edit_delete_line): Don't remove and restore the
preceding newline.  Don't treat binary zero as newline.
From Dmitry Semyonov <Dmitry.Semyonov@oktet.ru>
2002-11-14 05:17:56 +00:00
Pavel Roskin
e741be7a5d * *.c: Fix all global functions without declarations - declare,
make static or remove.
2002-11-13 04:32:00 +00:00
Pavel Roskin
2b9d151923 * edit.c (edit_execute_cmd): Fool gcc to prevent Y2K warning. 2002-11-13 02:05:01 +00:00
Pavel Roskin
af883aaecf Fixes in English messages. 2002-11-11 17:27:13 +00:00
Pavel Roskin
b2fd313167 * edit.c: Include charset.h unconditionally, use new conversion
functions that don't require ifdefs.
* edit_key_translator.c: Likewise.
* editcmd.c: Likewise.
* editdraw.c: Likewise.
2002-10-30 23:56:49 +00:00
Pavel Roskin
d3f0a2f61b Remove spaces around "Error" and "Warning" together with their translations.
Also remove spaces from "Quit" and "Search", but leave alone the
translations, that already have them without spaces.
2002-10-21 04:13:49 +00:00
Pavel Roskin
63983758e0 * edit-widget.h: Add new field macro_depth to control depth of
macro recursion.
* edit.c (edit_execute_macro): Make static.  Increment
macro_depth on entry, decrement on exit, don't allow it to be
too large.
2002-10-21 02:06:03 +00:00
Pavel Roskin
da7e82d253 Global removal of RCS Id: flags. 2002-09-26 23:13:45 +00:00
Pavel Roskin
2e3fc9234b * edit.c: Remove all references to CR_LF_TRANSLATION.
* editcmd.c: Likewise.
2002-09-24 04:35:44 +00:00
Pavel Roskin
6d1beed458 * edit.c (edit_move_forward3): Use caret notation for code 127
and below code 32.
* editdraw.c (edit_draw_this_line): Likewise.  Print '.' for
other non-printable characters and remove this code from ...
(print_to_widget): ... here.
2002-09-23 22:32:47 +00:00
Pavel Roskin
07de958369 * edit.c (edit_move_forward3): Show 'r' as ^M.
* editdraw.c (edit_draw_this_line): Likewise.  Use MOD_ABNORMAL
attribute.
From Alexander Varakin <avarakin00@hotmail.com>
2002-09-23 07:13:11 +00:00
Pavel Roskin
3d8a56ee9c * edit.h: Remove all references to O_TEXT, USE_O_TEXT and
MY_O_TEXT.
2002-09-23 07:00:30 +00:00
Pavel Roskin
e49a220a30 * edit.c: Use O_BINARY when opening files.
* editcmd.c: Likewise.
From Alexander Varakin <avarakin00@hotmail.com>
2002-09-23 06:54:50 +00:00
Andrew V. Samoilov
bb947f855e * edit.c: Don't initialize static selection and selection_history. 2002-09-20 15:42:25 +00:00
Pavel Roskin
b5265f8da5 * edit.c (edit_filters): Use gzip, not compress for *.Z files
for consistency with other parts of the code (viewer, mc.ext).
2002-09-04 18:57:14 +00:00
Pavel Roskin
221c35266c * edit-widget.h: Eliminate ERROR_FILE.
* edit.c: Remove all references to ERROR_FILE.
* editcmd.c (edit_block_process_cmd): Revert to using catstrs(),
those strings are freed now.  Use system(), not execute() to
execute commands.  Use open_error_pipe() and close_error_pipe()
to keep track of errors.
2002-08-24 17:22:15 +00:00
Pavel Roskin
42f28932fc * editcmd.c (freestrs): New function to clean temporary strings.
* edit.c (edit_clean): Call freestrs().
2002-08-20 23:18:36 +00:00
Pavel Roskin
3a93326ce7 * editoptions.c: Make some variables static.
* edit.h: Take extern declaratrions from all C files.
2002-08-19 01:23:24 +00:00
Pavel Roskin
21cc1c5e28 * edit.c (edit_push_action): Fix access to uninitialized memory.
Found by Valgrind.
2002-08-02 16:44:04 +00:00
Pavel Roskin
a23618b2ef * edit.h (struct key_word): Remove unused "bg" field, rename
"fg" to	"color", since it keeps all color information.
* syntax.c (edit_get_syntax_color): Replace "fg" and "bg"
arguments with a single argument "color".
Adjust all dependencies.
2002-07-14 17:56:47 +00:00
Pavel Roskin
2ce74d23e1 * edit.c (check_file_access): Return 1 on all errors, document
this behavior.  Set edit->delete_file to 1 for newly created
files.
(edit_open_file): Don't set edit->delete_file, it's now done in
check_file_access().
Reported by Saso <saso@bojler.dhs.org>
2002-06-24 23:41:59 +00:00
Andrew V. Samoilov
a1efabf66b Revert two casts back to fix calculation 2002-05-13 17:28:28 +00:00
Andrew V. Samoilov
0b08e1b69f * edit.h: Remove open, close, write, read and mkdir declaration.
* edit.c: Use mc_open, mc_close, mc_write, mc_read, mc_rename,
mc_chmod and mc_chown. Don't cast (char *) to (unsigned long)
in pointer arithmetics.
* editcmd.c: Likewise.
2002-05-13 16:53:51 +00:00
Pavel Roskin
3d0de08b32 * edit.c: Rename DELETE to DELCHAR to avoid macro redefinition
on Win32.
* edit.h: Likewise.
2002-01-22 00:49:33 +00:00
Pavel Roskin
7ed785e3cc * edit.c: Add support for CK_Complete_Word event.
* editcmddef.h: Likewise.
* edit_key_translator.c (cooledit_key_map): Bind Alt-Tab to
CK_Complete_Word.
(emacs_key_map): Likewise.
* editcmd.c: Implement word completion.
2002-01-21 17:49:57 +00:00
Pavel Roskin
eba0c6e703 * edit.c (user_menu): Don't move the cursor before and after
inserting the block.
Reported by Matthias Urban <murban@cs.uni-magdeburg.de>
2001-12-22 00:32:20 +00:00
Andrew V. Samoilov
29dd051ce8 * edit.c (edit_renew): Release dir after use.
* editcmd.c (edit_replace_dialog): Eliminate tsearch_text,
treplace_text and targ_order.
(edit_replace_cmd): edit_replace_dialog gives g_malloced
strings, so g_strdup/g_free have to be used.  Accept only
positive pattern number in Scanf search and replace.
(edit_save_file): Enable safe save and backups on remote VFS.
2001-11-19 07:31:32 +00:00
Andrew V. Samoilov
b6b8cd0433 * edit_key_translator.c (cooledit_key_map):
Add C-k, CK_Delete_To_Line_End.

* edit.c (user_menu): Don't assign block_file twice.
2001-11-16 07:23:36 +00:00
Andrew V. Samoilov
51b1972843 * edit.c (edit_reload): destroy_dlg g_free()s widgets, so
g_malloc/g_free have to be used.
	(edit_init): Ditto.  Eliminate st.
2001-11-07 08:43:15 +00:00
Andrew V. Samoilov
328cbcb954 * edit.h (edit_execute_cmd): Declare it here.
* edit.c: Remove edit_execute_cmd declaration.
(edit_execute_cmd): Use edit_print_string instead of edit_printf.

* editcmd.c:  Remove edit_execute_cmd declaration.
(edit_search_dialog): Eliminate tsearch_text.
(edit_search_cmd): edit_search_dialog gives g_malloc()ed exp.
Use g_strdup/g_free instead of strdup/free.
(edit_mail_dialog): quick_dialog use g_strdup, so g_free
must be used.

* bookmark.c (book_mark_clear): Eliminate rend.
It's only written but never read.
(book_mark_flush): Likewise.
(book_mark_inc): Likewise.
(book_mark_dec): Likewise.
2001-11-05 09:23:05 +00:00
Pavel Roskin
edf0504087 * edit.c (user_menu): If the error file is missing, treat it as
success.  Truncate block file unconditionally.
2001-10-23 05:40:13 +00:00
Pavel Roskin
b1c57095b2 * edit.c: Stop using _EDIT_C definition. Move variable
declarations from edit.h, make static or eliminate if possible.
Report errors immediately.
* edit.h: Likewise.
* editwidget.c (edit): Don't report errors from edit_init(),
they are reported in place.
2001-10-23 01:46:53 +00:00
Pavel Roskin
c932c4610a * edit.c (check_file_access): Only allow to edit regular files.
Use stat() before open() to prevent hangs on pipes, use fstat()
afterwards if stat() was unsuccessful.
2001-10-18 09:35:22 +00:00
Pavel Roskin
b4324a149b * edit.h: Don't use macro `stat' - it's already a macro on
Solaris 8 with large file support.
* editcmd.c: Replace stat() with mc_stat().
* edit.c: Likewise.
2001-09-17 21:32:47 +00:00
Pavel Roskin
afee09a276 * edit.c: Eliminate all code disabled for the text edition.
* editcmddef.h: Likewise.
* editmenu.c: Likewise.
* editwidget.c: Likewise.
* syntax.c: Likewise.
* wordproc.c: Likewise.
2001-09-07 20:10:45 +00:00
Pavel Roskin
89824f18f7 * edit.h: Eliminate all code disabled for the text edition.
Reorder and simplify includes.
* edit.c: Likewise.
2001-09-07 16:52:42 +00:00
Pavel Roskin
b44a4e19c6 Copy all necessary files from gtkedit.
* Makefile.in (EDITLINKS): Merge with EDITSRC, remove all
references.
2001-08-24 18:23:17 +00:00
Paul Sheer
2d93c2e0ff removeing these files. Makefile will create symlinks 1998-09-15 21:20:29 +00:00
Paul Sheer
f36e99f150 *** empty log message *** 1998-09-14 21:26:41 +00:00
Paul Sheer
c57d9e424e *** empty log message *** 1998-09-14 21:20:01 +00:00
Paul Sheer
3cc82b6f4a editdraw.c, editmenu, editcmd.c: highlighting for Pascal
Added column text highlighting     added.
	and block movements.
1998-07-14 23:17:26 +00:00
Vincent Renardias
d23d4ad0de Fri, 26 Jun 1998 15:10:25 +0200 [Vincent]
* Contributed by Martin Schulze:
  + de.po: more translated strings
  + edit.c/file.c: Fix typo.
* Updated fr.po accordingly.
1998-06-26 13:12:22 +00:00
Pavel Machek
0a4550ca9f Mcedit: changed some #include's. This makes it possible to remove some
-I options from makefiles, at least for the PC port
1998-05-12 16:47:52 +00:00
Paul Sheer
003c7b8e49 updated to reflect cooledit 3.6.0 1998-04-24 13:52:53 +00:00
Pavel Machek
b8da58830e Numerous patches for OS/2 and Windows NT. lstat detects executables
(stat is broken in Borland C). Help looks better.
1998-03-23 23:06:36 +00:00
Miguel de Icaza
eb6b3842ab Initial revision 1998-02-27 04:54:42 +00:00