WebsiteTemplate/cheatsheets/irssi.html
2026-01-25 11:33:37 -04:00

431 lines
11 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self'; font-src 'self' data:; img-src 'self' data:; connect-src 'self'; base-uri 'self'; form-action 'self' https://defcon.social https://bsky.app;">
<meta http-equiv="X-Content-Type-Options" content="nosniff">
<link rel="stylesheet" href="../assets/css/style.css">
<link rel="icon" type="image/x-icon" href="../favicon.ico">
<script>
// Apply theme immediately to prevent flash
(function() {
const theme = localStorage.getItem('theme') ||
(window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light');
document.documentElement.setAttribute('data-theme', theme);
})();
</script>
<title>irssi Cheatsheet - Cheatsheets - Launch Pad</title>
</head>
<body>
<button class="theme-toggle" id="themeToggle" aria-label="Toggle dark mode">
<svg class="theme-icon theme-icon-moon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
<svg class="theme-icon theme-icon-sun" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="display: none;"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
</button>
<br/><br/>
<div class="name">
__ _______________________ _________._________________________
\_ _____/ \______ \ / _ \ / _____/ / _____/ | | \_ _____/
| __) | _/ / /_\ \ / \ ___ / \ ___ | | | __)_
| \ | | \ / | \ \ \_\ \ \ \_\ \ | |___ | \
\___ / |____|_ / \____|__ / \______ / \______ / |_______ \ /_______ /
\/ \/ \/ \/ \/ \/ \/
</div>
<div class="blog-page-header">
<div class="blog-header-content">
<a href="/cheatsheets" class="back-link" title="Back to Cheatsheets">
<svg xmlns="http://www.w3.org/2000/svg" width="42" height="42" viewBox="0 0 24 24" class="home-icon"><path fill="currentColor" d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"/></svg>
</a>
<h1 class="blog-page-title">irssi Cheatsheet</h1>
</div>
</div>
<div class="blog-post-container">
<div class="blog-posts-container" style="max-width: 900px; margin: 0 auto;">
<div class="blog-post">
<div class="blog-post-content">
<p><a href="index.html">← Back to cheatsheets</a></p>
<p><a href="../index.html">← Home</a></p>
<hr>
<p>irssi is a terminal-based IRC (Internet Relay Chat) client. Lightweight, fast, and highly configurable for chatting on IRC networks.</p>
<hr>
<h2>Connecting to Networks</h2>
<ul>
<li>/connect &lt;server&gt; - Connect to IRC server</li>
</ul>
<ul>
<li>/connect &lt;server&gt; &lt;port&gt; - Connect with specific port</li>
</ul>
<ul>
<li>/connect &lt;server&gt; &lt;port&gt; &lt;password&gt; - Connect with password</li>
</ul>
<ul>
<li>/disconnect - Disconnect from current server</li>
</ul>
<ul>
<li>/quit - Quit irssi</li>
</ul>
<ul>
<li>/save - Save configuration</li>
</ul>
<hr>
<h2>Channel Operations</h2>
<ul>
<li>/join &lt;#channel&gt; - Join channel</li>
</ul>
<ul>
<li>/join &lt;#channel&gt; &lt;key&gt; - Join password-protected channel</li>
</ul>
<ul>
<li>/part &lt;#channel&gt; - Leave channel</li>
</ul>
<ul>
<li>/part &lt;#channel&gt; &lt;message&gt; - Leave with message</li>
</ul>
<ul>
<li>/names &lt;#channel&gt; - List users in channel</li>
</ul>
<ul>
<li>/topic &lt;#channel&gt; &lt;topic&gt; - Set channel topic</li>
</ul>
<ul>
<li>/msg &lt;#channel&gt; &lt;message&gt; - Send message to channel</li>
</ul>
<hr>
<h2>Private Messages</h2>
<ul>
<li>/query &lt;nick&gt; - Start private message</li>
</ul>
<ul>
<li>/msg &lt;nick&gt; &lt;message&gt; - Send private message</li>
</ul>
<ul>
<li>/close - Close current window</li>
</ul>
<ul>
<li>/wclose - Close window</li>
</ul>
<hr>
<h2>Window Navigation</h2>
<ul>
<li>Alt+0-9 - Switch to window number</li>
</ul>
<ul>
<li>Alt+Arrow or Ctrl+N/P - Switch windows</li>
</ul>
<ul>
<li>/window next - Next window</li>
</ul>
<ul>
<li>/window prev - Previous window</li>
</ul>
<ul>
<li>/window goto &lt;number&gt; - Go to window number</li>
</ul>
<ul>
<li>/window close - Close current window</li>
</ul>
<ul>
<li>/window new - Create new window</li>
</ul>
<ul>
<li>/window new split - Split window</li>
</ul>
<ul>
<li>/window show irc - Show IRC windows only</li>
</ul>
<hr>
<h2>Input Editing</h2>
<ul>
<li>Ctrl+A - Beginning of line</li>
</ul>
<ul>
<li>Ctrl+E - End of line</li>
</ul>
<ul>
<li>Ctrl+B/F - Move backward/forward one character</li>
</ul>
<ul>
<li>Ctrl+D - Delete character</li>
</ul>
<ul>
<li>Ctrl+H - Backspace</li>
</ul>
<ul>
<li>Ctrl+K - Delete to end of line</li>
</ul>
<ul>
<li>Ctrl+U - Delete to beginning of line</li>
</ul>
<ul>
<li>Ctrl+W - Delete word</li>
</ul>
<ul>
<li>Ctrl+L - Clear screen</li>
</ul>
<hr>
<h2>Nickname and Identity</h2>
<ul>
<li>/nick &lt;newnick&gt; - Change nickname</li>
</ul>
<ul>
<li>/set real_name &lt;name&gt; - Set real name</li>
</ul>
<ul>
<li>/set user_name &lt;name&gt; - Set username</li>
</ul>
<ul>
<li>/whois &lt;nick&gt; - Get user information</li>
</ul>
<ul>
<li>/whoami - Show your own information</li>
</ul>
<hr>
<h2>Server Commands</h2>
<ul>
<li>/server add -m &lt;network&gt; &lt;server&gt; &lt;port&gt; - Add server</li>
</ul>
<ul>
<li>/server &lt;network&gt; - Connect to network</li>
</ul>
<ul>
<li>/server list - List configured servers</li>
</ul>
<ul>
<li>/server remove &lt;network&gt; - Remove server</li>
</ul>
<hr>
<h2>Channel Modes</h2>
<ul>
<li>/mode &lt;#channel&gt; +o &lt;nick&gt; - Give operator status</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; -o &lt;nick&gt; - Remove operator status</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; +v &lt;nick&gt; - Give voice</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; -v &lt;nick&gt; - Remove voice</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; +i - Invite-only channel</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; +m - Moderated channel</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; +n - No external messages</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; +s - Secret channel</li>
</ul>
<ul>
<li>/mode &lt;#channel&gt; +t - Topic protection</li>
</ul>
<hr>
<h2>Channel Information</h2>
<ul>
<li>/list - List all channels</li>
</ul>
<ul>
<li>/list &lt;pattern&gt; - List channels matching pattern</li>
</ul>
<ul>
<li>/who &lt;#channel&gt; - List users in channel</li>
</ul>
<ul>
<li>/ban &lt;#channel&gt; &lt;nick&gt; - Ban user from channel</li>
</ul>
<ul>
<li>/kick &lt;#channel&gt; &lt;nick&gt; - Kick user from channel</li>
</ul>
<ul>
<li>/kick &lt;#channel&gt; &lt;nick&gt; &lt;reason&gt; - Kick with reason</li>
</ul>
<hr>
<h2>Settings and Configuration</h2>
<ul>
<li>/set &lt;option&gt; &lt;value&gt; - Set option</li>
</ul>
<ul>
<li>/set -&lt;option&gt; - Unset option</li>
</ul>
<ul>
<li>/toggle &lt;option&gt; - Toggle option</li>
</ul>
<ul>
<li>/bind -m &lt;mode&gt; &lt;key&gt; &lt;command&gt; - Bind key to command</li>
</ul>
<ul>
<li>/unbind -m &lt;mode&gt; &lt;key&gt; - Unbind key</li>
</ul>
<hr>
<h2>Common Settings</h2>
<ul>
<li>/set nick &lt;nickname&gt; - Set default nickname</li>
</ul>
<ul>
<li>/set real_name &lt;name&gt; - Set real name</li>
</ul>
<ul>
<li>/set user_name &lt;username&gt; - Set username</li>
</ul>
<ul>
<li>/set autojoin_channels &lt;#channel1,#channel2&gt; - Auto-join channels</li>
</ul>
<ul>
<li>/set autolog &lt;on|off&gt; - Enable/disable logging</li>
</ul>
<ul>
<li>/set autolog_path &lt;path&gt; - Set log file path</li>
</ul>
<ul>
<li>/set scrollback_lines &lt;number&gt; - Set scrollback buffer size</li>
</ul>
<hr>
<h2>Scripts and Plugins</h2>
<ul>
<li>/script load &lt;script.pl&gt; - Load script</li>
</ul>
<ul>
<li>/script unload &lt;script.pl&gt; - Unload script</li>
</ul>
<ul>
<li>/script list - List loaded scripts</li>
</ul>
<ul>
<li>/script exec &lt;code&gt; - Execute Perl code</li>
</ul>
<ul>
<li>/run &lt;script.pl&gt; - Run script</li>
</ul>
<hr>
<h2>Aliases and Shortcuts</h2>
<ul>
<li>/alias &lt;name&gt; &lt;command&gt; - Create alias</li>
</ul>
<ul>
<li>/unalias &lt;name&gt; - Remove alias</li>
</ul>
<ul>
<li>/alias list - List all aliases</li>
</ul>
<p>Example aliases:</p>
<ul>
<li>/alias j /join</li>
</ul>
<ul>
<li>/alias m /msg</li>
</ul>
<ul>
<li>/alias q /query</li>
</ul>
<hr>
<h2>Logging</h2>
<ul>
<li>/set autolog on - Enable automatic logging</li>
</ul>
<ul>
<li>/set autolog_path ~/irclogs/$tag/$0.log - Log file path template</li>
</ul>
<ul>
<li>/save - Save configuration (includes autolog settings)</li>
</ul>
<hr>
<h2>Configuration</h2>
<h3>Config File Location</h3>
<ul>
<li>`~/.irssi/config` - Main configuration file</li>
</ul>
<ul>
<li>`~/.irssi/startup` - Startup commands</li>
</ul>
<ul>
<li>`~/.irssi/scripts/` - Script directory</li>
</ul>
<h3>Example Configuration</h3>
<pre><code># Auto-join channels
servers = (
{
address = &quot;irc.libera.chat&quot;;
chatnet = &quot;Libera&quot;;
port = &quot;6697&quot;;
use_ssl = &quot;yes&quot;;
autoconnect = &quot;yes&quot;;
}
);
chatnets = {
Libera = {
type = &quot;IRC&quot;;
autosendcmd = &quot;/^msg nickserv identify &lt;password&gt;; wait 2000&quot;;
};
};
channels = (
{ name = &quot;#channel&quot;; chatnet = &quot;Libera&quot;; autojoin = &quot;yes&quot;; }
);
settings = {
&quot;core&quot; = {
real_name = &quot;Your Name&quot;;
user_name = &quot;username&quot;;
nick = &quot;YourNick&quot;;
alternate_nick = &quot;YourNick_&quot;;
};
};</code></pre>
<hr>
<h2>Tips</h2>
<ul>
<li>Use /help &lt;command&gt; for command help</li>
</ul>
<ul>
<li>Use /alias to create shortcuts for frequent commands</li>
</ul>
<ul>
<li>Use /bind to customize key bindings</li>
</ul>
<ul>
<li>Enable autolog to keep chat history</li>
</ul>
<ul>
<li>Use window navigation (Alt+number) for efficient multitasking</li>
</ul>
<ul>
<li>Use /whois to check user information</li>
</ul>
<ul>
<li>Use /ignore to ignore annoying users</li>
</ul>
<ul>
<li>Scripts can extend functionality significantly</li>
</ul>
<ul>
<li>Use Ctrl+X Ctrl+X to switch between windows</li>
</ul>
<ul>
<li>Configure auto-join channels in config file</li>
</ul>
<ul>
<li>Use SSL/TLS for secure connections (port 6697)</li>
</ul>
<ul>
<li>Use /save after making changes</li>
</ul>
<ul>
<li>Create separate windows for different channels</li>
</ul>
<ul>
<li>Use /window close to clean up unused windows</li>
</ul>
<hr>
<p><a href="index.html">← Back to cheatsheets</a></p>
<p><a href="../index.html">← Home</a></p>
</div>
</div>
</div>
</div>
<script async type="text/javascript" src="../blog/analytics.js"></script>
<script src="../theme.js"></script>
</body>
</html>