Tab behaviour in lists
CompletedI constantly use simple indented lists for kind of quick "outlining" and use `tab`/`shift+tab` to indent and outdent items in different applications. Some applications do this better than others, for instance TaskPaper indents and outdents if you use tab while the cursor is in the middle of a line; it's very rare you want to insert a tab in the middle of a line. Many applications such as Bear, IntelliJ, etc indent entire selected block of lines. OmniOutliner is even better for outlining since it the entire list of subtopics with tabs. Some of these ideas might be considered more feature requests to have in nvUltra. However, the current tab behaviour in nvUltra is quite wonky and I'd consider these bugs. I noticed there's support for outdent in the latest beta, but there are still many issues when using the tabs.
For instance, if you create a list item and press tab, then it first creates a tab in the end of the line. The next tab press indents the line, with the tab character remaining in the end of the line. Indenting and outdenting a list can move indent and outdent other items in the list (above or below) in a very erratic manner. I can list different kinds of situations that can happen, but I think it's easy to see many of the issues by creating a simple indented list with subtopics and trying to indent and outdent the items with tab a bit.
-
As an example, I now have a list of items (subtopics to be specific) on the same level like this. I'm sorry the forum software doesn't seem to support indented lists. If I indent item 3 with tabs, then item 3 *indents* and at the same time, items 1, 2, 4 *outdent*. Vice versa when outdenting item 3, items 1, 2, 4 *indent* at the same time.
- Main
- Item 1
- Item 2
- Item 3
- Item 4
0 -
It might be that my (Finnish) nvUltra has these issues for some unknown reason that's not replicable on some other installations.
0 -
1. I'll need to figure out what is going on when the line indents by pressing tab repeatedly at the end. I think this is an edge case of intended behavior described below.
2. When you indent/outdent line 3, it is not changing the indent levels of the other list items. You are seeing changes to the column width of the elastic tab stops. (Turn on preview, turn on invisible characters, and try turning off elastic tabstops to see what is going on).
3. The tab key only indents a line under a few circumstances. A) When it is at the beginning of a line, since inserting a tab and indenting are the same here. B) Immediately after hitting return in a list item. Once you type letters, the tab key inserts a tab.
4. Cmd-[ and Cmd-] trigger the Shift Left and Shift Right menu commands, which work under any circumstances. These may be easier for you than tab/indent-tab.
0 -
PS> Fixed issue 1 -- hitting tab more than once is not sufficient to cause it to start indenting lines any more.
PPS> Just in case it comes up -- shift-tab to outdent a line ends "tab to indent" in #3B, just like typing a letter. This shortcut is really just intended to allow you to quickly indent a new sublist -- not for complex list rearrangement.
0 -
PPPS> You can also use "return" to outdent an empty list item before you start typing it. This does *not* end "tab to indent", since it is specifically enabled after typing return.
0 -
"2. When you indent/outdent line 3, it is not changing the indent levels of the other list items. You are seeing changes to the column width of the elastic tab stops. (Turn on preview, turn on invisible characters, and try turning off elastic tabstops to see what is going on)."
OK, I'm not sure I understand how the elastic tab stops work, but sorry I'm not a fan of this behaviour at this point. One of the main reasons I prefer Markdown over to something like Confluence (or many other rich text formats) is that there's no hidden characters, etc, that affect the formatting, indentation, etc in a complex way. I'd rather not have any tab characters in the file for the matter. I'll look to this behaviour if I can get it however. :)
Edit: I turned off the elastic tabs from the preferences and I guess it fixed many of the pressing issues, except tabs being created in the end of the line that you said was fixed. Thanks.
Edit2: Well actually, it's still quite easy to reproduce weird behaviour when tabbing lists of text, such as lines below or above the selected line moving around, etc. I don't see the tab characters in any way, yet they affect the list formatting in various ways over multiple lines. After I had created list with some tabbing around it, tabbing on one line not only indented another line some four lines below it, but also created tabs inside one word in another line.
"- grgt" on one line became "- g r g t" (with the 8 spaces being tabs). I didn't press tab on this line, but several lines above it.
Maybe some of these issues are resolved when it's no longer creating the unnecessary tab characters anymore.
0 -
If you're unsure about the presence of tab characters, use the "Show Invisible Characters" feature and you can see exactly what is going on.
If you can send an example file and show me how to reproduce inserting tabs on a different line than the cursor is on, I would be grateful. I've never experienced that.
0 -
I still see the problem where tabbing on what would be a multi-paragraph line of a list element inserts the tab to the right of the cursor rather than to the left of the cursor. I also cannot use `Cmd-]` on an empty line, thus the only way to add a second paragraph to a list item is to start typing in text first, and *then* use the shortcut to indent.
Reproduction:
1. From vanilla settings, disable "Use elastic tabstops" in the Editing preference pane.
2. Create a new test file, and start a list within it (either type will do).
3. After the first line, press Return again to leave the listing environment and another time to add an empty line.
4. Press the Tab key to create a secondary paragraph for the first list item. Nothing will appear to happen with the view. Type in a word or two.
5. Use the `Cmd-]` shortcut to indent the line.
6. Now all looks well, but from the end of that line, press `Shift-RightArrow`. From this you will see the Tab was indeed inserted, but *after* the cursor.0 -
AmberV - are you still seeing this?
0 -
Just updated to b50, and this is looking good now, thanks!
0 -
AmberV -- Great!!
0
Please sign in to leave a comment.
Comments
11 comments