Beispiel #1
0
int main(int argc, char *argv[])
{
  int use_colour = isatty(1);

  int opt;
  while((opt = getopt(argc, argv, "c")) != -1) {
    switch(opt) {
      case 'c': use_colour = 1; break;
    }
  }

  const char *file = argv[optind++];

  int fd;
  if(!file || streq(file, "-"))
    fd = 0; // stdin
  else {
    fd = open(file, O_RDONLY);
    if(fd == -1) {
      fprintf(stderr, "Cannot open %s - %s\n", file, strerror(errno));
      exit(1);
    }
  }

  if(use_colour) {
    special_begin = "\x1b[7m{";
    special_end   = "}\x1b[m";
  }

  /* Size matters not for the parser */
  VTerm *vt = vterm_new(25, 80);
  vterm_set_utf8(vt, 1);
  vterm_parser_set_callbacks(vt, &parser_cbs, NULL);

  int len;
  char buffer[1024];
  while((len = read(fd, buffer, sizeof(buffer))) > 0) {
    vterm_input_write(vt, buffer, len);
  }

  printf("\n");

  close(fd);
  vterm_free(vt);

  return 0;
}
Beispiel #2
0
TermView::~TermView()
{
	vterm_free(fTerm);
}
Beispiel #3
0
void vterm_deinit(vterm_state_t *s)
{
    assert(s && s->magic == VTERM_MAGIC);
    vterm_free(s->vt);
    memset(s, 0, sizeof(vterm_state_t));
}
Beispiel #4
0
void term_free(struct aug_term *term) {
	vterm_free(term->vt);
	AUG_LOCK_FREE(term);
}