Commit Graph

288 Commits

Author SHA1 Message Date
Pavel Roskin
4adb9bfe13 * edit-widget.h: Use char instead of unsigned char to fix
warnings from gcc 4.0.
* editcmd.c: Likewise.
2005-05-03 23:40:15 +00:00
Pavel Roskin
d78556d3c5 * edit.h: Use D_ERROR for edit_error_dialog, D_NORMAL for query
dialogs.  Remove unused edit_query_dialog4.
2005-05-03 23:26:51 +00:00
Leonard den Ottolander
8994b8bbec Added casts on 2 parameters to g_snprintf. 2005-04-27 21:02:59 +00:00
Pavel Roskin
b2999839e8 * editcmd.c (edit_replace_cmd): Restore correct behavior of
Shift-F4.
2005-03-17 21:18:23 +00:00
Roland Illig
ecc08f6c60 * edit.h: Removed unnecessary #include directives ...
* *.c: ... and added them here.
2005-02-22 17:00:36 +00:00
Roland Illig
5dbdfb07ba * editcmd.c: Explicitly declared unused variables to make gcc
quiet.
2005-02-08 17:14:34 +00:00
Roland Illig
e501886d58 * editdraw.c: Renamed redraw_labels to buttonbar_redraw.
* editwidget.c: Likewise. Renamed define_label_data to
	buttonbar_set_label_data.
2005-02-08 09:50:16 +00:00
Roland Illig
db5eec4964 * edit.h: Reformatted #definitions. 2005-02-08 06:48:54 +00:00
Roland Illig
2a281ad18d * *.c: Removed unused parameters for static functions. Marked
unused parameters for global functions. Removed redundant
	comments.
2005-02-07 20:08:01 +00:00
Roland Illig
51156030fb * ChangeLog: Applied trim_changelog. 2005-02-07 07:33:47 +00:00
Roland Illig
05d2881a71 * *.c: Removed trailing whitespace. 2005-02-07 07:31:19 +00:00
Roland Illig
e8e0035587 * edit.h: Removed catstrs, as it is only used in editcmd.c.
* editcmd.c (catstrs): Changed declaration to be static.
2005-02-07 06:34:08 +00:00
Roland Illig
b49ac634f5 * editwidget.c: Don't use catstrs anymore. 2005-02-07 06:31:04 +00:00
Roland Illig
13737b1de1 * edit.c (user_menu): Don't use catstrs anymore. 2005-02-07 06:18:13 +00:00
Roland Illig
259485542a * syntax.c: Don't use catstrs anymore. 2005-02-07 06:11:15 +00:00
Roland Illig
64eed6e12b * edit.h (catstrs): Changed the return type to "const char *".
* editcmd.c (catstrs): Likewise.
	* edit.c (user_menu): Added const qualifiers.
	* editcmd.c: Likewise.
	* syntax.c: Likewise.
2005-02-07 06:02:59 +00:00
Roland Illig
c90e9d1b95 * edit.c: Improved message formatting. 2005-02-06 23:58:59 +00:00
Roland Illig
6dc6158ff1 * edit.h: Removed NO_INLINE_GETBYTE conditional. The name was
misleading, as it really meant INLINE_GETBYTE. Furthermore,
	it has not been working since the split of edit.h into edit-widget.h.
	* edit.c: Likewise.
2005-01-30 20:34:58 +00:00
Roland Illig
067e407cf7 * editdraw.c (edit_status): Fixed drawing bug with ncurses. 2005-01-27 22:14:58 +00:00
Roland Illig
6f03d9bbd9 * edit.h: Renamed multiple inclusion guards that started with a
double underscore. Added #includes for dependent files.
	* editcmddef.h: Likewise.
	* editlock.h: Likewise.
	* edit-widget.h: Likewise.
