Как мне заставить мой терминал отображать графические картинки?

Это быстрый макет, который я скопировал и вставил вместе. Я представляю, что это очень круто и полезно.

Что-то подобное уже существует?

http://imgur.com/Z3DbS

140
задан 06.06.2017, 18:59

12 ответов

Обновление 2018-12-31

все вокруг потрясающего неизлечимо больного котенка эмулятора имеют icat команда к изображениям на дисплее (не работает в tmux). Китти также позволяет предварительные просмотры изображения в рейнджере (предельный файловый менеджер), который является методом, который я в настоящее время использую чаще всего (работы в tmux).

<час>

1. w3m

, В то время как главная цель w3m состоит в том, чтобы обеспечить веб-браузер в пульте, она может также использоваться, чтобы рассмотреть изображения в терминале. Соответствующие пакеты, чтобы установить w3m и w3m-img (на Ubuntu, по крайней мере). Вы тогда должны отключить внешнее средство просмотра изображений, увядают, проходя -o ext_image_viewer=0 или входя в меню опций ('o') в w3m и отключают внешний просмотр изображения.

Теперь, печатая w3m <image_name> покажет изображение в терминале. w3m будет использовать все окно терминала, таким образом, Вы не видите, Ваши предыдущие команды до ухода w3m (думайте less, не cat). Обратите внимание, что, если изображение к большому, чтобы соответствовать окну терминала, оно будет все еще открыто внешне (в imagemagick для меня). Также обратите внимание, что даже при том, что я прочитал несколько мест, что w3m действующие изображения не будут работать на [1 112], это хорошо работает для меня. Это - немного раздражения, которое Вы имеете к типу q дважды, чтобы закрыть сначала изображение и затем w3m.

2. Терминология

tycat является частью [1 116] и показывает изображения как [1 117] текстовые файлы показов и как [1 142] imgcat работы для iTerm2 на OS X.

3. libsixel + mlterm/xterm

Устанавливает libsixel-bin и любой совместимый терминал (примеры, упомянутые под [1 143] 'Требования' этого readme, например mlterm или xterm собранный с правильными флагами, и Вы можете рассмотреть изображения с эти img2sixel команда. Оба этих пакета доступны в Ubuntu repos.

4. FIM

Тогда есть FIM, который является улучшенной версией [1 123]. Домашняя страница указывает, что может показать изображения не только с framebuffer, но также и с X. Однако это не установит для меня. Редактируют , я получил его бегущий, загрузив 0,5 версии ствола, бегая ./configure --disable-exif и затем временно удалив anaconda (распределение питона) от моего пути, так как это вызвало конфликт с [1 126] прежде, чем бежать make и sudo checkinstall (Вы должны написать в номере версии вручную с [1 129], но это помогает удалить, чем [1 130]). Однако изображения все еще показаны в отдельном окне, хотя как с [1 131] Вы не должны бежать X, который довольно прохладен.

5. jupyter-qtconsole

Вы могли также стать творческими и использовать jupyter-qtconsole в качестве Вашего системного пульта, настроить его, чтобы показать, что сюжеты, действующие (%matplotlib inline) и затем , показывают изображение, используя matplotlib =)

6. feh

feh использует X для изображений на дисплее, но feh -x сует их в безграничном окне, которое может быстро закрыться с [1 135] или x. Хотя изображения не показаны в терминале за, говорят, я думал, что это стоило упомянуть, так как это - наименее навязчивый способ, которым я нашел до сих пор и что я использую, до gnome-terminal становится imgcat / tycat эквивалентным.

45
ответ дан 14.09.2019, 16:03
  • 1
    w3m использует caca-utils, таким образом, было бы лучше просто использовать его непосредственно (cacaview e.jpg) – Kobi 08.08.2017, 07:11

Возможно caca - то, что Вы хотите. Для [1 111] изображения :

sudo apt-get install caca-utils
cacaview /PATH/TO/image.jpg

Удостоверяются, что Ваше окно терминала является достаточно большим.

, Например, вот то, как это изображение отображено в cacaview:

Screenshot

я иногда использовал его для забавы к [1 112], смотрят ролики как ASCII в mplayer:) Как это:

