Ich suche nach Vorschlägen für ein Setup für meine speziellen Bedürfnisse. Ich habe seit dem College nicht mehr viel Linux gemacht und möchte es als Hobby wieder aufnehmen. Ich habe einige nicht zu leistungsfähige Hardware (512 MB RAM, Single Core). Ich möchte alles über textbasierte Shells und Editoren wie vim erledigen. Mein Ziel ist es, niemals die Maus zu berühren.
Ich brauche die Möglichkeit, mehrere Shells gleichzeitig zu öffnen, eine, auf der ein Webserver ausgeführt wird, eine, auf der vim ausgeführt wird, eine, auf der meine Anwendungserstellungspipeline ausgeführt wird, eine andere, die Ad-hoc-Shell-Befehle wie wget, grepping und uncarring usw. unterstützt in der Lage sein, neue Shells zu öffnen und mit der Tastatur schnell zwischen Shells zu wechseln.
Aber obwohl ich mehrere Shells haben möchte , möchte ich keine grafische Desktop-Umgebung. Ich möchte nie versucht sein, die Maus zu benutzen. Teil meines Ziels ist es, mich zu zwingen, die Befehlszeilenmethode für verschiedene Aufgaben zu erlernen.
Ich möchte auch in der Lage sein, meinen großen Monitor zu nutzen, auf dem ein paar hundert Spalten angezeigt werden.
Ist das möglich?
quelle
Antworten:
Ich habe Ihre Fragen mehrmals durchgelesen, bevor mir klar wurde, dass ich definitiv eine Empfehlung für Sie habe: vim with tmux: http://tmux.sourceforge.net/
tmux ist ein 'Multiplexer'-Bildschirm, mit dem Sie mehrere Fenster und Fensterbereiche' innerhalb von 1 'haben können.
Es ist ein Nachfolger des ehrwürdigen "Bildschirm" -Programms, das seit langem ein Grundnahrungsmittel vieler CLI-Programmierer ist. Eines der ursprünglichen Erfolgsmerkmale von vim war die Möglichkeit, Fenster sowohl vertikal als auch horizontal zu teilen. Der Bildschirm hat sich jedoch nach vorne bewegt und kann dies jetzt auch.
Beispiel:
Ein weiterer Teil des Setups, den ich empfehlen würde, ist ein guter Satz von Aliasen. Dies erleichtert und beschleunigt die Eingabe und Interaktion erheblich
Einige meiner Favoriten werden hier als Beispiele gezeigt:
Aliase können in einer .bash_aliases-Datei eingerichtet werden, die von .bashrc mit folgenden Angaben aufgerufen wird: # Aliasdefinitionen. if [-f ~ / .bash_aliases]; dann . ~ / .bash_aliases fi
Möglicherweise haben Sie diesen Code bereits, also nur Ihre eigene .bash_aliases-Datei.
Beide Optionen funktionieren auf einem Mac und das ist ein wichtiger Gesichtspunkt für mich (ein größtenteils Ubuntu-Benutzer).
Die meisten Leute, die tmux benutzen, ordnen die Tasten neu zu, um es einfacher zu machen. Die Standardbindungen sind einfach nicht so gut. Hier sind meine Einstellungen:
$ cat ~ / tmux.conf
Zum Schluss (um die Schleife zu schließen) sind hier meine .vimrc-Einstellungen selbst, die ich mag, um die Shell benutzerfreundlicher zu machen:
Schließlich nehme ich ein paar Änderungen an meiner .bashrc-Datei vor.
shopt -s autocd
Wenn ich beispielsweise einen Verzeichnisnamen eingebe (der existiert), werden meine Shell-CDs sofort in dieses Verzeichnis kopiert. Raffiniert! Hier sind meine .bashrc-Änderungen:quelle
Ich verwende XMonad + tmux + Emacs für ein ähnliches Setup.
Ich habe in der Vergangenheit ein Jahr lang Ratpoison verwendet, aber XMonad fühlte sich robuster an. Ich hatte nie Probleme mit meinen 256MB, 512MB Boxen. Ratpoison hatte einige Stabilitätsprobleme, aber das ist anekdotisch und die Dinge könnten sich seitdem geändert haben.
Ich habe auch GNU-Bildschirm verwendet, aber tmux hat einige Funktionen, die der Bildschirm nicht hat.
Wenn Sie vim bereits kennen, sollten Sie kein neues Tool lernen. Wenn Sie dies nicht tun, kann Emacs mehrere Shells (
C-u M-x shell
) verwenden, Ihre Lieblingsshell (M-x term
) verwenden, Sie können Ihre Programme schreiben, kompilieren und debuggen, Ihre Mails lesen, im IRC rumhängen, Web- / Info- / Man-Seiten lesen und die meisten REPL ausführen shells (zBM-x run-python
), benutze git / hg / svn, bearbeite entfernte Dateien mit TRAMP, benutze dired um fast alle Dateioperationen durchzuführen, benutze grep / find / ack. Sie können Emacs mit oder ohne X verwenden. Sie benötigen keinen Terminal-Multiplexer wie screen oder tmux, aber ich bevorzuge es, emacs als Server auszuführen und emacsclient von tmux zu verwenden, wenn Sie es von der Shell ausführen.quelle
dwm benötigt nur ein paar hundert kB Speicher (tastaturgesteuert), aber Sie können auch die Maus verwenden, wenn Sie möchten. Unter http://suckless.org finden Sie einfachere und leistungsfähigere Tools.
quelle
Für mehrere Shells mit einfacher Tastaturnavigation können Sie sich GNU Screen oder byobu (eine Erweiterung davon) ansehen .
quelle
Ich habe vor ein paar Monaten ein ähnliches Unterfangen unternommen, meine Maus verlassen und eine Vielzahl von Setups und Fenstermanagern erkundet. Anscheinend wurden Ihnen bereits viele hilfreiche Vorschläge unterbreitet, aber ich dachte, ein paar Cent mehr könnten nicht schaden. Hier sind meine beiden:
Schauen Sie sich den i3 Window Manager an. Es ist leicht, mit einfacher Konfiguration und erfordert keine Neukompilierung, nachdem die Konfiguration geändert wurde. Kachelfunktionalität und gekennzeichnete Arbeitsbereiche bedeuten keine Maus und endlose Möglichkeiten, je nach Vorlieben und Bildschirmgröße. Programme können Tags zugewiesen und Tasten an fast alles gebunden werden. i3status oder conky werden einfach an i3 weitergeleitet, um Systeminformationen zu erhalten. Installieren Sie das Menü und ziehen Sie den Netzstecker.
Versuchen Sie es mit einer leichten Distribution. Arch, Gentoo und Slackware bieten verschiedene Optionen zum Einrichten einer Lichtumgebung. Fangen Sie klein an und achten Sie auf Abhängigkeiten. Installieren Sie nur das, was Sie benötigen, und lernen Sie, es richtig zu konfigurieren. Starten Sie X nicht beim Booten. Lernen Sie, alle Tools auf Ihre Kosten zu nutzen. Vim ist ein Biest. Wenn Sie es bereits wissen, verwenden Sie es. Wenn nicht, lerne es. Achten Sie auf die Details. Erfahren Sie, was Sie auf Ihrem System haben und warum es dort ist.
quelle
Ich hatte vor ungefähr sechs Monaten einen ähnlichen Wunsch. In erster Linie, weil ich den ganzen Tag über über SSH gearbeitet habe. Verwenden Sie, wie bereits vorgeschlagen, den GNU-Bildschirm. Es ist ziemlich schrecklich (IMHO) direkt nach der Installation. Jedoch! Es ist sehr anpassbar über die .screenrc-Datei. Es gibt viele Online-Tutorials, die Code enthalten, den Sie ausschneiden und einfügen können, um ihn ganz nach Ihren Wünschen zu erhalten.
Ich ging so weit, ein paar Skripte zum Einrichten einer solchen Umgebung zusammenzustellen - MALiCE - 'My Awesome Linux Coding Environment'. Es ist hier auf Github erhältlich:
Bosheit
Dies dokumentiert auch eine Vielzahl von Tastaturkürzeln sowie ein Beispiel für Muttrc- und Screenrc-Dateien, die für die Arbeit mit Dingen wie Google Mail eingerichtet wurden.
Beachten Sie, dass es nicht perfekt ist, aber es kann Ihnen Zeit und Mühe ersparen, sich einige der Konfigurationsdateien und Skripte anzusehen. Es gibt eine starke Vim-Tendenz.
Ich würde auch Programme wie cmus (textbasierter Mediaplayer - ziemlich gut) und mutt (E-Mail-Client - erneut über die Textdatei .muttrc konfiguriert) empfehlen. Es gibt auch textbasierte IRC-Clients und ob Sie es glauben oder nicht, textbasierte Videodecoder, die Videos in ASCII verwandeln - ein bisschen extrem, aber für sich.
Wenn Sie überhaupt keinen Desktop möchten, gibt es eine Reihe von Optionen. Zum Beispiel könnten Sie Slackware installieren, die, wenn ich mich richtig erinnere, über eine Befehlszeilenschnittstelle startet. Sie müssen sich sehr viel Mühe geben, um die GUI zu starten.
quelle
elinks
Webbrowser zu dieser Liste guter textbasierter Dienstprogramme hinzufügen .http://en.wikipedia.org/wiki/VESA_BIOS_Extensions
http://www.pendrivelinux.com/vga-boot-modes-to-set-screen-resolution/
Sie werden jedoch nicht von allen Grafikkarten unterstützt. Sie sollten sie testen.
Für das Umschalten zwischen mehreren Shells halte ich Alt-F für schnell genug.
quelle
Der Schlüssel dazu ist nicht die Distribution, sondern die Werkzeuge. Stoppen Sie einfach die Verwendung von GUI-Tools und optimieren Sie die CLI-Tools, damit sie genau so aussehen und sich so verhalten, wie Sie möchten. Eine Möglichkeit besteht darin, sie zu bearbeiten
~/.Xresources
und dann mitxrdb
in zu laden~/.xinitrc
. Dort können Sie auch eine Reihe von Anwendungen starten, die Sie immer verwenden.Offensichtlich braucht man eine gute Muschel: Ich würde zsh sagen. Sie müssen ausgiebig arbeiten
~/.zshrc
. (Aber bash würde natürlich auch funktionieren. Dann~/.bashrc
wäre es der richtige Ort.)Zweitens ein Editor. Emacs oder vim, je nachdem was du gerade benutzt. Ein weniger fortgeschrittener Editor (z. B. Nano) reicht nicht aus. Wie bei der Shell würden Sie viel Arbeit an
~/.emacs
oder an den entsprechenden Init-Dateien.Sie müssen so viel wie möglich in Ihren Texteditor integrieren. Ich werde einige Beispiele aus der Emacs-Welt nennen, einfach weil ich ein Emacs-Benutzer bin. Für Mail, Mail. Für die Dateiverwaltung dired. Für das Surfen im Internet W3M. Für Nachrichten Gnus (obwohl ich es nicht benutze). Für Manpages
M-x man
. Und so weiter.Der Grund, warum Sie dies tun und keine anderen CLI-Anwendungen verwenden (z. B. nur
man
für Manpages, Lynx zum Browsen usw.), ist:1) den Grad der Integration (töten, reißen, Verknüpfungen herstellen; alles im Handumdrehen ...)
2) die Tastaturkürzel zum Navigieren des Cursors, Suchen usw. (dh Ihr Muskelgedächtnis)
Was X betrifft, müssen Sie es nicht aufgeben. Nur weil Sie alles in CLI wollen, heißt das nicht, dass Sie GFX überhaupt nicht wollen (oder - zumindest, ich will nur CLI und GFX). Wenn Sie beispielsweise Bilder mit (CLI) mogrify oder convert ändern, möchten Sie sie dennoch anzeigen, um das Ergebnis zu überprüfen (z. B. in gliv; deaktivieren Sie einfach die Menüleiste, um nicht versucht zu sein, die Maus zu verwenden). Ein weiteres Beispiel sind LaTeX- und PDF-Dokumente.
Was das Terminal betrifft, würden die meisten Leute screen oder tmux sagen, aber Sie könnten auch die virtuellen Linux-Terminals (die Konsole oder ttys) verwenden. In X verfügt urxvt über eine Perl-Erweiterung, die Registerkarten aktiviert. Für diese (ttys und urxvt) können Sie eine einheitliche Benutzeroberfläche einrichten, z. B. Alt-J / K, um zwischen Registerkarten zu wechseln, sodass Sie nicht nach den Pfeiltasten greifen müssen (oder was auch immer die Standardeinstellung ist).
Viel Glück :) Wenn Sie fertig sind (oder fast fertig sind), können Sie mir gerne einige eigene Hinweise zukommen lassen, da ich auf dem gleichen Weg bin wie Sie.
quelle