π
<-
Chat plein-écran
[^]

Syntax Highlight - Nspire Basic etc. ?

Tout ce qui concerne le site en lui-même

Syntax Highlight - Nspire Basic etc. ?

Unread postby Adriweb » 29 Jun 2014, 19:04

Vous l'aurez peut-être remarqué, TI-Planet a vu son syntax-highlighter changé vers un autre plugin, beaucoup plus "sérieux" (quelques Ko plus gros, cependant, mais bon, pas grave, ça reste faible).

Le plugin utilisé est: http://highlightjs.org/
Sa doc est ici : http://highlightjs.readthedocs.org/en/l ... guide.html

Il serait je pense intéressant d'avoir un mode pour le Basic Nspire (et pourquoi pas z80).

Qui propose quelques trucs ? :)


Edit : Etat des choses avec des codes qui veulent pas dire grand chose (sauf en python):
Nspire BasicLuaPython
Code: Select all
Define balance2(x)=
Func

Local bin,reste,i
reste:={}
bin:=""

While x≥3
  reste:=augment(reste,{mod(x,3)})
  x:=int(((x)/(3)))
EndWhile

reste:=augment(reste,{mod(x,3)})

For i,0,dim(reste)-1
  bin:=string(reste[i+1])&"*"&string(3^(i))&"+"&bin
EndFor

Return mid(bin,1,dim(bin)-1)
EndFunc
Code: Select all
function somme(l)
    local s = 0
    for _,val in ipairs(l) do
        s = s + val
    end
    return s
end

function on.paint(gc)
    --turlututu chapeau pointu  ------------- ceci est un commentaire
    toto = nil
    n = 5 or true
    local i = 0
    var.monitor("bouh")
    while i <= false do
        poids[#poids+1] = 3^i
        i = i + image.new("bla")
    end

    local ed = D2Editor.newRichText()
end

balance2(42)
Code: Select all
def balance2(x):
    poids = [3**i for i in range(n+1)]
    rep = [0]*(n+1)
    dif = x
    signe = 1
    while dif != 0:
        i = 0
        s = 1
        while s < abs(dif): # on détermine le plus grand poids
            i += 1          # utile pour équilibrer
            s += poids[i]
        n = i               # n est l'indice du plus grand poids utile
        i = 0
        while i <= n and poids[i] < abs(dif):
            i += 1
        bascule = True
        if i == n+1:  # le plus grand poids utile ne suffit pas à lui seul
            i = n     # à faire basculer, mais on le laisse
            bascule = False
        rep[i] = signe
        dif -= poids[i]*signe
        if bascule:
            signe = -signe
    return(rep)
Image

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...)
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.3%
 
Posts: 14653
Images: 1118
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby davidElmaleh » 29 Jun 2014, 20:15

voila une liste des fonctions souvent utilisée en Nspire-BASIC:
Show/Hide spoilerAfficher/Masquer le spoiler







  • part
  • abs
  • and
  • approx
  • arccos
  • arcsin
  • arctan
  • augment
  • char
  • cos
  • count
  • countif
  • cSolve
  • cycle
  • derivative
  • Define
  • LibPriv
  • LibPub
  • deSolve
  • det
  • dim
  • disp
  • exp
  • else
  • elseif
  • endfor
  • endfunc
  • endif
  • endloop
  • endprgm
  • endtry
  • endwhile
  • exact
  • exit
  • expand
  • expr
  • factor
  • false
  • floor
  • for
  • fpart
  • func
  • gcd
  • getdenom
  • getnum
  • gettype
  • goto
  • if
  • instring
  • int
  • integral
  • invnorm
  • ipart
  • isprime
  • lbl
  • lcm
  • left
  • lim
  • limit
  • ln
  • local
  • log
  • loop
  • max
  • mean
  • median
  • mid
  • min
  • mod
  • nand
  • ncr
  • nor
  • not
  • npr
  • nsolve
  • or
  • ord
  • passerr
  • polycoeffs
  • polydegree
  • polyrots
  • prgm
  • prodseq
  • propfrac(
  • rand
  • randint
  • randsamp
  • real
  • remain
  • request
  • requeststr
  • return
  • right
  • round
  • seq
  • setmode
  • sin
  • solve
  • sorta
  • sortd
  • sqrt
  • stop
  • string
  • sumseq
  • sum
  • tan
  • tcollect
  • texpand
  • text
  • then
  • true
  • try
  • undef
  • when
  • while
  • xor
  • zeros
  • :=


Je sais que ca fait un peu long... mais la Nspire possède tellement de fonctionnalités :p

EDIT: Pourquoi ne pas mettre aussi en couleur les chaines de caractères et les listes?
Image
User avatar
davidElmalehProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 19.6%
 
Posts: 409
Images: 9
Joined: 14 Oct 2012, 23:30
Location: Paris 19
Gender: Male
Calculator(s):
MyCalcs profile
Class: PSI*

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby Adriweb » 29 Jun 2014, 20:17

Merci, c'est déjà un bon début :)

PS : tu peux enlever les "()" et les symboles, en fait, je doute qu'il en veuille :P
Image

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...)
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.3%
 
Posts: 14653
Images: 1118
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby davidElmaleh » 29 Jun 2014, 20:18

ok j'edit :)

EDIT: c'est fait ;)
Image
User avatar
davidElmalehProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 19.6%
 
Posts: 409
Images: 9
Joined: 14 Oct 2012, 23:30
Location: Paris 19
Gender: Male
Calculator(s):
MyCalcs profile
Class: PSI*

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby Adriweb » 29 Jun 2014, 20:21

Ok.

BTW, voilà comment le Lua est codé :
Code: Select all
/*
Language: Lua
Author: Andrew Fedorov <dmmdrs@mail.ru>
*/

function(hljs) {
  var OPENING_LONG_BRACKET = '\\[=*\\[';
  var CLOSING_LONG_BRACKET = '\\]=*\\]';
  var LONG_BRACKETS = {
    begin: OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET,
    contains: ['self']
  };
  var COMMENTS = [
    {
      className: 'comment',
      begin: '--(?!' + OPENING_LONG_BRACKET + ')', end: '$'
    },
    {
      className: 'comment',
      begin: '--' + OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET,
      contains: [LONG_BRACKETS],
      relevance: 10
    }
  ]
  return {
    lexemes: hljs.UNDERSCORE_IDENT_RE,
    keywords: {
      keyword:
        'and break do else elseif end false for if in local nil not or repeat return then ' +
        'true until while',
      built_in:
        '_G _VERSION assert collectgarbage dofile error getfenv getmetatable ipairs load ' +
        'loadfile loadstring module next pairs pcall print rawequal rawget rawset require ' +
        'select setfenv setmetatable tonumber tostring type unpack xpcall coroutine debug ' +
        'io math os package string table'
    },
    contains: COMMENTS.concat([
      {
        className: 'function',
        beginKeywords: 'function', end: '\\)',
        contains: [
          hljs.inherit(hljs.TITLE_MODE, {begin: '([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*'}),
          {
            className: 'params',
            begin: '\\(', endsWithParent: true,
            contains: COMMENTS
          }
        ].concat(COMMENTS)
      },
      hljs.C_NUMBER_MODE,
      hljs.APOS_STRING_MODE,
      hljs.QUOTE_STRING_MODE,
      {
        className: 'string',
        begin: OPENING_LONG_BRACKET, end: CLOSING_LONG_BRACKET,
        contains: [LONG_BRACKETS],
        relevance: 5
      }
    ])
  };
}
Image

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...)
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.3%
 
Posts: 14653
Images: 1118
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby Bisam » 29 Jun 2014, 20:25

Les symboles doivent être reconnus, si on les tape... mais tous ont un alias en toutes lettres.
"derivative" pour la dérivée
"integral" pour l'intégrale
"sumseq" pour la somme
"prodseq" pour le produit

EDIT(par davidElmaleh) : c'est corrigé ;)
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5666
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby Levak » 29 Jun 2014, 20:36