mplayer -vo caca /PATH/TO/video.mpg
63
ответ дан 14.09.2019, 16:03
  • 1
    Очень полезный - команда от caca-utils, который должен изображения на дисплее, встроенные в терминале, img2txt – Mithun Pattankar 19.07.2014, 11:02
  • 2
    There' s новый плеер на поле теперь: github.com/ichinaski/pxl ---В быстром тесте изображения выглядят лучше, чем в cacaview. (Я хотел добавить новый ответ, но сайт didn' t позволяют мне (?)), – Nocturno 25.06.2016, 23:18
  • 3
    " смотрят ролики как ASCII" Но... почему? – OST 21.07.2017, 13:59
  • 4
    "watch videos as ASCII" But... why? потому что Вы хотите? потому что необходимо посмотреть видео и единственная вещь, которую Вы получили, является терминальным? Поскольку, если Вам не нужно что-то, которое это НЕ означает, другие следуют. – traneHead 23.02.2018, 05:47
  • 5
    mpv имеет вывод tct, который (когда используется с --quiet) показывает медиа-материалы в терминале с сопоставимым качеством к pxl. – toni 21.09.2018, 23:47

Я сделал очень быстрое, простое одной функцией оболочки строки, которая решает исходный вопрос точно согласно просьбе в макетах. Обратите внимание, что снимки экрана ниже являются действительными образами, не макетами.

function lsix() { montage -tile 7x1 -label %f -background black -fill white "$@" gif:- | convert - -colors 16 sixel:-; }

Screenshot of using the lsix command

Предпосылки минимальны: xterm и ImageMagick (apt-get install xterm imagemagick). Ваш xterm должен быть в vt340 режиме, который можно или установить в ~/.Xresources или от Ограничений командной строки (xterm -ti vt340).

: Только 16 цветов используются более чем весь показанные изображения. Это означает, изображение могло бы выглядеть лучше при просмотре самостоятельно. (См. ниже).

Screenshot showing 16 color limitation

ОБНОВЛЕНИЕ

, В то время как мой выше ответа все еще корректен, я создал еще лучший сценарий оболочки, который может сделать 'ls' изображений непосредственно в терминал. Существуют все виды улучшений, которые я добавил, чтобы заставить изображения выглядеть лучше (больше цветов, надлежащей альфы, ориентации JPEG, обработав много изображений, компактного расположения мозаики...). Это - все еще довольно небольшая программа, но я полагал, что люди могли бы хотеть настроить его, таким образом, я поднял его на GitHub: https://github.com/hackerb9/lsix.

32
ответ дан 14.09.2019, 16:03

Я записал маленький инструмент C++ для преобразования изображений в коды управления RGB ANSIВ и символы блочной графики Unicode для современных терминалов, поддерживающих их features:В https://установка github.com/stefanhaustein/TerminalImageViewer

:

git clone https://github.com/stefanhaustein/TerminalImageViewer.git
cd TerminalImageViewer/src/main/cpp
make
sudo make install

Использование:

tiv <image(s)>

Редактирование : Измененные ссылки / инструкции в основной репозиторий; добавленное использование.

Примеры:

TerminalImageViewer

36
ответ дан 14.09.2019, 16:03
  • 1
    Это выглядит очень хорошим! Но это - Java или C++? – Jason 10.07.2017, 11:45
  • 2
    Это раньше было Java, но потребность в JVM для этой простой задачи раздражала меня, таким образом, я портировал его к C++ (снимки экрана все еще показывают команду Java хотя), – Hassan Tariq 10.07.2017, 11:52
  • 3
    Путь лучше, чем cacaview! – bleistift2 06.08.2017, 06:10
  • 4
    Это - удивительный инструмент. Определенно медленнее, но намного лучше, чем caca. Есть ли любая качественная потеря при использовании " 256 битов mode"? (так как я имею к, нормальный режим испорчен), – mohit mathur 15.10.2017, 08:53
  • 5
    Очень хорошие результаты! Спасибо! Очень полезный с ssh, когда никакой X-сервер не доступен! – Baris Atamer 21.06.2018, 22:52

Другая альтернатива является терминологией:

enter image description here https://www.youtube.com/watch? feature=player_embedded& v=ibPziLRGvkg

