Autor Wątek: [Closed] Kolorowanie output'u w konsoli  (Przeczytany 3329 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Glinka

  • SUSE User
  • *
  • Wiadomości: 84
[Closed] Kolorowanie output'u w konsoli
« dnia: Maj 04, 2017, 01:07:50 pm »
Cześć,
jakiś czas temu chciałem skonfigurować sobie vim'a żeby ładnie kolorował mi składnię i ogólnie żeby był ładniejszy.
Przyznaję się, że mieszałem coś w konsoli żeby nauczyć vim'a ładnie kolorować w konsoli ale o ile to mi się nawet udało o tyle teraz chyba żaden inny program nie "umie" kolorować swojego wyniki?

Natomiast jeśli uruchomię program w kontenerze to wynik jest ładnie pokolorowany..

Pierwszy załącznik pokazuje uruchomienie programu w kontenerze docker'a drugi uruchamia program lokalnie na moim komputerze.

Czy wie ktoś może jak to "odkręcić"?
« Ostatnia zmiana: Styczeń 20, 2018, 06:39:46 pm wysłana przez Glinka »

unic0rn

  • SUSE Guru
  • ****
  • Wiadomości: 784
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #1 dnia: Maj 04, 2017, 07:03:00 pm »
przypomnij sobie co namieszales, a bedziesz miec odpowiedz. wrozki pietro wyzej.

w samym vimie kolorowanie skladni to jedno ustawienie, podejrzewam ze kombinowales ze zmienna TERM ale glowy nie dam. pytanie jaka byla wartosc domyslna, bo powinna byc jak najbardziej ok, nawet dla theme vima korzystajacego z 256 kolorow (choc osobiscie wole zmienic palete base16 w terminalu i uzywac 16-kolorowych theme).
PGP:208DAF5448644C0B

Fisiu

  • Geeko's friend
  • Maniak SUSE
  • *
  • Wiadomości: 4633
      • la manzana
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #2 dnia: Maj 04, 2017, 08:14:16 pm »
Ja tam vima nie widzę... Co widzę, to na jednym zrzucie jest "kolorowe" wyjście phpspec które można uzyskać przez dodanie --ansi do opcji wywołania. Czy polecenie `alias phpspec` coś zwraca?

Glinka

  • SUSE User
  • *
  • Wiadomości: 84
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #3 dnia: Maj 04, 2017, 08:34:10 pm »
Tzn z tym vim'em to może przesadzam ale to jest jedyna rzecz dla jakiej zmieniałem coś w konsoli chyba, że jeszcze PS1? o0

Tutaj może podeślę mój plik .bashrc
cd() { builtin cd "$1" && ls; }

black=$(tput -Txterm setaf 0)
#red=$(tput -Txterm setaf 1)
green=$(tput -Txterm setaf 2)
yellow=$(tput -Txterm setaf 3)
blue=$(tput -Txterm setaf 4)
purple=$(tput -Txterm setaf 5)
#cyan=$(tput -Txterm setaf 6)
white=$(tput -Txterm setaf 7)

bold=$(tput -Txterm bold)
reset=$(tput -Txterm sgr0)

__has_parent_dir () {
    # Utility function so we can test for things like .git/.hg without firing up a
    # separate process
    test -d "$1" && return 0;

    current="."
    while [ ! "$current" -ef "$current/.." ]; do
        if [ -d "$current/$1" ]; then
            return 0;
        fi
        current="$current/..";
    done

    return 1;
}

__vcs_name() {
    if [ -d .svn ]; then
        echo "-[${yellow}svn$black]";
    elif __has_parent_dir ".git"; then
        echo "-[$yellow$(__git_ps1 'git %s')$black]";
    elif __has_parent_dir ".hg"; then
       echo "-[${yellow}hg $(hg branch)$black]"
    fi
    echo ""
}

export PS1='\n\[$bold\]\[$black\][\[$blue\]\A\[$black\]]\[$white\]-\[$black\][\[$green\]\u\[$yellow\]@\[$green\]\H\[$black\]]\[$white\]-\[$black\][\[$purple\]\w\[$black\]]$(__vcs_name)\[$reset\]\n\$ '

export TERM=xterm-256color
Zmieniam wartość TERM ale jak zakomentuję tą linijkę i odpalę nową konsolę to nic się nie dzieje..

Ani na hoście, ani w docker'ze nie mam ustawionego aliasu na phpspeck ale jak sam wywołam polecenie u mnie lokalnie
bin/phpspec --ansito dostaję ładnie pokolorowany wynik tak samo jak wywołanie polecenia wewnątrz kontenera.

unic0rn

  • SUSE Guru
  • ****
  • Wiadomości: 784
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #4 dnia: Maj 04, 2017, 10:08:41 pm »
to zdefiniuj alias, problem solved.
PGP:208DAF5448644C0B

Glinka

  • SUSE User
  • *
  • Wiadomości: 84
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #5 dnia: Maj 05, 2017, 06:02:23 am »
jasne, też o tym na początku pomyślałem ale potrzebowałbym aliasu na niemal każdą komendę plus zakładając, że każda komenda ma parametr --ansi

Fisiu

  • Geeko's friend
  • Maniak SUSE
  • *
  • Wiadomości: 4633
      • la manzana
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #6 dnia: Maj 06, 2017, 01:18:38 pm »
A jak uruchomisz phpspec z opcją -vvv? powinieneś zobaczyć listę plików konfiguracyjnych które są wczytywane i może tam coś jest...

unic0rn

  • SUSE Guru
  • ****
  • Wiadomości: 784
Odp: Kolorowanie output'u w konsoli
« Odpowiedź #7 dnia: Maj 06, 2017, 01:54:48 pm »
jezeli jest wiecej komend, ktore dawaly kolorowy output defaultowo wczesniej, a po Twoich machlojkach juz nie, to zastanow sie dobrze co zrobiles, bo wrozek na forum brak.

zaczalbym od wywalenia .bashrc (zakladajac ze to, co wkleiles, to Twoj lokalny bashrc w home, i ze globalnego nie ruszales... nie mowiac o innych plikach), sprawdzenia jak wszystko sie zachowuje i wtedy mozna zaczac wprowadzac zmiany, o ile sie rozumie co te zmiany robia.

nie korzystam z opensuse, nie wiem jaka jest defaultowa zawartosc bashrc, widac ze kombinowales cos na oslep i bez sensu, ale mam przeczucie ze to nie jedyny plik, jaki edytowales. zrob liste plikow, ktore edytowales, przywroc wszystkie do stanu pierwotnego, wtedy okresl swoj problem ("vim nie wyswietla kolorow") i mozna sie wziasc za jego rozwiazanie. probujac rozwiazac jeden problem, jednoczesnie nie majac zielonego pojecia co robisz, stworzyles sobie problem znacznie wiekszy i oczekujesz od nas, bysmy zgadywali co i gdzie schrzaniles? to tak nie dziala.
PGP:208DAF5448644C0B