Re: Write debug info to file
[EMAIL PROTECTED] wrote: On Wed, 9 Nov 2005, Georg Baum wrote: You can redirect the standard error output to a file on unix systems: lyx -dbg latex 2err.log I'm guessing this assumes bash or sh as the shell? IIRC, it's slightly different in tcsh. csh variants use and ! (the latter overrides the noclobber option) to redirect both stdout and stderr. In classic csh there is no way to redirect only stderr (though stdout can be redirected separately first); I don't remember if there is in tcsh. That's one of the reasons why csh is not popular with Unix experts. See Csh Programming Considered Harmful. On windows it looks maybe different. Actually it's the same, if you're running a current Windows version, using the stock cmd.exe shell, and have command extensions enabled. (I don't remember offhand if command extensions are required, but they're almost always desirable; there's little reason to ever disable them.) I'm not sure, but I don't think it's possible to redirect stderr separately on windows. Unlike csh, this *is* possible in current versions of Windows (at least XP and subsequent). The XP-era cmd allows 2 to redirect only stderr, and constructs like 21 to redirect stderr to stdout. It's still a far cry from ksh, but it's improved to the point where it's usable for simple tasks, anyway. -- Michael Wojcik
Re: Writing in Japanese?
Angus Leeming wrote: Stacia Hartleben wrote: Can you use the current LyX program to write in Japanese? Nope, not yet. The Big Plan (TM) for the next development series after LyX 1.4 is released is to use unicode internally. I'd expect that LyX-CJK would be merged with the official LyX at that point, much as the official LyX eventually swallowed up (and improved upon) the LyX/Win port. So, for now, you'll have to use LyX-CJK. Sorry for the late followup, but this is actually a related question. In my dissertation I need to include a single kanji (SHI/ko, child, Nelson number 1264) in one chapter where I discuss Japanese given names. The original version of this chapter is written in WordPerfect for Linux, which let me insert a kanji character right into the text. In the LyX version (which I'm retyping manually, as that's probably less effort than trying to get a clean conversion and lets me edit and revise as I go), a small graphic of the character would probably be a reasonable alternative, if it's too difficult to get the character itself into the text. But perhaps it wouldn't be so difficult to put this one character in using ERT? Any opinions on the best way to do this? Final output will be PDF (probably created with pdflatex), and I'm using LyX under Windows, though I could easily install it under Linux if for some reason it was easier there. -- Michael Wojcik
Re: Chinese caracter
Eric Germaneau wrote: Does someone know how to use Chinese caracter in a lyx document (so in Latex as well ). If you only need a few Chinese characters, rather than an entire document's worth, you can use conventional LyX (rather than LyX-CJK and a CJK version of LaTeX). Here's what I've done to insert a single Japanese kanji into a conventional LyX document: 1. Install the LaTeX cjk and cjk-fonts packages, if you don't have them already. (I use MiTeX on Windows, so I can't give you any advice for doing this for Slackware.) 2. In the preamble, include the CJK package with \usepackage{cjk}. See the cjk package's documentation (installed with the package) for information on options; I'm not setting any in my documents, but you may want some. 3. Where you need a Chinese, Japanese, or Korean character, insert ERT with the appropriate CJK macro. Here again you'll have to consult the cjk package documentation to find out how to enter Chinese in the encoding of your choice. The CJK package allows you to enter characters directly in various encodings, or as their hex equivalent, which is useful if you want to keep the document pure ASCII (eg so you can edit it in other editors). For my single Japanese kanji, I took the latter route: \begin{CJK}{JIS}{song} \CJKchar{3B}{52} \end{CJK}. That inserts the character corresponding to JIS codepoint 3B52 at that point in the document. It's a real character in an appropriate font, so it scales with the rest of the text and so forth. This works well for DVI and PDF, in my tests. I'd like to thank several people on the list who offered advice when I asked how to do this a while back, by the way, particularly Helge Hafting, who pointed me down this path. -- Michael Wojcik
Re: version control under Windows
Peter Bowyer wrote: At 12:25 21/04/2006, David Legland wrote: Does version control works with Windows ? If yes, what did I miss ? I don't think it does (that was my experience). So I installed TortoiseSVN (http://tortoisesvn.org), set up a local repository and then managed my file versions from Windows explorer by right-clicking on my LyX document. It works a treat. Similarly, I use CVSNT to manage my LyX documents, though with a Windows server. It would work just as well with a local repository; I use a separate server mostly because it gives me a free backup, in effect. I prefer CUI clients, and I don't care to have applications (LyX or otherwise) mucking about with my version control. But there's a Tortoise for CVSNT, too, for people who prefer GUI integration. -- Michael Wojcik
Re: PortableLyX?
[This is a rather late followup - I'm catching up on personal email - but may still be of interest.] Stephen Harris wrote: Regarding the C:\Aspell limitation to portability, perhaps the dos subst or label command would serve as a workaround. Suppose your USB drive was J, then label J: C: I think would change J:\Aspell into C:\Aspell Er, no. The label command writes the volume label, a special filesystem entry that serves as a label for a disk. It has nothing to do with path substitutions. The converse of the subst command was the join command, in MS-DOS. It's not present in the 9x or NT Windows families. if not perhaps the subst command would suffice called from J: Subst creates a virtual drive that's mapped to a path on an existing filesystem. It won't help in this case, where we want a virtual path (c:\aspell) created that's mapped to an existing path. join would, in theory, do the job, if it were still included with the OS, and if you had aspell installed in the root of the destination drive. (It would have to be the root, because join did not let you map an arbitrary destination path, just a destination drive.) What you need, in NT-family Windows, is a reparse point at c:\aspell which redirects to your aspell installation. The base OS includes the mountvol command, which will create a reparse point, but like join (or classic Unix mount, ignoring goofy newcomers like the loopback filesystem) it only lets you associate an entire volume (and not some path on that volume) with the destination. On the other hand, the Windows 2000 Resource Kit (which I think is a free download from Microsoft these days) includes the spiffy linkd command, which will create reparse-point mounts from any source path to any destination path. With it you can do, for example: linkd c:\aspell j:\aspell Note, though, that this requires that c:\aspell not already exist, and that you have appropriate permissions for c:\. It appears to require only the Create Folders authority, but if you're logged in as J Random User on a typical XP box, I suspect you won't have that authority for c:\. And that, of course, is as it should be; ordinary users shouldn't be able to create directories, real or virtual, in the root of the boot drive (assuming c: is the boot drive). -- Michael Wojcik
Re: PortableLyX?
Stephen Harris wrote: Winzip the C:\Aspell directory. Put it on the J: device. I am assuming that this is a USB drive that plugs into the back of a non-admin computer at another location. Copy the C:\Aspell zip file from the J: device over to the C: drive, Note that this step isn't necessary, assuming a standard unzip utility like WinZip or Info-Zip's unzip is available; they'll all unzip from one drive to another. C:\ md Aspell ; and unzip the contents into C:\Aspell. I don't think that takes admin rights. I have a non-admin username to test such things and makedir works for him. Well, it depends on the machine, though in practice it may be that on the typical Windows installation, non-administrative users have write access to c:\. In truth, the concept of administrative and non-administrative users on (NT-family) Windows is a myth of convenience. By default Windows does have an Administrator user and a System Administrators group; the former is assigned a bunch of privileges that aren't granted to ordinary users, and the latter has inheritable full-control access rights to the roots of all filesystems, when they're created. (I'm assuming NTFS.) But this is just a convention, though it's a convention that comes out of the box. You can remove privileges from Administrator, and create restricted ACEs for System Administrators on any filesystm object, including the root; and you can delete Administrator and System Administrators. (Contrast that with traditional Unix, where UID 0 *does* have certain special permissions, such as DAC-override, irrevocably; though some Unix implementations add security mechanisms that restrict superuser capabilities.) And Windows also has the Power Users group and similar out-of-the-box intermediate grades of user, between the unprivileged Guest and the essentially all-powerful System Administrators. These, too, are just collections of privileges and ACEs, and can be modified from one system to another. So it could be that the scheme you propose would work on many Windows machines, but it might well fail for locked-down installations, or if the user's account has minimal privileges (for example, if they're using the standard Guest account). What it really comes down to is whether the user's effective ACE for c:\ allows the Create Folders operation. On one XP machine I just checked, that's true for users in the Users group (ordinary users), but not true for Guest. I don't know if that's how XP comes out of the box, and if eg SP2 changes it. But when all's said and done, there's nothing to be lost by putting the aspell directory on the flash drive and trying to copy it to c:\, or putting aspell and linkd on the flash drive and trying to create the reparse point. If it works, you have spell-checking; if it doesn't, you don't, but you haven't lost anything. (Of course, really one of these days one of us should fix the aspell-execution code in the Windows LyX port. One of these days I hope to do some work on LyX myself, but as I don't use it in my job, I can't give it as high a priority as some of the other FOSS software I use.) So my nonadmin user was able to use linkd and it does not appear that linkd requires admin rights like some of the dos commands. This worked on XP pro, I am not sure about XP home. Your idea appears cleaner/easier. linkd, if it's available, appears to require the same permissions as actually creating the c:\aspell directory, so putting it on the flash drive might indeed be simpler. It also has the advantage that the c:\aspell virtual path will go away when the machine is rebooted or when explicitly deleted with linkd, so there's no permanent change to the target system. -- Michael Wojcik
Re: Chinese characters in standard Lyx
Graham Brown wrote: Occasionally, I need to be able to insert half a line or so of simplified Chinese into the document. I searched the archives and found a very helpful email that suggested that it was possible to use Lyx with CJK latex. I installed CJK latex (I already had the fonts) and proceeded to try the recommended ERT code: \usepackage{cjk} in the preamble; \begin{cjk} etc in the document. When I run the program I get an error message that it cannot find cjk.sty. I have checked and there is no cjk.sty file on my system. Sorry to take so long to respond. This appears to be a case-sensitivity issue. The package is CJK.sty, not cjk.sty. You need \usepackage{CJK} in the preamble. If you don't have CJK.sty on your system, you'll have to look at how your LaTeX implementation installs packages. I'm using MikTeX, so I can't offer any help there. -- Michael Wojcik
Re: Simple beginner questions
Jerome Tuncer wrote: - I inserted the usepackage{hypreref} in the preamble for my LyX links to actually link to web pages (as suggested on the LyX wiki) but the problem is that EVERY cross-reference, footnote and even TOC entries become links, which makes the whole document look kinda ugly. Is there a way to avoid that behavior and make only \href{http://...}{Weebsite link} actual links? You don't mention what driver you're using (that is, what kind of document you're producing, and what program is producing it), and hyperref does have some driver-dependent behavior. However, the following works for me with pdflatex: - You can tell hyperref to leave existing LaTeX commands alone and only create its own macros, such as \url and \href. Do this by setting the implicit=false option when you include hyperref in the preamble: \usepackage[implicit=false]{hyperref} If you do this, and create your links using LyX's Insert-URL... command, then you'll get what you asked for: only those URLs will be converted to links. - Sometimes it's more useful to let hyperref turn everything into links, but without changing the text's appearance. That lets readers navigate by links without the visual distractions. For that, you can use these hyperref options: colorlinks=true,linkcolor=black,citecolor=black,urlcolor=black (I got this from someone else's message to the list - thanks, whoever that was.) You may want to play around with these a bit to get exactly the effect you want. - Your LaTeX installation ought to include the hyperref documentation, which describes all this handy stuff. In my MiTeX installation, it's in texmf/doc/latex/hyperref/ - start with manual.html. (If you're not sure where to find it, search your disk for hyperref.) LaTeX typically comes with tons of package documentation and other useful tidbits, but it's a bit disorganized. -- Michael Wojcik
Re: I'm writing a book in VimOutliner
killermike wrote: I'm also a fan of outlining. For the last year or so I have a been using a mind mapping tool called Kdissert The problem with this tool is that editors don't usually accept pitches in graphical form. This means that the process of pitching an article consists of mapping it out and then writing it up, which is rather long-winded. For this reason, like Steve, I've started to wonder if LyX itself can be used for outlining thanks to the new outlining sidebar. I recently wrote a short paper using the Freemind mind-mapping application and LyX. I used Freemind to collect ideas, and to add text (sometimes as much as an entire paragraph) as it occurred to me. (Freemind supports long nodes that contain formatted text, URLs, etc.) Then I used Freemind's XSLT export feature, with a stylesheet I kluged up, to export the map into a LyX document, with the hierarchy of the mind map converted into nested Enumerate environments. That document couldn't be rendered by LaTeX due to the enumeration depth limit, but LyX displayed it properly, and I easily cut and pasted text from it into a Koma-article document that became the final paper. One of these days I'll fix up the stylesheet to use the proper schedule of environments for Koma-article, so that I can go right from the Freemind map to a skeletal LyX document that can then be flushed out. (There's supposed to be a Ruby script that converts Freemind documents to LaTeX, but it's apparently no longer available, and there are advantages to doing it with XSLT: you can export from within Freemind, and you're using an engine designed for this purpose, so you can concentrate on the transformations rather than the implementation.) -- Michael Wojcik
Re: feedback on LyX 1.5.1
Uwe Stöhr wrote: William B. King schrieb: Don't particularly want this posted. Don't want replies. Don't want to join any lists. You asked for feedback, and I'm sending to the only address you gave me. What are you talking about? I believe he meant: I have some comments regarding the LyX tutorial. I do not want to join a mailing list. I do not want my comments posted to a mailing list. I am not interested in replies to my comments. However, the only address I have to which I might send my feedback is a mailing list, so that is where I will send it. Alas, I am not particularly good at composing clear email messages. -- Michael Wojcik
Re: Using a network printer
[EMAIL PROTECTED] wrote: On Fri, 21 Mar 2008, Mark Hansel wrote: A restriction to print exclusively through viewers breaks lyx! There are circumstances where printing an exported ps file makes sense (e.g., multiple collated copies, transmit). All of that can be done through viewers. I don't think anyone proposes that we remove the ability to produce .ps-files... Personally, I think it'd be nice to be able to rpint directly from LyX. Out of curiosity, why? I print my documents on a Postscript-capable laser printer, and I've never bothered printing from LyX, because I always review the rendered document in a viewer before printing it. If I need to print an existing document without editing it, I generally have a copy of the final rendered version already available, so why re-render it? And if I don't, I'd just as soon run LyX in batch mode to produce one, than go through the GUI. The question as I see it is if it's worth spending time trying to fix bugs in LyX that are related to printing. (And that are probably specific to the GNU/Linux distribution etc) The worst one isn't: File Print simply doesn't make sense, and that's true on all platforms. The design is broken. LyX supports multiple back ends, and as long as that's true, File Print is at best ambiguous. At worst, it's simply broken, for example if I have pdflatex-specific packages or commands in my document (in the preamble or in ERT). At the very least, the menu item should be named something like Print (Postscript) or Print (dvips). An unqualified Print menu action isn't meaningful for LyX. -- Michael Wojcik
Re: WRB - Observations
rgheck wrote: William R. Buckley wrote: I noticed that when trying to browse for the graphic file of a figure inserted into a document via the LyX user interface, and upon trying to utilise a shortcut (as the means to more efficiently select the proper directory that is to be browsed), it happens that LyX copies the shortcut to the Graphics dialog box, instead of opening the directory indicated by the shortcut. I believe this behavior is not what LyX developers intend. Rather, double-clicking on the shortcut should result in an opening of the indicated directory. If so, then this is a bug in Qt for Windows. Soft links work perfectly fine in Linux. I don't think this is a bug in Qt, though arguably it's a missing feature. Shortcuts are not first-class filesystem objects in Windows. They're files that are treated in a special manner by Windows Explorer. The real bug is that Microsoft introduced them in the first place, rather than using a proper filesystem mechanism; and the fix is to avoid them whenever possible, since they're a clumsy, half-implemented hack. The closest analog to soft links in Windows are NTFS junctions, and they work fine with Qt and LyX, as far as I can see. -- Michael Wojcik
Re: question about lyx
Scott White wrote: Date: Sun, 30 Mar 2008 21:38:22 -0400 From: [EMAIL PROTECTED] Scott White wrote: 1) everything is justified. How can I change it to left alignment? Note that LaTeX microspaces, etc, so this looks proper. If you're going to convert to HTML, it probably doesn't matter, since HTML doesn't do justification, does it? Actually I am fairly sure it does. align=justify is valid html tag. It's an attribute, not a tag. And it's deprecated in HTML 4.0, and omitted entirely in XHTML 1.0. The correct way to specify justification in contemporary HTML is with a style. The current LyX functionality does not use this tag. I just don't want to be surprised in the future if LyX started to use it. LyX has nothing to do with HTML output. That's produced by a LaTeX renderer that creates HTML (such as htlatex), which is NOT part of LyX. It's crucial to understand what LyX is and is not. LyX does not produce formatted output, except for its own display on the screen. It's an application for producing LaTeX documents and processing them with LaTeX processors - but those processors are part of a LaTeX implementation (or are separate utilities). They aren't part of LyX. This has nothing to do with LyX and everything to do with whatever HTML converter you are using. See ToolsPreferencesConverters, and look for HTML to see what you're using. htlatex $$i is the converter listed, but looking at my directory structure I think it is MiKTeX 2.7. MiKTeX is a LaTeX implementation. It includes htlatex, which is a LaTeX renderer that produces HTML. So what happens here is: 1. You create your document in LyX. 2. You ask LyX to export to HTML. 3. LyX creates a LaTeX document from your document. That will include LaTeX commands for the various options you've set, packages you've included, etc. 4. LyX looks at your converter preferences to find the command line it should use to create HTML. 5. LyX invokes the specified converter (htlatex, for example). 6. The htlatex it finds on your system is (probably) the one supplied with MiKTeX. htlatex will create HTML (and CSS) from the LaTeX document LyX created in step 3. As you can see, what you do in LyX defines the LaTeX document, and that's the input to htlatex. But LyX can only control the final HTML output to the extent that htlatex can be controlled by what's in the LaTeX source (and options on the htlatex command line, if you edit the converter in your LyX preferences). Ultimately, what goes into your HTML output is up to htlatex. LaTeX isn't designed to let you specify exactly how you want your document to look. (It's possible to get very fine-grained control with LaTeX, but it requires a sophisticated understanding of the language.) It's designed to let you worry about content and structure, and let *it* worry about layout. So if you want to specify exactly how your HTML is going to look, I'd suggest one of two things: don't use LaTeX (and LyX), or edit the style sheet (the CSS file) after generating the content. (You can also create a style sheet ahead of time and just substitute it for the one generated by htlatex.) HTML layout is properly done through a stylesheet (using floats, positioning, widths and heights, etc) anyway. -- Michael Wojcik
Re: WRB - Observations
rgheck wrote: Michael Wojcik wrote: I don't think this is a bug in Qt, though arguably it's a missing feature. Shortcuts are not first-class filesystem objects in Windows. They're files that are treated in a special manner by Windows Explorer. LyX uses Qt for its file dialogs, etc, so if this doesn't work correctly, it's got to do with Qt, bugs or otherwise. Agreed, though it would be good to know why people report different behavior in different dialogs, and different behavior on different systems. It's conceivable that something LyX is doing is either triggering a Qt bug in some circumstances (which might be avoidable), or at least causing differing behavior where we could be consistent. If I weren't in the middle of about a zillion other things I'd grab the current sources and take a look. (Maybe over the summer I'll finally get a chance to dig into the LyX source.) Though, pace William, the *real* problem, as I wrote above, is that shortcuts are not part of the Windows OS. They're purely an application-layer artifact. Certainly not all Windows programs handle them the way William would like. (Windows users can try cd'ing across a shortcut in a shell window - no go. cd'ing across junctions works just fine, however, because they *are* first-class filesystem objects.) -- Michael Wojcik
Re: question about lyx
Rich Shepard wrote: On Mon, 31 Mar 2008, Michael Wojcik wrote: It's an attribute, not a tag. And it's deprecated in HTML 4.0, and omitted entirely in XHTML 1.0. The correct way to specify justification in contemporary HTML is with a style. That's because xhtml has moved toward separation of content and formatting, just as LaTeX/LyX does. The xhtml has the content and the css has the formatting. Yes, HTML is finally catching up with proper document markup languages like CTSS RUNOFF (invented in 1964) in that regard. Of course, RUNOFF led to Multics runoff, which led to Unix roff. As an undergrad I wrote papers in roff (with I think the misc macro package) and printed them with troff on an IBM mainframe laser printer. This was the late 1980s, and the results were pretty slick. RUNOFF also seems to have led to IBM SCRIPT. Partly in response to difficulties with the RUNOFF family, Goldfarb, Mosher, and Lorie invented GML (also IBM, in 1969), which became SGML, which spawned HTML, then XML, then XHTML... Those who forget the separation of presentation and content are doomed to reinvent it. But only after inculcating bad habits in most of their users. (Note the Wikipedia pages for SCRIPT and GML are a bit confused, as usual, about the history and chronology. Goldfarb's own Personal Recollection[1] is a better source of information.) Meanwhile, Knuth created TeX beginning in the late 1970s (the first TeXbook edition was 1982, I think), independently of the RUNOFF / GML families - though I'm sure he was aware of them. TeX of course incorporated significant features that other markup languages did not, such as the sophisticated layout algorithms and extensive support for typesetting mathematical notation. But it too separated content and presentation. For that matter, HTML originally tried to separate content and presentation to some extent. That's why it had strong and em[phasis] tags, for example - presentation was the task of the user agent. But authors wanted more control over presentation (often for no good reason), and HTML became a mess of mixed markup. Modern XHTML plus external stylesheets is really the only way to restore a measure of sanity to HTML. [1] http://www.sgmlsource.com/history/roots.htm -- Michael Wojcik
Re: WRB - Observations
William R. Buckley wrote: What really surprises me is the effort various members have expended to encourage me not to help your project. I quite think your efforts are misguided. Well, I suspect this particular issue (the treatment of Windows shortcuts in some of the LyX file-open dialogs, on some systems) has met with resistance for a handful of reasons. Some of the regulars here do not care for Windows, and given the opportunity will voice that opinion. Some pointed out that LyX does not own the file-open dialogs; they're part of Qt, so this might be a Qt bug. And so forth. With most LyX issues, I think you'll find people are interested in at least identifying the problem and searching for a workaround. And the LyX team does release updates quite frequently, with many a bug fixed. Some issues, like this one, prove controversial, but the great majority are accepted by the developers and experienced users. I might point out that my original posting on this particular subject was not in response to you, but to Richard; and it was simply to note that shortcuts are not a feature of the base Windows OS, but of Explorer. (As I pointed out in another note, they're by no means universally supported in any consistent manner by Windows itself.) I did suggest in that note that not following shortcuts to directories in a file-open dialog could be considered a missing feature. And that's been my position all along, which is why I also suggested that it would be worth investigating the discrepant behavior - even suggested that *I* might do so, if I can find the time. I don't think people here are actually trying to discourage you from contributing to the improvement of LyX, and I'm sorry you feel they are. Rather, I'd interpret this thread as a fairly vigorous and opinionated discussion on the issue at hand, its possible underlying causes, and the nature of the problem (a bug? a missing feature? an annoyance? a quirk? in LyX or Qt or Microsoft controls or Windows?) - and the last, though it's not entirely relevant to fixing the problem, does have some weight in evaluating its importance. -- Michael Wojcik
Re: Footnote without numbering (new)
Jean-Marc Lasgouttes wrote: Adrian Peter [EMAIL PROTECTED] writes: Thank you for the suggestion but unfortunately I really need to put a footnote without a symbol or anything. I am trying to use Lyx for my thesis. Our college requires that if any of the chapters has already appeared as a publication that we need to list it on the first page of the chapter as a footnote. I thought that in such cases a numbered footnote was appended to the title of the chapter. The style Adrian describes seems to be relatively common in the US, for various purposes. For example, many journals set text formatted as a footnote with no number (often on the first or last page of an article), with material such as previous publication, requirements for reproduction, acknowledgments, and so on. A couple of examples I have to hand are _Critical Inquiry_ and _Communications of the ACM_. So I'm not surprised that Adrian's college uses the same convention when documenting prior publication. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Progress on the MS Word to LyX conversion (xml)
Manveru wrote: Have you ever merge XML? I tried - it is horrible work. It depends entirely on how the XML document is formatted. There's nothing that prevents XML with sensible line breaks, for example. I keep lots of XHTML documents in CVS. They're well-formatted, so merging works just fine. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Progress on the MS Word to LyX conversion (xml)
Steve Litt wrote: Trouble is, replacing \begin..\end with .../ is a hack. LyX developers have defined LyX native format as \begin always is the first character on a line. There's no such requirement in XML, and if we require it, that's a hack. If we don't require it, LyX-XML parsing becomes a whole new level of difficulty. It's not hard at all, with an XML parser. Actually, putting all XML elements on their own lines, with or without leading whitespace, can be done with a DFA (or anything equivalent, such as a regular expression); you don't even need a full-strength parser. If you want elements all on their own lines, pre-processing with a quick sed script would do that for you. I'm a toolsmith myself, and I write lots of tools, in lots of languages, for pre- and post-processing various file formats. I don't expect the switch to XML to cause me any problems, and to be honest I'm a bit puzzled by all the worrying. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Interesting thread on Slashdot
Dotan Cohen wrote: Is LyX only good for writing books, then? It's good for whatever works for you. Steve Litt likes LyX for writing books. As he's noted before on the list, he doesn't like it for writing short documents, such as letters. When he uses LyX to write a book, he writes the frontmatter in ERT (LaTeX). That's one way of using LyX, and it seems to work well for him. I use LyX for various types of scholarly articles - including some genres, like collage, that are fairly unlike the typical article. I also use it sometimes for writing short documents such as letters. I like LyX for letters because I find it quick and easy and I don't feel the need to fine-tune the output; I'm happy to let the LaTeX class I'm using do that. Sometimes when I drive a nail I use a hammer; sometimes I use a nailgun; sometimes I use an air-powered palm nailer. I have different hammers for different tasks. Sometimes I use a hammer where someone else might use a nailgun. You want to use an appropriate tool, but that still leaves you with choices, and different users prefer different trade-offs. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: math tool
rgheck wrote: nisa wrote: how math editor is implemented in lyx? how does it automatically format text? pls tell the technical aspects of it in the coding part etc Why would you think this was simple enough to be explained in an email message? Now that part is complicated! You can see it here: http://www.lyx.org/trac/browser/lyx-devel/trunk/src/mathed. Not many of us developers even understand it, though. Andre Poenitz is the master I just browsed a bit of it, and it doesn't look all that hard. Basically a polymorphic model/view system where each sort of math object knows how to render itself, which is what I'd expect. That's a standard idiom - it's the main example in the original Gang of Four _Design Patterns_ book, after all. I'd think someone with decent C++ knowledge and a reasonable grasp of software design could figure the architecture out with a little browsing through the code and perhaps following a few examples through the debugger. (Which is not to say anything against any of the LyX developers - I don't see why anyone would do that unless they need to know how it works. I'm sure all of you *could* if you felt the need.) Or am I missing something? I only read through four or five source files. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: math tool
Christian Ridderström wrote: On Fri, 8 Aug 2008, Abdelrazak Younes wrote: [Sometimes I don't get Abdel's messages to the list. I only see them when someone quotes them, as Christian did here. I don't know why. They're not getting caught by Thunderbird's spam filter; and it only happens to some of them. I haven't noticed any other missing lyx-users messages. Odd.] I don't think you missed anything. And we'd be delighted to have you within the development team :-) I keep meaning to pull the sources from Subversion and take a look. I've just been too busy between work and this part-time Master's degree I'm working on. What I really *should* do is send in a financial contribution. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Reprinted material
killermike wrote: This is something I have have often wondered about too. For example, if you have a book that was written in 1600 but your copy is a 1976 paperback, what do you put for the date? That's part of the protocol you're using for citing sources, which is a question for you and your editor(s), if any. Some disciplines have particular conventions, which are often formalized in style guides. In MLA style, for example, works are sometimes cited using the actual printing date, with the first-publication date in square brackets: 1976 [1600]. That's because minute details of the text are sometimes important in literary and textual studies, and typographical errors, spelling changes, and the like can be introduced in subsequent printings. (Sometimes there are even bigger changes; James apparently rewrote the ending to _Daisy Miller_ at some point between editions, so there are two versions of the novel out there.) What it comes down to, though, is that there are no natural rules for how to cite anything. There are more-or-less arbitrary rules created by various publishing houses, professional organizations, journals, editors, and the like; there are guidelines and style guides; there are the whims of individuals. So no one can give you a universal rule for a specific sort of citation. It depends on who's going to be reading it, and what they'll accept. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Number of documents prepared with LyX? (Was: Frustrated user)
Christian Ridderström wrote: On Wed, 22 Oct 2008, Mike Ressler wrote: I can assure you that LyX has been used to write hundreds of dissertations, theses, and scholarly papers Interesting question... how many such documents have been written using LyX? It appears, from my CVS archives, that I have 16 substantial LyX documents. Not bad, considering I'm often forced to work in Office or OO for interop reasons. And I haven't tried LyX for presentations yet, and those represent a substantial portion of my document output. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: [Fwd: Re: Word processor bashing]
rgheck wrote: I know a lot of people who use Word, etc, and I don't know a single person who regularly uses styles. I do, but that's largely because I'm ornery, and will do things the Right Way even when the tool discourages it. (I use Word for some work documents, and Open Office for some academic documents, when interop is a requirement.) Students and colleagues send me papers written in Word all the time, and I'm struggling to remember a single time any one of them sent me one that used styles. This subject came up today on techrhet, the technology and rhetoric list, and the prevailing opinion seems to be that, yes, students do not use styles, and that training them to use styles would be a good addition to composition curricula. There's also a fair bit of sentiment that getting away from word processors would be nice, but that's not really an option for general-education composition today. Word processing - and specifically Word - is essentially a general-ed skill in itself, in today's job market. In advanced composition and digital-rhetoric classes, many people are teaching other writing tools. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: [Fwd: Re: Word processor bashing]
Micha wrote: Writing a letter in lyx is a pain. Eh? I think I've only ever once written a letter in LyX - because I very rarely write letters on the computer - but it was trivial. I just created a new document using the Koma-script letter v2 template and filled in the blanks. The most time-consuming part was scanning my signature so I could have a handwritten signature stamp in the generated PDF. I can't see why writing a letter in Word would be any easier. (As I recall, the last time I did so, it was more work, because I didn't care for any of Word's letter templates, and the default styles weren't quite right for a business letter.) I know some regulars on the list (notably Steve Litt) have advocated Word for short documents. That's fine if it works for them. But I don't see it, myself. But then I've been using markup languages for short documents for a couple of decades (and word processors for only slightly longer), so perhaps I'm simply used to doing so. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: LyX slow in Windows XP
Paul A. Rubin wrote: AFAIK, csrss manages application access to the graphics subsystem, so I suspect that every time the GUI writes to the screen, csrss is involved. [This is a bit late, but it may be of use to other people who run into this.] csrss is the Client/Server Runtime System Service. It's the usermode part of the Win32 component of modern MS Windows versions. It handles things like the userspace side of thread creation and deletion, and console-mode I/O. (So, for example, if LyX were running with debug enabled, the debug lines being written to the LyX console window might cause a noticeable jump in csrss load. But I haven't tested that.) I don't know offhand of anything it does with graphical rendering tasks, but that doesn't mean it doesn't have its hooks in there, too. Also, some malware - eg some Nimda variants - which drop bogus csrss.exe executables on the machine, so in some cases a busy csrss is actually a trojan. Since you've confirmed the OP's problem on your own system, though, that's not the issue here. It's eating way too many cycles, though, and for that matter LyX seems to be eating more than I would expect. People have reported all sorts of triggers for excessive CPU consumption in csrss: problems with user profiles, stopping the Windows Messenger service, changing power management settings, bad interaction between ProcessExplorer (which starts threads in other processes) and cygwin, a bad TweakUI setting... Sometimes it's due to poor application coding (I saw one report of a console app that busy-waited on the kbhit() system call, which goes through csrss). Sometimes it's due to bugs in the OS, as with the Messenger issue. Because csrss is used for several common tasks, it's hard to guess just what might be causing the problem. One way to track the problem down would be to build LyX with symbols and profile it using kernrate, the free Microsoft sampling profiler, to find out where the hotspots are. Unfortunately I'm not set up to build LyX, and I don't have time right now to pull the sources and do that. (I'm not sure I have the disk space required, for that matter.) -- Michael Wojcik
Re: Perl script for renumbering equations
Steve Litt wrote: On Thursday 08 February 2007 13:36, Gerard Ateshian wrote: I wrote a perl script, renumber.pl, for renumbering equations in LyX (attached). I think before you can post this on the Internet and have people use it, you need to give it a license -- GPL V2, GPL V3, BSD, whatever. Until you do that it's just proprietary software, and it's unlikely anyone will improve upon it. Assuming Gerard's script is entirely original work, why bother with a license? I'd just put it in the public domain. A license is only necessary if the author wants to restrict rights, and for a relatively small, simple program that hardly seems necessary. Of course, some authors do license such materials for ideological reasons; but even now in the AS (After Stallman) era, it's quite common to put short scripts, code snippets, and the like right into the public domain and let anyone - evil, money-grubbing corporations included - use them as they see fit. (I had a short polemic about the diminishment of the public domain ready, but this isn't the place for it.) -- Michael Wojcik
Re: RCS on Windows
André Bonhôte wrote: I am in a process of convincing my team mates to use LyX for documentation. The guys all use windows. I'm not really a windows man, thus the question: What RCS do you recommend? I have downloaded the zip file from the gnu site and copied all the bins to C:\windows, but LyX didn't see the binaries. Next, I have added this dir to the path in the prefs, but still now luck. I'd avoid GNU RCS for Windows. I've seen it corrupt working files numerous times. I don't think I've ever seen it damage RCS files, so a fresh checkout generally got me a good working file, but I don't trust it. (I can't imagine what the problem is. I ported RCS - Tichy's original version, not GNU, which IIRC didn't even exist at the time to 16-bit Windows myself years ago - along with DOS, OS/2, and OS/400 - and never had any problems with file corruption.) I use CVSNT for versioning my LyX files. I haven't bothered trying to drive it from LyX - I just run it manually, from the command line, the way Computers Are Supposed To Be Used :-). But CVSNT does include a co.exe, rcsdiff.exe, etc. It doesn't seem to have a bare ci alias, but a short Windows .cmd file that did a cvs update followed by a cvs commit ought to do the job. (Obviously, the user would have to manually handle any conflicts that couldn't be resolved automatically.) So I'd expect it would be possible to get LyX to work with CVSNT, if you want to use the file-versioning features built into LyX. -- Michael Wojcik
Re: How to insert the degree symbol
Darren Freeman wrote: I looked around and didn't see this - hopefully not blatantly obvious. How do I insert the degree symbol? As in, 360 degrees to a circle. I guess there should also be minutes and seconds. You don't mention what platform you're running on. On Windows, you can just insert the character normally, using Character Map or Alt-0176 (on the numeric keypad), or any of the various utilities that let you type characters not on your keyboard (eg AllChars). You can also use \textdegree in ERT for the degree sign. For minutes my preference would be to use the straight apostrophe and double-quote. The straight double-quote character is available as Insert | Special Character | Ordinary Quote. (cua.bind also supposedly makes it C-quotedbl, but that doesn't work for me with LyX 1.3.5 on Windows; might be fixed in a less ancient version.) However, there's no obvious LyX mechanism to get straight apostrophe. In fact, I don't even know if there's a way to get it in LaTeX. It's not listed in the LaTeX ISO entity reference [1]. There's also prime and Prime (aka double prime), which are ^\prime and {''}, respectively, in math-mode; you can also enter those in ERT as $^\prime$ and ${''}$. The LaTeX ISO character reference sheet lists these as prime or minute and double prime or second, so I guess they're the official minute/second glyphs. Not terribly lovely or convenient, though. There's also variant prime, {'} in math-mode or ${'}$ in ERT, as an alternative to ^\prime; that's a bit more consistent. I suppose you could put the whole expression in math-mode, and use ^\circ (superscript circle) for the degree sign. That's a bit tricky if you're not used to working in math mode. Say for example you want 20 degrees, 30 minutes, 40 seconds. Enter math mode (the a+b/c button on the toolbar), then type 20^\circ (without the quotes). Press right-arrow twice to terminate the \circ entity and get out of the superscript box. Type 30\{' and press right-arrow to get past the }, which LyX automatically inserts for you. Type 40\{'' and press right-arrow to get past the }, then space to get out of math-mode. So, in summary, I'd say math-mode works OK, but this looks like a golden opportunity to practice LyX customization to make it easier to enter this kind of information, if you have to do it more than once or twice. [1] http://www.bitjungle.com/isoent/ -- Michael Wojcik
Re: Keyboard punctuation not working - have to double press to input punctuation chars
Robert Orr wrote: I have a strange problem with my LyX keyboard entry. It seems that I have to double enter the punctuation characters on the keyboard. The first press has no effect, the character appears on screen only after the second press. It sounds like they're being treated as dead keys, but why this would suddenly be happening in only one application on Windows (per the rest of your note, which I snipped) I don't know. But input-method handling in Windows is a little tricky, since (as with so many other things) Windows tries to be helpful and will muck about with settings as you change focus from one application to another, if it has a mind to. (I've seen it switch between the US-English and UK-English keyboard layout in this manner, for example.) Here are a couple of things to try: - In LyX, try typing eg 'e (apostrophe, then e). Do you get an e with an accute accent? If so, then the apostrophe key is being treated as a dead key, which would explain why you have to strike it twice to get just an apostrophe. - Show the language bar (right-click on the Windows taskbar, select Toolbars | Language Bar). If you don't have the Language Bar option, that probably means you have Advanced Text Services disabled, in which case I don't know what the problem might be. (Advanced Text Services is controlled by the Regional and Language Options control panel, Languages tab, Details button.) When you have the Language Bar visible, see if it changes when you switch focus between LyX and other applications where the keyboard works as expected. -- Michael Wojcik
Re: RCS on Windows
Alan Isaac wrote: On Sat, 24 Feb 2007, Michael Wojcik wrote: I'd avoid GNU RCS for Windows. I've seen it corrupt working files numerous times. Perhaps relevant: http://www.uvm.edu/~ashawley/rcs/faq.txt No, these are actual bugs in either RCS or GNU diff. I've worked with RCS since the late 1980s; I ported it to DOS, OS/2, and OS/400. I'm very familiar with how it works. -- Michael Wojcik
Re: degree symbol in lyx on ubuntu with the Compose key
John Pye wrote: Thanks for replying. I tried pasting the degree symbol and viewing with pdflatex. All looks fine. I pasted some accented latin-1 letters as well, all worked fine. Well, that's good, anyway. When I ran the debug thing like you said, I got some crazy output. [I've snipped the output, in case the non-ASCII characters pose problems for other readers.] It appears that LyX is producing control characters in its debug output here, and that's changing the output character set in the tty where you ran lyx. I don't know why LyX would be doing that - if it's a bug, or caused by something in your environment. It's been a long time since I ran LyX on Linux. (I actually prefer a Unix/Linux environment, but because I have to do most of my development work on Windows, it's easier to run LyX there.) You could probably suppress that by filtering the LyX output through something to strip out the control characters. For example: lyx -dbg key 21 | tr -dc '[:print:]\n' That should remove all characters that aren't printable, except newline. Warning: this system's locale uses Unicode. Language code:en_US Setting new encoding for Qt:iso8859-1 Maybe the Unicode locale is a problem; you could try using a different locale, just to see if that has any effect. Other than that, I don't have any ideas. I haven't had to muck about with LyX's input handling on Linux. -- Michael Wojcik
Re: Another pdf question
Paul A. Rubin wrote: Richard Heck wrote: Oisin Feeley wrote: Comments in PDF seem to be something that's only available using the official Adobe toolchain [snip]. On a related thread, Mircea Trandafir pointed out AREnable (http://sourceforge.net/projects/arenable/), which apparently transfers permissions (signed by Acrobat) from one PDF file to another. I just tested it, and it was able to enable commenting in a way that Acrobat Reader recognized. And that tells us all we need to know about Adobe's understanding of digital signatures. Yet another reason to avoid purchasing Adobe products. -- Michael Wojcik
Re: degree symbol in lyx on ubuntu with the Compose key
John Pye wrote: Setting key to 4128, KeySym is Shift_L isOK is 1 isMod is 1 isModifier true sending IMStart with 0 chars to 0x86031c8 sending IMEnd with 1 chars to 0x86031c8, text= Setting key to 0, ? KeySym is ? isOK is 1 isMod is 0 encoding is iso8859-1 Using codec ISO 8859-1 Oof. Can't encode the text ! ISOEncoded returning value 0 At this point, a LyX developer will have to weigh in, I'm afraid. I've been meaning to grab the LyX sources and familiarize myself with the code, but haven't had time yet. (My rather limited time for mucking about with other people's sources is currently taken up with writing Wireshark dissectors...) The Can't encode the text by itself makes me suspicious that the ISO 8859-1 codec isn't recognizing the degree symbol. But the degree symbol is in ISO 8859-1 - it's code point 176.[1] So my suspicions are on the lines Setting key to 0, ? and KeySym is ?, which might mean that the input decoding process failed to recognize the composed character. But at this point I think someone will actually have to look at the code to help you, I'm afraid. Someone mentioned a similar problem in 2004, apparently unresolved.[2] [1] http://htmlhelp.com/reference/charset/iso160-191.gif [2] http://marc.theaimsgroup.com/?l=lyx-usersm=108853821905898w=2 -- Michael Wojcik
Re: Handy word list program for indexing
Steve Litt wrote: fmt -1 tsjustfacts.txt | sed -e s/^[[:space:][:punct:]]*// | sed -e s/[[:space:][:punct:]]*$// | tr [:upper:] [:lower:] | sort | uniq -c | sort -rn The one thing this doesn't do is, upon final sort, sort by count descending but name ascending. Can you think of a way to do that with standard Linux commands? Do you mean you want a sort key composed of the count, sorted numerically and descending, and the name, sorted lexically and ascending? So that words with the same count will be grouped together in the output and, within that group, sorted lexically? Change the final sort to specify a multipart key: sort -k 1nr -k 2 That says sort by a key composed of the first field, taken as numeric, in reverse order; and the second field, using the default options (lexicographic and ascending). This syntax is standard for sort(1) as of SUSv3, by the way - it's not specific to Linux. -- Michael Wojcik
Re: lyx2lyx script broken (1.6.0 on Vista)
Uwe Stöhr wrote: Dominik Waßenhoven schrieb: On the Vista machine, I had no Python installed and the lyx2lyx script failed. I now installed Microsoft's VC++ redistributable package, as suggested by Paul Rubin, and now the lyx2lyx script works. So I think there is a problem with the python.exe and/or python26.dll which are in the bin directory of LyX 1.6. But I also had no Python installed on this Vista machine, only installed LyX using my installer and it worked. I also got feedback that it works for others too. It appears the bundled Python requires a particular release of Microsoft's C runtime. There are approximately a zillion releases of the MSVC runtime, all mutually incompatible. For years, Microsoft handled this by changing the name of the MSVC runtime DLLs with each release. More recently, when someone decided it'd be good to have more incompatible runtime versions than would fit in a single MSVC release cycle, they invented the Side by Side versioning method, which has the advantages of being a black box, completely different from previous Windows DLL versioning mechanisms, and entirely mysterious, opaque, and frustrating for users. Side-by-Side sticks various releases of the MSVC runtime in directories under %windir%\winsxs. Product installers are supposed to include the MSVC redistributable package for the particular MSVC version they need, which will get installed in Side-by-Side if it's not already present. Probably, people who don't have problems with the minimal Python included with Uwe's installer already have the necessary MSVC redistributable on their machine from some other product installation. The fix would be to include the appropriate MSVC redistributable in Uwe's LyX installer. Note that it may have to be updated any time the Python binaries are updated, since they might be linked with a different MSVC version. Sure makes SVR4 shared object versioning look good, doesn't it? -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: lyx2lyx script broken (1.6.0 on Vista)
Andre Poenitz wrote: On Mon, Nov 17, 2008 at 11:07:05AM -0500, Paul A. Rubin wrote: I wonder if disk manufacturers are paying M$ to do this? I've got about 54MB of crap in %windir%\winsxs, with multiple versions of each set of files. Presumably there's no way for Windoze to know that something depending on an older version can use the newer version, so old versions never go away. In fact that's actually the most sensible behaviour since there are only very few cases where a new version indeed can replace an older one without any existing or imagined problem. I respectfully disagree. I've worked on many projects that maintained backward compatibility with new releases of the API, and seen a great many more. And in this case, we're talking C and C++ runtimes, which should conform to the ISO standard anyway. There's no need for them to change every other week. In particular that would mean not only source and binary but also behavioural compatibility including keeping buggy behaviour. No it doesn't. Undefined behavior is undefined; an application that relies on it is broken. And for the rare application that does, there are other Windows mechanisms for tying it to the old version of the DLL. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: lyx2lyx script broken (1.6.0 on Vista)
Jean-Marc Lasgouttes wrote: What's wrong with static linking? At least it goes away when the application goes away. Completely infeasible on Windows. The loss of shared text would make the working set of the typical application mix grossly exceed even the absurd amounts of RAM available in typical machines today. The disk space problem would be even worse. Many people have done back-of-the-envelope calculations to demonstrate this; I think I did some myself, in a post to alt.folklore.computers some time back. It's a lousy idea in any case, as anyone who remembers compiling all of BSD 4.2 to switch from local-files resolution to DNS remembers. Dynamic linking lets you fix the bug or add the feature in one place. We can't have millions of Windows users downloading a refresh of the entire OS every time a bug is fixed in one of the prominent DLLs. Dynamic linking is a good thing. It's worked very well on a number of OSes. It would work on Windows if Microsoft could figure out 1) how to version properly, and 2) how to maintain backward compatibility. And it's not like those are unsolved problems. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: lyx2lyx script broken (1.6.0 on Vista)
Jean-Marc Lasgouttes wrote: Completely infeasible on Windows. The loss of shared text would make the working set of the typical application mix grossly exceed even the absurd amounts of RAM available in typical machines today. The disk space problem would be even worse. I meant just for application which feel that they have to distribute their own version-of-the-day of whatever.dll. There is no reason to do it everywhere of course. Still not feasible, unfortunately, because that includes everything linked with any of the Microsoft C/C++ runtime DLLs. This is the central problem: if you build an application that uses anything in the MS C/C++ library (Microsoft combines the C and C++ standard libraries into a single DLL), which means pretty much anything built with a Microsoft C or C++ compiler, or with the Microsoft Platform SDK, you'll link against some specific version of one or more of the MSVC DLLs. You don't have much choice about which version you get - it depends on what version of the compiler or SDK you have installed, and what updates have been applied to it. For someone else to run that binary, they need that exact same version of the MSVC DLLs. In older versions of the Microsoft toolchain, you could just drop the MSVC DLLs into the same directory as your executable. That's no longer allowed (I think as of Visual Studio 2005 and Platform SDK 6.0). Now they have to be installed into the SxS tree. Microsoft's solution is for every application linked against any MSVC DLL to include the redistributable DLL package for that specific MSVC version as part of their installer package. So it's not the application developers who want you to install a dozen versions of the MSVC runtime. They don't know what versions you already have installed. There's no way to coordinate versions among unrelated applications. People build and distribute binaries, and they carry with them MSVC version requirements. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: lyx2lyx script broken (1.6.0 on Vista)
Andre Poenitz wrote: On Tue, Nov 18, 2008 at 03:47:45PM -0500, Michael Wojcik wrote: Jean-Marc Lasgouttes wrote: What's wrong with static linking? At least it goes away when the application goes away. Completely infeasible on Windows. ... Many people have done back-of-the-envelope calculations to demonstrate this; I think I did some myself, in a post to alt.folklore.computers some time back. Some time back I was disputing the sheer possibility to catch a virus using email. Still ... environments ... came up that made _not catching one_ an art... So things done a while back do not count in IT. That's one of the silliest generalizations I've seen in some time. People who ignore the history of IT are doomed to repeat it. Usually poorly. In this specific case, the situation has only gotten worse. However, I have no particular interest in demonstrating it. If you think static linking is feasible on Windows, go ahead and build LyX that way. Mac OS X pretty much shows that _not_ sharing shared libraries on an application level is a feasible approach to DLL hell. I wouldn't take anything Apple does as a model. I've used too many Apple products. And avoiding shared code in applications is a solution to DLL hell (which is a system administration problem, not an application architecture one) in the same way that walking is a solution to airplane safety. It's a lousy idea in any case, as anyone who remembers compiling all of BSD 4.2 to switch from local-files resolution to DNS remembers. Dynamic linking lets you fix the bug or add the feature in one place. So why go from libstdc++.so.5 to libstdc++.so.6 at all, if incompatible changes can be, as you seem to say, avoided? Because there are many changes that *are* compatible? I'm not a libstdc++ maintainer, so I don't know offhand what the differences in those two releases are; and I'm not going to trawl through the release notes to find out. But it's very rare that a bug fix, or even a new feature, needs to alter an existing API, so there's no reason for it to introduce incompatibility. (Maintaining undefined behavior isn't a compatibility issue. Applications that rely on undefined behavior are broken.) Dynamic linking is a good thing. It's worked very well on a number of OSes. Examples? Most mainframe OSes - all of the MVS and VM family, for example. Also IBM's midrange OSes from S/38 through AS/400 to iOS. Many Unix variants, such as SVR4 and AIX. I believe dynamic linking in VMS wasn't bad, though I only ever looked at it briefly. Worked pretty well on OS/2. For that matter, it often works well on Windows, when DLL management is done properly. It would work on Windows if Microsoft could figure out 1) how to version properly, and 2) how to maintain backward compatibility. And it's not like those are unsolved problems. I am happy to have learned now that these problems are solved. They were solved decades ago. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: lyx2lyx script broken (1.6.0 on Vista)
Andre Poenitz wrote: On Tue, Nov 18, 2008 at 03:42:52PM -0500, Michael Wojcik wrote: Andre Poenitz wrote: On Mon, Nov 17, 2008 at 11:07:05AM -0500, Paul A. Rubin wrote: I've worked on many projects that maintained backward compatibility with new releases of the API, and seen a great many more. Just for my curiosity: Which projects, which scope? Hmm. Off the top of my head, in roughly chronological order: - Various IBM internal-only projects, such as the E editor. - Early versions of Windows. The Windows 1.x to Windows 2.0 and Windows/286 transition maintained compatibility in the Windows API; Windows 1.x applications ran unchanged in the 2.0 family. - X11R3. The X11 API was layered correctly: as long as the server follows the protocol spec, it doesn't matter what it does under the covers. I added support for new hardware to the ddx layer; wrote new window managers with completely different look-and-feel from the standard ones; added extensions to X11 itself. None of that interfered with existing clients one bit. - The 4.3 BSD kernel. Extended multihead support in the console driver and wrote some drivers for new hardware. Enhanced the shared memory kernel option. Nothing that didn't want to use the new features needed to be recompiled. - A number of Micro Focus commercial products and components thereof: AAI, CSB, CCI, MFCC ... These are commercial APIs used by paying customers to build in-house and ISV commercial applications. Changing them and breaking existing mission-critical applications isn't good for business. But we release updates a few times a year for most of them. Take AAI, for example. AAI 1.0 came out in 1988, and had major new releases for the next 10 years. Typical AAI purchases were in the $10K to $300K range, with yearly maintenance fees. The 1998 release had a feature set probably five times as large as in the 1988 release and ran on a dozen more platforms (from 16-bit Windows to big iron). We still shipped, as one of the demos, the original 1988 demo source - unchanged. The *binaries* from 1988 still ran, unchanged. The 1988 AAI clients and servers interoperated with the 1998 ones, with no user intervention (just a bit of automatic protocol negotiation). Maintaining backward compatibility simply is not that hard. I am still pretty convinced that compatibility and progress are fairly incompatible notions when it comes to the development of _usable_ libraries. And I'll say that my experience as a professional software developer for 20 years, and as a hobbyist for a number of years prior to that, shows me otherwise. you try to provide everything and the kitchen sink, and end up with design and implementation decisions that need to be re-evaluated from time to time in the presence of new environments. Java and Python, or anything including a GUI comes to mind. I'll offer X11 as a counterexample. And in this case, we're talking C and C++ runtimes, which should conform to the ISO standard anyway. Ah... should they conform to the Standard or should they be compatible to older versions? To the standard. What is supposed to happen if an existing version does _not_ conform to the Standard? Since the standards attempt to codify existing practice, that rarely happens. The only case that comes to mind of an incompatible change in the C standard, between C90 (ISO 9899-1990) and C99, is the choice of return code semantics for snprintf when it was added to the standard. There were two implementations with different semantics; the committee chose the sensible one. The only significant broken implementations by that point were HP's and Microsoft's, and Microsoft's doesn't really count because 1) the canonical name of the function in the Microsoft libraries was _sprintf, an identifier reserved to the implementation, and 2) Microsoft wasn't inclined to follow the standard anyway. Also: What am I supposed to do in case there is no obvious standard to adhere to? I have e.g. a few hundred kLOC of pre-1998 C++ code (done well before 1998...) around that's uncompilable with todays compilers. Who is to blame here? Should g++ have sticked to 2.95's view of the world? That's not a dynamic-runtime issue, which is what we were discussing. It's another problem entirely - the overly large and loose definition of the C++ language. In particular that would mean not only source and binary but also behavioural compatibility including keeping buggy behaviour. No it doesn't. Undefined behavior is undefined; an application that relies on it is broken. What is an application supposed to do when it lives in an environment where only buggy libraries are available? Suck it up? Might as well ask what a car is supposed to do in an environment with no roads. That's not a design failure in the car, nor a mistake on the part of the car's engineers; and neither does it mean that cars are a bad idea. And for the rare application that does, there are other Windows mechanisms
Re: lyx2lyx script broken (1.6.0 on Vista)
This has gone on far too long, and I'm not really interested in arguing the point. But some of your response is simply factually incorrect. So, for the record: Andre Poenitz wrote: On Sun, Nov 23, 2008 at 11:21:27AM -0500, Michael Wojcik wrote: Andre Poenitz wrote: On Tue, Nov 18, 2008 at 03:42:52PM -0500, Michael Wojcik wrote: I've worked on many projects that maintained backward compatibility with new releases of the API, and seen a great many more. Just for my curiosity: Which projects, which scope? - Early versions of Windows. The Windows 1.x to Windows 2.0 and Windows/286 transition maintained compatibility in the Windows API; Windows 1.x applications ran unchanged in the 2.0 family. Windows 2.0 was released pretty exactly two years after 1.0, Windows 3.0 completely broke the API 2 1/2 years later. 16-bit Windows applications continued to run unchanged under Windows 3.0. So, at best, that's a period of 4.5 years of API stability. That's close to a joke, especially when taking into account that 3.11 was not usable for any reasonable practical purpose... Tell that to the hundreds of customers we sold development tools for Windows 2.0. - X11R3. The X11 API was layered correctly: as long as the server follows the protocol spec, it doesn't matter what it does under the covers. I added support for new hardware to the ddx layer; wrote new window managers with completely different look-and-feel from the standard ones; added extensions to X11 itself. None of that interfered with existing clients one bit. X11R3: End of 88, X11R4: End of 89. And clients continued to work. And they still work, under X11R5. New releases came out and API compatibility was maintained. Which was my point. Pretty much around 1990 supposedly the last person died that used plain X. What's plain X? Everyone always ran windows managers on top of X11. That's part of the architecture. - The 4.3 BSD kernel. Extended multihead support in the console driver and wrote some drivers for new hardware. Enhanced the shared memory kernel option. Nothing that didn't want to use the new features needed to be recompiled. Spring (?) 2001 - January 2002. I don't know what those dates are supposed to refer to. BSD 4.3 was released in 1986. BSD 4.4 in 1994. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Does the version management work under windows?
Paul A. Rubin wrote: Pavel Sanda wrote: ci is a part of rcs. another possibility is subversion. whether there is a possibility to run those creatures under cygwin/windows i haven't slightest clue. Subversion (both server and client) is available for Win XP and higher. As is CVSNT, which includes RCS emulation that ought to work with LyX (though I haven't tried it). There's also at least one port of GNU RCS to Windows, though I'm suspicious of it - back when I last used it, I had what appeared to be file-corruption issues. (It's hard to say, because they weren't reproducible, and it's possible they were caused by something else.) Plus the various Unixy-Windows options, such as Cygwin. For that matter, it's not hard to port RCS to Windows. I ported it to MS-DOS, Windows 3.0, and various versions of OS/2, back in the day. (I also built a distributed version with an OS/400 client. Ah, memories.) But in any case it's easy to get the command-line binaries for all of those version-control systems for Windows. All my Windows machines have both CVSNT and Subversion installed. (I don't bother with Tortoise or other GUI clients; I like to work from the command line for most things. LyX is one of the few exceptions.) -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Show pagebreaks in the editor?
rgheck wrote: Vincent van Ravesteijn wrote: I guess he was just not aware that [showing page breaks] is actually not feasible in LyX, as Richard G. Heck kindly explained. What if it would be feasible ? Would it be an added value or is it too the-non-tex-way ? I don't see the value myself. As I said before, in LaTeX (unlike in Word) page breaks can change by the character, as paragraphs are re-broken and floats are repositioned. I guess that makes me think that it isn't even feasible---where do floats appear, vis-a-vis page breaks? But even if it were, it encourages one to think in the wrong terms, at least during the document-creation process. I think even that statement might be a more-generous take on the matter than I would have. There are two ways a LaTeX editor could show page breaks: by guessing, which is likely to be inaccurate (so of little value), not to mention a huge amount of work; or by continually rerunning the toolchain (as with Instant Preview, but greatly aggravated), which is impractical and a waste of resources. More importantly, looking for formatting results such as the location of page breaks from LyX contradicts the entire design philosophy behind late-formatting document production toolchains. There are early-formatting toolchains (so-called WYSIWYG word processors) for those who want early formatting. TeX, LaTeX, and LyX are not designed that way. And, as Richard says, early formatting conflates content and presentation. There's a reason why the Greek rhetors put style and delivery in separate canons: we can only concentrate on so many details at once. As with most things, there are different benefits and costs to early and late rendering. Trying to make one tool do both is likely to produce something with the faults of each. That doesn't mean it's not useful to ask these questions, of course. Understanding why LyX doesn't show page breaks means understanding the principle of late rendering, and hopefully why it's valuable. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Hyperlink question
Uwe Stöhr wrote: Tao Cumplido schrieb: I tried to call a simple text file from C:\file.txt but got the following error: Text\href{file:C:\file.txt} {file-link} The control sequence at the end of the top line of your error message was never \def'ed. You found a bug. Can you please report it at bugzilla.lyx.org. I'll try to fix this as soon as possible. Is that a bug? file:C:\file.txt is not a valid URL. It should be file:///c:/file.txt. (Actually, even that isn't strictly valid; the c: ought to be c|. But everyone uses and supports c:.) -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Hyperlink question: URL syntax
Hubert Christiaen wrote: An URL is composed of - a protocol part ended with ':' ftp:' 'http:' or 'file:' This is the URI scheme. It doesn't necessarily name a protocol. - an address of the server starting with '//' and ending in '/' if the server is the localmachine, one can put 'localhost' or sometimes also just nothing. In this case you have for a file on your machine already 'file:///' ! - then follows the location on the server, which is a bit OS dependent ... The main point, in a case like this, is that the backslash (\) is not a valid URI character, nor is it the URI component separator for a hierarchical path. A valid file-scheme URL must use the forward slash (/). There's nothing OS-dependent about that; it's required by the URI specification. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Hyperlink question
Tao Cumplido wrote: [I wrote:] Is that a bug? file:C:\file.txt is not a valid URL. It should be file:///c:/file.txt. (Actually, even that isn't strictly valid; the c: ought to be c|. But everyone uses and supports c:.) Ok that kind of works. But how am I supposed to know that the directory has to be written like this? There's no mention about this in the Hyperlink-chapter of the manual. Yes, it'd be nice if the LyX documentation discussed file-scheme URLs in the material on hyperlinks. file-scheme URLs give many Windows users trouble, especially because some Microsoft software (notably IE and Explorer) have very sloppy rules for handling them. In theory, you could figure out how to write them by reading the URI specification (IETF STD0066, if memory serves), but it wouldn't be easy. Jukka Korpela has a discussion on file-scheme URLs, including some notes about how to use them on Windows, here: http://www.cs.tut.fi/~jkorpela/fileurl.html Well, the PDF is processed and it works except in Acrobat where Firefox opens with an empty tab, but I guess that's an Acrobat problem?! This could be the result of the stricter same-domain policy in Mozilla-based browsers, combined with something to do with how Acrobat is invoking Firefox. There's a short comment on that on Jukka's page. There's not much that can be done about it; it's a security measure, so it's supposed to be difficult to circumvent. By the way, you can ignore the bit I wrote above about using c| instead of c:. That's no longer allowed by the current URI specification. A strictly-correct file-scheme URL on Windows would use c%3a for the drive letter and colon. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Hyperlink question
Uwe Stöhr wrote: As said this is a bug in LyX I will fix soon. The LyX will automatically translate \ to / etc. I don't see how that's a LyX bug. Maybe it's a nice feature, though it seems a bit arbitrary. LyX can't also escape reserved characters in the URL, for example, because it can't know if those characters are being used for their reserved purpose. Personally, I'd rather see a documentation update, and not have LyX try to monkey with the URL contents. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Hyperlink question
Uwe Stöhr wrote: Michael Wojcik schrieb: As said this is a bug in LyX I will fix soon. The LyX will automatically translate \ to / etc. I don't see how that's a LyX bug. It is a bug, because \ is not allowed as argument of \href and therefore you get LaTeX errors. Ah, I see. Thanks for that explanation. I was thinking that you were treating LyX's failure to correct a user's error as a bug. -- Michael Wojcik Rhetoric Writing, Michigan State University
Re: LyX Forum?
Piero Faustini wrote: How many people use mailing lists? How many use forums? Say 1 lister every 20 forumers? Say 1 to 10 (and I'm fair)? Fairness doesn't enter into it. Either you have data, or you don't. It's not me who says lists are difficoult, it's people. I never used lists before knowing LyX. Perhaps it is possible that generalizing from your own experience is not a productive research methodology in this case. In addition to lyx-users, I subscribe to 9 email lists that I read regularly. In the past, I've subscribed to at least as many others, which I dropped only because their subject areas were no longer as relevant to me. I don't participate regularly in any web forums. Email lists have been in widespread use for decades. They've endured in the face of competitive technologies (Usenet, various web-based systems, instant messaging) because for some purposes, a significant number of users find them superior. Everyone on lyx-users could use a web forum. That we choose not to disproves your claim. In this instance, people have chosen to use the list. It's 10 years since last time I disabled cookies. Hurrah for you. Other people may make different choices. Children use forums. Children who use LyX are welcome to discuss it in forums. So, for that matter, are adults. Some of us don't want to. Lists are difficoult to use comparing to their advantages, so they are for PRO users, almost always have been, and in future I guess they will be ONLY for pro. Utter nonsense. Look at the history of BITNET lists, for example. There is a regrettable tendency, in discussing computer culture, to offer spurious claims about the history of computing as support for arguing that technology X is superior, intuitive, usable, etc. This happens frequently in academia (I've seen a number of scholars make these arguments just in the past year), and even more often in casual argumentation. These arguments are unpersuasive for at least two reasons. First, their historical claims, as I noted, are generally not supported by any data; and they're often contradicted by the data that is available. Second, they endorse the most naive sort of teleological narrative. Even if more users chose technology X in the past, that hardly implies that technology X is better, or that moving to technology X would attract more users, or that any other benefit automatically attaches to technology X. Indeed, this is the entire proposition of LyX: that it's better, at least for some purposes, than Microsoft Word. More people use Word. Children use Word. That doesn't prove Word is better; it doesn't prove Word is easier; it doesn't prove that more people would switch to LyX if it were more like Word. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: When to use quote and quotation
Rich Shepard wrote: On Fri, 21 Jan 2005, G. Milde wrote: Did you ever try both of them? Actually, quote formats with space delimited paragraphs, quotation uses indented paragraphs. How interesting! I have not noticed that although I use both in my book and in reports. I guess that I never looked closely enough at the two of them side-by-side to see that. The description of the two environments in either the Tutorial or the User's Guide (I think the latter) emphasizes the distinction in paragraph-separation style as the difference between the two. I don't recall it even suggesting that quote was for short quotations and quotation for longer ones. Personally, I'd like a quoting environment where all paragraphs except the first were indented, and without spacing between paragraphs; that'd better match most of my quotations that cross a paragraph boundary, since they often don't start at the beginning of a paragraph. But that's minor - I imagine I can probably suppress the indentation of the first paragraph with a little ERT. -- Michael Wojcik
Re: failed import of latex doc (relyx produces something that causes lyx2lyx to hang)
Angus Leeming wrote: Jean-Marc Lasgouttes wrote: Another guess is that lyx2lyx fails to run. What version of LyX for windows are you using? 1.3.5 has a bug that prevents lyx2lyx from running (it is invoked directly, and windows does not guess that it is a python script, since it does not have a .py extension). Windows users, please correct me if I am wrong. I understand that that wouldn't work even if it had a .py extension. That mechanism is triggered only if you click on the blighter or such like. Apparently. The only sure fire way to get things working is to invoke it as python path to/lyx2lyx. Actually, at least in XP (and, presumably, Win2003), if the association for the py file extension is correct, running foo.py from the command line works fine, as does eg system(foo.py). I didn't bother testing OS functions like CreateProcess, or check the source to see how lyx2lyx is being run. It's a bit moot as long as lyx2lyx doesn't have an extension. In older versions of Windows, you would have had to use the start command to have the associated program (python.exe in this case) executed for a *.py file, IIRC; just typing the name at the command prompt wouldn't have done it. I tried playing around with various combinations of Windows shortcuts and Interix symbolic and hard links, but couldn't find one that would pick the right associated program for a file without an extension. -- Michael Wojcik
Re: failed import of latex doc (relyx produces something that causes lyx2lyx to hang)
Jack M. Lyon wrote: I get the same thing: An error occurred when running the conversion script. If I add the .py extension to lyx2lyx, the program says it can't *find* the conversion script. You may have intended to send this to the list instead of me; it appears that LyX-Users sets Reply-To to the original sender's address. Executing a Python script in WinXP directly requires that the .py extension (if that's what the file has) have the correct association, including a full path to python.exe; and that the script be in a directory on PATH. However, I assume the problem here is that whatever's executing lyx2lyx (relyx?) tries to run lyx2lyx, not lyx2lyx.py. That's why I noted in my message to the list that the Windows file-association facility was moot in this case - as long as lyx2lyx doesn't have an extension, file-association isn't going to help. You could try the following: 1. Rename lyx2lyx to lyx2lyx.py. 2. Make sure .py files have the correct association. You can create a simple test.py containing just print 'Hello' and run that from the command line to check. 3. Create a command file named lyx2lyx.cmd to run lyx2lyx.py: @ /path/to/lyx2lyx.py %* (omit the path information if lyx2lyx.py is in a directory on your path, or guaranteed in the current directory when lyx2lyx.cmd is executed). 4. Now, you should be able to run lyx2lyx; that will actually run lyx2lyx.cmd, which will run lyx2lyx.py. I haven't actually tried this with lyx2lyx, but it works for a simple test Python script, so it might fix the lyx2lxy issue on Windows. -- Michael Wojcik
Re: Option to get Thesaurus
Jean-Marc Lasgouttes wrote: Paul == Paul Smith [EMAIL PROTECTED] writes: There is something I do not understand: you have Paul $ locate bz | grep lib | grep -v libz [...] Paul /usr/lib/libbz2.so.1 Paul /usr/lib/libbz2.so.1.0.0 whereas your config.log says: configure:5506: checking for main in -lAiksaurus configure:5531: g++ -o conftest -O conftest.cc -lAiksaurus -lbz2 -lc -lm 5 /usr/bin/ld: cannot find -lbz2 collect2: ld returned 1 exit status Can someone tell me how come libbz2 is not found? Does Paul have a /usr/lib/libbz2.so, with no version extension? -lbz2 won't resolve to /usr/lib/libbz2.so.1 without one, will it? (/usr/lib/libbz2.so should be a symlink to /usr/lib/libbz2.so.1.0.0) That's the standard mechanism with SVR4 shared object versioning: /usr/lib contains one or more versions of the library with version extensions, plus a symbolic link from the no-version name to the version that should be used for programs being linked against that library. ld opens the .so through the symlink, gets its embedded version information, and records it in the binary, so that ldd knows which version to dynamically link into the process at startup. So ldd wants the filenames with suffixed version numbers, but ld wants them with no suffix. Presumably, the fix would be to create the missing symlink: su root ln -s libbz2.so.1.0.0 /usr/lib/libbz2.so but I haven't tried this myself. -- Michael Wojcik
Re: Option to get Thesaurus
Paul Smith wrote: On Thu, 27 Jan 2005 09:23:48 -0500, Michael Wojcik [EMAIL PROTECTED] wrote: Presumably, the fix would be to create the missing symlink: su root ln -s libbz2.so.1.0.0 /usr/lib/libbz2.so but I haven't tried this myself. Thanks, Michael, but, apparently, it does not solve the problem, as after su root ln -s libbz2.so.1.0.0 /usr/lib/libbz2.so the configure command gives the following: Configuration Host type: i686-pc-linux-gnu Special build flags:use-pspell C Compiler: gcc C Compiler flags: -g -O2 C++ Compiler: g++ (3.4.1) C++ Compiler flags: -O Linker flags: Frontend: qt Qt version: 3.3.3 LyX binary dir: /usr/local/bin LyX files dir: /usr/local/share/lyx and, as it can be confirmed above, no mention to Aiksaurus. My understanding of one of Jean-Marc's comments in this thread was that he only just now fixed the configure script to note that Aiksaurus had been found during configuration. I'd check config.log to see if you had errors regarding bzip2. It may be that creating the symbolic link wasn't sufficient; you might need a bzip2 development package (probably called bzip2-devel or some such) in order to get required headers and so forth. At any rate, I should have been clearer: what I meant by the fix was the fix for -lbz2 failing. Whether that would permit the LyX configure to decide it could include Aiksaurus support I couldn't guess without further research. I haven't looked at configuring for Aiksaurus, or indeed configuing the LyX build at all; at the moment I'm only using it on Windows. (That was the easiest platform for me to try it out with initially, and so far it's working fine, so I haven't bothered putting it on Linux yet.) And I'm not a big fan of the computerized thesaurus (or its evil cousin the spelling-checker) anyway, to be honest, so it's unlikely that I'd have pursued this for my own purposes. -- Michael Wojcik
Re: Option to get Thesaurus
Paul Smith wrote: In fact, after having made the symbolic link suggested by you, I proceeded with make and make install, and the final result was successful, i.e., Aiksaurus was finally made available inside LyX. In spite of this fact, no mention to Aiksaurus was made at the end of the command configure. Glad to hear it. I've done a draft Wiki Tips page for this hint: http://wiki.lyx.org/pmwiki.php/Playground/MwojcikWikiSandbox If there are no objections, I'll try adding it to the Tips section. (This is my first Wiki piece, so I thought I'd give the experts a chance to glance over it first.) I can also do a Tip for my Windows lyx2lyx.cmd hack. -- Michael Wojcik
Re: LyX-TeX Log Location?
Rich Shepard wrote: On Thu, 27 Jan 2005, G. Milde wrote: Another guess is, that you saw the standard output of LyX and programs it called (like bibtex). If you start LyX from a x-terminal emulator, you will see a lot of messages (and with the -dbg something option even more. I used -dbg 128 but didn't see the same messages as before. Oh, well. Something else worth trying, in general, is to run an X console window (with a program like xconsole, or an xterm with the -C option to become the system console), so that console messages aren't hidden until you exit X. Some of this ends up in ~./xsession-errors. Don't have one of those on my system. It's actually ~/.xsession-errors - that is, a file named .xsession-errors in your home directory. -- Michael Wojcik
Re: failed import of latex doc (relyx produces something that causes lyx2lyx to hang)
Andre Poenitz wrote: On Wed, Jan 26, 2005 at 06:59:29PM -0500, Michael Wojcik wrote: Actually, at least in XP (and, presumably, Win2003), if the association for the py file extension is correct, running foo.py from the command line works fine, as does eg system(foo.py). I didn't bother testing OS functions like CreateProcess, or check the source to see how lyx2lyx is being run. It's a bit moot as long as lyx2lyx doesn't have an extension. It has no extension. Yes, I know; that's why I said it was moot. I meant as long as in the strict sense (until it is changed), not in the idiomatic sense of if it is true that. Or am I missing your point? -- Michael Wojcik
Re: failed import of latex doc (relyx produces something that causes lyx2lyx to hang)
Ekkehart Schlicht wrote: Michael Wojcik wrote: You could try the following: 1. Rename lyx2lyx to lyx2lyx.py. 2. Make sure .py files have the correct association. You can create a simple test.py containing just print 'Hello' and run that from the command line to check. 3. Create a command file named lyx2lyx.cmd to run lyx2lyx.py: @ /path/to/lyx2lyx.py %* . 4. Now, you should be able to run lyx2lyx; that will actually run lyx2lyx.cmd, which will run lyx2lyx.py. I haven't actually tried this with lyx2lyx, but it works for a simple test Python script, so it might fix the lyx2lxy issue on Windows. Just to confirm: This works just fine with lyx2lyx and LyX/Win32 qt 1.3.5. (and lyx2lyx.cmd in the lyx\share\lyx\lyx2lyx directory.) Maybe this would be good post in Wiki. Thanks, Ekkehart, for confirming this. I'll write a Wiki tip. (I have another one pending that I haven't added to the actual Wiki yet, so I'll get both of them up there as soon as I have a free moment.) -- Michael Wojcik
Re: Exports
Colin J. Williams wrote: Paul A. Rubin wrote: Colin J. Williams wrote: Are there known problems with Export? I find that I cannot export to ascii or latex. What platform? There's a bit of an adventure with exporting on Windows, depending on how you opened the file (file menu v. double-clicking the file icon). Thanks, you have put your finger on the problem. If I open a file I can export. With clicking in the Windows Explorer I cannot. The workaround appears to be NEVER enter LyX by clicking. I've removed the file association I am using Windows XP with Lyx 1.3.5. This workaround works for me. It requires features that AFAIK were only added to cmd.exe in XP, so it probably won't work with older versions of Windows. Create a file named loadlyx.cmd in the lyx/bin directory or somewhere else appropriate (eg in a tools directory on your path), containing: @path c:\programs\lyx\bin;%path% for /f usebackq %%a in (`echo %1 ^| tr \\ /`) do lyx %%a Substitute your LyX installation directory for c:\programs\lyx. (If the LyX bin directory is already in your path, you can skip the path command, but if you have other tr implementations in your path before the LyX one, you may have to fiddle with the backquoted command string, as some of them handle backslash escapes differently.) Then associate your LyX file extension (.lyx or whatever) with loadlyx.cmd. loadlyx converts backslashes to forward slashes on the lyx command line, fixing the problem with exports. Looking at this now, it looks like it won't handle spacy names correctly. It should be possible to fix that by making sure the name is quoted when it's passed to loadlyx, and setting the delim option in the for command. Left as an exercise for the reader, unless I get around to writing a followup. -- Michael Wojcik
Re: Include files
Geoffrey Lloyd wrote: The path to the target is c:\lyxfiles\thesis\ch3.lyx The full error message is -- Error: Cannot open file: C:/lyx/tmp/lyx_tmpdir3780a04072/lyx_tmpbuf0/c:/lyxfiles/thesis/ch3.tex Invalid arguement -- This looks to me like a simple case of LyX not recognizing that a path which starts with a drive letter specification (c:/) is an absolute path and not a relative one. Could you try without the drive letter, that is setting the target to /lyxfiles/thesis/ch3.tex? (And is argument actually misspelled in the error message? I really must download the source so I can start submitting patches. This is just the sort of thing that the main developers never get around to because it's not a showstopper for anyone, but is trivial to fix, so it's ideal for a community-contributed patch.) -- Michael Wojcik
Re: Simplifying the print job
Yousef Raffah wrote: I have created a lyx document and converted it to pdf using pdflatex. When I print the pdf document, the HP laser printer gives me an error message 21 Page Too Complex and some of the pages print in half only, I googled that error and found http://www.printertechs.com/tech/error-codes/error-codes-20-49.php which advices to simplify the print job. My question, how can I ensure my lyx document is simply when I convert it to pdf? As far as I know, that's difficult to do in LyX itself without changing the content of the document. There are probably places where you could achieve the same final appearance with different LaTeX constructs which would produce a simpler PDF structure, but I don't know any easy way to find them. I'd recommend starting with the settings for your printer driver (if this is Windows - remember when posting a question to say what your platform is!) and the program you're using to print the PDF. Adobe has some suggestions at [1] for problems printing PDF documents to a Postscript printer. The easiest solution, though, is to add more memory to your printer, if that's an option. 1. http://www.adobe.com/support/techdocs/316508.html -- Michael Wojcik
Re: why lyx when there's word?
Steve Litt wrote: I think a person should use Word (or in my case OpenOffice) for most stuff. Oh, goody. Now we start the Battle of Improperly-Generalized Anecdotes. Here's mine: If it's under 10,000 words, LyX is a hassle unless you're willing to accept ALL LyX's defaults. Here's why... In WordPerfect 5.1, Word or OpenOffice, modifying a style is a 5 minute procedure. For very sophisticated styles it might take an hour. I've spent more than an hour trying to coerce Word - without luck - into fixing some glaring formatting error. It's particularly bad about mysteriously deciding to screw with the left indent, in my experience, and particularly prone to trouble when editing a document originally produced by someone else on another system (and so with different customizations applied to normal.dot, aka Word's Dungeon of Mystery). But in LyX, I've spent 2 days modifying one paragraph style (Environment in LyX speak). My sympathies, but this hardly defines the LyX experience for everyone, any more than my Word experience does. Meanwhile, although WordPerfect 5.0 had character styles in May 1988, and Word had styles at least as early as the early 1990's, LyX still does not have character styles (something I keep urging the developers to put in). Sure, and that's a problem for people who want character styles. There's quite a jump from don't need character styles to willing to accept ALL LyX's defaults, don't you think? In summary, changing the default look of a document class is a HUGE time sink. I've made a number of changes to the default layout of my dissertation, and the time spent doing that is a negligible fraction of my writing time. And this is the first time I've used LyX or LaTeX (though I admit I'm not new to markup languages in general). I haven't used LyX for a short document, because all of the short documents I've created since I started using it are HTML, except for a couple that had to be Word due to outside requirements. But I'd have no qualms about using it for one. Certainly *I* find it far less annoying than Word, which as far as I can tell (and I've been using it since the free demo that shipped as a 5 1/2 floppy bound into an issue of _PC Magazine_) is nothing but a nasty collection of ad hoc formatting functions thrown on top of a virtual typewriter. And there's my anecdote, which I imagine is irrelevant for the vast majority of Word and LyX users. Some people survey the tools available to them, and weigh their advantages and costs; but most use the first one that comes to hand, or the one that their friends use, or the one that seems to offer the path of least resistance, or the one chosen for any number of contingent reasons that have nothing to do with quality. Marshalling arguments about LyX's superiority, under whatever conditions, isn't going to achieve much, because the operative conditions vary among users (as the difference between Steve's opinion and mine shows), and more importantly because most users aren't interested in those arguments or indeed in the relative merits of available tools. For most users, good enough - even by the slimmest of margins, even with gross compromise - is good enough, and there simply isn't any impetus to change. Furthermore, most Word users, I believe, want to get some text on a page (whether it's paper or just on screen - I see lots of Word documents that will never be printed). They don't particularly care if it looks good, so long as it looks as if something's been done to it - that they've done due diligence to pretty it up. Separating content and presentation may be elegant and efficient and maintainable, but most Word documents are write-once anyway. And, of course, there are the realities of document interchange. If you're writing academic articles in the humanities, good luck submitting in anything Word can't digest. Sometimes PDF is an option, but that's still relatively rare. And for students that often applies as well, since professors are increasingly requesting electronic submission of papers, and many of them won't take anything but Word. -- Michael Wojcik
Re: LyXWin not working on XP
Brian Williams wrote: If it could deal with spaces in the user directory, surely it wouldn't need that restriction? The way I get around this is to map a local network drive (X:) to the Documents and Settings directory so as to avoid having to create yet another top level directory. Quick Windows tip: rather than mapping a local network drive, try subst, which is faster (operates directly at the filesystem level - no SMB generation and parsing, no transfers through the loopback interface), cleaner, and safer (no unnecessarily-shared directory). You can make the subst command an autorun entry in the Registry so it takes effect every time you reboot. (Personally, I don't use the Documents and Settings directory at all if I can help it. I have a sensible user directory with a non-spacey path.) -- Michael Wojcik
Re: LyXWin not working on XP
Paul A. Rubin wrote: Rob S wrote: More info please! subst?? subst (short for substitute) is an old DOS command that is still supported Thanks for following up on this for me, Paul. I've been travelling and have fallen behind on my personal email. One additional note: if you open a command window and type help subst or subst /?, you'll get some usage information. -- Michael Wojcik
Re: Heretical question?
Paul A. Rubin wrote: Can anyone summarize pros/cons of the various options listed in this thread? You're all using (and most are actively developing) LyX, so I assume you see some advantages to LyX, right? [This is late, but Paul's query doesn't seem to have garnered much response.] One LyX advantage: it isn't WYSIWYG. I'm happy to argue that separating content and presentation is the right way to go, and that WYSIWYG has done tremendous damage to writing. (Yes, some of my friends at MSU's WIDE (Writing in Digital Environments) center might disagree with that, but if we all agreed on everything we wouldn't have much to talk about at parties.) -- Michael Wojcik
Re: Spellchecker - My stupidity!
Stephen P. Harris wrote: - Original Message - From: Michael Wojcik [EMAIL PROTECTED] Geoffrey Lloyd wrote: While two open single quotes are needed - ie `` - the use of is valid for closing quotes. Needed why? In LyX, the character should be suitable for both. (See User's Guide 3.7.2.2 on setting quote-character options.) Here is an example taken from an explanation of how to write correct syntax when using regular expressions. Not a compelling example, I'm afraid, unless I'm missing something. The example you provided isn't a LyX file, and its use of the backquote and single quote characters to resemble double-quote characters is hardly necessary. Regular double-quote characters would have served just as well. More importantly, your example doesn't touch on Geoffrey's claim that two open single quotes are needed [but the double quote character] is valid for closing quotes. -- Michael Wojcik
Re: Write debug info to file
[EMAIL PROTECTED] wrote: On Wed, 9 Nov 2005, Georg Baum wrote: You can redirect the standard error output to a file on unix systems: lyx -dbg latex 2err.log I'm guessing this assumes bash or sh as the shell? IIRC, it's slightly different in tcsh. csh variants use and ! (the latter overrides the noclobber option) to redirect both stdout and stderr. In classic csh there is no way to redirect only stderr (though stdout can be redirected separately first); I don't remember if there is in tcsh. That's one of the reasons why csh is not popular with Unix experts. See Csh Programming Considered Harmful. On windows it looks maybe different. Actually it's the same, if you're running a current Windows version, using the stock cmd.exe shell, and have command extensions enabled. (I don't remember offhand if command extensions are required, but they're almost always desirable; there's little reason to ever disable them.) I'm not sure, but I don't think it's possible to redirect stderr separately on windows. Unlike csh, this *is* possible in current versions of Windows (at least XP and subsequent). The XP-era cmd allows 2 to redirect only stderr, and constructs like 21 to redirect stderr to stdout. It's still a far cry from ksh, but it's improved to the point where it's usable for simple tasks, anyway. -- Michael Wojcik
Re: Writing in Japanese?
Angus Leeming wrote: Stacia Hartleben wrote: Can you use the current LyX program to write in Japanese? Nope, not yet. The Big Plan (TM) for the next development series after LyX 1.4 is released is to use unicode internally. I'd expect that LyX-CJK would be merged with the official LyX at that point, much as the official LyX eventually swallowed up (and improved upon) the LyX/Win port. So, for now, you'll have to use LyX-CJK. Sorry for the late followup, but this is actually a related question. In my dissertation I need to include a single kanji (SHI/ko, child, Nelson number 1264) in one chapter where I discuss Japanese given names. The original version of this chapter is written in WordPerfect for Linux, which let me insert a kanji character right into the text. In the LyX version (which I'm retyping manually, as that's probably less effort than trying to get a clean conversion and lets me edit and revise as I go), a small graphic of the character would probably be a reasonable alternative, if it's too difficult to get the character itself into the text. But perhaps it wouldn't be so difficult to put this one character in using ERT? Any opinions on the best way to do this? Final output will be PDF (probably created with pdflatex), and I'm using LyX under Windows, though I could easily install it under Linux if for some reason it was easier there. -- Michael Wojcik
Re: Chinese caracter
Eric Germaneau wrote: Does someone know how to use Chinese caracter in a lyx document (so in Latex as well ). If you only need a few Chinese characters, rather than an entire document's worth, you can use conventional LyX (rather than LyX-CJK and a CJK version of LaTeX). Here's what I've done to insert a single Japanese kanji into a conventional LyX document: 1. Install the LaTeX cjk and cjk-fonts packages, if you don't have them already. (I use MiTeX on Windows, so I can't give you any advice for doing this for Slackware.) 2. In the preamble, include the CJK package with \usepackage{cjk}. See the cjk package's documentation (installed with the package) for information on options; I'm not setting any in my documents, but you may want some. 3. Where you need a Chinese, Japanese, or Korean character, insert ERT with the appropriate CJK macro. Here again you'll have to consult the cjk package documentation to find out how to enter Chinese in the encoding of your choice. The CJK package allows you to enter characters directly in various encodings, or as their hex equivalent, which is useful if you want to keep the document pure ASCII (eg so you can edit it in other editors). For my single Japanese kanji, I took the latter route: \begin{CJK}{JIS}{song} \CJKchar{3B}{52} \end{CJK}. That inserts the character corresponding to JIS codepoint 3B52 at that point in the document. It's a real character in an appropriate font, so it scales with the rest of the text and so forth. This works well for DVI and PDF, in my tests. I'd like to thank several people on the list who offered advice when I asked how to do this a while back, by the way, particularly Helge Hafting, who pointed me down this path. -- Michael Wojcik
Re: version control under Windows
Peter Bowyer wrote: At 12:25 21/04/2006, David Legland wrote: Does version control works with Windows ? If yes, what did I miss ? I don't think it does (that was my experience). So I installed TortoiseSVN (http://tortoisesvn.org), set up a local repository and then managed my file versions from Windows explorer by right-clicking on my LyX document. It works a treat. Similarly, I use CVSNT to manage my LyX documents, though with a Windows server. It would work just as well with a local repository; I use a separate server mostly because it gives me a free backup, in effect. I prefer CUI clients, and I don't care to have applications (LyX or otherwise) mucking about with my version control. But there's a Tortoise for CVSNT, too, for people who prefer GUI integration. -- Michael Wojcik
Re: PortableLyX?
[This is a rather late followup - I'm catching up on personal email - but may still be of interest.] Stephen Harris wrote: Regarding the C:\Aspell limitation to portability, perhaps the dos subst or label command would serve as a workaround. Suppose your USB drive was J, then label J: C: I think would change J:\Aspell into C:\Aspell Er, no. The label command writes the volume label, a special filesystem entry that serves as a label for a disk. It has nothing to do with path substitutions. The converse of the subst command was the join command, in MS-DOS. It's not present in the 9x or NT Windows families. if not perhaps the subst command would suffice called from J: Subst creates a virtual drive that's mapped to a path on an existing filesystem. It won't help in this case, where we want a virtual path (c:\aspell) created that's mapped to an existing path. join would, in theory, do the job, if it were still included with the OS, and if you had aspell installed in the root of the destination drive. (It would have to be the root, because join did not let you map an arbitrary destination path, just a destination drive.) What you need, in NT-family Windows, is a reparse point at c:\aspell which redirects to your aspell installation. The base OS includes the mountvol command, which will create a reparse point, but like join (or classic Unix mount, ignoring goofy newcomers like the loopback filesystem) it only lets you associate an entire volume (and not some path on that volume) with the destination. On the other hand, the Windows 2000 Resource Kit (which I think is a free download from Microsoft these days) includes the spiffy linkd command, which will create reparse-point mounts from any source path to any destination path. With it you can do, for example: linkd c:\aspell j:\aspell Note, though, that this requires that c:\aspell not already exist, and that you have appropriate permissions for c:\. It appears to require only the Create Folders authority, but if you're logged in as J Random User on a typical XP box, I suspect you won't have that authority for c:\. And that, of course, is as it should be; ordinary users shouldn't be able to create directories, real or virtual, in the root of the boot drive (assuming c: is the boot drive). -- Michael Wojcik
Re: PortableLyX?
Stephen Harris wrote: Winzip the C:\Aspell directory. Put it on the J: device. I am assuming that this is a USB drive that plugs into the back of a non-admin computer at another location. Copy the C:\Aspell zip file from the J: device over to the C: drive, Note that this step isn't necessary, assuming a standard unzip utility like WinZip or Info-Zip's unzip is available; they'll all unzip from one drive to another. C:\ md Aspell ; and unzip the contents into C:\Aspell. I don't think that takes admin rights. I have a non-admin username to test such things and makedir works for him. Well, it depends on the machine, though in practice it may be that on the typical Windows installation, non-administrative users have write access to c:\. In truth, the concept of administrative and non-administrative users on (NT-family) Windows is a myth of convenience. By default Windows does have an Administrator user and a System Administrators group; the former is assigned a bunch of privileges that aren't granted to ordinary users, and the latter has inheritable full-control access rights to the roots of all filesystems, when they're created. (I'm assuming NTFS.) But this is just a convention, though it's a convention that comes out of the box. You can remove privileges from Administrator, and create restricted ACEs for System Administrators on any filesystm object, including the root; and you can delete Administrator and System Administrators. (Contrast that with traditional Unix, where UID 0 *does* have certain special permissions, such as DAC-override, irrevocably; though some Unix implementations add security mechanisms that restrict superuser capabilities.) And Windows also has the Power Users group and similar out-of-the-box intermediate grades of user, between the unprivileged Guest and the essentially all-powerful System Administrators. These, too, are just collections of privileges and ACEs, and can be modified from one system to another. So it could be that the scheme you propose would work on many Windows machines, but it might well fail for locked-down installations, or if the user's account has minimal privileges (for example, if they're using the standard Guest account). What it really comes down to is whether the user's effective ACE for c:\ allows the Create Folders operation. On one XP machine I just checked, that's true for users in the Users group (ordinary users), but not true for Guest. I don't know if that's how XP comes out of the box, and if eg SP2 changes it. But when all's said and done, there's nothing to be lost by putting the aspell directory on the flash drive and trying to copy it to c:\, or putting aspell and linkd on the flash drive and trying to create the reparse point. If it works, you have spell-checking; if it doesn't, you don't, but you haven't lost anything. (Of course, really one of these days one of us should fix the aspell-execution code in the Windows LyX port. One of these days I hope to do some work on LyX myself, but as I don't use it in my job, I can't give it as high a priority as some of the other FOSS software I use.) So my nonadmin user was able to use linkd and it does not appear that linkd requires admin rights like some of the dos commands. This worked on XP pro, I am not sure about XP home. Your idea appears cleaner/easier. linkd, if it's available, appears to require the same permissions as actually creating the c:\aspell directory, so putting it on the flash drive might indeed be simpler. It also has the advantage that the c:\aspell virtual path will go away when the machine is rebooted or when explicitly deleted with linkd, so there's no permanent change to the target system. -- Michael Wojcik
Re: Chinese characters in standard Lyx
Graham Brown wrote: Occasionally, I need to be able to insert half a line or so of simplified Chinese into the document. I searched the archives and found a very helpful email that suggested that it was possible to use Lyx with CJK latex. I installed CJK latex (I already had the fonts) and proceeded to try the recommended ERT code: \usepackage{cjk} in the preamble; \begin{cjk} etc in the document. When I run the program I get an error message that it cannot find cjk.sty. I have checked and there is no cjk.sty file on my system. Sorry to take so long to respond. This appears to be a case-sensitivity issue. The package is CJK.sty, not cjk.sty. You need \usepackage{CJK} in the preamble. If you don't have CJK.sty on your system, you'll have to look at how your LaTeX implementation installs packages. I'm using MikTeX, so I can't offer any help there. -- Michael Wojcik
Re: Simple beginner questions
Jerome Tuncer wrote: - I inserted the usepackage{hypreref} in the preamble for my LyX links to actually link to web pages (as suggested on the LyX wiki) but the problem is that EVERY cross-reference, footnote and even TOC entries become links, which makes the whole document look kinda ugly. Is there a way to avoid that behavior and make only \href{http://...}{Weebsite link} actual links? You don't mention what driver you're using (that is, what kind of document you're producing, and what program is producing it), and hyperref does have some driver-dependent behavior. However, the following works for me with pdflatex: - You can tell hyperref to leave existing LaTeX commands alone and only create its own macros, such as \url and \href. Do this by setting the implicit=false option when you include hyperref in the preamble: \usepackage[implicit=false]{hyperref} If you do this, and create your links using LyX's Insert-URL... command, then you'll get what you asked for: only those URLs will be converted to links. - Sometimes it's more useful to let hyperref turn everything into links, but without changing the text's appearance. That lets readers navigate by links without the visual distractions. For that, you can use these hyperref options: colorlinks=true,linkcolor=black,citecolor=black,urlcolor=black (I got this from someone else's message to the list - thanks, whoever that was.) You may want to play around with these a bit to get exactly the effect you want. - Your LaTeX installation ought to include the hyperref documentation, which describes all this handy stuff. In my MiTeX installation, it's in texmf/doc/latex/hyperref/ - start with manual.html. (If you're not sure where to find it, search your disk for hyperref.) LaTeX typically comes with tons of package documentation and other useful tidbits, but it's a bit disorganized. -- Michael Wojcik
Re: I'm writing a book in VimOutliner
killermike wrote: I'm also a fan of outlining. For the last year or so I have a been using a mind mapping tool called Kdissert The problem with this tool is that editors don't usually accept pitches in graphical form. This means that the process of pitching an article consists of mapping it out and then writing it up, which is rather long-winded. For this reason, like Steve, I've started to wonder if LyX itself can be used for outlining thanks to the new outlining sidebar. I recently wrote a short paper using the Freemind mind-mapping application and LyX. I used Freemind to collect ideas, and to add text (sometimes as much as an entire paragraph) as it occurred to me. (Freemind supports long nodes that contain formatted text, URLs, etc.) Then I used Freemind's XSLT export feature, with a stylesheet I kluged up, to export the map into a LyX document, with the hierarchy of the mind map converted into nested Enumerate environments. That document couldn't be rendered by LaTeX due to the enumeration depth limit, but LyX displayed it properly, and I easily cut and pasted text from it into a Koma-article document that became the final paper. One of these days I'll fix up the stylesheet to use the proper schedule of environments for Koma-article, so that I can go right from the Freemind map to a skeletal LyX document that can then be flushed out. (There's supposed to be a Ruby script that converts Freemind documents to LaTeX, but it's apparently no longer available, and there are advantages to doing it with XSLT: you can export from within Freemind, and you're using an engine designed for this purpose, so you can concentrate on the transformations rather than the implementation.) -- Michael Wojcik
Re: feedback on LyX 1.5.1
Uwe Stöhr wrote: William B. King schrieb: Don't particularly want this posted. Don't want replies. Don't want to join any lists. You asked for feedback, and I'm sending to the only address you gave me. What are you talking about? I believe he meant: I have some comments regarding the LyX tutorial. I do not want to join a mailing list. I do not want my comments posted to a mailing list. I am not interested in replies to my comments. However, the only address I have to which I might send my feedback is a mailing list, so that is where I will send it. Alas, I am not particularly good at composing clear email messages. -- Michael Wojcik
Re: Using a network printer
[EMAIL PROTECTED] wrote: On Fri, 21 Mar 2008, Mark Hansel wrote: A restriction to print exclusively through viewers breaks lyx! There are circumstances where printing an exported ps file makes sense (e.g., multiple collated copies, transmit). All of that can be done through viewers. I don't think anyone proposes that we remove the ability to produce .ps-files... Personally, I think it'd be nice to be able to rpint directly from LyX. Out of curiosity, why? I print my documents on a Postscript-capable laser printer, and I've never bothered printing from LyX, because I always review the rendered document in a viewer before printing it. If I need to print an existing document without editing it, I generally have a copy of the final rendered version already available, so why re-render it? And if I don't, I'd just as soon run LyX in batch mode to produce one, than go through the GUI. The question as I see it is if it's worth spending time trying to fix bugs in LyX that are related to printing. (And that are probably specific to the GNU/Linux distribution etc) The worst one isn't: File Print simply doesn't make sense, and that's true on all platforms. The design is broken. LyX supports multiple back ends, and as long as that's true, File Print is at best ambiguous. At worst, it's simply broken, for example if I have pdflatex-specific packages or commands in my document (in the preamble or in ERT). At the very least, the menu item should be named something like Print (Postscript) or Print (dvips). An unqualified Print menu action isn't meaningful for LyX. -- Michael Wojcik
Re: WRB - Observations
rgheck wrote: William R. Buckley wrote: I noticed that when trying to browse for the graphic file of a figure inserted into a document via the LyX user interface, and upon trying to utilise a shortcut (as the means to more efficiently select the proper directory that is to be browsed), it happens that LyX copies the shortcut to the Graphics dialog box, instead of opening the directory indicated by the shortcut. I believe this behavior is not what LyX developers intend. Rather, double-clicking on the shortcut should result in an opening of the indicated directory. If so, then this is a bug in Qt for Windows. Soft links work perfectly fine in Linux. I don't think this is a bug in Qt, though arguably it's a missing feature. Shortcuts are not first-class filesystem objects in Windows. They're files that are treated in a special manner by Windows Explorer. The real bug is that Microsoft introduced them in the first place, rather than using a proper filesystem mechanism; and the fix is to avoid them whenever possible, since they're a clumsy, half-implemented hack. The closest analog to soft links in Windows are NTFS junctions, and they work fine with Qt and LyX, as far as I can see. -- Michael Wojcik
Re: question about lyx
Scott White wrote: Date: Sun, 30 Mar 2008 21:38:22 -0400 From: [EMAIL PROTECTED] Scott White wrote: 1) everything is justified. How can I change it to left alignment? Note that LaTeX microspaces, etc, so this looks proper. If you're going to convert to HTML, it probably doesn't matter, since HTML doesn't do justification, does it? Actually I am fairly sure it does. align=justify is valid html tag. It's an attribute, not a tag. And it's deprecated in HTML 4.0, and omitted entirely in XHTML 1.0. The correct way to specify justification in contemporary HTML is with a style. The current LyX functionality does not use this tag. I just don't want to be surprised in the future if LyX started to use it. LyX has nothing to do with HTML output. That's produced by a LaTeX renderer that creates HTML (such as htlatex), which is NOT part of LyX. It's crucial to understand what LyX is and is not. LyX does not produce formatted output, except for its own display on the screen. It's an application for producing LaTeX documents and processing them with LaTeX processors - but those processors are part of a LaTeX implementation (or are separate utilities). They aren't part of LyX. This has nothing to do with LyX and everything to do with whatever HTML converter you are using. See ToolsPreferencesConverters, and look for HTML to see what you're using. htlatex $$i is the converter listed, but looking at my directory structure I think it is MiKTeX 2.7. MiKTeX is a LaTeX implementation. It includes htlatex, which is a LaTeX renderer that produces HTML. So what happens here is: 1. You create your document in LyX. 2. You ask LyX to export to HTML. 3. LyX creates a LaTeX document from your document. That will include LaTeX commands for the various options you've set, packages you've included, etc. 4. LyX looks at your converter preferences to find the command line it should use to create HTML. 5. LyX invokes the specified converter (htlatex, for example). 6. The htlatex it finds on your system is (probably) the one supplied with MiKTeX. htlatex will create HTML (and CSS) from the LaTeX document LyX created in step 3. As you can see, what you do in LyX defines the LaTeX document, and that's the input to htlatex. But LyX can only control the final HTML output to the extent that htlatex can be controlled by what's in the LaTeX source (and options on the htlatex command line, if you edit the converter in your LyX preferences). Ultimately, what goes into your HTML output is up to htlatex. LaTeX isn't designed to let you specify exactly how you want your document to look. (It's possible to get very fine-grained control with LaTeX, but it requires a sophisticated understanding of the language.) It's designed to let you worry about content and structure, and let *it* worry about layout. So if you want to specify exactly how your HTML is going to look, I'd suggest one of two things: don't use LaTeX (and LyX), or edit the style sheet (the CSS file) after generating the content. (You can also create a style sheet ahead of time and just substitute it for the one generated by htlatex.) HTML layout is properly done through a stylesheet (using floats, positioning, widths and heights, etc) anyway. -- Michael Wojcik
Re: WRB - Observations
rgheck wrote: Michael Wojcik wrote: I don't think this is a bug in Qt, though arguably it's a missing feature. Shortcuts are not first-class filesystem objects in Windows. They're files that are treated in a special manner by Windows Explorer. LyX uses Qt for its file dialogs, etc, so if this doesn't work correctly, it's got to do with Qt, bugs or otherwise. Agreed, though it would be good to know why people report different behavior in different dialogs, and different behavior on different systems. It's conceivable that something LyX is doing is either triggering a Qt bug in some circumstances (which might be avoidable), or at least causing differing behavior where we could be consistent. If I weren't in the middle of about a zillion other things I'd grab the current sources and take a look. (Maybe over the summer I'll finally get a chance to dig into the LyX source.) Though, pace William, the *real* problem, as I wrote above, is that shortcuts are not part of the Windows OS. They're purely an application-layer artifact. Certainly not all Windows programs handle them the way William would like. (Windows users can try cd'ing across a shortcut in a shell window - no go. cd'ing across junctions works just fine, however, because they *are* first-class filesystem objects.) -- Michael Wojcik
Re: question about lyx
Rich Shepard wrote: On Mon, 31 Mar 2008, Michael Wojcik wrote: It's an attribute, not a tag. And it's deprecated in HTML 4.0, and omitted entirely in XHTML 1.0. The correct way to specify justification in contemporary HTML is with a style. That's because xhtml has moved toward separation of content and formatting, just as LaTeX/LyX does. The xhtml has the content and the css has the formatting. Yes, HTML is finally catching up with proper document markup languages like CTSS RUNOFF (invented in 1964) in that regard. Of course, RUNOFF led to Multics runoff, which led to Unix roff. As an undergrad I wrote papers in roff (with I think the misc macro package) and printed them with troff on an IBM mainframe laser printer. This was the late 1980s, and the results were pretty slick. RUNOFF also seems to have led to IBM SCRIPT. Partly in response to difficulties with the RUNOFF family, Goldfarb, Mosher, and Lorie invented GML (also IBM, in 1969), which became SGML, which spawned HTML, then XML, then XHTML... Those who forget the separation of presentation and content are doomed to reinvent it. But only after inculcating bad habits in most of their users. (Note the Wikipedia pages for SCRIPT and GML are a bit confused, as usual, about the history and chronology. Goldfarb's own Personal Recollection[1] is a better source of information.) Meanwhile, Knuth created TeX beginning in the late 1970s (the first TeXbook edition was 1982, I think), independently of the RUNOFF / GML families - though I'm sure he was aware of them. TeX of course incorporated significant features that other markup languages did not, such as the sophisticated layout algorithms and extensive support for typesetting mathematical notation. But it too separated content and presentation. For that matter, HTML originally tried to separate content and presentation to some extent. That's why it had strong and em[phasis] tags, for example - presentation was the task of the user agent. But authors wanted more control over presentation (often for no good reason), and HTML became a mess of mixed markup. Modern XHTML plus external stylesheets is really the only way to restore a measure of sanity to HTML. [1] http://www.sgmlsource.com/history/roots.htm -- Michael Wojcik
Re: WRB - Observations
William R. Buckley wrote: What really surprises me is the effort various members have expended to encourage me not to help your project. I quite think your efforts are misguided. Well, I suspect this particular issue (the treatment of Windows shortcuts in some of the LyX file-open dialogs, on some systems) has met with resistance for a handful of reasons. Some of the regulars here do not care for Windows, and given the opportunity will voice that opinion. Some pointed out that LyX does not own the file-open dialogs; they're part of Qt, so this might be a Qt bug. And so forth. With most LyX issues, I think you'll find people are interested in at least identifying the problem and searching for a workaround. And the LyX team does release updates quite frequently, with many a bug fixed. Some issues, like this one, prove controversial, but the great majority are accepted by the developers and experienced users. I might point out that my original posting on this particular subject was not in response to you, but to Richard; and it was simply to note that shortcuts are not a feature of the base Windows OS, but of Explorer. (As I pointed out in another note, they're by no means universally supported in any consistent manner by Windows itself.) I did suggest in that note that not following shortcuts to directories in a file-open dialog could be considered a missing feature. And that's been my position all along, which is why I also suggested that it would be worth investigating the discrepant behavior - even suggested that *I* might do so, if I can find the time. I don't think people here are actually trying to discourage you from contributing to the improvement of LyX, and I'm sorry you feel they are. Rather, I'd interpret this thread as a fairly vigorous and opinionated discussion on the issue at hand, its possible underlying causes, and the nature of the problem (a bug? a missing feature? an annoyance? a quirk? in LyX or Qt or Microsoft controls or Windows?) - and the last, though it's not entirely relevant to fixing the problem, does have some weight in evaluating its importance. -- Michael Wojcik
Re: Footnote without numbering (new)
Jean-Marc Lasgouttes wrote: Adrian Peter [EMAIL PROTECTED] writes: Thank you for the suggestion but unfortunately I really need to put a footnote without a symbol or anything. I am trying to use Lyx for my thesis. Our college requires that if any of the chapters has already appeared as a publication that we need to list it on the first page of the chapter as a footnote. I thought that in such cases a numbered footnote was appended to the title of the chapter. The style Adrian describes seems to be relatively common in the US, for various purposes. For example, many journals set text formatted as a footnote with no number (often on the first or last page of an article), with material such as previous publication, requirements for reproduction, acknowledgments, and so on. A couple of examples I have to hand are _Critical Inquiry_ and _Communications of the ACM_. So I'm not surprised that Adrian's college uses the same convention when documenting prior publication. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Progress on the MS Word to LyX conversion (xml)
Manveru wrote: Have you ever merge XML? I tried - it is horrible work. It depends entirely on how the XML document is formatted. There's nothing that prevents XML with sensible line breaks, for example. I keep lots of XHTML documents in CVS. They're well-formatted, so merging works just fine. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Progress on the MS Word to LyX conversion (xml)
Steve Litt wrote: Trouble is, replacing \begin..\end with .../ is a hack. LyX developers have defined LyX native format as \begin always is the first character on a line. There's no such requirement in XML, and if we require it, that's a hack. If we don't require it, LyX-XML parsing becomes a whole new level of difficulty. It's not hard at all, with an XML parser. Actually, putting all XML elements on their own lines, with or without leading whitespace, can be done with a DFA (or anything equivalent, such as a regular expression); you don't even need a full-strength parser. If you want elements all on their own lines, pre-processing with a quick sed script would do that for you. I'm a toolsmith myself, and I write lots of tools, in lots of languages, for pre- and post-processing various file formats. I don't expect the switch to XML to cause me any problems, and to be honest I'm a bit puzzled by all the worrying. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Interesting thread on Slashdot
Dotan Cohen wrote: Is LyX only good for writing books, then? It's good for whatever works for you. Steve Litt likes LyX for writing books. As he's noted before on the list, he doesn't like it for writing short documents, such as letters. When he uses LyX to write a book, he writes the frontmatter in ERT (LaTeX). That's one way of using LyX, and it seems to work well for him. I use LyX for various types of scholarly articles - including some genres, like collage, that are fairly unlike the typical article. I also use it sometimes for writing short documents such as letters. I like LyX for letters because I find it quick and easy and I don't feel the need to fine-tune the output; I'm happy to let the LaTeX class I'm using do that. Sometimes when I drive a nail I use a hammer; sometimes I use a nailgun; sometimes I use an air-powered palm nailer. I have different hammers for different tasks. Sometimes I use a hammer where someone else might use a nailgun. You want to use an appropriate tool, but that still leaves you with choices, and different users prefer different trade-offs. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: math tool
rgheck wrote: nisa wrote: how math editor is implemented in lyx? how does it automatically format text? pls tell the technical aspects of it in the coding part etc Why would you think this was simple enough to be explained in an email message? Now that part is complicated! You can see it here: http://www.lyx.org/trac/browser/lyx-devel/trunk/src/mathed. Not many of us developers even understand it, though. Andre Poenitz is the master I just browsed a bit of it, and it doesn't look all that hard. Basically a polymorphic model/view system where each sort of math object knows how to render itself, which is what I'd expect. That's a standard idiom - it's the main example in the original Gang of Four _Design Patterns_ book, after all. I'd think someone with decent C++ knowledge and a reasonable grasp of software design could figure the architecture out with a little browsing through the code and perhaps following a few examples through the debugger. (Which is not to say anything against any of the LyX developers - I don't see why anyone would do that unless they need to know how it works. I'm sure all of you *could* if you felt the need.) Or am I missing something? I only read through four or five source files. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: math tool
Christian Ridderström wrote: On Fri, 8 Aug 2008, Abdelrazak Younes wrote: [Sometimes I don't get Abdel's messages to the list. I only see them when someone quotes them, as Christian did here. I don't know why. They're not getting caught by Thunderbird's spam filter; and it only happens to some of them. I haven't noticed any other missing lyx-users messages. Odd.] I don't think you missed anything. And we'd be delighted to have you within the development team :-) I keep meaning to pull the sources from Subversion and take a look. I've just been too busy between work and this part-time Master's degree I'm working on. What I really *should* do is send in a financial contribution. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Reprinted material
killermike wrote: This is something I have have often wondered about too. For example, if you have a book that was written in 1600 but your copy is a 1976 paperback, what do you put for the date? That's part of the protocol you're using for citing sources, which is a question for you and your editor(s), if any. Some disciplines have particular conventions, which are often formalized in style guides. In MLA style, for example, works are sometimes cited using the actual printing date, with the first-publication date in square brackets: 1976 [1600]. That's because minute details of the text are sometimes important in literary and textual studies, and typographical errors, spelling changes, and the like can be introduced in subsequent printings. (Sometimes there are even bigger changes; James apparently rewrote the ending to _Daisy Miller_ at some point between editions, so there are two versions of the novel out there.) What it comes down to, though, is that there are no natural rules for how to cite anything. There are more-or-less arbitrary rules created by various publishing houses, professional organizations, journals, editors, and the like; there are guidelines and style guides; there are the whims of individuals. So no one can give you a universal rule for a specific sort of citation. It depends on who's going to be reading it, and what they'll accept. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: Number of documents prepared with LyX? (Was: Frustrated user)
Christian Ridderström wrote: On Wed, 22 Oct 2008, Mike Ressler wrote: I can assure you that LyX has been used to write hundreds of dissertations, theses, and scholarly papers Interesting question... how many such documents have been written using LyX? It appears, from my CVS archives, that I have 16 substantial LyX documents. Not bad, considering I'm often forced to work in Office or OO for interop reasons. And I haven't tried LyX for presentations yet, and those represent a substantial portion of my document output. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: [Fwd: Re: Word processor bashing]
rgheck wrote: I know a lot of people who use Word, etc, and I don't know a single person who regularly uses styles. I do, but that's largely because I'm ornery, and will do things the Right Way even when the tool discourages it. (I use Word for some work documents, and Open Office for some academic documents, when interop is a requirement.) Students and colleagues send me papers written in Word all the time, and I'm struggling to remember a single time any one of them sent me one that used styles. This subject came up today on techrhet, the technology and rhetoric list, and the prevailing opinion seems to be that, yes, students do not use styles, and that training them to use styles would be a good addition to composition curricula. There's also a fair bit of sentiment that getting away from word processors would be nice, but that's not really an option for general-education composition today. Word processing - and specifically Word - is essentially a general-ed skill in itself, in today's job market. In advanced composition and digital-rhetoric classes, many people are teaching other writing tools. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: [Fwd: Re: Word processor bashing]
Micha wrote: Writing a letter in lyx is a pain. Eh? I think I've only ever once written a letter in LyX - because I very rarely write letters on the computer - but it was trivial. I just created a new document using the Koma-script letter v2 template and filled in the blanks. The most time-consuming part was scanning my signature so I could have a handwritten signature stamp in the generated PDF. I can't see why writing a letter in Word would be any easier. (As I recall, the last time I did so, it was more work, because I didn't care for any of Word's letter templates, and the default styles weren't quite right for a business letter.) I know some regulars on the list (notably Steve Litt) have advocated Word for short documents. That's fine if it works for them. But I don't see it, myself. But then I've been using markup languages for short documents for a couple of decades (and word processors for only slightly longer), so perhaps I'm simply used to doing so. -- Michael Wojcik Micro Focus Rhetoric Writing, Michigan State University
Re: LyX slow in Windows XP
Paul A. Rubin wrote: AFAIK, csrss manages application access to the graphics subsystem, so I suspect that every time the GUI writes to the screen, csrss is involved. [This is a bit late, but it may be of use to other people who run into this.] csrss is the Client/Server Runtime System Service. It's the usermode part of the Win32 component of modern MS Windows versions. It handles things like the userspace side of thread creation and deletion, and console-mode I/O. (So, for example, if LyX were running with debug enabled, the debug lines being written to the LyX console window might cause a noticeable jump in csrss load. But I haven't tested that.) I don't know offhand of anything it does with graphical rendering tasks, but that doesn't mean it doesn't have its hooks in there, too. Also, some malware - eg some Nimda variants - which drop bogus csrss.exe executables on the machine, so in some cases a busy csrss is actually a trojan. Since you've confirmed the OP's problem on your own system, though, that's not the issue here. It's eating way too many cycles, though, and for that matter LyX seems to be eating more than I would expect. People have reported all sorts of triggers for excessive CPU consumption in csrss: problems with user profiles, stopping the Windows Messenger service, changing power management settings, bad interaction between ProcessExplorer (which starts threads in other processes) and cygwin, a bad TweakUI setting... Sometimes it's due to poor application coding (I saw one report of a console app that busy-waited on the kbhit() system call, which goes through csrss). Sometimes it's due to bugs in the OS, as with the Messenger issue. Because csrss is used for several common tasks, it's hard to guess just what might be causing the problem. One way to track the problem down would be to build LyX with symbols and profile it using kernrate, the free Microsoft sampling profiler, to find out where the hotspots are. Unfortunately I'm not set up to build LyX, and I don't have time right now to pull the sources and do that. (I'm not sure I have the disk space required, for that matter.) -- Michael Wojcik
Re: Perl script for renumbering equations
Steve Litt wrote: On Thursday 08 February 2007 13:36, Gerard Ateshian wrote: I wrote a perl script, renumber.pl, for renumbering equations in LyX (attached). I think before you can post this on the Internet and have people use it, you need to give it a license -- GPL V2, GPL V3, BSD, whatever. Until you do that it's just proprietary software, and it's unlikely anyone will improve upon it. Assuming Gerard's script is entirely original work, why bother with a license? I'd just put it in the public domain. A license is only necessary if the author wants to restrict rights, and for a relatively small, simple program that hardly seems necessary. Of course, some authors do license such materials for ideological reasons; but even now in the AS (After Stallman) era, it's quite common to put short scripts, code snippets, and the like right into the public domain and let anyone - evil, money-grubbing corporations included - use them as they see fit. (I had a short polemic about the diminishment of the public domain ready, but this isn't the place for it.) -- Michael Wojcik
Re: RCS on Windows
André Bonhôte wrote: I am in a process of convincing my team mates to use LyX for documentation. The guys all use windows. I'm not really a windows man, thus the question: What RCS do you recommend? I have downloaded the zip file from the gnu site and copied all the bins to C:\windows, but LyX didn't see the binaries. Next, I have added this dir to the path in the prefs, but still now luck. I'd avoid GNU RCS for Windows. I've seen it corrupt working files numerous times. I don't think I've ever seen it damage RCS files, so a fresh checkout generally got me a good working file, but I don't trust it. (I can't imagine what the problem is. I ported RCS - Tichy's original version, not GNU, which IIRC didn't even exist at the time to 16-bit Windows myself years ago - along with DOS, OS/2, and OS/400 - and never had any problems with file corruption.) I use CVSNT for versioning my LyX files. I haven't bothered trying to drive it from LyX - I just run it manually, from the command line, the way Computers Are Supposed To Be Used :-). But CVSNT does include a co.exe, rcsdiff.exe, etc. It doesn't seem to have a bare ci alias, but a short Windows .cmd file that did a cvs update followed by a cvs commit ought to do the job. (Obviously, the user would have to manually handle any conflicts that couldn't be resolved automatically.) So I'd expect it would be possible to get LyX to work with CVSNT, if you want to use the file-versioning features built into LyX. -- Michael Wojcik
Re: How to insert the degree symbol
Darren Freeman wrote: I looked around and didn't see this - hopefully not blatantly obvious. How do I insert the degree symbol? As in, 360 degrees to a circle. I guess there should also be minutes and seconds. You don't mention what platform you're running on. On Windows, you can just insert the character normally, using Character Map or Alt-0176 (on the numeric keypad), or any of the various utilities that let you type characters not on your keyboard (eg AllChars). You can also use \textdegree in ERT for the degree sign. For minutes my preference would be to use the straight apostrophe and double-quote. The straight double-quote character is available as Insert | Special Character | Ordinary Quote. (cua.bind also supposedly makes it C-quotedbl, but that doesn't work for me with LyX 1.3.5 on Windows; might be fixed in a less ancient version.) However, there's no obvious LyX mechanism to get straight apostrophe. In fact, I don't even know if there's a way to get it in LaTeX. It's not listed in the LaTeX ISO entity reference [1]. There's also prime and Prime (aka double prime), which are ^\prime and {''}, respectively, in math-mode; you can also enter those in ERT as $^\prime$ and ${''}$. The LaTeX ISO character reference sheet lists these as prime or minute and double prime or second, so I guess they're the official minute/second glyphs. Not terribly lovely or convenient, though. There's also variant prime, {'} in math-mode or ${'}$ in ERT, as an alternative to ^\prime; that's a bit more consistent. I suppose you could put the whole expression in math-mode, and use ^\circ (superscript circle) for the degree sign. That's a bit tricky if you're not used to working in math mode. Say for example you want 20 degrees, 30 minutes, 40 seconds. Enter math mode (the a+b/c button on the toolbar), then type 20^\circ (without the quotes). Press right-arrow twice to terminate the \circ entity and get out of the superscript box. Type 30\{' and press right-arrow to get past the }, which LyX automatically inserts for you. Type 40\{'' and press right-arrow to get past the }, then space to get out of math-mode. So, in summary, I'd say math-mode works OK, but this looks like a golden opportunity to practice LyX customization to make it easier to enter this kind of information, if you have to do it more than once or twice. [1] http://www.bitjungle.com/isoent/ -- Michael Wojcik
Re: Keyboard punctuation not working - have to double press to input punctuation chars
Robert Orr wrote: I have a strange problem with my LyX keyboard entry. It seems that I have to double enter the punctuation characters on the keyboard. The first press has no effect, the character appears on screen only after the second press. It sounds like they're being treated as dead keys, but why this would suddenly be happening in only one application on Windows (per the rest of your note, which I snipped) I don't know. But input-method handling in Windows is a little tricky, since (as with so many other things) Windows tries to be helpful and will muck about with settings as you change focus from one application to another, if it has a mind to. (I've seen it switch between the US-English and UK-English keyboard layout in this manner, for example.) Here are a couple of things to try: - In LyX, try typing eg 'e (apostrophe, then e). Do you get an e with an accute accent? If so, then the apostrophe key is being treated as a dead key, which would explain why you have to strike it twice to get just an apostrophe. - Show the language bar (right-click on the Windows taskbar, select Toolbars | Language Bar). If you don't have the Language Bar option, that probably means you have Advanced Text Services disabled, in which case I don't know what the problem might be. (Advanced Text Services is controlled by the Regional and Language Options control panel, Languages tab, Details button.) When you have the Language Bar visible, see if it changes when you switch focus between LyX and other applications where the keyboard works as expected. -- Michael Wojcik
Re: RCS on Windows
Alan Isaac wrote: On Sat, 24 Feb 2007, Michael Wojcik wrote: I'd avoid GNU RCS for Windows. I've seen it corrupt working files numerous times. Perhaps relevant: http://www.uvm.edu/~ashawley/rcs/faq.txt No, these are actual bugs in either RCS or GNU diff. I've worked with RCS since the late 1980s; I ported it to DOS, OS/2, and OS/400. I'm very familiar with how it works. -- Michael Wojcik