12
votes

Y a-t-il une alternative simple à la lecture en ligne?

sur un projet sur lequel je travaille, j'essaie de l'accepter d'accepter les commandes de l'utilisateur et de fournir l'historique avec la flèche vers le haut. Je vis de garder ce projet exempt de dépendances, et je ne veux pas avoir à exiger que les gens installent également les fichiers de développement readline pour compiler mon projet. Est-ce que quelqu'un connaît un simple remplacement d'une liste déroulante pour GNU LireLine qui ne fournit que des fonctionnalités simples?


0 commentaires

6 Réponses :


7
votes

La plupart des systèmes ont une lecture en lecture, donc je ne vois donc pas cela comme étant trop de problème.

Deuxièmement, je ne pense pas qu'il y ait un remplacement de chute de la bibliothèque GNU Readline. Vous allez devoir rester avec ça. : (

EDIT 5/11/2016: Cette réponse est obsolète et toute modification que je ferais emprunterait presque complètement les autres, des réponses plus correctes. Résumé: Voir LINENOISE et EDITLINE pour des alternatives modernes en lecture ligne.


5 commentaires

Ouais, ça ne ressemble pas à ça. J'ai vérifié les alternatives, telles que EditionLine et Libtecla, mais elles ne satisfont pas à la condition "simple". Je vais juste avoir à le mentionner.


Je préférerais ne pas dire ça. Clisp est le premier un à convertir en GPL à cause de readline. ici est un article sur Lisline et GPL.


Je tiens à mettre à jour cette réponse - Ni Windows ou Mac OS X n'ont installé Listilline - c'est une très grande proportion d'utilisateurs!


Devrait probablement supprimer ma réponse ... Je pense que c'est un peu obsolète. 😊 Modifier: vous révèle que vous ne pouvez pas supprimer une réponse acceptée.


@Chrisjefferson hein. Tu as raison. Mac OS X inclut en réalité un code de compatibilité pour le code qui demande la lecture en lecture, cartographier les appels à la modification. Intéressant.



24
votes

EditionLine . Il possède une licence de style BSD.

edit: Les versions plus anciennes de la ligne d'édition étaient assez simples. Voici un avec seulement deux fichiers C et un en-tête , Au total environ 1500 lignes de code. Nous l'utilisons depuis des années.


0 commentaires

1
votes

EditingLine (libedit) ne prend pas encore en charge les caractères multi-octets.

Je suis également d'accord avec Dan Loewenherz, la bibliothèque Readline est large. Par exemple, la plupart des navires de distribution Linux bash avec readline. La plus grande distribution de Python expédie également avec readline. Si votre projet a besoin d'une bibliothèque en forme de lecture en forme de lecture, il est judicieux d'utiliser GNU Readline Librine puisqu'il s'agit d'un choix populaire et que les utilisateurs peuvent l'avoir installé sur le système d'exploitation déjà.


3 commentaires

A partir de 2010-04-24 EditLine peut être construite avec la prise en charge de l'UTF-8 à l'aide de ./ configure --enable-widec .


À partir de 2016-06-18, EditionLine est toujours construite avec un support Unicode (Wide-Char / UTF-8) et - Activer-widec est obsolète.


Si votre projet a besoin d'une bibliothèque de type LISTLINE, il est judicieux d'utiliser la bibliothèque GNU Readline puisqu'il s'agit d'un choix populaire et que les utilisateurs peuvent l'avoir installé sur le système d'exploitation déjà. Notez que LIDELINE elle-même, et donc le Le travail dérivé combiné résultant (c.-à-d. Le binaire) est GPL, qui peut ou non convenir à un projet particulier.



17
votes

J'ai trouvé un. Antirez of Redis La renommée est proposée avec Linenoise , une alternative beaucoup plus simple.


1 commentaires

Je suis sûr que les utilisateurs non-anglais l'adoreront lorsque votre programme aile sur le texte, ils essaient de taper leurs propres langues ....



3
votes

Busybox contient le code d'édition de ligne de commande similaire à Readline, mais beaucoup plus petit et plus simple, avec prise en charge complète pour UTF-8 . Il serait probablement facile de le faire dans une bibliothèque indépendante.


0 commentaires

3
votes

Le EditionLine bibliothèque est une autre alternative. De Readme :

La bibliothèque d'édition a été créée par Simmule Turner et Rich Salz en 1992. À l'époque, ils ont choisi de distribuer le code sous une "actualité C de type C", Voir la licence de fichier pour plus de détails.

[...]

Cette version de la bibliothèque d'édition est une fourchette des sources Minix3. Autre Connaître les versions, souvent basée sur l'original comp.Sources.unix posting sont:


0 commentaires