No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
oleg-shilo Merge pull request #1 from chcg/appveyor_x64
appveyor + x64

Thank you. Though the approach for the x64 build in this case is to be changed very soon. 

I have just finished yesterday the CS-Script.Npp x64 migration. Only a single outstanding item left (I may need to contact @kbilsted for that).

It was quite interesting dev effort. @kbilsted has done fantastic job of capturing native Npp interface. In many cases his interface was better than that one that I prepared for CSScriptNpp and CSScriptIntellisense. Thus I have changed the codebase to use his API.

Though there were a few critical defects that made the current Kbg.NppPluginNET solution actually unsuitable for hosting any comprehensive plugins. For example calling `GetOpenedFiles` crashes the Npp 100% reliably. I will be preparing the pull request with my fixes so @kbilsted can benefit from this effort as well.

Another very beneficial outcome of this exercise is that I have extended Kbg.NppPluginNET original solution (VS project template) and now building the plugin can be done without exporting the plugin assembly. This makes it possible to have a single-assembly AnyCPU plugin implementation possible. And the x86 vs x64 plugin hosting is the result of a simple packaging technique:

Kbg.NppPluginNET solution is just two files: 
- NppPlugin.Host.dll (compiuled for x86) 
- NppPlugin.Host.dll (compiuled for x64) 

Npp plugin solution:
- 'MyPlugin' VS project  (compiled for AnyCPU and referencing any of two NppPlugin.Host.dll)
- _Any other dependencies_ 

Npp plugin packaging/deployment:
``` 
<x86 ProgramFiles on x64 Windows>
─ Program Files (x86)
  └─ Notepad++
     ├─ plugins
         ├─ MyPlugin
         |  └─ MyPlugin.dll <AnyCPU assembly>
         └─ MyPlugin.x86.dll <renamed x86 version of NppPlugin.Host.dll>

************************

<x64 ProgramFiles on x64 Windows>
─ Program Files
  └─ Notepad++
     ├─ plugins
         ├─ MyPlugin
         |  └─ MyPlugin.dll <AnyCPU assembly>
         └─ MyPlugin.x64.dll <renamed x64 version of NppPlugin.Host.dll>

```                   

I will also be contributing NppPlugin.Host to the kbilsted/NotepadPlusPlusPluginPack.Net
1
Latest commit 209cc00 Jan 8, 2018

readme.txt

'Automation Scripts' (NppScripts.dll) - The plugin for automating Notepad++ with C# scripts.
(part of CS-Script Notepad++ tools suite 'CS-Script.Npp')
--------------------------------------------------------------
1. System Requirements
The plugin requires .NET 4.0 or higher.

2. Installation
To install plugin unpack the content of the NppScripts.zip in the Notepad++ plugin directory.

3. Usage
  a. Open Script Manager from Notepad++ menu: 'Plugins'->'Automation Scripts'->'Script Manager'.
  b. Press 'Create new script' button on the 'Script Manager' toolbar.
  c. Modify the script to reflect your business logic.
  d. Execute the script by pressing 'Run selected script' button on the 'Script Manager' toolbar.
     Or press the shortcut combination associated with the script.
     
It is highly recommended that you test the sample scripts, which come with the plugin.
See www.csscript.net/npp/nppscript.html for more details