π
<-

[PROJET]LuaCS: l'éditeur du programmeur Lua sur calculatrice

Pour TI-Nspire OS 3.0 ou ultérieur.

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby Monstercrunch » 26 Oct 2011, 13:53

J'ai trouvé ton erreur de la ligne 69 , c'est lorsque l'on fait trop de undo, et qu'on essaye d'annuler un truc qu'on a pas fait (quand on est revenu au tout début). En gros, tu devrais ajouter un test pour ne faire des undo que si on a une action antérieure disponible (je sais pas si je me fais bien comprendre ^^').

De même, ça fait des trucs bien sympatique si on fait plein de redo :8): ! Là aussi tu dois faire un limite et empêcher de faire des redo si on a pas une action ultérieure en mémoire.

J'espère que ça peut t'aider. Sinon, une dernière chose, je sais pas si ça vient du student software mais parfois le texte grossis, par exemple quand on clique sur une ligne, la taille de la police augmente pendant un court instant. Je trouve pas ça super...
User avatar
Monstercrunch
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 81.3%
 
Posts: 11
Joined: 23 Oct 2011, 13:51
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Tle S

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby yatto » 28 Oct 2011, 11:32

Juste un petit mot pour dire que je bosse sur LuaCS, encore et encore et toujours.

J'ai réglé quelques bugs, celui ci-dessus, un autre qui arrivait quand on chargeait du texte, à propos des guillemets.

Je travaille sur la sélection, j'ai fait ce que je pense être le plus dur: l'affichage à l'écran. Il est maintenant parfait, je vais pouvoir rajouter les fonctions de sélection CTRL+X,C,V et les conditions de rajout de choses dans les fonctions modificatrices (si on rajoute un caractère, effacer la sélection et le rajouter, etc.)

Quelqu'un aurait-il une idée pour faire en sorte qu'une fonction renvoie un booléen TRUE tant qu'une touche est appuyée? J'ai essayé le booléen et le timer de Levak, mais ça ne marche pas...
Pour rappel, il avait proposé le code suivant:
Code: Select all
e = false
function on.enterKey()
  e = true
  timer.start(0.1)
end

function on.charIn(ch)
  if ch == "e" and e == true then
    -- do something
  end
end

function on.timer()
  timer.stop()
  e = false
end
User avatar
yattoPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 11.7%
 
Posts: 104
Images: 1
Joined: 05 Oct 2011, 12:46
Location: IDF
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes - Mécatronique (1A)

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby Adriweb » 28 Oct 2011, 11:56

Logiquement, tu peux gérer les combinaisons Ctrl-X, Ctrl-C, Ctrl-V avec les events on.cut(), on.copy(), on.paste(), non ?


(pas pour copier le texte, la il faudrait que tu gère ca manuellement, mais au moins tu sais que l'utiliateur a fait l'action de copier/couper/coller)

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 80.1%
 
Posts: 14847
Images: 1134
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby yatto » 28 Oct 2011, 12:04

Oui, ça il n'y a pas de problème, en fait, c'est surtout pour la sélection. Pour l'instant, en appuyant sur Tab, on passe en mode sélection, et on arrête le mode sélection en ré-appuyant sur Tab. J'aurais préféré qu'en gardant TAB enfoncé et en se baladant, on pourrait sélectionner. mais je devrais revoir un peu mon code source, avec ça.

Une idée?
User avatar
yattoPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 11.7%
 
Posts: 104
Images: 1
Joined: 05 Oct 2011, 12:46
Location: IDF
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes - Mécatronique (1A)

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby Adriweb » 28 Oct 2011, 12:11

La, je ne vois pas de moyen pour gérer le multi-touche nativement.

Ca a été demandé par contre....

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 80.1%
 
Posts: 14847
Images: 1134
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby yatto » 28 Oct 2011, 13:58

on.cut, on.copy, on.paste, LES TROIS NE MARCHENT PAS. une idée du pourquoi du comment?

En fait, quand je fais CTRL+C, l'évènement on.copy n'est pas appelé. Pareil pour les autres.

Je vais devoir gérer ça uniquement par le menu, si ça continue. Sinon, dites moi pourquoi ça ne marche pas. Il faut que je MAJ l'OS en 3.1? (j'ai la version 3.0.2)

C'est bien dommage, pouvoir faire CTRL+C/X/V c'est la base, quoi.
User avatar
yattoPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 11.7%
 
Posts: 104
Images: 1
Joined: 05 Oct 2011, 12:46
Location: IDF
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes - Mécatronique (1A)

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby Levak » 28 Oct 2011, 15:21

