Journal tlimit: un addon de navigateur pour limiter le nombre de tabs ouverts

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
19
30
mai
2018

Journal,

Je te présente tlimit, mon premier addon utilisant les WebExtensions.

Ce dernier permet de limiter le nombre de tabs ouverts (i.e. empècher l'ouverture de plus de n tabs, le défaut étant à 10)

On peut régler le nombre de tabs maximum via une popup:

max tabs

Pour moi, ce genre d'addon est vraiment nécessaire, et firefox quantum a rendu obsolète l'addon que j'utilisais pour faire cela auparavant.

Je ne suis pas du tout un spécialiste javascript ni d'écriture d'addons donc tout retour est le bienvenu, le source est disponible sur github.

  • # Et du coup

    Posté par  (site web personnel) . Évalué à 9.

    Il se passe quoi au bout de 10?

    • [^] # Re: Et du coup

      Posté par  . Évalué à 10.

      On pourrait faire un truc pédagogique, OOM-Killer-style : si tu ouvres un onglet de trop, il ferme celui qui a le plus d'activité/formulaires non-envoyés, etc. Tu te fais avoir une fois, après tu n'a même plus besoin de l'extension pour garder tes onglets au minimum :)

    • [^] # Re: Et du coup

      Posté par  (site web personnel) . Évalué à 7.

      De ce que je comprends du code, tu ne peux pas créer de nouveaux onglets au delà de la limite spécifiée.
      Les sodomiseurs de drosophiles te diront que pour être précis, tout nouvel onglet crée sera immédiatement détruit.

    • [^] # Re: Et du coup

      Posté par  (site web personnel) . Évalué à 4.

      En gros l'extension t'empèche de créer plus de 10 tabs.
      Donc si tu essaie de créer un 11ème tab, ce dernier va se faire fermer dés la création.

  • # Utile sur un vieil ordi

    Posté par  (site web personnel) . Évalué à 4.

    Cette extension me sera bien utile pour limiter le nombre d'onglets sur mon vieil ordi. Comme je passe régulièrement d'un ordinateur récent à un vieil ordi, j'oublie souvent que ce dernier ne supporte pas vraiment plus de 5-6 onglets à la fois…

    Merci

  • # Pffff !

    Posté par  . Évalué à 6.

    Cet addon ne sert à rien ! J'arrive parfaitement à limiter ma consommation de tabs voyons !

    D'ailleurs l'addon TabSearch me permet de voir que j'ai à peine 425 tabs d'ouverts. Ah oui, quand même …

    Comme la drogue c'est mal, je vais peut être tester ton addon :-)

    Grand merci à toi donc.

    Du coup, petite question: est-ce que la limite de tabs peut être gérée par fenêtre, ou est-ce une limite totale ?

    • [^] # Re: Pffff !

      Posté par  (site web personnel) . Évalué à 1.

      Pour l'instant c'est une limite par fenètre (mais la limite est la même pour toutes les fenètres), mais rien n'est écrit dans le marbre pour les futures versions.

  • # Pour moi, ce genre d'addon est vraiment nécessaire

    Posté par  . Évalué à 1.

    Je ne vois pas pourquoi c'est nécessaire en fait. Aujourd'hui, on passe de plus en plus de temps dans un navigateur, parce que le navigateur remplace de plus en plus les exécutables. Par exemple, les webmails remplacent les clients lourds, de nombreux jeux se lancent dans le navigateur, etc., vous connaissez tous la situation.

    Que penseriez-vous d'un système qui limite le nombre d'exécutables sur une machine? Ça semblerait profondément stupide; on pourrait éventuellelment souhaiter une gestion plus fine de la mémoire, mais limiter les exécutables, voire les threads, semble complètement anachronique. Limiter le nombre de tabs me semble à peu près également stupide. On peut vouloir limiter la place mémoire prise par le navigateur, voire gérer plus finement les tabs non-utilisés depuis un certain temps (par exemple, afficher l'onglet mais fermer la page, il ne reste qu'un onglet dont la page sera en réalité rechargée si on l'appelle).

    • [^] # Re: Pour moi, ce genre d'addon est vraiment nécessaire

      Posté par  (site web personnel) . Évalué à 7.

      Pour moi cela n'a rien à voir avec une limitation analogue a celle des ressources systèmes.
      Il s'agit d'un problème d'interface utilisateur.
      En ce qui me concerne, au delà de 6 tabs, je suis perdu, et je me rend compte à l'usage que je ne réutilise pas la plupart de ces tabs suplémentaires.
      Les tabs sont super pratiques, mais je suis convaincu que le fait d'avoir un nombre virtuellement infini de tabs est un problème.
      À défaut de connaître un système meilleur, je propose donc cet addon.

      • [^] # Re: Pour moi, ce genre d'addon est vraiment nécessaire

        Posté par  . Évalué à 2.

        En fait, ton problème, c'est que si tu savais les gérer, tu serais content d'avoir plus de 10 onglets, mais que tu ne sais pas les gérer.

        As-tu regardé du côté des extension permettant d'avoir les onglets dans une barre verticale sur le côté plutôt qu'horizontalement en haut de l'écran ?

        Je m'explique : la plupart des écrans sont plus larges que hauts, et c'est encore plus vrai pour les écrans 16/10 modernes. Peu de sites utilisent toute cette largeur : il n'y a qu'à voir DLFP qui laisse deux bandes vides latérales dans la CSS par défaut.

        Il y a donc de la place pour un élément consommant de la largeur. Il se trouve qu'un onglet nécessite qu'on puisse au moins partiellement en lire le titre. Or, c'est rendu difficile dès qu'ils sont nombreux car la position par défaut de la barre d'onglets fait qu'au-delà d'un certain nombre d'onglets, la barre d'onglets est obligée de les réduire en largeur puis d'ajouter un ascenseur horizontal (et les ascenseurs horizontaux, c'est le diable).

        D'où la solution de mettre les onglets dans une barre verticale de largeur fixe ! Plus de problème de réduction de largeur, et les onglets sont tous visibles tout le temps (enfin, sauf si tu dépasses la hauteur de ton écran, mais scroller verticalement reste plus simple).

        Ça, ce sont les sources. Le mouton que tu veux est dedans.

        • [^] # Re: Pour moi, ce genre d'addon est vraiment nécessaire

          Posté par  . Évalué à 9.

          En fait, ton problème, c'est que si tu savais les gérer, tu serais content d'avoir plus de 10 onglets, mais que tu ne sais pas les gérer.

          En fait, ton problème, c'est que si tu savais gérer les marque-pages, tu serais content de ne pas avoir besoin de plus de 10 onglets, mais tu ne sais pas les gérer.

          • [^] # Re: Pour moi, ce genre d'addon est vraiment nécessaire

            Posté par  . Évalué à 2.

            J'ai bien vu le /s, mais je morts quand même dedans !

            Ça n'a rien à voir. Il parlait d'ajouter une possibilité (avoir plus d'onglets), alors que tu parles d'en enlever une (avoir moins d'onglets). De la même façon, je préfère avoir max 5 programmes ouvert par bureau virtuel (idéalement 1-3), mais quand je n'ai pas le choix (au boulot sous win7) je suis bien content que cette limite ne soit pas hard codée.

            bépo powered

    • [^] # Re: Pour moi, ce genre d'addon est vraiment nécessaire

      Posté par  . Évalué à 7.

      Que penses tu des UNIX et UNIX like qui proposent justement de pouvoir limiter le nombre de processus mais pas que ?

      [root@K2 ~]# cat /etc/security/limits.conf
      # /etc/security/limits.conf                                                                          
      #                                                                                                    
      #This file sets the resource limits for the users logged in via PAM.                                 
      #It does not affect resource limits of the system services.                                          
      #
      #Also note that configuration files in /etc/security/limits.d directory,
      #which are read in alphabetical order, override the settings in this
      #file in case the domain is the same or more specific.
      #That means for example that setting a limit for wildcard domain here
      #can be overriden with a wildcard setting in a config file in the
      #subdirectory, but a user specific setting here can be overriden only
      #with a user specific setting in the subdirectory.
      #
      #Each line describes a limit for a user in the form:
      #
      #<domain>        <type>  <item>  <value>
      #
      #Where:
      #<domain> can be:
      #        - a user name
      #        - a group name, with @group syntax
      #        - the wildcard *, for default entry
      #        - the wildcard %, can be also used with %group syntax,
      #                 for maxlogin limit
      #
      #<type> can have the two values:
      #        - "soft" for enforcing the soft limits
      #        - "hard" for enforcing hard limits
      #
      #<item> can be one of the following:
      #        - core - limits the core file size (KB)
      #        - data - max data size (KB)
      #        - fsize - maximum filesize (KB)
      #        - memlock - max locked-in-memory address space (KB)
      #        - nofile - max number of open file descriptors
      #        - rss - max resident set size (KB)
      #        - stack - max stack size (KB)
      #        - cpu - max CPU time (MIN)
      #        - nproc - max number of processes
      #        - as - address space limit (KB)
      #        - maxlogins - max number of logins for this user
      #        - maxsyslogins - max number of logins on the system
      #        - priority - the priority to run user process with
      #        - locks - max number of file locks the user can hold
      #        - sigpending - max number of pending signals
      #        - msgqueue - max memory used by POSIX message queues (bytes)
      #        - nice - max nice priority allowed to raise to values: [-20, 19]
      #        - rtprio - max realtime priority
      #
      #<domain>      <type>  <item>         <value>
      #
      
      #*               soft    core            0
      #*               hard    rss             10000
      #@student        hard    nproc           20
      #@faculty        soft    nproc           20
      #@faculty        hard    nproc           50
      #ftp             hard    nproc           0
      #@student        -       maxlogins       4
      
      # End of file
      [root@K2 ~]#
      
    • [^] # Re: Pour moi, ce genre d'addon est vraiment nécessaire

      Posté par  (site web personnel) . Évalué à 2.

      parce que le navigateur remplace de plus en plus les exécutables

      Chez toi peut être, à titre personnel, j'utilise aucune application Web et au boulot où cela est le cas, j'utilise des conteneurs Chromium (ce dernier ne me sert qu'à ça).

  • # C'est une bonne idée

    Posté par  . Évalué à 2.

    C'est une bonne idée, il fallait y penser, même si personnellement j'en ai pas l'usage.

    Je t'ai laissé un petit com. sur la page de ton extension ;-)

  • # Tab Suspender

    Posté par  . Évalué à 5.

    Une autre approche est celle de Tab Suspender qui fige la consommation des ressources de tous les N+1-ième onglets, dès que l'un de ceux-ci est ouvert depuis plus de X minutes. N et X sont bien entendu configurables. Dès que l'on bascule sur un onglet figé, il est rechargé et le cycle de gélification concernera le reste des onglets ouverts.

    • [^] # Re: Tab Suspender

      Posté par  . Évalué à 4.

      Ça m'intéresserai beaucoup. Mais il ne semble plus disponible.

      • [^] # Re: Tab Suspender

        Posté par  . Évalué à 3.

        Je n'avais aucune idée de la dépréciation de l'extension, d'habitude Firefox affiche des avertissements quand une extension est obsolète mais pour celle-ci, il n y a rien d'affiché quand j'ouvre la page des préférences. Alors, merci du signalement !

        En creusant un peu, on constate que le développeur a effectivement abandonné le projet, à l'heure actuelle le dernier commit date du 4 novembre 2017 et il y a un avertissement clair à la page liée.

        Le nouveau projet est Auto Tab Discard, par le même contributeur, voir ici et .

        • [^] # Re: Tab Suspender

          Posté par  . Évalué à 2.

          C'est Noël ! J'ai rêvé d'une extension de ce style. Je ne sais pas si c'est depuis l'arrivée de Quantum mais en une journée de travail Firefox consomme la quasi totalité de ma RAM (8G) et me pousse dans la swap. Même avec un profil tout neuf et sans extensions.
          Donc j'espère que Auto Tab Discard pourra m'aider…

  • # Et pas de Tab du tout ?

    Posté par  . Évalué à 4.

    Hello Yazgoo,
    Comme je vois que tu touches en WebExtensions, une petite suggestion au cas où tu t'ennuierais : créer une extension qui supprime l'espace pris par l'onglet quand un seul onglet est ouvert. Ça ferait gagner 32 pixels sur l'écran.
    Ça a existé mais l'ancienne extension ne fonctionne plus depuis la version de Firefox qui a fait sauter quasiment toutes les extensions d'habillage (la 57 je crois).
    Un petit historique dans la série "c'était mieux avant" :
    Autrefois, quand on ouvrait Firefox, une fenêtre sans onglet apparaissait. À partir d'un second espace d'affichage on avait le choix, nouvel onglet ou nouvelle fenêtre. Puis Firefox a décidé que les onglets, c'était mieux, et a imposé l'affichage d'un onglet inutile même avec un seul espace d'affichage.
    Quelqu'un a donc crée une extension pour rétablir l'ancien comportement. En passant ça arrive souvent, et quelle perte inutile d'énergie, que des extensions soit créés pour rétablir des fonctionnalités populaires que l'éditeur supprime parce qu'il sait mieux que nous ce qui est bon pour nous…
    Mais bon depuis la fameuse mise à jour de l'an dernier, cela ne marche plus…
    Voilà c'était la petite diatribe du matin…

    • [^] # Re: Et pas de Tab du tout ?

      Posté par  . Évalué à 0. Dernière modification le 31 mai 2018 à 12:01.

      on avait le choix, nouvel onglet ou nouvelle fenêtre

      pour ouvrir dans une nouvelle fenêtre : Shift + Click
      pour ouvrir dans un nouvel onglet : Ctrl + Click
      pour ouvrir dans le même onglet : Click

      sur la page des préférences : about:preferences
      dans la partie : Onglets
      décocher : Ouvrir les liens dans des onglets au lieu de nouvelles fenêtres

    • [^] # Re: Et pas de Tab du tout ?

      Posté par  . Évalué à 3.

      Je suppose que tu parle de classic theme restorer.

      Son auteur a fait ça pour firefox 57+:
      https://github.com/Aris-t2/CustomCSSforFx

      Ça ne fait pas tout ce que permettait CTR, mais déjà pas mal de personnalisations intéressantes.

  • # Autre approche, l'organisation en hiérarchie

    Posté par  . Évalué à 7.

    Avec Tree style tab.
    Il devient tout à fait gérable d'avoir des dizaines d'onglets ouverts.
    Comme ils sont groupés par sujet, partant souvent d'une recherche ou d'un site de moulage, dès qu'on a fait le tour du sujet, on ferme tout le groupe.
    C'est super visuel.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.