2004-12-03 17:09:27 +00:00
Roland Illig
521be0ef82 * editcmd.c (edit_replace_cmd): Separated input and output arguments.
* editcmd.c (edit_replace_dialog): Code cleanup.
2004-12-02 21:02:07 +00:00
Andrew V. Samoilov
a6c81a0d7a Change my contacts 2004-12-02 16:53:50 +00:00
Andrew V. Samoilov
26e400227a * editcmd.c (edit_replace_prompt): Fix warning with 'unused' label_len. 2004-12-02 08:31:52 +00:00
Roland Illig
badf915e39 * editcmd.c: Introduced a type edit_getbyte_fn to get rid of
the many function type casts.
2004-12-01 00:55:17 +00:00
Andrew V. Samoilov
82f580f857 * syntax.c (get_args): Use in "args_size" argument instead of
in out "argc".  Return number of found entries.
        Adjust all callers.
2004-11-18 10:02:33 +00:00
Andrew V. Samoilov
f22b5d749f * syntax.c (get_args): Use "argc" to check "args" size.
(edit_read_syntax_rules): Add new parameter "argc" (size of the
        "args" buffer) to prevent buffer overflow.
2004-11-16 19:46:46 +00:00
Andrew V. Samoilov
bfee231c11 * editdraw.c (edit_status): Don't output extra characters on the
status line.
        (print_to_widget): Don't use addch() with negative offset to skip
        over excessive columns. Output only those columns that should be
        displayed on the screen.
2004-11-10 14:11:27 +00:00
Roland Illig
188b970477 * editcmd.c (edit_replace_prompt): Fixed codepage conversion bug
introduced in on 2004-09-25 by me.
2004-11-10 06:50:50 +00:00
Roland Illig
63cae58f20 * editdraw.c (edit_status): Expand the filename field in the status
line to 16 characters even if the actual filename is shorter.
2004-10-23 13:14:14 +00:00
Roland Illig
5d5237e557 * syntax.c (read_one_line): Fixed SEGV when reading syntax file
with "\r\n" line endings on Unix.
2004-10-16 13:33:21 +00:00
Andrew V. Samoilov
5d5f56d4ee * editcmd.c (regexp_error): Small text fix.
(edit_search_cmd): Likewise.
2004-10-11 05:31:29 +00:00
Roland Illig
7a505ea99d * editcmd.c (edit_ext_cmd): Revoked my last change. 2004-09-26 11:42:17 +00:00
Roland Illig
d0a8da7cef * editcmd.c (edit_ext_cmd): Replaced the old version with a new
one that uses ../src/pipethrough. The new version feeds the
	currently selected block (or an empty input) into the command
	which reduces the chance of a deadlock when the command tried
	to read from stdin. It also allows the user to insert the output
	of a command that has exited with a nonzero result. Another
	feature is that it does not use temporary files.
2004-09-25 21:34:36 +00:00
Roland Illig
2a2b478f67 * syntax.c (this_try_alloc_color_pair): Added const qualifiers.
* editcmd.c (snprintf_p): Likewise. (edit_replace_prompt):
	Simplified the code.
2004-09-25 20:53:32 +00:00
Roland Illig
a3c3564d4d * syntax.c (this_try_alloc_color_pair): Added const qualifiers. 2004-09-25 14:28:10 +00:00
Andrew V. Samoilov
12d24222db * edit.c (edit_clean): g_free handles NULL argument too,
no need for the comparison.
            (edit_move_backward_lots): Likewise.
        * editcmd.c (edit_set_filename): Likewise.
            (edit_replace_cmd): Likewise.
            (edit_search_cmd): Likewise.
            (edit_sort_cmd): Likewise.
            (edit_mail_dialog): Likewise.
        * syntax.c (syntax_g_free): Likewise.
            (edit_read_syntax_rules): Likewise.
2004-09-24 22:37:00 +00:00
Roland Illig
9c65d36bdd * edit.c: Replaced NULL with (char *) NULL. Likewise for 0, where
NULL was meant.
	* editcmd.c: Likewise.
	* editlock.c: Likewise.
	* editwidget.c: Likewise.
	* syntax.c: Likewise.
2004-09-24 14:57:57 +00:00
Roland Illig
283441db92 * editdraw.c (status_string): Removed unused parameter.
(edit_status): Rewrote to allow longer filenames to be displayed
	completely whenever possible.
2004-09-24 11:13:11 +00:00
Roland Illig
3c6a792d4b * edit/edit.h: renamed edit() to edit_file() to avoid GCC shadow
warnings (many variables are also called edit).
	* edit/editwidget.c: likewise.
	* src/cmd.c: renamed edit() to edit_file() to avoid GCC shadow
	warnings (many variables are also called edit).
	* src/main.c: likewise.
2004-09-19 17:46:39 +00:00
Roland Illig
6c29de339b * editcmd.c (edit_replace_prompt): Allocate the label text
dynamically instead of using catstrs. Don't handle
	ENABLE_CHARSET specially.
2004-09-19 17:23:52 +00:00
Roland Illig
d5f70f2ab8 * editcmd.c (edit_replace_cmd): Added const qualifier.
* editwidget.c (edit_my_define): likewise.
2004-09-19 15:40:09 +00:00
Andrew V. Samoilov
fade042845 Typos 2004-09-17 08:32:59 +00:00
Andrew V. Samoilov
32cdf184ba * editcmd.c (edit_replace_prompt) [HAVE_CHARSET]: Warning hack. 2004-09-17 03:07:37 +00:00
Andrew V. Samoilov
0758929ef1 * editwidget.c (edit_adjust_size): Fix warnings.
(edit_dialog_callback): Likewise.
        edit.c (menu_save_mode_cmd): Likewise.
2004-09-02 20:36:17 +00:00
Andrew V. Samoilov
f379b30232 * editcmd.c (edit_save_as_cmd): Add hotkey to dialog.
(edit_save_confirm_cmd): Likewise. (edit_new_cmd): Likewise.
(edit_load_cmd): Likewise. (edit_block_move_cmd): Likewise.
(edit_block_delete): Likewise. (edit_ok_to_exit): Likewise.
2004-09-01 22:40:45 +00:00
Andrew V. Samoilov
83de09639c * syntax.c(this_try_alloc_color_pair): Use g_strlcpy instead
sequence strncpy(), name[len] = '\0'
(edit_read_syntax_rules):Likewise.
2004-09-01 18:37:14 +00:00
Roland Illig
263ea5c1d5 * Code cleanup: Added const qualifier for variables and
function declarations where possible. No functional changes.
2004-08-29 17:57:39 +00:00
Andrew V. Samoilov
761406cfdf * edit/editcmd.c: Fix buffer overflows in edit replace code. 2004-08-25 22:12:02 +00:00
Roland Illig
c12aeadadb Added missing ChangeLog items from 2004-08-16. 2004-08-24 11:24:43 +00:00
Andrew V. Samoilov
bb8bf1756e * syntax.c (edit_read_syntax_rules): Dynamically allocate
more space for contexts and for words in context.
2004-08-22 20:47:56 +00:00
Pavel Roskin
603e2af580 * editcmddef.h: Split CK_No_Command into CK_Insert_Char and
CK_Ignore_Key.
* editkeys.c (emacs_key_map): Ignore Ctrl-g.  Requested by
Paul Seelig <pseelig@uni-mainz.de>
(edit_translate_key): Implement CK_Ignore_Key.
2004-02-04 23:09:22 +00:00
Pavel Roskin
90ae5d102d * edit.c (edit_execute_key_command): Return void, the result is
never used.
(edit_execute_cmd): Likewise.
2004-02-04 22:27:58 +00:00
Dmitry Alexeyev
c459caead1 * syntax.c (edit_read_syntax_rules): Fix crash if syntax file
has more than 1024 keywords.
2003-12-24 07:38:49 +00:00
Pavel Roskin
a7c0bbac62 * editcmd.c: Use input_expand_dialog() instead of input_dialog()
for loading and saving files.
2003-11-27 10:23:50 +00:00
Pavel Roskin
f51e86a184 * editcmd.c (pipe_mail): Eliminate g_strdup_printf().
(edit_complete_word_cmd): Fix possible buffer overflow.
2003-11-24 20:27:34 +00:00
Pavel Roskin
4bc92accff * editcmd.c (edit_mail_dialog): Trivial clean-up. 2003-11-03 18:59:50 +00:00
Pavel Roskin
ad84a71c64 * edit-widget.h (struct WEdit): Add GTree *defines field.
* syntax.c: Use edit->defines instead of static defines.
2003-10-23 23:23:46 +00:00
Pavel Roskin
f426c570a6 * syntax.c (compare_word_to_right): More checks for braces and
brackets.
2003-10-16 20:31:06 +00:00
Pavel Roskin
7f8dfa977d * syntax.c (compare_word_to_right): Fix recent breakage - rules
ending with wildcard (e.g. "$+") won't match.
2003-10-16 20:16:38 +00:00
Pavel Roskin
e90a7540a2 * edit.h: Make static all functions and variables that don't
need to be global.  Remove unused functions.  Adjust all
dependencies.
2003-10-14 21:48:40 +00:00
Pavel Roskin
fce42c9316 * syntax.c: Give names to numeric tokens. 2003-09-22 23:04:48 +00:00
Pavel Roskin
daab7bd737 * syntax.c (compare_word_to_right): Add checks that we don't go
beyond text length for certain invalid rules.
Reported by Juan C. Olivares <juancri@TAGnet.org>
2003-09-22 22:30:48 +00:00
Pavel Roskin
e0f9b7ab83 * editcmd.c (edit_raw_key_query): Use straight widget order.
(edit_completion_dialog): Likewise.
* editwidget.c (edit): Likewise.
2003-09-12 21:30:29 +00:00
Pavel Roskin
38265d418d * edit.h: Get rid of WIDGET_COMMAND, update all dependencies. 2003-09-07 19:08:07 +00:00
Pavel Roskin
cf9acd036e * edit-widget.h: Resurrect "dir" field in WEdit to store
directory for relative filenames.

* edit.c (edit_clean): Release edit->dir.

