On Mon, 18 Jun 2012 21:54:23 -0300 Gustavo Sverzut Barbieri
<barbi...@profusion.mobi> said:

> On Sun, Jun 17, 2012 at 10:27 PM, Carsten Haitzler <ras...@rasterman.com>
> wrote:
> > On Sun, 17 Jun 2012 21:43:05 -0300 Gustavo Sverzut Barbieri
> > <barbi...@profusion.mobi> said:
> > 
> > there are some gfx mode thgins in escapes. i assume thats used to draw lines
> > using special line characters as it remaps regular chars to these sequences
> > when in that mode - i think. i've never tried the menuconfig/ncurses lines
> > thing in terminiology, so don't know.
> 
> Thanks to KainX and his expertise I was able to get it working. There
> is now a vt100 to unicode table I got from urxvt. The key was to
> understand it may change the charset to DEC's ACS.

hmm i am still missing them from jed - must be a different set of gfx chars...
it's on a mental todo list to look into it.

> >> For keys: I'll look later, thanks. But I just realized even the
> >> elm_entry does not handle it :-/
> >
> > bigger problems :)
> 
> Fixed. Ecore_IMF was fine, but XIM module was trying to set styles
> that were not supported in my machine. Now it will fallback if
> unsupported.

ok.

> Also added IMF to terminology based on edje_entry.c, many thanks to
> Sachiel for pointing out where to look for example. I just did the
> basics, no preedit, prediction or surrounding stuff. NO idea how it
> will look like with a vkbd.

it actually mostly works. pretty good stuff! :)

> >> For example I can type ç by using AltGr + "," but not ' + c as
> >> expected by us-intl or cedilla input methods.
> >
> > bigger problems indeed :). as i said -i know how compose key combos work. i
> > need to make a table and handle them. no idea about altgr stuff. never used
> > it, don't know it. would have to research.
> 
> done :-)

:)

> >> >> These I have no idea where to look, if they are related to termpty or
> >> >> what. So I'd wait you ;-)
> >> >
> >> > you'll be waiting a while as i have never used deadkeys. i do know how to
> >> > use the compose key and combos, but even xterm doesn't do those for me,
> >> > so i'm not amazingly worried, but that's about all i could manage off
> >> > the top of my head with a little research (i'll have to build in a table
> >> > of all the compose combos). it doesn't handle every escape sequence in
> >> > existence and even the ones it does handle may be buggy - ie i got it
> >> > wrong. as such there is no document that tells you the terminal state
> >> > machine and exactly what every mode means, what modes you should start
> >> > in, what every esc seq or char does EXACTLY etc. it's all some level of
> >> > guess-work based on reading pages on escape codes and other terminal
> >> > emulator srcs.
> >>
> >> Ok, so far it seems to do okay for the tests I did. But the ncurses
> >> and input problems are bit of pain for me to change. I'll see if I can
> >> fix those and use it daily.
> >
> > the ncurses line thing is on a list of stuff to look at - but it wasn't a
> > necessity for my daily stuff so i didnt do it yet. :)
> 
> as said, done.

:)

> > i want it to be unique and noticable. the highlight can be toned down a bit,
> > but i want something visible that makes you know its terminology not just
> > xterm etc. but just fyi - either your eyesight is horrible, lighting
> > conditions insane or you have some of the crappiest screens around if u
> > can't read it with that highlight :) are you using that macbook.. speaking
> > of crappy screens? :):) (oooh just had to jibe that one in!) :)
> 
> my screen is good, so are my eyes... but it's annoying as said by
> multiple people at #edevelop. How about make it your theme and the
> default be usable?

i've toned it down, but its still there. now with a pimp-daddy pulsing cursor
too. :)

> >> What I plan to work on whenever time (?) allows:
> >>     - detect protocol://xxx and call xdg-open with it. Where to add it?
> >
> > in termio.c - you'll have to scan the cells fetched by termpty_cellrow_get()
> > (fetched 1 row at a time for the visible grid of cells and put into
> > textgrid). while scanning you'll have to then detect these. you'll have to
> > handle your own line-wrap logic here - ie if url finishes at last char or
> > not or it continue on the next line. right now there are special bit
> > markers set to know if it was auto-wrapped or not that the
> > selection-to-text handling tries to detect. the selection-to-text stuff is
> > not that reliable or solid so i need to work on that as its only partly
> > usable. look at that code for ideas - that is what converts back to utf8
> > strings too. :)
> 
> ok, will look at it later.
> 
> 
> >>     - see if we need reset sigaction for SIGTERM et al. Did you think
> >> about that?
> >
> > ummm do we need to? ecore by default auto handles quitting main loop on
> > that so nothing to do? or was that sigint?
> 
> in the child, where you exec. I'm asking because GLIBC's system does that.

