コード例 #1
0
ファイル: tweakterm.c プロジェクト: AtomSoftTech/retrobsd
int main(int argc, char **argv)
{
  if (argc < 2)
    return -1;
  if (strcmp(argv[1], "set") == 0)
    setTerm();
  if (strcmp(argv[1], "restore") == 0)
    restoreTerm();

  return 0;
}
コード例 #2
0
ファイル: tweakterm.c プロジェクト: crcx/retro-language
int main(int argc, char **argv)
{
  if (argc < 2)
    return -1;
  if (strcmp(argv[1], "--set") == 0)
    setTerm();
  if (strcmp(argv[1], "--restore") == 0)
    restoreTerm();
  if (strcmp(argv[1], "--help") == 0)
  {
    printf("terminal tweaks\n");
    printf("--set       set non-buffered keyboard input\n");
    printf("--restore   revert to default settings\n");
  }

  return 0;
}
コード例 #3
0
ファイル: file.c プロジェクト: AtomSoftTech/retrobsd
exitCmd(int argc, char **argv)
{
char *arg;
fileStruct *fs;
int mode=0;

    if( argc > 2 )
	goto INVALID;
    arg = argv[1];
    if( argc > 1 )
	{	/* Precheck arg */
	if( strncasecmp(arg, "nosave", strlen(arg)) == 0 )
            ;   /* Don;t save any files */
        else if( strcasecmp(arg, "abort") == 0 )
            ;   /* Don't save files or write init */
        else if( strcasecmp(arg, "stop") == 0 )
	    ;   /* Suspend */
	else
	    {	/* Invalid */
INVALID:
	    dingMsg("exit [nosave|abort|stop]");
	    updateCursor(globalData.activeWindow);
	    return(0);
	    }
	}
    /* Go thru all files that have been touched and save as necessary */
    printf("\033[2J\033[1;1H\n\r");
    restoreTerm();
    globalData.mode = 0;	/* So emsg just prints */

    if( argc > 1 )
	{
        if( strncasecmp(arg, "nosave", strlen(arg)) == 0 )
            mode = 1;
        else if( strncasecmp(arg, "abort", strlen(arg)) == 0 )
            goto SKIP;
	else if( strcasecmp(arg, "stop") == 0 )
	    {
	    /* Can't seem to get timing right to restore the screen */
	    restoreTerm();
	    printf("\n");   /* Force a flush for restore screen */
	    sleep(1);
	    kill(getpid(), SIGSTOP);
	    sleep(1);
	    setupTerm();
	    globalData.mode = 1;
	    redrawScreen();
	    return(0);
	    }
	}
    writeStartup();
    if( mode == 1)
        goto SKIP;
    for(fs=globalData.fileList; fs; fs=fs->next)
	{
	if( fs->ro )
	    printf("Read only %s\n", fs->fileName);
	else if( fs->modified && !fs->nosave )
	    {
	    printf("Saving %s\n", fs->fileName);
	    if( fs->backupWritten == 0 && fs->created == 0)
		writeBackup(fs);
	    writeFile(fs, fs->fileName, 0);
	    }
	}
SKIP:
    exit(0);
}