Skip to content

[Feat. Req.] Consider adding notepad.getNppConfigDir() #268

Open
@alankilborn

Description

@alankilborn

Recently I had a need to open (for reading) the default session file (session.xml) from a PythonScript.

Locating the file was tedious as I first had to figure out where it was.

PS currently has notepad.getNppDir() and notepad.getPluginConfigDir() functions, and it would be nice to see the addition of notepad.getNppConfigDir().

Comments based on functionality from PS 2.0 and 3.10.4.


Here's my workaround script code:

# -*- coding: utf-8 -*-
from __future__ import print_function

from Npp import *

def notepad_getNppConfigDir():
    npp_dir = notepad.getNppDir()
    plugin_cfg_dir = notepad.getPluginConfigDir()
    if plugin_cfg_dir.startswith(npp_dir):
        npp_config_dir = npp_dir  # portable version of N++
    else:
        # installed (%APPDATA%) version of N++
        npp_config_dir = os.path.join(plugin_cfg_dir, '..', '..')
        npp_config_dir = os.path.abspath(npp_config_dir)
    return npp_config_dir

npp_cfg_dir = notepad_getNppConfigDir()
print('npp_cfg_dir:', npp_cfg_dir)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions