From ea99ee68a02bfe068a49338f2db6a0c37162d892 Mon Sep 17 00:00:00 2001 From: Mikaela Suomalainen Date: Wed, 9 Mar 2016 09:48:06 +0200 Subject: [PATCH] blog: 2016-03-09-weechat-tmux-quickstart.md --- _posts/2016-03-09-weechat-tmux-quickstart.md | 123 +++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 _posts/2016-03-09-weechat-tmux-quickstart.md diff --git a/_posts/2016-03-09-weechat-tmux-quickstart.md b/_posts/2016-03-09-weechat-tmux-quickstart.md new file mode 100644 index 0000000..a5938f8 --- /dev/null +++ b/_posts/2016-03-09-weechat-tmux-quickstart.md @@ -0,0 +1,123 @@ +--- +layout: post +comments: true +title: "Short quickstat on tmux & WeeChat for GUIless support" +category: [english] +tags: [english, irc, tmux] +--- + +*Sometimes you don't have GUI when you need remote support, luckily you + don't need it even if you have only one device.* + +## What is what? + +* Tmux is terminal multiplexer which allows you to have "multiple + terminals" in one terminal. You can also detach it which means returning + to the terminal where you ran tmux leaving tmux and everything there + running and later return to it. +* WeeChat is popular text based IRC client. + +## Installing things + +*Note: WeeChat has multiple optional depedencies, but I am only listing + the most important ones (I will return to it later) unless they are all + in one package.* + +* Arch & deriatives: + * `sudo pacman --needed -S tmux weechat perl gpm pastebinit` +* Debian & deriatives: + * `sudo apt-get install weechat-curses weechat-plugins gpm pastebinit` + +## tmux + +Just run `tmux` and you will find yourself in a new shell, but with tmux +bar on the bottom where you see open "windows". + +Basic navigation: + +*Note: Tmux users ctrl + b by default instead of ctrl + a as it was + developed in screen. That can be changed with tmux.conf (check further + reading after WeeChat). + +* Ctrl + b + c = new "window" +* Ctrl + b + number = move to "window" number +* Ctrl + b + x = kill "window" +* Ctrl + b + w = interactive "window" selection +* Ctrl + b + d = detach tmux (return with `tmux attach`) + +## WeeChat + +Time to finally go to IRC. Go to tmux first and there run `weechat` (or +if your distribution has ancient version of WeeChat, `weechat-curses`, but +in that case you should upgrade (if your distribution is +[Debian/Ubuntu/Raspbian, use this repository](https://weechat.org/download/debian/))). + +WeeChat welcomes you and suggests you to read at least the quickstart +guide and recommends reading user's guide too, but in this case we +can skip those. + +First we must connect to the network where the support channel of our +distribution is. + +1. Add the network to WeeChat. + * freenode: `/server add freenode chat.freenode.net/6697 -ssl -autoconnect` +2. Connect there. + * `/connect freenode` +3. Join the channel of your distribution. + * `/join #distribution` + * you can also join multiple channels at once by separating them by + commas e.g. `/join #channel,#channel2`. + +You might want to have friendly channel listing and be able to click the +channels with mouse? That is why you installed perl and gpm (you might +need to `sudo systemctl start gpm` or whatever init system you use). + +1. `/script install buffers.pl` +2. `/mouse enable` + +Now you should see bar with the core buffer (`weechat`), server buffers +merged to it (`freenode`) and `#distribution`. If mouse doesn't work, you +can `/buffer X` where X is the number to move. For moving between merged +buffers move to the buffer and press Ctrl + x. + +And the last thing, if you need to see just plain lines without +sidebars or anything, press `alt + l` (`alt` can be replaced with `esc`). + +## pastebinit + +You are often wanted to pastebin something which can be difficult without +GUI. Luckily there is pastebinit which you can use instead of typing +everyting by hand. + +Usage: + +* `pastebinit file.txt` to pastebin the content of `file.txt` +* `dmesg | pastebinit` to pastebin output of `dmesg` + +Pastebinit replies by givig you address to the paste which you can then +give to IRC. + +Alternatives to pastebinit with some pastebins: + +* [ix.io](http://ix.io/): `command | curl -F 'f:1=<-' ix.io` +* [sprunge.us](http://sprunge.us/): `command | curl -F 'sprunge=<-' http://sprunge.us` + +These also answer by giving you link to the paste. + +## Further reading + +* tmux + * [my ~/.tmux/tmux.conf](https://github.com/Mikaela/shell-things/blob/master/conf/tmux.conf) + * [TMUX – The Terminal Multiplexer (Part 1) | Hawk Host Blog](http://blog.hawkhost.com/2010/06/28/tmux-the-terminal-multiplexer/) + * [TMUX – The Terminal Multiplexer (Part 2) | Hawk Host Blog](http://blog.hawkhost.com/2010/07/02/tmux-%E2%80%93-the-terminal-multiplexer-part-2/) + * `man tmux` +* WeeChat + * [WeeChat documentation index (multiple languages)[https://weechat.org/doc/) + * [Quick Start guide](https://weechat.org/files/doc/stable/weechat_quickstart.en.html) + * [User's guide](https://weechat.org/files/doc/stable/weechat_user.en.html) + * [FAQ](https://weechat.org/files/doc/weechat_faq.en.html) + * [My IRC page](https://mikaela.info/irc/) + * At the time of writing there are two posts about WeeChat. +* pastebinit + * [pastebinit homepage](https://www.stgraber.org/category/pastebinit/) + * `man pastebinit`