sxiv (Suomi)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

sxiv, (Simple X Image Viewer) on kevyt ja helposti skriptattava kuvan katseluohjelma, joka on kirjoitettu C-ohjelmointikielellä.

Asennus

Asenna sxiv paketti, tai sxiv-gitAUR, jos haluat asentaa kehitysversion.

Käyttö

Näppäinkomentojen asettaminen

sxiv tukee ulkoisia näppäin tapahtumia. Paina ensin Ctrl-x lähettääksesi seuraavan näppäinyhdistelmän ulkoiseen näppäinhallitsijaan. Ulkoinen näppäinten hallitsija tarvitsee suoritettavan tiedoston ~/.config/sxiv/exec/key-handler ja vie näppäinyhdiselmän argumenttina niin kuin myös sillä hetkellä merkityt kuvatiedostot stdin:iin (tai, jos mitään ei ole merkittynä, sillä hetkellä valittuna olleen kuvan). sxiv:in asennuksen mukana tulee yksi esimerkki: /usr/share/sxiv/exec/key-handler. Esimerkin avulla pääsee hyvin alkuun oikopolkujen muokkaamisessa.

 $ mkdir -p ~/.config/sxiv/exec/
 $ cp /usr/share/sxiv/exec/key-handler ~/.config/sxiv/exec/key-handler

Muista merkitä skripti suoritettavaksi.

$ chmod +x ~/.config/sxiv/exec/key-handler

Seuraavassa esimerkissä lisätään yhdistelmä Ctrl+d suorittamaan komento mv tiedostonimi ~/.trash, Ctrl+c kopioimaan sen hetkisten kuvien nimet leikepöydälle xclip paketin avulla ja Ctrl+w asettamaan työpöydän kuva nitrogen ohjelman avulla. Tietenkin, joissain komennoissa on järkeä vain silloin kun yksi kuva on argumentoitu, joten on järkevää muuttaa näitä suorittamaan silloinkin kun useampi tiedosto annetaan argumenttina.

~/.config/sxiv/exec/key-handler
#!/bin/sh
while read file
do
        case "$1" in
        "C-d")
                mv "$file" ~/.trash ;;
        "C-r")
                convert -rotate 90 "$file" "$file" ;;
        "C-c")
                echo -n "$file" | xclip -selection clipboard ;;
        "C-w")
                nitrogen --save --set-zoom-fill "$file" ;;
        esac
done

Luo .trash kansio jos se ei ole vielä olemassa:

$ mkdir ~/.trash
Vinkki: Voit ehkä haluta käyttää standardimaisempaa roskakoria (kuten trash-cli tai bashtrashAUR) kuin vain komentoa mv "$2" ~/.trash.

Vinkkejä ja konsteja

Selaile kuvia polussa avattuasi yhden kuvan

sxivn kehittäjältä pyydettiin muutamaan kertaan, että tällä ohjelmalla pystyisi selailemaan kuvia polussa, josta argumenttina annettu tiedosto on (katso [1] ja [2]). On olemassa joitain muunnoksia joihin kyseinen ominaisuus on tehty: doronbeharin, qsmodonin ja sammothin.

Vaihtoehtoisesti voidaan käyttää virallista versiota sxivstä ja laitetaan tämä skripti /usr/local/bin ja kutsutaan sitä näin:

$ skripti yksi_kuva.jpg

Kuten se on ilmistu skriptin kommenteissa, sitä voidaan käyttää tuomaan sama toiminnallisuus kun kuva avataan rangerista.

Tämä skripti [3] käynnistää sxiv esikatselukuva tilassa jos ja vain jos annettu tiedosto argumetti on kansio:

~/bin/sxiv.sh
#!/bin/sh

    if command -v sxiv >/dev/null 2>&1; then
      if [ -d "${@: -1}" ] || [ -h "${@: -1}" ]; then
        sxiv -t "$@"
      else
        sxiv    "$@"
      fi
    elif command -v feh >/dev/null 2>&1; then
      feh "$@"
    else
      echo "Please install SXIV or FEH!"
    fi

Kuvan koon näyttäminen tilapalkissa

Aseta seuraava suoritettava skripti ~/.config/sxiv/exec/image-info ja varmista että exiv2 paketti on asennettu:

~/.config/sxiv/exec/image-info
#!/bin/sh

# Example for ~/.config/sxiv/exec/image-info
# Called by sxiv(1) whenever an image gets loaded,
# with the name of the image file as its first argument.
# The output is displayed in sxiv's status bar.

s=" | " # field separator

filename=$(basename "$1")
filesize=$(du -Hh "$1" | cut -f 1)

# The '[0]' stands for the first frame of a multi-frame file, e.g. gif.
geometry=$(identify -format '%wx%h' "$1[0]")

tags=$(exiv2 -q pr -pi "$1" | awk '$1~"Keywords" { printf("%s,", $4); }')
tags=${tags%,}

echo "${filesize}${s}${geometry}${tags:+$s}${tags}${s}${filename}"

Katso myös