2017-02-26 7 views
6

के साथ एसी संपादक के लिए दर्पण कार्यकर्ता का उपयोग कैसे करें मैं वेबपैक के साथ अपना ऐस संपादक ऐप बनाने के लिए ace-builds का उपयोग कर रहा हूं।ऐस-बिल्ड

मुझे वाक्यविन्यास सत्यापन के लिए एक कस्टम कार्यकर्ता का उपयोग करने की आवश्यकता है। विकी पेज here निम्नलिखित द्वारा प्राप्त mirror नामक एक कर्मचारी को बढ़ाने का सुझाव देता है।

var Mirror = require("ace/worker/mirror").Mirror;

लेकिन इक्का-बनाता है यह कार्यकर्ता प्रदान करने के लिए प्रतीत नहीं होता। मैं ऐस-बिल्ड का उपयोग कर सिंटैक्स सत्यापन के लिए कस्टम वर्कर कैसे बना सकता हूं?

कस्टम सिंटैक्स मान्य करने वाले कार्यकर्ता (कस्टम प्रोग्रामिंग भाषा के लिए) के साथ एक ऐस संपादक ऐप बनाने के तरीके पर कोई अन्य सलाह बहुत सराहना की जाती है। (मैं, require.js साथ प्रयोग किया जा करने की अपेक्षा की इक्का लाइब्रेरी का उपयोग नहीं कर सकते हैं के रूप में यह require.toUrl का उपयोग करता है जो webpack के बारे में पता नहीं है। github issue देखें)

उत्तर

1

इक्का-बनाता भंडार केवल बनाया श्रमिकों को प्रदान करता है, और का स्रोत नहीं है एक अलग फ़ाइल में ऐस/कार्यकर्ता/दर्पण।

आप के बाद से यह अतिरिक्त कोड के केवल 200 रेखाएं हों, अपने कस्टम एक bootstrap करने के लिए json कार्यकर्ता का उपयोग कर सकते https://github.com/ajaxorg/ace-builds/blob/master/src/worker-json.js#L1409-L1699

"<mymode>_worker.js" है कि फ़ाइल का नाम बदलने और अंत में कार्यकर्ता परिभाषा जोड़ें।

define("ace/mode/<mymode>_worker",["require","exports","module"], function(require, exports, module) { 
"use strict"; 

var oop = require("../lib/oop"); 
var Mirror = require("../worker/mirror").Mirror; 

... 

}); 
+0

लेकिन यह भी दर्पण कार्यकर्ता पर निर्भर करता है। https://github.com/ajaxorg/ace-builds/blob/master/src/worker-json.js#L1663 तो केवल ये 200 लाइनें काम नहीं करेगी? अब मैं जो कर रहा हूं वह किसी भी कार्यकर्ता फ़ाइलों से दर्पण कार्यकर्ता की परिभाषा की प्रतिलिपि बना रहा है और उस फ़ाइल की आवश्यकता है। https://github.com/ajaxorg/ace-builds/blob/master/src/worker-json.js#L1347-L1407 फिर दर्पण कार्यकर्ता परिभाषित किया गया है। लेकिन मैं अपने रेपो में सीधे अन्य लोगों को कोड डालने से बचना चाहता हूं :) –

+0

इसमें दर्पण की परिभाषा है, और इसकी सभी निर्भरताओं https://github.com/ajaxorg/ace-builds/blob/v1.2.6/src /worker-json.js#L1347, उस फ़ाइल में हाइलाइट की गई 200 लाइनों के अलावा अन्य सभी चीज़ों को ऐस के लिए वेबवर्कर बनाने के लिए आवश्यक है। तो मैं कार्यकर्ता –

+0

आह के लिए अपनी वेबपैक कॉन्फ़िगरेशन में पूर्ण कार्यकर्ता-json.js फ़ाइल को शामिल करने का सुझाव दे रहा था। इसलिए यदि मुझे वर्कर-जेसन फ़ाइल की आवश्यकता है, तो क्या मैं [ace.js] (https://github.com/ajaxorg/ace-builds/blob/v1.2.6/src/ace.js) फ़ाइल की आवश्यकता से बच सकता हूं? मै उसे करने की एक कोशिश तो करूंगा। धन्यवाद। –