Rechercher
Résultats par :
Recherche avancée
Qui est en ligne ?
Il y a en tout 3 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 3 Invités

Aucun

Voir toute la liste


Partagez
Voir le sujet précédentAller en basVoir le sujet suivant
Senior Member
Messages : 497
Date d'inscription : 2008-09-21
Voir le profil de l'utilisateur

Obtenir le code d'un caractère ?

le Sun 10 Apr - 20:58
Bonsoir,

Existe-t-il un verbe renvoyant le code ascii d’un caractère donné (et vice-versa) ?

Autre chose, la possibilité d’interagir avec le presse-papiers est-t-elle prévue pour une prochaine version ?

Merci.
Posting Freak
Messages : 1188
Date d'inscription : 2004-12-09
Voir le profil de l'utilisateurhttp://langagelinotte.free.fr/

Obtenir le code d'un caractère ?

le Mon 11 Apr - 12:15
Bonjour Pat,

Dans la version 1.3, il y aura les méthodes : ascii et chr :
Code:
Livre :
?
Paragraphe :
?
Rôles :

k est un nombre
Actions :

pour k de 0 à 255, lis
ferme
affiche ascii("È")
affiche chr(200)
Et pour le copier/coller, on pourra faire :
Code:
Presse Papier :


Démonstration :

Rôles :

presse :
:
pressepapier
information :
:
texte <
- "Texte copié depuis le langage Linotte !"
entrée :
:
texte
Actions :

affiche "Vous avez dans votre presse-papier le texte suivant :
" + presse.
coller()
affiche "Je vais maintenant modifier le presse-papier !"
évoque presse.
copier(information)
affiche "Vérifier votre presse-papier maintenant !"
demande entrée
affiche "Maintenant, je vais stocker la toile dans le presse-papier"
évoque presse.
copiertoile()
affiche "Vérifier votre presse-papier maintenant avec un logiciel manipulant les images (Gimp par exemple)!"
voili !
Senior Member
Messages : 497
Date d'inscription : 2008-09-21
Voir le profil de l'utilisateur

Obtenir le code d'un caractère ?

le Mon 11 Apr - 20:05
Merci bien,
Une question bête toutefois, pour le copier-coller dans le presse-papiers pourquoi devoir utiliser « évoquer presse.copier(info) » et pas simplement « presse.copier (info) » ?
Sinon, pourquoi ne pas permettre un syntaxe « plus linottienne » soit « copier information dans presse" par analogie avec « ajouter xxx dans yyy » ?

Ps : sur le forum quant un code est affiché entre les balises code, comment faire pour le copier ?
Posting Freak
Messages : 1188
Date d'inscription : 2004-12-09
Voir le profil de l'utilisateurhttp://langagelinotte.free.fr/

Obtenir le code d'un caractère ?

le Tue 12 Apr - 10:46
Cette syntaxe vient du fait que l'espèce PressePapier est un greffon auquel j'ai ajouté des méthodes fonctionnelles.

« presse.copier (info) » renvoie un acteur car c'est une fonction.

En linotte, on ne peut pas écrire une ligne avec seulement un acteur. Il faut l'associer à un verbe :

On pourrait écrire « Affiche presse.copier (info) » ou « retour vaut presse.copier (info) »
Mais dans notre cas, la valeur de retour n'est jamais utilisée d'où l'arrivér de ce nouveau verbe Evoquer :
« évoque presse.copier (info) »
Il mange le retour de la méthode copier() !
Senior Member
Messages : 497
Date d'inscription : 2008-09-21
Voir le profil de l'utilisateur

Obtenir le code d'un caractère ?

le Tue 12 Apr - 12:24
Explication limpide, merci.
Posting Freak
Messages : 1188
Date d'inscription : 2004-12-09
Voir le profil de l'utilisateurhttp://langagelinotte.free.fr/

Obtenir le code d'un caractère ?

le Wed 13 Apr - 11:11
J'ai ajouté un nouvel exemple, Asciinotte qui permet d'affiche la table des caractères ASCII.

Asciinotte affiche un formulaire avec un sélecteur de polices.
On peut copier un caractère avec la bonne police pour le coller dans Word par exemple !

Le code source et une copie d'écran :

Code:
Asciinotte :

Espèces :

lettre :
:
texte
l'espèce box hérite de rectangle et contient lettre
Grands rôles :

info :
:
graffiti, x vaut 233, y vaut 540, couleur vaut "bleu turquin"
infoc :
:
graffiti, x vaut 170, y vaut 562, couleur vaut "rouge", texte vaut ""
couleur off :
:
texte <
- "noir"
couleur on :
:
texte <
- "menthe à l'eau"
toile :
:
toile
police :
:
texte
lettres :
:
casier de graffiti vide
form est un formulaire, titre vaut "Le sélecteur de polices", largeur vaut 200, hauteur vaut 100
s1 est un sélecteur, valeurs vaut "", x vaut 20, y vaut 50
l1 est une étiquette, texte vaut "Choisissez la police:
", x vaut 20, y vaut 20
presse est un pressepapier
aide est un parchemin, texte vaut "Asciinotte 1.
0

Survolez un caractère pour dévoiler sa valeur ASCII :

- Un clic gauche sur le caractère copie la lettre dans le presse-papier.

- Un clic droit sur le caractère copie la valeur ASCII dans le presse-papier.


- Utilisez le sélecteur pour changer de police d'affichage.
", x vaut 50, y vaut 350, largeur vaut 500, taille vaut 2, couleur vaut "capucine"

Principal :

Rôles :

k & i :
:
nombre
§ tmp :
:
texte vide
Actions :

efface la toile
pour k de 0 à 10, lis
pour i de 0 à 24, lis
si (i + k*25) <
= 255 alors lis
§g :
:
graffiti
§r :
:
box
fais réagir r à "souris entrante" pour afficher ascii
fais réagir r à "souris sortante" pour assombrir
fais réagir r à "clic souris" pour copier la lettre
fais réagir r à "clic droit souris" pour copier ascii
y@g vaut 20 + (k * 30)
x@g vaut 25 + (i * 22)
taille@g vaut 12
texte@g vaut chr (i + k*25)
position@g vaut 2
couleur@g vaut "argile"
ajoute g dans lettres
y@r vaut 5 + k * 30
x@r vaut 25 + i * 22
hauteur@r vaut 21
largeur@r vaut 21
couleur@r vaut couleur off
plein@r vaut "oui"
position@r vaut 1
lettre@r vaut chr (i + k*25)
projette r & g
ferme
ferme
ferme
projette info & infoc & aide & toile
ajoute s1& l1 dans form
fais réagir s1 à "clic souris" pour changer la police
fais réagir form à "clic souris" pour fermer la fenêtre
couleur@toile vaut "noir"

("Construction de la liste des polices :
")
pour chaque polices, lis
tmp vaut tmp + joker + "|"
ferme
valeurs@s1 vaut tmp

("Boucle infinie")
tant que vrai, lis
temporise
ferme

Afficher ascii :

Rôles :

* b est une box
Actions :

texte@info vaut lettre@b + ", valeur ascii :
" + ascii (lettre@b)
couleur@b vaut couleur on
reviens

Assombrir :

Rôles :

* b est une box
Actions :

attends .
2 seconde
couleur@b vaut couleur off
reviens

Changer la police :

Rôles :

*s est une sélecteur
Actions :

police vaut valeur@s
pour chaque lettres, lis
police@joker vaut police
ferme
Reviens

Fermer la fenêtre :

Rôles :

*f est une formulaire
Actions :

Termine

Copier la lettre :

Rôles :

*f est une box
§texte est un texte
Actions :

évoque presse.
copierhtml("<
font face='" + police + "'>
" + lettre@f + "<
/font>
")
texte vaut "Le caractère '" + lettre@f + "' est copié dans le presse-papier !"
texte@infoc vaut texte
attends 5 secondes
si (texte@infoc) == texte alors vide texte@infoc
reviens

Copier ascii :

Rôles :

*f est une box
§texte est un texte
Actions :

évoque presse.
copier(ascii(lettre@f))
texte vaut "Le numéro ASCII '" + ascii(lettre@f) + "' est copié dans le presse-papier !"
texte@infoc vaut texte
attends 5 secondes
si (texte@infoc) == texte alors vide texte@infoc
reviens
Contenu sponsorisé

Re: Obtenir le code d'un caractère ?

Voir le sujet précédentRevenir en hautVoir le sujet suivant
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum