From bbbe4cdbc9ba9d43582c9420303d2aab977673a4 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Sun, 26 Jul 2026 14:23:21 +0200 Subject: hide #recovery# files from auto-completions, unless you already typed '#' * These files are created regularily and shouldn't be mangled with unless you're recovering from a crash. So it makes sense to hide them by default, just like the hidden .teco-* savepoint files. * Recovery file name creation and checks are now centralized in file-utils.h. --- src/ring.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'src/ring.c') diff --git a/src/ring.c b/src/ring.c index ceeb730..cda15c4 100644 --- a/src/ring.c +++ b/src/ring.c @@ -75,15 +75,6 @@ teco_buffer_undo_edit(teco_buffer_t *ctx) undo__teco_interface_show_view(ctx->view); } -/** @private @memberof teco_buffer_t */ -static inline gchar * -teco_buffer_get_recovery(teco_buffer_t *ctx) -{ - g_autofree gchar *dirname = g_path_get_dirname(ctx->filename); - g_autofree gchar *basename = g_path_get_basename(ctx->filename); - return g_strconcat(dirname, G_DIR_SEPARATOR_S, "#", basename, "#", NULL); -} - /** @private @memberof teco_buffer_t */ static gboolean teco_buffer_load(teco_buffer_t *ctx, const gchar *filename, GError **error) @@ -119,7 +110,7 @@ teco_buffer_save(teco_buffer_t *ctx, const gchar *filename, GError **error) if (ctx == teco_ring_current && !teco_qreg_current) undo__teco_interface_info_update_buffer(ctx); if (ctx->state > TECO_BUFFER_DIRTY_NO_DUMP) { - g_autofree gchar *filename_recovery = teco_buffer_get_recovery(ctx); + g_autofree gchar *filename_recovery = teco_file_get_recovery(ctx->filename); g_unlink(filename_recovery); /* on rubout, we do not restore the recovery file */ ctx->state = TECO_BUFFER_DIRTY_NO_DUMP; @@ -149,7 +140,7 @@ teco_buffer_free(teco_buffer_t *ctx) */ if (ctx->state > TECO_BUFFER_DIRTY_NO_DUMP && teco_interrupted != TECO_TERMINATED) { - g_autofree gchar *filename_recovery = teco_buffer_get_recovery(ctx); + g_autofree gchar *filename_recovery = teco_file_get_recovery(ctx->filename); g_unlink(filename_recovery); } @@ -250,7 +241,7 @@ static void teco_ring_undirtify(void) { if (teco_ring_current->state > TECO_BUFFER_DIRTY_NO_DUMP) { - g_autofree gchar *filename_recovery = teco_buffer_get_recovery(teco_ring_current); + g_autofree gchar *filename_recovery = teco_file_get_recovery(teco_ring_current->filename); g_unlink(filename_recovery); } @@ -346,7 +337,7 @@ teco_ring_dump_recovery(void) if (!buffer->filename) continue; - g_autofree gchar *filename_recovery = teco_buffer_get_recovery(buffer); + g_autofree gchar *filename_recovery = teco_file_get_recovery(buffer->filename); g_autoptr(GIOChannel) channel = g_io_channel_new_file(filename_recovery, "w", NULL); if (!channel) -- cgit v1.2.3