{"id":1154,"date":"2015-11-08T00:28:52","date_gmt":"2015-11-07T22:28:52","guid":{"rendered":"http:\/\/www.shukko.com\/x3\/?p=1154"},"modified":"2015-11-08T00:28:52","modified_gmt":"2015-11-07T22:28:52","slug":"weechat-ncurses-irc-client-quick-start-guide","status":"publish","type":"post","link":"https:\/\/www.shukko.com\/x3\/2015\/11\/08\/weechat-ncurses-irc-client-quick-start-guide\/","title":{"rendered":"weechat &#8211; ncurses irc client :: quick start guide"},"content":{"rendered":"<p>$ apt-get install weechat \ud83d\ude42<\/p>\n<p><a href=\"https:\/\/weechat.org\/files\/doc\/devel\/weechat_quickstart.en.html\">https:\/\/weechat.org\/files\/doc\/devel\/weechat_quickstart.en.html<\/a><\/p>\n<p>1. Start WeeChat<\/p>\n<p>A recommended terminal emulator for X (but not mandatory) is rxvt-unicode (it has good UTF-8 support, and no problem with default keyboard bindings).<\/p>\n<p>Run from your shell:<\/p>\n<p>$ weechat<\/p>\n<p>2. Online help \/ options<\/p>\n<p>WeeChat has help for all commands, just issue:<\/p>\n<p>\/help<\/p>\n<p>To get help on a specific command, issue:<\/p>\n<p>\/help command<\/p>\n<p>To set options, issue:<\/p>\n<p>\/set config.section.option value<\/p>\n<p>(where config is configuration name (weechat for core, or a plugin name), section the section of this configuration and option the option name).<\/p>\n<p>WeeChat immediately uses the new value (you never need to restart WeeChat after changes to configuration).<\/p>\n<p>You can use \/set option with partial name and wildcard &#8220;*&#8221; at the beginning or end to display all options containing letters. For example:<\/p>\n<p>    display all options (WeeChat and plugins):<\/p>\n<p>\/set<\/p>\n<p>    display WeeChat options:<\/p>\n<p>\/set weechat.*<\/p>\n<p>    display IRC plugin options:<\/p>\n<p>\/set irc.*<\/p>\n<p>You can display help for an option with \/help, for example:<\/p>\n<p>\/help weechat.look.highlight<\/p>\n<p>All settings are saved when WeeChat ends (or with \/save command to force a write of the options).<\/p>\n<p>You can edit configuration files (*.conf) by hand and reload them by \/reload command if you don\u2019t want to use \/set command.<br \/>\n3. Core vs plugins<\/p>\n<p>WeeChat &#8220;core&#8221; is only used to display data on screen and interact with the user, that means weechat core without plugins is useless (faithful users: IRC was part of core for versions \u2264 0.2.6).<\/p>\n<p>All network protocols like IRC are provided in separate plugins.<\/p>\n<p>Use the \/plugin command to list loaded plugins, you should see &#8220;irc&#8221; and other plugins in the list.<br \/>\n4. Add an IRC server<\/p>\n<p>You can add an IRC server with \/server command, for example:<\/p>\n<p>\/server add freenode chat.freenode.net<\/p>\n<p>As usual, help is available if you\u2019re lost:<\/p>\n<p>\/help server<\/p>\n<p>5. Set custom IRC server options<\/p>\n<p>WeeChat uses default values for all servers (&#8220;fall backs&#8221;), if you don\u2019t specify a specific value for a server option. These default options are &#8220;irc.server_default.*&#8221;.<\/p>\n<p>For each server option, WeeChat uses its value if it is defined (not &#8220;null&#8221;). Otherwise WeeChat uses default value (&#8220;irc.server_default.xxx&#8221;).<\/p>\n<p>For example there\u2019s default nicks (based on your un*x login), and you can override them for freenode server with following command:<\/p>\n<p>\/set irc.server.freenode.nicks &#8220;mynick,mynick2,mynick3,mynick4,mynick5&#8221;<\/p>\n<p>To set username and realname:<\/p>\n<p>\/set irc.server.freenode.username &#8220;My user name&#8221;<br \/>\n\/set irc.server.freenode.realname &#8220;My real name&#8221;<\/p>\n<p>To enable auto-connect to server at startup:<\/p>\n<p>\/set irc.server.freenode.autoconnect on<\/p>\n<p>To connect with SSL:<\/p>\n<p>\/set irc.server.freenode.addresses &#8220;chat.freenode.net\/7000&#8221;<br \/>\n\/set irc.server.freenode.ssl on<\/p>\n<p>If SASL is available on server, you can use it for authentication (you will be identified before you join channels):<\/p>\n<p>\/set irc.server.freenode.sasl_username &#8220;mynick&#8221;<br \/>\n\/set irc.server.freenode.sasl_password &#8220;xxxxxxx&#8221;<\/p>\n<p>To run a command after connection to server, for example to authenticate with nickserv (only if you don\u2019t use SASL for authentication):<\/p>\n<p>\/set irc.server.freenode.command &#8220;\/msg nickserv identify xxxxxxx&#8221;<\/p>\n<p>Note<br \/>\n\tMany commands in option command can be separated by ; (semi-colon).<\/p>\n<p>To auto-join some channels when connecting to server:<\/p>\n<p>\/set irc.server.freenode.autojoin &#8220;#channel1,#channel2&#8221;<\/p>\n<p>To remove a value of a server option, and use the default value instead, for example to use default nicks (irc.server_default.nicks):<\/p>\n<p>\/set irc.server.freenode.nicks null<\/p>\n<p>Other options: you can setup other options with following command (&#8220;xxx&#8221; is option name):<\/p>\n<p>\/set irc.server.freenode.xxx value<\/p>\n<p>6. Connect to IRC server and auto-join channels<\/p>\n<p>\/connect freenode<\/p>\n<p>Note<br \/>\n\tThis command can be used to create and connect to a new server without using \/server command (should I repeat you can see help for this command with \/help connect ?).<\/p>\n<p>By default, server buffers are merged with WeeChat core buffer. To switch between core buffer and server buffers, you can use ctrl+x.<\/p>\n<p>It is possible to disable auto merge of server buffers to have independent server buffers:<\/p>\n<p>\/set irc.look.server_buffer independent<\/p>\n<p>7. Join\/part IRC channels<\/p>\n<p>Join a channel:<\/p>\n<p>\/join #channel<\/p>\n<p>Part a channel (keeping buffer open):<\/p>\n<p>\/part [quit message]<\/p>\n<p>Close server or channel buffer (\/close is an alias for \/buffer close):<\/p>\n<p>\/close<\/p>\n<p>8. IRC private messages<\/p>\n<p>Open a buffer and send a message to another user (nick foo):<\/p>\n<p>\/query foo this is a message<\/p>\n<p>Close the private buffer:<\/p>\n<p>\/close<\/p>\n<p>9. Buffer\/window management<\/p>\n<p>A buffer is a component linked to a plugin with a number, a category, and a name. A buffer contains the data displayed on the screen.<\/p>\n<p>A window is a view on a buffer. By default there\u2019s only one window displaying one buffer. If you split screen, you will see many windows with many buffers at same time.<\/p>\n<p>Commands to manage buffers and windows:<\/p>\n<p>\/buffer<br \/>\n\/window<\/p>\n<p>(I\u2019ll not repeat here that you can get help with \/help on these commands)<\/p>\n<p>For example, to vertically split your screen into a small window (1\/3 width), and a large window (2\/3), use command:<\/p>\n<p>\/window splitv 33<\/p>\n<p>10. Key bindings<\/p>\n<p>WeeChat uses many keys by default. All these keys are in the documentation, but you should know at least some vital keys:<\/p>\n<p>    alt+\u2190\/\u2192 or F5\/F6: switch to previous\/next buffer<\/p>\n<p>    F7\/F8: switch to previous\/next window (when screen is split)<\/p>\n<p>    F9\/F10: scroll title bar<\/p>\n<p>    F11\/F12: scroll nicklist<\/p>\n<p>    Tab: complete text in input bar, like in your shell<\/p>\n<p>    PgUp\/PgDn: scroll text in current buffer<\/p>\n<p>    alt+a: jump to buffer with activity (in hotlist)<\/p>\n<p>According to your keyboard and\/or your needs, you can rebind any key to a command with \/key command. A useful key is alt+k to find key codes.<\/p>\n<p>For example, to bind alt+y to command \/buffer close:<\/p>\n<p>\/key bind (press alt-k) (press alt-y) \/buffer close<\/p>\n<p>You\u2019ll have a command line like:<\/p>\n<p>\/key bind meta-y \/buffer close<\/p>\n<p>To remove key:<\/p>\n<p>\/key unbind meta-y<\/p>\n<p>11. Plugins\/scripts<\/p>\n<p>On some distros like Debian, plugins are available via a separate package (like weechat-plugins). Plugins are automatically loaded when found (please look at the WeeChat documentation to load\/unload plugins or scripts).<\/p>\n<p>Many external scripts (from contributors) are available for WeeChat, you can download and install scripts from the repository with the \/script command, for example:<\/p>\n<p>\/script install iset.pl<\/p>\n<p>See \/help script for more info.<\/p>\n<p>A list of scripts is available in WeeChat with \/script or at this URL: https:\/\/weechat.org\/scripts<br \/>\n12. More documentation<\/p>\n<p>You can now use WeeChat and read FAQ\/documentation for any other questions: https:\/\/weechat.org\/doc<\/p>\n<p>Enjoy using WeeChat!<br \/>\nVersion 1.4-dev<br \/>\nLast updated 2015-06-10 23:21:25 CEST<\/p>\n","protected":false},"excerpt":{"rendered":"<p>$ apt-get install weechat \ud83d\ude42 https:\/\/weechat.org\/files\/doc\/devel\/weechat_quickstart.en.html 1. Start WeeChat A recommended terminal emulator for X (but not mandatory) is rxvt-unicode (it has good UTF-8 support, and no problem with default keyboard bindings). Run from your shell: $ weechat 2. Online help \/ options WeeChat has help for all commands, just issue: \/help To get help [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1154","post","type-post","status-publish","format-standard","hentry","category-kategerisiz"],"_links":{"self":[{"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/posts\/1154","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/comments?post=1154"}],"version-history":[{"count":1,"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/posts\/1154\/revisions"}],"predecessor-version":[{"id":1155,"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/posts\/1154\/revisions\/1155"}],"wp:attachment":[{"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/media?parent=1154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/categories?post=1154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shukko.com\/x3\/wp-json\/wp\/v2\/tags?post=1154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}