SourceForge.net Logo Support This Project

jMemorize

jMemorize 1.0rc2!

The new release if finally out. One if its main features is the long-awaited support for importing and exporting of CSV (character separated values) files. There are also various usability improvements like remembering all windows’ positions and remembering the last used directory. The issues with some Linux installations have also been fixed. Check out the changelog for a summary of all changes.

If there are no major bugs in this version, I’ll rename this release to be the final jMemorize 1.0 version. Please note that there have been slight changes to the translations. Therefore some might be not up to the final version. See the translations wiki side to see how you can help on updating the translations.

I’m now off to work on jMemorize 1.1. Meanwhile you might consider a donation to help me to devote more time to jMemorize. :-)

14 Responses to “jMemorize 1.0rc2!”

  1. Neill Says:

    Hi

    Just a quick couple of requests:
    Ability to select character set in CSV import. Exporting spanish characters [Ña’?¿¡] from excel generates csv that is not UTF-8 and these import as gibberish.

    Also import and output in XML

    Random pop-up. I could do with something that sits in the intray all day, without having a visible window or icon, but flashes borderless cards at random times during the day to stop me getting bored at work

    Loads more but they’ll wait til later.

    Like the graphics and the levels.

    Thanks.

  2. Michael Grzegorski Says:

    Thank you for your nice software!

    In RC2 I found (probably) a bug. It was not possible to change the time interval between the vocabulary interrogations to individual values. But it works fine with RC1! I used Ubuntu Linux 6.10 together with Sun Java.

    Kind regards,

    Michael Grzegorski

  3. rdjemili Says:

    @Neill
    I’ll work something out which will allow to set the character set of the CSV file.

    @Michael
    I’ve been able to reproduce the bug. It prevents you from setting custom schedules. I’ve already fixed it. It will work again in the final 1.0 release.

    Thanks for the feedback guys.

  4. Stef Says:

    Hi,

    thank you for this great software!

    I see a problem with the import option:
    I thought it would be possible to add cards to an existing *.jml file - but it overrides all the information (also all the folders) so that only the imported cards/folders exist (in Windows and Linux).
    Thought about a workaround by exporting the cards, adding the new ones into the .cvs and reimporting - but then all allready learned cards are suddenly due…

    Thanks anyway
    Stef

  5. rdjemili Says:

    @Stef

    I could easily change the import option so that it would import the cards to the current lesson instead of always creating a new lesson. I just thought that importing to a brand new lesson would be more intuitive.

    Thinking about it now, I think having the cards added to the current lesson, would be a lot more powerful, also because you could always just create a new lesson before importing if you’re really interested in importing the cards to a new lesson.

    Also this would allow me to add a ‘Import from another .jml file’ menu item.

    I think I’ll change the behavior for the next version :) Thanks for your feedback!

    -Riad

  6. Hooper X Says:

    I’ve noticed the same problem as Michael Grzegorski. I don’t seem to be able to make a custom learning interval. Any attempts to change the days, hours etc. results in the program switching to cram mode.

  7. rdjemili Says:

    @Hooper X

    I’ve already fixed it in the development version. It will work in the final 1.0 release, which will be out in a couple of days.

  8. Al Says:

    First of all, congratulations for the import/export in text format feature, it does help a lot!

    I believe I have same problem as Neill. I have created an excell file with Japanese but it seems that it is not possible to export from Excell into UTF text files. Any advice?

  9. Al Says:

    BTW, with StarOffice (OpenOffice.Org) I managed to save in xml but the format is not the same as jml. It would be very nice if j-memory could import and export in OpenOffice Spreadsheet xml format.
    I have added a short version of the xml export below so you can compare with the jml format.
    ========================================

    @page { margin-top: 0.9839inch; margin-bottom: 0.9839inch; margin-left: 0.748inch; margin-right: 0.748inch }
    table { border-collapse:collapse; border-spacing:0; empty-cells:show }
    td, th { vertical-align:top; }
    h1, h2, h3, h4, h5, h6 { clear:both }
    ol, ul { padding:0; }
    * { margin:0; }
    *.ta1 { }
    *.Default { font-family:Arial; }
    *.Heading { font-family:Arial; text-align:center ! important; font-size:16pt; font-style:italic; font-weight:bold; }
    *.Heading1 { font-family:Arial; text-align:center ! important; font-size:16pt; font-style:italic; font-weight:bold; }
    *.Result { font-family:Arial; font-style:italic; font-weight:bold; text-decoration:underline; }
    *.Result2 { font-family:Arial; font-style:italic; font-weight:bold; text-decoration:underline; }
    *.co1 { width:0.611in; }
    *.co2 { width:2.2693in; }
    *.co3 { width:1.2984in; }
    *.co4 { width:0.6547in; }
    *.co5 { width:0.9055in; }
    *.ro1 { height:0.1783in; }
    *.ro2 { height:0.1862in; }
    Frontside Flipside Category Level 一 一 * いち * ひとつ * one1st Grade 0 二 二 * に * ふたつ * two1st Grade 0 三 三 * さん * み、みっつ * three1st Grade 0 四 四 * し * よん、よ、よっつ * four1st Grade 0 五 五 * ご * いつつ * five1st Grade 0 六 六 * ろく * むっつ * six1st Grade 0 七 七 * しち * ななつ * seven1st Grade 0 八 八 * はち * やっつ * eight1st Grade 0 九 九 * く、きゅ * ここのつ * nine1st Grade 0 十 十 * じゅ * と * ten1st Grade 0

  10. rdjemili Says:

    @Al

    I’ll add a dialog which will allow to import from various character sets. Meanwhile you’ll have to figure out a way to have the CSV files in UTF-8 format. For the StarOffice format: please create an item at the feature tracker:

    http://sourceforge.net/tracker/?group_id=121967&atid=691941

    Thanks for your feedback!
    Riad

  11. Al Says:

    Riad,

    I may be able to save a file in UTF-8 from Staroffice Text. I will let you know.
    Do I still need to have you fixing the import from various character set first?

    Al

  12. James Says:

    Awesome, will definitely donate at some stage. My flashcard file has over 3,000 cards - everything from French vocab to Clarinet scales and Physics wave theory.

    Keep up the good work.

  13. rdjemili Says:

    I’ve added a character set chooser that will show up when importing CSV/TSV files. Since I don’t want to introduce new functionality in version 1.0.0, you’ll have to wait for version 1.1.0 which should be out in one or two weeks.

  14. Al Says:

    Riad,

    Thanks, I will check in a week or 2. FYI, here is a UTF-8 text/cvs file that I was trying to import but as you can not be imported due to the character set. You can use this as a test file. I created this using Windows notepad and exporting using txt/UTF-8 format. The error I get is also below for your reference. After I get this running I hope I will be able to share a Kanji practice list as a jml file.
    Thank you for your excelent work!
    =========================================
    Frontside,Flipside,Category,Level
    一,一 * いち * ひとつ * one,1st Grade,0
    二,二 * に * ふたつ * two,1st Grade,0
    三,三 * さん * み、みっつ * three,1st Grade,0
    四,四 * し * よん、よ、よっつ * four,1st Grade,0
    五,五 * ご * いつつ * five,1st Grade,0
    六,六 * ろく * むっつ * six,1st Grade,0
    七,七 * しち * ななつ * seven,1st Grade,0
    八,八 * はち * やっつ * eight,1st Grade,0
    九,九 * く、きゅ * ここのつ * nine,1st Grade,0
    十,十 * じゅ * と * ten,1st Grade,0
    日,日 * にち、じつ * ひ * day, sun,1st Grade,0
    月,月 * げつ、がつ * つき * month, moon,1st Grade,0
    火,火 * か * ひ * fire,1st Grade,0
    水,水 * すい * みず * water,1st Grade,0
    木,木 * もく、ぼく * き * tree, wood,1st Grade,0

    ==================================================

    Ver 1.0rc2 (200610271056) - Java 1.5.0_06 , OS Windows XP
    java.io.IOException: Unknown header column: Frontside
    at jmemorize.gui.swing.actions.file.ImportCSVAction.doImport(Unknown Source)
    at jmemorize.gui.swing.actions.file.AbstractImportAction.actionPerformed(Unknown Source)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.AbstractButton.doClick(Unknown Source)
    at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
    at javax.swing.plaf.basic.BasicMenuItemUI$Handler.menuDragMouseReleased(Unknown Source)
    at javax.swing.JMenuItem.fireMenuDragMouseReleased(Unknown Source)
    at javax.swing.JMenuItem.processMenuDragMouseEvent(Unknown Source)
    at javax.swing.JMenuItem.processMouseEvent(Unknown Source)
    at javax.swing.MenuSelectionManager.processMouseEvent(Unknown Source)
    at javax.swing.plaf.basic.BasicPopupMenuUI$MouseGrabber.eventDispatched(Unknown Source)
    at java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Unknown Source)
    at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Unknown Source)
    at java.awt.Toolkit.notifyAWTEventListeners(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)

jMemorize - Learning made easy (and fun) - A Leitner flashcards tool