<feed xmlns='http://www.w3.org/2005/Atom'>
<title>transient.git/docs/transient.org, branch v0.9.2</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/'/>
<entry>
<title>Release version 0.9.2</title>
<updated>2025-06-09T16:09:16+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-06-09T16:09:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=f3f498aa155f88c7e2ab6d1d01d1361813059db8'/>
<id>f3f498aa155f88c7e2ab6d1d01d1361813059db8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>manual: Mention transient-copy-menu-text in relevant FAQ</title>
<updated>2025-06-06T21:07:38+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-06-06T21:07:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=13daf473d5080b91bc37f40e0f3b566738707914'/>
<id>13daf473d5080b91bc37f40e0f3b566738707914</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Release version 0.9.1</title>
<updated>2025-06-03T09:18:35+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-06-03T09:18:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=7937e57e29b5f3ee6f871e67e69a1fb20f353c38'/>
<id>7937e57e29b5f3ee6f871e67e69a1fb20f353c38</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Release version 0.9.0</title>
<updated>2025-06-01T10:19:46+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-06-01T10:19:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=ef28fbe24d43760925f0143e009bc81a20b025e3'/>
<id>ef28fbe24d43760925f0143e009bc81a20b025e3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>manual: Omit LEVEL in transient-information example</title>
<updated>2025-05-26T17:28:38+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-05-26T17:28:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=df5856bb960933c91ec391de79f75ecd2cb55e52'/>
<id>df5856bb960933c91ec391de79f75ecd2cb55e52</id>
<content type='text'>
Positional LEVEL is semi-deprecated.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Positional LEVEL is semi-deprecated.
</pre>
</div>
</content>
</entry>
<entry>
<title>transient-cons-option: New suffix class for non-cmdline options</title>
<updated>2025-05-26T17:28:35+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-05-26T17:28:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=81727bacfce91a119c840d08ac6da92cb6af91c4'/>
<id>81727bacfce91a119c840d08ac6da92cb6af91c4</id>
<content type='text'>
The existing `transient-option' class is suitable for options passed to
commands.  A suffix that uses that class may represent an argument such
as "--option".  In the list returned by `transient-args', that argument
and its value, "value", is represented as one element "--option=value".

For "options" that are not passed to a command that is not appropriate.
A caller that wants to extract the value of such an option would have
to parse that string.  `transient-arg-value' can help with that, but it
always returns a string (or nil).

The new `transient-cons-option' class provides a more direct way to deal
with "non-command-line options", by representing the key value pair
using a cons-cell (ARGUMENT . VALUE), not just internally, but in
particular when handing it of to a caller.  VALUE can have any printable
type and ARGUMENT can have any printable type, expect string.

We cannot use the term "key" because that is already used to the key
binding for the command.  Also avoid using "property" because that
implies a property list, while the value returned by `transient-args'
is an alist when all infixes use the `transient-cons-options' class.
Sticking to "argument" also has the advantage, that we don't have to
implement or generalize a dozen methods.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The existing `transient-option' class is suitable for options passed to
commands.  A suffix that uses that class may represent an argument such
as "--option".  In the list returned by `transient-args', that argument
and its value, "value", is represented as one element "--option=value".

For "options" that are not passed to a command that is not appropriate.
A caller that wants to extract the value of such an option would have
to parse that string.  `transient-arg-value' can help with that, but it
always returns a string (or nil).

The new `transient-cons-option' class provides a more direct way to deal
with "non-command-line options", by representing the key value pair
using a cons-cell (ARGUMENT . VALUE), not just internally, but in
particular when handing it of to a caller.  VALUE can have any printable
type and ARGUMENT can have any printable type, expect string.

We cannot use the term "key" because that is already used to the key
binding for the command.  Also avoid using "property" because that
implies a property list, while the value returned by `transient-args'
is an alist when all infixes use the `transient-cons-options' class.
Sticking to "argument" also has the advantage, that we don't have to
implement or generalize a dozen methods.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update manual</title>
<updated>2025-05-16T07:41:02+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-05-16T07:41:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=696b7efda21336f7225e970e692ac404bf535774'/>
<id>696b7efda21336f7225e970e692ac404bf535774</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Require all key bindings to be specified as key descriptions</title>
<updated>2025-05-16T07:40:42+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-05-16T07:40:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=c4e0cba65663b0a2dacd8531e779f2c09f778267'/>
<id>c4e0cba65663b0a2dacd8531e779f2c09f778267</id>
<content type='text'>
No longer support vectors.  This change isn't backward compatible but
I haven't seen a vector being used even just once.

It also makes sense to take inspiration from `keymap-set' et al., which
didn't exist when Transient was created.

However, we continue to be more permissive than those functions, only
insisting on strings understood by `kbd', including strings that do not
satisfy `key-valid-p'.  Being more permissive makes it possible, for
example, to write the key binding, which toggles the "-a" command line
argument, as "-a", instead of having to write "- a".  Likewise
additional spaces can be added, which are not removed when displaying
the binding in the menu, which is useful for alignment purposes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No longer support vectors.  This change isn't backward compatible but
I haven't seen a vector being used even just once.

It also makes sense to take inspiration from `keymap-set' et al., which
didn't exist when Transient was created.

However, we continue to be more permissive than those functions, only
insisting on strings understood by `kbd', including strings that do not
satisfy `key-valid-p'.  Being more permissive makes it possible, for
example, to write the key binding, which toggles the "-a" command line
argument, as "-a", instead of having to write "- a".  Likewise
additional spaces can be added, which are not removed when displaying
the binding in the menu, which is useful for alignment purposes.
</pre>
</div>
</content>
</entry>
<entry>
<title>Release version 0.8.8</title>
<updated>2025-05-01T08:46:51+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-05-01T08:46:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=25b994a565ce8035330b0a3071ee430c0282349e'/>
<id>25b994a565ce8035330b0a3071ee430c0282349e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Reduce usage of the term "popup"</title>
<updated>2025-04-18T21:49:28+00:00</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2025-04-18T21:49:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/transient.git/commit/?id=16e47e5773540bfc2493a8bee91ac77a0f89e931'/>
<id>16e47e5773540bfc2493a8bee91ac77a0f89e931</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
