> On 18 Apr 2023, at 14:20, Gustaf Waldemarson <gustaf.waldemar...@gmail.com> > wrote: > > Hello, > > I don't really use the Python debugger all that much, but recently I used it > quite a bit for a small side-project. That said, it kept annoying me that > there > were no history associated with the prompt, so I added a few lines to the > `pdbrc` config file to store that for me. However, it seems like this file > must > either exist in the user home directory, or the current working directory, > neither of which were very convenient for me. > > Additionally, I strongly dislike polluting my home directory with dotfiles, > thus > I did a bit of researching to see if this could be fixed. Thus, below is a > small > patch to PDB that adds support for **also** reading from configuration files > in > some XDG directories (currently ${XDG_CONFIG_HOME}/python/pdbrc). > > So I guess the question is, would anyone else find this useful enough to the > point were I should write a PEP for it? As far as I can tell, Python haven't > been using the XDG directories, so I suppose the naming of the subdirectory > is really subject to a larger discussion. > > From d4ea8fbba3ba6c7538ccecad2a32e6b3b2059e5d Mon Sep 17 00:00:00 2001 > From: Gustaf Waldemarson <gustaf.waldemar...@gmail.com> > Date: Thu, 13 Apr 2023 11:39:00 +0200 > Subject: [PATCH] Allow users to store PDB configuration in XDG directories. > > --- > Lib/pdb.py | 22 +++++++++++----------- > 1 file changed, 11 insertions(+), 11 deletions(-) > > diff --git a/Lib/pdb.py b/Lib/pdb.py > index a3553b345a..3f4ffd7719 100755 > --- a/Lib/pdb.py > +++ b/Lib/pdb.py > @@ -231,19 +231,19 @@ def __init__(self, completekey='tab', stdin=None, > stdout=None, skip=None, > self.allow_kbdint = False > self.nosigint = nosigint > > - # Read ~/.pdbrc and ./.pdbrc > + # Read user configuration from a set of paths. > self.rcLines = [] > if readrc: > - try: > - with open(os.path.expanduser('~/.pdbrc'), > encoding='utf-8') as rcFile: > - self.rcLines.extend(rcFile) > - except OSError: > - pass > - try: > - with open(".pdbrc", encoding='utf-8') as rcFile: > - self.rcLines.extend(rcFile) > - except OSError: > - pass > + for rcFileName in ('${XDG_CONFIG_HOME}/python/pdbrc', > + '~/.config/python/pdbrc', > + '~/.pdbrc', > + '.pdbrc'): I would expect .pdbrc to be first.
> + rcPath = > os.path.expanduser(os.path.expandvars(rcFileName)) > + try: > + with open(rcPath, encoding='utf-8') as rcFile: > + self.rcLines.extend(rcFile) > + except OSError: > + pass > > self.commands = {} # associates a command list to breakpoint > numbers > self.commands_doprompt = {} # for each bp num, tells if the prompt Try raising a python bug and a PR with this code in it. Seems reasonable change to support. Barry > -- > 2.25.1 > _______________________________________________ > Python-ideas mailing list -- python-ideas@python.org > To unsubscribe send an email to python-ideas-le...@python.org > https://mail.python.org/mailman3/lists/python-ideas.python.org/ > Message archived at > https://mail.python.org/archives/list/python-ideas@python.org/message/HWWWESO3KUCU54OU5FISD3RKLEZMKBP7/ > Code of Conduct: http://python.org/psf/codeofconduct/ > _______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/WCO4GTZUYTHQ4CVS72OWEPEP22RO7PB7/ Code of Conduct: http://python.org/psf/codeofconduct/