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.