GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Können die leeren Räume/der Hintergrund in einem Terminal durch ein zufälliges (aber hübsches) Muster von ASCII-Zeichen ersetzt werden?

Kontext und Frage

Es gibt viele Möglichkeiten, die Terminal- und Shell-Umgebung einzufärben. Die Ausgabe einzelner Befehle, wie z. B. ls und grep , kann auch eingefärbt werden. Nicht direkt verwandt, aber dennoch interessant, ist die Vorstellung, Medien auf der Konsole abzuspielen, aber dies beruht scheinbar auf einem Framework (Bibliotheken) auf dem Windowing-System. Die folgende Frage ist ausschließlich auf die bash ausgerichtet Shell und ihre Implementierung im Linux-Terminal-Framework und ihre Untermauerung.

Bitte betrachten Sie die folgende Montage von ASCII-„Renderings“ einer Szene in einem 2D-Spiel:

Dies sind keine zufällig generierten Szenen. Die Segmente, die ich ausgewählt habe, zeigen alle tatsächlich eine Art „Grasland“ (Bäume, Büsche und Sträucher, Blumen, Gras usw.) aus einem Spiel, das ASCII-Zeichen verwendet, um solche Objekte darzustellen. Die letzten 4 Szenen zeigen von Benutzern erstellte Tilesets, die im Grunde eine Neuzuordnung von ASCII-Zeichen mit Farbspezifikationen sind (solche Details sind trivial – es genügt zu sagen, dass dies die visuelle Inspiration für das ist, was ich hier in Bezug auf Visuals und „ Muster").

Die gemeinsamen Merkmale dieser Szenen in der Montagefreigabe sind:

  • Maximal 5-6 verschiedene ASCII-Zeichen (Kommas, Anführungszeichen und einige andere)
  • 2-4 Farben verwendet
    • für die Charaktere
    • in manchen Fällen für die Zeichenhintergründe – das letzte Beispiel soll die Verwendung von Farbschattierungen mit wenig oder keinem Zeichen zeigen, um ein Muster zu erstellen, d. h. ein Farbmosaik

Was ich im Moment in einer VM habe, ist Arch Linux und obwohl die Frage nicht verteilungsspezifisch ist, habe ich in ihrer Dokumentation nachgeschaut, wie man /etc/bash.bashrc anpasst Datei. Ich kann sehen, dass viele Erklärungen in die Konfiguration des Erscheinungsbilds der Eingabeaufforderung und allgemein aller Vordergrundelemente fließen. Es gibt nur wenige Informationen zur Konfiguration des Hintergrunds, außer normalerweise zu einer Volltonfarbe, wie z. B. diese Einstellungen und Tipps:

# Background
On_Black='e[40m'       # Black
On_Red='e[41m'         # Red
On_Green='e[42m'       # Green
On_Yellow='e[43m'      # Yellow
On_Blue='e[44m'        # Blue
On_Purple='e[45m'      # Purple
On_Cyan='e[46m'        # Cyan
On_White='e[47m'       # White

Ich verstehe immer noch nicht konzeptionell, was diese leeren/leeren/Hintergrund-"Leerzeichen" sind, die ich nicht eingegeben habe, als ich die Konsole benutzte, dh "woraus bestehen sie?" sozusagen. Besonders diejenigen, die nicht an der Eingabeaufforderung sind und die Befehle umschließen, die als Echo ausgegeben werden. In Bezug auf das, was auf der aktiven Zeile passiert, ist es möglich, diesen bash zu demonstrieren „zeilenorientiert“ wirkt und einige Operationen ein Löschen der aktiven Zeile auslösen (for i in $(seq 1 $(expr $(tput lines) * $(tput cols))); do echo -n M; done; tput cup 15 1 , geben Sie dann an der Eingabeaufforderung ein Zeichen ein und setzen Sie es zurück – demonstriert ein Mitwirkender) – dessen Umfang von einer CLI zur anderen variieren kann, dh zsh. Außerdem scheint es, wenn ich so etwas wie [ hinzufüge

Linux
  1. 3 nützliche Dinge, die Sie mit dem IP-Tool in Linux tun können

  2. Wie konvertiere ich Hex in ASCII-Zeichen in der Linux-Shell?

  3. Wie kann ich die Anzahl der Zeichen in einer Bash-Variablen zählen?

  4. Finden Sie unter Linux Dateien mit illegalen Windows-Zeichen im Namen

  5. Wie kann ich das neueste Anaconda mit wget installieren

Planen Sie einen Besuch beim Emacs-Psychiater

Bringen Sie mit lolcat Farbe in Ihr Linux-Terminal

Führen Sie ASCII Globe im Terminal mit dem Dienstprogramm globe-cli aus

So arbeiten Sie mit Vordergrund- und Hintergrundprozessen unter Linux

Konvertieren Sie Tabulatoren in Leerzeichen im Linux-Terminal mit dem Befehl „Erweitern“.

Verwenden des tr-Befehls in Linux, um mit Charakteren zu spielen