From: Mauro Aranda <maurooaranda@gmail.com>
To: Daniel Pettersson <daniel@dpettersson.net>, emacs-devel@gnu.org
Subject: Re: [ELPA] New package: dape
Date: Sun, 15 Oct 2023 10:55:37 -0300 [thread overview]
Message-ID: <d41b5330-17d1-4362-878b-51c2918b0c16@gmail.com> (raw)
In-Reply-To: <CAM-j=qtkFwnDWJp2t50UoxmVG3kH5ksMYbPfkqwp6xroJqKbKg@mail.gmail.com>
On 13/10/23 07:35, Daniel Pettersson wrote:
I have some comments about the defcustoms in dape.el:
> (defcustom dape-configs nil
> "This variable holds the Dape configurations as an alist.
> In this alist, the car element serves as a symbol identifying each
> configuration. Each configuration, in turn, is a property list (plist)
> where keys can be symbols or keywords.
>
> Symbol Keys (Used by Dape):
> - command: Shell command to initiate the debug adapter.
> - command-args: List of string arguments for the command.
> - command-cwd: Working directory for the command.
> - host: Host of the debug adapter.
> - port: Port of the debug adapter.
> - modes: List of modes where the configuration is active in `dape'
> completions.
> - compile: Executes a shell command with `dape-compile-fn'.
>
> Debug adapter connection in configuration:
> - If only command is specified (without host and port), Dape
> will communicate with the debug adapter through stdin/stdout.
> - If both host and port are specified, Dape will connect to the
> debug adapter. If `command is specified, Dape will wait until the
> command is initiated before it connects with host and port.
>
> Keywords in configuration:
> Keywords are transmitted to the adapter during the initialize and
> launch/attach requests. Refer to `json-serialize' for detailed
> information on how Dape serializes these keyword elements. Dape
> uses nil as false.
>
> Functions and symbols in configuration:
> If a value in a key is a function, the function's return value will
> replace the key's value before execution.
> If a value in a key is a symbol, the symbol will recursively resolve
> at runtime."
> :type '(alist :key-type (symbol :tag "Name")
> :value-type
> (plist :options
> (((const :tag "Shell command to start the
debug adapter" command) string)
> ((const :tag "List of string arguments for
command" command-args) (list string))
> ((const :tag "Working directory for command"
command-cwd) string)
> ((const :tag "Host of debug adapter" host)
string)
> ((const :tag "Port of debug adapter" port)
integer)
> ((const :tag "List of modes where config is
active in `dape' completions" modes) function)
> ((const :tag "Runs shell command with
`dape-compile-fn'" compile) function)
> (keyword sexp)))))
(keyword sexp) as the last :options looks really weird. Are you sure
that is the intention?
> (defcustom dape-key-prefix "\C-x\C-a"
> "Prefix of all dape commands."
> :type 'key-sequence)
If you're going to depend on 29.1, then perhaps it's better to use 'key,
since a decision was made to obsolete 'key-sequence. If something
doesn't work with 'key but works with 'key-sequence, then please report
it.
> (defcustom dape-buffers-on-start '(dape-info dape-repl)
> "Dape buffers to open when debugging starts."
> :type '(list (const dape-info) (const dape-repl)))
This doesn't allow for any customization at all when using Customize. I
think you want to use '(repeat function)
> (defcustom dape-main-functions '("main")
> "Functions to set breakpoints at startup if no other breakpoints
are set."
> :type '(list string))
I think you want (repeat string) here.
> (defcustom dape-read-memory-default-count 1024
> "The default count for `dape-read-memory'."
> :type '(integer))
Is natnum better suited here?
> (defcustom dape--debug-on
> '(io info error std-server)
> "Types of logs should be printed to *dape-debug*."
> :type '(list (const :tag "dap IO" io)
> (const :tag "info logging" info)
> (const :tag "error logging" error)
> (const :tag "dap tcp server stdout" std-server)))
Similar to dape-buffers-on-start.
next prev parent reply other threads:[~2023-10-15 13:55 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-13 10:35 [ELPA] New package: dape Daniel Pettersson
2023-10-13 12:24 ` Philip Kaludercic
2023-10-14 12:28 ` Daniel Pettersson
2023-10-14 14:54 ` Philip Kaludercic
2023-10-15 13:50 ` James Thomas
2023-10-15 14:12 ` Philip Kaludercic
2023-10-15 17:24 ` John Yates
2023-10-18 21:54 ` Daniel Pettersson
2023-10-19 2:08 ` Adam Porter
2023-10-19 10:52 ` Krister Schuchardt
2023-10-19 11:06 ` Dmitry Gutov
2023-10-20 14:53 ` John Yates
2023-11-01 19:13 ` Dmitry Gutov
2023-11-02 14:42 ` João Távora
2023-11-04 9:51 ` Daniel Pettersson
2023-11-04 10:00 ` Philip Kaludercic
2023-11-23 6:10 ` Philip Kaludercic
2023-12-05 8:41 ` Philip Kaludercic
2023-12-05 9:18 ` João Távora
2023-12-05 10:59 ` Philip Kaludercic
2023-12-05 11:29 ` João Távora
2023-12-06 3:57 ` Richard Stallman
2023-12-06 10:09 ` Daniel Pettersson
2023-12-06 12:30 ` Eli Zaretskii
2023-12-06 12:56 ` João Távora
2023-12-06 13:08 ` Eli Zaretskii
2023-12-06 13:38 ` João Távora
2023-12-06 17:00 ` Eli Zaretskii
2023-12-06 23:03 ` João Távora
2023-12-06 23:55 ` Daniel Pettersson
2023-12-07 7:13 ` Eli Zaretskii
2023-11-04 13:46 ` Adam Porter
2023-11-04 14:01 ` Eli Zaretskii
2023-11-04 14:24 ` Philip Kaludercic
2023-11-04 15:06 ` Adam Porter
2023-11-04 15:27 ` Philip Kaludercic
2023-11-04 14:53 ` Adam Porter
2023-11-04 15:14 ` Eli Zaretskii
2023-11-04 19:15 ` Adam Porter
2023-11-04 23:21 ` João Távora
2023-11-07 10:19 ` Daniel Pettersson
2023-11-07 10:40 ` João Távora
2023-11-08 8:31 ` Daniel Pettersson
2023-10-19 15:12 ` Philip Kaludercic
2023-10-19 17:50 ` Björn Bidar
2023-11-01 16:50 ` Philip Kaludercic
2023-10-15 13:55 ` Mauro Aranda [this message]
2023-10-17 20:39 ` Daniel Pettersson
2023-10-20 5:49 ` Milan Glacier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d41b5330-17d1-4362-878b-51c2918b0c16@gmail.com \
--to=maurooaranda@gmail.com \
--cc=daniel@dpettersson.net \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).