Git Product home page Git Product logo

Comments (4)

gdamore avatar gdamore commented on June 20, 2024

Apparently these sequences, like the mouse sequences, are not part of any terminfo standard.

Here's some useful information: http://tldp.org/HOWTO/Xterm-Title-6.html
And for screen: https://www.gnu.org/software/screen/manual/html_node/Control-Sequences.html
And for Eterm: http://www.cs.columbia.edu/~ricardo/misc/Eterm_reference.html

from tcell.

gdamore avatar gdamore commented on June 20, 2024

Well, it turns out that we have no way to obtain the old title on Xterm, because of security considerations. Furthermore, applications that modify the terminal window are rare -- neither Emacs nor Vim does this for instance.

So, given that, I'm declining to implement this.

from tcell.

emdete avatar emdete commented on June 20, 2024

i just add a

os.Stdout.Write([]byte("\x1b]1;"+title+"\a\x1b]2;"+title+"\a"))

as first line in my main() to solve this for xterms and compatible. its not without dangers as other terminals may react unexpected.

from tcell.

Consolatis avatar Consolatis commented on June 20, 2024

Furthermore, applications that modify the terminal window are rare -- neither Emacs nor Vim does this for instance.

Having the ability to change the title would be pretty useful in applications like Senpai.
It could, for example, show the currently selected channel + number of unread messages or even animate the title on highlights via a ticker interval which would then be reflected by a desktop panel.

Edit:
Seems terminfo provides tsl and fsl variables for this, so the full format would be {tsl}some title{fsl}:

test -n "$(tput tsl)" && printf "%s" "$(tput tsl)some title$(tput fsl)"

The absence of these could thus be used for feature detection (maybe in combination with hs).

@gdamore Would you be open to accept a PR implementing SetTitle() using this strategy?

from tcell.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.