sxiv (Suomi)

From ArchWiki
Jump to navigation Jump to search

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