Hello,

I am new, so I present myself: my name is Jehan, alias Jey.
I am interested in mrxvt because I have used it for some years now. But
the utf8 support takes time to arrive, so I am sad. :-(

Anyway then I was wondering if someone was working on it. If not, I
would propose to "try". I never developed on terminal emulation, so this
is a new topic for me. But as I really want to keep mrxvt and in the
same time, I want utf8, I thought it could be nice to participate to the
development. I won't promise to succeed, but at least I can try to.

Then my question is: what is there to know about the code structure to
facilitate my work? I have looked for the code for the last 2 hours. I
have made some points about some parts but this remains misty about many
of the functioning. I can of course work more on it to discover more of
the program's logic, but I thought the easier was to have hints to where
to look from the main developers. During the day I have a job, and the
evening I have many activities. So the more help, the better. :-)

What I logically guess about a new encoding support is that I would have
two steps to modify:

1/ when an input arrive (whether it is keyboard or text paste probably,
through mouse, menu or whatever), and if the locale is set to utf8 of
course, I shall transform some keyboard signal (?) or the pasted text to
the utf-8 encoding and send it to the running program's stdin...

2/ when some program needs to display anything to stdout, he does it in
utf-8 (or I suppose so if the terminal encoding is set to utf8?), then I
shall decode it and display the resulting unicode value in some unicode
font.

Any correction is welcome, because it is only a guess about what seems
some logic of what a terminal does.

Then what are these functions which receive some input and have to
transform it in the set encoding and the ones which receive an output
and must decode it, then display it with unicode fonts?

What I found in the code:

- encoding.c: apparently defines the functions which take the locale,
which decides what is the encoding from it and which font to use (all
used during initialisation, init.c it seems)? Apparently there are also
some conversion functions from one encoding to another... What are they for?

- command.c: rxvt_cmd_getc get the next input character, then
rxvt_process_getc will process it and the following characters (as much
as possible) until some escape sequence or a non-printable character
appears.

- screen.c: then rxvt_scr_add_lines should probably do something with
the input string... but then I get lost about how this all is processed...

Can you help me decoding this whole code logic please?
Thanks.

Jey

P.S.: sorry for this long email as a beginning email (especially if
someone is already taking care of utf8, which is great, and then my
email useless), but as I have just looked in the code, I wanted to ask
questions while it was fresh. Now let's go to sleep. I must go to work
in a few hours...


-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell.  From the desktop to the data center, Linux is going
mainstream.  Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Materm-devel mailing list
Materm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/materm-devel
mrxvt home page: http://materm.sourceforge.net

Reply via email to