Git Product home page Git Product logo

clj-imgcat's Introduction

clj-imgcat

imgcat written in Clojure

Display one or more images in iTerm2 inline. For example:

clj-imgcat screenshot

Installation

Add the following dependency to your project.clj file

Clojars Project

Usage

After launching the REPL in an iTerm window,

user=> (require '[clj-imgcat.core :refer [imgcat]])
user=> (imgcat "logo.png")

To display remote image,

user=> (imgcat "https://clojure.org/images/clojure-logo-120b.png")

Specify options,

width and height are given as a number followed by a unit.

; N character cells
user=> (imgcat "logo.png" :width 10)

; N pixels
user=> (imgcat "logo.png" :width "50px" :height "100px" :preserveAspectRatio 0)

; N percent of the session's width or height
user=> (imgcat "logo.png" :width "25%")

Execute via lein run

% lein run
Usage: lein run <image file>

% lein run image.png
% lein run image.png :width 50%

Execute via CLI

% clj -M -m clj-imgcat.core image.png
% clj -M -m clj-imgcat.core image.png :width 80%

References

  • Inline Images Protocol for iTerm2. doc
  • Original sample code
  • iTerm2's Proprietary Escape Codes doc

License

Copyright (c) 2024 hisaitami

Distributed under the terms of the MIT License

clj-imgcat's People

Contributors

hisaitami avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.