On 8/15/06, Martin Bähr <[EMAIL PROTECTED]> wrote: > hi, > > fish does a lot of updating of the xterminal title > > i rarely have more than a few xterminals since i run screen, > usually each of those xterminals serves a specific purpose that is set in > the title. fish is replacing those titles which is something i do not > want. however i have not figured out how to turn it off.
The title is defined using the fish_title function. To disable the redrawing of the titlebar, use this command: function fish_title;end Currently you pretty much have to write it exactly like that, since fish only skips the execution if the function body is completely empty. The next fish release wills skip redrawing as long as the function produces no output. Undefining the function does not work, since in that case fish will use a default message. > > related to that, the prompt is slow. > if i run cd foo; it takes a while before the directory is changed and > the prompt is updated. i presume this is in part related to the setting > of the xterminal title but also to the redrawing of the prompt in general. > > try the following test: > write a long line of text, then jump to the beginning of the line. > now hit ctrl-d, and keep that pressed for a while. > > fish is writing delete-or-exit into the xterminal title each time. > it is also redrawing the whole line on each deleted character. > the deletion of a character is faster than the redrawing so that a > new redraw is started before the previousone finished or something like > that. at least the result is that most of the time the line is blank, > and only occasionally the current state of the line shows as a blink > before being hidden again. > > within screen in the xterm this gets worse. i can literaly watch as > the cursor moves along the line to redraw it. it takes a whole second or > two (yes, that is 1000 milliseconds) to redraw the line once. > it feelslike watching a game of pingpong. This is a long-standing performance issue. What happens is this: Control-d is bound to delete-or-exit, which is a shellscript function. Whenever a function is executed in response to a keypress, the prompt command is reexecuted and the prompt is repainted. This happens because a keybinding _might_ do any of the following: * Change the contents of the commandline * Change information that is displayed in the prompt, e.g. change working directory * Output text on-screen I've been toying around with implementing various triggers that detect when any of these happen, so that fish would be able to automatically determine if the prompt actually needs to be reexecuted/repainted. Unfortunatly, this is pretty hard, and I haven't gotten it to work reliably. So in the end, I suspect I may have to resign to either accept this rather noticable performance problem or to manually tell fish what needs to be done to restore the prompt at the end of every shellscript that is used as a keybinding. I'm leaning towards the latter even though it exposes the fish internals in a very undesirable way. > > greetings, martin. > -- > cooperative communication with sTeam - caudium, pike, roxen and unix > offering: programming, training and administration - anywhere in the world > -- > pike programmer travelling and working in europe open-steam.org > unix system- bahai.or.at iaeste.(tuwien.ac|or).at > administrator (caudium|gotpike).org is.schon.org > Martin Bähr http://www.iaeste.or.at/~mbaehr/ -- Axel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Fish-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/fish-users
