You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(chat): follow URLs on RET even when wrapped in emphasis
A bare URL wrapped in markdown emphasis like **https://...** is
fontified with a list face (markdown-plain-url-face plus the bold
face), so the eq check in eca-chat--key-pressed-return missed it and
RET did nothing. thing-at-point also pulls in the trailing ** since
asterisks are valid URL chars.
Detect link/url faces via membership (works for a symbol or a list)
and strip surrounding * _ ~ ` markers before browse-url. Proper
[text](url) links still go through markdown-follow-thing-at-point.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,7 @@
3
3
## Unreleased
4
4
5
5
- Add `eca-chat-delete` command to delete the active chat from the server without prompting. Works from any buffer in the project (acts on the session's last visited chat), switches the chat window to another chat first when one exists, and is bound to `C-c C-S-k` plus a `Delete` entry in the transient menu.
6
+
- Bugfix: pressing `RET` on a URL in the chat now opens it even when the URL is wrapped in markdown emphasis like `**https://...**` or `_https://..._`. The face at point is a list in that case, so the old `eq` check missed it; the trailing `**`/`_` markers are also stripped so the right URL opens. Proper `[text](url)` links still go through `markdown-follow-thing-at-point`.
6
7
- Bugfix: switching chat tabs via `tab-line-switch-to-next-tab`/`tab-line-switch-to-prev-tab` or clicking a tab now switches the chat in place instead of opening it in a new window.
7
8
- Bugfix: trigger `@`/`#` chat completion even when a char like `(` immediately precedes it.
8
9
- Bugfix: don't crash with `(wrong-type-argument stringp nil)` when `chat/askQuestion` sends options as plain strings or option objects without a `:label`. Options are normalized via `eca-chat--normalize-question-option` (string or plist) and the label always falls back to a non-nil string.
0 commit comments