में त्वरित पैनल तक पहुंचने से मैं सीखने की प्रक्रिया में हूं कि सब्लिमे टेक्स्ट 2 प्लगइन्स कैसे बनाएं। उन चीजों में से एक जो मैं करना चाहता हूं वह किसी भी हाइलाइट किए गए टेक्स्ट को ले लें, जांचें कि कोई वेबसाइट उस पते पर 200 लौटाएगी, और फिर कुछ जानकारी त्वरित पैनल में रखेगी (और हाँ, मुझे पता है कि मुझे यूआरएल करना चाहिए एक थ्रेड में लुकअप ताकि वह मुख्य यूआई को अवरुद्ध न करे)। वर्तमान में मेरे पास है:एक शानदार पाठ 2 प्लगइन
import sublime
import sublime_plugin
import urllib2
class CheckUrlPanel(sublime_plugin.WindowCommand):
def quick_panel(self, messages, flags):
self.window.show_quick_panel(messages, None, flags)
class CheckUrlsCommand(sublime_plugin.TextCommand):
def run(self, edit):
urls = []
selections = self.view.sel()
for selection in selections:
urls.append(self.view.substr(selection))
messages = self.validate_urls(urls)
panel = CheckUrlPanel()
panel.quick_panel(messages, sublime.MONOSPACE_FONT)
def validate_urls(self, urls):
messages = []
for url in urls:
try:
request = urllib2.Request(url, headers={ "User-Agent" : "Sublime URL Checker" })
response = urllib2.urlopen(request, timeout=3)
message = '"%s" is a valid URL.' % url
except Exception as (e):
message = '"%s" is an invalid URL.' % url
messages.append(message)
return messages
त्रुटि मैं मिलता है:
Traceback (most recent call last):
File "./sublime_plugin.py", line 362, in run_
File "./CheckUrls.py", line 19, in run
panel = CheckUrlPanel()
TypeError: __init__() takes exactly 2 arguments (1 given)
समस्या मैं कैसे WindowCommand वर्ग को सही ढंग से प्रारंभ करने में नहीं पता है कि, और मैं किसी भी खोजने के लिए नहीं कर पा रहे है इस पर प्रलेखन। यहां कोई मदद या संकेत बहुत सराहना की जाएगी।
आप सही कर रहे हैं:
यहाँ एक पूर्ण स्रोत है। मैंने बकाया पोस्ट करने के लगभग 20 मिनट बाद इसे समझ लिया, लेकिन मैं आपके पूर्ण जवाब की सराहना करता हूं। धन्यवाद! (जैसे ही एसओ मुझे देता है मैं इनाम का पुरस्कार दूंगा) –