Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Ghostty support ; TERM=xterm-ghostty #4149

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

joshgoebel
Copy link

@joshgoebel joshgoebel commented Jan 4, 2025

  • PR Description

Adds Ghostty terminal support.


What I did here:

  • Added xterm_ghostly to models.txt and extended/extended.go
  • Pulled in mkinfo from upstream
  • Patched terminfo to include MouseMode
  • Ran ./gen.sh

I added MouseMode but we could also remove that and I could remove it from mkinfo... open to guidance here. Lazygit is amazing and I'd love to help however I can to get this merged.

Testing

  • Tested using delta inside lazygit. It's broken before this change (colors are off). After this change it's resolved (colors are perfect).

Broken:

broken inside lazy git

Correct:

correct
  • Please check if the PR fulfills these requirements
  • N/A Cheatsheets are up-to-date (run go generate ./...)
  • N/A Code has been formatted (see here)
  • N/A Tests have been added/updated (see here for the integration test guide)
  • N/A Text is internationalised (see here)
  • N/A If a new UserConfig entry was added, make sure it can be hot-reloaded (see here)
  • N/A Docs have been updated if necessary
  • You've read through your own file changes for silly mistakes etc

@stefanhaller
Copy link
Collaborator

It looks like you modified the files under vendor/ directly. We can't do that. To add something to tcell, you need to make a PR in the tcell repo, and once it is merged we can then update our tcell dependency.

@joshgoebel
Copy link
Author

joshgoebel commented Jan 4, 2025

How do you track which version of tcell you're pinned against? (there are a lot of releases since v2) Do you just want me to try to get this into lastest mainline and then you'd upgrade the whole dependency?

@stefanhaller
Copy link
Collaborator

How do you track which version of tcell you're pinned against?

This is recorded in the go.mod file (which is managed by the go dependency system). You can either pin a specific version (like we did with tcell) or just a given commit hash on main (like we do with gocui and some others).

@joshgoebel
Copy link
Author

Thanks! Helpful. PR created upstream. gdamore/tcell#763 We'll see how it goes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants