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

Colors Showing up Differently on Different machines #81

Open
Normanras opened this issue Mar 27, 2023 · 5 comments
Open

Colors Showing up Differently on Different machines #81

Normanras opened this issue Mar 27, 2023 · 5 comments

Comments

@Normanras
Copy link

Idk if this is for you @Mofiqul or something else, but here's what I'm seeing:

I have my minimial neovim setup on my remote development environments, using Packer as the package manager.

On my daily driver, I have a very similar setup, only using Lazy, and more plugins. But they came from the same original setup.

The color scheme renders differently for the same file. Here's a screenshot - the left is my daily driver machine, the right is my remote server. I love the look of the right environment so much more, so I'm hoping for it to show up the same way on my daily machine; I just can't seem to figure out why!

Screenshot 2023-03-27 at 3 30 26 PM

If you have any suggestions, that would be helpful! Thanks again for the great color scheme.

@Mofiqul
Copy link
Owner

Mofiqul commented Apr 19, 2023

@Normanras - I guess your terminal does not support truecolor or need to enable it.

@Normanras
Copy link
Author

@Mofiqul Well that's the weird thing. Those screenshots are from the exact same terminal app on my local machine, the only difference is the right is ssh/mosh into a remote machine and the left is the same exact setup on my local machine. Versions of neovim & plugins are all equal. That's why it seems like a head scratcher. I'm sure I'm config-ing something incorrectly, just not sure what.

@TheZoc
Copy link

TheZoc commented Sep 18, 2023

@Normanras A bit late, but might be worth checking this: https://wiki.webevaluation.nl/bashrc

@jacobsvensmark
Copy link

jacobsvensmark commented Dec 20, 2023

I am having a very similar issue... At least my color palette appears similar to that of the left picture in the original post. Here is a comparison between using the mofiqul dracula theme (first image), and the https://github.com/maxmx03/dracula.nvim theme (second image):

Screenshot 2023-12-19 at 20 04 53 Screenshot 2023-12-19 at 20 03 17

So the @Mofiqul color palette appears wrong in a similar manner to @Normanras issue. Both of the above are running on the same remote linux machine accessed from an iTerm2 terminal on an OSX machine, over SSH. I don't believe its a truecolor issue as some suggest here, as it appears to work for the maxmx03 plugin, because my terminal shoud support it and because I have it enabled in my .zshrc.

Before it is suggested, I'd prefer to use the Mofiqul theme, as it appears to work with likas-reineke/indent blankline plugin, which cannot be said about the maxmx03 implementation i believe.

Further, it looks like on the original post, that indent blankline (or similar) is running in the left image, but not in the right. I tried to uninstall mine, to see if this was the cause of the error, but with no luck.

@jacobsvensmark
Copy link

jacobsvensmark commented Dec 22, 2023

Okay so just to add to the above: I just created a new user on my Ubuntu system. No tmux, no oh-my-zsh (it's bash per default anyways) - completely clean user.

I then set up a completely virgin nvim config, and the problem persists. My init.lua is as follows:

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({
    "git",
    "clone",
    "--filter=blob:none",
    "https://github.com/folke/lazy.nvim.git",
    "--branch=stable", -- latest stable release
    lazypath,
  })
end
vim.opt.rtp:prepend(lazypath)

vim.g.mapleader = " " -- Make sure to set `mapleader` before lazy so your mappings are correct

require("lazy").setup({
  "folke/which-key.nvim",
  { "folke/neoconf.nvim", cmd = "Neoconf" },
  {"folke/neodev.nvim"},
  {"Mofiqul/dracula.nvim"},
})
vim.cmd[[colorscheme dracula]]

So basically lazy plugin manager, and the dracula theme. The result is the same, so I guess we can rule out any influence from any plugins other than potentially the pluginmanager itself.

My .bashrc is then a completely standard ubuntu one, so for completion it reads:

# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
    xterm-color|*-256color) color_prompt=yes;;
esac

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
        # We have color support; assume it's compliant with Ecma-48
        # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
        # a case would tend to support setf rather than setaf.)
        color_prompt=yes
    else
        color_prompt=
    fi
fi

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

# Add an "alert" alias for long running commands.  Use like so:
#   sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

Note that I am doing all this over SSH (ssh -Y servername) from an OSX terminal iTerm2. Don't know if that makes any difference. So yeah, not sure why the resulting colors are off.

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

No branches or pull requests

4 participants