* bug#30208: M-x pdb breaks if certain characters are in the file's path
@ 2018-01-22 11:35 Robin Allen
2018-01-26 10:20 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Robin Allen @ 2018-01-22 11:35 UTC (permalink / raw)
To: 30208
[-- Attachment #1: Type: text/plain, Size: 1220 bytes --]
"M-x pdb" breaks if the path to the file being debugged includes certain characters.
CONFIGURATION
GNU Emacs 25.3.1
Happens with default settings (no init file)
STEPS TO REPRODUCE
M-x pdb
Run pdb (like this): python3 -m pdb test.py
WHAT SHOULD HAPPEN
A *gud-pdb* buffer should open, display the PDB prompt, and accept debugger commands.
WHAT ACTUALLY HAPPENS
A *gud-pdb* buffer opens, with output: "Current directory is /home/me@mycompany.local/" and nothing else. Commands sent to the debugger do seem to work, but the prompt and debugger output is not displayed. After sending many commands, all the previous prompts and outputs may appear in one big lump, as if this were a buffering issue (though I don't think it is).
WORKAROUND
This is caused by GUD choking on the @ character in the file path. I worked around it by putting this in .emacs:
(setq gud-pdb-marker-regexp
"^> \\([-a-zA-Z0-9_/.:\\@ ]*\\|<string>\\)(\\([0-9]+\\))\\([a-zA-Z0-9_]*\\|\\?\\|<module>\\)()\\(->[^\n\r]*\\)?[\n\r]")
This is the default value, with @ (and space, for good measure) inserted in the first group.
SUGGESTED FIX
Update the default value of gud-gdb-marker-regexp
I hope this is useful
Robin
[-- Attachment #2: Type: text/html, Size: 1753 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#30208: M-x pdb breaks if certain characters are in the file's path
2018-01-22 11:35 bug#30208: M-x pdb breaks if certain characters are in the file's path Robin Allen
@ 2018-01-26 10:20 ` Eli Zaretskii
2018-01-26 16:35 ` Andreas Schwab
0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2018-01-26 10:20 UTC (permalink / raw)
To: Robin Allen; +Cc: 30208-done
> From: Robin Allen <Robin.Allen@artsalliancemedia.com>
> Date: Mon, 22 Jan 2018 11:35:09 +0000
>
> WORKAROUND
> This is caused by GUD choking on the @ character in the file path. I worked around it by putting this in .emacs:
> (setq gud-pdb-marker-regexp
> "^> \\([-a-zA-Z0-9_/.:\\@ ]*\\|<string>\\)(\\([0-9]+\\))\\([a-zA-Z0-9_]*\\|\\?\\|<module>\\)()\\(->[^\n\r]*\\)?[\n\r]")
>
> This is the default value, with @ (and space, for good measure) inserted in the first group.
Thanks, I made that change. But why did you need to escape the @
character? It isn't a special character in Emacs regular expressions,
AFAIK.
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#30208: M-x pdb breaks if certain characters are in the file's path
2018-01-26 10:20 ` Eli Zaretskii
@ 2018-01-26 16:35 ` Andreas Schwab
2018-01-26 19:02 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Andreas Schwab @ 2018-01-26 16:35 UTC (permalink / raw)
To: 30208; +Cc: Robin.Allen
On Jan 26 2018, Eli Zaretskii <eliz@gnu.org> wrote:
>> From: Robin Allen <Robin.Allen@artsalliancemedia.com>
>> Date: Mon, 22 Jan 2018 11:35:09 +0000
>>
>> WORKAROUND
>> This is caused by GUD choking on the @ character in the file path. I worked around it by putting this in .emacs:
>> (setq gud-pdb-marker-regexp
>> "^> \\([-a-zA-Z0-9_/.:\\@ ]*\\|<string>\\)(\\([0-9]+\\))\\([a-zA-Z0-9_]*\\|\\?\\|<module>\\)()\\(->[^\n\r]*\\)?[\n\r]")
>>
>> This is the default value, with @ (and space, for good measure) inserted in the first group.
>
> Thanks, I made that change. But why did you need to escape the @
> character? It isn't a special character in Emacs regular expressions,
> AFAIK.
@ isn't escaped, it just happends to follow \ in the set of characters.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#30208: M-x pdb breaks if certain characters are in the file's path
2018-01-26 16:35 ` Andreas Schwab
@ 2018-01-26 19:02 ` Eli Zaretskii
0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2018-01-26 19:02 UTC (permalink / raw)
To: Andreas Schwab; +Cc: Robin.Allen, 30208
> From: Andreas Schwab <schwab@linux-m68k.org>
> Cc: eliz@gnu.org, Robin.Allen@artsalliancemedia.com
> Date: Fri, 26 Jan 2018 17:35:48 +0100
>
> >> "^> \\([-a-zA-Z0-9_/.:\\@ ]*\\|<string>\\)(\\([0-9]+\\))\\([a-zA-Z0-9_]*\\|\\?\\|<module>\\)()\\(->[^\n\r]*\\)?[\n\r]")
> >>
> >> This is the default value, with @ (and space, for good measure) inserted in the first group.
> >
> > Thanks, I made that change. But why did you need to escape the @
> > character? It isn't a special character in Emacs regular expressions,
> > AFAIK.
>
> @ isn't escaped, it just happends to follow \ in the set of characters.
Right.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-01-26 19:02 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-22 11:35 bug#30208: M-x pdb breaks if certain characters are in the file's path Robin Allen
2018-01-26 10:20 ` Eli Zaretskii
2018-01-26 16:35 ` Andreas Schwab
2018-01-26 19:02 ` Eli Zaretskii
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).