Je recherche des suggestions de configuration pour mes besoins particuliers. Je n'ai pas fait beaucoup de Linux depuis l'université et je veux y revenir comme un hobby. J'ai du matériel pas trop puissant (512 Mo de RAM, simple cœur). Je veux tout faire via des shells et des éditeurs basés sur du texte, tels que vim. Mon objectif est de ne jamais toucher la souris.
J'ai besoin d'avoir la possibilité d'ouvrir plusieurs shells à la fois, l'un exécutant un serveur Web, un exécutant vim, un exécutant mon pipeline de génération d'applications, un autre pour les commandes de shell ad hoc telles que wget, grepping et untarring, etc. pouvoir ouvrir de nouveaux shells et basculer rapidement entre les shells avec le clavier.
Mais même si je veux plusieurs shells, je ne veux pas d'un environnement de bureau graphique. Je ne veux jamais être tenté d'utiliser la souris; une partie de mon objectif est de me forcer à apprendre la façon de faire en ligne de commande diverses tâches.
Je veux également pouvoir profiter de mon grand écran, exécutant vim avec quelques centaines de colonnes en dip-dlay.
Est-ce possible?
la source
Réponses:
J'ai lu vos questions plusieurs fois avant de réaliser que j'ai définitivement une recommandation pour vous: vim avec tmux: http://tmux.sourceforge.net/
tmux est un «multiplexeur d'écran» qui vous permet d'avoir plusieurs fenêtres et volets «en 1»
Il est le successeur du vénérable programme «screen», longtemps un incontournable de nombreux codeurs cli. L'une de ses fonctionnalités primées par rapport à vim était la possibilité de diviser les fenêtres verticalement et horizontalement. Cependant, l'écran a progressé et peut désormais le faire également.
Exemple:
Une autre partie de la configuration que je recommanderais est un bon ensemble d'alias. Cela rendra votre saisie et votre interaction beaucoup plus faciles et plus rapides
Certains de mes favoris sont présentés ici à titre d'exemples:
Les alias peuvent être configurés dans un fichier .bash_aliases appelé à partir de .bashrc avec: # définitions d'alias. if [-f ~ / .bash_aliases]; puis . ~ / .bash_aliases fi
Il y a de fortes chances que vous ayez déjà ce code, il vous suffit donc de créer votre propre fichier .bash_aliases.
Ces deux options fonctionnent sur un Mac et c'est une considération importante pour moi (un utilisateur principalement Ubuntu).
La plupart des gens utilisant tmux remappent les clés pour le rendre plus facile. Les liaisons par défaut ne sont tout simplement pas si bonnes. Voici mes paramètres:
$ cat ~ / tmux.conf
Enfin (pour fermer la boucle), voici mes paramètres .vimrc eux-mêmes que j'aime devoir rendre le shell plus facile à utiliser:
Enfin, j'apporte quelques modifications à mon fichier .bashrc. Par exemple,
shopt -s autocd
lorsque je tape un nom de répertoire (qui existe), mes CD de shell dans ce répertoire immédiatement. Nifty! Voici donc mes modifications .bashrc:la source
J'utilise XMonad + tmux + Emacs pour une configuration similaire.
J'ai utilisé du ratpoison pendant un an dans le passé, mais XMonad s'est senti plus robuste. Je n'ai jamais eu aucun problème avec mes boîtiers 256 Mo, 512 Mo. Ratpoison a eu quelques problèmes de stabilité, mais c'est anecdotique et les choses ont peut-être changé depuis.
J'ai également utilisé l'écran GNU, mais tmux a certaines fonctionnalités que l'écran n'a pas.
Si vous connaissez déjà vim, vous feriez mieux de ne pas apprendre un nouvel outil. Si vous ne le faites pas, Emacs peut utiliser plusieurs shells (
C-u M-x shell
), utiliser votre shell préféré (M-x term
), vous pouvez écrire, compiler et déboguer vos programmes, lire vos mails, sortir en IRC, lire les pages web / info / man, exécuter la plupart des REPL shells (par exempleM-x run-python
), utilisez git / hg / svn à l'intérieur, éditez les fichiers distants avec TRAMP, utilisez dired pour faire presque toutes les opérations sur les fichiers, utilisez grep / find / ack à l'intérieur. Vous pouvez utiliser Emacs avec ou sans X. Vous n'avez pas besoin d'un multiplexeur de terminal comme screen ou tmux, mais je préfère exécuter emacs en tant que serveur et utiliser emacsclient à partir de tmux si vous l'exécutez à partir du shell.la source
dwm utilise seulement quelques centaines de Ko de mémoire, piloté par clavier, mais vous pouvez également utiliser la souris si vous le souhaitez. Consultez http://suckless.org pour des outils plus simples mais puissants.
la source
Pour plusieurs shells avec une navigation au clavier facile entre eux, vous voudrez peut-être regarder dans l' écran GNU ou byobu (qui est une amélioration de celui-ci).
la source
J'ai entrepris une entreprise similaire il y a quelques mois, abandonnant ma souris et explorant une multitude de configurations et de gestionnaires de fenêtres. Il semble que l'on vous ait déjà proposé de nombreuses suggestions utiles, mais je pensais que quelques centimes supplémentaires ne pouvaient pas faire de mal. Voici mes deux:
Jetez un œil au gestionnaire de fenêtres i3. Il est léger, avec une configuration simple et ne nécessite pas de recompilation après avoir modifié la configuration. La fonctionnalité de tuilage et les espaces de travail étiquetés signifient pas de souris et des possibilités infinies basées sur les préférences et l'espace d'écran. Les programmes peuvent être attribués à des balises et les clés peuvent être liées à presque tout. i3status ou conky sont facilement canalisés vers i3 pour les informations système. Installez dmenu et débranchez votre souris.
Essayez une distribution légère. Arch, Gentoo et Slackware offrent tous des options différentes pour configurer un environnement lumineux. Commencez petit et faites attention aux dépendances. Installez uniquement ce dont vous avez besoin et apprenez à le configurer correctement. Ne démarrez pas X au démarrage. Apprenez à utiliser tous les outils à vos frais. Vim est une bête. Si vous le connaissez déjà, utilisez-le. Sinon, apprenez-le. Faites attention aux détails. Découvrez ce que vous avez sur votre système et pourquoi il est là.
la source
J'ai eu un désir similaire il y a environ six mois. Principalement parce que je travaillais via SSH toute la journée. Comme cela a déjà été suggéré, utilisez l'écran GNU. C'est assez terrible (à mon humble avis) juste après l'avoir installé. Pourtant! Il est hautement personnalisable via le fichier .screenrc. Il existe de nombreux didacticiels en ligne qui fournissent du code que vous pouvez couper et coller pour l'obtenir comme vous le souhaitez.
Je suis allé jusqu'à rassembler quelques scripts pour mettre en place un tel environnement - MALiCE - «My Awesome Linux Coding Environment». Son disponible sur Github ici:
Malice
Cela documente également de nombreux raccourcis clavier ainsi que des exemples de fichiers .muttrc et .screenrc - qui sont configurés pour fonctionner avec des choses comme gmail.
Notez que ce n'est pas parfait, mais cela peut vous faire économiser du temps et des efforts pour jeter un œil à certains des fichiers de configuration et des scripts. Il y a un fort biais vim.
Je recommanderais également des programmes tels que cmus (lecteur multimédia à base de texte - assez bon) et mutt (client de messagerie - à nouveau configuré via le fichier texte .muttrc). Il existe également des clients IRC basés sur du texte et croyez-le ou non, des décodeurs vidéo basés sur du texte qui transformeront la vidéo en ASCII - un peu extrême mais chacun à leur façon.
Si vous ne voulez pas du tout de bureau, il existe un certain nombre d'options. Par exemple, vous pouvez installer slackware qui, si je me souviens bien, démarre sur une interface de ligne de commande. Vous devez vous mettre en quatre pour démarrer l'interface graphique.
la source
elinks
navigateur Web à cette liste de bons utilitaires textuels.http://en.wikipedia.org/wiki/VESA_BIOS_Extensions
http://www.pendrivelinux.com/vga-boot-modes-to-set-screen-resolution/
Mais ils ne sont pas tous pris en charge par toutes les cartes graphiques, vous devez les tester.
Pour basculer entre plusieurs shells je pense que Alt-F c'est assez rapide.
la source
La clé de tout cela n'est pas la distribution, mais les outils. Arrêtez simplement d'utiliser les outils GUI et ajustez les outils CLI pour qu'ils ressemblent et se comportent exactement comme vous le souhaitez. Une façon consiste à le modifier
~/.Xresources
, puis à le charger avecxrdb
in~/.xinitrc
. Là, vous pouvez également démarrer un tas d'applications que vous utilisez toujours.Évidemment, vous avez besoin d'un bon shell: je dirais zsh. Vous devrez travailler en profondeur
~/.zshrc
. (Mais bash fonctionnerait aussi, bien sûr. Alors, ce~/.bashrc
serait l'endroit.)Deuxièmement, un éditeur. Emacs ou vim, selon celui que vous utilisez actuellement. Un éditeur moins avancé (par exemple, nano) ne fera pas l'affaire. Comme avec le shell, vous feriez beaucoup de travail sur le
~/.emacs
ou les fichiers init correspondants.Vous devez incorporer autant que possible dans votre éditeur de texte. Je vais donner quelques exemples du monde Emacs, simplement parce que je suis un utilisateur Emacs. Pour le courrier, rmail. Pour la gestion des fichiers, dired. Pour la navigation sur le Web, W3M. Pour les nouvelles, gnus (bien que je ne l'utilise pas). Pour les pages de manuel,
M-x man
. Etc.La raison pour laquelle vous feriez cela et n'utilisez pas d'autres applications CLI (par exemple, uniquement
man
pour les pages de manuel, lynx pour la navigation, etc.) est:1) le niveau d'intégration (tuer, tirer, créer des raccourcis; tout en un clin d'œil ...)
2) les raccourcis clavier pour naviguer dans le curseur, rechercher, etc. (c'est-à-dire votre mémoire musculaire)
Quant à X, vous n'avez pas besoin de l'abandonner. Ce n'est pas parce que vous voulez tout dans CLI que vous ne voulez pas du tout de GFX (ou - au moins, je veux seulement CLI et GFX). Par exemple, bien que vous modifiiez ou convertissiez des images avec (CLI), vous souhaiterez toujours les afficher pour vérifier le résultat (par exemple, dans gliv; désactivez simplement la barre de menus pour ne pas être tenté d'utiliser la souris). Un autre exemple est les documents LaTeX et PDF.
Quant au terminal, la plupart des gens diraient screen ou tmux mais vous pouvez aussi utiliser les terminaux virtuels Linux (la console ou ttys). Dans X, urxvt a une extension Perl qui active les onglets. Pour ceux (les ttys et urxvt), vous pouvez configurer une interface uniforme, par exemple Alt-J / K pour basculer entre les onglets, vous n'avez donc pas besoin d'atteindre les touches fléchées (ou quoi que ce soit par défaut).
Bonne chance :) N'hésitez pas à m'envoyer quelques conseils par vous-même lorsque vous avez terminé (ou presque là ... vous n'avez jamais terminé), car je suis sur la même voie que vous.
la source