Szukam sugestii dotyczących konfiguracji dla moich konkretnych potrzeb. Nie zrobiłem wiele linuksa od czasu college'u i chcę wrócić do tego jako hobby. Mam trochę niezbyt mocny sprzęt (512 MB pamięci RAM, pojedynczy rdzeń). Chcę robić wszystko za pomocą powłok tekstowych i edytorów, takich jak vim. Moim celem jest, aby nigdy nie dotykać myszy.
Potrzebuję możliwości otwarcia wielu powłok jednocześnie, jednej z uruchomionym serwerem WWW, jednej z uruchomionym vimem, jednej z uruchomionym potokiem kompilacji aplikacji, innym dla poleceń powłoki ad-hoc, takich jak wget, grepping i rozpakowywanie itd. Muszę być w stanie otwierać nowe powłoki i szybko przełączać się między nimi za pomocą klawiatury.
Ale chociaż chcę wielu powłok, nie chcę środowiska graficznego. Nie chcę nigdy ulec pokusie używania myszy; częścią mojego celu jest zmuszenie się do nauki sposobu wykonywania różnych zadań z wiersza poleceń.
Chcę też móc korzystać z mojego dużego monitora, działającego w vimie z kilkoma setkami kolumn.
czy to możliwe?
źródło
Odpowiedzi:
Przeczytałem twoje pytania kilka razy, zanim zdałem sobie sprawę, że zdecydowanie mam dla ciebie zalecenie: vim with tmux: http://tmux.sourceforge.net/
tmux to „multiplekser” ekranu, który pozwala mieć kilka okien i paneli „w obrębie 1”
Jest następcą czcigodnego programu „screen”, stanowiącego podstawę wielu koderów cli. Jedną z jego oryginalnych zwycięskich funkcji nad vimem była zdolność do dzielenia okien zarówno pionowo, jak i poziomo. Jednak ekran przesunął się do przodu i teraz może to zrobić.
Przykład:
Kolejną częścią konfiguracji, którą poleciłbym, jest dobry zestaw aliasów. Dzięki temu pisanie na klawiaturze i interakcja będą o wiele łatwiejsze i szybsze
Niektóre z moich ulubionych są pokazane tutaj jako przykłady:
Aliasy można ustawić w pliku .bash_aliases, który jest wywoływany z .bashrc z: # definicjami aliasów. if [-f ~ / .bash_aliases]; następnie . ~ / .bash_aliases fi
Możliwe, że masz już ten kod, więc po prostu własny plik .bash_aliases.
Obie te opcje działają na komputerze Mac i jest to dla mnie ważne (głównie użytkownik Ubuntu).
Większość osób korzystających z tmux mapuje klucze, aby było łatwiej. Domyślne wiązania po prostu nie są tak dobre. Oto moje ustawienia:
$ cat ~ / tmux.conf
Wreszcie (aby zamknąć pętlę), oto moje ustawienia .vimrc, które lubię, aby ułatwić korzystanie z powłoki:
Na koniec dokonuję kilku zmian w pliku .bashrc. Na przykład,
shopt -s autocd
gdy natychmiast wpisuję nazwę katalogu (który istnieje), moje płyty CD z powłoką. Sprytne! Oto moje zmiany .bashrc:źródło
Używam XMonad + tmux + Emacs do podobnej konfiguracji.
W przeszłości stosowałem ratpoison, ale XMonad czuł się bardziej solidny. Nigdy nie miałem z tym żadnych problemów w moich 256 MB, 512 MB pudełkach. Ratpoison miał pewne problemy ze stabilnością, ale jest to anegdota i od tego czasu mogło się to zmienić.
Użyłem również ekranu GNU, ale tmux ma pewne funkcje, których ekran nie ma.
Jeśli znasz już vima, lepiej nie naucz się nowego narzędzia. Jeśli tego nie zrobisz, Emacs może używać wielu powłok (
C-u M-x shell
), używać ulubionej powłoki (M-x term
), możesz pisać, kompilować i debugować swoje programy, czytać maile, spotykać się w IRC, czytać strony internetowe / informacyjne / man, uruchamiać większość REPL powłoki (np.M-x run-python
), użyj w nim git / hg / svn, edytuj zdalne pliki za pomocą TRAMP, użyj dired do wykonywania prawie wszystkich operacji na plikach, użyj grep / find / ack w nim. Możesz używać Emacsa z lub bez X. Nie potrzebujesz terminalnego multipleksera, takiego jak screen lub tmux, ale wolę uruchamiać emacsa jako serwer i używać emacsclient z tmux, jeśli uruchamiasz go z powłoki.źródło
dwm wykorzystuje tylko kilkaset kB pamięci, sterowany klawiaturą, ale możesz także użyć myszy, jeśli chcesz. Sprawdź http://suckless.org, aby uzyskać bardziej proste, ale potężne narzędzia.
źródło
W przypadku wielu powłok z łatwą nawigacją między nimi za pomocą klawiatury, możesz zajrzeć do ekranu GNU lub byobu (co jest jego ulepszeniem).
źródło
Podobne przedsięwzięcie podjąłem kilka miesięcy temu, porzucając mysz i badając wiele ustawień i menedżerów okien. Wygląda na to, że otrzymałeś już wiele pomocnych sugestii, ale pomyślałem, że kilka dodatkowych centów nie zaszkodzi. Oto moje dwa:
Spójrz na menedżera okien i3. Jest lekki, z prostą konfiguracją i nie wymaga ponownej kompilacji po zmianie konfiguracji. Funkcja kafelkowania i oznaczone obszary robocze oznaczają brak myszy i nieograniczone możliwości w zależności od preferencji i miejsca na ekranie. Programy można przypisywać do tagów, a klucze można przypisywać do niemal wszystkiego. i3status lub conky są łatwo przesyłane do i3 w celu uzyskania informacji o systemie. Zainstaluj dmenu i odłącz mysz.
Wypróbuj lekką dystrybucję. Arch, Gentoo i Slackware oferują różne opcje konfiguracji lekkiego środowiska. Zacznij od małej i zwróć uwagę na zależności. Zainstaluj tylko to, czego potrzebujesz i naucz się go poprawnie konfigurować. Nie uruchamiaj X podczas rozruchu. Naucz się korzystać ze wszystkich narzędzi na swój koszt. Vim jest bestią. Jeśli już to wiesz, użyj go. Jeśli nie, naucz się tego. Zwróć uwagę na szczegóły. Dowiedz się, co masz w systemie i dlaczego.
źródło
Podobne pragnienie miałem około sześć miesięcy temu. Przede wszystkim dlatego, że pracowałem przez SSH przez cały dzień. Jak już sugerowano, użyj ekranu GNU. Jest dość okropny (IMHO) zaraz po instalacji. Jednak! Jest wysoce konfigurowalny za pomocą pliku .screenrc. Istnieje wiele samouczków online, które zawierają kod, który można wyciąć i wkleić, aby uzyskać go tak, jak chcesz.
Poszedłem tak daleko, że przygotowałem kilka skryptów do skonfigurowania takiego środowiska - MALiCE - „My Awesome Linux Coding Environment”. Jest dostępny na Github tutaj:
Złośliwość
Dokumentuje to również wiele skrótów klawiaturowych, a także przykładowe pliki .muttrc i .screenrc - które są skonfigurowane do pracy z takimi rzeczami, jak Gmail.
Zauważ, że nie jest idealny, ale może zaoszczędzić trochę czasu i wysiłku, aby przyjrzeć się niektórym plikom konfiguracyjnym i skryptom. Istnieje silne uprzedzenie vim.
Poleciłbym także programy takie jak cmus (tekstowy odtwarzacz multimedialny - całkiem niezły) i mutt (klient poczty e-mail - ponownie skonfigurowany za pomocą pliku tekstowego .muttrc). Istnieją również tekstowi klienci IRC i wierzcie lub nie, tekstowe dekodery wideo, które zamieniają wideo w ASCII - trochę ekstremalne, ale każde z nich własne.
Jeśli nie chcesz w ogóle pulpitu, istnieje wiele opcji. Na przykład możesz zainstalować slackware, które, jeśli dobrze pamiętam, uruchamia się do interfejsu wiersza poleceń. Musisz zrobić wszystko, aby uruchomić GUI.
źródło
elinks
przeglądarkę internetową do tej listy dobrych narzędzi tekstowych.http://en.wikipedia.org/wiki/VESA_BIOS_Extensions
http://www.pendrivelinux.com/vga-boot-modes-to-set-screen-resolution/
Ale nie wszystkie są obsługiwane przez wszystkie karty graficzne, powinieneś je przetestować.
Myślę, że przełączanie między wieloma powłokami jest wystarczająco szybkie.
źródło
Kluczem do tego nie jest dystrybucja, ale narzędzia. Po prostu przestań używać narzędzi GUI i dostosuj narzędzia CLI, aby wyglądały i zachowywały się dokładnie tak, jak chcesz. Jednym ze sposobów jest do edycji
~/.Xresources
, a następnie załaduj goxrdb
w~/.xinitrc
. Tam możesz również uruchomić zestaw aplikacji, z których zawsze korzystasz.Oczywiście potrzebujesz dobrej powłoki: powiedziałbym, że zsh. Będziesz musiał intensywnie pracować
~/.zshrc
. (Ale bash oczywiście też by działał. Wtedy~/.bashrc
byłoby to miejsce.)Po drugie, redaktor. Emacs lub vim, w zależności od tego, którego obecnie używasz. Mniej zaawansowany edytor (np. Nano) nie zadziała. Podobnie jak w przypadku powłoki, dużo pracy wykonasz na
~/.emacs
odpowiednich plikach inicjujących.Musisz włączyć jak najwięcej w swoim edytorze tekstu. Podam kilka przykładów ze świata Emacsa, po prostu dlatego, że jestem użytkownikiem Emacsa. W przypadku poczty rmail. Do zarządzania plikami, dired. Do przeglądania stron internetowych, W3M. Dla wiadomości, gnus (chociaż go nie używam). Na stronach podręcznika,
M-x man
. I tak dalej.Powodem, dla którego to robisz i nie używasz innych aplikacji CLI (np. Tylko
man
do stron man, rysi do przeglądania itp.) Jest:1) poziom integracji (zabij, szarpnij, twórz skróty; wszystko w mgnieniu oka ...)
2) skróty klawiaturowe do nawigacji kursorem, wyszukiwania itp. (Np. Pamięć mięśni)
Co do X, nie musisz go porzucać. To, że chcesz mieć wszystko w CLI, nie oznacza, że wcale nie chcesz GFX (lub - przynajmniej chcę tylko CLI i GFX). Na przykład, chociaż modyfikujesz obrazy za pomocą zamglenia lub konwersji (CLI), nadal chcesz go wyświetlić, aby sprawdzić wynik (na przykład w gliv; po prostu wyłącz pasek menu, aby nie kusiło go użycie myszy). Innym przykładem są dokumenty LaTeX i PDF.
Jeśli chodzi o terminal, większość ludzi powiedziałaby screen lub tmux, ale można również użyć wirtualnych terminali Linux (konsola lub ttys). W X urxvt ma rozszerzenie Perla, które włącza tabulatory. Dla tych (ttys i urxvt) możesz ustawić jednolity interfejs, na przykład Alt-J / K, aby przełączać się między kartami, więc nie musisz sięgać po klawisze strzałek (lub cokolwiek, co jest domyślne).
Powodzenia :) Zapraszam do przesłania mi swoich własnych wskazówek, kiedy skończysz (lub prawie tam ... nigdy nie skończyłeś), ponieważ jestem na tej samej ścieżce, co ty.
źródło