News :
  • 26-nov-2006
    Ajout de getrand
  • 22-nov-2006
    Création de la page
chg_wm_style

Ce script sh change un thème WindowMaker de façon aléatoire. Il utilise le programme getrand donné ci-dessus affichant un nombre aléatoire sur la sortie standard.

#!/bin/sh

THEME_ROOT=$HOME/local/share/WindowMaker/Themes
UTILS=$HOME/Utils

# getrand gives a number between 0 and n but a number between 1 and n is needed.
NB_THEMES=`ls $THEME_ROOT | wc -l`
NB_THEMES=`expr $NB_THEMES - 1`
NTHEME=`$UTILS/getrand $NB_THEMES`
NTHEME=`expr $NTHEME + 1`
THEME=$THEME_ROOT/`ls $THEME_ROOT | head -n $NTHEME | tail -n 1`

/usr/bin/setstyle $THEME
Télécharger : [chg_wm_style.sh]


getrand
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <sys/types.h>

int main(int argc, char *argv[])
{
        unsigned int r, N;

        if (argc > 1)
        {
                N = (unsigned int) strtol(argv[1], NULL, 10);
                srand((unsigned int) time(NULL) & 0x7fff);
                r = (unsigned int) rint((double)rand() / ((double)RAND_MAX + 1) * N);
        }
        else
        r = 0;

        fprintf(stdout, "%u\n", r);

        return EXIT_SUCCESS;
}
Télécharger : [getrand.c]

Nombre de visites sur cette page : 222
Dernière modification le 03-Dec-2006 - © Copyright 2006 - Stéphane Albin