Commit Graph

65 Commits

Author SHA1 Message Date
Enrico Forestieri
a749b73d95 The second argument of Systemcall::startscript is supposed to be encoded
in the filesystem encoding, i.e., the local 8 bit encoding.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39760 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-25 16:38:51 +00:00
Enrico Forestieri
e5cc5ac2e8 Manage the setting of the latex environment for Systemcall and ForkedCall
in a central place.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39758 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-25 13:35:42 +00:00
Enrico Forestieri
7a15d8b232 Do not change, even if temporarily, the environment of the main process
but only that of the launched QProcess.
This will help changing the code in order to manage in a central place
the LaTeX environment, thus avoiding the current code duplication in
Systemcall and ForkedCalls.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39754 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-24 20:53:28 +00:00
Enrico Forestieri
d3c96214f3 Allow batch files with QProcess.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39548 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-28 16:45:46 +00:00
Enrico Forestieri
0eedbdee03 Don't rely on Qt for setting an environment variable.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39049 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-14 18:06:57 +00:00
Enrico Forestieri
1717ef203c Introduce the possibility of setting a prefix for the TEXINPUTS environment
variable. This is done in the preferences, much like as the PATH prefix.
A single '.' in the paths will get replaced with the current document dir
and also non-absolute paths will be prefixed with that dir.

The default semantics of TEXINPUTS apply, such that, for example, if a
path is terminated with a double slash, all subdirectories will be also
searched by both the TeX engine and ancillary programs such as dvi
previewers or dvips. As an example, if the prefix is set to ".:figs", the
TEXINPUTS variable will be set as ".:<docdir>:<docdir>/figs:$ORIGTEXINPUTS",
where <docdir> is the document directory.

The initial '.' is necessary to address the actual current dir (this will
be the temp dir at preview time), while if TEXINPUTS was initially unset,
such that $ORIGTEXINPUTS is empty, a colon (or semicolon on Windows) will
end the path list. This is very important, because we don't want to replace
the system directories but to complement them and, in order to do that, an
empty element has to be present in the list. Indeed, according to the
TEXINPUTS semantics, an empty element means the standard search path.
This works whether TEXINPUTS is originally set or not, because if the
original TEXINPUTS starts with a colon (meaning that the standard search
path is wanted there) we will have an empty element at that point,
otherwise the final colon will simply serve as a path separator.

