• You are not logged in.

    Amphetype (lalop edition)

    • Started by lalop
    • 10 Replies:
    • Reputation: 0
    • Registered: 04-Apr-2013
    • Posts: 538

    Amphetype is a layout-agnostic typing program that lets you import your own texts. This allows you to "read" while practicing typing at the same time.

    However, though it is a generally solid tool, vanilla Amphetype lacks several interactivity options & important features. This fork aims to add some of them.

    Feedback, bug reports, and better name suggestions are appreciated.

    typer.png?raw=true

    Forked Features include:
    1. Unicode -> Ascii transliteration to avoid "untypable characters", as well as some replacements of bad formatting, either via unidecode and/or manually (see Text.py)

    2. Letter coloring, both in input and displayed text, based on current positions and errors

    3. Invisible Mode: Makes input text invisible (for use with #2)

    4. Toggle case sensitivity

    5. Option for continuing to the next passage even with typing mistakes

    6. Option to count adjacent errors as only one error

    7. Option for automatically inserting space, newline, and other custom letters

    8. Option for preventing continuing to the next word until space correctly pressed

    9. Extensive GUI Color Settings

    10. Can change return and space characters

    11. Allows for smaller resizing than vanilla Amphetype

    Example Usage:
    • You don't want to see your own typing, only your position and any mistakes.  Turn on Invisible Mode and customize the Text Display settings as desired.

      • You're doing a speed-run and don't even want to see mistakes either (lest they lead to even the slightest hesitation).  Uncheck the Text Display setting for showing mistakes as well.

    • You only want to type the letters of words.  Set the option to Automatically Insert spaces, newlines, and, if desired, other punctuation characters.

    • A text uses unusual punctuation that you want to skip, e.g.
      -
               ##Hi,## I said, ##How are you today?##
      -
      You can set preferences to Automatically Insert #.

    • A text is written in a certain format, whose intricacies you wish to ignore, e.g.
      -
                DIRECTOR: But what can we do? [The DIRECTOR'S stares at the FACT SHEET.]
               
                [Around the room, groans.]
               
                ASSISTANT: I suppose we can [ASSISTANT looks around nervously, seeing
                the AUDIENCE as well as several CAST MEMBERS] hash it out?
      -
      In this particular case, you can uncheck Case sensitive and have [ and ] Automatically Inserted.

    Warning about databases/statistics:

    The database/statistics of this fork should be considered unstable. In addition, some of the options here (e.g. counting or not counting adjacent errors) can significantly change the resulting statistics.

    It is therefore recommended to use a different database for this fork than with other versions of amphetype, as well as to make regular backups of any important data.



    Run instructions:

    Amphetype depends on py-qt4; check that you have it installed.

    1. Optional: install unidecode for better ascii->unicode transliteration

    2. Download from https://github.com/lalopmak/amphetype, either via

      git clone https://github.com/lalopmak/amphetype [path to desired folder]

      or otherwise.

    3. Run Amphetype.py, either via

      cd [path to desired folder]
      python Amphetype.py

      or otherwise.

    License:
    Amphetype is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    
    Amphetype is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with Amphetype.  If not, see <https://www.gnu.org/licenses/>.
    Last edited by lalop (19-Apr-2014 18:06:34)
    Offline
    • 0
    • Reputation: 0
    • Registered: 04-Apr-2013
    • Posts: 538

    reserved

    Offline
    • 0
    • Reputation: 0
    • Registered: 04-Apr-2013
    • Posts: 538
    davkol said:

    the UI is still broken by design

    Ahem. If you don't even say how it is broken, how exactly am I to address any of your concerns?

    This also seems like a long-term suggestion that could easily be forgotten in a forum post; as such, I suggest you elaborate in a github issue.

    davkol said:

    and generating new lessons doesn't work for me half of the time (sorry, can't reproduce it... yet?).

    Helpful details:

    1. What kind of lesson generation, exactly?  Steps taken in encountering the bug? Any unusual settings selected?  Even if you can't reproduce it, an idea of what exactly you're doing might lead to others encountering the issue.

    2. [Very important in diagnosis] Does this bug also occur in vanilla amphetype, or is it exclusive to my fork?

    Offline
    • 0
    • Reputation: 0
    • Registered: 04-Apr-2013
    • Posts: 538
    davkol said:

    It doesn't follow *any* user interface design guidelines I'm aware of. For example, the configuration tab full of text with inline text fields? Seriously? O_o

    You're going to have to give more detailed descriptions, since I obviously don't share your same distaste.  Submit issues (and, ideally, pull requests, UI not really being my specialty) describing proposed changes in more detail.

    For some of those inline text fields, I'm not even sure how one would go about replacing them.


    davkol said:

    It happens in either with barely any data. I just select that I want to generate a word list (or whatever it's called, I currently don't have Amphetype on this machine) and literally nothing happens. It worked for me in the original Amphetype about a year ago though. If I get back to it, I'll try to file a bug report.

    So it happens in both vanilla and fork when the database is new/small?  (That's nearly the opposite of what I thought it would be.)

    But yeah, after getting the steps down in more detail, please submit a bug report.

    Last edited by lalop (19-Apr-2014 10:35:55)
    Offline
    • 0
    • Reputation: 214
    • From: Viken, Norway
    • Registered: 13-Dec-2006
    • Posts: 5,361

    Looks interesting! I'll have a look at it when I find the time, for sure. Thanks for the work there Lalop.

    I've hardly tried KTouch as I haven't been a KDE man. It seems shiny enough but I don't need to see a keyboard so I guess Amphetype is better for me in that respect. Can you type books with it without being bothered with much else? And if you do have to have the layout display, can you modify the fingering scheme from that horribly unergonomic default?

    Last edited by DreymaR (18-Apr-2014 14:55:33)

    *** Learn Colemak in 2–5 steps with Tarmak! ***
    *** Check out my Big Bag of Keyboard Tricks for Win/Linux/TMK... ***

    Offline
    • 0
    • Reputation: 0
    • Registered: 04-Jul-2013
    • Posts: 38

    Someone should write a version of this program from scratch.

    Offline
    • 0
    • Reputation: 0
    • Registered: 04-Apr-2013
    • Posts: 538

    ...Well, we'll just get right on that, then.

    Offline
    • 0
    • Reputation: 7
    • Registered: 21-Apr-2010
    • Posts: 818

    Lol.

    --
    Physicians deafen our ears with the Honorificabilitudinitatibus of their heavenly Panacaea, their sovereign Guiacum.

    Offline
    • 0
    • Reputation: 0
    • Registered: 01-May-2014
    • Posts: 2

    I took a look at this, but I really don't like some of those color changes: I really hate it when an application decide to throw away my theme setting to apply its own... It makes the application stand out from others (not in a good way). Plus some of those changes actually make it unusable for me: preedit text color is wrong (it's not visible). It's too bad because some of the other changes looked interesting, like changing the return/space characters, replacing multiple adjacent characters, or avoiding untypable characters.

    Offline
    • 0
    • Reputation: 7
    • Registered: 21-Apr-2010
    • Posts: 818

    (I haven't tried the app, but I agree with @benoitp, about the colour changes.  Stick to the user's theme if you can.  I like running a dark theme, but have had to pretty much give up on Linux because of crappy theme management and sucky application support and GTK/Qt clashes.  It's jarring flipping between a light application and a dark.  Actually I like the idea of light theme in a bright room, dark theme at night.  So perhaps have it as an option, but not as the default.  I have an issue in Firefox where I can't read the text I type into text fields, sigh.)

    --
    Physicians deafen our ears with the Honorificabilitudinitatibus of their heavenly Panacaea, their sovereign Guiacum.

    Offline
    • 0
    • Reputation: 0
    • Registered: 01-May-2014
    • Posts: 2
    pinkyache said:

    (I haven't tried the app, but I agree with @benoitp, about the colour changes.  Stick to the user's theme if you can.  I like running a dark theme, but have had to pretty much give up on Linux because of crappy theme management and sucky application support and GTK/Qt clashes.  It's jarring flipping between a light application and a dark.  Actually I like the idea of light theme in a bright room, dark theme at night.  So perhaps have it as an option, but not as the default.  I have an issue in Firefox where I can't read the text I type into text fields, sigh.)

    Yeah, finding a good dark GTK/QT is impossible... That's why I made a script you may be interested: https://github.com/benoit-pierre/config … eme-invert

    You can use it to 'invert' an existing theme, either by negating colors, or by inverting hue in the HSV color space. Usage: gtk-theme-invert theme-dir output-dir [negate|invert]. Note: existing files in output directory will be overwritten. I used it with a few tweaks to make a dark version of HighContrast for GTK: https://github.com/benoit-pierre/config … ntrastDark

    As for Firefox, I use a Stylish style, but unfortunately it can cause issues with buttons on some sites:

    input {
        -moz-appearance: none !important;
        background-color: black !important;
        background-image: none !important;
        color: white !important;
    }
    
    textarea {
        -moz-appearance: none !important;
        background-color: black !important;
        background-image: none !important;
        color: white !important;
    }
    
    select {
        -moz-appearance: none !important;
        background-color: black !important;
        color: white !important;
    }

    Sorry for going off-topic!

    Offline
    • 0