Comments (6)
Forgot to add. I'm on MacOS Sonoma 14.4.1, ssh'd into the linux machine. Terminal is iTerm2 3.5.0. I looked at the setting for "Ambiguous characters are double-width" and it is disabled like I saw recommended in other issues.
from tmux-powerline.
Interestingly, the same config running on the same macbook, same iterm2, but running locally instead of ssh'd into a linux machine works fine.
$ zsh --version && bash --version && tmux -V
zsh 5.9 (arm-apple-darwin22.5.0)
GNU bash, version 3.2.57(1)-release (arm64-apple-darwin23)
Copyright (C) 2007 Free Software Foundation, Inc.
tmux 3.4
from tmux-powerline.
Interesting. So just to be sure i got it correctly, you're using ssh from your MacOS Sonoma 14.4.1
to connect to a CentOS 9
system. On the CentOS 9
system you have zsh 5.9
, bash 5.1.8
and tmux 3.4
?
Some first ideas and things to try to narrow down the issue:
-
Regarding
tmux 3.4
, as far as i can see, there's only 3.2a available through the normal upstream (including epel), did you try with3.2a
as well? -
If you disable your
tmux.conf
(just move it totmux.conf.bak
for the moment) and run tmux, do the status line updates for the default status line show the same behaviour? -
When starting tmux, do you have the "extra" line at the bottom right from the beginning, or does it appear with the first update?
-
Just in case, can you try a different terminal when you do the
ssh
to theCentOS 9
system as well?
from tmux-powerline.
Correct, trying with a newly opened iTerm2.
$ zsh --version && bash --version && tmux -V
zsh 5.9 (x86_64-redhat-linux-gnu)
GNU bash, version 5.1.8(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
tmux 3.4
- I'm not sure where the tmux comes from, my company has some internal package repos so it's possible they've built 3.4 for centos 9 instead of normal upstream repos. I don't have access to 3.2a.
- No, with no tmux.conf and the default status line it updates correctly.
- The initial display is correct, the extra line appears with the first update and it only contains characters that changed (like digits from the load, or seconds).
- Using terminal.app (version 2.14) does not have this issue, updates look correct. However, I don't have the right fonts installed there so the status line doesn't look right (and I'm not sure if that impacts other things).
- Turns out that I had my tmux command aliased (
tmux='LC_CTYPE=POSIX tmux -ul2'
), but removing that and calling/usr/bin/tmux
directly has the same behavior.
Going back to the terminal.app question, I got the fonts working and it's still good, so probably a setting within iTerm2 somewhere -- but that's related to the centos host?
I'm setting terminal within my tmux.conf (set -g default-terminal "tmux-256color"
) but commenting that line doesn't change things, it still happens in iTerm2.
Here's a pretty minimal tmux.conf that still reproduces the issue:
❯ cat .tmux.conf ─╯
───────┬───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
│ File: .tmux.conf
───────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
1 │ #
2 │ # TMux Config File
3 │ #
4 │
5 │ # Update the prefix to be like (my) screen
6 │ set -g prefix C-w
7 │ unbind C-b
8 │ bind C-w send-prefix
9 _ │
10 │ # Status line settings
11 │ set -g status on
12 _ │ set -g status-interval 1
13 │
14 │ # Tmux Plugins
15 │ set -g @plugin 'tmux-plugins/tpm'
16 │ set -g @plugin 'erikw/tmux-powerline'
17 _ │
18 │ # Initialize TPM (must stay at bottom)
19 │ run-shell -b "$HOME/.tmux/plugins/tpm/tpm"
20 │
───────┴───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
That was an aggressive update interval, but bumping it to 10s didn't change anything.
Locale in environment is:
LC_ALL=en_US.utf8
LC_CTYPE=en_US.utf8
from tmux-powerline.
Going back to the terminal.app question, I got the fonts working and it's still good, so probably a setting within iTerm2 somewhere -- but that's related to the centos host?
Did you try a different profile (new one with defaults) in iTerm2?
from tmux-powerline.
I have no idea why, but a clean profile worked. I even dumped the two profiles to json and diffed them and there are no significant differences...
❯ diff Downloads/clean-sorted.json Downloads/default-sorted.json
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
renamed: Downloads/clean-sorted.json to Downloads/default-sorted.json
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
@ default-sorted.json:99 @
"Red Component": 1,
"Blue Component": 1
},
"Bound Hosts": [],
"Character Encoding": 4,
"Close Sessions On End": true,
"Columns": 80,
@ default-sorted.json:126 @
"Red Component": 0.7333333492279053,
"Blue Component": 0.7333333492279053
},
"Guid": "3E2914B0-25C9-4282-8D79-8C814ED8E42A","39730D5E-561C-48EA-8597-5C3CBE741EF5",
"Horizontal Spacing": 1,
"Idle Code": 0,
"Jobs to Ignore": [
@ default-sorted.json:298 @
}
},
"Mouse Reporting": true,
"Name": "Clean","Default",
"Non Ascii Font": "Monaco 12",
"Non-ASCII Anti Aliased": true,
"Normal Font": "MesloLGS-NF-Regular 12",
@ default-sorted.json:324 @
"editor": "com.github.atom"
},
"Send Code When Idle": false,
"Shortcut": "","T",
"Show Status Bar": false,
"Silence Bell": false,
"Status Bar Layout": {
That fixed my issue through ssh, thanks for the debugging help!
I also tried using mosh
for connecting, and that's still broken, but I can work with just ssh
for now. I suspect mosh is introducting some kind of terminfo issue but I haven't spent time debugging. Good enough for now :). Thank you again!
from tmux-powerline.
Related Issues (20)
- Support tmux-suspend in mode_indicator segment HOT 1
- powerline fails to start in termux HOT 1
- VCS segments not working for non-git repositories nested/down the path
- New segment vcs_rootpath
- New segment date_week
- New segment kubernetes_context
- Add dual-line status bar support HOT 2
- Status Justification always behaves as relatively centered HOT 1
- New segment vpn HOT 1
- vcs_rootpath shows backslash with tilde
- kubernetes_context add namespace information and display mode
- roll_text does currently only support filling up with empty space
- vcs_branch does not show correct branch for SVN repos if CWD!=rootpath
- Add support for untracked files in SVN to vcs_others.sh segment
- ifstat segment not supporting predictable network interface names
- vcs_others and vcs_modified output contains empty spaces on macOS
- separator_foreground_color not working HOT 3
- Bell activity is not styled HOT 2
- New segment github_notifications
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tmux-powerline.