Editing and block mode{s} and lazy loading

First of all - I am a user of LogSeq of about one year now, personally and profesionally. I think it is a great software, much appreciated!

I use it exclusively as a desktop app on Windows, mostly for typing notes in meetings, and for gathering and structuring thoughts. In my opinion, if LogSeq is about connecting thoughts and taking notes, it ought to be a very good editor. Unfortunately, here is where several weaknesses combine and reduce the value of the software tremendously and make the use of LogSeq a really frustrating experience when trying to use just a keyboard.

  1. After selecting a file from recent files, there is no cursor, and no block highlighted. It is the “third mode” or “top-level mode”, with a very limited set of keys available. To a keyboard user, the software is unresponsive - no PgUp or PgDn, no Enter, no letter keys are accepted, there is no cursor.
  2. In this mode, I only found Up and Down arrow key to work. Confusingly, Down arrow selects the very first block, Up arrow selects the last block of the partially read-in file. Why do I say confusingly? Because the Up arrow in block mode selects the block above, i.e. the position moves towards beginning of a file. But in this case, the position moves towards the end of the file. So the same key moves the position in the file in opposite directions, depending on “mode”.
  3. So now we are in block mode (a block is highlighted in blue), no cursor. I want to go further down to the actual end of the file. What to do? PgUp or PgDown, Home, End, with or without Ctrl do nothing. Up and Down arrows work, but it is a very slow way to go down in a long file.
  4. I can press Esc and go back to the “top-level mode”. Then pressing Up arrow will cause another partial read of the file and the “last” block is highlighted. I a long file, I may have to do it 10 times in a row before I reach to the real end of the file.
  5. Alternatively, I can click somewhere, and get a cursor. In this “edit mode”, PgDown works, but the software pauses every half a second or so to read another chunk of the file. It still takes several seconds of continuous PgDn holding before the end of the file is reached. And then, there is no cursor.
  6. This is because in the edit mode, PgUp or PgDn will move a screenful, but the cursor will disappear. Yes, the screen scrolled but the cursor stayed where it was. Pressing an arrow key then will move the cursor (that is hidden due to page having scrolled), but that movement will only be made visible when the cursor moves to another block. In other words, the SW will again seem unresponsive, sometimes it may take one key press, sometimes 3, sometimes 100 – it all depends which way the cursor moved and how many characters/row remain to be traversed before a new block is entered.

I could go on with these issues, but I think this is already long and illustrative enough. Let me suggest a few improvements:

  1. The “edit mode” with the cursor should be activated as default when a file is loaded.
  2. All standard cursor movement keys (Up, Down, PgUp, PgDw, Home, End, with Ctrl modifier as usually defined) should always work.
  3. If there must be a “block mode” (which I am not convinced about, but can accept it), the standard editing keys should still work.
  4. The “top-level mode” should go away completely, it is anti-intuitive and unneeded.
  5. Lazy (partial) loading is fine, but it should be done fully in the background (at least in the desktop app), taking several seconds (10 and more) to scroll towards the end of the file is unacceptable.
  6. There ought to be a immediate way to go to the end of the file and edit.
  7. When a cursor is visible, it must remain visible unless “block mode” is activated. In other words, PgUp and PgDown must move the cursor as well.
  8. User-visible scrolling should not be used when making “bulk” movements through file or when a file is loaded and LogSeq tries to go to the previous position in the file.

Hope this helps to make LogSeq a better editor.