The checksum is so that people don't make copy/paste errors or try to tweak the 
layout manually and crash tmux.

-------- Original message --------
From: Steven Lu <stevenlu...@gmail.com> 
Date:22/11/2014  10:20  (GMT+01:00) 
To: Felix Rosencrantz <f.rosencra...@gmail.com> 
Cc: tmux-users <tmux-users@lists.sourceforge.net>,Thomas Adam 
<tho...@xteddy.org> 
Subject: Re: Reverse-Engineering Layout Format 

I have not had a chance to dig into this code yet but I do agree that there is 
a large amount of untapped potential in this functionality and that can only be 
helped by making it easier to interface with. 

I can see that a set of even not very intelligent layout mutating scripts 
should be able to improve usable screen real-estate by a large factor, by 
effectively blurring the line between panes and windows by just auto-expanding 
the focused pane, letting unfocused panes get smaller but still remain visible. 
It helps that all terminal programs I have used (with few exceptions, such as 
man pages) are rather robust to resizing, because we would now be resizing on 
pane changes!

Anyway, I think the simple fact that it's possible at all to do such 
interfacing is 90% of the engineering work, so hats off to whoever decided to 
put this capability into the design. 
On Sat, Nov 22, 2014 at 3:10 AM Felix Rosencrantz <f.rosencra...@gmail.com> 
wrote:
I've wondered why is the checksum needed?  It seems like it would be easier for 
tmux users to write simple tools to tweak a custom layout without the checksum 
being there.  As best I can tell from a comment in the code, it is a quick way 
to check if a layout is valid. I'm not familiar enough with the format or its 
issues, is checking the validity something that is hard to do from code without 
the checksum?  

It seems like it would be useful to have a simpler format, perhaps not as 
flexible as the current format, but one that was easier to parse, and validate. 
 For example, one that just took pane_ids and used the same grouping via the 
braces and brackets like the current custom layout to build the cells 
structure, evenly distributing space among the child cells of a parent.  Less 
control of pane placement, but easier to create more complicated patterns than 
the defaults.

-FR.



On Wed, Nov 19, 2014 at 10:24 AM, Steven Lu <stevenlu...@gmail.com> wrote:
Hi Thomas, thanks for the hint!

layout-custom.c reveals a lot of things, I am now imagining that if I can 
properly replicate the computation of the layout string along with the checksum 
then I'll actually be able to do processing independent of mutating the pane 
sizes within tmux, so that i can e.g. resize a particular pane to make it 
bigger and then apply that change in one fell swoop by feeding a brand new 
layout string. 

I just wanted to know if this is actually how you have designed the 
"select-layout" command to work. 

I was taking a quick look at the source code (just poking around on github) but 
it's strange that I cannot find the actual declaration for "struct 
layout_cell"...

On Sat Jul 27 2013 at 7:28:43 AM Thomas Adam <tho...@xteddy.org> wrote:
On 15 July 2013 23:06, Steven Lu <stevenlu...@gmail.com> wrote:
> 3: zsh  (1 panes) [274x76] [layout cc63,274x76,0,0,6] @3
> 4: zsh  (1 panes) [274x76] [layout cc65,274x76,0,0,8] @4
>
> I'm hoping someone in the know could give me some hints about how to parse
> this so that I can compute what the result would be to warp any pane to one
> of the directions.

You need to look in layout-custom.c

-- Thomas Adam

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
tmux-users mailing list
tmux-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tmux-users


------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
tmux-users mailing list
tmux-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tmux-users

Reply via email to