можно установить его на Ubuntu путем добавления мерзавец просвещения репозиторий:

sudo add-apt-repository ppa:enlightenment-git/ppa
sudo apt-get update && sudo apt-get install terminology

Или в недавних выпусках Ubuntu> = Яркий (15.04) это может быть выбрано из официальных репозиториев.

sudo apt-get install terminology

представление To изображение, тип tycat IMAGENAME, и просмотреть список изображений, типа tyls -m.

20
ответ дан 14.09.2019, 16:03
  • 1
    tycat отобразить встроенное изображение и tyls -m для отображения миниатюр среднего размера в каталоге. – AnderSon 15.11.2015, 09:01
  • 2
    sudo add-apt-repository ppa:hannes-janetzek/enlightenment-svn does не Работа – Anderson Marques 20.01.2016, 12:48
  • 3
    I' ve обновил ответ для указания на более свежее просвещение ppa – Joshua Briefman 20.01.2016, 13:54
  • 4
    @chilicuil terminology в официальных репозиториях Ubuntu , никакой необходимый PPA. – Yurii Bratchuk 20.01.2016, 17:48
  • 5
    @cat, который исходный ответ был записан прежде яркий, был выпущен и в то время терминология wasn' t доступный, просвещение ppa все еще имеет точные/испытанные пакеты и более актуальные версии терминологии. Однако, возможно, редактирование ответа для указания, чем замороженные версии терминологии доступно в недавних выпусках человечности, будет полезно. – User42 20.01.2016, 17:52

Вы не можете сделать так в окне терминала, но можно сделать так в консоль Linux с помощью fbi. Вам нужен кадровый буфер, чтобы позволить этому работать:

sudo apt-get install fbi

Переходят к консоли Linux (использующий Ctrl + Высокий звук + F1 ) и входят fbi <filename>

, Это должно показать Ваше изображение.

30
ответ дан 14.09.2019, 16:03
  • 1
    Что делает Вы подразумеваете под " terminal" по сравнению с " tty"? not' t они то же самое? askubuntu.com/questions/506510/… – Exocomp 11.07.2015, 02:11
  • 2
    Didn' t работают на меня. Но " caca" инструмент работал. использование " DejaVu Sans Mono-16" pixelsize=16.67 файл =/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf ioctl VT_GETSTATE: Несоответствующий ioctl для устройства (не консоль Linux?) – Master of Ducks 10.11.2015, 10:06
  • 3
    @Wernight Ctrl + Высокий звук + F1/F2/F3 дает Вам tty под человечностью (Ctrl + Высокий звук + F8 для возвращения). – Chong Lip Phang 15.11.2015, 10:31
  • 4
    Существует также FIM, который является улучшенной версией fbi. Домашняя страница указывает, что может изображения на дисплее не только с кадровым буфером, но также и с X. Однако это won' t устанавливают для меня. – Aamir 15.11.2015, 10:32
  • 5
    Хорошие новости iTerm2 v3 могут показать встроенный контроль изображений iterm2.com/images.html – Ashish Agarwal 21.01.2016, 10:01

Это не существует; gnome-terminal только способно к diplaying тексту, по крайней мере, насколько я знаю.

Однако Вы можете называть программу просмотра изображений от командной строки для наблюдения изображений в конкретной папке. Так, уходя Вашего макета выше показа Вас перечисляющий все .jpg изображения в текущей папке, можно использовать Глаз GNOME (программа просмотра изображений Ubuntu по умолчанию) от командной строки для чего-то подобного:

eog *.jpg &

Примечание, что окно, которое подходит, только покажет одно изображение за один раз, хотя можно использовать обеспеченные кнопки стрелки для циклического повторения между ними.

8
ответ дан 14.09.2019, 16:03
  • 1
    если выполнение от терминала, eog *.jpg & disown лучше как иначе, EOG, вероятно, выйдет, когда терминал закроется. N.B. Мне жаль, что EOG не был все еще Ubuntu' s defualt программа просмотра изображений - shotwell является хорошим, но пытается индексировать моих 30 ГБ + изображений.... и является медленным и раздражающим так или иначе – GreenMonkeyBoy 19.07.2014, 11:13
  • 2
    Все предыдущие ответы доказывают это сообщение неправильно. – toni 06.04.2019, 04:35

