VE7YQMQYCRL77YOFEXFXJXL7VPE6FIEBBJ6KLFZHDWDAKOLMLOUQC
A4P533SA6BUSROFCLHJTBYKU6JJWLJD45OKWWL5NJ2XMO2TZC4YAC
ZU3HJ6NH26LFY2NWRCCRMXECNEPVR25OJNOFEK5XJ3KYFJUCKQXAC
I46AJ2J35CDUUTRGKJAEANZIIOAR63ZKT3LMEPXNLNV54YXL6TNAC
OTIBCAUJ3KDQJLVDN3A536DLZGNRYMGJLORZVR3WLCGXGO6UGO6AC
6ES5YSRTVOMR5NJD3S5HEKX57KM66P7JPIIGYZI2NVIUHNGHTNJQC
YGCT2D2ORMLTBHANLGHZV3EBGGHD7ZK55UAM7HF2AVSHDXAAKK5QC
FSB2WPQUW4QF3FYLHKFD6I7XCQXC2PEFI6HITTMGQL4QK4IQ2E4AC
CUWL2BKJQK75DML6KOE6EGMYUXHSMVSIIKP4SII4NSIOZO2EASGQC
TKAKGUAQBDJWK6DPAQC4JJYCAJFVCWNJMKBJIRDH2M3BGEZNSENAC
TBRTM3AARI73LHUKOGIT66J5T3UTXQPJFLVJW7ZEBPZCOXAOGIIQC
MHOUX5JFGBFYMOULX3NZA2JXH6PF2227DT54EEXLBUZQFO7NDI2AC
CVK6T5OZZPWGWZ4E2QQZKCOWZPC25EDWXZWLLTPBDDRGEQGADKNAC
GQBUV2XOMEPMTXMPCBQWGGIUXGQDX77VTGPFIG6YT7G64ASOYHXQC
5O356ZWY6DCM3Y6VFZPYQY5AIHIN6JGZDGLXU5DL6LWTFNDDFPFQC
function create_column(column_name)
if column_name == 'recently modified' then
command.recently_modified()
elseif string.match(column_name, '%S+ from %S+') then
local rel, start_id = string.match(column_name, '(%S+) from (%S+)')
initialize_cache_if_necessary(start_id)
local column = unroll_column(start_id, rel)
if column == nil then
-- something has changed from underneath us
-- unroll_column printed out an error
return
end
table.insert(Surface, column)
elseif string.match(column_name, 'neighbors of %S+') then
local start_id = string.match(column_name, 'neighbors of (%S+)')
initialize_cache_if_necessary(start_id)
local column = {name=('neighbors of %s'):format(start_id)}
table.insert(column, load_pane_from_file(start_id))
for rel,target in pairs(Cache[start_id].links) do
table.insert(column, load_pane_from_file(target))
end
table.insert(Surface, column)
elseif file_exists(Directory..column_name) then
command.open_file(column_name)
end
end
return
end
end
end
-- commands that create columns also need to be recreatable from a title
function create_column(column_name)
if column_name == 'recently modified' then
command.recently_modified()
elseif string.match(column_name, '%S+ from %S+') then
local rel, start_id = string.match(column_name, '(%S+) from (%S+)')
initialize_cache_if_necessary(start_id)
local column = unroll_column(start_id, rel)
if column == nil then
-- something has changed from underneath us
-- unroll_column printed out an error
end
table.insert(Surface, column)
elseif string.match(column_name, 'neighbors of %S+') then
local start_id = string.match(column_name, 'neighbors of (%S+)')
initialize_cache_if_necessary(start_id)
local column = {name=('neighbors of %s'):format(start_id)}
table.insert(column, load_pane_from_file(start_id))
for rel,target in pairs(Cache[start_id].links) do
table.insert(column, load_pane_from_file(target))