Gil Cot ✔ a écrit 5730 commentaires

  • [^] # Re: Tweet ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Re-implémentation de TweetNaCl en Spark. Évalué à 2.

    Merci, ça explique l'aspect pouet dans le nom. Et pour l'aspect salin ou salant ?

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Heu…

    Posté par  (site web personnel, Mastodon) . En réponse au lien How not to learn TypeScript. Évalué à 2.

    Si je comprends bien, c’est une ode au non-typage…

    Je n'ai pas l'impression d'avoir lu le même texte, qui pour moi se fait apôtre de typescript à sa façon. Peut-être que ta lecture a été trop rapide ?

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Un blog parmis tant d'autres

    Posté par  (site web personnel, Mastodon) . En réponse au journal Quand le mainteneur de pkexec ignorait (ou pas) les failles potentielles. Évalué à -2.

    Tu es tellement dans ton truc que tu ne prends pas la peine de ne pas entendre que toi même. :-) Toutes tes explications jusqu'à présent ne justifient pas que Github est incontournable. Au passage, j'en vois sur github des projets où les "issues" ne sont jamais pris en compte. Bref.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: vs

    Posté par  (site web personnel, Mastodon) . En réponse au journal Redécouverte : Roff. Évalué à 2.

    Je viens de tomber sur une nouvelle discussion (hier) sur reddit : Des usagers de l'époque 1980/1990 confirment que leur installation était assez petite…
    https://www.reddit.com/r/LaTeX/comments/sdc54k/how_was_latex_like_in_the_80s_and_90s/

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Corrections ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 2.

    Ah ha, il y avait donc bien un outil intermédiaire comme je l'avais suggéré plus tôt.

    Bon, par contre, ces réponses-ci ont été faites en supposant que tu édites le LaTeX directement (i.e. manuellement dans un éditeur de texte puis en appelant les commandes en CLI…) Je n'utilises pas du LyX et ne sait pas où et comment on fait ce genre de "personnalisations" ; mais je lis qu'il y a un truc ERT prévu et que tant que tu ne te retrouves pas à mélanger les deux (ou plus exactement importer du LaTeX fait main) c'est un excellent produit. https://tex.stackexchange.com/questions/197765/what-is-the-difference-between-lyx-and-latex

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Un blog parmis tant d'autres

    Posté par  (site web personnel, Mastodon) . En réponse au journal Quand le mainteneur de pkexec ignorait (ou pas) les failles potentielles. Évalué à -2.

    Mouais, avoir besoin d'un bug tracker ne veut pas dire avoir besoin de Github & co ; et ça c'est bien fait avant ces boîtes (et ça continue de se faire sans eux.)

    Pour la gestion par mails on va dire aux gens du noyau Linux (et ce ne sont pas les seuls) que ça ne fonctionne pas, parole de groumly. Et même que leur outil, Git, est conçu autour de cet aspect…

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: 32 Mo ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal La machine Linux à $15. Évalué à 10.

    Moi je trouve que c'est beaucoup. La plupart des mes installations (un portable physique et toute VM que j'ai à utiliser couramment) n'en ont pas plus… Pour ma défense, je travaille essentiellement en console et je n'utilise pas Emacs.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Liens supplémentaires

    Posté par  (site web personnel, Mastodon) . En réponse au lien Local Privilege Escalation avec polkit - patchez vos machines. Évalué à 4.

    Oui… https://www.linux.org/docs/man8/polkit.html
    Ça va dépendre, sur les serveurs sans X, si les paquets présents l'ont en dépendance ou pas. Mais j'aurai tendance à remplacer distribution par desktop dans leur phrase.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Ni wifi ni ethernet

    Posté par  (site web personnel, Mastodon) . En réponse au journal La machine Linux à $15. Évalué à 2.

    On ne dirait pas un écran e-ink… Mais je suis quand même intéressé par le produit :-p

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Yubikey ?

    Posté par  (site web personnel, Mastodon) . En réponse au message Authentification multiple avec anneau NFC. Évalué à 2.

    Voilà, ces braves gens n'avaient pas compris pourquoi on tenait à aller à La Réunion ; il ne suffisait pas de mettre le feu à l'immeuble pour en finir.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Corrections ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 3.

    Je vois du 71, du 81 et du 83 pour l'instant. Du coup je modifie la macro ainsi :

    \newcommand{jba}[3]{%
      \subsection{Journal de bord de l'Arche. J-#1~#2 --- #3}%
    }

    et les appels deviennent alors

    \jba{71}{175}{Capitaine Petros}
    % ...
    \jba{71}{212}{Enregistrement légal}
    % ...
    \jba{81}{529}{Capitaine Piet}

    Comme ça on a la même cohérence tout le long, et si un jour il y a changement de forme ça se fera en une fois partout (juste en faisant la modification dans la macro.)


    Ça c'était la version simple, sans additif… J'ai en effet un assez bon souvenir de SI Units X dont le paramétrage par défaut convient pour le monde anglo-saxon :

    \usepackage{siunitx}
    \sisetup{
        detect-all,
        output-decimal-marker={,},
        group-minimum-digits = 3,
        group-separator={~},
        number-unit-separator={~},
        inter-unit-product={~}
    }

    Avec ça, notre macro redevient à deux paramètres :

    \newcommand{jba}[2]{%
      \subsection{Journal de bord de l'Arche. J-\num{#1} --- #2}%
    }

    …et les appels sont fait avec les nombres aux chiffres agglutinés :

    \jba{71175}{Capitaine Petros}
    % ...
    \jba{71212}{Enregistrement légal}
    % ...
    \jba{81529}{Capitaine Piet}

    le boulot sera fait derrière, et on pourra appeler \num{} partout ailleurs dans le texte aussi :

    L'accident de J-\num{70045} m'en a empêché. 
    Damné soit ces électriciens. Une panne dans un sas, c'est criminel. 
    Nous avons perdu plus de \num{12000} mètres cubes
    % ...
    Nous portons le deuil des \num{1943} victimes de la tentative de 
    putsch de \og Respirez \fg.

    Ah, ai-je oublié de parler des « guillemets » ?

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Corrections ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 2.

    Dans son préambule, il doit indiquer l'encodage de son fichier (je suppose que c'est bon puisque les accents sont reconnus) et vraiment utiliser cet encodage (combien de fois n'ai-je pas vu des gens donner une certaine indication mais leur éditeur de texte est réglé sur autre chose…)

    \usepackage[latin1]{inputenc}

    Ensuite, il y a la police utilisée qui a son influence. Du fait de son âge et origine, la police par défaut (Computer Modern) ne contient pas de caractères accentués : ceux-ci sont vraiment produits par composition comme jadis : il y aura l'accent qui est superposé au caractère (ce ne sont pas des caractères combinants d'Unicode comme je l'ai d'abord cru mais juste l'effet visuel comme on le faisait avec la machine à écrire.) On peut palier cela en utilisant une police plus moderne (Latin Modern en est une et elle donne le même résultat visuel que Computer Modern ; CM Super en est une autre livrée par défaut dans TeX Live et qui a le même visuel aussi)

    \usepackage{lmodern}

    Mais il y a une petite subtilité avec ces nouvelles : elles elles peuvent être disponibles sous plusieurs formes (formats ?) …et il faut bien indiquer d'utiliser celle avec les caractères précomposés (avec la l'instruction suivante, pour les deux exemples cités, à placer avant le changement de police) :

    \usepackage[T1]{fontenc}

    Ça devrait être suffisant pour que le souci ne vienne plus du PDF (mais sur le reste du chemin de l'Unicode il peut y avoir d'autres ratés ailleurs.)

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Corrections ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 3.

    Je te suggère, dans ton préambule, d'ajouter la macro suivante (non testée) :

    \newcommand{jba}[2]{%
      \subsection{Journal de bord de l'Arche. J-71~#1 --- #2}
    }

    Tu l'utilise, par exemple pour la première entrée du premier chapitre ainsi :

    \jba{175}{Capitaine Petros}

    Et la suivante est

    \jba{212}{Enregistrement légal}

    Ainsi, tu gardes une certaine cohérence… Actuellement, tu as :

    • le tiret après la date qui est différent entre la première sous-section et les autres ;
    • la date qui devient 71213, sans l'espacement, dans la seconde sous-section du second chapitre ;
    • et certainement d'autres que je n'ai pas encore vu.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Super!

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 1.

    Haha, ça fait une mauvais pub à LaTeX. En fait, ce sont, comme les marges, des règles de césure américaines… Il doit manquer des options bien senties (dont un coup de Babel…)

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Super!

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 2.

    Trop beau pour être vrai :-) La césure m'a fait penser que ce n'était pas le cas, ou pas directement (par exemple quand on utilise Pandoc)

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Commentaire pédantique

    Posté par  (site web personnel, Mastodon) . En réponse au journal Re-implémentation de TweetNaCl en Spark. Évalué à 2.

    La BD j'en ai eu quatre tome ou fur et à mesure de leur sortie, offerts à mon neveu.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Serait-ce ceci par hasard ?

    Posté par  (site web personnel, Mastodon) . En réponse au message question complémentaire/débile n°7. Évalué à 3.

    On Internet knowbody knows you are a make.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: « Toute résistance est futile »

    Posté par  (site web personnel, Mastodon) . En réponse au journal L'achat du siècle : Microsoft achète Activision-Blizzard. Évalué à 4.

    On lui a fait prendre la pilule violette et depuis il dort avec un sourire béat.
    Prochaine étape, flasher les personnes ayant lu ce fil puis l'effacer. Cet événement n'a jamais eu lieu et les autres peuvent reprendre une activé normale.

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Corrections ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 2.

    C'est une bonne façon de procéder et donc le document est correct… Que la copie récupère l'ordre de composition initial ou le résultat final est un autre sujet : les deux se valent …tant que le coller produit le résultat escompté. Les joies de l'Unicode (et me semble qu'on avait déjà parlé de ce problème mais je ne sais plus où.)

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Super!

    Posté par  (site web personnel, Mastodon) . En réponse au journal Fuite, en espérant ne pas vous lasser. Évalué à 3.

    Je me méfie des certaines propriétés qui peuvent/devraient être modifiées manuellement. (là on suppose qu'ont été laissées les valeurs par défaut mais le document aurait pu être produit sous Works et se faire passer pour du LaTeX ou être fait avec du cuir et se faire passer pour du LibO, etc.)
    Ceci dit, comment le vois-tu visuellement sur le PDF ? :-)

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: xxd

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche get-tracks.sh : extraire des pistes d'un fichier audio. Évalué à 3.

    Je verrai plutôt tr " " "\n" dans une fonction avec un nom explicite, pour pouvoir enchaîner des fonctions avec un nom lisible par un humain, quelque-chose comme to_single_column | uppercase.

    Il faut résister à la tentation de faire des fonctions pour dix à quinze caractères, sauf si la fonction est vraiment réutilisée plusieurs fois… En groupant, ce n'est pas moins lisible, je trouve, et si en prime c'est commenté (juste par "to single column And to upper case" ou un truc du genre) c'est meilleur.
    C'est d'ailleurs parce-que tr est plus simple et plus lisible sur ce coup que je n'ai pas poussé…

    # tr " " "\n"
    awk -v RS=" " '{print}'
    
    # tr "[[:lower:]]" "[[:upper:]]"
    # AWK is better with accentuated locales
    awk '{print toupper($0)}'
    
    # tr "[a-z] " "[A-Z]\n"
    awk -vRS=' ' '{print toupper($0)}'
    
    # tr "[a-z] " "[A-Z]\n" | awk '{printf "%d\n", ("0x" $1)}'
    # hexa in AWK is in fact case-insensitive
    awk  -vRS=" " '{printf "%d\n", (("0x" $1) + 0)}'

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: xxd

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche get-tracks.sh : extraire des pistes d'un fichier audio. Évalué à 4. Dernière modification le 25 janvier 2022 à 22:00.

    J'ai fait le test sur un Mac et cet outil là ne semble pas être une implémentation GNU

    $ type awk
    awk is hashed (/usr/bin/awk)
    $ ls -l /usr/bin/awk 
    -rwxr-xr-x  1 root  wheel  334944 Dec  8 00:39 /usr/bin/awk
    $ type gawk
    -bash: type: gawk: not found
    $ awk --version
    awk version 20200816

    Le manpage ne dit pas quelle implémentation c'est non plus, mais de mémoire c'est nawk comme sur d'autres BSD. Je vérifierai sur un autre poste où j'en ai d'autres (mawk et nawk entre autres) ce qu'il en est du comportement par rapport aux hexa. Et surtout voir ce qui est attendu au niveau de la norme…

    Peut-être qu'il faut lui forcer la main avec strtonum() ?

    Sinon, la façon un peu bourrin de faire la conversion ressemblerait à (non testé) :

    for (x=1;x<=length($1);x++){
    digit=index("123456789abcdef",substr($1,x,1));
    number=number*16+digit}
    print number

    Pendant que j'écrivais je viens de me rappeler qu'on va parfois chercher loin ce qui est à portée de main… L'expansion arithmétique d'un shell POSIX connait l'hexa en entrée mais retourne tout en décimal (test suivant fait avec Bash, Zsh, Dash pour m'en assurer) :

    $ echo $((0x61))
    97
    $ x='0xE'; printf "%d %d %d" $x "$x" $((x + 1))
    14 14 15

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: Damn !

    Posté par  (site web personnel, Mastodon) . En réponse au lien La législation sur les services numériques, ou DSA, vient d'être votée par le Parlement européen. Évalué à 3.

    Et les sites de rencontres de manchots et de pingouins alors ?

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: xxd

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche get-tracks.sh : extraire des pistes d'un fichier audio. Évalué à 5. Dernière modification le 25 janvier 2022 à 19:57.

    Dans cet enchainement :

            tr " " "\n" | uppercase

    …tu peux combiner les deux en une opération

            tr "[a-z] " "[A-Z]\n"

    …et le test est concluant :

    $ cat hex.txt 
    61 62 0a
    63 64 0a
    $ cat hex.txt | tr "[a-z] " "[A-Z]\n"
    61
    62
    0A
    63
    64
    0A

    Et là, on aimerait bien passer tout ça à awk pour qu'il traduise ça en caractères affichables via sa fonction printf.
    Mais il lui faut un nombre en base 10 et je sais pas traduire l'hexa facilement avec awk (hors version GNU),

    Bien vu pour printf. Le "truc" est juste de lui passer une chaîne déjà en hexa …en forçant la chaîne de caractères à être lu comme un nombre hexa…

    printf "%d\n", (("0x" $1) + 0)

    Vérification…

    $ echo "obase=10;ibase=16; 61" | bc
    97
    $ echo "61" | awk '{ printf "%d\n", (("0x" $1) + 0) }'
    97
    $ cat hex.txt | tr "[a-z] " "[A-Z]\n" | awk '{printf "%d\n", (("0x" $1) + 0)}'
    97
    98
    10
    99
    100
    10

    Tu étais donc sur la bonne voie ; j'y aurais pas pensé à ce détour tout seul.

    Est-ce qu'on aurait pas plus simple encore ?

    [edit] Du coup, on peut combiner from_hex_to_decimal | from_dec pour la route :D

    $ cat hex.txt | tr "[a-z] " "[A-Z]\n" | awk '{printf "%c", (("0x" $1) + 0)}'
    ab
    cd

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume

  • [^] # Re: xxd

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche get-tracks.sh : extraire des pistes d'un fichier audio. Évalué à 5.

    et xxd -p -r qui fait l'inverse

    OD et HexDump ne font pas l'inverse… Mais comme tu fais déjà du traitement avec AWK, peut-être utiliser sa faction chr (et ord dans l'autre sens ?) Je sais, c'est pas du jeu :-)

    Petites notes sympas, vu que ce ne sont pas des fonctions natives (en tout cas pas requis par POSIX donc propre à l'implémentation si présente) : https://www.gnu.org/software/gawk/manual/html_node/Ordinal-Functions.html et https://helpmanual.io/man3/ordchr-am/

    C'est la première fois que j'entends parler du besoin de faire l'opération inverse dans un script ; du coup je suis allé regarder le source. Je ne suis pas sûr d'avoir compris ce que tu tentes de faire : pour du rechercher-remplacer il n'est pas besoin de passer par ce détour …à moins que ce ne soit des caractères trop particuliers ? (auquel cas méfiance…) S'il s'agit par contre de changer l'encodage, il n'y a pas de mal à faire appel à iconv dont c'est le boulot (et qui donc prend en compte un certain nombre d'autres paramètres.)
    En fait, quand il y a plusieurs solutions possibles j'aime plutôt permettre au script de s'adapter en conséquence (il y a de grande chance que l'un des deux outils soit installé, et si c'est pas le cas on fait avec) :

    if command -v iconv >/dev/null ; then
      # traitement avec iconv...
    elif command -v xxd >/dev/null ; then
      # traitement avec xxd...
    else
      # p-o-c qu'on peut faire sans l'un ni l'autre
      # ou arret avec message d'erreur clair
      # ou traitement degrade avec avertissement
    fi

    “It is seldom that liberty of any kind is lost all at once.” ― David Hume