mirror of
https://github.com/mikaela/mikaela.github.io/
synced 2024-12-25 04:32:43 +01:00
blog: 2016-03-09-weechat-tmux-quickstart.md
This commit is contained in:
parent
52556ebd62
commit
ea99ee68a0
123
_posts/2016-03-09-weechat-tmux-quickstart.md
Normal file
123
_posts/2016-03-09-weechat-tmux-quickstart.md
Normal file
@ -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`
|
Loading…
Reference in New Issue
Block a user