Community
    • Login

    Negate command line options (-openFoldersAsWorkspace)

    Scheduled Pinned Locked Moved General Discussion
    3 Posts 3 Posters 581 Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Greg TeaterG Offline
      Greg Teater
      last edited by

      I have two shortcuts for np++. One includes this command line option, -openFoldersAsWorkspace, which works great. A second shortcut does not have any command line options.

      After using the -openFoldersAsWorkspace option, the view is remembered for future launches of np++. Is there an option to:

      a) not remember this option if used on the command line

      b) have a negate feature to disable an option, such as -!openFoldersAsWorkspace

      dinkumoilD 1 Reply Last reply Reply Quote 3
      • PeterJonesP Offline
        PeterJones
        last edited by

        Interesting. I don’t know of a way to tell it to “not remember”, nor of a way to negate the option from the command line, though someone else might know of a way that I don’t.

        If no one can come up with a workaround for you, then you would follow this FAQ to request a feature (either the command-line negation, or the not-remember-option, or both).

        (Sorry I couldn’t be of more help.)

        1 Reply Last reply Reply Quote 0
        • dinkumoilD Offline
          dinkumoil @Greg Teater
          last edited by dinkumoil

          @Greg-Teater

          Both of your suggestions a) and b) would require some changes to the code base of Notepad++ (will not happen in the near future, if ever).

          Thus, my suggestion is to create a desktop shortcut to a script file that changes the config file of your Notepad++ installation before running notepad++.exe. The config file is in XML format, the script has to delete the /NotepadPlus/FileBrowser XML node.

          The following is a VBScript solution. Please note: You have to change lines 19 and 20 according to your needs.

          The location of the Notepad++ config file depends on the type of installation you are running, a portable one or created by the Npp installer.

          Installed by installer: %AppData%\Notepad++\config.xml
          Portable: <Npp-Directory>\config.xml

          Save the script for example as NppLauncher.vbs and create a desktop shortcut to it. Then open the properties of the shortcut and change its target to the following command:

          wscript.exe "<Path-To-The-Script-File>" 
          

          The script forwards all received command line arguments to Notepad++.

          Option Explicit
          
          
          '-------------------------------------------------------------------------------
          'Variables declarations
          '-------------------------------------------------------------------------------
          Dim objFSO, objXmlDoc
          Dim strNppPath, strNppExePath, strConfigPath, strCfgFilePath
          Dim strNodePath, colNodes, objNode
          Dim intCnt, strArguments
          
          
          '-------------------------------------------------------------------------------
          'Create base objects
          '-------------------------------------------------------------------------------
          Set objFSO      = CreateObject("Scripting.FileSystemObject")
          Set objXmlDoc   = CreateObject("MSXml2.DOMDocument.6.0")
          
          strNppPath      = "<Path-To-Npp-Installation-Directory>"
          strConfigPath   = "<Path-To-Directory-With-Npp-Config-File>"
          strNppExePath   = objFSO.BuildPath(strNppPath, "notepad++.exe")
          strCfgFilePath  = objFSO.BuildPath(strConfigPath, "config.xml")
          strNodePath     = "/NotepadPlus/FileBrowser"
          
          
          '-------------------------------------------------------------------------------
          'Main script
          '-------------------------------------------------------------------------------
          'Open Npp XML config file
          objXmlDoc.async              = False
          objXmlDoc.validateOnParse    = False
          objXmlDoc.preserveWhiteSpace = True
          
          objXmlDoc.load(strCfgFilePath)
          
          
          'Delete XML node regarding "Folder as Workspace" feature
          Set colNodes = objXmlDoc.selectNodes(strNodePath)
          
          For Each objNode In colNodes
            Call objNode.parentNode.removeChild(objNode)
          Next
          
          
          'Save Npp XML config file
          objXmlDoc.save(strCfgFilePath)
          
          
          'Start Notepad++ with provided command line arguments
          strArguments = ""
          
          For intCnt = 0 To WScript.Arguments.Count - 1
            strArguments = strArguments & " " & Quote(WScript.Arguments(intCnt))
          Next
          
          Call Execute(strNppExePath, strArguments)
          
          
          
          '===============================================================================
          ' Surround a string with double quotes
          '===============================================================================
          
          Function Quote(ByRef strString)
            Quote = """" & strString & """"
          End Function
          
          
          '===============================================================================
          ' Run application with provided arguments
          '===============================================================================
          
          Function Execute(ByRef strApp, ByRef strArgs)
            Dim objWshShell
          
            Set objWshShell = CreateObject("WScript.Shell")
          
            Execute = objWshShell.Run(Quote(strNppExePath) & " " & strArguments, _
                                      1, _
                                      False)
          End Function
          
          1 Reply Last reply Reply Quote 2

          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

          With your input, this post could be even better 💗

          Register Login
          • First post
            Last post
          The Community of users of the Notepad++ text editor.
          Powered by NodeBB | Contributors