-
-
Notifications
You must be signed in to change notification settings - Fork 252
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Group narrowing commands and improve descriptions #1516
Conversation
docs/hotkeys.md
Outdated
|Narrow to the stream of the current message|<kbd>s</kbd>| | ||
|Narrow to the topic of the current message|<kbd>S</kbd>| | ||
|Narrow to compose box message recipient|<kbd>Meta</kbd> + <kbd>.</kbd>| | ||
|Narrow to a topic/direct-chat, or stream/all-direct-messages|<kbd>z</kbd>| | ||
|Narrow to all messages|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Narrow to all direct messages|<kbd>P</kbd>| | ||
|Narrow to all starred messages|<kbd>f</kbd>| | ||
|Narrow to messages in which you're mentioned|<kbd>#</kbd>| | ||
|Zoom in/out the message's conversation context|<kbd>z</kbd>| | ||
|Go to your combined feed|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Go to your direct message feed|<kbd>P</kbd>| | ||
|Go to your starred messages|<kbd>f</kbd>| | ||
|Go to messages in which you're mentioned|<kbd>#</kbd>| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not entirely sure about the language we should use here, but should we consider using "Go to" instead of "Narrow" for lines 34-36 as well? To me, "Go to" seems clearer than "Narrow." However, this is just my opinion, so we'll need to wait for feedback from Neil and the mentors.
The rewording of the to "Zoom in/out" seems great, though!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the review!
Ah, good point! Yes, I was considering the same, but I wasn't sure because those narrowing commands kind of use the current context and don't switch to something completely different or a named narrow, like the menu buttons do. But, it's probably just me.
And that's also why line 41 doesn't feel like a great fit either, because it's not a named narrow.
Thank you for sharing your thoughts!
Zoom in/out credits: Zulip webapp
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For context, historically - at least in ZT - we've had confusion over communicating 'a narrow' (message view; noun) and 'narrowing' (switching to a message view; verb).
Most of this likely comes from the phrasing in the code, and also how the API defines a narrow as a filter of the messages you can see: https://zulip.com/api/construct-narrow.
(note we currently use an old API style for narrows, which needs to be refactored to support the documented style which uses a dict)
You can also see this in our user-facing tutorial: https://github.com/zulip/zulip-terminal/blob/main/docs/getting-started.md#Narrowing
So, there's potentially some small follow-up we could do to clarify this for end-users, if we're switching to 'message view' for the noun form.
Regarding the specific verb prefix selection (go-to vs narrow):
- ideally it would be as concise as possible, as well as consistent
- some of the contextual grouping we have was originally intended to make it easier to understand based on the category titles, but since the descriptions can appear without them, then we can't assume their presence and simplify that much
- 'go' is used a lot in the web app descriptions for 'narrowing' (https://zulip.com/help/keyboard-shortcuts)
- the web app or docs actually don't seem to use narrow for either form? (outside of API)
- narrowing can change keyboard focus, but we currently use 'go' for the keyboard movement, so that could be confusing when really it's specifically changing the message view
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Re z
, this is a simple toggleable hotkey in ZT, which we introduced before the web app switched to using just s
for doing almost the same. In web it doesn't apply to DMs, so it's not really a 'safe' toggle between views - and I'm not sure if shift s
(S
) still works. I'm inclined to suggest Toggle could be a good phrase here.
'Zoom in/out' is definitely cleaner, and relates to why we chose z
in the first place, but the challenge with the phrasing here has always been how to cleanly describe the different contexts. 'Conversation' seems to be the term used for 'most zoomed in' view at the moment, but DM feed and channel feeds are not quite as clear cut, but might be useful?
(for the reasons above, z
should be right next to s
/S
in the help)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Niloth-p Thanks for this thoughtful work 👍
(and @rsashank's review :+1)
Following up from the changes to eg. have Help Menu
and About Menu
capitalized similarly, we could also consider doing similar changes to parts of the UI like All Messages
and Direct Messages
. These could be simple capitalization, or possibly subsequently styled versions, to highlight that they refer to specific defined items.
As per most of this work, the challenge is picking the correct terms and phrases, and using them consistently. That'll likely be easier as we go on, and we may want to discuss those specific terms, including eg. for referring to popups/menus/...
docs/hotkeys.md
Outdated
## Switch message view | ||
|Command|Key Combination| | ||
| :--- | :---: | | ||
|Narrow to the stream of the current message|<kbd>s</kbd>| | ||
|Narrow to the topic of the current message|<kbd>S</kbd>| | ||
|Narrow to compose box message recipient|<kbd>Meta</kbd> + <kbd>.</kbd>| | ||
|Narrow to a topic/direct-chat, or stream/all-direct-messages|<kbd>z</kbd>| | ||
|Narrow to all messages|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Narrow to all direct messages|<kbd>P</kbd>| | ||
|Narrow to all starred messages|<kbd>f</kbd>| | ||
|Narrow to messages in which you're mentioned|<kbd>#</kbd>| | ||
|Next unread topic|<kbd>n</kbd>| | ||
|Next unread direct message|<kbd>p</kbd>| | ||
|Perform current action|<kbd>Enter</kbd>| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The web app calls this 'Navigation' and includes the n
and p
keys here.
While that name for the category is short, it doesn't quite seem correct with us supporting left/right navigation too; maybe 'Switching messages view' would be more consistent, at least for now? The title of the middle section is currently the plural form: messages, and we have other '-ing' forms of category titles.
For n
and p
these can jump inside and between conversations, which suggests something other than 'Switching' for the title (perhaps something closer to 'Navigating' or 'Jumping'), but this seems minor until we fine-tune the View/Narrow/Navigate nuances.
Re moving the Meta + . command here, it's certainly useful to know that it fits in this category, though it could certainly be useful in the other section too - something which I think you have have explored enabling in #1519? Was it for this purpose?
As per discussion in #1497, keeping 'Enter' in 'Navigation' (ie. scrolling/left/right/...) seems good for now. One wrinkle is that in addition to that general-purpose behavior, it would be useful to also include that 'Enter' activates narrowing buttons in the left panel in general, much like the change you've added in another PR for replying to a user in the right (user) panel.
zulipterminal/config/keys.py
Outdated
@@ -416,6 +416,7 @@ class KeyBinding(TypedDict): | |||
HELP_CATEGORIES = { | |||
"general": "General", | |||
"navigation": "Navigation", | |||
"narrow": "Switch message view", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: This isn't user-facing, but maybe "narrowing" here?
zulipterminal/config/keys.py
Outdated
@@ -190,22 +190,22 @@ class KeyBinding(TypedDict): | |||
}, | |||
'ALL_MESSAGES': { | |||
'keys': ['a', 'esc'], | |||
'help_text': 'Narrow to all messages', | |||
'help_text': 'Go to your combined feed', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we're making this change, we should also update the UI to use Combined Feed at the same time; since these are different changes, they should at least be in different commits - ie. I wouldn't expect a UI rename of that type in this commit. That renaming was discussed in #zulip terminal > Combined feed renaming.
docs/hotkeys.md
Outdated
|Narrow to the stream of the current message|<kbd>s</kbd>| | ||
|Narrow to the topic of the current message|<kbd>S</kbd>| | ||
|Narrow to compose box message recipient|<kbd>Meta</kbd> + <kbd>.</kbd>| | ||
|Narrow to a topic/direct-chat, or stream/all-direct-messages|<kbd>z</kbd>| | ||
|Narrow to all messages|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Narrow to all direct messages|<kbd>P</kbd>| | ||
|Narrow to all starred messages|<kbd>f</kbd>| | ||
|Narrow to messages in which you're mentioned|<kbd>#</kbd>| | ||
|Zoom in/out the message's conversation context|<kbd>z</kbd>| | ||
|Go to your combined feed|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Go to your direct message feed|<kbd>P</kbd>| | ||
|Go to your starred messages|<kbd>f</kbd>| | ||
|Go to messages in which you're mentioned|<kbd>#</kbd>| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For context, historically - at least in ZT - we've had confusion over communicating 'a narrow' (message view; noun) and 'narrowing' (switching to a message view; verb).
Most of this likely comes from the phrasing in the code, and also how the API defines a narrow as a filter of the messages you can see: https://zulip.com/api/construct-narrow.
(note we currently use an old API style for narrows, which needs to be refactored to support the documented style which uses a dict)
You can also see this in our user-facing tutorial: https://github.com/zulip/zulip-terminal/blob/main/docs/getting-started.md#Narrowing
So, there's potentially some small follow-up we could do to clarify this for end-users, if we're switching to 'message view' for the noun form.
Regarding the specific verb prefix selection (go-to vs narrow):
- ideally it would be as concise as possible, as well as consistent
- some of the contextual grouping we have was originally intended to make it easier to understand based on the category titles, but since the descriptions can appear without them, then we can't assume their presence and simplify that much
- 'go' is used a lot in the web app descriptions for 'narrowing' (https://zulip.com/help/keyboard-shortcuts)
- the web app or docs actually don't seem to use narrow for either form? (outside of API)
- narrowing can change keyboard focus, but we currently use 'go' for the keyboard movement, so that could be confusing when really it's specifically changing the message view
docs/hotkeys.md
Outdated
|Narrow to the stream of the current message|<kbd>s</kbd>| | ||
|Narrow to the topic of the current message|<kbd>S</kbd>| | ||
|Narrow to compose box message recipient|<kbd>Meta</kbd> + <kbd>.</kbd>| | ||
|Narrow to a topic/direct-chat, or stream/all-direct-messages|<kbd>z</kbd>| | ||
|Narrow to all messages|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Narrow to all direct messages|<kbd>P</kbd>| | ||
|Narrow to all starred messages|<kbd>f</kbd>| | ||
|Narrow to messages in which you're mentioned|<kbd>#</kbd>| | ||
|Zoom in/out the message's conversation context|<kbd>z</kbd>| | ||
|Go to your combined feed|<kbd>a</kbd> / <kbd>Esc</kbd>| | ||
|Go to your direct message feed|<kbd>P</kbd>| | ||
|Go to your starred messages|<kbd>f</kbd>| | ||
|Go to messages in which you're mentioned|<kbd>#</kbd>| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Re z
, this is a simple toggleable hotkey in ZT, which we introduced before the web app switched to using just s
for doing almost the same. In web it doesn't apply to DMs, so it's not really a 'safe' toggle between views - and I'm not sure if shift s
(S
) still works. I'm inclined to suggest Toggle could be a good phrase here.
'Zoom in/out' is definitely cleaner, and relates to why we chose z
in the first place, but the challenge with the phrasing here has always been how to cleanly describe the different contexts. 'Conversation' seems to be the term used for 'most zoomed in' view at the moment, but DM feed and channel feeds are not quite as clear cut, but might be useful?
(for the reasons above, z
should be right next to s
/S
in the help)
df45f34
to
873cc42
Compare
I've made the following changes: 1st commit
2nd commit
Follow-ups to address in separate commits / PRs:
Please let me know if I've missed anything or misunderstood something, @neiljp. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To me this looks very fine. I won't think about wording too much/too deeply, I think it's improving in this PR and that's the most important thing to me :) Neil had already a look, so I'll leave the details to him.
873cc42
to
b1ea99b
Compare
Note: The "Narrow to compose box message recipient" command that we just assigned to category "compose_box" in #1520 is now re-assigned to category "narrowing". |
@Niloth-p Thanks for the rebase 👍 I agree about the narrowing category, certainly until we consider multi-categories (if we do). It would seem that n/p would also be best in this same category for now? That is, compared to others that will be present in the short term? The
I believe those were the two points I had noticed and was starting to work through before you pushed again this evening :) |
Hotkeys document regenerated.
To make the 'z' hotkey be listed immediately after the related 's' and 'S' hotkeys in the help menu.
b1ea99b
to
8f3dd49
Compare
|
Replace "Narrow to": - Use "View" instead of "Narrow to" - Use "View all" for those corresponding to narrow buttons - Use "Switch message view" for the compose box message recipient Rephrasing help texts: - Use "zoom in/out" to simplify and shorten the longest description, while also being clear on the choice of key being 'z' - "compose box message recipient" -> "compose box target" reduces length and user-friendliness, while retaining clarity Hotkeys document regenerated.
8f3dd49
to
70032a5
Compare
@Niloth-p Thanks for the update 👍 I partially reversed the mentions text, but that's a marginal language change, and otherwise I just tweaked the commit text. The middle commit is small, but helps keep the reordering clear, since the diff is less clear otherwise, so I've left it separate 👍 Merging this now, thanks all! 🎉 |
I've added the follow-up points you noted above as a summary into the bottom of #1524 to keep them tracked, as well as a few other points. |
What does this PR do, and why?
Outstanding aspect(s)
Feedback on the following are needed:
External discussion & connections
re-categorization
How did you test this?
Self-review checklist for each commit
Visual changes