misterunknown schrieb:
Feuerrabe schrieb:
1. Wie kann ich so ein Verhalten auch für selbst geschriebene Befehle (= Bash-Skripte und C-Programme) erreichen, daß also die bash weiß, daß mein Programm als Argument z. B. Dateien mit der Endung .html, .txt oder .php erwartet?
Das Stichwort hierzu ist Bash-Completition. Im Internet findest du da viele Informationen, beispielsweise diesen deutschen Artikel oder das hier oder das.
Den einen Artikel habe ich überflogen (die anderen kurz angekuckt) und noch nicht alles verstanden. (Muß mir mal in einer ruhigen Stunde die Zeit nehmen, das genauer zu lesen.) Wenn ich die Beispiele richtig interpretiere, kann man mit dem Befehl complete eigenen Kommandos sagen, auf welche Dateinamen sie hören sollen, also genau das, was ich wollte. Freilich mit Einschränkungen, wenn man verschiedene Endungen bedienen will.
Muß man solche Skripte dann bei jedem Bash-Aufruf oder gar bei jedem Aufruf eigener Befehle laufen lassen, oder werden mit einem einmaligen Aufruf (pro Befehl) irgendwelche Bash-Variablen verändert, die sich das System dann merkt? Wenn ja, könnte man dann nicht direkt die Bash-Variablen in .bashrc oder .profile entsprechend festlegen?
2. Auf einem anderen Rechner mit Kubuntu/Xubuntu 14.04 funktionert genau dasselbe jedoch nicht, d. h. ich muß den Befehlsnamen von Hand zu Ende schreiben. Woran liegt das, und wie kann ich das ändern?
Vermutlich ist auf dem System das Paket bash-completition nicht vorhanden. Siehe auch hier.
Da die Rechner an unterschiedlichen Orten stehen, kann ich es immer nur für einen überprüfen. Im Moment bin ich an dem, wo es funktioniert. Ich kann mir aber kaum vorstellen, daß auf dem anderen bash-completion nicht installiert ist, denn im Normalfall werden ja auch dort Befehlsnamen ergänzt. Nur eben nicht in dem Kontext
| for x in y; do Befehl ...
|
oder
| for ((i=$Anfang; i<=$Ende; i++)); do Befehl ...
|
>> 3. Wo kann ich einstellen, ob ich gefragt werden will? Ich habe die Stelle trotz intensiver Suche nicht gefunden.
Das ist keine Funktion der Bash, sondern des Terminal Emulators. Ein Beispiel wäre gnome-terminal. Dort kannst du das Verhalten normalerweise in den Einstellungen anpassen.
Auf dem Rechner mit Kubuntu 14.04 ist KDE installiert und in Gebrauch. (Auf dem anderen mit 12.04 zwar auch, aber hier benutze ich XFCE.) Könnte es daran liegen? Eigentlich ist es ja meist umgekehrt: Daß man bei KDE wesentlich mehr Einstellmöglichkeiten hat als bei XFCE. Die Menüs sehen bei beiden Oberflächen gleich oder fast gleich aus. Die Tastenkombinationen habe ich beispielsweise aus den Ausklapp-Menüs am oberen Fensterrand. Sonst wüßte ich das gar nicht. Und sie sind für beide Terminal-Emulatoren gleich.
Beim KDE-Rechner habe ich in den Einstellungen für den Terminal-Emulator schon viel gesucht, aber wie gesagt ohne Erfolg. So konnte ich (bei KDE und XFCE) die Farben des Befehlsfensters, die Schriftart und -größe, den Befehlspuffer usw. anpassen, aber eben nicht bestimmen, ob die Tastenkombination Strg + Umschalt + Q die Fenster mit oder ohne Nachfrage schließt.
Weißt Du, wo man das im KDE-Terminal-Emulator einstellen kann?
Bei meinem XFCE-Rechner erscheint beim Betätigen der Tastenkombination die Nachfrage, und man kann ankreuzen, daß man in Zukunft nicht mehr gefragt werden will. Vielleicht hat auf dem anderen Rechner irgendjemand mal dieses Kästchen angeklickt. Dann wird man nicht mehr gefragt und kann deswegen das Häkchen nicht mehr wegnehmen. Aber irgendwo muß man das doch rückgängig machen können. Am liebsten wäre mir irgendeine Konfigurationsdatei.
P. S.: Seltsamerweise funktionieren in diesem Unterforum weder die automatisch numerierten Listen (habe ich heute im Unterforum Multimedia schon verwendet) noch die Hervorhebung im Codeblock mit [mark ] ... [/mark ].
Eine Korrekte Nummerierung bekommt man, wenn man als Nummer immer die 1 verwendet und am Anfang der Zeile ein Whitespace einfügt:
1. Erster Punkt
1. Zweiter Punkt
1. Dritter Punkt
^
|
Leerzeichen
Das weiß ich und funktioniert normalerweise problemlos (s. mein heutiger Beitrag in einem anderen Unterforum). Aber hier führte es zu grausigen Ergebnissen; daher mußte ich von Hand numerieren, was satztechnisch nicht so toll aussieht. Vielleicht lag es daran, daß in den Listenpunkten Codeblöcke enthalten sind.
Markierungen funktionieren nur im Fließtext, oder in Rohtext-Blöcken. Hat man einen Codeblock mit Syntax-Highlighting, funktioniert das nicht.
Das steht im Syntaxberater aber anders.
Gruß
Feuerrabe
Bearbeitet von rklm:
Link repariert