diff options
| author | Karl Heuer | 1999-08-14 03:13:35 +0000 |
|---|---|---|
| committer | Karl Heuer | 1999-08-14 03:13:35 +0000 |
| commit | 5d121aec6da5cf9bc47e98bcc890b72fef7536bd (patch) | |
| tree | ca47de8206c9e902a5c3d77ad987d4cf22bc492f | |
| parent | fada05d6d14fdf4de2d6cc1479aa8584baf225cd (diff) | |
| download | emacs-5d121aec6da5cf9bc47e98bcc890b72fef7536bd.tar.gz emacs-5d121aec6da5cf9bc47e98bcc890b72fef7536bd.zip | |
(line_number_display_limit_width): New var.
(decode_mode_spec): Use it instead of hardcoded value.
(syms_of_xdisp): Defvar it.
| -rw-r--r-- | src/xdisp.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index 9fcead69e7e..f418bd2321c 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -488,6 +488,10 @@ int line_number_displayed; | |||
| 488 | 488 | ||
| 489 | static int line_number_display_limit; | 489 | static int line_number_display_limit; |
| 490 | 490 | ||
| 491 | /* line width to consider when repostioning for line number display */ | ||
| 492 | |||
| 493 | static int line_number_display_limit_width; | ||
| 494 | |||
| 491 | /* Number of lines to keep in the message log buffer. t means | 495 | /* Number of lines to keep in the message log buffer. t means |
| 492 | infinite. nil means don't log at all. */ | 496 | infinite. nil means don't log at all. */ |
| 493 | 497 | ||
| @@ -11346,7 +11350,7 @@ decode_mode_spec (w, c, field_width, precision) | |||
| 11346 | int limit = BUF_BEGV (b); | 11350 | int limit = BUF_BEGV (b); |
| 11347 | int limit_byte = BUF_BEGV_BYTE (b); | 11351 | int limit_byte = BUF_BEGV_BYTE (b); |
| 11348 | int position; | 11352 | int position; |
| 11349 | int distance = (height * 2 + 30) * 200; | 11353 | int distance = (height * 2 + 30) * line_number_display_limit_width; |
| 11350 | 11354 | ||
| 11351 | if (startpos - distance > limit) | 11355 | if (startpos - distance > limit) |
| 11352 | { | 11356 | { |
| @@ -11359,7 +11363,7 @@ decode_mode_spec (w, c, field_width, precision) | |||
| 11359 | - (height * 2 + 30), | 11363 | - (height * 2 + 30), |
| 11360 | &position); | 11364 | &position); |
| 11361 | /* If we couldn't find the lines we wanted within | 11365 | /* If we couldn't find the lines we wanted within |
| 11362 | 200 chars per line, | 11366 | line_number_display_limit_width chars per line, |
| 11363 | give up on line numbers for this window. */ | 11367 | give up on line numbers for this window. */ |
| 11364 | if (position == limit_byte && limit == startpos - distance) | 11368 | if (position == limit_byte && limit == startpos - distance) |
| 11365 | { | 11369 | { |
| @@ -12042,6 +12046,12 @@ If the buffer is bigger than this, the line number does not appear\n\ | |||
| 12042 | in the mode line."); | 12046 | in the mode line."); |
| 12043 | line_number_display_limit = 1000000; | 12047 | line_number_display_limit = 1000000; |
| 12044 | 12048 | ||
| 12049 | DEFVAR_INT ("line-number-display-limit-width", &line_number_display_limit_width, | ||
| 12050 | "*Maximum line width (in characters) for line number display.\n\ | ||
| 12051 | If the average length of the lines near point is bigger than this, then the\n\ | ||
| 12052 | line number may be omitted from the mode line."); | ||
| 12053 | line_number_display_limit_width = 200; | ||
| 12054 | |||
| 12045 | DEFVAR_BOOL ("highlight-nonselected-windows", &highlight_nonselected_windows, | 12055 | DEFVAR_BOOL ("highlight-nonselected-windows", &highlight_nonselected_windows, |
| 12046 | "*Non-nil means highlight region even in nonselected windows."); | 12056 | "*Non-nil means highlight region even in nonselected windows."); |
| 12047 | highlight_nonselected_windows = 0; | 12057 | highlight_nonselected_windows = 0; |