Skip to content
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

Hotlist option to not clear inactive merged buffers until they have been activated #99

Closed
omgC opened this Issue Jun 5, 2014 · 2 comments

Comments

Projects
None yet
2 participants
@omgC
Copy link

omgC commented Jun 5, 2014

As discussed on IRC, this is a suggestion to add an option so merged buffers are not cleared from the Hotlist when viewing one of the merged buffers.
This applies to weechat v1.0-dev

To explain in more details, this is the scenario I have in mind:

  • When using merged buffers, I would like to be able to cycle through all those buffers with activity (using Alt+a [/input jump_smart] for instance).
  • Using the new parameter weechat.look.hotlist_add_conditions, it is possible to add buffers with activity to the Hotlist, even though they are visible
    (weechat.look.hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0 || ${buffer.active} == 0")
  • This should allow to switch between all the buffers in the Hotlist. However, Weechat considers that if you go to a merged buffer, you also read other buffers merged.
    This is preventing from switching to all buffers that were added into the Hotlist.
  • Note that this issue only happens if the buffer is not zoomed. The merged buffers are not cleared from the Hotlist if the buffer is zoomed.

Test scenario:

  • This needs at least 3 buffers open. Let say core.weechat, freenode (server) and #weechat (on freenode).
  • Those 3 buffers need to be merged as one.
  • /set weechat.look.hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0 || ${buffer.active} == 0" (so that inactive but visible buffers are added to the hotlist)
  • /set weechat.look.hotlist_names_merged_buffers "on" (so merged buffers can be added to the hotlist)

Once this done, focus on the #weechat buffer by using
Ctrl+x [/input switch_active_buffer]

  1. Issue the command: /buffer to generate some activity in core.weechat buffer.
    Notice the Hotlist is displaying [1:weechat(5)].
    You can reproduce "normal" behaviour (as if buffers were not merged) by using Alt+a to switch to core.weechat and back to #weechat.
  2. Once focusing #weechat once more, issue the commands
    /buffer and
    /whois this,
    so now both freenode and core.weechat have activity.
    It changes your Hotlist to: [1:weechat(5), 1:freenode].
    By using Alt+a once, you will be able to switch to core.weechat.
    However, the Hotlist is now cleared, and pressing Alt+a once more takes you back to #weechat, and not freenode, as if freenode never had any messages.

Suggestion:

An option to prevent the Hotlist from clearing all the merged buffers at once, maybe an hotlist_remove_conditions option.

Reason for this suggestion:

I like to have several channels with low activity merged as one, this allow me to efficiently monitor all of them at once.
However, it can be difficult to read the channels when they are greyed out (inactive buffer), hence the need to switch to those having some activity.
When a few buffers are merged (say 3 or more) it can be difficult to access the ones with activity because:

  1. As soon as you switch once, they are not in the hotlist anymore (so I have to remember all of the ones that had activity)
  2. You have to cycle through all of your merged buffers over and over if you use Ctrl+x

@flashcode flashcode added this to the 1.0 milestone Jun 6, 2014

@flashcode flashcode self-assigned this Jun 6, 2014

@flashcode flashcode closed this in 5d0a74a Jun 6, 2014

@flashcode

This comment has been minimized.

Copy link
Member

flashcode commented Jun 6, 2014

Done, new option weechat.look.hotlist_remove with default value buffer (which is the behavior you asked, I think it's better as default than the old one).

@flashcode

This comment has been minimized.

Copy link
Member

flashcode commented Jun 11, 2014

The default value has been changed to "merged", so the old behavior doesn't change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.