Sublime Text: pluginuri pentru deschiderea în navigator (5)


Acum dacă tot testez Sublime Text să merg mai departe, nu? Poate mă voi îndrăgosti la el, deşi preţul e puţin cam pipărat. Din fericire e funcţional forever, doar că te invită periodic să îl înregistrezi. Să vedem noul meu obiectiv: să poţi deschide rapid, din taste, un fişier pe care îl editezi în navigator. Acum la mine cazul e special, pentru că am şi IIS pentru ASP, şi Apache pentru PHP. Dar pentru moment merg de dragul clarităţii pe un prim scenariu clar: lucrăm pe un fişier HTML şi dorim să îl vedem în navigatorul setat ca implicit în sistemul de operare.

imagine

Din meniul Tools alegeţi New Plugin. Puneţi conţinutul următor şi salvaţi-l cu ce nume doriţi. După cum vedeţi, codul e foarte simplu. Chiar şi fără să ştim Python înţelegem ce face. Ia numele fişierului (cu tot cu cale) şi îl deschide în brower. Punct.

import sublime, sublime_plugin
import webbrowser

class DeschideNavigatorCommand(sublime_plugin.TextCommand):
   def run(self,edit):
      url = self.view.file_name()
      webbrowser.open_new(url)

Lucrurile se complică puţin când vrem să deschidem pe un server fişierul. Nu ne mai ajută calea lui, ci dimpotrivă trebuie să scăpăm de prima parte (C:\\calea\spre\server). Acum desigur că se pot găsi soluţii mai elegante, cu “variabile” definite în setările Sublime Text. Eu am mers pe ceva foarte simplu. Adaptând la datele calculatorului Dvs (adică locaţia serverului) puteţi folosi codul. După cum vedeţi mai sus, pentru moment le-am separat pe două taste (F8 şi F9), pentru că uneori lucrez pe fişiere HTML care nu sunt sub structura serverului.

import sublime, sublime_plugin
import webbrowser
import re

class DeschideLocalhostCommand(sublime_plugin.TextCommand):
   def run(self,edit):
      url = self.view.file_name()
      url=re.sub("E:\\\\webroot","",url)
      webbrowser.open_new_tab("http://localhost:8080/" + url)


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (Neevaluat încă)
Loading...Loading...

1 comentariu

  1. Codrea spune:

    La mine nu a mers varianta cu localhost, dar am mai gasit o alternativa:
    // Begin Code
    import sublime, sublime_plugin
    import os
    import webbrowser
    import re
    import os2emxpath
    import logging
    import sys

    class DeschideLocalhostCommand(sublime_plugin.TextCommand):
    def run(self, edit):
    file_path = self.view.file_name()
    file = os2emxpath.normpath(file_path)

    url = re.sub(„C:/wamp/www/”, „http://localhost/”, file)

    if sys.platform == ‘win32’:
    webbrowser.open_new_tab(url)
    #os.startfile(url)
    elif sys.platform == ‘darwin’:
    subprocess.Popen([‘open’, url])
    else:
    try:
    subprocess.Popen([‘xdg-open’, url])
    except OSError:
    logging.warning(url)

    // End Code


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *