aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorPhil Sainty2018-11-02 14:51:21 +1300
committerPhil Sainty2019-07-13 18:51:55 +1200
commit4ac905f88f10439ca0795b217a046e3a62895fc4 (patch)
treec89c4f7382342f9109794c842aa96bf7f03ba908 /doc
parent04cbdde94d256d9b3fbfcc67981374a55d339fcd (diff)
downloademacs-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.texi1
-rw-r--r--doc/emacs/trouble.texi25
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
1180Reporting Bugs 1181Reporting 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.
457emergency escape---but there are cases where it won't work, when a 458emergency escape---but there are cases where it won't work, when a
458system call hangs or when Emacs is stuck in a tight loop in C code. 459system 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
466redisplay code and the complex range of possibilities it handles;
467others of which are due to modes and features which do not scale well
468in unusual circumstances), Emacs can perform poorly when extremely
469long lines are present (where ``extremely long'' usually means at
470least many thousands of characters).
471
472 A particular problem is that Emacs may ``hang'' for a long time at
473the point of visiting a file with extremely long lines, and this case
474can be mitigated by enabling the @file{so-long} library, which detects
475when a visited file contains abnormally long lines, and takes steps to
476disable features which are liable to cause slowness in that situation.
477
478 This library can also significantly improve performance when moving
479and editing in such a buffer -- performance is still likely to degrade
480as you get deeper into the long lines, but the improvements can
481nevertheless be substantial.
482
483 Use @kbd{M-x so-long-commentary} to view the documentation for this
484library and learn how to enable and configure it.
460@node Bugs 485@node Bugs
461@section Reporting Bugs 486@section Reporting Bugs
462 487