Terminal emulator with all the bells and whistles https://www.enlightenment.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
4.4 KiB

here's a short list of things i think we can do in the short to medium term to
make it a first-class terminal:
[ ] blink and blink2 attributes need to be supported
[ ] general input mode handling improvements (keypad, other key
input, etc.)
[ ] selection of background "wallpapers" (and support them at all -
doesn't right now - should support regular images, animated gifs,
and edje files)
[ ] scrollbar (elm scroller that mirrors the term smart size/position
- gives us fingerscroll - layer on top of term smart, stick
invisible rect inside to track for scrolling etc.)
[ ] selection mode mirrors entry style for touch displays (handle
on_hold flags, etc.)
[ ] selection off edge scrolls in that direction (as per selection
mode too if it gets NEAR an edge)
[ ] selection should have nice visible handles on the start/end so u can
drag and change its size once there
[ ] improve selection text extraction logic so its reliable
[ ] fast text/regex searching similar to urxvt
[ ] search in terminal (and keep highlighting until search cleared)
[ ] logging of terminal to file
[ ] number recognition with base conversion
[ ] dnd of file to term offer to paste path, with escapes or paste file
content (if text) with or without escaping
[ ] helpers when executed need to escape path/uri in command buffer
[ ] media - improve position slider to track ucr position as u play
[ ] improve look of meida controls (youtube like better with mouse move show)
[ ] media controls for music files need to be compact for music
[ ] make media controls an api where controls are provided by the media
object owner so they can be custom placed/swallowed/handled better
[ ] media controls need to have zoom controls for all formats
[ ] media controls need next/prev page controls for paged media (ps/pdf)
[ ] add better handling of music files (with just playbar+vol, no image)
[ ] display queue of media visually
[ ] add escapes for displaying media
[ ] add option for cjk double width mode
[ ] apparently there are problems with mutt, screen and tmux? vim
mousewheel scroll suport doesnt work
[ ] possible evas font problem with proggy fonts: http://www.proggyfonts.com/
[ ] alt+return doesn't copy current selection to input line.
[ ] ctrl+shift+c and ctrl+shift+v should do copy & paste
[ ] tab sel needs decent edje styling with spacing and shadows around items
[ ] tab sel needs to display term title and track changes
[ ] tab sel needs to display alert/bell state and display it
[ ] termio needs a bg mode for invisible tabs (until sel view is up)
[ ] termio needs a visible but not selected mode (for media volume?)
[ ] tab sel needs to use temio bg/visible modes
[ ] main term needs to track title in its struct and win title needs
to show it when we switch focus to that term
[ ] need an edje bg/overlay/swallow around sel that is put in the pane or
terminology main swallow for styling and bg.
[ ] need mouse control for sel object (autoscroll based on position)
[ ] need mouseover top of term to go into sel mode
[ ] need to track bell on bg terms and indicate a bg term wants attention
things in future to make it totally kick-butt:
[ ] maybe want a new sel width that slides/fades in on mouseover on top
that lists miniature thumbs like current sel does but in a linear
way along the top
[ ] reflow text on resize
[ ] track child process stats like cwd etc. and when launching a new
"tab" or shell use the last child process cwd to put the shell
into
[ ] track mem and iowait and cpu stats for child procs and their
children and display them as little overlays in the terminal so u
know if your "grep -r /" is cpu or io bound and what is eating up
all your cpu cycles or causing a tonne of hdd interrupts etc. -
send results of these stats to theme with messages much like
cpufreq, battery etc. do in e17 so theme can display as bars,
dials or anything it likes (text, led's etc. too).
[ ] remember tile layouts and be able to restore them and at least as
much of child processes as the term can manage reasonably reliably
[ ] split it out into a library - maybe just as part of elementary and
make a terminal widget where you can specify your own read/write
funcs for the term fd etc. so u can make a custom bit of code that
uses the terminal widget as if it were stdin/out but just as
loopback within the app (ie don't exec process - just create pty
and offer read/write to/from it)