On this page, I’ll write about each of the new features that I’m working on for Akebi 3.0 and the progress that has been made towards completion.

Version 69 (3.0.3):

  • Minor bug fixes.
  • User request: Added additional patterns to the keyboard (tu=つ, ti=ち, and some others)

Version 68 (3.0.2):

  • Autocorrect now runs even when Kana is directly input into Akebi. It’s not nearly as good as it is when entering romaji, but it’s better than nothing.
  • User request: Label “い adjectives” and “な adjectives”
  • User request: Add the ability to set tags in Ankidroid integration.
  • Some words with multiple possible kanji writings now show both in the search results, e.g. 治す/直す
  • User request: Kanji grids can now be made from lists.

Version 67 (3.0.1):

  • Minor bug fixes

Version 66 (3.0-rc-4):

  • Minor bug fixes

Version 65 (3.0-rc-3):

  • Minor bug fixes

Version 64 (3.0-rc-2):

  • User request: Added version number into about menu
  • User request: Added option to focus search bar instead of open handwriting in search
  • User request: Separation of examples in the examples activity is now clearer.
  • User bug: Selection not lost when screen rotated.
  • User request: Confirmation required before customizing word.
  • Fixed glitch in AnkiDroid integration forcing duplicates to be disabled.
  • User request: Added option to force dialog instead of using drawer in search results
  • User request: Added option to alter drawer height.
  • User bug: Fixed incorrect radical counts

Version 63 (3.0-rc-1):

  • Minor bug fixes.
  • Added a donation page

Version 62 (3.00-beta-28):

  • Added autocorrect.
  • User request: Added list export to anki.
  • User request: Radicals/other info no longer shown in kanji test.
  • Made synonyms appear above examples. This makes it much less likely that they’ll jump around when clicking on them. You might need to reset your options for this to take effect.
  • Fixed up the copy dialog
  • Text to speech
  • Examples show common particles / preceding words
  • Allowed replacement of search query by word

Version 61 (3.00-beta-27):

  • User bug: 突 wasn’t being drawn correctly in search results.

Version 61 (3.00-beta-27):

  • User bug: 突 wasn’t being drawn correctly in search results.

Version 60 (3.00-beta-26):

  • Surprise AnkiDroid integration!

Version 59 (3.00-beta-25):

  • Minor style update.

Version 58 (3.00-beta-24):

  • Attempted to fix a couple of bugs coming through on Google Play.
  • Updated Kanji Grid a bit (but not the testing section… yet…)

Version 57 (3.00-beta-23):

  • Romaji!
  • JLPT N1-N5 Kanji levels
  • Bug fix: Search for “airon”, “airon wo kakeru” shows up twice.
  • Bug fix: Some words don’t have furigana in their example sentences.
  • Fixed crash bug from Google Play

Version 56 (3.00-beta-22):

  • Working on fixing a crash bug coming through on Google Play.

Version 55 (3.00-beta-21):

  • Added automated tests to make extra sure that updating does not destroy user data.
  • Fixed one bug that came through on Google Play.
  • Added an “auto-paste” feature. Copying something new to the clipboard and opening Akebi again (while it is in search mode) automatically pastes what you’ve copied.
  • Long-pressing the word in the word view info box thing (in the header, right of the “close” button) copies the word to the clipboard.

Version 54 (3.00-beta-20):

  • Fixed 3 crashes that came through on Google Play. There’s still 1 bug I keep getting that I haven’t fixed yet.
  • Minor improvements to the example sentences.
  • Added a “first run” dialog, with a cute wobbly happy face! Check it out in the About menu. Try touching him!

Version 53 (3.00-beta-19):

    • Fixed bug affecting Xaomi Redmi 4. (Crashing occasionally due to TOCTOU bug I was hoping wouldn’t arise.)
    • Fixed annoying clear button error when using Akebi’s custom input method. However, the glitch causing the problem was not within Akebi’s search function, but within the input method. So hopefully the people who reported this were using Akebi’s keyboard, rather than some other keyboard I can’t fix.
    • Wrote some automated UI tests. Yay.

Version 52 (3.00-beta-18):

  • Fixed bug that crashes Akebi on open on some devices. Remember: Don’t release at 3AM in the morning without fully testing…

Version 51 (3.00-beta-17):

  • Fixed tutorial
  • In landscape mode, the keyboard no longer shows up over the results.
  • Backups do work just fine. However, adding automatic backups at this time would be troublesome and it’s not worth the effort.
  • Added Matt’s top secret original herbs and spices.
  • Fix engine bloat due to duplicated Brotli static dictionary and other issues. I’m not bothering with this. Basic calculations show I’ll save 500kb and spend several hours fixing it.

Version 50 (3.00-beta-16):

  • User language options are auto detected from device settings on first load.
  • New logo design!
  • Made the data error activity not show the first time an error occurs, and just made the app crash so the error can be reported to Google Play.
  • Fixed a crash bug.

Version 49 (3.00-beta-15):

  • Fixed minor issue where the search box takes up the whole screen in the home menu on some devices.
  • Fixed searching glitch.

Version 48 (3.00-beta-14):

  • Quality of search results when searching by translation improved.
  • Improved Kanji stroke order diagram performance. Turns out I was allocating every frame due to a small bug.
  • Quality of example sentences has been dramatically reduced due to the use of a new algorithm (MeCab). I need to improve this somehow.
  • Fixed a crash bug caused by surrogate pairs.

Version 47 (3.00-beta-13):

  • Fixed a bug!

Version 46 (3.00-beta-12):

  • Length of “AutoComplete” results is now configurable and set to be 1 row by default.
  • Fixed major issue with x86 devices.
  • Added ripple background for results on devices that support it.
  • Dramatic improvement of query times, results now have no delay in showing up.
  • Reduced length of translation details in results.
  • Fixed minor list searching issue.
  • Performance enhancements to viewing words.

Version 45 (3.00-beta-11):

  • Bonus feature: Conjugations! Most types of verb are complete. There’s still a few things missing and some things may be wrong. Please send me an email if you notice something wrong!
  • Bug: Dragging and dropping characters in the top-bar in the search mode is broken.
  • User request: Remember Flashcard Dialog settings.
  • User request: Kanji+Kana flashcards.
  • User request: Kanji dictionary codes always shown, even if no entry exists
  • Improved example searching speed, reduced RAM usage and also reduced file size by a measly 3%.
  • Added reset button for word info category order preference.
  • User request (multiple): Keyboard comes up at bad times.
  • Word shown in a dialog now pins the close button and word to the top
  • Word now centers text when no furigana available.
  • Bug: Tutorial crashes
  • Search input now ignores spaces in the query (when searching in Japanese only).
  • Word searched for is highlighted in all example sentences.

Version 44 (3.00-beta-10):

  • Akebi now loads its data files in ~300ms. This is a 75% improvement: it now starts up almost instantly, so I just got rid of the loading bar. It was a huge job getting this done.
  • List background colour set to a lighter shade of purple by user request.
  • Flashcard scheduling algorithms rewritten with tests. Hopefully the bug where hidden words were showing up is gone now.
  • Example sentences are now back to their original large font. You can make them small again, or set them to a variety of cool sizes in the options menu.
  • Screen rotations in the flashcards/kanji grid no longer make you jump to another flashcard.
  • Decimal/Hexadecimal flavours of the Unicode Kanji information are now available.
  • Kanji like “直” now uses the Japanese font variant rather than the Chinese variant. Apparently this is called “Han Unification”. Cool! Thanks to the user that sent me on this path
  • Issue with Kanji Grid stagnation not working at all fixed. I had forgotten to set a “last-tested” time for new kanji, so they were immediately stagnating to 1XP.
  • You can now re-order the information in word info boxes into an arbitrary order.
  • Holding down a KanjiBox copies the Kanji to the clipboard.
  • Import/Export dialog now shows files as auto-complete results.

Version 43 (3.00-beta-9):

  • User bug: 纔 decomposition too wide.
  • Bug: List export/import, backup/restore broken (other issues on Android 6).
  • User request: Multiple list flashcard tests.
  • User bug: Using the “copy translation” feature on a word copies only the first sense to the clipboard.
  • Bonus feature: Search History.
    • I tried adding this in the quick way, using the existing saving/loading infrastructure, but it didn’t work well at all. At the moment, Akebi saves and loads its datafiles in a pretty bad way: It will load all the data into memory when it starts, and then it will save all of it again when it needs to close. The problem is that when the amount of data Akebi needs to save gets bigger, so does the amount of time it takes to save. Not only is this bad in and of itself, but it seems to cause the saving process to break down and lose all of the data sometimes.Most android apps don’t use such a bad technique. They use a database to store the data instead, which is a far more reliable technique. A database saves only what has changed making it very fast. It deals with all sorts of other problems and really just makes things so much better. You might be thinking “Well Matt, why didn’t you use a database in the first place?”. Great question. When I started Akebi, I didn’t know what the benefits using a database would provide. It seemed like something I wouldn’t need because Akebi was so simple back then. Stupid right?Unfortunately, altering Akebi to use a database instead of just dumping the data into a file is gonna take quite some time, but this is something I have needed to do for a very long time. Once its done, Akebi should be much, much more stable with regards to user data.And then once I’ve done all that, I can add search history 🙂
  • User data moved to a database. Should be very hard to destroy it by accident now.

Version 42 (3.00-beta-8):

  • Improvement: Example sentences have much better splitting now. I’ve fixed a few issues with MeCab and improved on a number of other issues. Still work to be done here, but it’s ready for release now.
  • Improvement: I have removed the old action bar compatibility library “ActionBarSherlock” and replaced it with “AppCompat”. With it, I’ve started doing Material design
  • Fixed: Unable to scroll search results on Android 2.3.3. Although, I’ve lost the nice “Nested scrolling” functionality I had. It’s back to the way it was before the beta.
  • New feature: New setting called “Ignore Case” which will ignore whatever case your keyboard uses when searching
  • Improvement: The example viewer is refreshed a bit to look a bit more material-design-ey
  • User request: Radical search results are now sorted by stroke order.
  • User bug: Capital letters in the second bar causes a crash in the beta
  • User bug: Random native crashes. I have located and fixed two issues (one medium size, one large) that are causing Akebi to crash at random intervals on some devices (it seems). I hope that’s the last of them, but I think there’s a few more hiding about.
  • User bug: Android permissions issue with Android 6 was breaking initial download.
  • Fixed: List word searching was completely broken.

