Gil Cot ✔ a écrit 5730 commentaires

  • [^] # Re: version d'origine ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Wordle is the new TapTempo. Évalué à 2.

    Oui, il semble que, outre-Manche, le pendu ait « fait son apparition pendant l'époque victorienne, vers la fin du XIXe siècle. » ;-)

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

  • [^] # Re: Entre ça et Doctolib le choix est vite fait

    Posté par  (site web personnel, Mastodon) . En réponse au lien S'opposer à la création de monespacesanté (Atos / Worldline). Évalué à 3. Dernière modification le 13 février 2022 à 21:38.

    oui, c'est le module agenda déjà évoqué ici :-s

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

  • [^] # Re: Slackware n’intègre pas de résolution de dépendances ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Tout arrive, même Slackware 15.0. Évalué à 6.

    Il est possible lors de l'installation de choisir chaque paquet un par un, mais en général on choisit l'option d'installation complète, ou on restreint par catégories.
    Par exemple sur un serveur sans interface graphique, on va inclure [a, ap, l, n, y]
    S'il faut les outils de développement on va rajouter d (gcc, autotools, git, etc.)
    […] tu fais une installation complète, sans choisir précisément ce que tu veux, sinon tu te prends la tête à tirer tes dépendances à la main (personne ne fait ça je pense ?)

    Arf, je ne fais de « full install » que sur mes VM de test. Mon vieux portable Pentium sur lequel tourne Slackware a été installé en choisissant paquet par paquet et non par catégorie. ;-)

    À noter que la Debian permet aussi ce genre de chose : n'installer que certaines catégories (mais il y en a moins à l'installation, et plus quand on lance le gestionnaire de paquets en clicodrome) ou choisir les différents programmes (bon ça fait des lustres que je n'ai pas pas essayé et je ne sais pas si ça existe toujours, par contre on n'avait pas la liste de tout ce qui était possible mais juste un petit sous-ensemble que je pense issue des catégories disponibles à l'installation.)

    Tu as donc le mauvais côté de la non gestion de dépendances : tu fais une installation complète, sans choisir précisément ce que tu veux, sinon tu te prends la tête à tirer tes dépendances à la main (personne ne fait ça je pense ?)
    Mais le bon côté aussi : aucun « dependency hell » pas de paquet à-la-con©®™ qui a un sous-utilitaire graphique que tu n'utilises pas mais qui va t'installer tout X.org, et Qt5, etc.
    Là tu vas avoir ton utilitaire ligne de commande, et aussi le sous-utilitaire graphique, c'est juste que ce dernier ne fonctionnera pas si tu as fait une installation pure console.
    Le Slackware ne te dira rien, ne te prendra pas la tête, ne t'avertiras pas non plus : tu fais comme tu veux.

    La découpe des paquets est une chose et la gestion des dépendances une autre. Dans l'exemple que tu prends, il se trouve que les distributions Red Hat découpent aussi en gros, comme Slackware, mais avec la gestion de dépendance en plus : ça aide pour les usages domestiques (et les admins qui ne veulent pas avoir le temps de lire toute la doc de ce avec quoi le programme fonctionne et mettre les mains dans le cambouis pour lier les composants) en t'installant en plus le X.org ou le Qt5 etc. (du coup, quelques paquets on été revus pour être découpé en variante avec ou sans X, mais pas aussi finement que chez Debian)

    Une distribution est une philosophie/approche de l'administration système et autres facilités. La philosophie Slackware est d'être dans l'esprit des Unix initiaux (d'où la comparaison souvent avec les BSD) où les administrateurs font tout eux-même (à la mano, à leur sauce et non en se voyant imposer une vision) y compris pour les paquets (on récupère la totale telle que conçue par le projet puis on configure ce qu'on veut utiliser et on laisser le reste moisir à côté, là où les autres distributions veulent vous aider à tout prix.)

    À noter qu'avec une base de Slackware complète, beaucoup de slackbuilds n'ont aucune dépendances (un grep vite fait me donne 60% sans dépendances, et 92% jusque deux dépendances).

    Ça rejoint ce que je disais dans un autre message. Hormis les gens qui poussent le bouchon trop loin comme moi, il faut prendre le temps de regarder les dépendances pour les gérer mais on rarement une multitude (jusqu'à deux en général et aucun plus souvent, comme tu le montres)
    À l'usage, ça marche tellement simplement que tu te demandes parfois si les autres distros Linux n'ont pas inutilement compliqué… (mais je ne crois pas non plus parce-que certains choix amènent fatalement à plus de complexité)

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

  • # avec le décodeur ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Meikik, un nouveau Dialect pour Thymeleaf pour l'affichage de texte saisi par les utilisateurs. Évalué à 3.

    P.S. : Oui, le nom du projet vient évidemment de ce à quoi vous pensez !

    Euhhhh à quoi suis-je sensé penser ?
    Au passage, qui est Thymeleaf ?

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

  • [^] # Re: Super journal… que je lirai plus tard

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 3.

    Pourquoi tu réécris seq ? Si t'es sur ton OpenBSD, t'embête pas (vu que c'est un test rapide qui sera jeté ensuite) : utilise jot

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

  • [^] # Re: Commencement

    Posté par  (site web personnel, Mastodon) . En réponse au journal TI-92 à donner. Évalué à 2.

    On s'attendrait donc à bien plus de développeurs avec un tel monopole :-)

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

  • [^] # Re: Très, très intéressant

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 3.

    Pour le plaisir des yeux : diffusion de grande image par le rouleau après avoir hacké le protocole de communication de la calculatrice TI) https://youtu.be/W_mZ7smIz3U

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

  • [^] # Re: Super journal… que je lirai plus tard

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 4.

    Donc soit il y a un problème dans la page de manuel, soit je n'ai pas compris ce que sont le goal et le maximum.

    Je ne me suis pas attardé sur cet aspect parce-que la syntaxe varie d'une implémentation à une autre et que pour des raisons de portabilité il vaut mieux rester au dénominateur commun : -w Mais s'il y a beaucoup de demandes de précisions (auxquelles je tenterai de répondre sans prétendre avoir la maîtrise ultime vu que je n'utilise pas toutes les options) je compulserai dans un épisode (journal) complémentaire.

    Pour en revenir à la question, le maximum est le mur infranchissable… (dans le contexte des quotas c'est l'équivalent du « hard limit » je dirai.) D'après les manpages, quand on indique max seul, le programme doit en déduire le goal (semble que BSD utilise la même valeur, tandis que GNU calcule que ça fait 93%.)
    Par contre, le goal est la limite désirée, désirable mais légèrement déspassable… (donc l'équivalent du « soft limit » quand on fait l'analogie avec la gestion des quotas.) De même, quand on indique goal seul, le programme doit en déduire le max (BSD fait plus dix et GNU fait plus sept pour cent.)
    Quand on spécifie les deux, le programme va essayer de couper un peu après (ou juste à) goal et toujours avant max !
    Test avec une forme commune du Lorem (il faudra tester plusieurs valeurs pour trouver celles qui sont les plus parlantes)

    $ fmt -v
    fmt: illegal option -- v
    usage:   fmt [-cmps] [-d chars] [-l num] [-t num]
                 [-w width | -width | goal [maximum]] [file ...]
    Options: -c     center each line instead of formatting
             -d <chars> double-space after <chars> at line end
             -l <n> turn each <n> spaces at start of line into a tab
             -m     try to make sure mail header lines stay separate
             -n     format lines beginning with a dot
             -p     allow indented paragraphs
             -s     coalesce whitespace inside lines
             -t <n> have tabs every <n> columns
             -w <n> set maximum width to <n>
             goal   set target width to goal
    # mon fichier de test
    $ wc lorem
           1      69     446 lorem
    ## soft 52 (soit max vers 62?)
    # BSD: fmt 52    lorem
    # GNU: fmt -g 52 lorem
    #        1         2         3         4         5 G       6 m
    #23456789012345678901234567890123456789012345678901234567890123456789
    $ fmt 52 lorem
    Lorem ipsum dolor sit amet, consectetur adipiscing
    elit, sed do eiusmod tempor incididunt ut labore et
    dolore magna aliqua. Ut enim ad minim veniam, quis
    nostrud exercitation ullamco laboris nisi ut aliquip
    ex ea commodo consequat. Duis aute irure dolor in
    reprehenderit in voluptate velit esse cillum dolore
    eu fugiat nulla pariatur. Excepteur sint occaecat
    cupidatat non proident, sunt in culpa qui officia
    deserunt mollit anim id est laborum.
    ## soft 47 (soit max vers 57?)
    #        1         2         3         4      G  5      m  6
    #23456789012345678901234567890123456789012345678901234567890123456789
    $ fmt 47 lorem
    Lorem ipsum dolor sit amet, consectetur adipiscing
    elit, sed do eiusmod tempor incididunt ut labore
    et dolore magna aliqua. Ut enim ad minim veniam,
    quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute
    irure dolor in reprehenderit in voluptate velit
    esse cillum dolore eu fugiat nulla pariatur.
    Excepteur sint occaecat cupidatat non proident,
    sunt in culpa qui officia deserunt mollit anim
    id est laborum.
    ## hard 65 (soit but vers 55?)
    # BSD: fmt -w 65 lorem
    # GNU: fmt -w 65 lorem
    #        1         2         3         4         5    g    6    M
    #23456789012345678901234567890123456789012345678901234567890123456789
    $ fmt -w 65 lorem
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
    eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
    enim ad minim veniam, quis nostrud exercitation ullamco laboris
    nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
    reprehenderit in voluptate velit esse cillum dolore eu fugiat
    nulla pariatur. Excepteur sint occaecat cupidatat non proident,
    sunt in culpa qui officia deserunt mollit anim id est laborum.
    ## hard 57 (soit but vers 47?)
    #        1         2         3         4      g  5      M  6
    #23456789012345678901234567890123456789012345678901234567890123456789
    $ fmt -w 57 lorem
    Lorem ipsum dolor sit amet, consectetur adipiscing elit,
    sed do eiusmod tempor incididunt ut labore et dolore
    magna aliqua. Ut enim ad minim veniam, quis nostrud
    exercitation ullamco laboris nisi ut aliquip ex ea
    commodo consequat. Duis aute irure dolor in reprehenderit
    in voluptate velit esse cillum dolore eu fugiat nulla
    pariatur. Excepteur sint occaecat cupidatat non proident,
    sunt in culpa qui officia deserunt mollit anim id est
    laborum.
    ## intervalle 48--52
    # BSD: fmt 48 52 lorem
    # GNU: fmt -w 52 -g 48 lorem
    # GNU: fmt -g 48 -w 52 lorem
    #        1         2         3         4       G 5 M       6
    #23456789012345678901234567890123456789012345678901234567890123456789
    $ fmt 48 52 lorem
    Lorem ipsum dolor sit amet, consectetur adipiscing
    elit, sed do eiusmod tempor incididunt ut labore
    et dolore magna aliqua. Ut enim ad minim veniam,
    quis nostrud exercitation ullamco laboris nisi ut
    aliquip ex ea commodo consequat. Duis aute irure
    dolor in reprehenderit in voluptate velit esse
    cillum dolore eu fugiat nulla pariatur. Excepteur
    sint occaecat cupidatat non proident, sunt in culpa
    qui officia deserunt mollit anim id est laborum.
    ## intervalle 47--54
    #        1         2         3         4      G  5   M     6
    #23456789012345678901234567890123456789012345678901234567890123456789
    $ fmt 47 54 lorem
    Lorem ipsum dolor sit amet, consectetur adipiscing
    elit, sed do eiusmod tempor incididunt ut labore
    et dolore magna aliqua. Ut enim ad minim veniam,
    quis nostrud exercitation ullamco laboris nisi
    ut aliquip ex ea commodo consequat. Duis aute
    irure dolor in reprehenderit in voluptate velit
    esse cillum dolore eu fugiat nulla pariatur.
    Excepteur sint occaecat cupidatat non proident,
    sunt in culpa qui officia deserunt mollit anim
    id est laborum.

    Bon, il y a quand même des lignes où il se permet de descendre un ou deux caractères en dessous de goal ici.

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

  • [^] # Re: cat

    Posté par  (site web personnel, Mastodon) . En réponse au message traiter des blocs de texte pour composer de gros documents flexibles. Évalué à 2.

    Héhé. c'est juste le manque d'habitude je pense. Mais pas à pas on acquière des réflexes ;-)

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

  • [^] # Re: Slackware n’intègre pas de résolution de dépendances ?

    Posté par  (site web personnel, Mastodon) . En réponse à la dépêche Tout arrive, même Slackware 15.0. Évalué à 10.

    Je n'ai pas vu la vidéo, mais comme l'indique Wikipédia

    Slackware inclut son propre gestionnaire de paquets: pkgtool, permettant d'installer, désinstaller, mettre à jour, extraire dans le répertoire courant et créer des paquets. Chacune de ces fonctions est remplie par un script bash utilisable par l'interpréteur de commandes. pkgtool fournit également un environnement en mode texte pour effectuer ces opérations. Les paquets sont de simples archives tar compressées avec gzip, bzip2 ou xz. Depuis le 8 mai 2009, les paquets distribués officiellement sont compressés avec xz.

    Plus précisément

    Slackware's package management system, collectively known as pkgtools, can administer (pkgtool), install (installpkg), upgrade (upgradepkg), and remove (removepkg) packages from local sources. It can also uncompress (explodepkg) and create (makepkg) packages. The official tool to update Slackware over a network or the internet is slackpkg. It was originally developed by Piter Punk as an unofficial way to keep Slackware up-to-date. It was officially included in the main tree in Slackware 12.2 […]
    Slackware packages are tarballs compressed using various methods. Starting with 13.0, most packages are compressed using xz (based on the LZMA compression algorithm), utilizing the .txz filename extension. Prior to 13.0, packages were compressed using gzip (based on the DEFLATE compression algorithm), using the .tgz extension. Support for bzip2 and lzip compression was also added, using the filename extensions .tbz and .tlz respectively, although these are not commonly used.
    Packages contain all the files for that program, as well as additional metadata files used by the package manager. The package tarball contains the full directory structure of the files and is meant to be extracted in the system's root directory during installation. The additional metadata files, located under the special install/ directory within the tarball, usually include a slack-desc file, which is a specifically formatted text file that is read by the package manager to provide users with a description of the packaged software, as well as a doinst.sh file, which is a post-unpacking shell script allowing creation of symbolic links, preserving permissions on startup files, proper handling of new configuration files, and any other aspects of installation that can't be implemented via the package's directory structure. During the development of 15.0, Volkerding introduced support for a douninst.sh uninstall script that can be launched when removing or upgrading a package. This allows package maintainers to run commands when a package is uninstalled.

    Ça c'est pour une petite nouveauté non mentionnée par la dépêche et pour illustrer le fonctionnement global (et donc montrer ce qui a été fait dans la vidéo pour LibreOffice.) La plupart des gestionnaires de paquet fonctionnent d'une façon un peu similaire.
    Maintenant, pour aller plus loin :

    The package manager maintains a local database on the computer, stored in multiple folders. […] Each Slackware installation will contain a packages/ and scripts/ directory in the main database location. The former is where each package installed will have a corresponding install log file (based on the package name, version, arch, and build) that contains the package size, both compressed and uncompressed, the software description, and the full path of all files that were installed. If the package contained an optional doinst.sh post-installation script, the contents of that script will be added to a file in the scripts/ directory matching the filename of the corresponding package in the packages/ directory, allowing the administrator to view the post-installation script at a future point. When a package is removed or upgraded, the old install logs and scripts found under packages/ and scripts/ are moved to removed_packages/ and removed_scripts/, making it possible to review any previous packages and see when they were removed.
    When a package is upgraded, it will install the new package over the old one and then remove any files that no longer exist in the new package. When running upgradepkg, it only confirms that the version numbers are different, thus allowing downgrading the package if desired.

    Donc, comme les autres gestionnaires de paquets, ce qui est fait est tracé mais dans des fichiers textuels et non une base de données binaire. L'organisation est très simple et on peut tout refaire manuellement… (c'était le cas avant le gestionnaire de paquets : on extrayait l'archive et on faisait les opérations demandées par la procédure d'installation qu'on pouvait automatiser en écrivant soi-même le doinst.sh : c'est une distribution qui se veut sans artifice et est idéale pour maîtriser tout ce qui se fait sur le système sans truc auto-magique.) Du coup, oui

    The package management system does not track or manage dependencies; however, when performing the recommended full install, all dependencies of the stock packages are met. For custom installations or 3rd-party packages, Slackware relies on the user to ensure that the system has all the supporting system libraries and programs required by the program. Since no official lists of dependencies for stock packages are provided, if users decide to install a custom installation or install 3rd-party software, they will need to work through any possible missing dependencies themselves. Since the package manager doesn't manage dependencies, it will install any and all packages, whether or not dependencies are met. A user may find out that dependencies are missing only when attempting to use the software.

    Il n'y a vraiment pas de souci pour un paquet officiel (comme pour LibreOffice) : il y a tout ce qu'il faut en général dedans. Quand il y a des bouts de code partagés, l'appli est souvent découpé de sorte à résoudre le souci, comme dans d'autres distributions (on aura par exemple : trucmuche-server, trucmuche-client, trucmuche-tools, trucmuche-common) et la description informe clairement sur les autres dépendances qui ne font pas partie de l'appli (avec sudo, tu auras genre une information qu'il faut : ibaudit1, libpam, libselinux1, et zlib1g …dont la majorité sera déjà installé de base.)
    L'absence de gestion de dépendance n'est vraiment problématique que pour des paquets qui ne sont pas empaquetés pour Slackware, typiquement des trucs récupérés aléatoirement sur la toile. Mais même dans ce cas, si c'est bien documenté on ne doit pas rencontré (trop) de souci. Et sinon (jamais eu besoin pour ma part), si ça peut te rassurer :

    While Slackware itself does not incorporate official tools to resolve dependencies, some unofficial, community-supported software tools do provide this function, similar to the way APT does for Debian-based distributions and yum does for Red Hat-based distributions. They include
    - slapt-get is a command line utility that functions in a similar way to APT. While slapt-get does provide a framework for dependency resolution, it does not provide dependency resolution for packages included within the Slackware distribution. However, several community package sources and Slackware based distributions take advantage of this functionality. Gslapt is a graphical interface to slapt-get.
    - Swaret is a package management tool featuring dependency resolution. It was originally included in Slackware version 9.1 as an optional package, but did not contain dependency resolution at that time. It was removed from the distribution with Slackware 10.0 and turned over to the community. It eventually added dependency resolution and roll-back functionality; however, as of May 2014, there are no active developers.
    - NetBSD's pkgsrc provides support for Slackware, among other Unix-like operating systems. pkgsrc provides dependency resolution for both binary and source packages.

    Comme rien n'est imposé et que c'est fait au plus simple, on peut même fonctionner un peu façon Arch/Gentoo/…

    Due to the possibility of dependency issues, many users choose to compile their own programs using community-provided SlackBuilds. SlackBuilds are shell scripts that will create an installable Slackware package from a provided software tarball. Since SlackBuilds are scripts, they aren't limited to just compiling a program's source; they can also be used to repackage pre-compiled binaries provided by projects or other distributions' repositories into proper Slackware packages. SlackBuilds that compile sources have several advantages over pre-built packages: since they build from the original author's source code, the user does not have to trust a third-party packager; furthermore the local compilation process allows for machine-specific optimization. In comparison to manual compilation and installation of software, SlackBuilds provide cleaner integration to the system by utilizing Slackware's package manager. Some SlackBuilds will come with an additional file with metadata that allows automated tools to download the source, verify the source is not corrupt, and calculate additional dependencies that are not part of Slackware.

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

  • [^] # Re: Autres corrections

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.

    Je pense (et espère) que c'est tout.

    Que nenni…

    On me fait remarquer que cette partie

    Avant de finir, revenons sur les largeurs par défaut :
    
      - 80 fold
      - 75 fmt
      - 72 par
      - 72 pr

    devrait être plutôt

    Avant de finir, revenons sur les largeurs par défaut :
    
      - 80 fold
      - 75/[72](http://publib16.boulder.ibm.com/doc_link/en_US/a_doc_lib/cmds/aixcmds2/fmt.htm)/[70](https://manpages.debian.org/wheezy/9base/plan9-fmt.1.en.html) fmt
      - 72 par
      - 72 pr

    Je note aussi un saut de ligne oublié par ici

    le tout en gérant l'Unicode (en UTF-8) ! La largeur est aussi indiquée avec
    "`-w ...`" (on peut utiliser juste "`w...`" ou "`...`") et est par défaut `72`

    (et j'avais en plus oublié l'espace insécable avant le point d'exclamation)
    ainsi que, bien plus haut, par ici

    J'utilise cette commande dans mes scripts pour des traitements caractère par
    caractère :

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

  • [^] # Re: Super journal… que je lirai plus tard

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 3.

    Voir un journal sur roff et qui succite de l'intérêt (on se sent moins seul) m'a ôté les réticences à se jeter à l'eau (même si je ne parle pas de roff), enfin, pas encore
    C'est aussi l'occasion de publier quelque chose de long en Markdown, et ce n'est pas concluant pour moi… Quand on n'a pas l'interface de rédaction des dépêches (et je ne peux pas rester en ligne des plombes à jouer de l'aperçu, je dois pouvoir rédiger hors-ligne et) j'ai beau faire du Markdown depuis des années sur divereses plateformes (StackOverflow, Github, Bitbucket, Medium, DevTo, etc.) j'ai toujours du mal avec les différents dialectes et leurs effets de bord. Pour ce contenu, il me manquait certains concepts et tu verras que pas mal de corrections ont été demandées après publication. Bref, je continue à trouver que c'est génial pour les commentaires, bien mieux que BBCode ; mais c'est assez limité pour faire de longues docs où les formats Wiki et RestructuredText s'en sortent mieux.


    En effet, pour les implémentations BSD :

    with lines as close to the goal length as possible without exceeding the maximum.
    The goal length defaults to 65 and the maximum to 10 more than the goal length.

    …ce qui fait un max de 75.
    Et l'implémentation GNU aussi :

    maximum line width (default of 75 columns)

    Par contre, AIX lui :

    Specifies the line length. The default value for Width is 72 characters.

    Et pour Plan9 :

    Output line length is n, including indent (default 70).

    Ouch…
    Pour en revenir au propos, il y a de tout et cette commande n'est pas POSIX… J'aurais du indiquer « 75/72/70 » au lieu de « 72 » ; ou alors « 75 » qui est la valeur des implémentations les plus couramment rencontrées ?


    Du coup, pour en revenir au mails, d'après la terminologie de fmt, 75 ou 75 est le maximum et 72 le goal …pour permettre de répondre sans reformater :-)


    Avec roff, quand on n'utilise pas de système de macros, on gère autant et parfois plus de détails de bas niveaux…

    Ce journal a en effet un côté historique (d'où la « rétrospective » du titre et le tag « nostalgie » qui est clairement exprimé à la fin, sur les imprimantes à impacts) Les périphériques d'impression actuelle ont toujours des limitations (les dimensions des feuilles ne sont pas infinies) mais fonctionnent autrement (c'est ce que j'appelle le monde des polices proportionnelles contre les chasses fixes, et c'est aussi pour ça l'allusion au raisonnement en pixels et non plus en nombre de caractères.) On est encore un peu confronté à cet aspect quand on travaille en console et avec des trucs (comme l'e-mail) dont l'histoire remonte à ces époques.
    Ce journal, à sa façon, en remettant certaines commandes en contexte, participe à la réflexion sur le langage et la diffusion des écrits

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

  • [^] # Re: Pour regarder quelles chaînes ?

    Posté par  (site web personnel, Mastodon) . En réponse au message TV : Alternative décodeur gros FAI. Évalué à 2.

    C'est intéressant/dommage. Le bon côté est que le cocktail explosif a moins de m.rd. du coup.

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

  • [^] # Re: template

    Posté par  (site web personnel, Mastodon) . En réponse au message traiter des blocs de texte pour composer de gros documents flexibles. Évalué à 2. Dernière modification le 09 février 2022 à 09:42.

    En parlant de Jinja, il est directement utilisable en ligne de commande via : j2cli (Python), shtpl (Shell), cookie (Shell), bash-tpl (Shell). Les deux premiers me semblent plus complets. Les trois derniers utilise une liste de déclarations à la INI, comme bash-templater (Shell) et envsubst (qui du coup peut être plus simple)

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

  • [^] # Re: Il y a une limite de temps

    Posté par  (site web personnel, Mastodon) . En réponse au message Répondre à une discussion ; Aide ?. Évalué à 2.

    Je reste à la cloche gaussienne

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

  • # cat

    Posté par  (site web personnel, Mastodon) . En réponse au message traiter des blocs de texte pour composer de gros documents flexibles. Évalué à 4.

    Je ne sais pas si j'ai bien compris…

    exemple:

    insert textes-suivants monAdresse.txt adresse2tartempionBleu.txt lieuDateRef.txt salutations.txt referenceEtCoordonnées.txt gueuler.txt saluerPolimentQuandmeme.txt piecesJointes.txt

    me permettrait de composer une lettre de réclamation standard, ou, vice-versa de répondre à une telle lettre, ou de proposer une nouveauté, ou des services, un rappel, une mise en demeure, etc.

    …mais tu veux concaténer des contenus de fichiers non ? Du coup ta commande "insert" s'appelle en fait con"cat"enate (aucun rapport avec quelque félin) :

    cat textes-suivants monAdresse.txt adresse2tartempionBleu.txt lieuDateRef.txt salutations.txt referenceEtCoordonnées.txt gueuler.txt saluerPolimentQuandmeme.txt piecesJointes.txt

    le résultat est envoyé sur le terminal (il faut que ton script redirige donc vers le fichier final) et les fichiers en argument ne sont pas modifiés.

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

  • # vi

    Posté par  (site web personnel, Mastodon) . En réponse au message traiter des blocs de texte pour composer de gros documents flexibles. Évalué à 4.

    je crois qu'un ancien éditeur de texte permettait cela […]

    quelqu'un saurait-il encore de quel éditeur de texte il peut s'agir (en espérant que ce ne soit pas emacs, qui est une vraiment grosse horloge demandant beaucoup d'apprentissage avant de pouvoir l'utiliser beaucoup avec dextérité!)?

    Comme tu as écrit « ancien » et exclu Emacs, je n'ai pas pu résister à l'envie trollesque d'évoquer son cousin Ex/Vi. Dans ton fichier de travail :

    • Tu te positionne sur la ligne après laquelle doit se faire l'insertion et tu tapes :read cheminRelatifOuAbsoluDuFichier
    • De n'importe où, en connaissant le numéro N de la ligne après laquelle doit se faire l'insertion, tu tapes :Nread cheminRelatifOuAbsoluDuFichier

    Attention à bien taper aussi les deux-points au début si c'est bien Vi. Et on est en mode commandes (et non insertion) dans les deux cas. Pour les usagers avancés, ce n'est pas une opération (ou commande pour faire simple) qui bénéficie de la répétition.
    À vérifier (je n'ai pas de quoi le faire là, mais je crois bien que), dans le menu de GViM ça y est.

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

  • [^] # Re: Super journal… que je lirai plus tard

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.

    Merci à toi, sans qui je n'aurais pas eu le courage de ce boulot.

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

  • [^] # Re: Mon petit grain de sel

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.

    Merci beaucoup pour l'information concernant le TeXbook : je n'étais pas au frais de la distribution. Mais bon, je préfère la version papier quand c'est possible (c'est pas très écologique mais j'ai l'excuse d'être vieux-jeu ?) et j'ai commencé la lecture de la version française (merci Tanguy)
    Pour la césure, j'ai mentionné dans une future partie à partager (n'est-ce pas yal ?) que TeX a une approche algorithmique …mais que l'approche par dictionnaire semble encore la norme (c'est en tout cas ce que j'ai cru comprendre avec OpenOffice ainsi que de certaines évolutions de Troff)

    Merci pour le grain de sel. Je me note d'appliquer ta correction dans mes dépôts ce week-end. Pour l'instant, je n'ai jamais eu de problème bien qu'ayant testé différents shell sur les scripts en question et les exécutant surtout avec Ash/Dash. Ceci dit, je suis souvent dans un contexte maîtrisé et le seul cas où ça peut mal se passer à ma connaissance est quand on a trop de valeurs (raison d'être de commandes comme xargs par exemple)

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

  • [^] # Re: Autres corrections

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.

    C'est fou le nombre d'erreurs qu'il reste après avoir publié ; faut que je trouve un workflow qui limite cela (i.e. pouvoir catch certains problèmes avant publication) ; si des gens ont des suggestions je prends.


    Dans mon introduction, il y a une parenthèse qui s'est barrée… même si la virgule permet de comprendre… Le source (sans saut de ligne) devrait ressembler à :

    l'influence des
    [télescripteurs](https://fr.wikipedia.org/wiki/T%C3%A9l%C3%A9scripteur) (en
    tant que [périphériques
    d'entrée-sortie](https://fr.wikipedia.org/wiki/P%C3%A9riph%C3%A9rique_informatique#Types_de_p%C3%A9riph%C3%A9riques))
    sur le [système Unix](https://fr.wikipedia.org/wiki/UNIX_System_V), un
    [processeur de textes commandé
    textuellement](https://linuxfr.org/users/mrspackman/journaux/l-esprit-unix-une-culture-des-mots)…

    Je note que les doubles espaces en fin de ligne ont été corrigés et remercie pour cela.


    Il y l'avant-dernier paragraphe de la partie « ajustement des paragraphes à une largeur », juste après le tableau, dont un guillemet s'est évadé (source suivant sans saut de ligne)

    Ceci dit, il ne faut se limiter qu'à une option, "`-w…`", 
    voire même juste "`-…` (puisque

    Par ailleurs, la parenthèse n'a de sens que si je n'oublie pas l'option dans le tableau… mais passons. Je note surtout le saut de ligne dans le lien… (le Markdown de LinuxFr traite tout passage à la ligne comme un saut de ligne)
    Enfin, il y a bout après le lien, ce qui fait qu'on devrait avoir (sans les sauts de lignes)

    Ceci dit, il ne faut se limiter qu'à une option, "`-w…`" (voire même 
    juste "`-…`" puisque [d'anciennes implémentation AIX ne connaissent que ce
    dernier](https://stackoverflow.com/a/17225565/1699311) mais que cette dernière
    forme n'est pas reconnue sur Plan9…)

    Des broutilles mais on se creuse moins la tête pour comprendre.

    Dans cette même partie, une ligature a échappé à ma vigilance pendant la rédaction : il faut lire « œuvre » et non « oeuvre » …même si ça semble être du chipotage hahaha.


    Au début de la partie « balle au centre et égalisation », cette fois-ci c'est un crochet ouvrant qui s'est fait la malle… Le source devrait ressembler à :

    (ce qui peut se faire avec "[`awk`](https://superuser.com/a/915899/161454)" qui est

    J'espère que je n'en ai pas d'autres comme ça qui ont échappé à la prévisualisation avant publication.


    Dans la partie « impressions en rang et/ou partielles » j'ai introduit deux commandes, que je pense sont connues de beaucoup, mais ai oublié de mettre un lien qui va bien dessus. C'est parce-que dans les cours elles sont vues longtemps avant cette partie qui est en plus survolée (malgré l'exhaustivité de mes notes on ne chipote pas autant et on essaye surtout de voir les exemples plus ou moins dans l'ordre.) Donc voici ce à quoi devrait ressembler le code source (sans les sauts de lignes rajoutés pour ne pas faire déborder l'affichage ici) :

    puis ces colonnes sont justaposées horizontalement (comme avec
    "[`paste`](https://pubs.opengroup.org/onlinepubs/9699919799/utilities/paste.html)"
    ou "[`rs`](https://manpagez.com/man/1/rs/)" par exemple.)

    Pareil vers la fin de la partie « impressions de livrets » où je mentionne la commande diff que je pense que la majorité connaît ici.

    C'est une variante intéressante de 
    "[`diff -y`](https://pubs.opengroup.org/onlinepubs/9699919799/utilities/diff.html)"…

    Je pense (et espère) que c'est tout.

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

  • [^] # Merci les modo

    Posté par  (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 5.

    Ça m'épate toujours.
    Petit hors-sujet : Vous (la modération) lisez vraiment tout ? Et trouvez le temps de dormir ?

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

  • [^] # Re: version d'origine ?

    Posté par  (site web personnel, Mastodon) . En réponse au journal Wordle is the new TapTempo. Évalué à 2.

    Tout à fait. « End of the game. »

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

  • [^] # Re: Et la solution !

    Posté par  (site web personnel, Mastodon) . En réponse au journal Wordle is the new TapTempo. Évalué à 2.

    Ah top-génial. Merci pour le retour (j'aurais du lire attentivement le code)

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

  • [^] # Re: Ce n'est pas ce que je lis

    Posté par  (site web personnel, Mastodon) . En réponse au journal Le virus bronsonisé. Évalué à 5.

    Pourquoi es-tu contre la glorieuse épopée du fichage politique …contre lequel on s'est acharné pour qu'aujourd'hui certaines personnes disent "bof, c'est pas bien grave d'être fiché"

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

  • [^] # Re: Poubelle

    Posté par  (site web personnel, Mastodon) . En réponse au journal TI-92 à donner. Évalué à 2.

    Par ailleurs, ça m'a rappelé un article humoristique (genre 1er avril) dans un magazine lu en prépa (vers 1995) qui annonçait la sortie de la successeur de la HP48 basé sur un processeur ARM et un émulateur. 20 ans après, la blague est devenue réalité :-)

    Au propre comme au figuré… Outre les équivalents (et ports) de Emu48 sur Android, il y a eu le dernier des mohican : HP50G (et deux autres avant si j'ai bonne mémoire) qui utilise(nt) un processeur ARM avec une émulation Saturn… (un peu comme avait fait la pomme en passant du Motorola au Power)

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