web-dev-qa-db-fra.com

Plusieurs façons de fournir des fonctionnalités similaires dans un éditeur de texte

Je travaille sur un éditeur de texte (application web) qui fournira des fonctionnalités puissantes et personnalisables, mais dans une apparence minimale (exigence).

L'une des fonctions est: "créer un nouvel extrait". Je veux que cette fonction soit applicable à:

  • n morceau de texte sélectionné dans le document actuel, ce qui signifie qu'un nouvel extrait sera créé contenant le texte sélectionné
  • tout le texte, ce qui signifie qu'un nouvel extrait sera créé contenant tout le texte contenu dans le document actuel
  • contenu vide, ce qui signifie qu'un nouvel extrait vide sera créé

J'ai quelques autres fonctions qui nécessitent un comportement similaire (concernant l'applicabilité au texte sélectionné, à l'ensemble du document et/ou au contenu vide), j'ai donc vraiment besoin d'une solution intelligente, minimale, cohérente pour cette.

Ma question est: quel type d'interface utilisateur dois-je fournir pour répondre aux exigences susmentionnées, de la manière la plus intuitive et sans friction possible?

Certaines des solutions que j'envisage (mais je ne suis pas totalement satisfait):

  • Lorsqu'un utilisateur sélectionne (met en surbrillance) du texte, une barre d'outils apparaît (similaire à celle de medium.com) indiquant les actions applicables au texte sélectionné (sous la forme d'icônes étiquetées). L'utilisateur clique ensuite sur l'icône intitulée "créer un extrait" et un nouvel extrait est créé contenant le texte sélectionné. Si l'utilisateur clique simplement à l'intérieur du texte sans sélectionner de texte et sans l'intention de modifier la position du curseur (c'est-à-dire qu'il clique une fois sur le curseur), la barre d'outils susmentionnée apparaît, mais lorsque l'utilisateur clique sur le "créer un extrait" étiqueté , un extrait vide sera créé. Afin de créer un nouvel extrait contenant tout le texte, un utilisateur sélectionne simplement tout le texte du document. (Cette solution, évidemment, essaie d'utiliser la barre d'outils contextuelle comme seule interface à travers laquelle l'utilisateur communiquera ses intentions, AKA: uber minimal, ce qui est un plus)

  • Comme ci-dessus, mais sans autoriser l'apparition de la barre d'outils lorsqu'un utilisateur clique simplement à l'intérieur du texte. Afin de fournir la fonctionnalité "créer un extrait de code vide", fournissez une icône intitulée "créer un extrait de code" dans une barre latérale masquable. (Cette solution fournit deux interfaces pour répondre à des besoins différents: une barre d'outils contextuelle et une barre latérale)

  • Ne fournissez pas de barre d'outils qui s'affiche lors de la sélection de texte. Au lieu de cela, ne fournissez qu'une icône intitulée "marquer l'extrait" dans la barre latérale masquable, qui, lorsque vous cliquez dessus, changera l'icône du curseur en une nouvelle, indiquant que l'utilisateur doit sélectionner la partie du texte qui doit être. Il y aura également une autre icône intitulée "créer un nouvel extrait", qui créera un nouvel extrait vide. (Cette solution utilise la barre latérale comme seule interface à travers laquelle l'utilisateur communiquera ses intentions)


Quelle serait votre suggestion?

Veuillez ne pas trop vous concentrer sur le concept "d'extrait". J'ai également besoin d'autres fonctionnalités, telles que: "partager une partie ou la totalité du texte" sur les réseaux sociaux, etc.

Remarque: J'aime beaucoup la barre d'outils contextuelle (style medium.com) car elle est minimale (c'est-à-dire qu'elle n'encombre pas la fenêtre de l'éditeur en étant visible tout l'heure) et c'est aussi rapide, car il apparaît très près de l'endroit où se trouve le pointeur de la souris de l'utilisateur. Son inconvénient est probablement le fait que les nouveaux utilisateurs pourraient le manquer (et les utilisateurs ont très peu de patience pour découvrir la fonctionnalité de quelque chose de nouveau).

1
Alexandros

Que ce soit basé sur le texte sélectionné.

  • Aucune sélection = nouvel extrait
  • tous sélectionnés = extrait avec tout
  • segment sélectionné = extrait avec segment sélectionné

Vous pouvez fournir un sélecteur en détournant la fonctionnalité de clic droit pour fournir le menu, ou simplement le fournir en survol. Vous devez toujours avoir au moins 2 moyens d'accomplir une tâche en fonction des paradigmes d'interface utilisateur auxquels votre base d'utilisateurs est habituée. S'il s'agit d'une fonctionnalité de base, il existe un précédent pour qu'elle soit disponible sur une barre de menus ou similaire.

Bien qu'une interface utilisateur minimale soit idéale, n'oubliez jamais que l'abordabilité est également souhaitée. Vous ne voulez jamais que votre conception soit si minime que les possibilités de votre application soient perdues.

1
slyimperator