Yeah, breaking up the bbcode tags so the content doesnāt get parsed as markup by the forum ā¦ and get all fucked up colors and missing content ā¦
ST3: ExportHtml
[quote=ācastles_made_of_sandā]https://github.com/sublimator/EditPreferences/blob/master/helpers.py
I got some crap there for getting files ā¦ not very coherent as itās first pass code as working through understanding ST3 implications ā¦
I had my own package globbing function which returns paths with /$Package.sublime-package/ if itās a zip file ā¦
Didnāt really come across a case like today when getting a package normalised path from the api that doesnāt imply
much ā¦[/quote]
Cool, I will take a look at your stuff. I would like to leverage the work of dealing with package paths instead of wasting time doing it all myself from scratch. I just dont have the motivation right now .
hrmm, maybe between the 3 of us we can extract a module that works in all cases and isnāt too stupid inefficient
Packages/PackageName/Asset.ext
/Abspath/Packages/PackageName/Asset.ext
/Abspath/Packages/PackageName.sublime-package/Asset.ext
I guess each of these could somehow come from the following:
(sublime.packages_path(), sublime.installed_packages_path(), os.path.dirname(sublime.executable_path()))
I might start with extracting just path helper stuff into a new module/repo
Iām doing some testing of it now. Iāll post here in a little bit. How Iām writing it now, you can return either the content of the file being searched for, or it will be extracted to a temp directory and the path will be returned.
[pre=#0C1021]ST2 = sublime.version():1] == ā2ā
ST3 = not ST2
[/pre]
I got as far as declaring some constants, then went FUCK THIS, hahaha
Death to ST2 I say!
Uploads the .pyc file to github Ha take that! Alright Iād feel to mean doing that so that would never happen.
[quote=ācastles_made_of_sandā]
Cool, I might take @faceless lead and sit this one out too [/quote]
Sitān is where itās at .
[quote=āfacelessuserā]
[quote=ācastles_made_of_sandā]
Cool, I might take @faceless lead and sit this one out too [/quote]
Sitān is where itās at .[/quote]
Here you go you sitānā¦ers? If you come across any issues or can think of any improvements, let me know.
Looks good
Python 3 AFAIK seems to auto magically open(f).read() as unicode, defaulting to utf8
Defaulting to utf8 might not hurt, but having a possibility to consistently get bytes back might be nice ā¦
I think zipfile.ZipFile.read, on the other hand, will always return bytes, even on python 3?
def get_package_asset(package_name, file_name, get_path=False):
Iād like to make a feature request ( bloody rich right??
I want another helper that will get some arbitrary path and determine the pakage_name/file_name from it so I can feed it to the get_package_asset guy
[code]>>> import Default.sort
Default.sort.file
ā/home/nick/sublime_text_3/Packages/Default.sublime-package/sort.pyā
[/code]
[quote=ācastles_made_of_sandā]def get_package_asset(package_name, file_name, get_path=False):
Iād like to make a feature request ( bloody rich right??
I want another helper that will get some arbitrary path and determine the pakage_name/file_name from it so I can feed it to the get_package_asset guy
[code]>>> import Default.sort
Default.sort.file
ā/home/nick/sublime_text_3/Packages/Default.sublime-package/sort.pyā
[/code][/quote]
Iāll take a look at the things you mentioned. If you insist, I suppose I will be a helpful developer and add that
@skuroda thanks for doing this. When I get off my butt tomorrow I am going to try this. Sounds like @castles is trying to keep you busy . I like his suggestion though.
gist.github.com/skuroda/4965913 ā¦ set-py-L21
Also, you could probably cut to the chase there, just piecing together an absolute path, checking if the file exists, rather than doing two os.listdir() calls.
Letās pretend that I did that originally I did it in the _search_zip method. Also added a method to get package and asset name from absolute path. Updates on the Gist .
Edit: err half way. Woops.
Another thing, generally you wanna use try/finally when using open() zipfile.ZipFile() etc
Python has with
for that: with open(bla) as file_handle: file_handle.read()