Files
emacs/lib
Philipp Stephani d682f0daa3 Add command to replace buffer contents
Add a new command 'replace-buffer-contents' that uses the Myers diff
algorithm to non-destructively replace the accessible portion of the
current buffer.  The Myers algorithm is implemented in Gnulib.

* src/editfns.c (Freplace_buffer_contents): New command.
(set_bit, bit_is_set, buffer_chars_equal): New helper functions.
(syms_of_editfns): Define new command.

* test/src/editfns-tests.el (replace-buffer-contents-1)
(replace-buffer-contents-2): New unit tests.

* src/buffer.h (BUF_FETCH_CHAR_AS_MULTIBYTE): New helper macro.

* admin/merge-gnulib (GNULIB_MODULES): Add diffseq.h and minmax.h.
2017-06-17 15:40:58 +02:00
..
2017-03-14 14:50:02 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-03-14 14:50:02 -07:00
2016-12-31 19:42:26 -08:00
2017-02-23 09:15:06 -08:00
2017-02-23 09:15:06 -08:00
2016-12-31 19:42:26 -08:00
2015-09-25 00:23:18 -07:00
2017-02-02 07:50:22 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-03-14 14:50:02 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-03-05 13:31:33 -08:00
2017-05-14 01:29:29 -07:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:10:47 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 01:29:29 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-10 07:49:55 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 01:29:29 -07:00
2017-04-27 15:24:07 -07:00
2017-01-01 01:10:47 -08:00
2017-05-14 01:29:29 -07:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-04-06 16:30:09 -07:00
2017-01-01 04:01:41 +00:00
2017-04-06 16:30:09 -07:00
2017-04-09 00:55:23 -07:00
2017-04-09 00:55:23 -07:00
2017-06-11 17:30:06 -07:00
2017-06-11 17:30:06 -07:00
2017-05-14 01:29:29 -07:00
2017-04-09 00:55:23 -07:00
2017-04-27 15:24:07 -07:00
2017-01-01 01:32:56 -08:00
2017-05-14 01:29:29 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-05-25 00:13:33 -07:00
2016-12-31 19:42:26 -08:00
2017-03-19 13:09:31 -07:00
2017-05-01 15:33:26 -07:00
2017-05-01 15:33:26 -07:00
2016-12-31 19:42:26 -08:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-05-14 01:29:29 -07:00
2016-09-30 12:38:52 -07:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:10:47 -08:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-04-06 16:30:09 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 12:40:03 -07:00
2017-03-19 13:09:31 -07:00
2016-12-31 19:42:26 -08:00
2017-03-19 13:09:31 -07:00
2017-01-10 07:49:55 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:10:47 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-05-14 01:29:29 -07:00
2017-01-01 01:10:47 -08:00
2017-05-14 12:40:03 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2017-01-01 01:32:56 -08:00
2017-05-01 15:33:26 -07:00
2017-02-02 07:50:22 -08:00
2017-05-01 15:33:26 -07:00
2017-01-01 01:32:56 -08:00
2016-12-31 19:42:26 -08:00
2016-12-31 19:42:26 -08:00
2017-03-19 13:09:31 -07:00
2015-10-13 23:34:47 -07:00
2016-12-31 19:42:26 -08:00
2015-10-13 23:34:47 -07:00
2017-05-14 01:29:29 -07:00
2017-05-14 01:29:29 -07:00
2016-12-31 19:42:26 -08:00
2017-02-02 07:50:22 -08:00
2016-12-31 19:42:26 -08:00
2017-03-14 14:50:02 -07:00
2017-01-10 07:49:55 -08:00