Di recente ho imparato C e voglio iniziare un progetto per consolidare le mie conoscenze. Ho deciso di creare un editor di testo molto semplice, qualcosa come Vim. Il problema che devo affrontare è che non ho davvero idea di come funzioni un editor di testo e non so cosa cercare su Google per scoprirlo.
Cercare su Google ha portato al repository GitHub di vim, che è inutile per me perché la base di codice è enorme e il codice mi confonde. Ho anche trovato tutorial per creare un editor di testo in C che funzioni in qualche modo come vim.
Anche se ho pensato di seguire i tutorial, mi sembra di imbrogliare. In che modo gli sviluppatori di Vim hanno capito come codificare Vim senza tutorial specifici? O sono partiti da editor di testo più semplici? Come l'hanno capito solo dalla conoscenza delle lingue e della loro documentazione?
Di cosa ho bisogno esattamente per iniziare a scrivere questo editor di testo senza seguire direttamente un tutorial? Un altro esempio che mi piace pensare è: in che modo Dennis Ritchie e Ken Thompson hanno codificato Unix? Ho un'idea di come funzioni il sistema operativo, ma non ho idea di come inserirlo nel codice. Cosa mi manca? Come trasferisco questa conoscenza della lingua in un uso effettivo e pratico?