文件
mynode/readme/cla/consent_records/axsaucedo_1447507.json
chen 301194963b
一些检查失败了
automerge / automerge (push) Has been cancelled
react-native-android-build-apk / AssembleRelease (push) Has been cancelled
Build macOS M1 / Main (push) Has been cancelled
Joplin Continuous Integration / Main (macos-15-intel) (push) Has been cancelled
Joplin Continuous Integration / Main (ubuntu-22.04) (push) Has been cancelled
Joplin Continuous Integration / Main (ubuntu-22.04-arm) (push) Has been cancelled
Joplin Continuous Integration / Main (windows-11-vs2026-arm) (push) Has been cancelled
Joplin Continuous Integration / Main (windows-2025) (push) Has been cancelled
Joplin Continuous Integration / ServerDockerImage (ubuntu-22.04) (push) Has been cancelled
Joplin Continuous Integration / ServerDockerImage (ubuntu-22.04-arm) (push) Has been cancelled
Joplin UI tests / Main (ubuntu-22.04) (push) Has been cancelled
Joplin UI tests / Main (windows-2025) (push) Has been cancelled
Joplin UI tests / Mobile (push) Has been cancelled
Close stale issues / ProcessStaleIssues (push) Has been cancelled
feat: Initial clean release of CHM
2026-11-04 11:29:39 +08:00

507 行
29 KiB
JSON

