-2

I am trying to set the Preview app to not jump from page to page, but scroll between them and only show one column of pages, but I found that the relevant settings won't actually be stored, and will reset after a restart of the app or on the opening of the next file.

EDIT: although there is dedicated function for setting the default one or two page and scroll or non-scroll settings, however, for over 6 years, Preview is buggy, and won't be able to store it. After restarting the app, and opening a .pdf for the very first time it will still open it in 2-page, non-scroll setting.

To find the dedicated (non-operational) function:

Go to Preview > Preferences... > PDF > Opening for the first time: Show as > Continuous Scroll.

This is supposed to set the app to open with one-page continuous scroll even after the app is closed; however, it will NOT store this setting.

7
  • 1
    single page and continuous are mutually exclusive. Also see i.stack.imgur.com/undyO.png
    – anki
    May 16, 2021 at 15:07
  • anki — no they aren't; in fact, they are co-extensive. imgur.com/a/xxtZWVU imgur.com/a/uVNL8Ab May 16, 2021 at 16:43
  • Statements like "some amazing '90's product manager at Apple figured out that you have", "Apple is intentionally trying to deter this sort of unwelcome user behavior" or "In an attempt to mislead, Apple" distract from the actual questions and are not considered useful. Also please don't take comments from others asking for clarification as negative, we encourage comments to shape questions into a way which will get them answered.
    – nohillside
    May 16, 2021 at 18:40
  • Having said that: I just looked at your video at youtu.be/A_RGZ8BStJo and see a clear distinction between Single Page and Continuous (line by line) scrolling. The question might be easier to answer if you edit a description of what you expect to see in terms of scrolling when you combine page-by-page and line-by-line scrolling directly into the question, including embedded screenshots. Please also state the version of macOS you are using.
    – nohillside
    May 16, 2021 at 18:44
  • As said, please make this less about Apple and more about what you want to accomplish. Also, edit the details into the question, comments don't help a lot here.
    – nohillside
    May 16, 2021 at 18:48

2 Answers 2

1

From comments:

user3439894 — It seems like this would need scripting; I can't code much. Any chance you could share your method

Here are the two functions I use in my init.lua file for Hammerspoon to always set Continuous Scroll in Preview, especially in Full Screen view:

function applicationPreviewWatcher(appName, eventType, appObject)
    if (eventType == hs.application.watcher.activated) then
        if (appName == "Preview") then
            appObject:selectMenuItem({"View", "Continuous Scroll"})
        end
    end
end
appPreviewWatcher = hs.application.watcher.new(applicationPreviewWatcher)
appPreviewWatcher:start()
-- appPreviewWatcher:stop()

function spaceHasChangedForPreview()
    local asCommand = "tell application \"System Events\" to return name of process 1 whose frontmost is true"
    local ok, theFrontmostAppName = hs.osascript.applescript(asCommand)
    if ok then
        if (theFrontmostAppName == "Preview") then
            hs.eventtap.keyStroke({"cmd"}, "1")
        end
    end
end 
spaceWatcherForPreview = hs.spaces.watcher.new(spaceHasChangedForPreview)
spaceWatcherForPreview:start()
-- spaceWatcherForPreview:stop()

Notes:

The example Lua code and functions used with Hammerspoon along with the example AppleScript code, shown above, was tested under macOS Catalina with Language & Region settings in System Preferences set to English (US) — Primary and works for me without issue1.

  • 1 Assumes necessary and appropriate setting in System Preferences > Security & Privacy > Privacy have been set/addressed as needed.

The first function always clicks the Continuous Scroll menu item on the View menu whenever Preview is activated 2.

  • 2 The application has been given keyboard/mouse focus.

The second function always clicks the Continuous Scroll menu item on the View menu in Preview when the Desktop/Space changes, if Preview went into Full Screen view (or out of it) and Preview is the front most application.

In either case whether or not Continuous Scroll menu item on the View menu in Preview is already checked, this ensures it is.

The second function is necessary because if your screen is wide enough and Continuous Scroll is checked when the window is not in full screen view it automatically changes to Two Pages when going into full screen view. This keeps it set to Continuous Scroll.

13
  • @Almasy Sephirot, Let me know if you need any additional help with where to place the code shown in my answer. Also, after saving the init.lua file you need to click Reload Config from the Hammerspoon menu on the menu bar. May 17, 2021 at 14:37
  • @Almasy Sephirot, Have a look at my answer A: Disable the Dock in all but one Desktop/Space only as it has lots of good information on downloading, installing and configuring Hammerspoon. May 17, 2021 at 14:46
  • Thank you very much for the detailed walk-through, I will get to making this work right now! May 17, 2021 at 21:53
  • Omg, this is amazing! So elegant. I use similar macros (no scripting or coding though) on a jb iPhone, but that needs emulated touch events to be generated, it seems by my cursory review that it does the same, but you cannot see it. It just simply makes it go full screen. It's awesome! This should get a lot of upvote, sorry, that I screwed my profile and can't give one. :( May 24, 2021 at 21:21
  • Ooooh! Now I learned something here, I just did, this IS the answer for at least one half of the problem — and may not even be another half. May 24, 2021 at 21:29
1

Unfortunately you can't get exactly what you want.

The nearest way is to go to Preferences in Preview.app and on the PDF tab there is an entry for Opening for the first time. This should be set to Continuous scroll.

Preference Pane

For most cases you will get one page and you can scroll by lines etc.

The reason that is not exactly what you want is that if you make the Preview window full screen and it is wide enough to show two pages it will show two pages

7
  • RE: "The reason that is not exactly what you want is that if you make the Preview window full screen and it is wide enough to show two pages it will show two pages" -- If one has Hammerspoon, one can make any Preview window that goes into Full Screen view automatically set to Continuous Scroll. I do it on my system, as that is my preferred viewing method when in full screen view in Preview. May 17, 2021 at 1:19
  • mmmmmm — unfortunately, that setting is not stored after closing the app. Preview can store your preference for a certain file, and it typically restores the setting you had before, but other files will open in two page non-scroll, showing only the first page (in this case, if you turn to the second page, and there is sufficient width, it will actually show two pages, too!) May 17, 2021 at 4:46
  • user3439894 — thank you SO MUCH! I am jumping to set this up. If this doesn't provide an over-all solution, and would only patch certain use cases, I'll be glad to share how I'm making it easier to jump in this view a little quicker and more efficiently. May 17, 2021 at 4:47
  • user3439894 — It seems like this would need scripting; I can't code much. Any chance you could share your method or a step-by-step guide to replicate it? Thank you! May 17, 2021 at 4:49
  • @AlmasySephirot It is saved - well at least on all the versions of OSX I have used - on Big Sur now
    – mmmmmm
    May 17, 2021 at 9:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .