Editing side still bouncing

Vince's Avatar


25 Aug, 2017 04:33 PM

B21 on OSX 10.12.6.

Beta 21 is still moving the text when I start editing. I put the line I'm going to start typing on in the middle of the screen, type a letter, and MMD moves the line down thirteen lines (in this instance) on the screen.

It's not doing it everywhere in the file, but where it does it is seemingly random. For example, I positioned somewhere near the middle of the file, and I typed in multiple places at various places up and down the screen, and nothing happened. But then I typed on a line close to the top, and it moved the line all the way to the bottom.

I would tell you more, but I can't — I've managed to get MMD in an unusable state. I opened a file I have that just has 123456789 repeated to 140 characters by 100 lines; I use it to see how many lines and characters a window is. Since MMD wrapped it on the editor side, I moved the splitter way over to the right. That didn't help since MMD didn't display any more text so now I had huge margins (why?). When I went to move the splitter back, I can't get the t cursor that lets it be moved. It goes from arrow cursor on the preview side, changes to a bar when I cross the splitter, and never goest to the T. It doesn't matter how slowly I go or how many times I do it (a couple of dozen) or where I am on the screen. (And believe me, I know how touchy this can be even normally.) I tried quitting and opening a different file, no good. I tried re-downloading and re-installing the beta, no go.

As I was typing this, it occurred to me I could use AppCleaner to get rid of the app and all of it's plists and preferences, etc. That worked. But I made it happen again, a couple of times. It acts like it's a ratio thing — once the splitter gets too far over to the right in proportion to the overall window width, it won't appear. This time, I widened the overall window, and the cursor showed back up. But if I moved the splitter farther to the right, I couldn't get the cursor to appear again.

  1. Support Staff 1 Posted by Fletcher on 25 Aug, 2017 05:09 PM

    Fletcher's Avatar

    1) Can you send a video showing what you mean (the jumping part)? I've learned over the years of doing this that most people leave out the important clues to determining what's going on because they don't know what the important clues are. (Not their fault, I just have a little bit more experience at this than anyone else, since I wrote it. ;) I have not been able to get b21 (well, actually i'm using what will become b22) to jump -- it's been very stable for me. So tips on how to break it would be wonderful.

    (Wait a minute -- just thought of one slight tweak I made after b21 that may have fixed what you're seeing. Hold off on the video until you try the next beta in case that is the problem you're seeing.)

    2) When you type "close" to the top, do you mean "kind of near the top", or "at the top"? If you type near enough to the top that even one pixel of the line is off screen, it will scroll down. When it scrolls down, it centers the cursor as a starting point. (Normal macOS behavior). Depending on your line height, that cutoff may actually look below the edge, since everything below the preceding line counts as the current line. If you can see the text (even 1 pixel) of the line above at the top (or the line below at the bottom), you should be safe.

    3) Did you set the maximum line length preference? That limits the maximum line length (hence the name), so even with large right sided margin, it would not unwrap lines (though the margins should be equal left/right). Set to 0 to turn that off, or set to large number to effectively turn it off (i.e. your screen is probably not 1000 characters wide)

    4) I'd love to know how you're "losing" the preview. I maxed out the window, turned off sidebars and moved the preview slider as far to the right as possible (For reasons like this, the slider is capped at 5%/95% of the available space). I then shrunk the window, turned sidebars back on. This limited the editor/preview to something like 30 pixels total width. At first I could only grab the sidebars divider, but as soon as I made the whole thing a few pixels wider, I could grab the preview divider. (See the image -- I could still grab the divider in that window.) You can resize to make the absolute values change, but the divider is written so that it can't get closer than 5% towards either side. Make the window bigger and it should be easy to grab if you get yourself into a weird state. And if you manage to "break" the 5% boundary, I'd love to know how so I can fix that because it's pretty well hard-coded into the view behavior.

    5) Deleting the app is usually not very helpful (only if the binary is corrupted), but cleaning prefs can be (though there is very little in Composer's prefs that should break things). Ther Terminal command defaults delete com.multimarkdown.composer4.mac (while the app is not running) should do it. (WARNING -- of course you should be very careful typing that command in the terminal so you don't erase the prefs of another app)

  2. 2 Posted by Vince Rice on 25 Aug, 2017 06:46 PM

    Vince Rice's Avatar

    1. OK, I'll wait for B22. But I mean that when I start typing, MMD moves the line I'm typing on down X lines. It behaves almost exactly like typewriter mode, except that 1) Typewriter mode is off, and 2) typewriter height is set to .5, which means it would center the line if it was that, and it's not centering it. And, typewriter mode is off.
    2. I mean a line or two below the top. And as I said, jumping down means jumping down to the bottom of the screen, just part of a line. So in that case it jumped 50+ lines down. In the other case, it jumped 12-13 lines. It's not a little, it's a lot. I would send you the file, but it's proprietary to work, and I don't have time right now to try to make it happen with a test file. I might get time this weekend.
    3. I didn't set it, I didn't even know it was a setting. Let me see what it is… It's set to zero, and maximum full screen width pixels is 5000. (I'm not using it full-screen, just reporting options.)
    4. Sorry, I'm not "losing" the preview (but I didn't say I was). I just got it really narrow, like a couple of words wide. And, trust me, there was no divider cursor appearing. Just so I could be more exact, I just did it again — the left-hand side was 170 characters wide (Anonymous Pro fixed width, 14 pt), the preview side was 20 characters wide (basic.css). The splitter bar is present and visible, but no split cursor appears when hovering over it. I'll see if I take a video of me passing over and over and over and over and over and over and over the splitter bar with no split cursor appearing. But, again, probably this weekend.
    5. Thanks for the delete statement. I could have searched around library for the preferences, but I've found AppCleaner will find them a lot faster than I will. :)

  3. Support Staff 3 Posted by Fletcher on 25 Aug, 2017 07:10 PM

    Fletcher's Avatar

    1. In case I wasn't clear, if you type at the top, it doesn't move down
    a line or two, it moves to the middle. But it shouldn't move further
    than that, and it shouldn't happen if you're more than 1 line from the
    top. But B22 is out, so try it.

    2. Even if you can't see the cursor change, can you still drag the divider?

  4. 4 Posted by Vince Rice on 25 Aug, 2017 07:21 PM

    Vince Rice's Avatar

    1. I don't know if you were or you weren't, but that's not what I understood. :) Either way, it's moot — that's not where I was typing.
    2. Uh, no. That's what this whole conversation's been about. :) I didn't delete the preferences to try to get a cursor, I deleted the preferences to get the splitter back to it's default position.

  5. Support Staff 5 Posted by Fletcher on 25 Aug, 2017 07:26 PM

    Fletcher's Avatar

    I know it was about splitter -- but couldn't tell if you didn't see the
    cursor change, so didn't try to grab? Or cursor didn't change and also
    it wouldn't respond to grabs. Two different things, but you wouldn't
    believe what people neglect to tell me.

    (Or if you've done any sort of customer support, maybe you would.... ;)

  6. 6 Posted by Vince Rice on 25 Aug, 2017 07:52 PM

    Vince Rice's Avatar

    BTW, the beta download link on this <http://support.multimarkdown.com/kb/composer-v4/multimarkdown-composer-version-4-beta> page still hasn't updated. I've refreshed Safari several times, and when it didn't work, to eliminate possible caching problems on my side, I opened Firefox and Chrome, neither of which I've had open for weeks, and they both still show 21 as well. I eventually just copied the direct 21 link and changed the 21 to 22, and that worked.

  7. 7 Posted by Vince Rice on 25 Aug, 2017 08:03 PM

    Vince Rice's Avatar

    OK, I haven't been able to get B22 to jump when editing in a couple of minutes of trying (it was pretty easy to get B21 to do so, so this is a good sign).
    And the splitter has decided to be better behaved. (I know, you didn't do anything. Welcome to computers.)

    But there's another problem. I'll start a new thread.

    > On Aug 25, 2017, at 2:52 PM, Vince Rice <[email blocked]> wrote:
    > BTW, the beta download link on this <http://support.multimarkdown.com/kb/composer-v4/multimarkdown-composer-version-4-beta> page still hasn't updated. I've refreshed Safari several times, and when it didn't work, to eliminate possible caching problems on my side, I opened Firefox and Chrome, neither of which I've had open for weeks, and they both still show 21 as well. I eventually just copied the direct 21 link and changed the 21 to 22, and that worked.
    >> On Aug 25, 2017, at 2:26 PM, Fletcher <[email blocked] <mailto:[email blocked]>> wrote:

  8. 8 Posted by Vince on 25 Aug, 2017 09:45 PM

    Vince's Avatar

    It just did it. I'm on line 487 of 503 line document. Line 503 is on-screen towards the bottom, with five lines of white space below it (I assume the white space is due to the Preview being off-screen to the bottom, but I'll point out again that scrolling should stop at the border). I figured out it was five lines due to a spec of dust on the screen I used for bearings. :)

    When I typed a character on line 487, it moved the document such that line 490 was the last line completely visible on screen at the bottom, with half of line 491 visible. In other words, it shifted everything down (503-490.5+5) lines.

    It does the same thing even if I eliminate the white space (I thought that might be the problem) and put line 503 at the very bottom of the screen. Typing a character on line 487 does the exact same thing, it just doesn't have as far to move to get there.

    In the original (white space) position, typing on the line four from the top results in that line (the one four from the top) being moved to where it is four from the bottom.
    In one case, typing on line 11 resulted in no movement at all. But after typing somewhere else, typing on that same line resulted in the massive movement of that line to four from the bottom.

    Once it starts happening (it took what, a half-hour this time?), it continues to happen.

  9. Support Staff 9 Posted by Fletcher on 25 Aug, 2017 11:49 PM

    Fletcher's Avatar

    I didn't update that page yet.

    Every time you launch Composer, or whenever you tell it to in the
    preferences, it will look for an announcement, and I did put that up.

    Of course, if you disable checking for announcements, I can't help you
    there.... ;)

  10. Support Staff 10 Posted by Fletcher on 25 Aug, 2017 11:51 PM

    Fletcher's Avatar

    Glad the bouncing is better!!

    I'm pondering some ideas about the splitter -- let me know if it happens

  11. Support Staff 11 Posted by Fletcher on 26 Aug, 2017 02:26 AM

    Fletcher's Avatar

    At some point I'm going to have to see a picture, and better yet, a
    video to understand. There are too many variables for me to be sure
    that I understand what you're describing.

    1) You mention 5 lines of unexpected white space below the final text
    line. Had you just been scrolling? While typing, the only vertical
    whitespace in the editor is what the margins are set to be (unless you
    have typewriter on, which we've established you don't). The editor can
    only scroll beyond its boundaries if you sync scroll the *preview*. The
    preview *can* scroll beyond the <body> because it has extra padding
    added, but the editor cannot.

    2) *IF* you were scrolling the preview, and ended up with the editor
    beyond its natural boundaries, when you start typing it will return to a
    normal state, which will depend on where your cursor is and how far "out
    of bounds" you were.

    3) When you say it keeps happening, do you mean that if you are *just*
    typing (no mouse scrolling), the editor jumps around? Or is only after
    you scroll with the mouse?

  12. 12 Posted by Vince on 29 Aug, 2017 06:09 PM

    Vince's Avatar
    1. I didn't say it was unexpected, I said it was there. There are more lines on the preview side than the editing side. So the last text line on the editing side was about five lines up, and the preview side went off screen below the bottom. I wasn't scrolling the preview, I was scrolling on the editing side.

    2. Just typing.

    I am attaching a document that is a bunch of lorem ipsum, but it is structured exactly as the document I'm working on. Same # of lines, same # of topics/sub-topics, etc., etc. If I edit in this document for more than a minute or two, then the bouncing starts happening. I've also had the cursor do really strange things — the cursor is at character 15, but the characters as I type them start appearing at character 5. It's like they're coming out of the ether.

    Just do some editing near the bottom of the document. Do whatever you like. After a minute or two, if you put the line you want to edit near the top of the screen and start typing, it will move that line down near the bottom. Sometimes it does it when I type the first character, sometimes it does it after I hit Enter. But once it starts doing it, it keeps doing it, making it unusable. The cursor weirdness is a lot more random, and doesn't happen nearly as often. And it will sometimes correct itself if I hit Enter.

    And note that I dl'd beta 23 today and tried it, and it started within a couple of minutes.

    I figured out how to do a screen video with Quicktime, so I can do that, too, if you can't make it happen. But they get really big really fast (it was like 100MB for only 20 seconds when I was playing with it), so I don't know how I would get it to you. I can't email something that big.

  13. Support Staff 13 Posted by Fletcher on 29 Aug, 2017 07:31 PM

    Fletcher's Avatar

    Thank you for the sample file -- I *was* able to recreate the issue
    using your file, and was able to track down a fix (at least it is *a*
    fix, hopefully *the* fix).

    Will be in b24.


  14. 14 Posted by Vince on 29 Aug, 2017 08:40 PM

    Vince's Avatar

    Awesome, look forward to it.

    In the interest of better problem reports, I realize being able to duplicate the problem always helps immensely, but aside from that, how could my various messages on this issue have been improved, i.e. what was missing I could have included, etc.?

  15. Support Staff 15 Posted by Fletcher on 29 Aug, 2017 09:37 PM

    Fletcher's Avatar

    I was actually thinking about that before you wrote.

    What helped in this case was sending me the specific file, along with
    reasonably precise steps as to what do do.

    Once I had a user complain about how slow an update was, while in my own
    use it was several orders of magnitude faster. I finally convinced him
    to send me a file ("It's slow on any file, just create one!"), and
    realized that he was French Canadian. When writing in French, there were
    countless apostrophes scattered throughout the text, causing the smart
    quotes code to get stuck in nearly endless loops. It was a problem that
    was never going to occur in English text, but trivial to cause in French
    text. He assumed that I was using the program in the same way he was,
    without being aware of what made his own text different from my own.

    In this case, the issue (assuming I found the right issue) depended on
    the timing between keystroke and final refresh of the window, which in
    turn depends on other factors:

    * Computer speed (CPU, available RAM, competing processes) -- This can
    be hard to narrow down, but I've had to try in a couple of instances

    * Document length -- This was crucial in this instance

    * Document content -- a bunch of single word paragraphs is much faster
    to parse than nested lists. This can play a role, though not as crucial
    this time. Also may have been important in this case.

    The exact issue is hard to describe, but basically involved a couple of

    * The code that tells Composer that the edit pane has been resized was
    trying to observe a NULL value, which resulted in defaulting (at the
    macOS level) to watching the text itself. I'm not sure why macOS would
    do this, when it would make more sense to simply fail to create an
    observer. This resizes every time a character is changed, triggering
    lots of false positives (and unnecessary work)

    * Scrolling text into the screen can be done in different ways. One is
    instantaneous, the other uses the scroll animation. Interrupting an
    animated scroll can cause visually strange behavior. The update above
    was happening in the midst of the animated scrolling triggered by typing
    new text.

    * Short documents process everything so quickly that they don't
    interrupt (or at least makes it much less likely), resulting in
    apparently normal behavior

    * Longer documents (in certain portions) allow for:

    a. Longer distances to scroll, which can take longer amounts of time

    b. Slower processing time, giving more opportunity for collisions
    between different threads

    It's possible that an even longer document could have been slow enough
    that the issue resolves itself again, but I didn't test this.

    I'm trying to add a couple of other things, and then will release the
    next beta to let others test this fix.

  16. 16 Posted by Vince Rice on 29 Aug, 2017 09:48 PM

    Vince Rice's Avatar

    OK, just wanted to know if there was something I missed in my descriptions.

    Something I think I mentioned early on but not when I sent the file — you can also see issues with preview scrolling just stopping (or not starting) in that file. See earlier messages in this thread for a more detailed description.

  17. 17 Posted by Vince on 29 Aug, 2017 09:58 PM

    Vince's Avatar

    Sigh. I forgot, I put the scrolling issue in a separate thread, "Preview stops scrolling." Sorry about that.

  18. Support Staff 18 Posted by Fletcher on 30 Aug, 2017 02:17 AM

    Fletcher's Avatar

    Gonna close this one -- if problems happen in b24, let's start fresh.

  19. Fletcher closed this discussion on 30 Aug, 2017 02:17 AM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts


? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac