Commit Graph

76 Commits

Author SHA1 Message Date
Vincent van Ravesteijn
3c67d6f77c Add a comment for the special code on Windows 2014-03-19 21:07:43 +01:00
Vincent van Ravesteijn
d44b465efa Do not use QProcess::startDetached on Windows
QProcess::startDetached cannot provide environment variables. When the
environment variables are set using the latexEnvCmdPrefix, a console
window is shown every time a viewer is started.

On Windows, this reverts commit 5225821242.

Fixes: #9035.
2014-03-19 08:29:38 +01:00
Scott Kostyshak
5225821242 Prevent zombie processes (#8774)
Using Systemcall::startscript() with Starttype::DontWait used to create
zombie processes, as nobody would collect them. This patch starts those
processes as detached, hence preventing them from becoming zombies.

In addition to #8774, this bug was also reported here:
https://bugs.launchpad.net/ubuntu/+source/lyx/+bug/1096666

Patch from Guy Rutenberg. For reference, see this email thread:
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg180034.html
2013-07-16 01:02:28 -04:00
Jean-Marc Lasgouttes
30cbe535c3 Make annoying debug message optional 2013-02-19 13:48:48 +01:00
Scott Kostyshak
51c380440b Constify some catches and others 2012-09-17 04:05:34 -04:00
Scott Kostyshak
80c126b092 Typos
Clean up some comments, LFUN documentation, an error message,
and lyx --help output.
2012-09-12 19:38:26 -04:00
Richard Heck
9e678569ad Typo. 2012-06-06 18:20:02 -04:00
Enrico Forestieri
1eb41a88f2 Fix bug #8032 (timeout when using the Sweave module)
After the timeout elapses, the user is notified that a command is taking
a long time to complete and is given the choice to stop it. If the user
decides to let the command run, the timeout is increased, otherwise the
command is killed. One is prompted a first time after 3 mins, a second
time after 9 mins, a third time after 27 mins, and so on, i.e., the n-th
prompt occurs after 3^n minutes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40775 a592a061-630c-0410-9148-cb99ea01b6c8
2012-02-18 14:16:25 +00:00
Georg Baum
29627f1680 Fix converters with input redirection, such as the second htlatex one.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40647 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-22 12:35:07 +00:00
Enrico Forestieri
c58f009c9b Properly account for output redirection with QProcess.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40110 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-31 02:02:27 +00:00
Enrico Forestieri
775466100f Detect the correct version of python at runtime and store the result
for later calls. The check is only performed on the major version
number, such as to avoid using python 3.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40049 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-28 11:51:48 +00:00
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