xuehuichao / freemind-latex Goto Github PK
View Code? Open in Web Editor NEWWrite slides with mindmap.
License: Apache License 2.0
Write slides with mindmap.
License: Apache License 2.0
It is supposed to show up somewhere in tmp. Having it show up in the same place every time cause copying to fail.
Right now it lingers on many incorrect file contents. This way users can't see anything change in the PDF document, and it is very hard to debug.
Currently everything lives in the same directory. We're basically assuming there's only one document being edited. We may let the main program stay in this directory, while opening other documents with a command line, creating a new document by copying the example over.
I'll test this by a script which runs an installation script, then creating a doc, and then compile it.
Right now when latex fails, we still have to go to logs for debugging. If we can replace the frame with the error message, it would be much nicer.
Right now inotify is setup to monitor a set of files beforehand. When I have multiple tabs open, the file that I care about may not be recompiled automatically. Add a plugin into freemind to monitor tab, and keep inotify in sync.
Right now we still have to run the manual command for releasing to pypi. We can automate this with travis, I suppose. Then I can just focus on the development.
Right now still need to clone it. Should make it easier to run pip install.
Right now we still see some error messages from evince. This isn't very helpful for users. Consider burrying it up.
Creating diagrams right now isn't easy. Being able to include google docs drawings will solve the problem. Freemind button => new Google drawing documents. During each compilation, the script will update the drawing.
Right now the lists, layers etc. are very hard to learn for beginners. We should simplify the grammar, and make a manual that looks super intuitive to learn.
Right now the script may quit during conversion errors. For example:
INFO: MainThread Exiting freemindlatex ...
Traceback (most recent call last):
File "/usr/local/google/home/xuehuichao/.local/bin/freemindlatex", line 11, in <module>
sys.exit(main())
File "/usr/local/google/home/xuehuichao/.local/lib/python2.7/site-packages/freemindlatex/__main__.py", line 377, in main
RunEditingEnvironment(cwd)
File "/usr/local/google/home/xuehuichao/.local/lib/python2.7/site-packages/freemindlatex/__main__.py", line 345, in RunEditingEnvironment
CompileDir(directory)
File "/usr/local/google/home/xuehuichao/.local/lib/python2.7/site-packages/freemindlatex/__main__.py", line 259, in CompileDir
result = _CompileInWorkingDirectory(work_dir)
File "/usr/local/google/home/xuehuichao/.local/lib/python2.7/site-packages/freemindlatex/__main__.py", line 208, in _CompileInWorkingDirectory
'utf8').read())
File "/usr/local/google/home/xuehuichao/.local/lib/python2.7/site-packages/freemindlatex/convert.py", line 345, in __init__
dom = minidom.parseString(mm_file_content)
File "/usr/lib/python2.7/xml/dom/minidom.py", line 1928, in parseString
return expatbuilder.parseString(string)
File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 940, in parseString
return builder.parseString(string)
File "/usr/lib/python2.7/xml/dom/expatbuilder.py", line 223, in parseString
parser.Parse(string, True)
xml.parsers.expat.ExpatError: no element found: line 1, column 0
In this case, evince will quit. We should keep going in this case, and possibly produce errors to the compiled pages.
Right now we have to bring up freemind, pdf reader, inotify separately. I'll have to remember the commands, bring up and tear down every thing in the right order. Build a wrapper for the whole environment that keep these setups in sync.
Right now we have init and compile which are probably not the options people need. Eliminate them.
Right now installation of this software isn't easy -- download a specific freemind, installing inotify and latex, cjk etc. Pack them into one shell script, so that running it will install the tool on any ubuntu machine.
The current template settings is a little boring. We should allow customized templates.
INFO: MainThread Exiting freemindlatex ...
Traceback (most recent call last):
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/freemindlatex/run_app.py", line 199, in <module>
app.run()
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/google/apputils/app.py", line 238, in run
return _actual_start()
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/google/apputils/app.py", line 267, in _actual_start
really_start()
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/google/apputils/app.py", line 220, in really_start
sys.exit(main(argv))
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/freemindlatex/run_app.py", line 190, in main
RunEditingEnvironment(directory, server_address=gflags.FLAGS.using_server)
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/freemindlatex/run_app.py", line 136, in RunEditingEnvironment
latex_client.CompileDir(directory)
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/freemindlatex/compilation_client_lib.py", line 96, in CompileDir
response = self._compilation_stub.CompilePackage(compilation_request)
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/grpc/_channel.py", line 507, in __call__
return _end_unary_response_blocking(state, call, False, deadline)
File "/Users/huxue/Library/Python/2.7/lib/python/site-packages/grpc/_channel.py", line 455, in _end_unary_response_blocking
raise _Rendezvous(state, None, None, deadline)
grpc._channel._Rendezvous: <_Rendezvous of RPC that terminated with (StatusCode.UNAVAILABLE, Endpoint read failed)>
Currently the freemind needs to be downloaded and unzipped by the user. This is no longer compatible with the pip install way of installing freemindlatex. Modify the script to download and install it the first time we run the program.
Currently freemind's code is included. This is not necessary. Remove it, while still keeping pip install to work.
Log says:
ERROR: Couldn't find freemind under '/Users/xuehuichao/Library/Python/2.7/lib/python/site-packages/freemindlatex/../../../../share/freemindlatex/freemind'.
Looks like the jar file is missing.
Freemind spews too many logs onto the console. This doesn't look nice. Hide it.
In the user's directory, put an Latex error file, so people can debug what's going on.
They will be translated into some question mark and inverted question marks in the results.
Testing at every release.
The current installation only supports installing the script itself, not the freemind software. Make that part of the installation happen during the first run of our script.
Right now installing all the dependencies, including python libraries, latex, and its dependencies is not very easy, and not uniform across platforms. Also people might be reluctant to install all the dependencies just for trying this software. Building a docker server for latex can make it easier. Users will only need to install docker, and then a simple command. Or they can just use my server.
The rpc interface basically takes a zipped file, and responds with either a PDF file, or some error messages.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.