Version 41 (3.00-beta-7):

  • Internal, never publicly released.

Version 40 (3.00-beta-6):

  • Tried to fix: Searching from the main menu doesn’t actually bring up any results until the search is edited.
  • Optimisation: Improved load times by 35% by caching data verification results. 2.6s -> 1.7s.
  • Optimisation: Used Google Brotli compression to decrease file size. Results show no load time changes, with file size decreasing by 20% from 30mb to 24mb.
  • Fixed: Word verb type filtering. For example, searching for “きって” will de-conjugate it to “きう”, “きち” or “きる”. Akebi will then show results not only for words that match “きって”, but also for verbs that match “きう”, “きち” or “きる”.
  • Fixed: crash on selecting チャーシュー.
  • New feature: Added a very limited number of Vietnamese and Indonesian example sentences.
  • New feature: Displays data about language coverage in the options menu.
  • User request: Clicking on the kanji box opens the stroke order diagram for that kanji.

Version 39 (3.00-beta-5):

  • User request: Option to delete duplicate words from lists.
  • The new sources of information for the Kanji are confusing and numerous. They need to be explained with in-line help options.

Version 38 (3.00-beta-4):

  • User request: Remove bullet points before example sentences, make it like it was.
  • User bug: Searching in languages other than English has broken for some reason.
  • Searches for each language are blended into one big group called “Translation”. If the user has only one language visible, then the name of the group is that of the visible language.
  • Opening the lists menu before the load has completed causes the lists to disappear until you open the lists menu after the load has completed.

Version 37 (3.00-beta-3):

  • User request: Added Spahn/Hadamitzky (2011 edition) dictionary query codes.

Version 36 (3.00-alpha-2):

  • Survey added and placed in Akebi. Shows up after 1 day of use.

Version 35 (3.00-alpha-1):

  • Total backing dictionary change: The old EDICT has been ripped out and replaced with JmDict, which provides 8 new languages. It also has:
    • Synonyms (Alternate Readings/Writings) and Antonyms
    • Word usage information (in English)
    • Additional word frequency information (Frequency calculated from example sentences is still the primary source though)
    • See also links
    • Source language (for loan-words like Katakana)
  • Inclusion of 9 new languages, with user configurable prioritising and hiding (For example, you can show German translations first, English second and hide everything else)
    • German
    • Russian
    • Spanish
    • Dutch
    • Hungarian
    • Swedish
    • French
    • Slovene
    • Portuguese (Examples and Kanji ONLY)
  • Fixing a tiny issue with the “n” character being converted to kana. For example, “nni” should be “んい”, not “んに”.
  • Handwriting improvements to include all KanjiVG data (also used for stroke diagrams) as well as the old Tomoe database.
    • Some people have complained that kanji like “字” are recognised incorrectly as having 5 strokes instead of 6 (With the non-horizontal strokes in “子” merged into a single stroke). Since some people will be used to this incorrect way by now, I’ve just merged the old, incorrect database (Tomoe) with the new, correct database (KanjiVG).
  • Custom words can be created with full access to the JMDict schema. I.E, you can make custom words that have see-also links to other custom words and/or dictionary words. Among many other features listed above.
  • Furigana calculation for example sentences.
  • Fixed bug: Word definitions are not appearing as a dialog when they’re pressed and there’s not enough room since the OSK is showing.
  • I’ve re-written the dictionary loader to make it more robust and less prone to destroying user data (hopefully).
  • List serialization. With all the new features added for Custom Words, saving them becomes equally if not more complex. Links between words must be preserved, regardless of which words are loaded first.
    Done. Needs beta testing though, but at first glance looks like its working fine.
  • Ensure that the User data update procedures actually work.
    Looks like they do. It seemed to work almost the first time round too!
  • Tutorial and Input Method (the Akebi keyboard) is probably hosed at the moment. I must check to make sure they work. If either don’t I’ll disable that one for the beta.
    Keyboard: works fine (wow). Tutorial: almost works fine (so I fixed it).
  • Pressing back is not closing the word definition.
    Closed this because it never did close the word definition.
  • User data should be backed up on first run, in case I fudge the conversion routines.
  • Fix up loading error activity.
  • Finish adding the new features to the Kanji area ready for testing.

Issues that must be resolved prior to full release:

  • Go on a beta recruitment drive
  • Remove all “beta” branding.
  1. Matthew Sterritt

    I don’t see Anki Integration listed here.

    Also, who will get access to the beta?

    1. Craxic

      Hi Matt (hey, that’s my name!),

      Anki integration is due at a later stage, I need to do the above features first.

      Beta access will be for everyone who wants it. I’ll add instructions when it’s done.


Leave a Reply

Your email address will not be published. Required fields are marked *