-
Notifications
You must be signed in to change notification settings - Fork 278
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add definition deletions to user.json #726
Comments
POC: https://gist.github.com/anonymous/a8d7845e38ab758aa193ac59b953d762, to "delete" a definition, map the same strokes to an empty translation in a higher priority dictionary. |
is there any easy way to correct errors in the dictionaries or to change them to suit me better if it makes it easier for me to remember things? I just came across a simple example of the word 'tour' and in the dictionary it's spelled tor and there is a real word that is spelled tor, a rocky ourcrropping is a tor. I went to the dictionary builder and tried to put in some variations but they didn't really work the word has the oo sound so it should be spellled with an oa even though it doeesn't contain the double o's Any suggestion? |
@sashira I think the standard practice is to to create new entries in your personal dictionary that mask/fix the parts you don't like in the main dictionary. If you use this technique consistently then you can upgrade to a newer main.json later without losing your changes. Alternatively, some stenographers decide they'd rather edit main.json than get updates, and they just fix/change stuff like this directly in main.json There's nothing sacred about main.json, you can just decide for yourself if your updates to main.json are more valuable to you than the updates that get merged upstream. |
Yes, JasonWoof pretty much said it all! I don't use Plover's built-in dictionary, having learned one before (Phoenix, for the curious). The version of Phoenix that I learned included an extra alphabet and several word parts, which should allow one to stroke out all sorts of foreign names, but since the author of the theory died a couple years back, the new "Phoenix Theory Mom" has been overwriting those outlines, so my version is from 2014, and doesn't get updated. Instead, any new updates would go into my "Glenz_Fast" dictionary -- after I check them against my old Phoenix dictionary with a test stroke of the potential outline -- along with any outline I find from other theories that doesn't conflict with any of the outlines in either of my dictionaries. I talk about that method in this article, for the curious. |
Feature request:
I want to be able to add something to my user.json that has the same effect as removing that stroke from main.json, but without modifying main.json at all.
For single-stroke briefs, it's usually easy to just add the definition I want, but for multi-stroke briefs, when I want the strokes to be looked up separately, the only good way to do this currently is to delete from main.json
This leads to two problems:
First, for individuals, this makes it hard to upgrade to the latest main.json from the latest version of plover (because it'll re-add all the definitions you deleted.)
And Second, as a consequence, there is much less participation in improving main.json, because most experienced stenos have long ago forked main.json, and have no decent way of using the latest main.json. It's hard to be motivated to improve Free Software stuff that we don't use personally.
I think the default main.json is a critical part of the value provided by Plover, and its quality will determine whether many people stick with steno or not.
Also, those of who stay spend many duplicated hours of work fixing our local main.json files.
For these reasons, I think it is important that we can make all our dictionaly modifications without editing the main.json file.
A secondary benefit of this feature is that dictionaries that we share can be more powerful. For example a dictionary for using
SKP[...]
for "ex[...]" words would fix several word conflicts, and with this feature could remove the multi-stroke definitions that are no longer needed, thus reducing colateral damage to other sequences.Example: I've trained myself to type "cannot" with
KANLT
so I expect to get "can not" fromK/NOT
. options:I can delete
K/NOT
from main.json, but that makes it hard for me to upgrade main.json laterI can add
K/NOT
→ "can not" but sometimes doing this creates conflicts (or fails to get rid of them.) It's probably fine in this case, but if I had a better example, you'd see how I would want the first stroke to be interpreted as the final stroke of the previous definition where appropriate.I want a third option that is:
I'm not real particular about how it's implemented, but here some ideas:
"K/NOT", null,
"K/NOT", "{PLOVER:DELETED}",
The advantage of the latter is that it can be pasted into the DUPT dialog box, offering a solution with no UI changes required.
If we want to get fancy, we could add a new dialog box for deleting definitions in this way. It would be very much like the DUPT dialog box, but without the translation stuff (but including the pull-down for which dictionary.)
P.S. One more benefit: with deletions in user.json, this makes it easier to batch-submit all your dictionary changes to issue 400 by just uploading your whole user.json, then starting a new dictionary (so next time you submit you don't resend all the stuff you sent before again.)
The text was updated successfully, but these errors were encountered: