1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Sonderzeichen in der MacOSX-Bash

Dieses Thema im Forum "Unix & Terminal" wurde erstellt von Schnapper, 23.08.05.

  1. Schnapper

    Schnapper Gast

    Guten Morgen, ihr Lieben!


    Kann mir einer erklären, wie ich meine bash dazu überreden kann, Sonderzeichen darzustellen?

    Beispiel: Wenn ich die Taste "Ö" drücke, dann hätte ich auch gerne, dass das als das Zeichen 'ö' interpretiert wird, und nicht etwa als das Zeichen '\303\266', weil ich das echt ziemlich uncool finde...

    :cool:
     
  2. MatzeLoCal

    MatzeLoCal Rheinischer Bohnapfel

    Dabei seit:
    05.01.04
    Beiträge:
    2.421
    Windows Settings -> Display und hier "Character Set Encoding".
     
  3. Schnapper

    Schnapper Gast

    Hmm, steht schon auf Unicode! Sollte eigentlich klappen, und die anderen Einstellungen nützen auch nix...blöd, gelle?
     
  4. Schnapper

    Schnapper Gast

    Hmm, muss ich vielleicht in der bashrc noch irgendwas eintragen? Weil, die Fenstereinstellungen betreffen ja nur die Darstellung der bash, aber vielleicht ist's die bash selber, die mit den Sonderzeichen hier nix anfangen kann?

    Tastatureinstellungen sinds nicht, weil ansonsten die SOnderzeichen funktionieren
     
  5. Macholino

    Macholino Adams Parmäne

    Dabei seit:
    02.08.04
    Beiträge:
    1.303
    Da gibt es einen Thread hier, ich such ihn dir mal raus.

    --

    Hhmmm, das ist ja merkwürdig, hat den einer geklaut? Wo sind die Admins? Ich habe aus der Abteilung Unix & Terminal genau diese Anleitung einmal gesucht und gefunden.

    Wahrscheinlich werde ich nur noch 2 Stunden online sein, dann erst wieder nach dem Wochenende. Wenn es bis Montag keine Lösung gibt, schicke ich Dir einen Auszug meiner .bashrc.
     
  6. Schomo

    Schomo Russet-Nonpareil

    Dabei seit:
    15.11.04
    Beiträge:
    3.750
    Text Edit öffnen.
    In reinen Text umwandeln

    Eingeben:
    set meta-flag On
    set input-meta On
    set convert-meta Off
    set output-meta On
    set show-all-if-ambiguous On

    Korrektur: (SORRY! Hab es grad korrigiert! Jetzt ist es oben richtig)

    Dann als inputrc.txt sichern. Im Finder Datei markieren, dann Apfel + i und die Datei in .inputrc umbenennen dann 2 x Ok eingeben. Manchmal weigert sich der Finder die Datei umzubennen, dann wie unten vorgehen, nach der Erstellung der Textdatei:


    1. Im Terminal den Befehl cd eingeben.
    2. Dann den Befehl eingeben:
    mv inputrc.txt .inputrc
    3. Terminal beenden und Terminal neustarten

    Stammt übrigens von Marcel Bresink (Tinkertool) Nochmals Dank an Ihn. er ist ab und zu auch im AT Forum. http://www.bresink.de

    Bin grade auf einen schweren Bug gestoßen. Wenn man wie ich aus Versehen die .inputrc falsch schreibt und ü eingibt kommt man an das Userpasswort ran! WAHNSINN!!!!!


    Gruß Schomo
     
    #6 Schomo, 02.09.05
    Zuletzt bearbeitet: 02.09.05
  7. mullzk

    mullzk Linsenhofener Sämling

    Dabei seit:
    04.01.04
    Beiträge:
    2.529
    jetzt verarschst du uns, oder :eek: :eek:
    oder wie meinst du das mit ans userpasswort rankommen, echo $PASSWORD wird ja wohl kaum funktionieren...
     
  8. Schomo

    Schomo Russet-Nonpareil

    Dabei seit:
    15.11.04
    Beiträge:
    3.750
    Nee, is kein Scheiss, ich hatte aus versehen was Falsches gepostet, weil ich gehudelt hab. Hab es ja auch gleich korrigiert. Ich hab es dann blöderweise - wie man es nimmt;) bei mir ausprobiert, und bin so draufgekommen. Ich poste die falsche Version bewusst nicht. Ich kann sie die gerne per Mail o.Ä. dir zu kommen lassen, dann kannst du es ausprobieren. Ich hab ziemlich gestaunt. Wenn du ä drückst, kommt auch eine äusserst seltsame Darstellung. Keine Ahnung, was da abgeht!

    Ich mein das echt ernst. Vielleicht bin auch nur zu blöde...

    Gruß Schomo
     
  9. Binary

    Binary Gast

    Na jetzt ma Butter bei die Fische hier!

    Poste mal was du gefunden hast, damit mers Überprüfem können.

    lg
    Binary
     
  10. Schnapper

    Schnapper Gast

    ja, das will ich jetzt aber auch wissen!
    Und nebenbei bemerkt: Warum geht ihr so'n Umweg, um eine Textdatei namens .inputrc zu erstellen?

    Da macht man einfach ne shell auf, tippt
    "pico .inputrc", tippt den Inhalt und drückt STRG+X und schon hat mans! Das gefrickel mit dem Texteditor und dann umbennen usw kann man sich echt sparen! Aber danke für die inputrc ;)
     
  11. Schomo

    Schomo Russet-Nonpareil

    Dabei seit:
    15.11.04
    Beiträge:
    3.750
    Jaaaa, hab ich ja auch gemacht mit pico, hab es nur vergessen gehabt zu posten, weil ich die Anleitung mal aufgeschrieben hatte, deswegen bin ich auch drauf gekommen, weil ich bei copy und paste geschludert hatte. Wie gesagt öffentlich poste ich den Bug nicht, aber wenn ihr mir eine E-Mail schickert, kriegt ihr das File.

    Gruß Schomo
     
  12. Binary

    Binary Gast

    Also,

    Entwarnung.
    Ich erlaube mir hier den Bug von Schomo (vielen dank für die Mail!), so wie ich ihn reproduzieren konnte, zu Posten.

    (Schomo),


    erhält man eine Ausgabe folgender art:

    BASH LINENO RANDOM
    BASH_VERSINFO LINES SECONDS
    BASH_VERSION LOGNAME SECURITYSESSIONID
    COLUMNS MACHTYPE SHELL
    DIRSTACK MAILCHECK SHELLOPTS
    EUID OPTERR SHLVL
    GROUPS OPTIND TERM
    HISTCMD OSTYPE TERM_PROGRAM
    HISTFILE PATH TERM_PROGRAM_VERSION
    HISTFILESIZE PIPESTATUS UID
    HISTSIZE PPID USER
    HOME PS1 _
    HOSTNAME PS2 __CF_USER_TEXT_ENCODING
    HOSTTYPE PS4
    IFS PWD

    wenn man "ä" drückt, ausserdem funktioniert das "e" nicht mehr und ein druck auf das "ü" produziert die Zeichenfloge "gr".

    Bei der Ausgabe handelt es sich um die System Umgebungsvariablen.
    Diese kann man sich mit dem befehl "echo $<Name> anzeigen lassen.
    Also z.B. >echo $PWD
    /Users/Username

    gibt den aktuellen Pfad aus (befehl pwd).

    >echo $PS1
    \h:\w \u\$
    zeigt die konfig des kommando Promts an.

    Ich weiss jetzt nicht wie der Befehl lautet um die gesetzten Variablen
    zu zeigen (normal nehme ich "env") und kann mir das nur so erklären, dass
    die nicht mehr funktionierended escapesequenz auf dem "ä" zufällig jenen Befehl auslöst.

    lg
    binary
     
  13. Macholino

    Macholino Adams Parmäne

    Dabei seit:
    02.08.04
    Beiträge:
    1.303
    Früher hat's mal funktioniert, heute nicht. Ich habe für meine Umlaute immer noch lauter ?? als Platzhalter, obwohl meine .inputrc genauso aussieht wie von Schomo oben im Thread mit TextEdit beschrieben hat.

    Allerdings habe ich die Datei vim editiert.
     
  14. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
  15. Macholino

    Macholino Adams Parmäne

    Dabei seit:
    02.08.04
    Beiträge:
    1.303
    Meinst Du das?
    Ich nehme an, das gehört in die .bashrc?
     
  16. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Die .bash_profile wird aufgerufen, wenn die bash als login shell gestartet wird, also durch neue Session von Terminal.app.
    Die .bashrc wird aufgerufen, wenn die bash als nicht-login-shell gestartet wird, also wenn man 'bash' tippt, um einen neue sub-shell zu starten.

    Im folgenden ist gezeigt, daß man bei beiden Varianten die gleiche Umgebung vorfindet, da hiermit die .bashrc immer aufgerufen wird (zur Not von der .bash_profile):

    In meiner .bash_profile steht dieses, wobei die erste Zeile für den Aufruf interessant ist ;) :
    Code:
    . .bashrc
    alias ls='ls -vw'
    alias m2u="tr '\015' '\012'"
    alias u2m="tr '\012' '\015'"
    test -r /sw/bin/init.sh && . /sw/bin/init.sh
    
    In meiner . bashrc dieses:

    Code:
    LC_ALL=en_US.UTF-8
    export LC_ALL
    
    LANG=en_US.UTF-8
    export LANG
    
    PATH=/usr/local/php5/bin:/usr/local/php5/man:$PATH
    
    PATH=/usr/local/:/usr/local/bin:/usr/local/sbin:/Developer/Tools:
    /usr/local/share/man:/sw/share/man:/usr/local/mysql/bin:
    /usr/local/mysql/man:$PATH
    export PATH
    
    In der .inputrc
    Code:
    set meta-flag on
    set convert-meta off
    set output-meta on
    set completion-ignore-case on
    set show-all-if-ambiguous on
    
     
    #16 MacMark, 23.12.05
    Zuletzt bearbeitet: 23.12.05
  17. Schnapper

    Schnapper Gast

    Hi,

    das klappt schonmal, was das Tippen in der Shell betrifft. Legt man aber jetzt einen Ordner an namens, keine Ahnung, von mir aus "öse", dann sieht der bei 'ls' aber so aus:

    o??se

    im Finder hingegen richtig. Also scheinbar wird das ö richtig gesetzt, aber im Dateilisting falsch dargestellt. Bekommt man das auch noch hin?
     
  18. Macholino

    Macholino Adams Parmäne

    Dabei seit:
    02.08.04
    Beiträge:
    1.303
    Das sieht ja prima aus. Nur mal eine kurze Verständnisfrage, während ich mal einiges in mein Terminal tippe.

    Ich will die Umlaute und Sonderzeichen sichtbar haben, das heißt, nicht en_EN kommt für mich in Frage, sondern nur de_DE, oder?
     
  19. MacMark

    MacMark Biesterfelder Renette

    Dabei seit:
    01.01.05
    Beiträge:
    4.709
    Yes, Sir :)
    Mit
    Code:
    ls -w
    
    Du kannst aber auch in der .bash_profile einen Alias setzen, so daß ls immer als ls-w ausgeführt wird:
    Code:
    alias ls='ls -w'
    
    Ich habe meinen obigen (Listing-) Beitrag korrigiert und den Alias für ls dort nun auch angegeben.

    Boldly go ;)
     
  20. Macholino

    Macholino Adams Parmäne

    Dabei seit:
    02.08.04
    Beiträge:
    1.303
    Na, das ist doch mal eine muntere Diskussion. Jetzt muss ich nur noch wieder finden, wie ich das Terminal farbig bekommen kann. Verzeichnisse, ausführbare Dateien etc. in unterschiedlichen Farben.

    Falls es jemand weiß (...), suche ich gar nicht weiter.
     

Diese Seite empfehlen