ΠΠ½Π΅ ΠΎΡΠ΅Π½Ρ Π½ΡΠ°Π²ΠΈΡΡΡ ΠΊΠΎΠ΄ Π±Π΅Π· ΡΠΎΡΠ΅ΠΊ Ρ Π·Π°ΠΏΡΡΠΎΠΉ. Ace - ΡΡΠΎ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π½ΠΎ Π² ΠΎΡΡΠ΅ΡΠ°Ρ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π΄Π»Ρ JavaScript ΠΆΠ°Π»ΡΠ΅ΡΡΡ Π½Π° ΠΌΠΎΠΉ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π±Π΅Π· ΡΠΎΡΠ΅ΠΊ Ρ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΎ ΡΠΎΡΠΊΠ°Ρ Ρ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΡΠ΅, ΡΡΠΎ ΠΌΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ, - ΡΡΠΎ ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π±Π΅Π· ΠΎΡΠΈΠ±ΠΎΠΊ ΡΡΠΈΠ»Ρ.
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° (JavaScript):
alert("Hello, world!")
Π‘ΠΎΠ³Π»Π°ΡΠ΅Π½. ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Lint Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΠΌΠΈ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ββΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΡΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌΠ° (https://github.com/ajaxorg/ace/commit/10e2c3049cf2fd41a369336c4d03342127a618e2), ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎ, ΠΊΠ°ΠΊ ΠΈ ΠΎΠΏΡΠΈΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° php (https://github.com/ajaxorg/ace/commit/ 3a864c6056509ceeba2d290407dc91566c223d8e)
ΠΡΡΠ°ΡΠΈ, Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΎ ΡΠΎΡΠΊΠ°Ρ
Ρ Π·Π°ΠΏΡΡΠΎΠΉ, ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ² ΡΡΠΎΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π² ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄: /* jshint asi:true */
ΠΈΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ:
editor.session.$worker.send("changeOptions", [{asi: true}]);
ΠΡΠ±ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ?
ΠΡΠΎ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π»ΠΎ:
editor.session.$worker.send("changeOptions", [{asi: true}]);
ΠΊΠ°ΠΊ .$worker
Π±ΡΠ»ΠΎ null
ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΡΡΠΎ ΡΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π΄Π»Ρ ΠΌΠ΅Π½Ρ (Π½Π° ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΡ-ΡΠΎ ΡΡΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ)
editor.session.on('changeMode', function(e, session) {
if('ace/mode/javascript' === session.getMode().$id) {
if(!!session.$worker) {
session.$worker.send('changeOptions', [{
asi: true // disable "Missing semicolon." warning in editor for JavaScript
}])
}
}
})
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΈΠ»ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ: