Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1451 Le 22/01/2011, à 19:27

grim7reaper

Re : /* Topic des codeurs couche-tard [3] */

xapantu a écrit :

http://pix.toile-libre.org/upload/origi … 716719.png

Ça fait quand même à peu près 10 fois plus…

La comparaison n'a aucun sens : Ubuntu sépare les paquets en -lib, -dev et en que-sais-je-encore, pas Archlinux.



helly a écrit :

groumpf !
Comment lui expliquer gentillement qu'on ne peut pas apprendre du C ou du C++ juste avec une petite feuille qui a des mots clef, et l'apprendre par cœur ? hmm

Ouais je l'ai vu aussi -_-"

Dernière modification par grim7reaper (Le 22/01/2011, à 19:32)

Hors ligne

#1452 Le 22/01/2011, à 19:41

Pylades

Re : /* Topic des codeurs couche-tard [3] */

grim7reaper a écrit :
xapantu a écrit :

http://pix.toile-libre.org/upload/origi … 716719.png

Ça fait quand même à peu près 10 fois plus…

La comparaison n'a aucun sens : Ubuntu sépare les paquets en -lib, -dev et en que-sais-je-encore, pas Archlinux.
[…]

En plus ! tongue


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1453 Le 22/01/2011, à 20:08

xapantu

Re : /* Topic des codeurs couche-tard [3] */

Mouais… tongue

Hors ligne

#1454 Le 22/01/2011, à 20:48

Elzen

Re : /* Topic des codeurs couche-tard [3] */

Bon, les gens, j'me suis remis un peu à Touhy, et je suis toujours sur cette vague idée de faire des utilitaires permettant de reproduire quelques effets de Compiz, histoire de pouvoir les avoir sur d'autres gestionnaires de fenêtres.

J'pense à deux effets en particulier : la rotation du prisme (enfin, du « cube », comme ils disent, même si dans la pratique ce n'est jamais un cube mathématique, même quand il y a quatre bureaux, les faces n'étant pas carrées tongue) et le « dépliage » de ce même prisme (le truc qu'on a par défaut avec ctrl+alt+bas, où on a les images des différents bureaux affichées en ligne et dans lesquelles on peut se déplacer avec droite et gauche).

Je vois comment on pourrait faire pour les simuler (enfin, l'affichage des bureaux ne sera pas dynamique, mais bon, en ce qui me concerne, ça ne me dérange pas ^^), mais je n'ai pas les connaissances requises, donc j'aurais besoin d'un coup de main wink

Pour le second, il « suffit » de récupérer une capture d'écran de chaque bureau et de créer une fenêtre en plein écran dans laquelle on manipule ça. Je vois comment faire, mais je ne sais pas comment faire une capture d'écran directement en PyGTK, et ce serait quand même dommage d'utiliser des moyens tarabiscotés genre lancer un logiciel qui fait la capture et récupérer l'image enregistrée… quelqu'un aurait une idée ?

Pour le premier, le concept est le même, mais là il faudrait en plus gérer la 3D, et ça, je ne sais même pas si c'est possible en PyGTK, il faut peut-être utiliser une autre bibliothèque ?

Hors ligne

#1455 Le 22/01/2011, à 20:51

Pylades

Re : /* Topic des codeurs couche-tard [3] */

ArkSeth a écrit :

[…]
J'pense à deux effets en particulier : la rotation du prisme (enfin, du « cube », comme ils disent, même si dans la pratique ce n'est jamais un cube mathématique, même quand il y a quatre bureaux, les faces n'étant pas carrées tongue) […]

Enfin, à ce compte-là, ce n'est pas une rotation non plus, hein… tongue


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1456 Le 22/01/2011, à 20:56

Elzen

Re : /* Topic des codeurs couche-tard [3] */

Bah c'est un solide qui tourne sur lui-même, non ? C'est à peu près le principe d'une rotation, me semble-t-il…

Il n'empêche que si tu pouvais répondre à mes deux p'tites questions techniques, ça m'arrangerait ^^

Hors ligne

#1457 Le 22/01/2011, à 21:06

xapantu

Re : /* Topic des codeurs couche-tard [3] */

À mon avis, pour la capture d'écran, il faut passer par XLib, après, comment faire vraiment, je  sais pas…

Hors ligne

#1458 Le 22/01/2011, à 21:11

grim7reaper

Re : /* Topic des codeurs couche-tard [3] */

Chui pas sûr qu'on doivent passer par la XLib direct, Gdk est plus ou moins un wrapper à la XLib donc ça doit être faisable en passant par lui.

Édit : yep, j'avais raison smile
Un exemple piqué ici

import gtk.gdk

w = gtk.gdk.get_default_root_window()
sz = w.get_size()
print "The size of the window is %d x %d" % sz
pb = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB,False,8,sz[0],sz[1])
pb = pb.get_from_drawable(w,w.get_colormap(),0,0,0,0,sz[0],sz[1])
if (pb != None):
    pb.save("screenshot.png","png")
    print "Screenshot saved to screenshot.png."
