Skip to content

v2.10.0

Choose a tag to compare

@github-actions github-actions released this 27 Jul 02:34
· 36 commits to main since this release

Two releases in one: v2.9.0 was never published, so everything from it is included here.

Emoji finally come out the same size

Discord draws an image attachment at its native pixel size, so a library holding a 20×20 GIF next to a 1080×1078 PNG pasted one as a speck and the other as a full picture — nothing like a real custom emoji, which is always the same size.

Notro now normalizes the longest edge just before pasting: 48 px for emoji (the size of a jumbo custom emoji), 160 px for stickers, original size for GIFs. Configurable per tab in picker settings (⚙), "Original" included. Animated GIFs keep every frame and their timing, resized copies are cached so re-pasting doesn't re-encode, and your library files are never modified — only the copy that goes on the clipboard.

Picker

  • Korean initial-consonant search — typing ㅁㅋ finds 미쿠. Plain queries behave exactly as before.
  • Keyboard navigation — arrow keys move through the grid, Enter pastes the highlighted item. No mouse needed after the hotkey.
  • Register an emoji from its message text — paste <:name:id> or <a:name:id>, not just a "Copy Link" URL. The emoji's own name becomes the item name.
  • Rename items and edit keywords from the right-click menu.
  • Duplicate registrations are refused instead of piling up — per tab and collection, so keeping the same picture in two places still works.
  • The picker window can be resized and remembers its size.
  • Optional auto-send after pasting (off by default).

Video

  • Trim a clip and drop its audio before compressing. The confirm window takes a start – end range (mm:ss) and a Drop audio checkbox, and the estimate updates as you type. The same 10 MB budget spent on a shorter clip buys a much better picture: a 30-second 1080p60 capture that falls back to 1080p30 for the whole clip stays at 1080p60 when trimmed to seven seconds.

Fixed

  • Files whose extension lies about their format are stored correctly — a .gif holding a still PNG used to claim it was animated and was served with the wrong MIME type.
  • The temp folder is cleaned up again. cleanup_temp() wrapped its whole loop in one try, so the updater's update directory aborted the sweep and left every later file in place forever.

⚠️ The EXE is unsigned, so SmartScreen may warn. Click More info → Run anyway.

Full Changelog: v2.8.0...v2.10.0