tis-notepadplusplus-plugin-template icon

Plugin Template for Notepad++

Paquet d’installation silencieuse pour Plugin Template for Notepad++

1-1

  • package: tis-notepadplusplus-plugin-template
  • name: Plugin Template for Notepad++
  • version: 1-1
  • categories: Utilities,Office,Development
  • maintainer: WAPT Team, Bertrand Lemoigne
  • licence: GPLv3
  • target_os: windows
  • impacted_process: notepad++
  • architecture: all
  • signature_date:
  • size: 10.25 Ko
  • homepage : https://github.com/pnedev/comparePlus
  • depends:

package           : tis-notepadplusplus-plugin-template
version           : 1-1
architecture      : all
section           : base
priority          : optional
name              : Plugin Template for Notepad++
categories        : Utilities,Office,Development
maintainer        : WAPT Team, Bertrand Lemoigne
description       : Plugin Template for Notepad++, please run update_package to create your plugin package
depends           : tis-notepadplusplus
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : notepad++
description_fr    : Plugin Template pour Notepad++, veuillez lancer l'update_package pour créer votre paquet de plugin
description_pl    : 
description_de    : 
description_es    : 
description_pt    : 
description_it    : 
description_nl    : 
description_ru    : 
audit_schedule    : 
editor            : 
keywords          : 
licence           : GPLv3
homepage          : https://github.com/pnedev/comparePlus
package_uuid      : 26de4605-1fe6-470e-af0f-9af2bd01c226
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 416085afa2c9d514cd68126bd43084388b210a5f93da147c0a80db1821cf28a2
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-03-23T14:28:18.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : pjl+h3nkK+yfxeNoE9LLYpmhJKE1JVez0PgZO8A4N2U/c/nLDFqNz4fEd/hbkv0OPY2/NWaEsoRsM6zoclFEpCS0kRNSb04gtaeVB0E1QazrGS7wsKYbAc+LDWiJqy+uSjf3KwVotvzdS0m+Ob09uIsRHxczQdK4curgM0tnJWaJMq3FltOs/6IhQRxcV93J8umWmQXZYxCmdaHNkHsiY7yYl3Az6GmvH5/Ev+jq8DatFpq9WN97d13VBRIZ52CAfFX4B0CK6xig0s9g31U4zHt0OYplt3ac49GoBrmUCQjqP2BnMjnb0XtsBGx90Gc5WRi6qXQ0OUmteBFPohq0nQ==

# -*- coding: utf-8 -*-
from setuphelpers import *

def install():
    # Declaring local variables
    zip_name = glob.glob("*.zip")[0]
    unzip(zip_name, zip_name.replace('.zip',''))
    dll = glob.glob(r'*\*.dll')[0]
    # plugin directory is retrieved from the dll name
    plugin = dll.replace('.dll','').split('\\')[-1]
    plugin_dir = makepath(programfiles,"Notepad++","plugins",plugin)

    # writing plugin_dir in a file inside persistent_dir
    with open(makepath(persistent_dir,'plugindir'),'w') as p:
        p.write(plugin_dir)
        p.close()

    if not isdir(plugin_dir):
        mkdirs(plugin_dir)
        print("Plugin Installation")
        filecopyto(dll,plugin_dir)

    else:
        print("Plugin already installed")

def uninstall():

    # Getting plugin_dir from the file present in persistent_dir
    with open(makepath(persistent_dir,'plugindir'),'r') as p:
        plugin_dir = p.read()
        p.close()

    if isdir(plugin_dir):
        print("Plugin removed")
        remove_tree(plugin_dir)
    else:
        print("Plugin not present")

# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import waptguihelper


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    #list of all plugins is in this json file
    json_url = "https://raw.githubusercontent.com/notepad-plus-plus/nppPluginList/refs/heads/master/src/pl.x64.json"
    wget(json_url,'pl.x64.json',proxies=proxies)

    with open('pl.x64.json','r') as j:
        data = json.load(j)

    # Extract plugins list
    plugins = data.get("npp-plugins", [])

    # Check if list contains plugins
    if not plugins:
        print("Aucun plugin trouvé.")
    else:
        # plugin list
        plugins_list = [plugin['display-name'] for plugin in plugins]
        # plugin_name/download_URL dict
        plugins_dict = {plugin['display-name']: plugin['repository'] for plugin in plugins}
        # Selecting plugin from list
        selected_plugin_dict = waptguihelper.grid_dialog('Please select plugin (only one plugin)',plugins_list,waptguihelper.GRT_SELECTED,'{"columns":[{"propertyname":"plugins","datatype":"String"}]}')[0]
        # Getting download URL from plugin name
        selected_plugin = selected_plugin_dict['unknown']
        dl_url = plugins_dict[selected_plugin]
        # Downloading plugin
        wget(dl_url,dl_url.split('/')[-1],proxies=proxies)

    # Renaming package
    if "template" in control.package:
        complete_control_package(control)
        complete_control_name(control)
        complete_control_description(control)
        complete_control_version(control,control.version)
        if "template" in control.package:
            error("Please rename the package.")
        else:
            version = str(int(control.get_software_version()) + 1)
    else:
        version = str(int(control.get_software_version()))

    # Changing version of the package
    if Version(version, 4) > Version(control.get_software_version(), 4):
        print(
            "Software version updated (from: %s to: %s)"
            % (control.get_software_version(), Version(version))
        )
        package_updated = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.save_control_to_wapt()

    # Validating or not update-package-sources
    return package_updated

    # # Changing version of the package and validating update-package-sources
    # return complete_control_version(control, version)

55dce1eb0c05e997e5c33aec50c23bca1a566e46eb020ef7b24378f63f5aaaf8 : .gitignore
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
f4e04158938f70930f97f5647b1d06c72b4f5c59e0349ecf3a95680300464f89 : WAPT/control
416085afa2c9d514cd68126bd43084388b210a5f93da147c0a80db1821cf28a2 : WAPT/icon.png
f08ee3fc27fa5cd5b0f2bab9df03ec911782dff344cba5e1f3dceb79b7e1dff4 : luti.json
0395d4b9b7d30ff356408d2fcb5797d9a1d49b87fa1698b9ad68d9af33a1d8e9 : setup.py
0259adcd7c399acf6a389db12738fea36da5939568d23d271429d206921cbe07 : update_package.py