From 430088c9ccec5fe9be57d267f45acdc87aa3b28e Mon Sep 17 00:00:00 2001 From: Po Lu Date: Sun, 21 Apr 2024 21:51:09 +0800 Subject: Take fields into account during text conversion * lisp/cus-edit.el (Custom-mode): Enable text conversion, now that fields are correctly treated. * src/alloc.c (mark_frame): Mark f->conversion.field. * src/androidterm.c (android_update_selection): Adjust conversion region and selection position by the field start and end. * src/editfns.c (find_field): Export function. * src/frame.c (make_frame): Clear f->conversion.field. * src/frame.h (struct text_conversion_state) : New field. * src/lisp.h (find_fields, reset_frame_conversion): Export functions. * src/minibuf.c (Fread_from_minibuffer): Reset frame conversion if Voverriding_text_conversion_style is set. * src/textconv.c (textconv_query): Narrow to field. (reset_frame_conversion): New function. (reset_frame_state): Clear conversion field. (really_delete_surrounding_text): Narrow to field. (locate_and_save_position_in_field): New function. (really_request_point_update, really_set_point_and_mark) (complete_edit_check, handle_pending_conversion_events_1) (handle_pending_conversion_events, get_conversion_field) (set_composing_region, textconv_set_point_and_mark, replace_text) (get_extracted_text, get_surrounding_text, report_point_change): Compute, narrow to and offset by the currently active field whenever point is updated or a command is received. (syms_of_textconv): Revise doc strings. * src/textconv.h (get_conversion_field): Export function. --- lisp/cus-edit.el | 1 + 1 file changed, 1 insertion(+) (limited to 'lisp/cus-edit.el') diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 8915500a501..1659c285d84 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -5400,6 +5400,7 @@ if that value is non-nil." (setq-local custom--invocation-options nil custom--hidden-state 'hidden) (setq-local revert-buffer-function #'custom--revert-buffer) + (setq-local text-conversion-style 'action) (make-local-variable 'custom-options) (make-local-variable 'custom-local-buffer) (custom--initialize-widget-variables) -- cgit v1.2.3