toybox/toys/pending/vi.c
<<
>>
Prefs
   1/* vi.c - You can't spell "evil" without "vi".
   2 *
   3 * Copyright 2015 Rob Landley <rob@landley.net>
   4 *
   5 * See http://pubs.opengroup.org/onlinepubs/9699919799/utilities/vi.html
   6
   7USE_VI(NEWTOY(vi, "<1>1", TOYFLAG_USR|TOYFLAG_BIN))
   8
   9config VI
  10  bool "vi"
  11  default n
  12  help
  13    usage: vi FILE
  14
  15    Visual text editor. Predates the existence of standardized cursor keys,
  16    so the controls are weird and historical.
  17*/
  18
  19#define FOR_vi
  20#include "toys.h"
  21
  22GLOBALS(
  23  struct linestack *ls;
  24  char *statline;
  25)
  26
  27struct linestack_show {
  28  struct linestack_show *next;
  29  long top, left;
  30  int x, width, y, height;
  31};
  32
  33// linestack, what to show, where to show it
  34void linestack_show(struct linestack *ls, struct linestack_show *lss)
  35{
  36  return;
  37}
  38
  39void vi_main(void)
  40{
  41  int i;
  42
  43  if (!(TT.ls = linestack_load(*toys.optargs)))
  44    TT.ls = xzalloc(sizeof(struct linestack));
  45 
  46  for (i=0; i<TT.ls->len; i++)
  47    printf("%.*s\n", (int)TT.ls->idx[i].len, (char *)TT.ls->idx[i].ptr);  
  48}
  49