diff options
Diffstat (limited to 'src/editfns.c')
| -rw-r--r-- | src/editfns.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/editfns.c b/src/editfns.c index 2ac0537eddb..e5ab637aba1 100644 --- a/src/editfns.c +++ b/src/editfns.c | |||
| @@ -3480,12 +3480,25 @@ DEFUN ("delete-and-extract-region", Fdelete_and_extract_region, | |||
| 3480 | return empty_unibyte_string; | 3480 | return empty_unibyte_string; |
| 3481 | return del_range_1 (XINT (start), XINT (end), 1, 1); | 3481 | return del_range_1 (XINT (start), XINT (end), 1, 1); |
| 3482 | } | 3482 | } |
| 3483 | |||
| 3483 | 3484 | ||
| 3484 | DEFUN ("widen", Fwiden, Swiden, 0, 0, "", | 3485 | DEFUN ("widen", Fwiden, Swiden, 0, 0, "", |
| 3485 | doc: /* Remove restrictions (narrowing) from current buffer. | 3486 | doc: /* Remove restrictions (narrowing) from current buffer. |
| 3486 | This allows the buffer's full text to be seen and edited. */) | 3487 | This allows the buffer's full text to be seen and edited. |
| 3488 | If `buffer-widen-limits` is non-nil, widen only to those limits. */) | ||
| 3487 | (void) | 3489 | (void) |
| 3488 | { | 3490 | { |
| 3491 | |||
| 3492 | if (!NILP (BVAR(current_buffer, widen_limits))) | ||
| 3493 | { | ||
| 3494 | Lisp_Object hl = BVAR(current_buffer, widen_limits); | ||
| 3495 | CHECK_CONS(hl); | ||
| 3496 | CHECK_NUMBER(XCAR(hl)); | ||
| 3497 | CHECK_NUMBER(XCDR(hl)); | ||
| 3498 | Fnarrow_to_region(XCAR(hl), XCDR(hl)); | ||
| 3499 | return Qnil; | ||
| 3500 | } | ||
| 3501 | |||
| 3489 | if (BEG != BEGV || Z != ZV) | 3502 | if (BEG != BEGV || Z != ZV) |
| 3490 | current_buffer->clip_changed = 1; | 3503 | current_buffer->clip_changed = 1; |
| 3491 | BEGV = BEG; | 3504 | BEGV = BEG; |