Questo è un mockup veloce che copio e incollato insieme. Immagino che sia fantastico e utile.
Esiste già qualcosa del genere?
Questo è un mockup veloce che copio e incollato insieme. Immagino che sia fantastico e utile.
Esiste già qualcosa del genere?
Forse caca è ciò che desideri. Per immagini :
sudo apt-get install caca-utils
cacaview /PATH/TO/image.jpg
Assicurati che la finestra del terminale sia sufficientemente grande.
Ad esempio, ecco come questa immagine viene visualizzata in cacaview
:
A volte l'ho usato per divertirmi guardare video come ASCII in mplayer :) In questo modo:
mplayer -vo caca /PATH/TO/video.mpg
Non puoi farlo in una finestra del terminale, ma puoi farlo in una console Linux utilizzando fbi
. Hai bisogno di un framebuffer per consentire che funzioni:
sudo apt-get install fbi
Vai a una console Linux (usando Control-Alt-F1) e inserisci fbi <filename>
Dovrebbe mostrare la tua immagine.
Sebbene lo scopo principale di w3m
sia quello di fornire la navigazione web in-console, può anche essere usato per visualizzare le immagini nel terminale. I pacchetti rilevanti da installare sono w3m
e w3m-img
(almeno su Ubuntu). Devi quindi disabilitare il visualizzatore di immagini esterno appassendo passando -o ext_image_viewer=0
o andando nel menu opzioni ('o') all'interno di w3m
e disabilita la visualizzazione di immagini esterne.
Ora, digitando w3m <image_name>
verrà visualizzata l'immagine nel terminale. w3m
utilizzerà l'intera finestra del terminale, quindi non puoi vedere i tuoi comandi precedenti fino a quando non esci di w3m
(pensa less
, non cat
). Notare che se l'immagine è troppo grande per adattarsi alla finestra del terminale, verrà comunque aperta esternamente (in imagemagick per me). Tieni inoltre presente che anche se leggo più posti in cui w3m
di immagini in linea non funzionerebbe per gnome-terminal
, per me funziona correttamente. È un po 'fastidioso dover digitare q
due volte per chiudere prima l'immagine e poi w3m
.
tycat
fa parte di terminology
e visualizza immagini come cat
visualizza file di testo e come imgcat
funziona per iTerm2 su OS X.
Installa libsixel-bin
e qualsiasi terminale compatibile (esempi menzionati sotto "Requisiti" di questo readme , ad esempio mlterm
o xterm
compilato con i giusti flag e puoi visualizzare le immagini con il comando img2sixel
. Entrambi i pacchetti sono disponibili nei repository di Ubuntu.
Poi c'è FIM che è una versione migliorata di fbi
. La homepage afferma che può visualizzare le immagini non solo con il framebuffer, ma anche con X. Tuttavia, non verrà installato per me. Modifica l'ho eseguito eseguendo il download della versione trunk 0.5, eseguendo ./configure --disable-exif
e quindi rimuovendo temporaneamente anaconda
(distribuzione python) dal mio percorso poiché ha causato un conflitto con libpng
prima dell'esecuzione di make
e sudo checkinstall
(devi scrivere in un numero di versione manualmente con checkinstall
, ma semplifica la rimozione di make install
). Tuttavia, le immagini sono ancora visualizzate in una finestra separata, anche se, come con fbi
, non è necessario eseguire X, che è abbastanza cool.
Potresti anche essere creativo e usare jupyter-qtconsole come console di sistema, configurarlo per mostrare i grafici in linea ( %matplotlib inline
) e poi visualizza l'immagine usando matplotlib =)
feh
utilizza X per visualizzare le immagini, ma feh -x
le fa apparire in una finestra senza bordi che può essere chiusa rapidamente con q
o x
. Sebbene le immagini non vengano visualizzate nel terminale per parola, ho pensato che fosse degno di menzione poiché è il modo meno intrusivo che ho trovato finora e quello che sto usando fino a quando gnome-terminal
ottiene un imgcat
/ tycat
equivalente.
Ho scritto un piccolo strumento C ++ per convertire immagini in codici di controllo ANSI RGB e caratteri grafici a blocchi Unicode per terminali moderni che supportano queste funzionalità: collegamento
Installazione:
git clone https://github.com/stefanhaustein/TerminalImageViewer.git
cd TerminalImageViewer/src/main/cpp
make
sudo make install
Utilizzo:
tiv <image(s)>
Modifica : link / istruzioni modificati al repository principale; aggiunto l'uso.
Esempi:
Un'altra alternativa è la terminologia:
Puoi installarlo su Ubuntu aggiungendo il repository di illuminazione
sudo add-apt-repository ppa:enlightenment-git/ppa
sudo apt-get update && sudo apt-get install terminology
Oppure nelle recenti versioni di Ubuntu & gt; = Vivid (15.04) può essere scaricato dai repository ufficiali.
sudo apt-get install terminology
Per visualizzare un'immagine, digita tycat IMAGENAME
e per visualizzare un elenco di immagini, digita tyls -m
.
Ho creato una funzione shell a linea singola molto veloce che risolve la domanda originale esattamente come richiesto nei prototipi. Nota che gli screenshot qui sotto sono immagini reali, non prototipi.
function lsix() { montage -tile 7x1 -label %f -background black -fill white "[email protected]" gif:- | convert - -colors 16 sixel:-; }
I prerequisiti sono minimi: xterm e ImageMagick ( apt-get install xterm imagemagick
). Il tuo xterm deve essere in modalità vt340, che puoi impostare in ~/.Xresources
o dalla riga di comando ( xterm -ti vt340
).
Limitazioni: vengono utilizzati solo 16 colori sopra le immagini tutte mostrate. Ciò significa che un'immagine può apparire migliore se vista da sola. (Vedi sotto).
Aggiorna
Mentre la mia risposta sopra è ancora corretta, ho creato uno script di shell ancora migliore che è in grado di fare una "ls" di immagini direttamente in un terminale. Ci sono tutti i tipi di miglioramenti che ho aggiunto per rendere le immagini un aspetto migliore (più colori, corretto alfa, orientamento JPEG, gestione di molte immagini, layout compatto delle piastrelle, ...). È ancora un programma abbastanza piccolo, ma ho pensato che le persone volessero personalizzarlo, quindi l'ho messo su github: link .
In realtà esiste un progetto di questo tipo denominato TermKit , se desideri testarlo - controlla link ma è piuttosto incompleto (dal momento che sembra che tu abbia un Mac, dovresti prova la versione per Mac poiché è "l'originale")
Quindi sì, è un'idea che vale la pena esplorare, tuttavia - il passaggio tra la modalità grafica e la modalità solo testo deve essere veloce, poiché non sempre ho bisogno delle immagini visualizzate. Inoltre, deve essere completamente compatibile con, ad es. Vim ..
Questo non esiste; gnome-terminal
è solo in grado di visualizzare il testo, almeno per quanto ne so.
Tuttavia puoi chiamare un visualizzatore di immagini dalla riga di comando per vedere le tue immagini in una particolare cartella. Quindi, uscendo dal tuo mockup in alto mostrandoti di elencare tutte le immagini .jpg nella cartella corrente, puoi usare Eye of GNOME (il visualizzatore di immagini predefinito di Ubuntu) dalla riga di comando per qualcosa di simile:
eog *.jpg &
Si noti che la finestra visualizzata mostrerà solo un'immagine alla volta, sebbene sia possibile utilizzare i pulsanti freccia forniti per spostarsi tra di essi.
Ho scritto uno strumento per farlo. Ho chiamato il mio Show Image In Terminal ( siit
). Presuppone che tu abbia un terminale a 256 colori e supporto UTF8, ed è scritto in perl.
L'ho inserito nel mio ~/bin
. Si presuppone che tu abbia Image :: Magick, Term :: Size, Getopt :: Long e Time: HiRes, che dovrebbero essere tutti disponibili nei repository della tua distro o in CPAN.
Il mio intento era di ssh in casa mia e di visualizzare rapidamente le immagini senza avviare una visualizzazione su X. Script si adatta alla larghezza / altezza appropriata per il terminale in cui ti trovi. Ho usato caratteri UTF8 per raddoppiare efficacemente la risoluzione verticale del tuo terminale , che aiuta davvero la chiarezza. YMMV.
Codice sorgente qui
Oltre alla risposta di Joel , Ranger il gestore di file terminal con estensione w3mimgdisplay
può mostrare le immagini a colori e supporta anche" anteprime di arte ASCII oldschool ". Qui è come puoi abilitarlo. Questa potrebbe non essere la cosa esatta che stavi cercando, ma un modo per vedere l'anteprima delle immagini nel terminale.
Leggi altre domande sui tag command-line images