obsidian-translate

Translate text and entire notes in Obsidian

MIT License

Stars
90

Bot releases are visible (Hide)

obsidian-translate - 1.4.7 Latest Release

Published by github-actions[bot] 9 months ago

1.4.7

Features

  • Add quick action to clear both fields in the translation view (with hotkey available). Note: button for translation view is not added by default (add via Translation View Appearance Settings)

Changes

  • Improved support for custom OpenAI endpoints (#52)
  • Focus on Translation View opens a new view if none exists (#47)

Fixes

  • Service filtering not working properly (#55) (hotpatched into 1.4.6)
  • Fix Yandex using a deprecated API (#43)
  • Fix splitting length of translation input with non-Roman characters (#65)
  • Fix LingvaTranslate not having a split length
  • Fixed Validation tests not working properly

Developers

obsidian-translate - 1.4.6

Published by github-actions[bot] about 1 year ago

1.4.6

See also beta release 1.4.5 for the previously added changes.

Features

Changes

  • Global glossary setting is now applied to newly opened translation views

Fixes

  • Fanyi Yaidu is now fully supported (#42, massive thanks to @solitary-sails for PR #54 and various fixes)
    • Validation now completes correctly
    • Distinction is made between regular and premium-tier users
    • Languages are now the languages they're supposed to be
    • Support is added for online glossary (no support for direct glossary uploading like DeepL)
  • Lingva Translate did not preserve endlines correctly (#53, thanks @ksdavidc for the bug report)
  • HOTFIX: Prevent issue where your services would be incorrectly filtered on update (#55)
obsidian-translate - 1.4.5

Published by github-actions[bot] over 1 year ago

[BETA] 1.4.5

Please try out this release using the BRAT plugin. Set-up and installation can be found in this wiki.

Features

  • (EXPERIMENTAL) OpenAI translator (please see #52 & provide feedback)
  • Service-specific options for handling translations (#36)
  • Command Focus on translation view (focuses on the last used translation view) (#47)
  • Different translation actions when translating text within notes
    • Replace input with translation — Selected text will be replaced with its translation
    • Translation added below input — The translation will be added below the selected text
    • Copy to clipboard — Translation of selected text will be added to the clipboard
  • New languages added to following translation services
    • Azure Translator: 12
    • Libre Translate: 2
    • Deepl: 2

Changes

  • Sensitive information is now less easily accessible by other plugins
  • Add ability to filter FastText from available services (#40)
  • Automatically focus on the input textarea when opening a new translation view (#48)

Fixes

  • Removed legacy code causing conflicts with other plugin (#51)
  • Several issues with glossary were fixed (#41)
  • Replaced legacy submenu with new native submenu, fixes some submenu's not being properly accessible (#45)
obsidian-translate - 1.4.4

Published by github-actions[bot] almost 2 years ago

1.4.4

Features

  • Split up Translate selection to selected language into two commands (#38 - Many thanks to @ksdavidc for the suggestions, feedback and inspiration):
    • Translate selection (choose language): same functionality as before: opens a modal where you can select a language to translate the selection to
    • Translate selection (default language): no selection modal will be opened, selection will be immediately translated to whichever language is specified as the default target language
  • Default target language in Settings > Functionality now offers more choices (#38):
    • Most recently used: your default target language is the language that was last used for translating
    • Display language: your default target language is the same as Obsidian's display language
    • Manually select language: opens up a dropdown setting where you can specify a specific language to always translate to

Changes

  • The default target language will now always be the top language that appears when translating a note or translating via the context menu
  • Improved styling in settings menu for sub-settings (#38)

Fixes

  • [CRITICAL] Issue where all plugins listed after the translation plugin in enabled-plugins would not load when FastText is installed (#39 - many, many thanks @andremeireles for reporting this issue)

I apologize to anyone who encountered this issue, and I promise to avoid making these kinds of mistakes in the future, and catch them sooner in the development process.

Developers

  • Added a more worked-out API documentation, including more examples (#37 - thanks @MMoMM-org for the suggestion)
obsidian-translate - 1.4.3

Published by github-actions[bot] almost 2 years ago

1.4.3

Edit: fixed issue where manifest was not the correct version number

Features

  • Added button in the General Settings tab for quickly opening an issue on this repo
    • On clicking it, you will be redirected to the creation screen for a new issue on this repository, some Obsidian + plugin information will already be provided for easier debugging

Changes

  • Improved wording of some settings to better clarify what they do
  • Improved error messaging for all services, you will always get a description for the error code now
  • User can now set which glossary they want to use, options are: local only, online only (i.e. uploaded glossaries) and both (online glossary will be applied first, if it is not provided, local glossary will be applied instead)

Fixes

  • Fanyi Youdao having improper validation (fixes #35 - Many thanks to @jiangaq for reporting this issue and helping to debug it)
  • DeepL not preserving newlines when translating (fixes #36 - Many thanks to @EugeneZaharov for reporting this issue)

Developers

  • local_glossary is now deprecated, the glossary that will be applied is now defined by glossary_preference
obsidian-translate - 1.4.2

Published by github-actions[bot] almost 2 years ago

1.4.2

Changes

  • Now available in the plugins browser (though, if you want, you can certainly still use BRAT!)
  • Changed plugin id from obsidian-translate to translate.

If you're on an older version of the plugin, you can now install the plugin via the official plugins browser. In order to avoid having to re-install Bergamot/Fasttext and port your data, you can simply drag the models folder, and data.json & glossary.json files over to the new plugin folder; they should still work properly.

obsidian-translate - 1.4.1

Published by github-actions[bot] almost 2 years ago

1.4.1

Changes

  • Minified the compiled JS resulting in a ~40% package size reduction (1.81MB -> 1.11MB)

Fixes

  • FastText models being downloaded from the incorrect location
  • FastText and Bergamot are now properly downloaded to app.vault.configDir, instead of always going to .obsidian
  • Fixed error where plugin would always attempt to read glossary.json, even if it does not exist

Developers

  • Added documentation to the most important functions and types
  • All inline css is now fully ported to the main.scss file, most !important's have been removed and all class variables start with translator-... now (TBD if this will be changed if plugin ID changes)
  • Downloaded Bergamot & FastText data is now stored in separate localstorage fields (appid-fasttext/appid-bergamot) instead of in appid-models
  • The data writable store is now gone, and is instead split up into a writable store for each of its keys; resulting in cleaner code and improved reactivity
  • Cleaned up a bunch of legacy code
obsidian-translate - 1.4.0

Published by github-actions[bot] almost 2 years ago

1.4.0

I heavily recommend reading the documentation for some explanations of the new features.

Features

General

  • Updated style to 1.0.0 and massively improved mobile styling
  • New Setting Tabs
    • Appearance Settings:
      • Set default appearance of Translator View
      • Disable animations & obfuscate API keys settings
    • Functionality Settings:
      • Set action for switch button
      • Default source/target languages (implements #32)
      • Glossary settings
    • Hotkeys Settings:
      • Set hotkeys for plugin-specific actions
    • Glossary Settings
      • Manage Glossary and sync it to services

Glossary

  • Add custom translation for terminology in Glossary settings
  • Ability to sync glossaries with services (only DeepL is supported right now)
  • Quick-add entry to glossary by right-clicking a selection and selecting Add to glossary action

Translation View

  • View is now completely customizable via Appearance Settings modal (activate Show tab title bar in Obsidian's Appearance settings to view button to open this modal)
    • Rearrange, add or remove quick settings (it is possible to completely remove the top bar)
    • Add or remove quick actions
    • Set layout
    • Hide/show attribution
  • Change functionality of View via the Functionality Settings modal
    • Set service
    • Set automatic translation on/off
    • Set apply glossary on/off
    • Set filter mode
  • Added quick actions (copy, paste, cut) (implements #31)
  • Added quick setting (apply glossary)

UIX

  • Improvements to translating via context menu
    • You can now click the Translate button, which will translate selection to the default target language you've set (change language in Functionality)
  • Quickly hide or set service as default by right-clicking their icon in the settings
  • Added shortcut hints for actions as tooltips (implements #30)
    • Disable in Appearance settings

Translation Service

  • DeepL: added Ukrainian language
  • Google Translate: added 25 new languages

Changes

  • Vault settings are now fully independent from other vaults
  • Ability to filter services from settings and commands via the Services selection setting
  • Improved descriptors for settings
  • Updated Tutorial and README to better match current state of plugin

Fixes

  • Many, many, many bug fixes.
  • Removed spolling mistaeks

Developers

  • Added tests for API handlers for validating that the services still work properly (testing validate(), translate(), languages(), detect()) (implements #25)
  • Refactored Settings page to improve extensibility
  • Renamed Bing Translator to Azure Translator to comply with attribution requirements
  • All handlers are now shared globally, and stored in reactivity inside active_services
  • Now easier to integrate with 3rd party plugins
  • Added two README's to explain workings of code and structure (/src/ and /src/handlers/)
  • Removed most !importants and made CSS overridable
obsidian-translate - 1.4.0-beta-3

Published by github-actions[bot] almost 2 years ago

1.4.0-beta-3

Changes

  • Removed path setting for storing models in a custom location

Fixes

  • Glossary being enabled by default
  • Improved validity messaging for FastText/Bergamot
obsidian-translate - 1.4.0-beta-2

Published by github-actions[bot] almost 2 years ago

1.4.0-beta-2

Features

  • Implemented online glossaries (only supported in DeepL currently)

Changes

  • Added developer README's, one explaining the code structure and another for the translation service's API handlers

Fixes

  • Several fixes related to glossaries
  • Various styling improvements

Bugs

  • ! Closing a popped-out window with two or more tabs will crash the plugin !
obsidian-translate - 1.4.0-beta-1

Published by Fevol almost 2 years ago

1.4.0-beta-1

Features

  • Ported style to 0.16 and many style improvements
  • (offline) Glossary support - DeepL is being worked on for 1.4.0 release
  • Translation View is now entirely customisable (make sure you have Show tab title bar enabled to be able to access the two new modals)
    • Quick actions (copy, clear, cut)
    • Quick settings (customise the top bar of the translator view)
  • Hotkey/action managing
  • A lot of improvements to the backend code to make it less error-prone and open up integration with 3rd party plugins

Hotfixes (small changes made since release was originally posted)

  • Fix issue with backwards compatibility
obsidian-translate - 1.3.1

Published by github-actions[bot] about 2 years ago

1.3.1

Fixes

  • Fix pasting/using swipe gestures/... in translation view not properly working
  • Replaced broken icons in the Settings menu
obsidian-translate - 1.3.0

Published by github-actions[bot] about 2 years ago

1.3.0

Features:

Translation Services

  • Added Lingva Translate (implements #17)
  • Added Fanyi QQ (implements #11)
  • Added Fanyi Youdao (implements #12)
  • Added Fanyi Baidu
  • Bergamot: support for Dutch ⟷ English translation

UI Improvements

  • Support for multiple translation views
    • Each view can be a different translation service, with separate layouts, filters,...
  • Settings page was completely overhauled to improve navigation, reducing clutter and adding better descriptions (Many thanks to @sailKiteV for helping me out with the navigation tabs animations)

Changes

  • Several under the hood changes to improve future extensibility
  • Performance improvements

Fixes

  • Improved support for forwards-compatibility of plugin settings (fixes #22 — many thanks to @kometenstaub for reporting this issue)
  • Many other fixes
obsidian-translate - 1.2.0

Published by github-actions[bot] over 2 years ago

1.2.0

Features:

  • Implemented local translation with Bergamot
  • Implemented local language detection with FastText

Changes:

  • Improved styling of Translation View to make buttons more readable
  • Improved descriptions of several settings to explain their purpose better
  • Various other styling changes and improvements
obsidian-translate - 1.1.6

Published by github-actions[bot] over 2 years ago

1.1.6

Features:

  • Added 'detect language' option in editor context menu (desktop only)
  • Added storage settings for API keys, currently there are four options available (implements #9), default behaviour is unchanged

Changes:

  • Improved pop-out behaviour (Obsidian version > 0.15.0) and styling of Translation View (#20)

Bugfixes:

  • Translator code accidentally got added to DOM due to wrongly-placed import in svelte code (#19 - Many thanks to @joethei for spotting this)
  • Custom Svelte modal gets properly destructed (Thanks @kometenstaub for helping me solve this!)
obsidian-translate - 1.1.5

Published by github-actions[bot] over 2 years ago

1.1.5

Bugfixes:

  • Validating translation service does not update its internal validity status
  • Last character of text gets removed when using Translation View's translate button (#8 - Many thanks to @joethei!)
obsidian-translate - 1.1.4

Published by github-actions[bot] over 2 years ago

1.1.4

Bugfixes:

  • Use appropriate context for calling commands (#7 - Many thanks again to @kometenstaub!)
obsidian-translate - 1.1.3

Published by github-actions[bot] over 2 years ago

1.1.3

Changes:

  • Re-added missing info links to pages for API key sign-up
  • Translators now internally check for valid-ness instead of the callers
  • Improved UIX in some places
  • Added extra comments where needed

Bugfixes:

  • Fixes to Cmd+Enter shortcut (#4/#6 - Many thanks to @kometenstaub for their help with fixing this issue)
obsidian-translate - 1.1.2

Published by github-actions[bot] over 2 years ago

1.1.2

Features:

  • Default selected languages for translation service to spellchecker languages (they can be removed) (#5)
  • Added Ctrl/Cmd + Enter shortcut to translating text within the Translation View (for all platforms) (#4)
    ! This feature does not work when the Translation View is located in the side panels for Obsidian versions <0.15 !

Bugfixes:

  • Available languages were not correctly synced with spellchecker languages on start-up (#5)
  • Dropdown for selecting languages is still available even when synced with the spellchecker languages (#5)
obsidian-translate - 1.1.0

Published by github-actions[bot] over 2 years ago

1.1.0

Features:

  • Implemented proper mobile support (#2)
  • Added automatic layout switching for the Translation View (can be set manually too)
  • Added several commands (Translate currrent file, Translate current file to new file, Translate selected, Detect selected), each command has their own icon for Quick Access in mobile
  • Added quick-access button to the plugin settings inside Translation View
  • Added setting to determine how long after user has completed typing the text should be translated (instant option is still available, default is 500ms)

Changes:

  • Overhauled the handler structure and error handling
  • Improved error messaging for commands and actions
  • Improved error handling in all handlers
  • Improved English localisation
  • DeepL self-resolves the host it should use (#3)
  • Overhaul of plugin settings reactivity, it should now be slightly more performant, and not send redundant translation requests
  • General UIX improvements (layout, styling, animations)
  • Improved documentation

Bugfixes:

  • Fixed DeepL handler (#3)
  • Fixed overreactive reactivity in most cases