Community
    • Login

    Negate command line options (-openFoldersAsWorkspace)

    Scheduled Pinned Locked Moved General Discussion
    3 Posts 3 Posters 332 Views
    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
      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
        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
          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
          • First post
            Last post
          The Community of users of the Notepad++ text editor.
          Powered by NodeBB | Contributors