Of course, on Windows a ';' has to be used as a path separator. LyX will
take care of transforming the platform path list into one understandable
by the TeX engine. For example, this will be the case for a Cygwin version
of LyX using a native Windows TeX engine or viceversa. I tested all of
this and it works for me.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38681 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-09 23:25:51 +00:00
Enrico Forestieri
3efc6385d7 See r37176. Let's keep this a Windows only "feature".
Something went wrong with a script while previewing a document and now
I have to wait for 30 minutes for quitting LyX without killing it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38578 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-04 00:17:07 +00:00
Peter Kümmel
826298831d When getting packages via miktex 3 minutes is to short for
the timeout. 30 minutes should be enough, also for very big documents.
#7228

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37176 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-11 18:46:41 +00:00
Pavel Sanda
5075f0f25f typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35973 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-01 20:24:29 +00:00
Enrico Forestieri
952a31a43e Fix output to terminal when LyX is launched from a GUI on *nix
aka
Surrender to Windowsisms
aka
Resistance is futile, you will be assimilated


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34918 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-16 14:30:46 +00:00
Peter Kümmel
2467a88cde no output to stdout when redirecting, cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34915 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-16 09:57:46 +00:00
Peter Kümmel
146b1083a1 fix stupid renaming error
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34914 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-16 08:14:00 +00:00
Peter Kümmel
7c4122cc4b lyx sytle
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34912 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-16 08:09:38 +00:00
Peter Kümmel
52e58a3700 CamelCase
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34911 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-16 06:08:12 +00:00
Peter Kümmel
48dca70f9e only guard terminal output.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34910 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-16 05:55:31 +00:00
Peter Kümmel
12efe108db Add Pavel's lyxerr extension, add ui for debug levels.
Still needs some fiddling with line endings.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32670 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-29 15:05:37 +00:00
Peter Kümmel
e479ed5b45 remove debug code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32657 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-27 13:43:42 +00:00
Peter Kümmel
99116c8d64 cleanup process output
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32656 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-27 10:53:28 +00:00
Peter Kümmel
74d47d843e add some debug info
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32655 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-27 10:11:50 +00:00
Peter Kümmel
3c5fe7a93b fix formatting
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32648 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-26 17:14:53 +00:00
Peter Kümmel
0f8003c25a be sure processFinished() is only called once.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32647 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-26 16:53:29 +00:00
Peter Kümmel
94ab8c8f74 workaround for Qt (4.5.2) bug: QProcess::started() is emitted twice
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32646 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-26 16:07:16 +00:00
Peter Kümmel
dd4cbb3591 - Show progress information in status bar.
- Remove progress view because ATM we don't have to show anything usefull.
- move Alert:: void functions into GUI thread


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32604 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-21 11:48:19 +00:00
Peter Kümmel
0c19763f60 add progress widget
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32599 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-20 14:27:19 +00:00
Peter Kümmel
aa613aaf01 add progress widget
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32598 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-20 14:26:55 +00:00
Peter Kümmel
ea6d20295a Don't process gui events by default it's too dangerous because we have no synchronization ATM.
And not needed any more because we export buffers in a thread.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32597 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-19 20:33:30 +00:00
Enrico Forestieri
04580d2122 Improve the command-line parser meant to be used for QProcess.
Now, both single- and double-quotes posix-like quoting styles are implemented,
such that a command-line meant for the shell can also be used for QProcess.
However, only redirecting the output to a file is supported. Supporting piping
would require a (major?) rewrite of the Systemcall class.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32590 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-19 17:26:09 +00:00
Peter Kümmel
21686c0bbf UNDO: single quotes in filenames are possible
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32582 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 19:35:32 +00:00
Peter Kümmel
4d5c24e80d Ticket 6266 Quoting Problem with QProcess: don't think we need any quotes (at least on Linux)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32579 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 12:20:22 +00:00
Peter Kümmel
62adbdd307 typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32502 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-13 09:32:38 +00:00
Peter Kümmel
68957712dd cleanup error messages
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32501 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-13 09:30:28 +00:00
Vincent van Ravesteijn
472b09d735 Fix compilation without QProcess.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32491 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-12 14:04:21 +00:00
Peter Kümmel
6fa6bcf1a9 just discovered qtcreators feature 'replace tabs on save' ;)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32377 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-06 22:43:38 +00:00
Peter Kümmel
f69ec61315 no timeout when starting up a process, cleanup error message when error code in not 0
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32376 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-06 22:40:16 +00:00
Peter Kümmel
11020c50f1 add argument to suppress event processing
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32334 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 13:28:30 +00:00
Peter Kümmel
eac9f84482 fix unused var warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32331 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 11:51:39 +00:00
Peter Kümmel
5dabc94547 fix init order
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32330 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 11:48:38 +00:00
Peter Kümmel
0af92c85e9 Enable user input processing when an external process is busy.
If it breaks it anything just flip the bool to disable.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32329 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 11:20:00 +00:00
Peter Kümmel
74e77476b5 also process user input, trigger more processEvents
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32328 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 11:08:24 +00:00
Pavel Sanda
6598b9e2a4 gcc complains because of inicialization order
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32327 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 11:06:29 +00:00
Peter Kümmel
248712bc64 coding style
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32326 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 10:39:48 +00:00
Peter Kümmel
1eb72710eb also delete process on errors, use RAII therefore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32325 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 10:35:32 +00:00
Peter Kümmel
314b79576e more cleanup without behavior changes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32324 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 10:11:06 +00:00
Peter Kümmel
a0bdf5e666 Move some code from the process branch into trunk.
Don't incorporated any progess stuff.
Behavior when starting a process is UNTOUCHED, but could simply changed by setting progessEvents to true.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32323 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 09:51:13 +00:00
Enrico Forestieri
ae3f95b8f0 Fix scons and revert the now not needed r29669.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29692 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-16 15:55:08 +00:00
Enrico Forestieri
a5a05e7dfc Really flush output buffers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29675 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-15 09:20:59 +00:00
Enrico Forestieri
8fe984090f Allow immediate output of spawned processes for all platforms.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29668 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-14 15:13:58 +00:00
Enrico Forestieri
2301c5af8f Fix problem with the nul device on Windows.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29663 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-14 00:12:07 +00:00
Enrico Forestieri
70696182dd Take into account output redirection when spawning a program.
Now things should behave as before the QProcess era (I hope).
The parser only accounts for output redirection, no fancy
things such as piping are possible, yet.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29656 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-13 18:29:58 +00:00
Enrico Forestieri
0ed38ed1f4 Allow to separately redirect stdout and stderr.
Now "lyx > stdout.log" should produce the same output as before
the switch to QProcess.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29655 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-13 12:55:01 +00:00