Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import sys
- from PyQt5 import QtCore
- def showInFolder(path):
- '''
- Show a file or folder with explorer/finder.
- Source: https://stackoverflow.com/a/46019091/3388962
- '''
- path = os.path.abspath(path)
- dirPath = path if os.path.isdir(path) else os.path.dirname(path)
- if sys.platform == 'win32':
- args = []
- if os.path.isdir(path):
- args.append('/select,')
- args.append(QtCore.QDir.toNativeSeparators(path))
- if QtCore.QProcess.startDetached('explorer', args):
- return
- elif sys.platform == 'darwin':
- args = []
- args.append('-e')
- args.append('tell application "Finder"')
- args.append('-e')
- args.append('activate')
- args.append('-e')
- args.append('select POSIX file "%s"' % path)
- args.append('-e')
- args.append('end tell')
- args.append('-e')
- args.append('return')
- if not QtCore.QProcess.execute('/usr/bin/osascript', args):
- return
- #if not QtCore.QProcess.execute('/usr/bin/open', [dirPath]):
- # return
- # Fallback.
- QtGui.QDesktopServices.openUrl(QtCore.QUrl(dirPath))
- showInFolder('..')
- showInFolder('./show_in_folder.py')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement