Skip to content

KUTlime/PowerShell-Open-Here-Module

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PowerShell "Open Here" Module

PowerShell module that enables "Open here" shortcuts functionality for Windows PowerShell, PowerShell Core, Windows Terminal, Bash and CMD.

Introduction

OpenHere is a PowerShell module for installation of shell shortcuts into the context menu (the right mouse button click or the menu key) for Microsoft Windows.

The shortcuts will open desired shell in the current location, e.g. for Windows PowerShell $PWD will be set to the location from which the shortcut was invoked.

Preview

Main features

  • Shortcut installation/removal for Windows PowerShell, Windows Terminal, CMD, PowerShell Core, Bash
  • Open here with non-elevated privileges shortcut.
  • Open here with elevated privileges shortcut.
  • Shortcut availability on directory, drive, directory background, user's desktop.
  • Default setting for easy-to-use.
  • Fully customizable shortcut names.
  • Fully customizable shortcut icon.
  • Capability of showing the shortcut only if the SHIFT key is pressed.
  • Rollback of all shell modifications.
  • Works offline.
  • Well documented.

Basic use

To install the OpenHere module, just type following command into your PowerShell session with elevated privileges.

Install-Module -Name OpenHere
Import-Module -Name OpenHere

Now, you can use the module as you wish. For shortcut installation:

Set-OpenHereShortcut -ShortcutType:WindowsPowerShell

Preview

For other shortcuts just type:

Set-OpenHereShortcut -ShortcutType:WindowsTerminal
Set-OpenHereShortcut -ShortcutType:CMD
Set-OpenHereShortcut -ShortcutType:PowerShellCore

For a custom shortcut & command names, fill parameters accordingly:

Set-OpenHereShortcut -ShortcutType:WindowsPowerShell -RootName 'Old PowerShell' -OpenHere 'I''m lazy' -OpenHereAsAdmin 'I''m lazy admin'

or the equivalent with the escape backtick:

Set-OpenHereShortcut -ShortcutType:WindowsPowerShell`
-RootName 'Old PowerShell' `
-OpenHere 'I''m lazy' `
-OpenHereAsAdmin 'I''m lazy admin

Preview

To remove the shortcut with any settings, just call:

Remove-OpenHereShortcut -ShortcutType:WindowsTerminal

For more details about setting/removing process, type:

Set-OpenHereShortcut -ShortcutType:WindowsTerminal -Verbose
Remove-OpenHereShortcut -ShortcutType:WindowsTerminal -Verbose

respectively.

For the default EXE icons as the shortcut icons, use -UseExeIcon:

Set-OpenHereShortcut -ShortcutType:WindowsTerminal -UseExeIcon

To show the Open Here shortcut only if the SHIFT key is pressed and the right mouse button is clicked, use -UseShift:

Set-OpenHereShortcut -ShortcutType:WindowsTerminal -UseShift

For more examples, type:

Get-Help Set-OpenHereShortcut -Examples

Notes

Windows Terminal doesn't responds to RunAs request from the context menu. This problem is a limitation of the UWP platform. A workaround has been implemented to support Windows Terminal shortcut with elevated privileges. A similar workaround had to be implemented for non-elevated Open here Windows Terminal shortcut to support scenarios when requests are invoked from RMB clicks on a directory or a drive letter.

FAQ

Are there any plans to extend the functionality of this module?

I consider this module feature complete. If you have some idea or suggestion, please open an issue. I definitely have a look on your suggestion.

Can I customize the shortcut icon?

By default, OpenHere module uses its own icons in shell context menus. If the -UseExeIcon switch is used when shortcut is created, the default icons are not generated. These default icons are written in %LOCALAPPDATA%\OpenHere\[ShellType]. Every shell has its own Icon.ico file in the corresponding subfolder. You can customize icons by overriding these Icon.ico files.

Can I override the names and setup?

Yes, just run Set-OpenHereShortcut with a new configuration.

Is the name limited to English?

No, the shortcut names supports Unicode and this is only limitation as I'm aware of.

Windows Command Prompt icon looks weird when Windows Black theme is turn on. What should I do?

You could either run Set-OpenHereShortcut again with -UseExeIcon or override the icon by some other ico file. Have a look at the previous FAQ about the shortcut icon customization for details.

Links

OpenHere module at PowerShell Gallery

Attributions

Get-Icon
CMD icon
PowerShell icon
PowerShell Core icon
WSLBash icon
PNG to icon online converter
PNG to base64 online converter

About

PowerShell module that provides an extended "Open here" functionality for various terminals.

Resources

License

Stars

Watchers

Forks

Packages

No packages published