Ceci est une rapide maquette que je copie et colle ensemble. J'imagine que c'est super cool et utile.
Est-ce que quelque chose comme ça existe déjà?
command-line
images
Dennkster
la source
la source
feh
! Je sais que ce n'est pas dans le terminal, mais ça fait son travail.Réponses:
Mise à jour 2018-12-31
Le formidable émulateur de terminal polyvalent a une
icat
commande pour afficher des images (ne fonctionne pas dans tmux). Kitty active également les prévisualisations d’images dans ranger (un gestionnaire de fichiers terminal), méthode que j’utilise le plus souvent (fonctionne dans tmux).1. w3m
Bien que l'objectif principal
w3m
soit de fournir une navigation Web dans la console, il peut également être utilisé pour afficher des images dans un terminal. Les packages appropriés à installer sontw3m
etw3m-img
(sur Ubuntu au moins). Vous devez ensuite désactiver la visionneuse d'images externe en passant-o ext_image_viewer=0
ou en allant dans le menu d'options («o»)w3m
et désactiver la visualisation d'images externes.Maintenant, en tapant
w3m <image_name>
affichera l'image dans le terminal.w3m
utilisera l'intégralité de la fenêtre du terminal, vous ne pourrez donc pas voir vos commandes précédentes avant de quitterw3m
(pensezless
, noncat
). Notez que si l'image est trop grande pour s'adapter à la fenêtre du terminal, elle sera toujours ouverte de l'extérieur (dans imagemagick pour moi). Notez également que même si je lis plusieurs endroits pour lesquelsw3m
des images en ligne ne fonctionneraient pasgnome-terminal
, cela fonctionne bien pour moi. Il est un peu gênant de devoir taperq
deux fois pour fermer l’image en premier, puisw3m
.2. Terminologie
tycat
fait partie determinology
et affiche des images telles que descat
fichiers texte et desimgcat
travaux similaires pour iTerm2 sous OS X.3. libsixel + mlterm / xterm
Installez
libsixel-bin
tous les terminaux compatibles (les exemples sont mentionnés dans la section «Conditions requises» de ce fichier Lisez-moi , par exemple,mlterm
ouxterm
compilés avec les drapeaux appropriés et vous pourrez voir les images avec laimg2sixel
commande. Ces deux packages sont disponibles dans le dépôt Ubuntu.4. FIM
Ensuite, il y a FIM qui est une version améliorée de
fbi
. La page d'accueil indique qu'elle peut afficher des images non seulement avec le framebuffer, mais également avec X. Cependant, elle ne s'installera pas pour moi. Edit je l’ai lancé en téléchargeant la version de la tronc 0.5,./configure --disable-exif
puis en supprimant temporairementanaconda
(distribution python) de mon chemin car cela entraînait un conflit aveclibpng
avant d’exécutermake
etsudo checkinstall
(vous devez écrire manuellement un numéro de version aveccheckinstall
, mais cela facilite les choses. enlever quemake install
). Cependant, les images sont toujours affichées dans une fenêtre séparée, bien quefbi
vous ne deviez pas utiliser X, ce qui est plutôt cool.5. jupyter-qtconsole
Vous pouvez également faire preuve de créativité et utiliser jupyter-qtconsole comme console système, le configurer pour afficher les tracés en ligne (
%matplotlib inline
), puis afficher l'image à l'aide de matplotlib =)6. feh
feh
utilise X pour afficher des images, mais les affichefeh -x
dans une fenêtre sans bordure pouvant être rapidement fermée avecq
oux
. Bien que les images ne soient pas affichées dans le terminal proprement dit, j’ai pensé que cela valait la peine d’être mentionné car c’est le moyen le moins intrusif que j’ai trouvé jusqu’à présent et ce que j’utilise jusqu’àgnome-terminal
obtention d’unimgcat
/tycat
équivalent.la source
Peut-être que le caca est ce que vous voulez. Pour les images :
Assurez-vous que la fenêtre de votre terminal est suffisamment grande.
Par exemple, voici comment cette image est affichée dans
cacaview
:Je l’utilisais parfois pour le plaisir de regarder des vidéos au format ASCII dans mplayer :)
la source
img2txt
"watch videos as ASCII" But... why?
parce que tu veux parce que vous devez regarder la vidéo et que la seule chose que vous avez est un terminal? Parce que si vous n’avez pas besoin de quelque chose, cela ne signifie PAS que les autres suivent.mpv
a une sortie tct qui (lorsqu'elle est utilisée avec--quiet
) affiche des supports dans le terminal avec une qualité comparable àpxl
.J'ai écrit un petit outil C ++ pour convertir les images en codes de contrôle ANSI RGB et en caractères Unicode Block pour les terminaux modernes prenant en charge ces fonctionnalités: https://github.com/stefanhaustein/TerminalImageViewer
Installation:
Usage:
Edit : Modification des liens / instructions vers le référentiel principal; utilisation ajoutée.
Exemples:
la source
J'ai créé une fonction de shell très simple et rapide, à une seule ligne, qui résout la question initiale exactement comme demandé dans les maquettes. Notez que les captures d'écran ci-dessous sont des images réelles et non des maquettes.
Les conditions préalables sont minimales: xterm et ImageMagick (
apt-get install xterm imagemagick
). Votre xterm doit être en mode vt340, que vous pouvez définir dans~/.Xresources
ou à partir de la ligne de commande (xterm -ti vt340
).Limitations: Seules 16 couleurs sont utilisées sur toutes les images présentées. Cela signifie qu'une image peut sembler meilleure lorsqu'elle est vue seule. (Voir ci-dessous).
MISE À JOUR
Bien que ma réponse ci-dessus soit toujours correcte, j'ai créé un script shell encore plus performant, capable de créer une "ls" d'images directement dans un terminal. J'ai ajouté toutes sortes d'améliorations pour rendre les images plus belles (plus de couleurs, alpha correct, orientation JPEG, traitement de nombreuses images, disposition compacte des tuiles, ...). C'est encore un programme assez petit, mais j'ai pensé que les gens pourraient vouloir le personnaliser, je l'ai donc mis sur github: https://github.com/hackerb9/lsix .
la source
Vous ne pouvez pas le faire dans une fenêtre de terminal, mais vous pouvez le faire dans une console Linux avec
fbi
. Vous avez besoin d'un framebuffer pour que cela fonctionne:Accédez à une console Linux (à l'aide de Ctrl+ Alt+ F1) et entrez
fbi <filename>
Cela devrait montrer votre image.
la source
fbi
. La page d'accueil indique qu'elle peut afficher des images non seulement avec le framebuffer, mais également avec X. Cependant, elle ne s'installera pas pour moi.Une autre alternative est la terminologie:
https://www.youtube.com/watch?feature=player_embedded&v=ibPziLRGvkg
Vous pouvez l'installer sur Ubuntu en ajoutant le référentiel enlightenment-git :
Ou, dans les versions récentes d'Ubuntu>> Vivid (15.04), il peut être récupéré à partir des référentiels officiels.
Pour afficher une image, tapez
tycat IMAGENAME
et pour afficher une liste d'images, tapeztyls -m
.la source
tycat
pour afficher une image en ligne ettyls -m
pour afficher des vignettes de taille moyenne dans un répertoire.terminology
est dans les dépôts officiels d'Ubuntu , aucun PPA requis.Il y a en fait un tel projet nommé TermKit , si vous souhaitez le tester - consultez http://blog.easytech.com.ar/2011/05/21/playing-with-termkit-with-chrome/ mais c'est tout à fait Inachevé (puisque vous semblez avoir un Mac, vous devriez essayer la version Mac car c'est "l'original")
Alors oui, c’est une idée qui mérite d’être explorée - le passage du mode graphique au texte seulement doit être rapide car je n’ai pas toujours besoin des images visionnées. En outre, il doit être entièrement compatible avec Vim, par exemple.
la source
chromium-browser
dans le dépôt, il est donc facile d'installer quelque chose de Chromelike - je n'ai pas vraiment essayé TermKit sur mon ordinateur (avec Chromium installé, mais en utilisant Fx comme principal) puisque je suis assez dépendant de Vim et que je ne peux pas vraiment utiliser un terminal qui ne me donnera pas mon éditeur de texte bien-aimé;)Cela n'existe pas;
gnome-terminal
est seulement capable d'afficher du texte, du moins autant que je sache.Toutefois, vous pouvez appeler une visionneuse d'images à partir de la ligne de commande pour afficher vos images dans un dossier particulier. Donc, pour sortir de votre maquette ci-dessus et vous montrer la liste de toutes les images .jpg du dossier actuel, vous pouvez utiliser Eye of GNOME (visionneuse d'images par défaut d'Ubuntu) depuis la ligne de commande pour quelque chose de similaire:
Notez que la fenêtre qui s’affiche n’affiche qu’une image à la fois, bien que vous puissiez utiliser les boutons fléchés fournis pour les parcourir.
la source
eog *.jpg & disown
mieux vaut sinon, l'EOG se fermera probablement à la fermeture du terminal. NB Je souhaite que EOG soit toujours la visionneuse d'images par défaut d'Ubuntu - shotwell est bon, mais essaie d'indexer mes 30 Go + d'images ... et est lent et ennuyant de toute façonJ'ai écrit un outil pour le faire. J'ai nommé mine Show Image In Terminal (
siit
). Cela suppose que vous ayez un terminal 256 couleurs et un support UTF8, et que cela est écrit en Perl.Je l'ai laissé tomber dans mon
~/bin
. Cela suppose que vous avez Image :: Magick, Terme :: Taille, Getopt :: Long et Time: HiRes, qui devraient tous être disponibles dans les dépôts de votre distribution, ou CPAN.Mon intention était de rentrer chez moi et de visualiser rapidement les images sans lancer d'affichage sur X. Le script s'adapte à la largeur / hauteur appropriée pour le terminal où vous vous trouvez. J'ai utilisé les caractères UTF8 pour doubler efficacement la résolution verticale de votre terminal. aide à la clarté. YMMV.
Échantillons de coups ici
Code source ici
la source
En plus de la réponse de Joel , le gestionnaire de fichiers de terminal Ranger avec
w3mimgdisplay
extension peut afficher des images en couleur et prend également en charge les "prévisualisations d'art ASCII à l'ancienne". Voici comment vous pouvez l'activer. Ce n'est peut-être pas exactement ce que vous cherchiez, mais un moyen de prévisualiser des images dans un terminal.la source
Un autre outil est catimg , bien qu’il n’existe aucun paquet prêt pour Ubuntu. En réalité, il ne visualise pas l'image mais la transforme en caractères colorés.
la source
Voici quelques solutions dans
node.js
(Instructions d'installation ici ).tube à image
imagerie
Pour installer l'un ou l'autre, tapez
npm install -g <package_name>
oùpackage_name
est l'unpicture-tube
ou l'autreimaging
.la source