`automatic-hscrolling' is set (the default). This setting can be
customized.
+If a window is scrolled horizontally with set-window-hscroll, or
+scroll-left/scroll-right (C-x <, C-x >), this serves as a lower bound
+for automatic horizontal scrolling. Automatic scrolling will scroll
+the text more to the left if necessary, but won't scroll the text more
+to the right than the column set with set-window-hscroll etc.
+
+++
** Tool bar support.
* Remove the limitation that window and frame widths and heights can
be only full columns/lines.
+
+* Add horizontal scroll bars.
left edge.
In Emacs 21, redisplay automatically alters the horizontal scrolling
-of a window as necessary to ensure that point is always visible.
-However, you can still set the horizontal scrolling value explicitly.
-The value you specify will be used, provided it leaves point visible.
+of a window as necessary to ensure that point is always visible, if
+@code{automatic-hscrolling} is set. However, you can still set the
+horizontal scrolling value explicitly. The value you specify serves as
+a lower bound for automatic scrolling, i.e. automatic scrolling
+will not scroll a window to a column less than the specified one.
@deffn Command scroll-left &optional count
This function scrolls the selected window @var{count} columns to the
edge. If you don't want this, customize the variable
@code{automatic-hscrolling} and set it to nil.
+If a window is scrolled horizontally by means of @code{scroll-left}, the
+chosen column serves as a lower bound for automatic horizontal
+scrolling. Automatic scrolling will continue to scroll the window to
+the left, if necessary, but won't scroll it more to the right than the
+column set by @code{scroll-left}.
+
@node Follow Mode
@section Follow Mode
@cindex Follow mode
2000-12-20 Gerd Moellmann <gerd@gnu.org>
+ * xdisp.c (hscroll_window_tree): Take window's min_hscroll
+ into account.
+
+ * window.c (make_window): Initialize window's min_hscroll.
+ (Fset_window_hscroll): Set window's hscroll and min_hscroll.
+ (set_window_buffer, temp_output_buffer_show): Set min_hscroll
+ to zero.
+ (struct saved_window): New member min_hscroll.
+ (SAVED_WINDOW_VECTOR_SIZE): Set to 17.
+ (Fset_window_configuration): Set window's min_hscroll.
+ (save_window_save): Save window's min_hscroll.
+ (compare_window_configurations): Compare min_hscroll values.
+
+ * window.h (struct window): New member min_hscroll.
+
+ * keyboard.c (echo_prompt): Prevent a compiler warning.
+
* xdisp.c (try_cursor_movement): Fix last change. The real
condition is that PT is at the end of the row, and should
be displayed at the start of the next row.