Liste complète :
Show/Hide spoilerAfficher/Masquer le spoiler
Code: Select all
_
_A
_acre
_amu
_Ang
_atm
_au
_bar
_Btu
_c
_cal
_Cc
_cd
_cm
_coul
_cup
_day
_dyne
_erg
_eV
_F
_fath
_floz
_flozUK
_fm
_ft
_ftlb
_g
_gal
_galUK
_Gc
_GHz
_gm
_Gs
_h
_ha
_henry
_hp
_hr
_Hz
_in
_inH2O
_inHg
_J
_k
_kA
_kcal
_kg
_kgf
_kHz
_km
_knot
_kph
_kV
_kW
_kWh
_l
_latm
_lb
_lbf
_ltyr
_m
_mA
_Me
_mg
_mH
_mho
_MHz
_mi
_mil
_min
_ml
_mm
_mmH2O
_mmHg
_mmho
_Mn
_mol
_Mp
_mph
_ms
_mton
_mV
_N
_Na
_nF
_nH
_Nmi
_ns
_Oe
_ohm
_oz
_P
_Pa
_pc
_pF
_psi
_pt
_q
_qt
_Rb
_Rc
_Rdb
_rod
_s
_siemens
_slug
_St
_T
_tbsp
_ton
_tonf
_tonne
_tonUK
_torr
_tsp
_V
_Vm
_volt
_W
_Wb
_week
_yd
_yr
abs
and
and
angle
Ans
approx
approxRational
arcLen
augment
avgRC
ceiling
cFactor
char
charPoly
ClearAZ
ClrErr
colAugment
colDim
colNorm
comDenom
completeSquare
conj
constructMat
cos
cosh
cot
coth
count
countIf
cPolyRoots
crossP
csc
csch
centralDiff
cSolve
CubicReg
cumSum
Cycle
cZeros
Define
DelVar
deSolve
det
diag
dim
Disp
DoD
domain
dotP
eigVc
eigVl
Else
ElseIf
EndFor
EndFunc
EndIf
EndLoop
EndPrgm
EndTry
EndWhile
errCode
exact
Exit
exp
expand
expr
ExpReg
explist
factor
false
Fill
floor
fMax
fMin
For
format
fPart
frequency
Func
gcd
getDenom
getLangInfo()
getMode
getNum
Goto
identity
If
ifFn
imag
impDif
inString
int
intDiv
iPart
isPrime
krnBasis
Lbl
lcm
left
lim
limit
LinReg
linSolve
listmat
ln
LnReg
Local
log
Logistic
Loop
LU
matlist
max
mean
median
MedMed
mid
min
mod
mRow
mRowAdd
nand
nand
nCr
comb
nDeriv
nDerivative
newList
newMat
nfMax
nfMin
nInt
nor
nor
norm
normalLine
not
nPr
nSolve
OneVar
or
or
ord
PassErr
piecewise
polyCoeffs
polyDegree
polyEval
polyGcd
polyQuotient
polyRemainder
polyRoots
PowerReg
Prgm
product
propFrac
PRx
PRy
QR
QuadReg
QuartReg
rand89
randMat
randNorm
randPoly
RandSeed
rank
real
ref
remain
Request
RequestStr
Return
right
root
rotate
round
rowAdd
rowDim
rowNorm
rowSwap
rref
RPr
sec
sech
seq
setMode
shift
sign
simult
sin
sinh
SinReg
solve
SortA
SortD
sqrt
stDevPop
stDevSamp
Stop
string
subMat
sum
sumIf
system
tan
tangentLine
tanh
taylor
tCollect
tExpand
Text
Then
tmpCnv
trace
true
Try
TwoVar
undef
unitV
varPop
varSamp
when
While
xor
zeros
List
tmpCnv
pi
infinity
Base2
cos
Cylind
DD
Base10
Decimal
DMS
exp
approxFraction
Grad
Base16
ln
logbase
tvmN
tvmI
tvmPV
tvmPmt
tvmFV
amortTbl
bal
Int
Prn
npv
irr
mirr
nom
eff
dbd
CubicReg
ExpReg
LinRegMx
LinRegBx
LnReg
LogisticD
Logistic
MedMed
MultReg
PowerReg
QuadReg
QuartReg
SinReg
binomCdf
binomPdf
Cdf
chi2Cdf
Pdf
chi2Pdf
corrMat
FCdf
FPdf
geomCdf
geomPdf
getStatValues
inv
invChi2
invF
invNorm
invt
normCdf
normPdf
poissCdf
poissPdf
rand
randBin
randInt
randNorm
randSamp
tCdf
tPdf
ANOVA
ANOVA2way
2way
chi22way
GOF
chi2GOF
FiveNumSummary
Test_2Samp
FTest_2Samp
LinRegtIntervals
LinRegtTest
MultRegIntervals
MultRegTests
OneVar
tInterval
tInterval_2Samp
tTest
tTest_2Samp
TwoVar
zInterval
zInterval_1Prop
zInterval_2Prop
zInterval_2Samp
zTest
zTest_1Prop
zTest_2Prop
zTest_2Samp
CopyVar
dominantTerm
series
LibPriv
LibPub
Define LibPriv
Define LibPub
\
getType
part
getVarInfo
libShortcut
freqTablelist
cumulativeSum
@c
@n
@i
@e
@t
@d
@g
@r
@>
@<
=:
derivative
integral
prodSeq
sumSeq
arccos
arccosh
arccot
arccoth
arccsc
arccsch
arcsec
arcsech
arcsin
arcsinh
arctan
arctanh
deltaList
deltaTmpCnv
exp@>list
list@>mat
mat@>list
P@>Rx
P@>Ry
R@>Pr
R@>Ptheta
@>Base2
@>cos
@>Cylind
@>DD
@>Base10
@>Decimal
@>DMS
@>exp
@>approxFraction
@>Grad
@>Base16
@>ln
@>logbase
@>Polar
@>Rad
@>Rect
@>sin
@>Sphere
@>tan
freqTable@>list
void
Lock
Unlock
getLockInfo
isVoid
delVoid
euler
rk23
seqGen
seqn
warnCodes
interpolate
initialterms
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: Syntax Highlight - Nspire Basic etc. ?

