{"id":12874,"date":"2025-03-27T10:33:05","date_gmt":"2025-03-27T14:33:05","guid":{"rendered":"https:\/\/irreal.org\/blog\/?p=12874"},"modified":"2025-03-27T10:33:05","modified_gmt":"2025-03-27T14:33:05","slug":"smoother-scrolling","status":"publish","type":"post","link":"https:\/\/irreal.org\/blog\/?p=12874","title":{"rendered":"Smoother Scrolling"},"content":{"rendered":"<p>\nOver at <a href=\"https:\/\/themkat.net\">The MKat<\/a>, Marie K. Ekeberg has a post that brings me back to my earliest days of using Emacs. Before I was assimilated, I tried several times to warm up to Emacs but it wouldn&rsquo;t take. Ekeberg&rsquo;s post reminds me why. It was what I considered the schizophrenic default scrolling. You would move the cursor down the screen and suddenly, about three quarters of the way down, the screen would jump several lines. Every time  I saw that, I would abandon my attempt to embrace Emacs and run screaming back to Vim.\n<\/p>\n<p>\nIn her post on <a href=\"https:\/\/themkat.net\/2025\/03\/25\/simple_smoother_emacs_scrolling.html\">smoother scrolling<\/a>, Ekeberg offers an explanation for this bizarre behavior that I&rsquo;m pretty sure is correct. The TL;DR is that in the old days, when Emacs was developed, scrolling was an expensive operation so rather than scroll by line, Emacs would scroll by (essentially) half pages.\n<\/p>\n<p>\nI have no idea why the default hasn&rsquo;t long since been changed but as far as I know, it hasn&rsquo;t. I say, &ldquo;as far as I know&rdquo; because years and years ago I did what Ekeberg suggests and implemented smooth scrolling. I haven&rsquo;t looked back.\n<\/p>\n<p>\nIt turns out that fixing this is far from trivial. I have no memory of how I figured it out but I do know that it involved pleading with the Internet for an answer. Take a look at Ekeberg&rsquo;s post to see the answer. What she suggests is essentially what I did. As I said, not at all obvious.\n<\/p>\n<p>\nIt&rsquo;s odd how a simple thing like scrolling can ruin your appreciation of Emacs but it sure did affect mine. Don&rsquo;t let that happen to you. Take a look at Ekeberg&rsquo;s post and find peace of mind.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Over at The MKat, Marie K. Ekeberg has a post that brings me back to my earliest days of using Emacs. Before I was assimilated, I tried several times to warm up to Emacs but it wouldn&rsquo;t take. Ekeberg&rsquo;s post &hellip; <a href=\"https:\/\/irreal.org\/blog\/?p=12874\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[18],"class_list":["post-12874","post","type-post","status-publish","format-standard","hentry","category-general","tag-emacs"],"_links":{"self":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/12874","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12874"}],"version-history":[{"count":1,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/12874\/revisions"}],"predecessor-version":[{"id":12875,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/12874\/revisions\/12875"}],"wp:attachment":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12874"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12874"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12874"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}