| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
Resets on successful connection.
|
| |
|
|
|
|
| |
Also hide MOTD start and end messages.
|
| |
|
|
|
|
|
|
| |
The configuration
addr 127.0.0.1:12345
should now work again.
|
|
|
|
| |
Fixes: https://todo.sr.ht/~taiite/senpai/105
|
|
|
|
|
|
|
|
|
| |
This fixes a critical build issue introduced in [1] where go-libnp would
fail building on Linux, with:
C source files not allowed when not using cgo or SWIG: np_util.c
[1]: a8e1b1b416c28985c58f8a5c4a4c8867d0eaf660
|
|
|
|
|
|
| |
This enables /NP to work on Windows.
See: https://github.com/delthas/go-libnp
|
|
|
|
|
|
|
| |
When being flooded by typing notifications, we could steal the lock from
the routine supposed to empty the notification channel.
This caused a possible deadlock in rare cases.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Receiving a TAGMSG in chathistory causes the handler to return nil.
Previously this caused the handler to be called again without the
playblack flag, causing us to emit events out of their history context.
This meant we would show typing notifications for users from chathistory
batches.
Soju will soon be able to send TAGMSG messages in its chathistory, so
we're fixing that now.
|
| |
|
|
|
|
|
|
| |
This fixes a regression introduced in [1].
[1]: 68e1efcf0612c635ea186676559883e791552d30
|
|
|
|
|
|
|
|
|
|
|
| |
This queries the system for the current song being played. This uses
DBus & MPRIS/xesam.
The priority is any player in playing state > any player in paused
state.
Only players in the playing or paused state, with a valid song title are
considered.
|
| |
|
| |
|
|
|
|
| |
Fixes: https://todo.sr.ht/~taiite/senpai/106
|
|
|
|
| |
We just need to enable extended-monitor :-)
|
|
|
|
|
|
| |
Overkill, but this was a nice weekend project :-)
Fixes: https://todo.sr.ht/~taiite/senpai/107
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we stopped rendering a line on its first Unicode replacement
character, because we used that special value for detecting invalid
Unicode bytes.
Now that we pre-process incoming strings to replace invalid Unicode
bytes with the Unicode replacement character [1], there is no need to
stop rendering a string on this character: it should just be passed
through as is.
[1]: 700139404044730a726af7cd57e3d2dbc07871ea
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we did not clear buffers highlight statuses on MARKREAD if
there was any unread line after it.
This meant that if we received a plain message, than a join message, and
some other device sent us a read marker for the plain message, we would
still highlight the buffer. But we should not: a join message should not
highlight the buffer.
This is a recurrent use case because some clients do not display join
mesasges and therefore do not send read markers for it.
This updates the logic to actually store the notify level (in the line)
and uses it to reset the highlight status when only NotifyNone messages
(or no messages) are left.
|
|
|
|
|
|
| |
tcell just got a bugfix for OSC 8 hyperlink IDs.
See: https://github.com/gdamore/tcell/commit/ede1dd5ee68071a873d425e749bcbde04f1a1cc3
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we sent the CHATHISTORY TARGETS start time with an incorrect
offset equal to the system time offset.
This means that we only reopened private buffers from the last app close
+ N hours on a system with a N-hour time offset.
This fixes the issue by saving the stamp as UTC, and also making sure to
format any time offset correctly.
|
|
|
|
| |
I meant to add 0-padding to avoid spaces.
|
|
|
|
|
|
|
| |
OSC 8 hyperlink ID support was merged into tcell. We can now use those
IDs to help terminal emulators identify links spanning multiple lines,
possibly highlighting the whole link whe it is hovered, or creating a
single link hotkey for them.
|
|
|
|
|
|
|
|
|
|
|
| |
tcell has merged OSC support in [1], with support for more terminals
than what was added in the tcell fork we used.
Now, all terminals with mouse sequences support should receive OSC 8
hyperlinks sequences.
[1]: https://github.com/gdamore/tcell/pull/527/commits/e7b14a71dc78721c0f007fd6197262c52c1d4df9
Fixes: https://todo.sr.ht/~taiite/senpai/103
|
| |
|
|
|
|
|
|
|
| |
On servers without prefixes, we previously crashed because of a missing
break.
The intended logic was to only process the string if it was not empty.
|
|
|
|
|
| |
tcell does not handle non-UTF8 chars well, so we explicitly replace them
when getting the messages to avoid passing them to tcell down the line.
|
| |
|
|
|
|
|
|
|
|
| |
When starting senpai, we jump to the last opened buffer. Offset the
horizontal target list to make the buffer visible, as if scrolled to
with CTRL+N.
Fixes: https://todo.sr.ht/~taiite/senpai/100
|
|
|
|
|
| |
This will reduce network usage and possibly increase WHO cache hit ratio
on bouncers supporting a WHO cache.
|
|
|
|
|
|
| |
Even if it is a continuation line.
Fixes: https://todo.sr.ht/~taiite/senpai/98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Preivously, we highlighted the user for any message that contained the
nick, even in the middle of a word.
Now, we only send a highlight if the user was mentioned in a single
word, by detecting word boundaries around the mention of the user.
For example, considering user "foo":
Previously, we would highlight on "foo" and "foolish".
Now, we highlight only on "foo".
This was inspired/copied from soju's handling [1].
[1]: https://git.sr.ht/~emersion/soju/tree/5e56cc30c538eb88c21cce732e2e357e80098164/item/irc.go#L473
Fixes: https://todo.sr.ht/~taiite/senpai/97
|
|
|
|
| |
Fixes: https://todo.sr.ht/~taiite/senpai/17
|
|
|
|
|
|
|
| |
Using man to learn more about senpai is obvious. Using /help is more
specific to senpai.
Mention that rather than the man.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a previous commit, the color scheme for displaying nicks was changed
to use more colors (30 rather than 14), using extended colors from the
256 colors set.
The issue with this is that most terminal emulators customize the colors
of the first 16 colors to make them more readable (eg, a terminal
emulator with a light theme will make colors darker, and one with a dark
theme will make colors lighter). So the 14 colors used before were
usually not the default color codes from the original xterm/X11 spec,
but specific colors chosen by the terminal emulator to be particularly
readable.
In a way, changing the behavior to use colors from the 256 colors set,
which is usually not overriden, made them much less readable.
Which is why we need a configuration option for this.
I conversatively chose to make the default color scheme the previous
one, with only the base 16 colors.
The 256 colors scheme can be enable by adding to the configuration file:
colors {
nicks extended
}
|
|
|
|
| |
This will help maintainers create their package.
|
| |
|
|
|
|
|
|
|
|
| |
Also, change the color scheme to use more colors. Now 30 instead of 15,
and with the consistent color codes offered by the extended XTerm 256
color scheme.
Fixes: https://todo.sr.ht/~taiite/senpai/90
|
|
|
|
|
|
| |
This enables dynamic discovery of new and deleted networks.
Fixes: https://todo.sr.ht/~taiite/senpai/71
|
|
|
|
| |
Fixes: https://todo.sr.ht/~taiite/senpai/91
|
|
|
|
|
| |
We don't care about them since we display the user away status using
MONITOR.
|
|
|
|
|
| |
This will allow to bring user attention when you are getting
highlighted.
|
| |
|
|
|
|
| |
Fixes: https://todo.sr.ht/~taiite/senpai/87
|
|
|
|
|
|
| |
Thanks steamyalt for the bug report.
Fixes: https://todo.sr.ht/~taiite/senpai/86
|