if u exec a child after exec.. all signal handlers are reset by exec. ecore
already sets up sigchild handlers for children and we handle this as an
event. :)

> >>     - change option GUI from side-by-side toolbar (which is broken for
> >> me) to a naviframe + lists, it's extensible and will work nice for
> >> more options.
> >
> > bnecause your elementary is configured for touch (illume) as opposed to
> > desktop with smaller finger sizes. the term is rather small by default - if
> > its bigger it works fine, which is what i'd expect of a touch device too.
> 
> no, it's desktop. Not illume.

unless u've messed with finger size or font to make it big - then if it doesnt
fit its illume. if its desktop profile, it fits. :)

> > ytup.
> >
> >>     - multiple windows and/or tabs
> >
> > right now this is right on the end of a list of features as frankly i'm not
> > happy with the 1 process goes down and ALL my terminals go thing that
> > gnome-terminal does. as for tabs - don't use TABS... be imaginative. i was
> > thinking a thumbnail-like chooser - wp2 style with a quick select bar with
> > smaller thumb on mouseover the top of the term or something.
> 
> well, if you have tabs you need fast switch AND fast lookup where you
> are. So far nothing beats visual tabs for that.

if we make the theme allow for this on signals and swallows then i might
entertain it - i still think its too early given stability issues. but no bar
of tabs by default. option.

> The switch often happens with shortcut... so invisible. But the lookup

that's fine. the intent was to have shortcuts eventually be able to go
next/prev term, bring up a grid of them u can then arrow-key select etc.

> where you are you can easily see with the tab position as in an actual
> physical file/archive. You also need hints of visual bells or alarms
> on other tabs -- tabs are usual and unbeatable as people are used to
> it, even with screen.
> 
> IOW: let's use the fancyness for other elements, like the wallpaper
> and font choosers?

we can do better than tabs - and i want to try.

> >>     - configure background color and transparency (ie: dark-gray at 60%)
> >
> > right now it's left to theme, but actually just replacing the media obj
> > with a rect with the trans u want would do the job - if theme just stayed
> > clear on transparency mode enabling.
> 
> color classes? One can set the color class of an object, instead of
> the whole color class if needed.

could use colorclass too - but it detaches direct control then somewhat.

> >> What I did already is:
> >>     - added eina log. If you want your termpy.c speed back of
> >> disabling DBG() just use configure --with-maximum-log-level=3
> >
> > ok.
> 
> THEN WHY U NO USE IT? :-) Just noticed some spurious printf() and
> perror() in the code :-/

because eina-log is a pain to use. i have to register a new domain, store it,
use it, make macros for it, expose as extern for domain and then on top of it
m,y printouts become 3x as long and overflow lines because of ALWAYS displaying
filename+line number etc. etc. etc. - it is NOT the first port of call because
it is not easy. i've mentioned this several times before. :)

> >>     - removed config from global, we can do something to have
> >> per-instance config... just need to define a policy on what to do and
> >> save.
> >
> > ok
> >
> >>     - made the options dialog larger, so I can actually have something
> >
> > you now waste space in the font selector by not USING the blank, unused icon
> > swallow. thats why i split it into 2. what is the entry box for other than
> > displaying some text that doesnt change?
> 
> That's a problem with Elementary. I've noticed that, we must make the
> row theme not not use the space if there is no icon, or at least
> provide a theme with end-only icon.

i did the latter :) done now in elm. :)

> >>     - made it possible to specify the font preview string, with some
> >> PITA chars by default (Ox0, 1xl).. It works, but height is not
> >> resizing properly :-/
> >
> > oooh... do we REALLY want that there all the time? its a waste of space and
> > people will barely ever change it. putting that in another "tab" might be
> > more useful and space efficient.
> 
> The most annoying bit that leads one to change terminal fonts is due
> some specific glyphs -- that we can't predict. Some people dislike
> lowercase-L as it looks like 1. Some uppercase-O x zero. Some use it
> to detect subtle differences with "a"...

then change the default string - but the entry box doesn't belong in that
pane/dialog. there is precious little enough space as-is. an entry that you
almost NEVER change the content of doesn't belong there. in fact the fact that u
covered up all of the terminal with the dialog is  the problem as u no longer
see the preview - that's why i left a gap on the left side to see the terminal
content itself when the font changed.

> IOW: letting the user choose a font without trying is just strange.
> Yes, one can change and see the feedback on the background termio, but
> that's annoying to have to do it :-/