else:
    print "Unable to get the screenshot."

Dernière modification par grim7reaper (Le 22/01/2011, à 21:15)

Hors ligne

#1459 Le 22/01/2011, à 23:19

Pylades

Re : /* Topic des codeurs couche-tard [3] */

Bon, j'ai fait un peu de CLFB. Y a-t-il des raisons de me lyncher, pour le moment (ne faites pas gaffe à ce qui est entre balises <old>) ?

/*
 *  pylCLFB: the command-line file browser, by Pyl
 *  Copyright (C) 2011 Paul Bazin
 *
 *  This file is part of pylCLFB.
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdarg.h>
#include <unistd.h>

#define WD_SIZ_BASE 256U
#define PROMPT "clfb: %s> "
#define NOTICE "The Command-Line File Browser, version 0.1\n"\
    "Copyright (C) 2011 Paul Bazin <pyl{a}alwaysdata{*}net>\n"\
    "This program is free software: you can redistribute it and/or "\
    "modify it under\nthe terms of the GNU General Public License.\n"\
    "This program is distributed in the hope that it will be useful, "\
    "but WITHOUT ANY\nWARRANTY; without even the implied warranty of "\
    "MERCHANTABILITY or FITNESS FOR A\nPARTICULAR PURPOSE.\n"\
    "See the sources for detailed information.\n"

static void args(int, char**);
static char* gwd(void);
static void die(int, const char*, ...);

int main(int argc, char** argv)
{
    char* pwd;
    char* line = "plop";
    args(argc, argv);
    pwd = gwd();
    free(pwd);
    line++ /* :P */ ;
    /* <old>
    char vi[256];
    char* nl;
    args(argc, argv);
    do
    {
        getcwd(vi, sizeof vi);
        printf(PROMPT, strrchr(vi, '/') + 1);
        fgets(vi, sizeof vi, stdin);
        nl = strrchr(vi, '\n');
        if (nl)
        {
            *nl = '\0';
            chdir(vi);
        }
    } while (nl);
    putchar('\n');
    </old> */
    return 0;
}

static void args(int argc, char** argv)
{
    if (argc == 2)
        if (!strcmp(argv[1], "--version"))
        {
            fputs(NOTICE, stdout);
            exit(0);
        }
}

static char* gwd(void)
{
    size_t n = WD_SIZ_BASE;
    char* ret = NULL;
    do
    {
        free(ret);
        ret = malloc(n);
        if (ret)
        {
            errno = 0;
            if (!getcwd(ret, n))
            {
                if (errno == ERANGE)
                    n += n/2;
                else if (errno == ENOENT)
                    die(-2, "The working directory was removed. "
                            "This error is not handled yet.\n");
                else
                    die(-1, "Unknown error occured.\n");
            }
        }
        else
            die(-1, "Alloc' failed.\n");
    } while (errno);
    return ret;
}

static void die(int stat, const char* errstr, ...)
{
    va_list ap;
    va_start(ap, errstr);
    vfprintf(stderr, errstr, ap);
    va_end(ap);
    exit(stat);
}

“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1460 Le 22/01/2011, à 23:21

tshirtman

Re : /* Topic des codeurs couche-tard [3] */

ArkSeth a écrit :

Bon, les gens, j'me suis remis un peu à Touhy, et je suis toujours sur cette vague idée de faire des utilitaires permettant de reproduire quelques effets de Compiz, histoire de pouvoir les avoir sur d'autres gestionnaires de fenêtres.

J'pense à deux effets en particulier : la rotation du prisme (enfin, du « cube », comme ils disent, même si dans la pratique ce n'est jamais un cube mathématique, même quand il y a quatre bureaux, les faces n'étant pas carrées tongue) et le « dépliage » de ce même prisme (le truc qu'on a par défaut avec ctrl+alt+bas, où on a les images des différents bureaux affichées en ligne et dans lesquelles on peut se déplacer avec droite et gauche).

