diff options
| author | Phil Sainty | 2018-11-02 14:51:21 +1300 |
|---|---|---|
| committer | Phil Sainty | 2019-07-13 18:51:55 +1200 |
| commit | 4ac905f88f10439ca0795b217a046e3a62895fc4 (patch) | |
| tree | c89c4f7382342f9109794c842aa96bf7f03ba908 /doc | |
| parent | 04cbdde94d256d9b3fbfcc67981374a55d339fcd (diff) | |
| download | emacs-4ac905f88f10439ca0795b217a046e3a62895fc4.tar.gz emacs-4ac905f88f10439ca0795b217a046e3a62895fc4.zip | |
Add so-long library
* lisp/so-long.el: New library.
* doc/emacs/trouble.texi (Long Lines): New node covering so-long.el.
* doc/emacs/emacs.texi (Top): Add menu entry for the Long Lines node.
* etc/NEWS: Include under "New Modes and Packages in Emacs 27.1"
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/emacs/emacs.texi | 1 | ||||
| -rw-r--r-- | doc/emacs/trouble.texi | 25 |
2 files changed, 26 insertions, 0 deletions
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi index a34cef221e1..ad4be90aaf3 100644 --- a/doc/emacs/emacs.texi +++ b/doc/emacs/emacs.texi | |||
| @@ -1176,6 +1176,7 @@ Dealing with Emacs Trouble | |||
| 1176 | * Crashing:: What Emacs does when it crashes. | 1176 | * Crashing:: What Emacs does when it crashes. |
| 1177 | * After a Crash:: Recovering editing in an Emacs session that crashed. | 1177 | * After a Crash:: Recovering editing in an Emacs session that crashed. |
| 1178 | * Emergency Escape:: What to do if Emacs stops responding. | 1178 | * Emergency Escape:: What to do if Emacs stops responding. |
| 1179 | * Long Lines:: Mitigating slowness due to extremely long lines. | ||
| 1179 | 1180 | ||
| 1180 | Reporting Bugs | 1181 | Reporting Bugs |
| 1181 | 1182 | ||
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi index 2fe54878058..aa940208214 100644 --- a/doc/emacs/trouble.texi +++ b/doc/emacs/trouble.texi | |||
| @@ -152,6 +152,7 @@ Emacs. | |||
| 152 | * Crashing:: What Emacs does when it crashes. | 152 | * Crashing:: What Emacs does when it crashes. |
| 153 | * After a Crash:: Recovering editing in an Emacs session that crashed. | 153 | * After a Crash:: Recovering editing in an Emacs session that crashed. |
| 154 | * Emergency Escape:: What to do if Emacs stops responding. | 154 | * Emergency Escape:: What to do if Emacs stops responding. |
| 155 | * Long Lines:: Mitigating slowness due to extremely long lines. | ||
| 155 | @end menu | 156 | @end menu |
| 156 | 157 | ||
| 157 | @node DEL Does Not Delete | 158 | @node DEL Does Not Delete |
| @@ -457,6 +458,30 @@ program. | |||
| 457 | emergency escape---but there are cases where it won't work, when a | 458 | emergency escape---but there are cases where it won't work, when a |
| 458 | system call hangs or when Emacs is stuck in a tight loop in C code. | 459 | system call hangs or when Emacs is stuck in a tight loop in C code. |
| 459 | 460 | ||
| 461 | @node Long Lines | ||
| 462 | @subsection Long Lines | ||
| 463 | @cindex long lines | ||
| 464 | |||
| 465 | For a variety of reasons (some of which are fundamental to the Emacs | ||
| 466 | redisplay code and the complex range of possibilities it handles; | ||
| 467 | others of which are due to modes and features which do not scale well | ||
| 468 | in unusual circumstances), Emacs can perform poorly when extremely | ||
| 469 | long lines are present (where ``extremely long'' usually means at | ||
| 470 | least many thousands of characters). | ||
| 471 | |||
| 472 | A particular problem is that Emacs may ``hang'' for a long time at | ||
| 473 | the point of visiting a file with extremely long lines, and this case | ||
| 474 | can be mitigated by enabling the @file{so-long} library, which detects | ||
| 475 | when a visited file contains abnormally long lines, and takes steps to | ||
| 476 | disable features which are liable to cause slowness in that situation. | ||
| 477 | |||
| 478 | This library can also significantly improve performance when moving | ||
| 479 | and editing in such a buffer -- performance is still likely to degrade | ||
| 480 | as you get deeper into the long lines, but the improvements can | ||
| 481 | nevertheless be substantial. | ||
| 482 | |||
| 483 | Use @kbd{M-x so-long-commentary} to view the documentation for this | ||
| 484 | library and learn how to enable and configure it. | ||
| 460 | @node Bugs | 485 | @node Bugs |
| 461 | @section Reporting Bugs | 486 | @section Reporting Bugs |
| 462 | 487 | ||