* editcmd.c (edit_save_file): Use absolute filename.
Temporarily disable safe save and backups on remote VFS because
it doesn't work - again.
2003-07-31 16:38:07 +00:00
Pavel Roskin
58572c60da * edit.c (edit_execute_cmd): Enable user menu in mcedit. 2003-07-25 18:52:28 +00:00
Pavel Roskin
dadbdd25e9 * editcmd.c (edit_quit_cmd): Rename to ...
(edit_ok_to_exit): ... this.  Don't stop dialog - this function
is called by the dialog code.
* editwidget.c (edit_dialog_callback): Process DLG_VALIDATE
event.  Don't exit it the user wants to continue editing.
* edit.c (edit_execute_cmd): Close the dialog - it will ask user
if necessary.
2003-07-21 03:54:47 +00:00
Pavel Roskin
9bc8df86ad * editcmd.c (edit_quit_cmd): Don't save this command in the undo
stack.  Don't force any refresh.  Don't delete unsaved files, do
it ...
* edit.c (edit_clean): ... here.  This ensures that unsaved
files from the mcedit command line are erased on Ctrl-n.
2003-07-20 23:24:25 +00:00
Pavel Roskin
0633d91f60 * editwidget.c (edit): Remove unused variable "framed". 2003-07-20 22:15:28 +00:00
Pavel Roskin
4b8f0b02b2 * edit.c (edit_clean): Remove stale lock if any. 2003-07-09 00:21:09 +00:00
Pavel Roskin
5ff5f8e9d1 * edit-widget.h: Add new field loading_done.
* edit.c (edit_init): Set loading_done.
(edit_insert): Don't call edit_modification() before the file is
completely loaded.
2003-07-09 00:18:11 +00:00
Pavel Roskin
59593d0e1b * edit-widget.h: Eliminate unused explicit_syntax field. 2003-07-08 23:58:36 +00:00
Pavel Roskin
729a855b29 * edit-widget.h: Stop misusing "unsigned char" for boolean.
Eliminate have_frame - it's unused.  Adjust all dependencies.
2003-07-08 23:46:01 +00:00
Pavel Roskin
6b63507463 * editkeys.c: Leave only distinct entries in cooledit_key_map
and emacs_key_map.  Move the rest to common_key_map.
2003-06-14 05:02:33 +00:00
Pavel Roskin
9dae056016 * editkeys.c (emacs_key_map): Move Atl-'>' and Alt-'<' ...
(common_key_map): ... here.
2003-06-10 00:35:55 +00:00
Pavel Roskin
4a398f0ee7 * editcmd.c (edit_ext_cmd): Fix memory leak. 2003-06-05 17:55:50 +00:00
Pavel Roskin
bdc56f331b * editcmd.c: Implement pasting the output of any external
command.
* editmenu.c: Add menu entries for that.
* editcmddef.h: Add new command CK_ExtCmd.
2003-05-30 21:06:10 +00:00
Pavel Roskin
e95373535c * edit.c: Move edit_modification() before actions to provide
proper repainting if there are dialogs invoked by actions.
2003-04-05 01:43:58 +00:00
Pavel Roskin
66a823861f * editlock.c: Split lock into user@host and pid and report them
separately.
2003-04-05 01:29:15 +00:00
Pavel Roskin
ebf1bcfa33 * edit.c (edit_load_file): Use vfs_file_is_local(), not
vfs_current_is_local().
* editlock.c (edit_lock_file): Disable locking on VFS.
2003-04-02 22:25:00 +00:00
Pavel Roskin
d88b75838a * editlock.c, editlock.h: New files. Implement file locking in
Emacs style, as documented in JED editor sources.
* Makefile.am: Add those files to build tree.

* edit-widget.c (WEdit): New property 'locked', 0 on edit_init.
* edit.c (edit_modification): Lock buffer on modification.
* editcmd.c (edit_save_cmd, edit_save_as_cmd): Handle locking
during file save.
(edit_load_file_from_filename): Unlock.  Remove 2 duplicate
lines (handled by edit_init).
(edit_quit_cmd): Unlock.
2003-04-02 19:36:10 +00:00
Pavel Roskin
d4336795e6 * edit.h: Make it easier to tweak buffer size and maximal number
of buffers.
2003-03-12 07:07:27 +00:00
Pavel Roskin
7cdbc354c2 * editkeys.c (common_key_map): Delete previous word by
Alt-Backspace.  Fix Ctrl-Backspace on some terminals.
Reported by Andrew V. Samoilov <sav@bcs.zp.ua>
2003-03-07 21:47:32 +00:00
Andrew V. Samoilov
6f35fce869 * syntax.c (edit_read_syntax_file): Fix segmentation violation. 2003-03-06 18:42:33 +00:00
Andrew V. Samoilov
902cd4834b * syntax.c (edit_read_syntax_rules): Check for list of defines
is already initialized.
(edit_read_syntax_file): Process `include ...` before first
`file ...`, so color definitions can be stored separately.
2003-03-04 09:52:40 +00:00
Andrew V. Samoilov
599f3e8bfb * syntax.c (subst_defines): New function to substitute defines.
(this_try_alloc_color_pair): Move color substitution ...
(edit_read_syntax_rules): ... here.  Use subst_defines() to
substitute colors for contexts and keywords.  Allow multiword
defines.
2003-03-03 13:37:45 +00:00
Andrew V. Samoilov
6a8a443ed2 * syntax.c (edit_read_syntax_rules): Add args argument and it
use instead of own auto args array to share this area with ...
(edit_read_syntax_file): ... this.  Adjust for the above.
Use strncpy() instead of unsafe strcpy().
2003-02-26 19:01:40 +00:00
Pavel Roskin
0158eaf0f3 * syntax.c (defines): New static variable for list of defines.
(mc_defines_destroy): New function to release memory of key
pair.
(destroy_defines): New function to destroy list of defines
completely.
(this_try_alloc_color_pair): Use strncpy() instead of unsafe
strcpy().  Use values from list of defines to substitute given
parameters.
(edit_read_syntax_rules): Initialize list of defines and process
new "define" keyword.  Use strncpy() instead of unsafe strcpy().
(edit_free_syntax_rules): Destroy list of defines.
2003-02-25 15:07:53 +00:00
Andrew V. Samoilov
ebc8d1690a * editmenu.c (OptMenuEmacs): Define as OptMenu.
(SearReplMenuEmacs): Define as SearReplMenu.
(EditMenuEmacs): Define as EditMenu.
2003-02-21 23:32:06 +00:00
Pavel Roskin
0da0c44f87 * (OptMenu): Add "Learn Keys".
(OptMenuEmacs): Likewise.
2003-01-28 17:56:53 +00:00
Andrew V. Samoilov
a132b94cf9 * edit-widget.h (struct macro): Move definition ...
* edit.h: ... here to fix compilation on HP-UX.
2003-01-27 15:46:40 +00:00
Pavel Roskin
812bac9a33 * editkeys.c: Move key maps to the file scope. Put common keys
to a separate table common_key_map.
(edit_translate_key): Remove unused argument x_keycode.
2002-12-25 22:53:07 +00:00
Pavel Roskin
e0bbeb7085 * editkeys.c (edit_translate_key): Treat Shift-Enter as return
without indent.  Useful when pasting multiline text with
Shift-button3 or Shift-Insert with autoindent enabled.
2002-12-25 05:46:03 +00:00
Pavel Roskin
554acb2837 * editkeys.c (edit_translate_key): Treat Ctrl-Home and Ctrl-End
like Ctrl-PgUp and Ctrl-PgDown respectively.
2002-12-23 10:18:22 +00:00
Pavel Roskin
ab43e6db88 * edit_key_translator.c: Rename to ...
* editkeys.c: ... this.
* edit.c (edit_translate_key): Move to editkeys.c.
* Makefile.am: Adjust for the above.
2002-12-23 10:13:35 +00:00
Pavel Roskin
d6947e39cf * edit.c (edit_translate_key): Remove x_state argument, it's now
a part of x_keycode.
* editwidget.c (get_key_state): Remove.
2002-12-21 08:46:50 +00:00
Andrew V. Samoilov
4718c1105d * editcmd.c (edit_block_process_cmd): Quote filename. 2002-12-19 13:01:34 +00:00
Andrew V. Samoilov
bce2ba99e9 * edit.h (edit_save_mode_t): New enum for file saving mode.
* editcmd.c (): Use edit_save_mode_t.
(pipe_mail): Quote to, subject and cc with name_quote().
* edit.c (edit_get_filter): Use quoted filename.
(edit_get_write_filter): Use quoted writename.
(edit_push_action): Use g_realloc().
2002-12-18 20:04:39 +00:00
Pavel Roskin
e0a241f570 * editcmd.c (edit_goto_cmd): Add support for negative line
numbers, which are counted from the last line.  Use strtol(), so
hex numbers are supported as well.
2002-12-16 07:13:12 +00:00
Pavel Roskin
0454cf6eb1 * edit.c: Use edit->stack_disable instead of static variable. 2002-12-16 05:21:42 +00:00