Coder Social home page Coder Social logo

completion about 42sh HOT 7 CLOSED

wescande avatar wescande commented on July 17, 2024
completion

from 42sh.

Comments (7)

jzck avatar jzck commented on July 17, 2024

#20 je viens de dire pareil :o

from 42sh.

m600x avatar m600x commented on July 17, 2024

Pour ls, c'est un comportement déviant connu (c_parser.c L52-53 exclu les match parfait pour autre chose), je cherche un fix pour ça.
(to-do)

Pour emacs, c'est volontaire: l'utilisateur n'a pas validé de choix et ce n'est donc pas prérempli.
(Won't fix)

from 42sh.

wescande avatar wescande commented on July 17, 2024

pour emacs, c'est le fonctionnement meme de l'autocompletion, je me permet d'insister car le sujet de correction du minishell (donc la completion censé etre la plus basique) demande déja d'avoir ce fonctionnement.

from 42sh.

m600x avatar m600x commented on July 17, 2024

Il complete s'il n'y a qu'une seule possibilité (autocompletion) mais affiche la liste sélectionnable si plusieurs choix sont possible (autocompletion avancé). Cependant, si la liste existe et reste ouverte, la commande n'est pas altérer.

Par contre ce qui est validé ce sont les entrées utilisateur e tab m puis a et la liste se met a jour dynamiquement.
Sans confirmation active de l'utilisateur, la commande ne se modifie pas.

Donc oui, le module fait son travail: autocompletion avec le debut du nom si un unique candidat est possible. Sinon une liste est affiché. Et c'est une version avancé dans le sens ou c'est selectionnable et mis a jour en temps réel.

from 42sh.

m600x avatar m600x commented on July 17, 2024

Le bug ls a été fix par 37f28c8.

Je laisse ouvert pour parler du comportement d'emacs :)

from 42sh.

m600x avatar m600x commented on July 17, 2024

Complément d'informations:

Le barême est le suivant:

Minishell (dec 2016):

Nous allons évaluer dans cette section la complétion.
Effectuez les 2 tests suivants. Si l'un au moins de ces tests échoue, alors toute la section est échouée, passez à la suivante :
- Tapez le début de commande "$> ec", puis appuyez sur tabulation. Le minishell doit compléter la commande en
"$> echo".
- Tapez le début de commande "$> ema", puis appuyez sur tabulation. Le minishell doit compléter la commande en
"$> emacs". 

21sh (avr 2016):

La complétion marche-t-elle ?

42sh:

La complétion marche-t-elle ?

Donc oui, wescande, tu as parfaitement raison: c'est le comportement demander sur minishell pour ces deux cas précis. Mais il n'indique pas non plus le fait de devoir afficher une liste de possibilités, quoi faire quand il y a plusieurs éléments, pouvoir bouger, selectionner, mettre a jour, etc, etc, etc. D'autant que sur les corrections qui nous intéresse (21/42), aucun comportement précis n'est demander mais seulement qu'il fonctionne (choix raisonnable et justifié).

Le fait est que ce n'est pas la difficulté en soit qui est insurmontable ni meme le temps que ça prendrait mais plus le comportement moins clair (mais pas pour autant mauvais) que je trouve a préremplir partiellement le choix. C'est bien le choix "technique" qui me gêne et pas autre chose.

Bien entendu je reste ouvert à la discussion et si la majorité estime le préremplissage comme meilleur je le ferais sans soucis. :)

from 42sh.

jzck avatar jzck commented on July 17, 2024

on peut fermer ?

from 42sh.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.