~delthas/senpai

v0.3.0 1 year, 2 months ago .tar.gz browse log

senpai v0.3.0

This is a smaller release, it contains small new features and bug fixes.
- A new setup assistant enables easy configuration after installation.
- An unread indicator bar enables quickly knowing which messages are new
  when switching tabs.
- Desktop notifications are now sent through the terminal automatically.
- A transient/memory-only mode was added, for the SSH demo.
- Emoji auto-completion makes it easier to input emoji.
- Several IRC commands (and replies) were added, including LIST.
- Status messages can now be hidden.
- New color configuration options were added.

Full commit history below.

Bryant Conquest (1):
      update git clone to pull from repository

Clayton Craft (1):
      Add option to hide join/part messages

Collin Lefeber (1):
      config: add status color sub-directive

Cowington Post (1):
      Set terminal window title.

Gabriel Arakaki Giovanini (2):
      Allow to overwrite makefile variables
      Fix tls configuration input

Gregory Anders (1):
      Add support for standard readline bindings for C-a and C-e

Hugo Osvaldo Barrera (5):
      Process "last seen" markers of joined channels
      Highlight channels with unread messages at startup
      Show an "unread" indicator bar
      Drop unnecessary fmt.Sprintf
      Bail early if password-cmd returns no data

Nick Hastings (1):
      Implements NextUnreadBuffer and PreviousUnreadBuffer

Tim Culverhouse (1):
      commands: add /tableflip command

Valentin Lorentz (1):
      Use 'CHATHISTORY LATEST' instead of 'CHATHISTORY BEFORE' when possible

Vlad-Stefan Harbuz (1):
      add /shrug command

delthas (47):
      Add setup assistant
      doc: Advertise SEARCH on the main doc
      Use a static bar cursor where supported
      Refresh tab when it changes after deletion (e.g. PART)
      Use tcell fork
      Add desktop notifications on highlight
      Make the unread message marker softer
      Force resetting the cursor style to default on exit
      Make the unread message ruler quieter
      Make the unread ruler smaller
      doc: Clarify contributing instructions
      Bump tcell / Fix alt arrow keys not working
      Make the unread ruler quieter
      Move the horizontal channel list on alt+left/alt+right
      doc: Fix installation instructions
      Add .desktop entry
      Recommend using make by default
      Drop the cmd/test client
      Add the transient config option
      Add the -nickname CLI option
      Mention the senpai live SSH demo
      Show the number of members in buffers
      Keep current buffer when deleting a buffer higher in the list
      Close buffer on mouse middle click
      Auto-complete emoji
      Add a fixed color scheme for nicks
      Support color names in configuration
      Allow running more commands on the server buffer
      Add an optional message argument to KICK
      Add a LIST command
      Show only the topic creator nick on /TOPIC
      Pretty-print channel mode messages
      Hide RPL_HOSTHIDDEN messages
      Add AWAY and BACK commands
      Add miscellaneous commands and replies support
      Fix vertical scrolling of buffers when navigating with keyboard
      Accept sending unknown command after a confirmation
      Prompt for confirmation for messages that look like commands
      Add additional debug for messages of unknown sessions
      Parse geo: links
      Cleanup code
      Make buffer indexes for /buffer start at 1
      Fix calling highlight with HERE=1 on different networks
      doc: Mention tracker email and pyonji
      Add automatic configuration for pyonji
      Make man pages build reproducible
      Do not require git for building documentation

mooff (1):
      Support "ircs+insecure://" scheme for connection addr

v0.2.0 1 year, 10 months ago .tar.gz browse log

senpai v0.2.0

Nomeji (1):
      Scroll to buffer on zoom