{
"issue": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"repository_url": "https://api.github.com/repos/laurent22/joplin",
"labels_url": "https://api.github.com/repos/laurent22/joplin/issues/13984/labels{/name}",
"comments_url": "https://api.github.com/repos/laurent22/joplin/issues/13984/comments",
"events_url": "https://api.github.com/repos/laurent22/joplin/issues/13984/events",
"html_url": "https://github.com/laurent22/joplin/pull/13984",
"id": 3760169842,
"node_id": "PR_kwDOBLftOs66eQiH",
"number": 13984,
"title": "Cli: Added keymap command to print existing keybinds in CLI and TUI",
"user": {
"login": "axsaucedo",
"id": 1447507,
"node_id": "MDQ6VXNlcjE0NDc1MDc=",
"avatar_url": "https://avatars.githubusercontent.com/u/1447507?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/axsaucedo",
"html_url": "https://github.com/axsaucedo",
"followers_url": "https://api.github.com/users/axsaucedo/followers",
"following_url": "https://api.github.com/users/axsaucedo/following{/other_user}",
"gists_url": "https://api.github.com/users/axsaucedo/gists{/gist_id}",
"starred_url": "https://api.github.com/users/axsaucedo/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/axsaucedo/subscriptions",
"organizations_url": "https://api.github.com/users/axsaucedo/orgs",
"repos_url": "https://api.github.com/users/axsaucedo/repos",
"events_url": "https://api.github.com/users/axsaucedo/events{/privacy}",
"received_events_url": "https://api.github.com/users/axsaucedo/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"labels": [
{
"id": 1095621255,
"node_id": "MDU6TGFiZWwxMDk1NjIxMjU1",
"url": "https://api.github.com/repos/laurent22/joplin/labels/cli",
"name": "cli",
"color": "ffc274",
"default": false,
"description": "CLI app specific issue"
}
],
"state": "closed",
"locked": false,
"assignees": [],
"milestone": null,
"comments": 7,
"created_at": "2025-12-24T12:10:18Z",
"updated_at": "2026-01-07T13:17:32Z",
"closed_at": "2026-01-07T11:56:06Z",
"assignee": null,
"author_association": "CONTRIBUTOR",
"active_lock_reason": null,
"draft": false,
"pull_request": {
"url": "https://api.github.com/repos/laurent22/joplin/pulls/13984",
"html_url": "https://github.com/laurent22/joplin/pull/13984",
"diff_url": "https://github.com/laurent22/joplin/pull/13984.diff",
"patch_url": "https://github.com/laurent22/joplin/pull/13984.patch",
"merged_at": "2026-01-07T11:56:06Z"
},
"body": "# feat: added keymap command to print existing keybinds in CLI and TUI\r\n\r\nAs a terminal UI power user, I often forget some of the keymaps / keybindings configured.\r\n\r\nThis PR adds a simple command that configures a new command to print the keybindings.\r\n\r\nThis pretty-prints the configured keybinds; it's main use is in the TUI but it's also made available in the CLI (this can be removed if relevant).\r\n\r\nCurrently I didn't add a test as the functionality would be mostly duplicated, however happy to add an extra test as required.\r\n\r\n**All tests pass locally**.\r\n\r\n## Functionality - CLI\r\n\r\nRun the command directly (from `packages/app-cli`) as:\r\n\r\n```\r\n> node build/main.js keybind\r\n```\r\n\r\nOutput expected:\r\n\r\n```\r\nConfigured keyboard shortcuts:\r\n\r\n KEYS TYPE COMMAND\r\n ---- ---- -------\r\n : function enter_command_line_mode\r\n TAB, l function focus_next\r\n SHIFT_TAB, h function focus_previous\r\n UP, k function move_up\r\n DOWN, j function move_down\r\n PAGE_UP, K, gg function page_up\r\n PAGE_DOWN, J, G function page_down\r\n ENTER function activate\r\n DELETE, BACKSPACE, dd function delete\r\n n function next_link\r\n b function previous_link\r\n o function open_link\r\n tt todo toggle $n\r\n tc function toggle_console\r\n tm function toggle_metadata\r\n ti function toggle_ids\r\n r prompt restore $n\r\n / prompt search \"\"\r\n mn prompt mknote \"\"\r\n mt prompt mktodo \"\"\r\n mb prompt mkbook \"\"\r\n yy prompt cp $n \"\"\r\n cc prompt mv $n \"\"\r\n z function toggle_folder_collapse\r\n q prompt exit\r\n w sync\r\n mg prompt tag add \"\" $n\r\n oR config notes.sortOrder.reverse \"true\"\r\n or config notes.sortOrder.reverse \"false\"\r\n ot config notes.sortOrder.field \"title\"\r\n oc config notes.sortOrder.field \"user_created_time\"\r\n ou config notes.sortOrder.field \"user_updated_time\"\r\n nt tag notetags $n\r\n ns prompt status\r\n tu todo clear $n\r\n mm prompt ren $n \"\"\r\n```\r\n\r\n## Functionality - TUI\r\n\r\nRun command from command prompt.\r\n\r\n```\r\n:keybinds\r\n```\r\n\r\nSame output expected.\r\n\r\n# Proposed Alternative\r\n\r\nAs part of the implementation I was able to implement it using a modal popup which seems could be the preferred option as it allows for simple scrolling, the required changes are outlined below. \r\n\r\nI haven't added it as it would require extra changes in app-gui.ts, which seem quite minimal but do seem to add new expected behaviour, so I will await for feedback as always simpler is better (+ can always iterate from baseline)\r\n\r\n```diff\r\ndiff --git a/packages/app-cli/app/command-keymaps.ts b/packages/app-cli/app/command-keymaps.ts\r\nindex c172cd7ef..668d23f6c 100644\r\n--- a/packages/app-cli/app/command-keymaps.ts\r\n+++ b/packages/app-cli/app/command-keymaps.ts\r\n@@ -19,9 +19,6 @@ class Command extends BaseCommand {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied\r\n public override async action(_args: any) {\r\n const keymaps = await app().loadKeymaps();\r\n-\r\n- this.stdout(_('Configured keyboard shortcuts:\\n'));\r\n-\r\n const rows = [];\r\n const padding = ' ';\r\n\r\n@@ -35,11 +32,17 @@ class Command extends BaseCommand {\r\n rows.push([padding + formattedKeys, item.type, item.command]);\r\n }\r\n\r\n- cliUtils.printArray(this.stdout.bind(this), rows, rows);\r\n+ const lines = [_('Configured keyboard shortcuts:\\n\\n')];\r\n+ cliUtils.printArray((line: string) => lines.concat(line), rows);\r\n+ const text = lines.join('\\n');\r\n\r\n if (app().gui() && !app().gui().isDummy()) {\r\n- app().gui().showConsole();\r\n- app().gui().maximizeConsole();\r\n+ // Show in scrollable modal in TUI mode\r\n+ app().gui().showModalOverlay(text);\r\n+ await app().gui().forceRender();\r\n+ } else {\r\n+ // Show as table in console in CLI mode\r\n+ this.stdout(text);\r\n }\r\n }\r\n }\r\n```\r\n\r\n```diff\r\ndiff --git a/packages/app-cli/app/app-gui.js b/packages/app-cli/app/app-gui.js\r\nindex 444b2b027..7bd3b0096 100644\r\n--- a/packages/app-cli/app/app-gui.js\r\n+++ b/packages/app-cli/app/app-gui.js\r\n@@ -748,6 +748,14 @@ class AppGui {\r\n // Handle special shortcuts\r\n // -------------------------------------------------------------------------\r\n\r\n+ // Close modal overlay on ESC\r\n+ if (name === 'ESCAPE') {\r\n+ if (this.widget('overlayWindow') && this.widget('overlayWindow').visible) {\r\n+ this.hideModalOverlay();\r\n+ return;\r\n+ }\r\n+ }\r\n+\r\n if (name === 'CTRL_D') {\r\n const cmd = this.app().currentCommand();\r\n\r\n```",
"closed_by": {
"login": "laurent22",
"id": 1285584,
"node_id": "MDQ6VXNlcjEyODU1ODQ=",
"avatar_url": "https://avatars.githubusercontent.com/u/1285584?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/laurent22",
"html_url": "https://github.com/laurent22",
"followers_url": "https://api.github.com/users/laurent22/followers",
"following_url": "https://api.github.com/users/laurent22/following{/other_user}",
"gists_url": "https://api.github.com/users/laurent22/gists{/gist_id}",
"starred_url": "https://api.github.com/users/laurent22/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/laurent22/subscriptions",
"organizations_url": "https://api.github.com/users/laurent22/orgs",
"repos_url": "https://api.github.com/users/laurent22/repos",
"events_url": "https://api.github.com/users/laurent22/events{/privacy}",
"received_events_url": "https://api.github.com/users/laurent22/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/13984/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"timeline_url": "https://api.github.com/repos/laurent22/joplin/issues/13984/timeline",
"performed_via_github_app": null,
"state_reason": null
},
"comments": [
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689619160",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3689619160",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3689619160,
"node_id": "IC_kwDOBLftOs7b6x7Y",
"user": {
"login": "github-actions[bot]",
"id": 41898282,
"node_id": "MDM6Qm90NDE4OTgyODI=",
"avatar_url": "https://avatars.githubusercontent.com/in/15368?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/github-actions%5Bbot%5D",
"html_url": "https://github.com/apps/github-actions",
"followers_url": "https://api.github.com/users/github-actions%5Bbot%5D/followers",
"following_url": "https://api.github.com/users/github-actions%5Bbot%5D/following{/other_user}",
"gists_url": "https://api.github.com/users/github-actions%5Bbot%5D/gists{/gist_id}",
"starred_url": "https://api.github.com/users/github-actions%5Bbot%5D/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/github-actions%5Bbot%5D/subscriptions",
"organizations_url": "https://api.github.com/users/github-actions%5Bbot%5D/orgs",
"repos_url": "https://api.github.com/users/github-actions%5Bbot%5D/repos",
"events_url": "https://api.github.com/users/github-actions%5Bbot%5D/events{/privacy}",
"received_events_url": "https://api.github.com/users/github-actions%5Bbot%5D/received_events",
"type": "Bot",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2025-12-24T12:10:29Z",
"updated_at": "2026-01-07T13:17:32Z",
"body": "****CLA Assistant Lite bot**** All contributors have signed the CLA ✍️ ✅",
"author_association": "CONTRIBUTOR",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689619160/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": {
"id": 15368,
"client_id": "Iv1.05c79e9ad1f6bdfa",
"slug": "github-actions",
"node_id": "MDM6QXBwMTUzNjg=",
"owner": {
"login": "github",
"id": 9919,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=",
"avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/github",
"html_url": "https://github.com/github",
"followers_url": "https://api.github.com/users/github/followers",
"following_url": "https://api.github.com/users/github/following{/other_user}",
"gists_url": "https://api.github.com/users/github/gists{/gist_id}",
"starred_url": "https://api.github.com/users/github/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/github/subscriptions",
"organizations_url": "https://api.github.com/users/github/orgs",
"repos_url": "https://api.github.com/users/github/repos",
"events_url": "https://api.github.com/users/github/events{/privacy}",
"received_events_url": "https://api.github.com/users/github/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"name": "GitHub Actions",
"description": "Automate your workflow from idea to production",
"external_url": "https://help.github.com/en/actions",
"html_url": "https://github.com/apps/github-actions",
"created_at": "2018-07-30T09:30:17Z",
"updated_at": "2026-05-05T14:51:38Z",
"permissions": {
"actions": "write",
"administration": "read",
"artifact_metadata": "write",
"attestations": "write",
"checks": "write",
"code_quality": "write",
"contents": "write",
"copilot_requests": "write",
"deployments": "write",
"discussions": "write",
"issues": "write",
"merge_queues": "write",
"metadata": "read",
"models": "read",
"packages": "write",
"pages": "write",
"pull_requests": "write",
"repository_hooks": "write",
"repository_projects": "write",
"security_events": "write",
"statuses": "write",
"vulnerability_alerts": "read"
},
"events": [
"branch_protection_rule",
"check_run",
"check_suite",
"create",
"delete",
"deployment",
"deployment_status",
"discussion",
"discussion_comment",
"fork",
"gollum",
"issues",
"issue_comment",
"label",
"merge_group",
"milestone",
"page_build",
"public",
"pull_request",
"pull_request_review",
"pull_request_review_comment",
"push",
"registry_package",
"release",
"repository",
"repository_dispatch",
"status",
"watch",
"workflow_dispatch",
"workflow_run"
]
}
},
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689702149",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3689702149",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3689702149,
"node_id": "IC_kwDOBLftOs7b7GMF",
"user": {
"login": "axsaucedo",
"id": 1447507,
"node_id": "MDQ6VXNlcjE0NDc1MDc=",
"avatar_url": "https://avatars.githubusercontent.com/u/1447507?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/axsaucedo",
"html_url": "https://github.com/axsaucedo",
"followers_url": "https://api.github.com/users/axsaucedo/followers",
"following_url": "https://api.github.com/users/axsaucedo/following{/other_user}",
"gists_url": "https://api.github.com/users/axsaucedo/gists{/gist_id}",
"starred_url": "https://api.github.com/users/axsaucedo/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/axsaucedo/subscriptions",
"organizations_url": "https://api.github.com/users/axsaucedo/orgs",
"repos_url": "https://api.github.com/users/axsaucedo/repos",
"events_url": "https://api.github.com/users/axsaucedo/events{/privacy}",
"received_events_url": "https://api.github.com/users/axsaucedo/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2025-12-24T12:42:20Z",
"updated_at": "2025-12-24T12:42:20Z",
"body": "# Proposed Alternative\r\n\r\nAs part of the implementation I was able to implement it using a modal popup which seems could be the preferred option as it allows for simple scrolling, the required changes are outlined below. \r\n\r\nI haven't added it as it would require extra changes in app-gui.ts, which seem quite minimal but do seem to add new expected behaviour, so I will await for feedback as always simpler is better (+ can always iterate from baseline)\r\n\r\n```diff\r\ndiff --git a/packages/app-cli/app/command-keymaps.ts b/packages/app-cli/app/command-keymaps.ts\r\nindex c172cd7ef..668d23f6c 100644\r\n--- a/packages/app-cli/app/command-keymaps.ts\r\n+++ b/packages/app-cli/app/command-keymaps.ts\r\n@@ -19,9 +19,6 @@ class Command extends BaseCommand {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- Old code before rule was applied\r\n public override async action(_args: any) {\r\n const keymaps = await app().loadKeymaps();\r\n-\r\n- this.stdout(_('Configured keyboard shortcuts:\\n'));\r\n-\r\n const rows = [];\r\n const padding = ' ';\r\n\r\n@@ -35,11 +32,17 @@ class Command extends BaseCommand {\r\n rows.push([padding + formattedKeys, item.type, item.command]);\r\n }\r\n\r\n- cliUtils.printArray(this.stdout.bind(this), rows, rows);\r\n+ const lines = [_('Configured keyboard shortcuts:\\n\\n')];\r\n+ cliUtils.printArray((line: string) => lines.concat(line), rows);\r\n+ const text = lines.join('\\n');\r\n\r\n if (app().gui() && !app().gui().isDummy()) {\r\n- app().gui().showConsole();\r\n- app().gui().maximizeConsole();\r\n+ // Show in scrollable modal in TUI mode\r\n+ app().gui().showModalOverlay(text);\r\n+ await app().gui().forceRender();\r\n+ } else {\r\n+ // Show as table in console in CLI mode\r\n+ this.stdout(text);\r\n }\r\n }\r\n }\r\n```\r\n\r\n```diff\r\ndiff --git a/packages/app-cli/app/app-gui.js b/packages/app-cli/app/app-gui.js\r\nindex 444b2b027..7bd3b0096 100644\r\n--- a/packages/app-cli/app/app-gui.js\r\n+++ b/packages/app-cli/app/app-gui.js\r\n@@ -748,6 +748,14 @@ class AppGui {\r\n // Handle special shortcuts\r\n // -------------------------------------------------------------------------\r\n\r\n+ // Close modal overlay on ESC\r\n+ if (name === 'ESCAPE') {\r\n+ if (this.widget('overlayWindow') && this.widget('overlayWindow').visible) {\r\n+ this.hideModalOverlay();\r\n+ return;\r\n+ }\r\n+ }\r\n+\r\n if (name === 'CTRL_D') {\r\n const cmd = this.app().currentCommand();\r\n\r\n```",
"author_association": "CONTRIBUTOR",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689702149/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": null
},
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689702933",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3689702933",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3689702933,
"node_id": "IC_kwDOBLftOs7b7GYV",
"user": {
"login": "axsaucedo",
"id": 1447507,
"node_id": "MDQ6VXNlcjE0NDc1MDc=",
"avatar_url": "https://avatars.githubusercontent.com/u/1447507?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/axsaucedo",
"html_url": "https://github.com/axsaucedo",
"followers_url": "https://api.github.com/users/axsaucedo/followers",
"following_url": "https://api.github.com/users/axsaucedo/following{/other_user}",
"gists_url": "https://api.github.com/users/axsaucedo/gists{/gist_id}",
"starred_url": "https://api.github.com/users/axsaucedo/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/axsaucedo/subscriptions",
"organizations_url": "https://api.github.com/users/axsaucedo/orgs",
"repos_url": "https://api.github.com/users/axsaucedo/repos",
"events_url": "https://api.github.com/users/axsaucedo/events{/privacy}",
"received_events_url": "https://api.github.com/users/axsaucedo/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2025-12-24T12:42:45Z",
"updated_at": "2025-12-24T12:42:45Z",
"body": "I have read the CLA Document and I hereby sign the CLA",
"author_association": "CONTRIBUTOR",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689702933/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": null
},
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689703433",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3689703433",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3689703433,
"node_id": "IC_kwDOBLftOs7b7GgJ",
"user": {
"login": "axsaucedo",
"id": 1447507,
"node_id": "MDQ6VXNlcjE0NDc1MDc=",
"avatar_url": "https://avatars.githubusercontent.com/u/1447507?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/axsaucedo",
"html_url": "https://github.com/axsaucedo",
"followers_url": "https://api.github.com/users/axsaucedo/followers",
"following_url": "https://api.github.com/users/axsaucedo/following{/other_user}",
"gists_url": "https://api.github.com/users/axsaucedo/gists{/gist_id}",
"starred_url": "https://api.github.com/users/axsaucedo/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/axsaucedo/subscriptions",
"organizations_url": "https://api.github.com/users/axsaucedo/orgs",
"repos_url": "https://api.github.com/users/axsaucedo/repos",
"events_url": "https://api.github.com/users/axsaucedo/events{/privacy}",
"received_events_url": "https://api.github.com/users/axsaucedo/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2025-12-24T12:42:58Z",
"updated_at": "2025-12-24T12:42:58Z",
"body": "recheck",
"author_association": "CONTRIBUTOR",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3689703433/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": null
},
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3697524185",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3697524185",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3697524185,
"node_id": "IC_kwDOBLftOs7cY73Z",
"user": {
"login": "axsaucedo",
"id": 1447507,
"node_id": "MDQ6VXNlcjE0NDc1MDc=",
"avatar_url": "https://avatars.githubusercontent.com/u/1447507?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/axsaucedo",
"html_url": "https://github.com/axsaucedo",
"followers_url": "https://api.github.com/users/axsaucedo/followers",
"following_url": "https://api.github.com/users/axsaucedo/following{/other_user}",
"gists_url": "https://api.github.com/users/axsaucedo/gists{/gist_id}",
"starred_url": "https://api.github.com/users/axsaucedo/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/axsaucedo/subscriptions",
"organizations_url": "https://api.github.com/users/axsaucedo/orgs",
"repos_url": "https://api.github.com/users/axsaucedo/repos",
"events_url": "https://api.github.com/users/axsaucedo/events{/privacy}",
"received_events_url": "https://api.github.com/users/axsaucedo/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2025-12-29T20:54:03Z",
"updated_at": "2025-12-29T20:54:03Z",
"body": "Thank you @personalizedrefrigerator - all updated as requested, let me know if any further changes required",
"author_association": "CONTRIBUTOR",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3697524185/reactions",
"total_count": 1,
"+1": 1,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": null
},
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3707882692",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3707882692",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3707882692,
"node_id": "IC_kwDOBLftOs7dAczE",
"user": {
"login": "axsaucedo",
"id": 1447507,
"node_id": "MDQ6VXNlcjE0NDc1MDc=",
"avatar_url": "https://avatars.githubusercontent.com/u/1447507?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/axsaucedo",
"html_url": "https://github.com/axsaucedo",
"followers_url": "https://api.github.com/users/axsaucedo/followers",
"following_url": "https://api.github.com/users/axsaucedo/following{/other_user}",
"gists_url": "https://api.github.com/users/axsaucedo/gists{/gist_id}",
"starred_url": "https://api.github.com/users/axsaucedo/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/axsaucedo/subscriptions",
"organizations_url": "https://api.github.com/users/axsaucedo/orgs",
"repos_url": "https://api.github.com/users/axsaucedo/repos",
"events_url": "https://api.github.com/users/axsaucedo/events{/privacy}",
"received_events_url": "https://api.github.com/users/axsaucedo/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2026-01-04T08:56:28Z",
"updated_at": "2026-01-04T08:56:28Z",
"body": "I have now updated the PR - let me know your thoughts! Happy to update accordingly. Also let me know your thoughts on the suggestion above on different approach as well. ",
"author_association": "CONTRIBUTOR",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3707882692/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": null
},
{
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3718535615",
"html_url": "https://github.com/laurent22/joplin/pull/13984#issuecomment-3718535615",
"issue_url": "https://api.github.com/repos/laurent22/joplin/issues/13984",
"id": 3718535615,
"node_id": "IC_kwDOBLftOs7dpFm_",
"user": {
"login": "laurent22",
"id": 1285584,
"node_id": "MDQ6VXNlcjEyODU1ODQ=",
"avatar_url": "https://avatars.githubusercontent.com/u/1285584?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/laurent22",
"html_url": "https://github.com/laurent22",
"followers_url": "https://api.github.com/users/laurent22/followers",
"following_url": "https://api.github.com/users/laurent22/following{/other_user}",
"gists_url": "https://api.github.com/users/laurent22/gists{/gist_id}",
"starred_url": "https://api.github.com/users/laurent22/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/laurent22/subscriptions",
"organizations_url": "https://api.github.com/users/laurent22/orgs",
"repos_url": "https://api.github.com/users/laurent22/repos",
"events_url": "https://api.github.com/users/laurent22/events{/privacy}",
"received_events_url": "https://api.github.com/users/laurent22/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"created_at": "2026-01-07T11:56:02Z",
"updated_at": "2026-01-07T11:56:02Z",
"body": "That looks good to me, thank you @axsaucedo for implementing this and thank you @personalizedrefrigerator for reviewing!",
"author_association": "OWNER",
"reactions": {
"url": "https://api.github.com/repos/laurent22/joplin/issues/comments/3718535615/reactions",
"total_count": 0,
"+1": 0,
"-1": 0,
"laugh": 0,
"hooray": 0,
"confused": 0,
"heart": 0,
"rocket": 0,
"eyes": 0
},
"performed_via_github_app": null
}
]
}