Unread postby Adriweb » 29 Jun 2014, 20:39

Ca, j'étais capable de la faire, mais je sais pas si ça vaut le coup de tout mettre :P
Meh, je verrais bien...

Pour le moment, j'ai isolé ceci :

Code: Select all
literal: "true false undef void _ :",
keyword: "and Cycle Define Else ElseIf EndFor EndFunc EndIf EndLoop EndPrgm EndTry EndWhile Exit For Goto If Local Lbl LibPriv LibPub Lock Loop nand nor not or Prgm Return Stop Then Try Unlock when While xor"


J'en ai loupé ?
Image

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...)
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.3%
 
Posts: 14653
Images: 1118
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby Excale » 29 Jun 2014, 20:39

Elle sort d'où cette liste? L'ordre est pour le moins étrange.

PS pour Adriweb: undef spas un mot clef
Aussi t'as forgotté Lock et Unlock.
Et Local.
Si tu mets or et and t'as toute la famille à mettre aussi. (et auquel cas il faut mettre toutes les opérations)
Et je te passe tous les mots clefs de stats, pas très utile de les rajouter.
SortA/D si tu veux aussi.
User avatar
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 3.9%
 
Posts: 2955
Images: 3
Joined: 10 Sep 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile

Re: Syntax Highlight - Nspire Basic etc. ?

Unread postby Levak » 29 Jun 2014, 20:40

Excale wrote:Elle sort d'où cette liste? L'ordre est pour le moins étrange.

Bah ... res/math/locale/en/string.res + tri.
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)

Next

Return to Choses relatives à TI-Planet

Who is online

Users browsing this forum: No registered users and 5 guests

-
Search
-
Social TI-Planet
-
Featured topics
"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.
Offre de test des nouveautés de rentrée 2024 par Casio. Enseignant(e), reçois gratuitement 1 exemplaire, à ton choix, de la Graph Light ou bien de la Graph Math+
14€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 31 Octobre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 90+E d'ici le 31 Décembre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 25 d'ici le 31 Décembre 2024
8€ remboursés par Casio sur l'achat de ta calculatrice Graph Math+ d'ici le 31 Octobre 2024
Reprise de ton ancienne fx-92 Collège ou Graph 25/35/90 à 3€ peu importe son état. Même non fonctionnelle et donc invendable, même ancienne Graph 35 non conforme aux programmes (pas de Python), même ancienne Graph 25/35 inutilisable aux examens (pas de mode examen) et donc invendable. Etiquette de retour fournie, pas de frais de port à payer.
3€ remboursés par Casio sur l'achat de ta calculatrice fx-92 Collège d'ici le 30 Septembre 2024
5€ de remise immédiate sur l'achat de ta calculatrice TI-83 Premium CE Edition Python chez les revendeurs partenaires
4€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced Edition Python chez les revendeurs partenaires
3€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced chez les revendeurs partenaires
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234567891011121314
-
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.
1098 utilisateurs:
>1081 invités
>11 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
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)