just make the default string more useful. you have a point about l vs 1 and 0
vs O and so on. :) if you really want a custom string thing - put it in another
place to edit so it doesn't continually eat up space for the 99.9% of the time
u never edit/change it and you want to see more fonts instead. :)

> >>     - changed command parsing... uses $SHELL and can do $SHELL -c
> >> $COMMAND if it seems to be a shell expression.
> >>
> >>     - use ecore_getopt!
> >>
> >>     - use XDG_CONFIG_HOME instead of ~/.terminology
> >
> > this i'm not so sure of. elementary doesnt use it. e doesnt use it. it's
> > out of place for e land.
> 
> We should change other EFL utils. The thing is some systems may choose
> to prune ~/.cache and persist ~/.config from time to time.

ok- leave in ~/.config

> >> Last but not least, I get the following error when I run:
> >>     termpty.c:802 _handle_esc_csi() unhandled screen mode arg 1034
> >>     termpty.c:836 _handle_esc_csi() unhandled 'h' : '?1034'
> >> Also running irssi shows couple of color cmd error (93, 97, 104...)
> >
> > that'll be the incomplete esc handling. also yes - it doesnt handle those
> > 93/97/104 color ranges. as for esc 1034 - i cant find it documented
> > anywhere - even eterm doesnt handle it. i don't know what it does. i hunted
> > for that before. the 93/97 etc. colors are just coplor repeats in "bright
> > mode" i think (90-97 and 100-107). 99 and 109 too. easy to handle without
> > any fuss - but the 1034 one.. beats me what to do with it.
> 
> I don't really know where these came from. They always show when I
> start it, my PS1 is:
>    \[\033[01;32m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\]
> (Gentoo's default).

all of those are handled in the color escape handler. i added support for the
ones u see in irssi - as for 1034... i dint know why u get that - it's not
there in your prompt escapes. :( it must be generated extra by bash. :(

> Debug shows the following for username "gustavo":
> DBG<29797>:terminology termpty.c:1080 _handle_esc() ESC: ']'
> DBG<29797>:terminology termpty.c:1080 _handle_esc() ESC: '['
> DBG<29797>:terminology termpty.c:389 _handle_esc_csi()  CSI: 'h' args '?1034'
> ERR<29797>:terminology termpty.c:909 _handle_esc_csi() unhandled
> screen mode arg 1034
> ERR<29797>:terminology termpty.c:943 _handle_esc_csi() unhandled 'h' : '?1034'
> DBG<29797>:terminology termpty.c:1080 _handle_esc() ESC: '['
> DBG<29797>:terminology termpty.c:389 _handle_esc_csi()  CSI: 'm' args '01;32'
> DBG<29797>:terminology termpty.c:1318 _handle_seq() txt: [
> DBG<29797>:terminology termpty.c:1321 _handle_seq() g
> DBG<29797>:terminology termpty.c:1321 _handle_seq() u
> DBG<29797>:terminology termpty.c:1321 _handle_seq() s
> DBG<29797>:terminology termpty.c:1321 _handle_seq() t
> DBG<29797>:terminology termpty.c:1321 _handle_seq() a
> DBG<29797>:terminology termpty.c:1321 _handle_seq() v
> DBG<29797>:terminology termpty.c:1321 _handle_seq() o
> DBG<29797>:terminology termpty.c:1321 _handle_seq() @
> ...

in the:
case 'h': // list - set screen mode or line wrap ("7h" == turn on ...
case 'l':

section.. but its saying ?1034" -the ? is important as it strips that out
enabling "priv" flags at the start
and advancing past it. should only have 1 ? at the start. as for the 1034 value
even if the ? bit was fixed - i know of no docs describing what that is meant
to do. eterm doesn't handle them. xterm says:
            result = MdBool(screen->eight_bit_meta);
and relkevant macro:
#define MdBool(bool)      ((bool) ? mdMaybeSet : mdMaybeReset)

and

enum {
    mdUnknown = 0,
    mdMaybeSet = 1,
    mdMaybeReset = 2,
    mdAlwaysSet = 3,
    mdAlwaysReset = 4
};

so it looks like a query asking us if we are 8 bit clean. if so reply with 1 if
not with 2. - so respond with a CSI (\033[?N$Xy) where N is related to number
of reply vsalues and X are the values. but i'm not sure. 

> -- 
> Gustavo Sverzut Barbieri
> http://profusion.mobi embedded systems
> --------------------------------------
> MSN: barbi...@gmail.com
> Skype: gsbarbieri
> Mobile: +55 (19) 9225-2202
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to