Cocoa: Terminal API

Tråden skapades och har fått 5 svar. Det senaste inlägget skrevs .
1

Hej.

Jag har nyligen börjat lära mig Cocoa programmering och har väl precis kommit över den svåra biten. Nu förstår jag sammanhanget mellan allt, men behöver bara sätta mig med något roligt projekt och lära mig om alla metoder steg för steg.

Jag hade tänkt mig att koda en ny form av Terminal till OS X, men frågan är hur jag bäst gör det. Har Terminal någon form av API eller enkelt sätt som man kan implementera det i mitt Cocoa projekt? Så att jag har allt det grundläggande med från start. Eller måste jag koda en egen själv?

Det finns ingen färdig terminal i Cocoa men vill du exekvera unix kommandon så använder du lämpligast NSTask. Se t.ex http://www.cocoadev.com/index.pl?NSTask

Ursprungligen av jocked:

Det finns ingen färdig terminal i Cocoa men vill du exekvera unix kommandon så använder du lämpligast NSTask. Se t.ex http://www.cocoadev.com/index.pl?NSTask

Ska läsa på om NSTask. Gjorde en liten app som använde det i en liten grad när jag följde en tutorial i en bok, men det var knappast tillräckligt med info man fick där för att kunna koda en Terminal liknande app Men tack för tipset.

Ursprungligen av frazze:

Det här bevisar väl lite min tes om gemene mans (miss)uppfattning om vad en terminal är. Det är inte ett program som utför *NIX-kommandon - det gör ditt skal (shell, typ bash eller så). Ett terminalprogram är ditt fönster mot datorvärlden. Må det vara lokalt eller globalt. Se tex hur xterm fungerar.

Du kan alltså koppla (x)term mot ett shell, mot telnet, mot en MUD-server. Ja, mot i princip allt som har en kommunikationskanal. Redan den gamla serieports-varianten gav dig samma möjligheter, även om en av de vanligaste varianterna var att alltid sitta mot en serieport på en dator som visade en login-prompt (som sedan släppte in dig till din interaktiva dator-miljö).

Jo, det vet jag Men det känns lite onödigt jobbigt att behöva beskriva mitt mål med "ett program som ger dig möjligheten att skriva in kommandon som ditt shell sedan utför samt kunna se resultatet av ditt kommand". Istället känns Terminal lite enklare

Ursprungligen av Marcus K:

Ta en titt på t ex källkoden till iTerm och se om det kan ge några idéer. Baserat på iTerm finns ramverket CocoaTechTerminal som kanske kan vara användbart.

Nice idé. Ska definitivt göra det - grymt case. Tackar tackar.

  • Medlem
  • Sollentuna
  • 2007-11-26 09:46

Det här bevisar väl lite min tes om gemene mans (miss)uppfattning om vad en terminal är. Det är inte ett program som utför *NIX-kommandon - det gör ditt skal (shell, typ bash eller så). Ett terminalprogram är ditt fönster mot datorvärlden. Må det vara lokalt eller globalt. Se tex hur xterm fungerar.

Du kan alltså koppla (x)term mot ett shell, mot telnet, mot en MUD-server. Ja, mot i princip allt som har en kommunikationskanal. Redan den gamla serieports-varianten gav dig samma möjligheter, även om en av de vanligaste varianterna var att alltid sitta mot en serieport på en dator som visade en login-prompt (som sedan släppte in dig till din interaktiva dator-miljö).

Ta en titt på t ex källkoden till iTerm och se om det kan ge några idéer. Baserat på iTerm finns ramverket CocoaTechTerminal som kanske kan vara användbart.

  • Medlem
  • Mölndal
  • 2007-11-27 08:29

Min variant av vad en terminal gör:
Ett program som kopplar upp sig till valfri dator och skickar och tar emot tecken. Varken mer eller mindre.

Du kan alltså använda ett terminalprogram för att koppla dig till ett av Mac OS Xs shellprogram, en Linux-burk eller varför inte till "MS-DOS" på en Windowsdator.

1
Bevaka tråden