Je vois comment on pourrait faire pour les simuler (enfin, l'affichage des bureaux ne sera pas dynamique, mais bon, en ce qui me concerne, ça ne me dérange pas ^^), mais je n'ai pas les connaissances requises, donc j'aurais besoin d'un coup de main wink

Pour le second, il « suffit » de récupérer une capture d'écran de chaque bureau et de créer une fenêtre en plein écran dans laquelle on manipule ça. Je vois comment faire, mais je ne sais pas comment faire une capture d'écran directement en PyGTK, et ce serait quand même dommage d'utiliser des moyens tarabiscotés genre lancer un logiciel qui fait la capture et récupérer l'image enregistrée… quelqu'un aurait une idée ?

Pour le premier, le concept est le même, mais là il faudrait en plus gérer la 3D, et ça, je ne sais même pas si c'est possible en PyGTK, il faut peut-être utiliser une autre bibliothèque ?

l'utilitaire 3ddesktop, si on le trouve encore quelque part, peut t'intéresser, ça permettait en gros d'avoir le même effet, en statique, avant compiz…

Hors ligne

#1461 Le 23/01/2011, à 00:59

Elzen

Re : /* Topic des codeurs couche-tard [3] */

grim7reaper a écrit :

Édit : yep, j'avais raison smile
Un exemple piqué ici

Apparemment t'es plus doué pour les recherches que moi ^^"

Merci, je tente big_smile

tshirtman a écrit :

l'utilitaire 3ddesktop, si on le trouve encore quelque part, peut t'intéresser, ça permettait en gros d'avoir le même effet, en statique, avant compiz…

Je sais, et j'ai déjà essayé, mais le seul paquet que j'ai trouvé ne marche plus (j'me souviens plus si j'ai essayé de compiler, ceci dit, mais bon…)

Et puis ça pourrait toujours être intéressant que j'arrive à faire ça moi-même… à votre avis, une fois que j'ai les images, pour dessiner et animer le prisme, j'dois utiliser quoi ? Une bibliothèque facilement compatible avec PyGTK, si possible ^^

Dernière modification par ArkSeth (Le 23/01/2011, à 00:59)

Hors ligne

#1462 Le 23/01/2011, à 01:39

grim7reaper

Re : /* Topic des codeurs couche-tard [3] */

Bon, je commence à avoir un truc pas trop moche niveau lecture du fichier de conf' de CLFB (pour l'association type mime/application).
Partant de ce fichier

[text/plain]
vim=""

[application/x-executable]
vim="-b -c 'set display=uhex' -c '%!xxd'"

[application/ogg]
mplayer="-nolirc"
play=""

[text/png]
feh="-F"

J'arrive à cette Map

[
    ("application/ogg",         [
                                    ("mplayer", "-nolirc"),
                                    ("play",    "")
                                ]
    ),
    ("application/x-executable",[("vim",        "-b -c 'set display=uhex' -c '%!xxd'")]),
    ("text/plain",              [("vim",        "")]),
    ("text/png",                [("feh",        "-F")]),
]

Sachant que la commande abstraite que j'ai créée pour lancer un programme externe est du type

OpenWith progname option filename

J'ai juste à faire une recherche dans ma Map (la clef étant le type mime du fichier) pour extraire les infos dont j'ai besoin smile

Dernière modification par grim7reaper (Le 23/01/2011, à 04:18)

Hors ligne

#1463 Le 23/01/2011, à 01:43

Rolinh

Re : /* Topic des codeurs couche-tard [3] */

Bah ça code par là smile

Hors ligne

#1464 Le 23/01/2011, à 02:37

Elzen

Re : /* Topic des codeurs couche-tard [3] */

Ça m'a l'air pas mal, tout ça ^^ (pour le CLFB. Mais Pylade, j'ai lu qu'en diagonal, et j'pense pas être le plus qualifié pour te relire ^^")

Et pour mon truc à moi, apparemment ça marche plutôt bien (il me reste juste à rajouter la bande en haut et en bas pour que ça ait l'air d'une pellicule), mais par contre, pour une raison inconnue, certaines fenêtres apparaissent partiellement grises sur la capture.

Hors ligne

#1465 Le 23/01/2011, à 03:01

Sir Na Kraïou

Re : /* Topic des codeurs couche-tard [3] */

.


Descendant de Charlemagne et de LUCA.
Bleu, en l'hommage d'un truc bleu. :'(
C'est pas du bleu.
C'est pas le lac de Genève, c'est le Lac Léman.

Hors ligne

#1466 Le 23/01/2011, à 04:07

nesthib

Re : /* Topic des codeurs couche-tard [3] */

plop


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#1467 Le 23/01/2011, à 04:11

Pylades

Re : /* Topic des codeurs couche-tard [3] */

Ouais, mais je ne suis pas vraiment sûr de ce que j'ai fait, là… Je trouve ça très long pour pas grand chose…


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1468 Le 23/01/2011, à 04:13

Кຼزດ

Re : /* Topic des codeurs couche-tard [3] */

Plop, demain je vais tenter de commencer à recoder certain de mes CMS php en équivalents django ou cgi, parce que php ça suxe un max quand même…
Par contre, ça va me prendre du temps


dou

Hors ligne

#1469 Le 23/01/2011, à 05:09

cm-t

Re : /* Topic des codeurs couche-tard [3] */

'Nuit;


Actu Ubuntu            ☺/
Pauses Ubuntu sur Paris            \_< -t
[(π)] La Quadrature du net

Hors ligne

#1470 Le 23/01/2011, à 08:42

Compteur du TdCCT

Re : /* Topic des codeurs couche-tard [3] */

Scores totaux, depuis le début :

1) 2391    nesthib
2) 2253    samuncle
3) 1929    Pylade
4) 1551    Кຼزດ
5) 1170+5  grim7reaper /* ./viewtopic.php?pid=3486252#p3486252 */
6) 1110    cm-t
7) 796    Р☢w ! ✰ :mad: ✰ (эй !)
8) 789    helly
9) 783    \\Ouranos//
10) 618    gnuuat
11) 538    Lagierl
12) 384    tshirtman
13) 196    Askelon
14) 189    Kanor
15) 178    Rolinh
16) 172    nathéo
17) 152    The Uploader
18) 121    ǤƦƯƝƬ
19) 93    petifrancais
20) 78    edge_one
20) 78    pierguiard
22) 70    gulp
23) 66    kamui57
24) 39    Le Rouge
25) 37    ilagas
26) 30    keny
27) 25    GentooUser
27) 25    Morgiver
27) 25    xapantu
30) 24    ไ୦บเઢ'
30) 24    Steap
32) 21    :!pakman
33) 20    CROWD
33) 20    d10g3n
35) 18    Ph3nix_
36) 15    timsy
37) 14    kouskous
38) 12    stratoboy
38) 12    sailing
38) 12    sakul
41) 11    alexises
41) 11    Crocoii
43) 10    Toineo
43) 10    NutMotion
43) 10    pseudovingtcinqcaracteres
43) 10    pfriedZ
43) 10    CasseTaTele
48) 8    Mornagest
49) 7    Vista
50) 6    Zeibux
50) 6    ubuntlin
50) 6    asma.geek
53) 5    tendances-tdct
53) 5    kinouchou
55) 4    danychou56
55) 4    Neros
55) 4    Biaise
55) 4    totoflute
55) 4    pinballyoda ㋛
60) 3    Revan26914
61) 2    SoJaS
61) 2    ceric
63) 1    geenux

RépartitionPosts/heure


Codez-vous trop tard le soir ?
Demandez au Compteur du TdCCT pour le savoir !

J’ai été généreusement codé par tshirtman ; d’ailleurs, voici mon code source. TdCCT CEP : ./viewtopic.php?pid=3493579#p3493579 (p3492608).

Hors ligne

#1471 Le 23/01/2011, à 08:42

Compteur du TdCCT

Re : /* Topic des codeurs couche-tard [3] */

Scores de la période en cours :

1) 190    nesthib
2) 188    samuncle
3) 157    Pylade
4) 136    Кຼزດ
5) 121    grim7reaper
6) 97    Rolinh
7) 86    gnuuat
8) 64    Р☢w ! ✰ :mad: ✰ (эй !)
9) 62    cm-t
10) 59    The Uploader
11) 48    helly
12) 36    tshirtman
13) 21    :!pakman
14) 20    Lagierl
15) 15    \\Ouranos//
16) 10    CasseTaTele
17) 7    kamui57
17) 7    Le Rouge
19) 4    Kanor
20) 3    Steap
20) 3    xapantu

Codez-vous trop tard le soir ?
Demandez au Compteur du TdCCT pour le savoir !

J’ai été généreusement codé par tshirtman ; d’ailleurs, voici mon code source. TdCCT CEP : ./viewtopic.php?pid=3493579#p3493579 (p3492608).

Hors ligne

#1472 Le 23/01/2011, à 13:30

Elzen

Re : /* Topic des codeurs couche-tard [3] */

Bon, les gens, c'est moche comment ?

Hors ligne

#1473 Le 23/01/2011, à 13:32

helly

Re : /* Topic des codeurs couche-tard [3] */

Le truc du haut ?
C'est quoi ça ? oO


Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.

Hors ligne

#1474 Le 23/01/2011, à 13:33

Pylades

Re : /* Topic des codeurs couche-tard [3] */

AMHA, on ne comprend pas tout de suite l'effet pellicule ; tu devrais utiliser une autre image. Et puis Peut-être que les bandes de la pellicule sont un chouïa trop larges.


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#1475 Le 23/01/2011, à 13:34

grim7reaper

Re : /* Topic des codeurs couche-tard [3] */

Je trouve l'effet pellicule raté (bon j'aurais pas fais mieux, chui nul en graphisme…).
Même avis que Pylade, change l'image et met des bandes un peu moins larges.

Dernière modification par grim7reaper (Le 23/01/2011, à 13:36)

Hors ligne