Giter VIP home page Giter VIP logo

powershell-open-here-module's Introduction

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

powershell-open-here-module's People

Contributors

kutlime avatar solvingj avatar mbartelsm avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.