Commit Graph

16143 Commits

Author SHA1 Message Date
Andrew Borodin
511d4d853b Merge branch '4587_mcview_search_bol'
* 4587_mcview_search_bol:
  (mcview_moveto_bottom): fix search start and stop positions.
  mcview: fix regex search.
  mcview: minor refactoring.
  Ticket #4587: mcviewer: fix BOL regex search.
2024-12-15 13:48:22 +03:00
Andrew Borodin
a83a6f4acf (mcview_moveto_bottom): fix search start and stop positions.
After move to the end of file, set the start positions to EOL
to make backward search starting directly from EOL.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-12-15 13:46:57 +03:00
Andrew Borodin
4861ccb19a mcview: fix regex search.
Sync regex search way with mcedit: handle BOL (^) metacharacter.

  * (WView::search_line_type): new member.
  * (mcview_search_init): init WView::search_line_type.
  * (mcview_find): sync with edit_find().

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-12-15 13:46:57 +03:00
Andrew Borodin
a3825e1b29 mcview: minor refactoring.
* (mcview_search): move to search.c.
  * (mcview_do_search): make static.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-12-15 13:46:57 +03:00
Andrew Borodin
c943b931d7 Ticket #4587: mcviewer: fix BOL regex search.
Refactoring.

* (mc_search_line_t): rename from edit_search_line_t and move to
lib/search.h.
* (mc_search_get_line_type): rename from edit_get_search_line_type()
and move to lib/search/regex.c.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-12-15 13:46:52 +03:00
Andrew Borodin
7950ae8b24 Merge branch '4613_check_eta_overflow'
* 4613_check_eta_overflow:
  Ticket #4613: check for ETA overflow.
2024-12-14 09:20:47 +03:00
Jakob Kastelic
27c01b8942 Ticket #4613: check for ETA overflow.
(file_eta_prepare_for_show): check if 'eta_secs' is too large to display
as integer. If yes, display "--".

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-12-13 19:51:52 +03:00
Yury V. Zaytsev
7fc6dfc16b Merge branch '4609_rust_crate'
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-12-06 22:20:34 +03:00
Yury V. Zaytsev
63a51cdcd7 Ticket #4609: treat Rust crates as tar.gz archives
534ce68621/src/cargo/ops/cargo_package.rs (L185)

Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-12-06 16:13:02 +03:00
Andrew Borodin
c2eb73bb2c Merge branch '4608_mcdiff_segfault'
* 4608_mcdiff_segfault:
  Ticket #4608: mcdiff: segmentation fault on empty files merge.
2024-12-05 20:59:44 +03:00
Andrew Borodin
8548796e75 Ticket #4608: mcdiff: segmentation fault on empty files merge.
(get_current_hunk): immediately return if hunk list is empty.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-12-04 21:02:21 +03:00
Andrew Borodin
f85f7fec29 Merge branch '3205_eta'
* 3205_eta: (29 commits)
  Update po/*.po files.
  doc: update EN and RU man pages.
  Calculate pauses in file operations.
  File copy/move: make ETA accurate.
  (calc_copy_file_progress): clarify calculation of BPSes and ETAs.
  (panel_operate): use intermediate variable for better indentation.
  (copy_file_file): clarify handling of mc_open() errors.
  (copy_file_file): fix handling of mc_open() error.
  (calc_copy_file_progress): rename from copy_file_file_display_progress().
  (file_progress_show_total): add 'tv_current' argument.
  (file_progress_show_total): use 'copied_bytes' to show numeric value.
  (file_progress_show_count): remove 'done' and 'total' arguments.
  (erase_dir_iff_empty): remove 'count' argument.
  (file_op_context_t): rename members.
  (copy_file_file): reduce variable scope, change order of progress update.
  (file_op_context_t): reorder members.
  Move content of src/filemanager/fileopctx.[ch] to src/filemanager/filegui.[ch].
  (file_op_total_context_t): remove. All members were moved to file_op_context_t.
  (file_op_total_context_t): rename members.
  (copy_file_file_display_progress): remove dead code.
  ...
2024-11-13 19:38:42 +03:00
Andrew Borodin
883aec7625 Update po/*.po files.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:02 +03:00
Andrew Borodin
c3fa92d89a doc: update EN and RU man pages. 2024-11-13 19:38:01 +03:00
Andrew Borodin
5047d4d114 Calculate pauses in file operations.
Calculate BPS and ETA, taking into account pauses due to query
dialog boxes.

  * (file_op_context_t): new 'pauses' member.
  * (file_error): pass file operation context to calculate pause.
  * (real_warn_same_file): likewise.
  * (real_do_file_error): likewise.
  * (real_query_recursive): calculate pause.
  * (overwrite_query_dialog): likewise.
  * (file_progress_show_total): use ctx->pauses to show time of
    operation.
  * (calc_copy_file_progress): calculate use ctx->pauses to calculate ETA.
  * (warn_same_file):
  * (check_same_file):
  * (check_hardlinks):
  * (make_symlink):
  * (do_file_error):
  * (files_error):
  * (try_remove_file):
  * (move_file_file):
  * (try_erase_dir):
  * (do_move_dir_dir):
  * (copy_file_file):
  * (copy_dir_dir):
  * (panel_operate):
  * (tree_move): related changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:01 +03:00
Andrew Borodin
1e35ae3adb File copy/move: make ETA accurate.
* (progress_update_one): update total progress bytes counter. Update
    progress info in the progress window only if file was processed
    successfully. Don't check buttons here.
  * (move_file_file): update progress info if file move wasn't aborted.
  * (copy_file_file): update progress info if stat() or open() failed
    (file size is unknown, but file counter shoud be updated). Modify
    caclulation and display of byte counters.
  * (panel_operate): simplify files processing loop. Remove action that
    already done via operate_one_file() call.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:01 +03:00
Andrew Borodin
ff1a404bb3 (calc_copy_file_progress): clarify calculation of BPSes and ETAs.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:01 +03:00
Andrew Borodin
07ea52d767 (panel_operate): use intermediate variable for better indentation.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:00 +03:00
Andrew Borodin
e2ca50418d (copy_file_file): clarify handling of mc_open() errors.
Handle mc_open() errors in the same way as mc_fstat().

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:00 +03:00
Andrew Borodin
25fb677b87 (copy_file_file): fix handling of mc_open() error.
In case of FILE_IGNORE, immediately stop processing of file.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:38:00 +03:00
Andrew Borodin
e6e329bc8c (calc_copy_file_progress): rename from copy_file_file_display_progress().
Refactoring, reuse variable.

(file_op_context_t): remove 'bps_time' member. It's unused anymore.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
d844c6212c (file_progress_show_total): add 'tv_current' argument.
Get rid of g_get_monotonic_time() here. If possible, use time value
calculated before.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
6ba3cc68c0 (file_progress_show_total): use 'copied_bytes' to show numeric value.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
2b1a63aef3 (file_progress_show_count): remove 'done' and 'total' arguments.
Use members of 'ctx' instead.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
7c418111fd (erase_dir_iff_empty): remove 'count' argument.
Use 'ctx->progress_count' instead.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
527cb1424d (file_op_context_t): rename members.
copied_bytes -> total_progress_bytes
progress_count -> total_progress_count
prev_progress_count -> prev_total_progress_count

No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
debd1ee8ce (copy_file_file): reduce variable scope, change order of progress update.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
64c6de4ab8 (file_op_context_t): reorder members.
No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-13 19:37:59 +03:00
Andrew Borodin
17fd844315 Move content of src/filemanager/fileopctx.[ch] to src/filemanager/filegui.[ch].
No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
b2b10f1f87 (file_op_total_context_t): remove. All members were moved to file_op_context_t.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
dde9002aaf (file_op_total_context_t): rename members.
bps -> total_bps
transfer_start -> total_transfer_start
eta_secs -> total_eta_secs

No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
ab5bbba2dd (copy_file_file_display_progress): remove dead code.
(file_op_total_context_t): bps_count member is unused. Remove it.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
23ed903814 (file_op_context_t): rename members.
progress_count -> total_count
progress_bytes -> total_bytes
progress_totals_computed -> totals_computed

No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
31771bd332 Store start time of file transfer in the file operation context descriptor.
* (file_op_context_t): new member transfer_start.
  * (copy_file_file_display_progress): remove tv_transfer_start
    argument, use ctx->transfer_start instead.
  * (copy_file_file): sync with modified file_op_context_t and
    copy_file_file_display_progress().

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
f699e184ea (file_op_context_new): simplify.
Don't NULLify members. This is already done by call of g_new0().

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
a1b4eb0bfb Rename file_op_context_ui_t to file_progress_ui_t, reorder members.
No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
0a6604a626 Rename functions.
file_op_context_create_ui -> file_progress_ui_create
file_op_context_destroy_ui -> file_progress_ui_destroy
check_progress_buttons -> file_progress_check_buttons

No functional changes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
63db380705 (copy_file_file_display_progress): change arguments order.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
6d3c41082c (copy_file_file): fix the ETA calculation.
Pass only the size of the remaining part of file to
copy_file_file_display_progress().

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
bf9a279d1a (file_eta_prepare_for_show): join checks of eta_secs.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Andrew Borodin
f911cf30cb Ticket #3205: fix ETA calculation.
Check "verbose" before file_progress_show() call.

  * (file_progress_show): don't chech "verbose" here.
  * (move_file_file): call file_progress_show() if "verbose" is on.
  * (do_move_dir_dir): likewise.
  * (copy_file_file): likewise, join checks.
  * (panel_operate): likewise.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2024-11-05 18:19:28 +03:00
Yury V. Zaytsev
c5b8b69371 Merge branch '2452_handle_baudrate_error'
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-05 14:23:27 +01:00
Yury V. Zaytsev
8b8419023f Ticket #2452: handle -1 (baudrate error) by *not* disabling verbose mode implicitly
If we can't reliably identify slow terminal, we should not implicitly disable
verbose mode, instead let user disable it manually by starting with the slow
terminal switch.

Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 17:29:25 +01:00
Yury V. Zaytsev
ea8e239f00 Merge branch '4604_c99_automake_114'
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 17:23:58 +01:00
Yury V. Zaytsev
6ea7bd0196 buildsys: disable buggy or unhelpful warnings
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 17:23:22 +01:00
Yury V. Zaytsev
43e6c040de buildsys: add -Wall and -Wextra, remove duplicate flags, set standard to C99
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 17:23:22 +01:00
Yury V. Zaytsev
fdc445ea8d buildsys: fix enabling C standards for older autoconf broken in 1bc8abd7
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 10:45:05 +01:00
Yury V. Zaytsev
ec66b0be04 buildsys: fix quoting and comment in configure.ac
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 10:45:05 +01:00
Yury V. Zaytsev
b9c7884ea7 buildsys: set debugging level to -Og per gcc recommendations
> If you are not using some other optimization option, consider using -Og (see
> Options That Control Optimization) with -g. With no -O option at all, some
> compiler passes that collect information useful for debugging do not run at
> all, so that -Og may result in a better debugging experience.

Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 10:45:05 +01:00
Yury V. Zaytsev
03c6f61d54 Ticket #4604: remove obsolete AM_PROG_CC_C_O macro, part of AC_PROG_CC now
`AM_PROG_CC_C_O` is part of `AC_PROG_CC` since Automake 1.14, released in 2013
and we are almost in 2025 by now.

Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2024-11-04 10:45:05 +01:00