Domanda

Ho un programma che utilizza un terminale in modalità raw e voglio spostare il cursore. Dove posso trovare la sequenza di escape per questo e come posso inviarlo al terminale da dentro il mio programma c?

Ecco quello che ho attualmente:

char code[4];
code[0] = 27;
code[1] = 91;
code[2] = '*';
code[3] = 'D';
write(1, code, 4);
È stato utile?

Soluzione

Se si desidera che il controllo dello schermo pieno, quindi si dovrebbe guardare il ncurses biblioteca . Si tratta di una semplice libreria per console programmi a schermo intero che contiene tra le altre cose

  • posizionamento schermata di testo
  • Uso della tastiera completa inclusi i tasti funzione, inserimento / cancellazione etc
  • L'uso di attributi per la colorazione, evidenziando di testi etc

Altri suggerimenti

Si desidera utilizzare termcap per ottenere queste informazioni, in quanto varia, a seconda di cosa tipo di terminale dell'utente è a.

Vorrei suggerire di guardare duro al maledizioni o ncurses librerie, e prevede di utilizzare uno o l'altro, piuttosto che rotolare il proprio. L'obiettivo è di utilizzare il terminfo sistema delle descrizioni terminali piuttosto che il più vecchio sistema termcap . Vedere anche i libri O'Reilly " TERMCAP e terminfo " e il mio titolo preferito (soprattutto perché mi sembra di spendere un sacco di tempo imprecazioni durante la programmazione) " Progamming maledizioni ". (Tuttavia, quel libro è antica - 1986 - e ci sono altri libri più recenti, sullo stesso argomento che probabilmente sarebbe scelte migliori;. Amo ancora il titolo, però)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top