delthas (40):
      Revert to using base colors by default, making extended configurable
      Mention /help rather than man
      Show the message date instead of its time on date change
      Highlight only on word boundaries
      Always show the date of the top message
      Use WHOX rather than WHO when available
      Make the last opened channel visible in the horizontal list
      Prevnet highlighting on notices, drop unknown CTCP
      Replace non-UTF8 chars with the Unicode replacement character
      Fix crashing on ISUPPORT PREFIX=
      Switch to the upstream tcell implementation of OSC 8 hyperlink
      Add OSC 8 hyperlink IDs
      Fix OSC 8 hyperlink ID format
      Fix requesting CHATHISTORY TARGETS with invalid timestamps
      Bump tcell version
      Clear highlights from MARKREAD when only NotifyNone lines are left
      Render the Unicode replacement character properly
      Add a 10s timeout to connect + TLS handshake
      Print date as dd/mm or mm/dd depending on the user locale
      Enable receiving away updates for private buffers
      Support irc URLs in the config addr
      Implement /MOTD
      Add documentation for /MOTD
      Implement /NP
      Fix failing to parse host:port IRC URLs
      doc: Fix trivial typo
      Fix processing CHATHISTORY TAGMSG as standalone messages
      Prevent possible deadlock in the typing system
      Move /NP code to go-libnp
      Bump go-libnp
      Implement /OPER
      Fix failing on addresses with a literal IP address without URLs
      np: Bump libnp & be more verbose with errors
      Show MOTD in server buffer only
      Hide on-register RPL_UMODEIS
      Backoff from 0 seconds to 1 minute on reconnect
      Show connected messages in the current buffer as well
      Only show one connected message per reconnection
      motd: Allow running from a server buffer
      Request standard-replies

v0.1.0 2 years ago .tar.gz browse log

senpai v0.1.0

This is the first senpai release.

Alex McGrath (1):
      Only use first line of `password-cmd` output

Alexey Yerin (28):
      editor: add ^W delete word binding
      senpai.5: document no-tls and debug config options
      cmd/test: load useTLS from the config
      senpai.5: fix typo
      Add BUFFER command to jump to the matching buffer
      editor: Ctrl+{Right,Left} moves cursor by words
      Make sure app.s is not nil when issuing quit
      Make mouse support optional
      Use path.Join to construct config file path
      Use environment variables for on-highlight
      ui/editor: add boundary checks for word actions
      commands: ignore empty input
      Add /mode command
      Disallow sending messages to home
      commands: use Home constant instead of "home"
      Moving to libera.chat
      doc/senpai.5: update docs for addr field
      commands: do not handle s == ""
      commands: use rawArgs on non-command
      Add colors.prompt option to set prompt color
      doc/senpai.5: mention the issue with \ disappearing
      ui: don't mark // in input as a command
      ui: fix editor tests
      senpai.5: remove mention of no-tls
      senpai.5: fix color code in example
      README: fix syntax of debug option for scfg
      config: remove debugging fmt.Println
      Implement /kick and /[un]ban commands

Duc Nguyen (3):
      Restore last buffer on start
      add compiled doc to gitignore
      Also write the last buffer on SIGTERM, SIGINT and SIGHUP

Galen Abell (3):
      Add PHONY Makefile targets
      Fix default highlight command path not being used
      Show error when searching if unsupported

Hubert Hirtz (260):
      Initial commit
      Part Join Typing
      typing=done
      Nick colors
      Show JOIN and PARTs
      Also show QUITs
      Fix timezone with server-time
      Show underline messages
      Fix color codes
      Buffers are now shown (mostly) correctly
      Unknown sub-command ./cmd/irc
      Split lines between words
      wip
      Make renderedHeight correct
      Fix word wrapping for 1-wide characters
      Add test for 0-width chars
      Don't scroll past buffer content
      draft/chathistory support???
      Fix colors?
      Handle \x0F
      Add /msg command
      Fix readme headers, add the ISC license
      Add the issue tracker and the mailing list to the README
      Display typing indicators
      Split event handling into functions
      Add constants for IRC replies
      Yay go syntax
      Simplify color()
      Display queries in "home" buffer
      Make message handlers able to return more than one event
      Randomize welcome messages
      Add /quote command
      Handle self-NICK
      Show messages from self when echo-message is disabled
      Show incoming NOTICEs
      Improve line editing
      Rework display
      Show channels as bold on unread messages
      Show nick highlights
      Add a head for status lines
      Accept a -config command-line argument
      Configurable highlights
      Tidying
      Also handle numpad's enter key
      editor: fix off-by-one error
      editor: handle HOME and END keys
      editor: handle DEL key
      Show line on the left of typing indicators
      Don't request history of the home buffer
      Add a -debug flag and show raw messages
      Add missing color termination character
      Use a custom runewidth.Condition
      Fix colors not being reset with \x03
      Show NICK changes
      Support reverse character code
      Actually the rune width issue is from alacritty
      editor: Handle UP and DOWN keys
      Remove UserEvent and ChannelEvent
      Fill events with original channel case
      irc: Simplify debug logging of incoming messages
      irc: Use typing constants
      irc: Use better names for casefolded variables
      irc: go syntax i guess
      irc: Delete ConnectionState and use a bool instead
      ui: Reverse color of the nickname on highlight
      ui: Show /me from self when echo-message is off
      Add a /topic command
      Fix +typing=active being sent incorrectly
      ui: Configurable nick column width
      Handle RPL_TOPICWHOTIME
      irc: Use a bool instead of an error for validation
      irc: Also update casefolded nickname on ERR_ERRONEOUSNICKNAME
      irc: Handle CAP NEW/DEL/NAK before registration
      Add /names command
      irc: Send NAMES when multi-prefix is negociated
      ui: Fix scroll when lines are added
      irc: Update TopicWho and TopicTime on TOPIC
      Add screenshot to README.md
      ui: Fix crash in the word wrapping function
      editor: Don't add another line if the last one is empty
      irc: Fix RPL_TOPICWHOTIME handling
      Add /R command
      ui: Show self /msg and /r even if echo-message is off
      Properly close everything in case of error
      ui: Don't panic when the connection fails
      ui: Show the nick when senpai registers with a different one
      ui: Show unhandled messages in debug mode
      ui: Autocompletion of nicknames
      Fix highlight not following new nick on registration
      ui: Notify on highlight (or execute any command)
      irc: Don't panic on a NICK from an unknown user
      git add doc
      Mention the man pages in README.md
      ui: Strip formatting codes in notifications
      Change %c to %b and add %h
      ui: Show an error if on-highlight fails
      doc: Update example with sway focus or something
      ui: 1-cell padding for highlight nicks
      editor: Fix panic when pressing delete on empty input
      Fetch history on join
      ui: Fix color codes
      ui: Blacklist dark colors for nicks
      doc: Fix typos, improve wording somewhat
      Don't send @+typing=done in the home buffer
      Fix same messages being fetched with CHATHISTORY
      Fix /topic only accepting one word
      Fix topic time timezone
      Only fetch history on JOIN and PgUp
      Fix multiple SelfJoinEvent being sent
      Improve query display
      Drop username and hostname from TopicWho
      Allow /part with a reason
      General refactor yay
      Update tcell and support italics
      Move ui.Home and ui.homeMessages up
      irc: Reset typing ratelimiter after sent message
      Typing indicator timeout
      Fix crash when completing nicks with special chars
      Update screenshot URL
      Update tcell to v2 and
      Display strike-through text
      Fix duplicate timestamps
      Ensure timestamps from msg.TimeOrNow() are always UTC
      Show topic changes
      Handle KICK messages
      Allow moving the timeline to the right
      Collapse bufferlist in one block
      Vertical channel list
      Configurable channel list width
      Update manpages to account for latest changes
      Scroll wheel support
      Support for mouse clicks on channel names
      Handle Alt-Home and Alt-End
      Fix click colors on highlighted channel
      Fix prompt not being updated on click
      Document functions in app.go
      Don't autocomplete on empty word
      /topic completion
      Move editor view when completing text
      Add completion for /msg
      Basic display of errors
      Consider the CHANTYPES isupport token
      Consider the CASEMAPPING isupport token
      Only send the SelfJoinEvent when channel info is complete
      Document the IRC library
      Cleanly stop all coroutines on irc.Session.Stop
      Document irc/typing.go
      Polish the test client
      Don't forward outdated typing timeouts
      Make cmd/test usable
      Move configuration defaults to config.go
      Show command output on failure
      Show connection failure reason
      Chathistory: don't send invalid timestamps
      Fix random crash on startup
      Recognize beginning of commands
      Add the QUIT command
      Fix command argument parsing
      Add a no-tls option to config
      Better connection management
      Do not use dim styles on the buffer list
      Support cycling backward in auto-completions
      Fix segmentation fault when the server is down
      Don't show own typing notifications
      deps: update tcell and runewidth
      Split the "feature" map into specific attributes
      Split long messages before sending them
      Blacklist more colors
      Revert back to tcell 2.2.0
      Add option to disable sending typing notifications
      Fix duplicate lines when scrolling up
      Better error reporting about configuration file
      Update documentation examples and add warning
      Print config error message on stderr
      Don't look for nor execute sh when on-highlight is empty
      go fmt
      Properly show cursor on two-width characters
      Update tcell to 2.3.1
      Add port if missing (v2) and don't set keepalives
      Add /nick
      Fix races conditions
      Separate command handling from plain messages
      Explicitly support keys in JOIN messages
      Handle consecutive spaces on arg split
      Remove parenthesis around notices
      Fix ui tests
      Do not go into infinite loops on TLS mismatch
      Pick nick colors in terminal color scheme
      Also make dashes gray for command responses
      Fix senpai(5) formatting
      Update tcell
      Do not print empty rows
      Always update prompt
      Don't send typing=done when input is already empty
      Accept pull requests on Github
      Update copyright to include all contributors
      Remove outdated UI tests
      Fetch missed messages on reconnect
      Channel list is horizontal by default
      Don't show the member list by default
      Use messageBounds for infinite scroll CHATHISTORY requests
      Fix line wrapping not working on history
      Fix typos
      Random code improvements/tidying
      More lints
      Remove buffer arg in commands
      Remove needless allocations
      Fix typing indicators not being removed
      Show mode changes
      Fix horizontal channel bar drawing
      Sort typing indicators
      Remove IRC formatting when printing the topic
      Fix history not being loaded on channel re-JOIN
      Eager registration
      Revert "Eager registration"
      Simplify channel loop
      Don't forget to close outgoing chan on debug
      Only show buffer numbers when necessary
      Cleanup drawVerticalMemberList
      Fix ui.StyledStringBuilder
      Rework vertical lists
      Add an .editorconfig file
      doc: fix indentation and use _ instead of ` for keywords
      Don't display buffer numbers on empty command
      Cleanup unused caps
      Don't expect the server to send correct IRC messages
      Add support for the INVITE message
      Add an /invite command
      Don't panic when a command is sent when offline
      Make use of away-notify
      Simplify string building logic in app.go
      Sort channel staff before other members
      Remove draft file
      Support for soju.im/bouncer-networks
      doc: clarify some things
      status bar drawing: fix off-by-one error
      timeline drawing: fix off-by-one error
      Scroll up/down highlight by highlight
      Sync screen during resize
      Show the full command name on user error
      Rework the /help command
      Print the topic after the first batch of history
      Ensure BATCH's first arg is not empty
      Remove IRC formatting before printing the topic
      Revert "Show the current channel topic at the top of the timeline"
      Take mode changes into account
      Don't merge message bounds from multiple networks
      Allow App.Close() and App.Run() to be run concurrently
      Eagerly request capabilities
      Also retrieve username on registration
      Authenticate on CAP NEW sasl
      OK GitHub: update README.MD
      Tidy things
      Fetch history for queries
      Use second precision for bound computation
      Merge redundant events
      Do not mark the buffer as unread on MODE
      Bump history batch limits
      Remove old init
      Take NICKs into account when reducing join/part lines

Hugo Machet (1):
      Rename ColorGrey to ColorGray for consistency

Jeff Knapp (1):
      Fix segfault on /mode x

Jonathan Halmen (1):
      docs: update Ctrl-C behaviour

Kalyan Sriram (4):
      config: allow specifying an external password cmd
      config: replace YAML with scfg config format
      ui: buffers: sort buffer list
      ui: add commands completion

Kirill Chibisov (1):
      Add a config option to beep on highlight

Leon Henrik Plickat (1):
      Allow selecting buffers with Alt+{1..9}

Marten Ringwelski (2):
      docs: Fix typo
      Add Makefile

Nomeji (3):
      update man to reflect changes on pane-widths behaviour
      make install an independant task in Makefile
      Scroll to the channel when changing the horizontal channel

Pranjal Kole (1):
      Fix crash when lone slash is entered

Samuel Hernandez (1):
      irc: Fix requestHistory by making it use UTC

Simon Ser (9):
      readme: fix example config
      Use os.UserConfigDir
      Use nick/realname from config
      Default user/real to nickname if unspecified
      mv cmd/irc cmd/senpai
      Add senpai to .gitignore
      Use RPL_SASLSUCCESS to end registration
      Don't double-enable caps
      ui: use reverse colors for current buffer instead of underline

Tim Culverhouse (1):
      Add a config option for unread buffer text color

delthas (76):
      Fix backspace support on some terminals
      Ignore case when searching for a /BUFFER
      Sort channel members by name
      Ratelimit +typing and send +typing=done once only
      Clear the input on CTRL+C instead of quitting
      Switch to the buffer of a new user-requested channel join
      Automatically join channels on start
      Add notify types for fine-grained control of unread/highlight state
      Print the channel topic on join
      ui: Introduce a vertical member list on channels
      Make buffers indexed, and refer to indexes with /BUFFER
      Fix crash on disconnect
      Enable scrolling through the vertical member list with the mouse wheel
      Introduce backsearch message support with ctrl+R
      Make vertical channel list scrollable
      Fix requesting CHATHISTORY of empty channels
      Don't show notifications when receiving a message from self
      /mode: default channel to the current channel
      Mark hyperlinks with the OSC hyperlink terminal escape
      Fix requried go version
      Show the current channel topic at the top of the timeline
      Fix part-ing a channel with duplicate name in other networks
      Add support for user buffers
      Add support for the /QUERY command
      Handle tcell error events by closing
      Fix link value, removing debug query string
      Add support for CHATHISTORY TARGETS
      Show the current channel topic at the top of the timeline
      Add support for draft/event-playback
      Merge MODE messages
      MONITOR user with whom we have an open buffer
      Add support for the soju.im/read capability and READ command
      Fix event collapsing
      /query: support optionally sending a message
      /query: only send MONITOR, ... if the buffer is new
      Make CTRL+C alternatively clear the input and set '/quit' in it
      Enable clicking on channel members to open a query with them
      Add support for the ALL_PROXY, NO_PROXY environment variables
      Optimize URL parsing performance
      Use delthas/tcell fork
      Drain the events channel when closing
      Add HTTPS schema by default to hyperlinks
      Add a 15s keepalive to connections
      Implement SEARCH
      Only send READ for messages received from a channel
      Batch events by time period rather than by fixed size
      Optimize URL regex
      Fix home buffer tooltip
      Delete word on Alt+Backspace
      Show/hide the channel & member list with F7/F8
      Scroll horizontal channel list with the mouse wheel
      Enable clicking on a horizontal buffer to switch to it
      Update mailing list
      Defer parsing URLs until a buffer is opened at least once
      Fetch the chat history of the last opened buffer first
      Send SASL PLAIN authentication on connect
      Use time.Parse for parsing incoming server times
      Support +channel-context
      Enable specifying the size of disabled channel & member columns
      Fix horizontal channel list buffer underline position
      Fix horizontal channel buffer clicks on negative positions
      /mode: enable getting the channel modes without parameters
      Fix crashing on removing last char of backsearch pattern
      Reset history when flushing lines
      Implement /whois
      Update soju.im/read to draft/read-marker
      Fix dropping words in /msg, /query, /part
      Fix crashing when shrinking the text to a zero width
      Add pane-widths { text } to limit the max line width
      Add support for hex colors
      Hide automatic away replies
      Document selecting with shift
      Add support for soju.im/bouncer-networks-notify
      Color nicks in the member list the same as in the timeline
      Update maintainer
      Add a project description

mooff (1):
      Finish registration when not using SASL

ptrcnull (1):
      Handle IRC read events correctly

Branches

master
7ae04dea — delthas 30 days ago
Do not follow this link