[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Re:Re: 怎样写一个X Terminal Emulator?



VTE 使用起来还是很好的,我的xgcom 就是使用它来写的
在 2012-10-2 下午12:29,"Yaohui Ma" <stesenchina@gmail.com>写道:
>
> 我没写过,但suckless的网站上有个简单的x terminal,可以去google一把
>
> On Oct 2, 2012 10:42 AM, "amateur" <tianlei.zhao@gmail.com> wrote:
>>
>> On Sat. 2012-09-29 20:03:36 +0800, cqzlxl wrote:
>> > 在 2012-09-29 19:43:25,"tong hui" <tonghuix@gmail.com> 写道:
>> > 这个和你的需求有关,如果这个X terminal不具备脚本执行功能的话,还是比较简单的
>> >
>> >
>> > 我觉得就是一个简单命令解析器,当然这样的话没有X也行了。。呵呵
>> X Terminal Emulator 不是命令解释器,那是 shell 的角色。事实上,
>> Terminal Emulator 就是一个键盘和显示 (即所谓的 terminal) 的模拟程序,
>> 从用户那里接收键盘输入,发送给 Terminal 中前台程序 (通常是 shell),然
>> 后将程序的输出显示到 terminal emulator 窗口中。
>>
>> Terminal 还有一些增强功能,比如显示颜色、控制光标移动、Job Control 等。
>> 另外以前有多种 Terminal,为了保证在这些增强功能上的兼容性,就有了 ANSI
>> 转义序列等标准。Job Control 的实现需要 OS 的辅助,因此 Terminal 不是直
>> 接完全由运行在其中的应用程序控制的,而是需要由 OS 作中介。即 Termnial
>> 是一个设备,由 OS 打开后作为 Application 的输入输出。
>>
>> 实现 Terminal Emulator 需要用到 Pesudo TTY 机制,这里我也是一知半解。
>> 大概就是 terminal emulator 向 OS 申请一对 PTTY,一个是 master 端,另外
>> 一个是 slave 端。master 和 slave 是接在一起的,Terminal Emulator 控制
>> master 端,terminal 中的应用程序控制 slave 端。输入从 键盘->terminal
>> emulator->master->slave->application,输出从
>> application->slave->master->terminal emulator->X window。
>>
>> >
>> >
>> > 2012/9/29 Tianjiao Yin <ytj000@gmail.com>
>> > 如果你打算读代码的话,千万别看xterm,因为它的代码就像一坨巨大的屎。
>> > 连xterm作者都在README中狠狠的批评了自己的代码。
>> >
>> > 在 2012年9月29日 下午6:00,Guo Yixuan <culu.gyx@gmail.com> 写道:
>> > > On 09/29/2012 05:22 PM, cqzlxl wrote:
>> > >> Hi,各位
>> > >> 有人了解如何实现一个X Terminal Emulator吗?跪求指导!
>> > >> 最近想实现一个极其简单的X Terminal Emulator,但不知道如何下手,不知道背后的大致原理与思路,求教。
>> > >
>> > > 直接去看代码不行么? (xterm可能是依赖最少的, 可能比其他的简单一些)
>> -------------------------
>>
>> --
>>  [32m《溪居》 [m
>>  [33m作者:柳宗元 [m
>> 久为簪组累,幸此南夷谪。
>> 闲依农圃邻,偶似山林客。
>> 晓耕翻露草,夜榜响溪石。
>> 来往不逢人,长歌楚天碧。
>>
>>
>> --
>> To UNSUBSCRIBE, email to debian-chinese-gb-REQUEST@lists.debian.org
>> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
>> Archive: [🔎] 20121002022539.GA20687@localdomain">http://lists.debian.org/[🔎] 20121002022539.GA20687@localdomain
>>


Reply to: