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

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

Ответы:
Обновление 2018-12-31
В универсальном терминальном эмуляторе терминала есть icatкоманда для отображения изображений (не работает в tmux). Китти также включает предварительный просмотр изображений в Ranger (файловый менеджер терминала), который я сейчас использую чаще всего (работает в tmux).
Хотя основная цель w3mзаключается в обеспечении просмотра веб-страниц в консоли, его также можно использовать для просмотра изображений в терминале. Соответствующие пакеты для установки есть w3mи w3m-img(по крайней мере в Ubuntu). Затем вам нужно отключить внешний просмотрщик изображений, пройдя -o ext_image_viewer=0или войдя в меню параметров ('o') внутри, w3mи отключить просмотр внешнего изображения.
Теперь, набрав текст w3m <image_name>будет отображаться в терминале. w3mбудет использовать все окно терминала, поэтому вы не сможете увидеть свои предыдущие команды, пока не выйдете w3m(подумайте less, нет cat). Обратите внимание, что если изображение слишком велико, чтобы соответствовать окну терминала, оно все равно будет открыто снаружи (в imagemagick для меня). Также обратите внимание, что хотя я читаю несколько мест, для которых w3mвстроенные изображения не будут работать gnome-terminal, для меня это работает нормально. Немного раздражает, что вам приходится печатать qдважды, чтобы сначала закрыть изображение, а затем w3m.
tycatявляется частью terminologyи отображает изображения, такие как catтекстовые файлы и подобные imgcatработы для iTerm2 на OS X.
Установите libsixel-binи любой совместимый терминал (примеры, упомянутые в разделе «Требования» данного файла readme , например, mltermили xtermскомпилированный с правильными флагами, и вы можете просматривать изображения с помощью img2sixelкоманды. Оба этих пакета доступны в репозиториях Ubuntu.
Тогда есть FIM, который является улучшенной версией fbi. На домашней странице утверждается, что она может отображать изображения не только с помощью кадрового буфера, но и с X. Однако она не будет установлена для меня. Редактирование Я запустил его, загрузив версию магистрали версии 0.5, запустив ./configure --disable-exifи затем временно удалив anaconda(дистрибутив python) из моего пути, поскольку это вызвало конфликт libpngперед запуском makeи sudo checkinstall(вам нужно записать номер версии вручную с помощью checkinstall, но это облегчает удалить чем make install). Тем не менее, изображения по-прежнему отображаются в отдельном окне, хотя, как и у fbiвас, не нужно запускать X, что довольно круто.
Вы также можете проявить творческий подход и использовать jupyter-qtconsole в качестве системной консоли, настроить его так, чтобы он отображал графики inline ( %matplotlib inline), а затем отображать изображение с помощью matplotlib =)
fehиспользует X для отображения изображений, но feh -xвыдает их в окне без полей, которое можно быстро закрыть с помощью qили x. Хотя изображения не отображаются в терминале, скажем так, я подумал, что стоит упомянуть, поскольку это наименее навязчивый способ, который я нашел до сих пор, и то, что я использую, пока не gnome-terminalполучит imgcat/ tycatэквивалент.
Может быть, кака это то, что вы хотите. Для изображений :
sudo apt-get install caca-utils
cacaview /PATH/TO/image.jpg
Убедитесь, что окно вашего терминала достаточно большое.
Например, вот как это изображение отображается в cacaview:

Я иногда использовал это для развлечения, чтобы посмотреть видео в формате ASCII в mplayer :) Вот так:
mplayer -vo caca /PATH/TO/video.mpg
img2txt
"watch videos as ASCII" But... why? потому что ты хочешь? потому что вам нужно посмотреть видео, и единственное, что у вас есть, это терминал? Потому что если вам что-то не нужно, это не значит, что другие следуют за вами.
mpvимеет вывод tct, который (при использовании с --quiet) отображает мультимедиа в терминале с сопоставимым качеством pxl.
Я написал небольшой инструмент C ++ для преобразования изображений в управляющие коды ANSI RGB и графические символы блока Unicode для современных терминалов, поддерживающих эти функции: 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)>
Изменить : Изменены ссылки / инструкции в основном хранилище; добавленное использование.
Примеры:
Я сделал очень быструю, простую однострочную функцию оболочки, которая решает исходный вопрос в точности так, как было запрошено в макетах. Обратите внимание, что скриншоты ниже - это реальные изображения, а не макеты.
function lsix() { montage -tile 7x1 -label %f -background black -fill white "$@" gif:- | convert - -colors 16 sixel:-; }
Предварительные условия минимальны: xterm и ImageMagick ( apt-get install xterm imagemagick). Ваш xterm должен быть в режиме vt340, который вы можете установить в ~/.Xresourcesкомандной строке или из командной строки ( xterm -ti vt340).
Ограничения: Только 16 цветов используются на всех показанных изображениях. Это означает, что изображение может выглядеть лучше при просмотре самостоятельно. (Смотри ниже).
ОБНОВИТЬ
Хотя мой приведенный выше ответ по-прежнему верен, я создал еще лучший сценарий оболочки, который может делать 'ls' изображений непосредственно в терминале. Для того чтобы изображения выглядели лучше, были добавлены всевозможные улучшения (больше цветов, правильная альфа, ориентация JPEG, обработка большого количества изображений, компактная разметка листов, ...). Это все еще довольно маленькая программа, но я подумал, что люди могут захотеть настроить ее, поэтому я разместил ее на github: https://github.com/hackerb9/lsix .
Вы не можете сделать это в окне терминала, но вы можете сделать это в консоли Linux, используя fbi. Вам нужен фреймбуфер, чтобы это работало:
sudo apt-get install fbi
Перейдите в консоль Linux (используя Ctrl+ Alt+ F1) и введитеfbi <filename>
Это должно показать ваше изображение.
fbi. На домашней странице утверждается, что она может отображать изображения не только с помощью кадрового буфера, но и с X. Однако она не будет установлена для меня.
Другой альтернативой является терминология:
https://www.youtube.com/watch?feature=player_embedded&v=ibPziLRGvkg
Вы можете установить его в Ubuntu, добавив репозиторий просветления-git :
sudo add-apt-repository ppa:enlightenment-git/ppa
sudo apt-get update && sudo apt-get install terminology
Или в последних выпусках Ubuntu> = Vivid (15.04) его можно получить из официальных репозиториев.
sudo apt-get install terminology
Чтобы просмотреть изображение, введите tycat IMAGENAMEи просмотрите список изображений, введите tyls -m.
tycatдля отображения встроенного изображения и tyls -mдля отображения миниатюр средних размеров в каталоге.
terminologyнаходится в официальных репозиториях Ubuntu , PPA не требуется.
На самом деле есть такой проект под названием TermKit , если вы хотите его протестировать - посмотрите http://blog.easytech.com.ar/2011/05/21/playing-with-termkit-with-chrome/, но это довольно незавершенный (так как у вас, кажется, есть Mac, вы должны попробовать Mac-версию, так как она «оригинальная»)
Так что да, эту идею стоит изучить, однако переключение между графическим и текстовым режимами должно быть быстрым, поскольку мне не всегда нужны просматриваемые изображения. Кроме того - он должен быть полностью совместим, например, с Vim.
chromium-browserрепозитории, так что довольно просто установить что-то Chrome-подобное - я на самом деле не пробовал TermKit на своем компьютере (с Chromium установлен, но использую Fx в качестве основного), поскольку я весьма зависим от Vim и не могу использовать терминал, который не даст мне мой любимый текстовый редактор;)
Этого не существует; gnome-terminalспособен только на воспроизведение текста, по крайней мере, насколько я знаю.
Однако вы можете вызвать программу просмотра изображений из командной строки, чтобы увидеть ваши изображения в определенной папке. Итак, выйдя из макета выше и показывая список всех изображений .jpg в текущей папке, вы можете использовать Eye of GNOME (средство просмотра изображений по умолчанию в Ubuntu) из командной строки для чего-то похожего:
eog *.jpg &
Обратите внимание, что в открывшемся окне будет отображаться только одно изображение за раз, хотя вы можете использовать предоставленные кнопки со стрелками для переключения между ними.
eog *.jpg & disownлучше, так как в противном случае EOG, скорее всего, выйдет, когда терминал закроется. NB Я бы хотел, чтобы EOG все еще оставался непревзойденным средством просмотра изображений в Ubuntu - Shotwell хорош, но пытается проиндексировать мои 30 ГБ + изображений .... и все равно медленно и раздражает
Я написал инструмент для этого. Я назвал мой Показать изображение в терминале ( siit). Предполагается, что у вас есть терминал с 256 цветами и поддержка UTF8, и написано на Perl.
Я бросил это в мой ~/bin. Предполагается, что у вас есть Image :: Magick, Term :: Size, Getopt :: Long и Time: HiRes, которые должны быть доступны в репозиториях вашего дистрибутива, или CPAN.
Моим намерением было войти в мой дом по протоколу ssh и быстро просматривать изображения, не запуская дисплей над X. Сценарий масштабируется до соответствующей ширины / высоты для терминала, в котором вы находитесь. Я использовал символы UTF8 для эффективного удвоения вертикального разрешения вашего терминала, что на самом деле помогает ясности. YMMV.
В дополнение к ответу Джоэла , файловый менеджер терминала Ranger с w3mimgdisplayрасширением может отображать изображения в полноцветном режиме, а также поддерживает «oldschool ASCII art previews». Вот как вы можете включить его. Это может быть не та вещь, которую вы искали, а способ предварительного просмотра изображений в терминале.
Другой инструмент - catimg , хотя готового пакета для Ubuntu нет. На самом деле он не просматривает изображение, а превращает его в цветные символы.
Вот некоторые решения в node.js(Инструкции по установке здесь ).
Чтобы установить либо, введите npm install -g <package_name>где package_nameлибо из picture-tubeили imaging.
feh! Я знаю, что это не в терминале, но это делает свою работу.