Emacs: line-move-visual
When you use Keyboard Macro, you might want the arrow up/down keys move the cursor by a logical line, as opposed to visual line. (Emacs 23's default is visual line.)
To set to logical line, Alt + x set-variable
, then give line-move-visual, with value nil. (t for true; nil for false).
When you play back macro, be sure the line-move-visual is the same as when you recorded it.
One thing you can do is to set line-move-visual
at the beginning of your keyboard macro, and set it back at the end.
Here's a command to toggle it.
(defun toggle-line-move-visual () "Toggle behavior of up/down arrow key, by visual line vs logical line." (interactive) (if line-move-visual (setq line-move-visual nil) (setq line-move-visual t)))