Best of All Possible Worlds, stackers + tiling urxvt

User avatar
DebianJoe
Frame Buffer
Posts: 1915
Joined: Mon Jul 01, 2013 5:41 am
Location: emacs.d

Best of All Possible Worlds, stackers + tiling urxvt

Unread post by DebianJoe » Sat Jul 06, 2013 2:57 pm

I do things like I do things without regard for how anyone else feels about it. For the past little while, I've been using cwm as my wm, because it's really a great little stacking WM. I like stackers. Everything that I want tiling in, is cli-based (emacs -nw, because emacs with X is bloat...and I can make a pretty mean IDE with a few terminal windows and emacs.)

So, I use a menu option for cwm to launch urxvt with tmux already booted up. Just append into your .cwmrc

Code: Select all

command tmux+urxvt                "urxvt -e tmux"
to get the awesome right-clickable terminal-launching monstrosity.

You can set the size of urxvt through .Xresources via geometry (which will need to be sourced via .xinitrc on boot to create a nice, seamless boot) so that when you go to use it, it can be close to fullscreen. Since I'm doing this in X, I figure I might as well use the mouse for something, so I tricked out my tmux to allow me to click from window to window and have mouse-draggable borders:

Code: Select all

#Joe's Tmux Config
 
# Set the prefix to ^A.
unbind C-b
set -g prefix ^A
bind a send-prefix
 
# panes
set -g mouse-select-pane on
set -g pane-border-fg black
set -g pane-active-border-fg cyan
# resize panes with mouse (drag borders)
set -g mouse-select-pane on
set -g mouse-resize-pane on
 
# screen ^C c 
unbind ^C
bind ^C new-window
unbind c
bind c new-window
 
# detach ^D d
unbind ^D
bind ^D detach
 
# displays * 
unbind *
bind * list-clients
 
# next ^@ ^N sp n 
unbind ^@
bind ^@ next-window
unbind ^N
bind ^N next-window
unbind " "
bind " " next-window
unbind n
bind n next-window
 
# title A
unbind A
bind A command-prompt "rename-window %%"
 
# other ^A
unbind ^A
bind ^A last-window
 
# prev ^H ^P p ^? 
unbind ^H
bind ^H previous-window
unbind ^P
bind ^P previous-window
unbind p
bind p previous-window
unbind BSpace
bind BSpace previous-window
 
# windows ^W w 
unbind ^W
bind ^W list-windows
unbind w
bind w list-windows
 
# quit \ 
unbind '\'
bind '\' confirm-before "kill-server"
 
# kill K k 
unbind K
bind K confirm-before "kill-window"
unbind k
bind k confirm-before "kill-window"
 
# redisplay ^L l 
unbind ^L
bind ^L refresh-client
unbind l
bind l refresh-client
 
# split -v |
unbind |
bind | split-window
 
# :kB: focus up
unbind Tab
bind Tab select-pane -t:.+
unbind BTab
bind BTab select-pane -t:.-
 
# " windowlist -b
unbind '"'
bind '"' choose-window
I use a bunch of GNU/screen styled hotkeys, because that's what I'm used to using, but you can use whatever makes you happy. I guess that if you suck, you can use dvtm by using the "urxvt -e dvtm" instead of tmux. Tmux is better, though, and you can use (C^a M^5) to make it auto-tile, or drag the boarders around, or use the splits (C^a [M^% or M^|}) to break it up however you need for a particular purpose.

I know, I know. Tmux is bloat, X is bloat, and .xinit is bloat....but this is the best way I've found to get all of the sweet functionality that I'd use in dwm, but without having to rebuild everything every time I want to change something.

Screenshots of nothingness: The Suck is Left, the Awesome is Right. Choose wisely.
Image
|>>BBQ Roaster, Alpha Branch<< | >> clinky << | >> X11 must die << |
Thanks BASIC

User avatar
dkeg
Configurator
Posts: 3782
Joined: Sun Nov 18, 2012 9:23 pm
Location: Mid-Atlantic Grill

Re: Best of All Possible Worlds, stackers + tiling urxvt

Unread post by dkeg » Sat Jul 06, 2013 4:10 pm

nice write up, a bit similar to my current setup, however i'm using i3 as a mix of stack and tile. that is why I like i3, the simplicity to go back and forth easily b/t float and tile, along with the abilty to set specific applications to start as float or tile. In my .xinitrc I start urxvtd

Code: Select all

urxvtd -q -o -f
and subsequently autostart urxvtc in the i3 config.

Code: Select all

exec --no-startup-id urxvtc -g 84x55+40+55
exec --no-startup-id urxvtc -g 84x55+805+55 -e tmux
I wouldn't call tmux bloat, no more than conky :), but for me tmux can be useful at times. currently I run urxvt in float mode autostarting 2 at boot, one running tmux, the other mutt. It may not make sense, but for me it works.

Image]

Work hard; Complain less

User avatar
DebianJoe
Frame Buffer
Posts: 1915
Joined: Mon Jul 01, 2013 5:41 am
Location: emacs.d

Re: Best of All Possible Worlds, stackers + tiling urxvt

Unread post by DebianJoe » Sat Jul 06, 2013 4:43 pm

dkeg wrote:I wouldn't call tmux bloat, no more than conky :)
<< does not use Conky.

No, I agree that tmux's usefulness far exceeds its status as bloat, I meant that as a bit of a joke.

When you're doing Python scripting, and in one window you have an interactive shell, an on-the-fly pep8 compliance check, auto-completion and colorized coding...and you're not running anything that isn't cli-based, then you're probably doing it in the most effective way possible.

In the other urxvt, you should be running tmux AGAIN, but with mutt (or wanderlust), irssi (or erc), mc (or dired), and a cli music player like moc/mpd+whatever client, and Newbeuter. You can never have too much text on the screen.
|>>BBQ Roaster, Alpha Branch<< | >> clinky << | >> X11 must die << |
Thanks BASIC

User avatar
dkeg
Configurator
Posts: 3782
Joined: Sun Nov 18, 2012 9:23 pm
Location: Mid-Atlantic Grill

Re: Best of All Possible Worlds, stackers + tiling urxvt

Unread post by dkeg » Sat Jul 06, 2013 4:54 pm

Good suggestion. Think I may do that. Currently i use a separate workspace for chatty stuff. But I see the logic here. All those other CLI goodies are already amongst my armory.

Work hard; Complain less

User avatar
wuxmedia
Grasshopper
Posts: 6445
Joined: Wed Oct 17, 2012 11:32 am
Location: Back in Blighty
Contact:

Re: Best of All Possible Worlds, stackers + tiling urxvt

Unread post by wuxmedia » Sat Jul 06, 2013 9:05 pm

i'm tmuxed up. the best thing. - tmux attach
i run a 'server' 24/7 this is hooked up to my mates server (proper server) when i suspend or whatever, obviously pipe gets broken, so i ssh in again, re-attach. lovely.

infact - you've reminded me to get rid of the damn ubuntu server, god knows why i installed it, i forgave it randomly changing eth0 to eth1 one day. but it takes less time to log in to the computer in the UK than it does to login upstairs... and all the datas off the boot disk.
i was thinking a wheezy netinstall.. plus some things?
"Seek, and Ye shall find"
"Github | Chooons | Site"

User avatar
DebianJoe
Frame Buffer
Posts: 1915
Joined: Mon Jul 01, 2013 5:41 am
Location: emacs.d

Re: Best of All Possible Worlds, stackers + tiling urxvt

Unread post by DebianJoe » Sun Jul 07, 2013 3:51 pm

That sounds like a good plan wux. *buntu isn't exactly known for being "non-buggy", so why it's so popular for servers is beyond me...

Anyhow, tmux might be one of my favorite tools. I would be in a sad state of affairs if I ever actually had to work without it. Honestly, if it was dropped by the devs for it, I'd pick it up JUST to make sure that someone was keeping it maintained. I'd hate to be forced to go back to gnuscreen now.

Image
^^tmux for Scheme is another place where it really shines. I've not set my emacs up to handle live interpretation of scheme yet, so having guile open right next to the editor is just too useful.
|>>BBQ Roaster, Alpha Branch<< | >> clinky << | >> X11 must die << |
Thanks BASIC

User avatar
wuxmedia
Grasshopper
Posts: 6445
Joined: Wed Oct 17, 2012 11:32 am
Location: Back in Blighty
Contact:

Re: Best of All Possible Worlds, stackers + tiling urxvt

Unread post by wuxmedia » Sun Jul 07, 2013 5:02 pm

DJ wrote:so why it's so popular for servers is beyond me...
probably only because the release name is 'ubuntu server' 8)
at least i was dumb enough to go for it.
should have stuck to the old #! install. 8)
"Seek, and Ye shall find"
"Github | Chooons | Site"

Post Reply