about summary refs log tree commit diff stats
path: root/commander.tlv
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2022-03-14 17:26:13 -0700
committerKartik K. Agaram <vc@akkartik.com>2022-03-14 17:26:13 -0700
commit5e976554dd933842b46eeb8a8e451b9fd3d4cabe (patch)
tree8200d0254b068b87f53d9dbe2e3948e1c5da7d1f /commander.tlv
parent6f5f6849dd1550f0ae91c32cc442b6f0b518b8ea (diff)
downloadteliva-5e976554dd933842b46eeb8a8e451b9fd3d4cabe.tar.gz
drop the lfs library
I can't feel confident about its sandboxing story yet. And if we can't
build a file navigator, what are we even doing with it.
Diffstat (limited to 'commander.tlv')
-rw-r--r--commander.tlv117
1 files changed, 0 insertions, 117 deletions
diff --git a/commander.tlv b/commander.tlv
deleted file mode 100644
index e6854fc..0000000
--- a/commander.tlv
+++ /dev/null
@@ -1,117 +0,0 @@
-# .tlv file generated by https://github.com/akkartik/teliva
-# You may edit it if you are careful; however, you may see cryptic errors if you
-# violate Teliva's assumptions.
-#
-# .tlv files are representations of Teliva programs. Teliva programs consist of
-# sequences of definitions. Each definition is a table of key/value pairs. Keys
-# and values are both strings.
-#
-# Lines in .tlv files always follow exactly one of the following forms:
-# - comment lines at the top of the file starting with '#' at column 0
-# - beginnings of definitions starting with '- ' at column 0, followed by a
-#   key/value pair
-# - key/value pairs consisting of '  ' at column 0, containing either a
-#   spaceless value on the same line, or a multi-line value
-# - multiline values indented by more than 2 spaces, starting with a '>'
-#
-# If these constraints are violated, Teliva may unceremoniously crash. Please
-# report bugs at http://akkartik.name/contact
-- __teliva_timestamp: original
-  str_helpers:
-    >-- some string helpers from http://lua-users.org/wiki/StringIndexing
-    >
-    >-- index characters using []
-    >getmetatable('').__index = function(str,i)
-    >  if type(i) == 'number' then
-    >    return str:sub(i,i)
-    >  else
-    >    return string[i]
-    >  end
-    >end
-    >
-    >-- ranges using (), selected bytes using {}
-    >getmetatable('').__call = function(str,i,j)
-    >  if type(i)~='table' then
-    >    return str:sub(i,j)
-    >  else
-    >    local t={}
-    >    for k,v in ipairs(i) do
-    >      t[k]=str:sub(v,v)
-    >    end
-    >    return t:concat()
-    >  end
-    >end
-    >
-    >-- iterate over an ordered sequence
-    >function q(x)
-    >  if type(x) == 'string' then
-    >    return x:gmatch('.')
-    >  else
-    >    return ipairs(x)
-    >  end
-    >end
-    >
-    >-- insert within string
-    >function string.insert(str1, str2, pos)
-    >  return str1:sub(1,pos)..str2..str1:sub(pos+1)
-    >end
-    >
-    >function string.remove(s, pos)
-    >  return s:sub(1,pos-1)..s:sub(pos+1)
-    >end
-    >
-    >-- TODO: backport utf-8 support from Lua 5.3
-- __teliva_timestamp: original
-  menu:
-    >-- To show app-specific hotkeys in the menu bar, add hotkey/command
-    >-- arrays of strings to the menu array.
-    >menu = {}
-- __teliva_timestamp: original
-  Window:
-    >Window = curses.stdscr()
-- __teliva_timestamp: original
-  render:
-    >function render(window)
-    >  window:clear()
-    >  for f in lfs.dir('.') do
-    >    if f ~= '.' and f ~= '..' then
-    >      local attr = lfs.attributes(f)
-    >      print(f, attr.permissions, attr.size, attr.access, attr.modification)
-    >    end
-    >  end
-    >  window:refresh()
-    >end
-- __teliva_timestamp: original
-  update:
-    >function update(window)
-    >  local key = window:getch()
-    >  -- process key here
-    >end
-- __teliva_timestamp: original
-  init_colors:
-    >function init_colors()
-    >  for i=0,7 do
-    >    curses.init_pair(i, i, -1)
-    >  end
-    >  curses.init_pair(8, 7, 0)
-    >  curses.init_pair(9, 7, 1)
-    >  curses.init_pair(10, 7, 2)
-    >  curses.init_pair(11, 7, 3)
-    >  curses.init_pair(12, 7, 4)
-    >  curses.init_pair(13, 7, 5)
-    >  curses.init_pair(14, 7, 6)
-    >  curses.init_pair(15, -1, 15)
-    >end
-- __teliva_timestamp: original
-  main:
-    >function main()
-    >  init_colors()
-    >
-    >  while true do
-    >    render(Window)
-    >    update(Window)
-    >  end
-    >end
-- __teliva_timestamp: original
-  doc:blurb:
-    >beginnings of a file browser..