В дополнение к ответ Joel , файловый менеджер терминала Ranger с w3mimgdisplay расширение может показать изображения в насыщенном цвете и также поддерживает "oldschool предварительные просмотры ASCII-творчества". Здесь то, как можно включить его. Это не может быть точной вещью, которую Вы искали только способ предварительно просмотреть изображения в терминале.

enter image description here

6
ответ дан 14.09.2019, 16:03

Другой инструмент catimg, хотя нет никакого готового пакета для Ubuntu. Это на самом деле не просматривает изображение, но превращает его в цветные символы.

enter image description here

4
ответ дан 14.09.2019, 16:03

Вот некоторые решения в node.js (Инструкции по установке здесь ).

  1. труба изображения

  2. обработка изображений

Для установки также, тип npm install -g <package_name>, где package_name или picture-tube или imaging.

3
ответ дан 14.09.2019, 16:03

Существует на самом деле такой проект, названный TermKit, если требуется протестировать его - выезд http://blog.easytech.com.ar/2011/05/21/playing-with-termkit-with-chrome/ , но это довольно не закончено (так как у Вас, кажется, есть Mac, необходимо попробовать версию Mac, так как это - "оригинал")

Так да, это - идея, которую стоит исследовать, однако - переключатель между графическим и режимом только для текста должен быть быстрым, так как мне не всегда нужны просматриваемые изображения. Также - это должно быть полностью совместимо с, например, Vim..

12
ответ дан 14.09.2019, 16:03
  • 1
    Я читал об этом проекте однажды на Slashdot. Интригующие звуки! Слишком плохо Вам нужен Google Chrome для использования его... хорошо, хорошо, it' s не слишком плохо при использовании Chrome для начала, но он походит на ненужную зависимость. – toni 22.01.2012, 23:58
  • 2
    @WarriorIng64 Да, я, это могло работать при взламывании немного с Qt' s WebKit - но к счастью мы имеем chromium-browser в repos, так, чтобы it' s довольно легкий установить что-то подобное хрому - я haven' t действительно попробовал TermKit на моем компьютере (w/установленный Хром, но использование Fx как основной) начиная с I' m довольно зависящий от Vim и can' t действительно используют терминал это won' t дают мне мой любимый текстовый редактор;) – user1014932 23.01.2012, 00:01

Я записал инструмент, чтобы сделать это. Я назвал шахту Show Image In Terminal (siit). Это предполагает, что у Вас есть 256 цветных терминалов и поддержка UTF8, и это записано в жемчуге.

я отбросил его в моем ~/bin. Это предполагает, что у Вас есть Изображение:: Magick, Термин:: Размер, Getopt:: Долго и Time:HiRes, который должен все быть доступным в репозиториях Вашего дистрибутива или CPAN.

Мое намерение было к ssh в мой дом, и быстро просмотрите изображения, не запуская дисплей более чем X. Сценарий масштабируется к соответствующей ширине/высоте для терминала, в котором Вы находитесь. Я использовал символы UTF8 для эффективного удвоения вертикального разрешения терминала, который действительно помогает ясности. YMMV.

Демонстрационные снимки здесь

Исходный код здесь

7
ответ дан 14.09.2019, 16:03
  • 1
    It' s " siit" не " shit" (серьезно....) – Gandhi 24.09.2015, 20:40
  • 2
    Это первоначально назвали termpeg, но that' s слишком трудно для запоминания и didn' t полный вкладкой хорошо. Кроме того, " этот код является частью siit" doesn' t даже имеют смысл. – Coffee-Tea 22.02.2016, 06:20
  • 3
    Ссылка исходного кода doesn' t работают на меня, но я нашел версию в Интернете, вот зеркало: gist.github.com/certik/4336299de10f400ee49943bd9f8a8ba6 – Davide Castronovo 02.07.2016, 16:05
  • 4
    Шанс можно ли обеспечить комплектную версию? Я всегда сдаюсь, когда я должен установить библиотеки. – Shifa Khan 04.09.2019, 10:03

Теги

Похожие вопросы