Rajoute au début du script :
Code: Select all
toolpalette.enablePaste(true)
toolpalette.enableCut(true)
toolpalette.enableCopy(true)
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
User avatar
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 98.9%
 
Posts: 6414
Images: 22
Joined: 27 Nov 2008, 00:00
Location: 0x1AACC355
Gender: Male
Calculator(s):
MyCalcs profile
Class: BAC+5: Epita (ING3)

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby yatto » 28 Oct 2011, 16:53

Ah oui, bien sur! J'avais oublié qu'il fallait ce truc là. Merci =)
User avatar
yattoPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 11.7%
 
Posts: 104
Images: 1
Joined: 05 Oct 2011, 12:46
Location: IDF
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes - Mécatronique (1A)

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby yatto » 28 Oct 2011, 21:35

[EDIT: ERROR FIXED. Une variable était modifiée un peu plus haut dans le code, ce qui faussait tout.]

J'ai un problème? (Etonnant, non?)

Ce code devrait supprimer la partie sélectionnée.
selx, sely: la position du curseur quand on a commencé la sélection
x,y: la position actuelle du curseur
buffer[x]: la ligne x du texte.
Code: Select all
if sely<y then
        buffer[sely]=buffer[sely]:sub(0,selx) --on supprime dans buffer[sely] ce qu'il y a à droite de selx.
        k=sely+1
        while k<y do -- tant que la ligne juste après sely est plus petite que y
        table.remove(buffer,k) -- on supprime la ligne juste après sely
        y=y-1 -- on s'autorise a modifier directement y ici parce que comme ça on modifie directement la position du curseur, pour éviter d'arriver dans le vide.  le curseur remonte d'une ligne.
        end
        buffer[y]=buffer[y]:sub(x+test(x~=0)) -- de la dernière ligne avec le curseur, on ne garde que ce qui est à droite du curseur (test(x~=0)=1 si vrai, =0 si faux)
end


A la place de supprimer tout ce qui est sélectionné, la seule chose qui est supprimée, c'est le caractère en position selx, sely. Pourquoi?
En sachant que, quand on fait la sélection en commençant en bas et en remontant, le code exécuté:
Code: Select all
if sely>y then
        buffer[y]=buffer[y]:sub(0,x)
        k=y+1
        while k<sely do
        sely=sely-1 
        table.remove(buffer, k)
        end
        buffer[l]=buffer[l]:sub(selx+test(selx~=0)) -- le +test est juste une sécurité contre une erreur si on fait une sélection vide (meme si personne ne ferait de selection vide, hein!)
    end

ca marche, ça, ça marche très bien...

j'ai même fait encore autre chose: j'ai remplacé le code 1 par le code 2, en inversant juste avant les valeurs selx/y et x/y avec: selx, sely, x, y = x, y, selx, sely... Toujours le même résultat.
Où est l'erreur?

[EDIT: ERROR FIXED.]
Last edited by yatto on 29 Oct 2011, 13:37, edited 1 time in total.
User avatar
yattoPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 11.7%
 
Posts: 104
Images: 1
Joined: 05 Oct 2011, 12:46
Location: IDF
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes - Mécatronique (1A)

Re: [PROJET]LuaCS: l'éditeur du programmeur Lua sur calculat

Postby yatto » 29 Oct 2011, 13:37

MISE A JOUR: j'ai mis à jour l'archive téléchargeable de LuaCS. Rendez-vous page 1 pour télécharger la nouvelle version (lien mis à jour) !

Je suis heureux et fier de vous annoncer que LuaCS est passé en version 0.9 BETA UNLIMITED!
Mais qu'est-ce que c'est que ça?
Eh bien, j'ai fini d'implémenter tout ce qui était nécessaire pour la version 1. Mais la moitié marche (il fallait s'y attendre... )
Maintenant, la chasse au bugs est ouverte (ou bleue)! Quand vous trouverez un bug, rapportez le ici pour qu'il soit fixed.

N'oubliez pas de lire le fichier "bois moi!" pour des informations sur les commandes de LuaCS !

Merci à vous tous!
User avatar
yattoPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 11.7%
 
Posts: 104
Images: 1
Joined: 05 Oct 2011, 12:46
Location: IDF
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes - Mécatronique (1A)

PreviousNext

Return to Nspire-Lua

Who is online

Users browsing this forum: ClaudeBot [spider] and 2 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1632 utilisateurs:
>1613 invités
>11 membres
>8 robots
Record simultané (sur 6 mois):
29271 utilisateurs (le 11/07/2025)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)