.\" Generated by scdoc 1.11.2 .\" Complete documentation for this program is not available as a GNU info page .ie \n(.g .ds Aq \(aq .el .ds Aq ' .nh .ad l .\" Begin generated content: .TH "senpai" "1" "2023-11-27" .P .SH NAME .P senpai - your everyday IRC student .P .SH SYNOPSIS .P \fBsenpai\fR [options.\&.\&.\&] .P .SH OPTIONS .P \fB-config\fR .RS 4 Use a different path for the configuration file.\& .P .RE \fB-nickname\fR .RS 4 Advanced.\& Nick name to connect as.\& Overrides the configuration item of the same name.\& .P .RE \fB-debug\fR .RS 4 Advanced.\& Show all IRC messages that are received from/sent to the server.\& .P .RE .SH DESCRIPTION .P senpai is an IRC client made for bouncers.\& It supports the newest IRC extensions, such as: .P .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} \fICHATHISTORY\fR, senpai fetches history from the server instead of keeping logs, .RE .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} \fI@+typing\fR, senpai shows when others are typing a message, .RE .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} \fIBOUNCER\fR, senpai connects to all your networks at once automatically, .RE .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} and more to come!\& .RE .P .SH CONFIGURATION .P senpai needs a configuration file to start.\& It searches for it in the following location: .P .RS 4 $XDG_CONFIG_HOME/senpai/senpai.\&scfg .P .RE If unset, $XDG_CONFIG_HOME defaults to \fB~/.\&config\fR.\& .P For information about the configuration format, see \fBsenpai\fR(5).\& .P .SH USER INTERFACE .P The user interface of senpai consists of 4 parts.\& Starting from the bottom: .P The \fBbuffer list\fR, shows joined channels.\& The special buffer \fBhome\fR is where server notices are shown.\& This list can be put on the left of the screen with the \fIchan-column-width\fR configuration option.\& Buffers can be closed with the mouse middle click, or the \fIpart\fR command.\& .P On the row above, the \fBinput field\fR is where you type in messages or commands (see \fBCOMMANDS\fR).\& By default, when you type a message, senpai will inform others in the channel that you are typing.\& .P On the row above, the \fBstatus line\fR (or.\&.\&.\& just a line if nothing is happening.\&.\&.\&) is where typing indicators are shown (e.\&g.\& "dan- is typing.\&.\&.\&").\& .P Finally, the \fBtimeline\fR is displayed on the rest of the screen.\& Several types of messages are in the timeline: .P .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} User messages are shown with their nicknames, .RE .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} User actions (\fB/me\fR) are shown with an asterisk (\fB*\fR) followed by the user'\&s nickname, .RE .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} Status messages, such as joins, parts, topics and name lists, are shown with two dashes (\fB--\fR), .RE .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .IP \(bu 4 .\} Notices are shown with an asterisk (\fB*\fR) followed by the user nickname and a colon .RE .P .SH SELECTING TEXT .P In order to select text with a mouse, hold SHIFT while clicking and dragging the mouse.\& \fBClicking and dragging without holding SHIFT will not work, as senpai eats these events for eg selecting channels.\&\fR .P .SH KEYBOARD SHORTCUTS .P \fBCTRL-A\fR .RS 4 Move the cursor to the beginning of the input field.\& .P .RE \fBCTRL-E\fR .RS 4 Move the cursor to the end of the input field.\& .P .RE \fBCTRL-C\fR .RS 4 Clear input line.\& .P .RE \fBCTRL-U\fR, \fBPgUp\fR .RS 4 Go up in the timeline.\& .P .RE \fBCTRL-D\fR, \fBPgDown\fR .RS 4 Go down in the timeline.\& .P .RE \fBCTRL-N\fR, \fBALT-RIGHT\fR .RS 4 Go to the next buffer.\& .P .RE \fBCTRL-P\fR, \fBALT-LEFT\fR .RS 4 Go to the previous buffer.\& .P .RE \fBSHIFT-RIGHT\fR .RS 4 Go to the next unread buffer.\& .P .RE \fBSHIFT-LEFT\fR .RS 4 Go to the previous unread buffer.\& .P .RE \fBALT-HOME\fR .RS 4 Go to the first buffer.\& .P .RE \fBALT-END\fR .RS 4 Go to the last buffer.\& .P .RE \fBALT-P\fR .RS 4 Go to the previous highlight .P .RE \fBALT-N\fR .RS 4 Go to the next highlight, or to the (most recent) end of the timeline if there is none.\& .P .RE \fBALT-{1.\&.\&9}\fR .RS 4 Go to buffer by index.\& .P .RE \fBUP\fR, \fBDOWN\fR, \fBLEFT\fR, \fBRIGHT\fR, \fBHOME\fR, \fBEND\fR, \fBBACKSPACE\fR, \fBDELETE\fR .RS 4 Edit the text in the input field.\& .P .RE \fBENTER\fR .RS 4 Sends the contents of the input field.\& .P .RE \fBTAB\fR .RS 4 Trigger the auto-completion.\& Press several times to cycle through completions.\& .P .RE \fBCTRL-L\fR .RS 4 Refresh the window.\& .P .RE \fBF7\fR .RS 4 Show/hide the vertical channel list.\& .P .RE \fBF8\fR .RS 4 Show/hide the vertical member list.\& .P .RE .SH COMMANDS .P If you type and send a message that starts with a slash (\fB/\fR), it will instead be interpreted as a command: .P .RS 4 /\fIname\fR argument1 argument2.\&.\&.\& .P .RE \fIname\fR is matched case-insensitively.\& It can be one of the following: .P \fBHELP\fR [search] .RS 4 Show the list of command (or a commands that match the given search terms).\& .P .RE \fBJOIN\fR .RS 4 Join the given channel.\& .P .RE \fBPART\fR [channel] [reason] .RS 4 Part the given channel, defaults to the current one if omitted.\& .P .RE \fBQUIT\fR [reason] .RS 4 Quits senpai.\& .P .RE \fBMOTD\fR .RS 4 Show the message of the day (MOTD).\& .P .RE \fBNAMES\fR .RS 4 Show the member list of the current channel.\& Powerlevels (such as \fI@\fR for "operator", or \fI+\fR for "voice") are shown in green.\& .P .RE \fBTOPIC\fR [topic] .RS 4 If \fItopic\fR is omitted, show the topic of the current channel and, if available, the person who set it and the time when it has been set.\& .P Otherwise, change the topic of the current channel to \fItopic\fR.\& .P .RE \fBMSG\fR .RS 4 Send \fIcontent\fR to \fItarget\fR.\& .P .RE \fBREPLY\fR .RS 4 Reply to the last person who sent a private message.\& .P .RE \fBME\fR .RS 4 Send a message prefixed with your nick (a user action).\& If sent from home, reply to the last person who sent a private message.\& .P .RE \fBNP\fR .RS 4 Send the current song that is being played on the system.\& Uses DBus/MPRIS internally.\& .P .RE \fBQUOTE\fR .RS 4 Send \fIraw message\fR verbatim.\& .P .RE \fBLIST\fR [pattern] .RS 4 List public channels, optionally matching the specified pattern.\& .P .RE \fBBUFFER\fR .RS 4 Switch to the buffer containing \fIname\fR.\& .P .RE \fBWHOIS\fR .RS 4 Get information about someone who is connected.\& .P .RE \fBWHOWAS\fR .RS 4 Get information about someone who is disconnected.\& .P .RE \fBNICK\fR .RS 4 Change your nickname.\& .P .RE \fBOPER\fR .RS 4 Log in to an operator account.\& .P .RE \fBMODE\fR [args] .RS 4 Change channel or user modes.\& .P .RE \fBINVITE\fR [channel] .RS 4 Invite \fInick\fR to \fIchannel\fR (the current channel if not given).\& .P .RE \fBKICK\fR [channel] [message] .RS 4 Eject \fInick\fR from \fIchannel\fR (the current channel if not given) with an optional kick message/reason.\& .P .RE \fBBAN\fR [channel] .RS 4 Ban \fInick\fR from entering \fIchannel\fR (the current channel if not given).\& .P .RE \fBUNBAN\fR [channel] .RS 4 Allow \fInick\fR to enter \fIchannel\fR again (the current channel if not given).\& .P .RE \fBSEARCH\fR .RS 4 Search messages matching the given text, in the current channel or server.\& This opens a temporary list, which can be closed with the escape key.\& .P .RE \fBAWAY\fR [message] .RS 4 Mark yourself as away, with an optional away message.\& .P .RE \fBBACK\fR .RS 4 Mark yourself as back from being away.\& .P .RE \fBVERSION\fR [target] .RS 4 Query the server software version.\& .P .RE \fBADMIN\fR [target] .RS 4 Query the server administrative information.\& .P .RE \fBLUSERS\fR .RS 4 Query the server user information.\& .P .RE \fBTIME\fR [target] .RS 4 Query the server local time.\& .P .RE \fBINFO\fR .RS 4 Query server information.\& .P .RE \fBLINKS\fR .RS 4 Query the servers of the network.\& .P .RE \fBSHRUG\fR .RS 4 Send a shrug emoji to the current channel.\& ¯\\_(ツ)_/¯ .P .RE \fBTABLEFLIP\fR .RS 4 Send a table flip emoji to the current channel.\& (╯°□°)╯︵ ┻━┻ .P .RE \fBSTATS\fR [target] .RS 4 Query server statistics (advanced).\& .P .RE \fBCONNECT\fR [ [remote server]] .RS 4 Connect a server to the network (advanced).\& .P .RE \fBSQUIT\fR [comment] .RS 4 Disconnects a server from the network (advanced).\& .P .RE \fBKILL\fR [message] .RS 4 Eject someone from the server (advanced).\& .P .RE \fBREHASH\fR .RS 4 Make the server reload its configuration (advanced).\& .P .RE \fBRESTART\fR .RS 4 Make the server restart (advanced).\& .P .RE \fBWALLOPS\fR [text] .RS 4 Broadcast a message to all users (advanced).\& .P .RE .SH SEE ALSO .P \fBsenpai\fR(5) .P .SH AUTHORS .P Creator/Sensei: Hubert Hirtz !\& .br Current maintainer: delthas .\& .br Sources are available at .\& .br Patches are welcome by email at <~delthas/senpai-dev@lists.\&sr.\&ht>.\&