Damien Elmes
3dc0567f89
add string for media log title, and add button in prefs to access it
2020-02-27 12:22:24 +10:00
Damien Elmes
83d894ac87
return a localized error for all error kinds
...
some errors are not yet localized, but now the Python code
doesn't need to think about which property to use
2020-02-27 10:46:24 +10:00
Arthur Milchior
228db67c93
Add a hook to change empty cards to delete
2020-02-26 10:59:34 -08:00
Damien Elmes
946a2e6a3e
add missing short argument to legacy fmtTimeSpan()
2020-02-26 20:36:59 +10:00
Damien Elmes
b276e6f9ac
fix push-i18n
2020-02-26 18:09:06 +10:00
Damien Elmes
7d691d7571
don't abort build if mo file fails; rename files for consistency
...
Issues are now checked for in CI, so there's no need to break the
build for everyone each time there's a problem with the gettext
catalogs.
2020-02-26 17:47:02 +10:00
Damien Elmes
8b728b4a1e
fix dark mode target Qt version
2020-02-26 16:53:35 +10:00
evandrocoan
0eee3061dc
Removed the qt/Makefile INSTALL_PYAUDIO variable and
...
created the Makefile SYSTEM_PACKAGES updating README.development
2020-02-25 21:08:05 -03:00
Damien Elmes
94ba217c25
formatting fixes
2020-02-25 17:56:46 +10:00
Damien Elmes
5ca00fc92d
interrupt current audio when autoplay off
2020-02-25 17:49:06 +10:00
Damien Elmes
c240690da7
ensure user doesn't try to export into data folder
...
https://anki.tenderapp.com/discussions/ankidesktop/39008-export-path-accidentally-set-to-collectionmedia-possible-damage
2020-02-25 17:38:49 +10:00
Damien Elmes
c172557e47
formatting fix
2020-02-25 17:29:10 +10:00
Damien Elmes
59328d9ade
tweak rounding
...
- avoid rounding minutes
- round the seconds taken in the card info screen
- provide different precise and imprecise modes, since we need
to display seconds to multiple decimals in some areas
2020-02-25 17:29:06 +10:00
Damien Elmes
fa41f24bf6
fix display of 1+ day intervals in review history
...
https://anki.tenderapp.com/discussions/ankidesktop/39189-interval-field-of-card-info-display-wrong-unit
2020-02-25 17:00:02 +10:00
Damien Elmes
999aa74eb2
ensure Anki starts on Windows systems that don't have TTS installed
2020-02-25 16:25:17 +10:00
Damien Elmes
8efc23229c
don't allow UI scale < 100%
...
Both Windows and Linux installs fail to render properly when the scale
is below 100%:
https://anki.tenderapp.com/discussions/ankidesktop/38909-user-interface-size
Retina Macs do render properly, but they tend to display at appropriate
size out of the box anyway.
2020-02-25 16:20:14 +10:00
evandrocoan
2d316748a7
Merge remote-tracking branch 'danielelmes/master' into fix_windows_build
...
# Conflicts:
# Makefile
2020-02-25 03:16:57 -03:00
evandrocoan
9e690f80e7
Renamed FIND_EXEC to FIND, replaced IS_WINDOWS by specific commands
...
as PYTHON_BIN, ACTIVE_SCRIPT and INSTALL_PYAUDIO.
Fixed echo statements not using @ to suppress double message output.
Deprecated the usage of ECHOCMD := /bin/echo -e because it has no
effect: https://stackoverflow.com/questions/60387684/how-to-make-the-makefile-echos-to-use-bin-echo-e
# Conflicts:
# Makefile
2020-02-25 03:15:11 -03:00
Damien Elmes
9aa23c4846
don't pick up system dark theme in -alternate Mac build
...
The older Qt doesn't support it properly
2020-02-25 15:46:39 +10:00
Damien Elmes
592741deaa
change default night mode card background to dark grey
2020-02-25 15:43:56 +10:00
Damien Elmes
d8695b215f
use -q instead of --for-msgfmt so older gettext versions don't break
...
I was mainly using it to keep the output tidy anyway
2020-02-25 13:52:40 +10:00
Damien Elmes
d26a68f20e
Merge pull request #458 from glutanimate/add-deck-conf-hooks
...
Add deck options hooks
2020-02-25 13:38:04 +10:00
evandrocoan
5fab701431
Added -o pipefail to all set -e ensuring the build fails when some
...
operation with pipe exits error status.
# Conflicts:
# Makefile
2020-02-24 20:18:56 -03:00
evandrocoan
6a70adf6f4
Fixed msgmerge not stopping the shell on error
2020-02-24 17:54:59 -03:00
evandrocoan
a3e2793e25
Fixed build-mo-files not stopping on build errors
2020-02-24 17:02:27 -03:00
evandrocoan
6d16298254
Fixed development compilation with Windows 10
...
1. Documented on README.development how to setup the environment
for Windows.
2. Fixed qt/ts/package.json not working due usage of ; instead
of &&
3. Fixed copy-qt-files rsync using Windows paths instead of Unix
ones
4. Fixed Makefile's using Windows Linux Subsystem bash instead of
the Cygwin one.
5. Ensured running the correct pip module by using python -m pip
instead of just pip.
6. Fixed Makefiles using Windows `find` command, instead of the
Cygwin's one (POSIX find).
7. Fixed pyenv sourcing/activate using /pyevn/bin/ instead of
/python/Scripts/ on Windows.
8. Fixed pyaudio not installing/linking with portaudio on Windows
by installing for a patched fork at evandroforks/pyaudio
9. Forked and fixed portaudio not building with Visual Studio 2017
or superior and added the reference for the patched fork on
README.development at evandroforks/portaudio.
2020-02-24 14:59:11 -03:00
Glutanimate
f7b256a860
Use a consistent function signature across load and save hooks
2020-02-24 15:47:48 +01:00
Glutanimate
d1dc0362b6
Add deck_conf_did_setup_ui_form hook
...
Called earlier than deck_conf_will_show, allowing add-on authors
to perform UI modifications before the deck config is loaded.
2020-02-24 15:29:23 +01:00
Glutanimate
368a485847
Add hooks for extending the deck options dialog
...
Introduces three new hooks:
* deck_conf_will_show: Allows adding or modifying widgets
* deck_conf_did_load_config: Allows add-on widgets to read from config
* deck_conf_will_save_config: Allows add-on widgets to write to config
2020-02-24 13:42:30 +01:00
Damien Elmes
43dae5c90e
Merge pull request #456 from Arthur-Milchior/noDefaultDeckInBrowser
...
No default deck in browser
2020-02-24 19:35:49 +10:00
Damien Elmes
db486dd25c
enable v2 apkg export
2020-02-24 18:54:55 +10:00
Damien Elmes
0e6b584483
fix tr()
2020-02-24 18:37:02 +10:00
Damien Elmes
d085fcea64
add Tobias to contributors
...
if anyone else is reading this and thinks they should be on the list,
please let me know!
2020-02-24 18:36:37 +10:00
Damien Elmes
087afc94d8
merge po with pot before building mo
...
fixes errors in strings that have been removed from the template
2020-02-24 15:35:52 +10:00
Damien Elmes
70ae99778f
remove old fmtTimeSpan() and associated strings
2020-02-23 18:47:16 +10:00
Damien Elmes
f710e58cee
check-po-files moved into i18n repo
2020-02-23 18:33:03 +10:00
Damien Elmes
1c69747b5a
move the big error message into FTL
...
this works around the issue Pontoon has with saving translations with
trailing newlines, and makes it easier for translators to update in
the future, as the errors are now using markdown
2020-02-23 18:01:34 +10:00
Damien Elmes
024126b3be
support aqt-specific FTL files
2020-02-23 18:00:13 +10:00
Damien Elmes
d270a01b61
update extract-po-string
...
- use fluent.syntax for output (only non-plural case for now)
- add confirmation step
2020-02-23 17:58:43 +10:00
Damien Elmes
c98247fa0f
translations no longer require an open collection
2020-02-23 14:57:02 +10:00
Damien Elmes
0d1a30c6d8
rework Fluent handling
...
- all .ftl files for a language are concatenated into a single file
at build time
- all languages are included in the binary
- external ftl files placed in the ftl folder can override the
built-in definitions
- constants are automatically generated for each string key
- dropped the separate StringsGroup enum
2020-02-23 13:22:50 +10:00
Arthur Milchior
adfbd0d70f
should(default)deckbedisplayed in snake case
2020-02-22 04:08:01 -08:00
Arthur Milchior
6a50730f0d
Remove options for all/allNames
...
Instead, we always see default deck if it has a child
As indicated in https://github.com/ankitects/anki/pull/452
2020-02-22 04:03:42 -08:00
Arthur Milchior
89b79d9800
forceDefault to force_default
2020-02-22 04:01:42 -08:00
Damien Elmes
258a8a04f0
fix comment
2020-02-21 20:10:58 +10:00
Damien Elmes
7d4d713c49
remove unused import
2020-02-21 19:58:54 +10:00
Damien Elmes
3a83d9844a
add studied_today(), move to statistics.ftl
2020-02-21 18:01:15 +10:00
Damien Elmes
ce84a1a246
don't use implicit $ in extract-po-strings
2020-02-21 17:06:57 +10:00
Damien Elmes
05c20e72e8
split ftl and po syncing scripts
2020-02-21 15:29:38 +10:00
Damien Elmes
8afaaf9c70
simplify interval display in review log
2020-02-21 15:29:38 +10:00
Damien Elmes
ddf1d6acbd
add plural support to extract-po-string
2020-02-21 15:29:38 +10:00
Damien Elmes
74bff450e2
add non-abbreviated timespan translation; update existing short=True calls
...
- drop the '5m3s' special casing done in the card stats screen, and
just use decimals
- change alignment of the review log so that the non-abbreviated
spans are easier to read
2020-02-21 15:29:38 +10:00
Damien Elmes
b0cd1b23f2
support variables when importing from gettext
2020-02-21 15:29:38 +10:00
Damien Elmes
bda7e0e0a4
possible fix for race conditions in the sound code
...
https://anki.tenderapp.com/discussions/ankidesktop/39030-erro-ao-adicionar-arquivo-de-udio
the lock should at least ensure _process doesn't disappear in the
middle of our logic, and the longer wait should reduce the chances
of .stop() timing out and allowing multiple audio files to play
Not very happy with the current approach, as in the timeout case
you have multiple threads competing to access the same data
2020-02-21 15:14:09 +10:00
Damien Elmes
e98e85a0b8
Revert "Merge pull request #452 from Arthur-Milchior/noDefaultDeckInBrowser"
...
This reverts commit 56d908cc28 , reversing
changes made to c123b5bf95 .
More discussion required on https://github.com/ankitects/anki/pull/452
2020-02-21 12:27:39 +10:00
Damien Elmes
a30e4d9313
Merge pull request #448 from glutanimate/top_toolbar_links_hook
...
Add a hook for adding links to the top toolbar
2020-02-21 12:18:25 +10:00
Damien Elmes
56d908cc28
Merge pull request #452 from Arthur-Milchior/noDefaultDeckInBrowser
...
No default deck in browser
2020-02-21 12:10:36 +10:00
Glutanimate
4f50f6c669
Refactor ToolbarLink dataclass into create_link arguments
...
ToolbarLink was more of a vestigial left-over from an interim
implementation. This change simplifies link addition and brings
it closer in line with adding buttons in the editor screen
2020-02-20 18:22:31 +01:00
Glutanimate
8aa7e9e32e
Restore gui_hooks changes
2020-02-20 17:05:27 +01:00
Glutanimate
1df7a29765
Add ids to all link elements
2020-02-20 16:34:02 +01:00
Glutanimate
0e8c8ae775
Rename CenterLink to more generic ToolbarLink and add inline docs
2020-02-20 16:30:22 +01:00
Glutanimate
af2c353aa7
Update 'top_toolbar_did_init_links' hook
2020-02-20 16:23:33 +01:00
Glutanimate
1a8ef9e589
Refactor center link creation and link handler registration
...
Uses a CenterLink dataclass to describe individual links, and transforms
them into HTML using create_link, which may also be used by add-ons.
2020-02-20 16:15:50 +01:00
Glutanimate
05f5b4d664
Merge branch 'master' into top_toolbar_links_hook
2020-02-20 15:17:48 +01:00
Arthur Milchior
59587f1bb2
no default in left-side browser
2020-02-19 02:42:04 -08:00
Arthur Milchior
541e586db1
Replace g[idx] by variable name
2020-02-19 02:41:57 -08:00
Arthur Milchior
aa1668ec96
remove default deck from filter list
2020-02-19 02:41:56 -08:00
Damien Elmes
20c765cf91
pin fcntl, which went missing on Linux in a recent update
2020-02-19 19:59:31 +10:00
Arthur Milchior
9860d5ba5e
method shouldBeDisplayed
2020-02-19 01:56:33 -08:00
BlueGreenMagick
b81db34fbd
fix typo
...
<font> tag was closed by </span>
2020-02-19 17:46:12 +09:00
Damien Elmes
5bb81a95c2
add 'new #' prefix to new cards in the due column
2020-02-18 11:16:15 +10:00
Damien Elmes
fdf297afa0
fix card info screen
2020-02-18 10:59:24 +10:00
Damien Elmes
0e7f433071
fix legacy filter return values being ignored
2020-02-18 09:12:16 +10:00
Damien Elmes
d2929bcc64
fix negative number in compat message
2020-02-18 08:27:47 +10:00
Damien Elmes
08bb73b4d9
Merge pull request #450 from Arthur-Milchior/selectCardInBrowserFromReviewer
...
Current card get selected in browser
2020-02-18 08:27:34 +10:00
Damien Elmes
0a562c2eac
Merge pull request #449 from glutanimate/html-content-section-hooks
...
Add hooks for modifying HTML body sections in the deck browser and overview screens
2020-02-18 08:20:01 +10:00
Glutanimate
ed2782b185
Complete OverviewContent docs
2020-02-17 16:53:47 +01:00
Glutanimate
0e95badd80
Add overview_will_render_content hook
2020-02-17 16:49:21 +01:00
Glutanimate
803b0432f1
Bundle individual section hooks together into one
...
Uses new dataclass 'DeckBrowserContent'
2020-02-17 16:26:21 +01:00
Arthur Milchior
3763d35149
Current card get selected in browser
...
I'm pretty sure it was the way it worked before. I'm surprised that
it's not the case anymore.
If you open the browser from the reviewer, the current card get
selected if it exists. The current note is still entirely displayed.
Personally, I want to know easily which is the current card. Opening
the browser is the easiest way to do it; assuming I can see the
current card selected
2020-02-17 04:10:47 -08:00
Damien Elmes
e020aa54f9
add fallback for tr if collection not open
...
When syncing media on close, the collection may be closed before
media syncing completes.
A better solution in the future will be decouple translations from
the collection object.
2020-02-17 17:39:01 +10:00
Damien Elmes
9ffae5650f
fix initial build failing
2020-02-17 15:48:27 +10:00
Damien Elmes
fd01cac4d7
split "Due" into three different contexts for translators
2020-02-17 14:41:01 +10:00
Damien Elmes
b9276f8d56
add helper script to extract previous translated string
2020-02-17 13:41:21 +10:00
Damien Elmes
d13473d456
make sure ftl files get updated
2020-02-17 12:35:55 +10:00
Damien Elmes
908bd93831
fix sync-git
2020-02-17 11:45:56 +10:00
Damien Elmes
f40a00f0cb
localize some error messages
2020-02-17 11:38:22 +10:00
Damien Elmes
f6643eda53
use new i18n infrastructure for more media check / media sync strings
2020-02-17 10:18:20 +10:00
Damien Elmes
1f736239cd
pass progress back as translated string(s)
2020-02-17 08:40:17 +10:00
Damien Elmes
8450214cda
add ftl to the build process, and a sync-git script
...
also
- ensure po files are checked when updated
- add start of sync.ftl
2020-02-17 08:40:17 +10:00
Damien Elmes
632041f14f
drop unused threadLocal and noHint i18n code
2020-02-17 08:40:17 +10:00
Damien Elmes
ff9daa099b
use new file locations for translations
...
- translation files are now stored in a separate repo, and
use a layout compatible with Pontoon
- normalize the language code in aqt, so that old config settings
and command line arguments are correctly handled
- store Qt and gettext translations in separate subfolders
- remove Crowdin scripts
2020-02-17 08:40:17 +10:00
Damien Elmes
067ade9a3b
move Gettext translations into separate repo for Pontoon
2020-02-17 08:40:17 +10:00
Damien Elmes
0acae7ecf7
update translations
2020-02-17 08:40:17 +10:00
Damien Elmes
7a0d1ffae0
fix sync deauth
2020-02-17 08:40:17 +10:00
Damien Elmes
834989a019
include report in MediaCheckOutput
2020-02-17 08:40:17 +10:00
Damien Elmes
89626c1a72
use media.trash for unused media deletion as well
2020-02-17 08:40:17 +10:00
Damien Elmes
fc7c2fe187
accept clicks on the progress dialog close button when updating
2020-02-17 08:40:17 +10:00
Damien Elmes
7ce49cb1f8
fix latex render progress; display more frequently
2020-02-17 08:40:17 +10:00
Damien Elmes
71c2730244
rename aqt/media.py to mediacheck.py
2020-02-17 08:40:17 +10:00
Damien Elmes
c4d6d9480c
if latex fails to render in bulk, show the user the problem
2020-02-17 08:40:17 +10:00
Damien Elmes
625b5728cc
new render_all_latex() + gui button; remove some old code
2020-02-17 08:40:17 +10:00
Damien Elmes
edbb23b0ce
sort media list
2020-02-17 08:40:17 +10:00
Damien Elmes
790f3c9f72
plug new media check in
2020-02-17 08:40:17 +10:00
Damien Elmes
edf60b10d4
backend stores media folder/db locations; don't need to pass them in
2020-02-17 08:40:17 +10:00
Damien Elmes
9c60f2c77e
log media DB change registration progress, and allow aborting it
2020-02-17 08:40:17 +10:00
Damien Elmes
ef14b1a96b
simplify code by accumulating stats at the source
2020-02-17 08:40:17 +10:00
Damien Elmes
1f931a5b78
defer errors on upload to media check
2020-02-17 08:40:17 +10:00
Damien Elmes
469798f523
autosync media every ~15 minutes
2020-02-17 08:40:17 +10:00
Damien Elmes
14cb7357fb
autosync media on close
2020-02-17 08:40:17 +10:00
Damien Elmes
728e71f589
autosync media on startup
2020-02-17 08:40:17 +10:00
Damien Elmes
e9884a4b14
add extra hook for media sync start/stop
2020-02-17 08:40:17 +10:00
Damien Elmes
5835a68f47
if toolbar refreshed, make sure not to clear syncing
2020-02-17 08:40:16 +10:00
Damien Elmes
77158760ff
use enums for some common errors
2020-02-17 08:40:16 +10:00
Damien Elmes
85b5c26930
catch DB errors in sync
2020-02-17 08:40:16 +10:00
Damien Elmes
bd14e30f63
constant sync spin speed
2020-02-17 08:40:16 +10:00
Damien Elmes
b883b09414
pass in endpoint
2020-02-17 08:40:16 +10:00
Damien Elmes
c489b6b7ac
catch network errors
2020-02-17 08:40:16 +10:00
Damien Elmes
c02a490be0
move more logic into mediasync.py, handle auth errors
2020-02-17 08:40:16 +10:00
Damien Elmes
ecab2da99e
remove unused code
2020-02-17 08:40:16 +10:00
Damien Elmes
1ba2e30854
show spinner when media sync active, click to reveal dialog
2020-02-17 08:40:16 +10:00
Damien Elmes
738e415463
connect media sync progress to Python, add a progress dialog
2020-02-17 08:40:16 +10:00
Damien Elmes
c9a5ed3cc6
add add_file() and write_data()
2020-02-17 08:40:16 +10:00
Damien Elmes
dee114df63
put head text after css/js imports so it can override them
...
as discussed in PR #438
2020-02-17 08:38:59 +10:00
Glutanimate
c3c31d1454
Add deck_browser_will_render_section hook
...
Allows add-on authors to specifcally target and modify individual
sections of the deck browser HTML body at string composition time.
2020-02-16 19:29:01 +01:00
Damien Elmes
415cb15661
Merge pull request #447 from glutanimate/browser-sidebar-tree-hooks
...
Add browser_will_build_tree filter
2020-02-16 08:36:28 +10:00
Damien Elmes
f6bad7b9c3
Merge pull request #445 from glutanimate/new-html-view-hooks-2
...
Allow add-on authors to easily inject their own content into Anki's web views – take 3
2020-02-16 08:32:34 +10:00
Glutanimate
b7dde202b5
Add a convenience function for creating toolbar links
...
Similar to aqt.editor.Editor.addButton
2020-02-15 23:22:41 +01:00
Glutanimate
5378587f67
Add top_toolbar_did_init_links hook
...
Allows extending the links in the top toolbar, in a similar
fashion to editor_did_init_shortcuts
2020-02-15 23:21:23 +01:00
Glutanimate
b7e0d4388a
Add browser_will_build_tree filter
...
Allows add-ons to populate the browser sidebar tree with their own
items, and/or take over specific construction stages in their
entirety
2020-02-15 21:03:15 +01:00
Glutanimate
356eda66f4
Update documentation for webview_will_set_content and WebContent
2020-02-15 15:03:58 +01:00
Glutanimate
28a394a074
Assume that web assets without a specified subpath are under /_anki
...
Maintains compatibility with existing add-ons
2020-02-15 15:03:43 +01:00
Damien Elmes
3d1e89f014
Merge pull request #433 from Arthur-Milchior/ints
...
Constants
2020-02-14 08:37:31 +10:00
ijgnd
e39d18647f
small fix: store return value for hook in preview
2020-02-13 18:51:11 +01:00
Glutanimate
f2f16903b6
Fix "js" parameter type
2020-02-12 22:20:30 +01:00
Glutanimate
ffdafaee6d
Fix missing "Optional" import and lint
2020-02-12 22:15:44 +01:00
Glutanimate
7e213bdcd5
Pass CardInfoDialog context to stdHtml
2020-02-12 22:12:45 +01:00
Glutanimate
d7836e3af8
Add webview_will_set_content hook & update supporting code accordingly
2020-02-12 22:00:13 +01:00
Glutanimate
88b5d94513
Refactor web view title setting and add titles to all web views
...
Simplifies debugging web views
2020-02-12 21:03:11 +01:00
Damien Elmes
5faaf35eec
fix odd outline in replay button, and center align
...
https://anki.tenderapp.com/discussions/beta-testing/1708-anki-2120-beta#comment_48079637
2020-02-12 09:18:32 +10:00
Damien Elmes
faded8f56d
study screen -> overview screen wording
...
This is a test change to see how Crowdin handles wording tweaks
2020-02-12 09:02:48 +10:00
Damien Elmes
369c810778
update translations
2020-02-12 08:59:14 +10:00
Damien Elmes
084e059508
constrain editor and reviewer image width to container width
...
view height still makes more sense in the reviewing screen so images
are relative to the window instead of the document
2020-02-12 08:33:55 +10:00
Damien Elmes
89f926f177
night mode fix for find dupes screen
2020-02-12 08:28:33 +10:00
Damien Elmes
e64b1e0ca2
provide easy access to browser from preview/dupes handlers
2020-02-12 08:28:21 +10:00
Damien Elmes
27dabaeaa6
tweak wording
2020-02-12 08:14:16 +10:00
Damien Elmes
f8338b094d
move export notes action to the notes menu
2020-02-12 08:09:12 +10:00
Arthur Milchior
097e6d4b46
Adding export option in Browser
2020-02-11 10:50:59 -08:00
Arthur Milchior
c16a3954fa
browser._exporting
2020-02-11 10:50:59 -08:00
Arthur Milchior
078a10ae55
Replace list of deck by "Browser Selection"
2020-02-11 10:50:59 -08:00