Beispiel #1
0
        def f(docs, err):
            doc = ''
            if err:
                self.show_output('// Error: %s' % err)
            elif docs:
                if mode == "goto":
                    fn = ''
                    flags = 0
                    if len(docs) > 0:
                        d = docs[0]
                        fn = d.get('fn', '')
                        row = d.get('row', 0)
                        col = d.get('col', 0)
                        if fn:
                            gs.println('opening %s:%s:%s' % (fn, row, col))
                            vu.open(fn=fn, row=row, col=col)
                            return
                    self.show_output("%s: cannot find definition" % DOMAIN)
                elif mode == "hint":
                    s = []
                    for d in docs:
                        name = d.get('name', '')
                        if name:
                            kind = d.get('kind', '')
                            pkg = d.get('pkg', '')
                            if pkg:
                                name = '%s.%s' % (pkg, name)
                            src = d.get('src', '')
                            if src:
                                src = '\n//\n%s' % src
                            doc = '// %s %s%s' % (name, kind, src)

                        s.append(doc)
                    doc = '\n\n\n'.join(s).strip()
            self.show_output(doc or "// %s: no docs found" % DOMAIN)
Beispiel #2
0
 def cb(i, win):
     if i >= 0:
         fn = m[ents[i]]
         if os.path.isdir(fn):
             win.run_command("gs_browse_files", {"dir": fn})
         else:
             vu.open(fn=fn, win=win)
Beispiel #3
0
		def f(docs, err):
			doc = ''
			if err:
				self.show_output('// Error: %s' % err)
			elif docs:
				if mode == "goto":
					fn = ''
					flags = 0
					if len(docs) > 0:
						d = docs[0]
						fn = d.get('fn', '')
						row = d.get('row', 0)
						col = d.get('col', 0)
						if fn:
							gs.println('opening %s:%s:%s' % (fn, row, col))
							vu.open(fn=fn, row=row, col=col)
							return
					self.show_output("%s: cannot find definition" % DOMAIN)
				elif mode == "hint":
					s = []
					for d in docs:
						name = d.get('name', '')
						if name:
							kind = d.get('kind', '')
							pkg = d.get('pkg', '')
							if pkg:
								name = '%s.%s' % (pkg, name)
							src = d.get('src', '')
							if src:
								src = '\n//\n%s' % src
							doc = '// %s %s%s' % (name, kind, src)

						s.append(doc)
					doc = '\n\n\n'.join(s).strip()
			self.show_output(doc or "// %s: no docs found" % DOMAIN)
Beispiel #4
0
		def cb(i, win):
			if i >= 0:
				fn = m[ents[i]]
				if os.path.isdir(fn):
					win.run_command("gs_browse_files", {"dir": fn})
				else:
					vu.open(fn=fn, win=win)
Beispiel #5
0
        def f(res, err):
            if err:
                ui.error(DOMAIN, err)
                return

            fn = res.get('Fn')
            row = res.get('Line', -1) - 1
            col = res.get('Col', 0) - 1
            if not fn or row < 0:
                ui.note(DOMAIN, "no definition found")
                return

            gs.println('opening %s:%s:%s' % (fn, row, col))
            vu.open(fn=fn, row=row, col=col)
Beispiel #6
0
		def f(res, err):
			if err:
				ui.error(DOMAIN, err)
				return

			fn = res.get('Fn')
			row = res.get('Line', -1) - 1
			col = res.get('Col', 0) - 1
			if not fn or row < 0:
				ui.note(DOMAIN, "no definition found")
				return

			gs.println('opening %s:%s:%s' % (fn, row, col))
			vu.open(fn=fn, row=row, col=col)
Beispiel #7
0
def act_on_path(view, path):
	vv = vu.open(fn=path, win=view.window())
	if vv.has_view():
		return True

	if URL_PATH_PAT.match(path):
		if path.lower().startswith('gs.packages://'):
			vv = vu.open(fn=os.path.join(gs.packages_dir(), path[14:]), win=view.window())
			return vv.has_view()

		try:
			if not URL_SCHEME_PAT.match(path):
				path = 'http://%s' % path
			ui.note(DOMAIN, 'open url: %s' % path)
			webbrowser.open_new_tab(path)
			return True
		except Exception:
			ui.trace(DOMAIN)

		return False

	ui.note(DOMAIN, "Invalid path `%s'" % path)
	return False
Beispiel #8
0
def act_on_path(view, path):
    vv = vu.open(fn=path, win=view.window())
    if vv.has_view():
        return True

    if URL_PATH_PAT.match(path):
        if path.lower().startswith('gs.packages://'):
            vv = vu.open(fn=os.path.join(gs.packages_dir(), path[14:]),
                         win=view.window())
            return vv.has_view()

        try:
            if not URL_SCHEME_PAT.match(path):
                path = 'http://%s' % path
            ui.note(DOMAIN, 'open url: %s' % path)
            webbrowser.open_new_tab(path)
            return True
        except Exception:
            ui.trace(DOMAIN)

        return False

    ui.note(DOMAIN, "Invalid path `%s'" % path)
    return False
Beispiel #9
0
	def goto(self, loc):
		vu.open(fn=loc.fn, row=loc.row, col=loc.col)
Beispiel #10
0
 def cb(i, win):
     if i >= 0:
         d = decls[i]
         vu.open(fn=d['fn'], win=win, row=d['row'], col=d['col'])
Beispiel #11
0
	def cb():
		aso = gs.aso()
		if about.ANN != aso.get('ann', ''):
			aso.set('ann', about.ANN)
			gs.save_aso()
			vu.open(gs.dist_path('CHANGELOG.md'))
Beispiel #12
0
			def cb(i, win):
				if i >= 0:
					d = decls[i]
					vu.open(fn=d['fn'], win=win, row=d['row'], col=d['col'])
Beispiel #13
0
 def cb():
     aso = gs.aso()
     if about.ANN != aso.get('ann', ''):
         aso.set('ann', about.ANN)
         gs.save_aso()
         vu.open(gs.dist_path('CHANGELOG.md'))
Beispiel #14
0
 def goto(self, loc):
     vu.open(fn=loc.fn, row=loc.row, col=loc.col)