mrob95 on master
Deprecation notice (compare)
mrob95 on master
Deprecation notice (compare)
mrob95 on master
Update README.md (compare)
mrob95 on master
Move logging set up above drago… (compare)
mrob95 on texmaker
Add basic TeXMaker support (compare)
mrob95 on master
Create requirements.txt (compare)
mrob95 on master
Create install.bat (compare)
mrob95 on master
change to \(\) for inline math,… add equation* and align* update docs and 2 more (compare)
mrob95 on master
mrob95 on breathe
Transition sublime and template Update dependencies Add install script and 2 more (compare)
mrob95 on master
Create LICENSE (compare)
mrob95 on master
Add core context (compare)
mrob95 on master
Add install script (compare)
mrob95 on master
Update dependencies (compare)
mrob95 on languages
Improve formatting (compare)
add_words
vocabulary list be a dictionary that has spoken and written forms. I don't know how that works,I think Natlink has a way. Caspark mentioned this (pseudo-?)code on the Talents slack. Not sure does the spoken forms:import natlink
def add_words(words):
for word in words:
known_word = natlink.getWordInfo(word)
if known_word is None:
natlink.addWord(word)
np, if you need more flexibility for commands then dragonfly is not at all hard to learn see e.g.
https://github.com/mrob95/MR-caster/blob/master/caster/apps/chrome.py
@mrob95 I'm hoping maybe you've seen this error message before and can point me in the right direction. Here's the sequence of events:
```
Any advice?
@alexboche pretty much what @esc123 said. In scientific notebook you can go into a permanent math mode where everything you type is assumed to be math, regardless of new lines et cetera, whereas LyX requires you to constantly reset the mode and it is easy to accidentally jump out by going to the end of the line or w/e. Also in SN you can select and manipulate blocks of math easily. Since I mostly used it for bashing out homework assignments or completing exams the ease of getting stuff down in SN easily outweighed its lack of complex formatting options.
I think the main use case for LyX is as an alternative to raw LaTeX for technical writing, but since I know LaTeX pretty well and am comfortable in a text editor I don't really have a need for it.
btw if you are considering trying SN, then I would definitely recommend version 5.5 over version 6 if you can get it. Version 6 is much closer to the behaviour of LyX and I really think they have made it worse.
$\Omega _{k}$
in source are nonstandard from a style standpoint. In case it's not clear, $\Omega _{k}$
and $\Omega_{k}$
compile to the same typeset result, since LaTeX ignores most whitespace characters in math mode.
I've looked into it but didn't really fancy spending that much for something which I'm not sure I have a use for. The same commands should work though if scientific workplace were added as another context for the scientific notebook commands.
I downloaded a 30 day trial of version 6 and managed to get most of the commands working so if you wanted to give it a try I could make a pull request? I suspect that if you prefer SN to LyX then you will prefer the old version though. It's a shame because I really liked 5.5 and it is pretty much impossible for anyone to get hold of now without buying MathTalk.
I think putting some math vocabulary in with dictation is very useful so we don't have to pause or use "say <dictation>" all the time.
Here's what I tried so far (including some of Mike's old code). Capturing dictation and then replacing some words with a dictionary (would be in a separate grammar that would be disabled unless you are doing math).
math_replacement_dictionary = {"math gamma": r"$\gamma$",
"math gamma below beta": r"$\gamma_\beta$"}
def math_replace(dictation, dictionary):
input_list = str(dictation).split(" ")
output_list = []
for i in range(len(input_list)):
if input_list[i] == "cap":
input_list[i+1] = input_list[i+1].title()
else:
output_list.append(input_list[i])
pre_math_string = " ".join(output_list)
output_string = copy.copy(pre_math_string)
for k, v in sorted(dictionary.items(), key=lambda pair: len(pair[0]), reverse=True):
output_string = output_string.replace(k, v)
Text(output_string).execute()
"<dictation>": Function(math_replace, dictionary=math_replacement_dictionary),
The first part of the function is just to getcapitalization for regular dictation. The reason I did the sorting stuff is because I want to make sure I am replacing the largestthing first. e.g. replacing "math gamma below beta" before "math gamma" since otherwise that would cause problems.
We can generate a dictionary for the math replacement dictionary. Let me know what people think. David zurow said he had some thoughts about a better way to do this sort of thing am hoping he will share.
I still need to get it to put in spaces at the beginning of each utterance unless there already is aspace which I guess is something that Dragon does automatically but is not done by this. A variety of things seem kind of clunky when all of your dictation is passed through this. e.g. scratch that doesn't work.
@annakirkpatrick you can have backslashes in the Dragon vocabulary word if you put them in the printed form which is in preferences under a word in the Vocabulary Editor. However, if you are using the approach above if you pass everything through that command, the printed form will be lost it will just write out the written form; in other words you can't do both approaches at the same time.
I'm not sure it's worth it really. Losing dragon's built-in editing features is annoying and this would be vulnerable to slight misrecognitions of the command words. I don't think pausing before starting to dictate latex wastes too much time in the scheme of things.
Probably an easier way of accomplishing something similar would be to just dictate as normal until you have a document with numerous instances of "math gamma" and then just do a find and replace for all of them.
By "Dragon 's built-in editing features" do you mean the commands like "insert before <dictation>" ? That still works with this but those don't usually work in math -based apps anyways. There are a few small issues regarding spacing that need to be worked out. for now I think I'm just going to have a space at the end of the text action. but spacing with things like "open paren" works though the spacing does not seem to work properly for custom Dragon vocabulary words or for "slash". I don't think the find and replace approach would be suitable if you have a lot of different symbols going around. The issue of misrecognitions is important; ideally this grammar would be given lower priority than the other grammars so that it would have the low priority that dictation usually has. Rather than just replacing words it might be more flexible to have a restricted set of commands available, especially for Lyx / scientific notebook where you need keystrokes not just text. I just posted David's suggestion on how to do this at the end of this issue dictation-toolbox/Caster#623 .
In general, this sort of thing would not be so much for a situation where you are doing heavy duty calculations but more for a situation with like 70-30 English-math symbols ratio or higher. I will be trying out this sort of thing in the wild myself so I will see how it goes. I think it will at least be good to have as an option which the user can easily enable/disable, but I will have a better sense after using for a while.