On Dec 30, 2010, at 7:53 PM, Martin Sevior wrote:
> Hi Hal,
>
> There is a nicely commented set of code that shows how to use abiword
> with AbiCommand available on our wiki.
>
> http://abisource.com/wiki/AbiCommand
I had found that, but with all the sites I was looking at leading up to me deciding to use AbiWord, and all the AbiWord pages, I had lost that one. Thanks.
> Just type "ehlp" on the command line to see the list of available commands.
One question, after looking at the commands: I see I can print to files. Can I print to a specified printer? Maybe directing the file into a redirect or something?
> The native graphics system on OSX is quite different from gtk which
> makes the use of the native port rather tricky. Of course you can
> compile abiword with gtk on OSX and use that if you want.
I know the graphics are different - I just figured the OS was close enough to *nix that AbiCommand would work on it without too much trouble.
> We hope to get an updated version of abiword running natively on OSX
> within the next 6 months. Of course any help would be most
> appreciated.
I can't program in C or C++. Well, I did at one point, even wrote a program for controlling an HD radio through the serial port for LinuxICE, but at this point I've forgotten all that. I also tend to have bad luck building C programs on my own. But I'm more than happy to help with testing and if people can answer questions for me while I learn to build it and to help with any testing and debugging.
Are there other ways I can help if I don't use C or C++?
> The perl bindings have been removed. You can write perl easily enough
> to script abiword via AbiCommand.
Okay. While I figured they might be more powerful, it looks a LOT easier to use AbiCommand. All I have to do is either load and find/replace (or do a mailmerge) and print (or print to a file), and maybe save a document.
> The code to open the pipe to the remote abiword in "C" code is:
>
> strcat(fullCommand,"abiword --plugin AbiCommand >& /dev/null ");
> fflush(stdout);
> m_AbiWritePipe = popen(fullCommand,"w");
> fflush(stdout);
> if(m_AbiWritePipe == NULL)
> {
> m_iAbiRunning = -1;
> return -1;
> }
>
> I'm sure you can do similar things in far less code in perl.
That's one reason I like Perl (when I can use it). I've found I can write code about 5X faster in Perl than Java.
> The odt filters in 2.8.6 are now very good and will get better with
> our next major release.
That's a big help to me. I was looking at a few AbiWord files, though, and the format looks pretty easy to work with. I could easily do my own mailmerge in Perl with a few regexes if it came to that and do only the printing with AbiWord.
I found this page <http://www.abisource.com/wiki/File_format> when looking for documentation on the AbiWord file format, but the page is blank. While it's easy enough to follow, is the format documented somewhere?
Thank you, Martin, for all the help on this. I'm still exploring and putting things together, but this solves a lot of problems for me and saves me a month or more of work!
Hal
> Cheers
>
> Martin
> On Fri, Dec 31, 2010 at 3:28 AM, Hal Vaughan <hal@halblog.com> wrote:
>>
>>
>> On Dec 30, 2010, at 5:29 AM, Martin Sevior wrote:
>>
>>> Hi Hal,
>>>
>>>
>>> On Thu, Dec 30, 2010 at 6:20 PM, Hal Vaughan <hal@halblog.com> wrote:
>>>>
>>>> ...
>>>> I've got other questions on other subjects I'll ask in other emails, but here's what I'm trying to learn about now:
>>>>
>>>> 1) I see that Abiword uses a stunning 16 MB of RAM, possibly as little as 8 MB on embedded systems. Can you please confirm I'm reading that properly? (Considering that OpenOffice uses 512 MB, and that 16 MB is tiny now days, I want to be sure.) Also, is the reason for 8 MB on embedded systems because there's no display?
>>>>
>>>
>>> An empty, just loaded document on Linux uses 4.8 MG of memory and 18
>>> Mbytes of shared memory. It is pssois the initial load on a system
>>> that uses gtk shared libraries. Starting abiword with AbiCommand (ie
>>> no display) starts with 2.8 MB plus 13 MB of shared memory. This is
>>> AbiWord-2.8.6 as distributed with Fedora 14.
>>
>> Thanks. I know that I was kind of asking for the obvious, but it's sort of a "too good to be true" thing.
>>
>>>
>>>> 2) Do I need to do anything special to start Abiword without the display?
>>>>
>>>
>>> abiword --plugin=AbiCommand
>>>
>>> Will open a command line interface to AbiCommand. You can feed
>>> commands on the command line this way. We use this to power our
>>> http://abicollab.net website which amongst other things does document
>>> conversions from one format to another.
>>
>> Okay, I have it working on a Linux VM and have tested it. Now to get it working in Perl.
>>
>> I saw this page: <http://www.abisource.com/mailinglists/abiword-dev/01/June/att-0433/01-OWTO_>
>>
>> It's about how to get Perl bindings working. I found a few mailing list entries on the Perl bindings, one from 2001, discusses using them, but another, 7 years later, in 2008, talks about how external scripting languages don't work because there's no well defined interface.
>>
>> Is there an advantage to using Perl bindings over using AbiCommand through file handles? And is there documentation anywhere of the functions available through the Perl bindings?
>>
>>>> 3) I can't find the plugin AbiCommand. Granted, right now I'm using the OS X version of Abiword, which is a few versions behind, but I can't find it as a plugin from within the program when I look at the plugin lists and I don't see where, on the file server, the plugins are stored. There was also no chance to select plugins during the install.
>>>>
>>>
>>> AbiCommand only works on Linux versions of abiword. We have good
>>> support from Debian for Abiword.
>>
>> While I know there are some issues with OS X, such as rendering, I would have thought, since it's *nix based, that AbiCommand might not require much to get it to work on OS X -- at least not when compared to Windows. I'm not saying that to criticize or complain, but I'm curious if there is that much of a difference at the command line level.
>>
>>>> ...
>>>
>>>> 5) Is there any way to communicate with Abiword while it is running through any kind of network socket, or is the best way to communicate with it while it's in memory to use AbiCommand?
>>>>
>>>
>>> We don't have a network socket interface though uwog has implemented
>>> several powerful websites via AbiCommand.
>>
>> I've played with it a little and I'm glad to see that the way AbiWord works removes some of the most serious problems I had with OpenOffice, namely, having to check if it was running and sometimes having the interface lock up.
>>
>> Other than "ps -ax|grep abiword" is there an easy way to see if an instance of AbiWord using AbiCommand is running on a system? (I noticed "abiword --plugin AbiCommand" runs a new instance each time, instead of connecting with existing instances.)
>>
>>>> I've got more questions, but I feel like I'm throwing a lot at everyone as it is. My main goal is to be able to control Abiword from Perl (or maybe Java) so I can load it, then either have it do a mailmerge, or do one controlled by my program (manually doing search and replace), then either printing out the files or saving them as PDFs for printing later. If the questions I'm asking aren't leading to a good way to do this, I'm open to suggestions.
>>>>
>>>
>>> You can do search and replace with the AbiCommand interface if you
>>> like. Otherwise manipulating the *.abw files works fine. uwog has
>>> implemented a few websites that do XSLT manipulations of *.abw files.
>>>
>>> One other point is that our *.doc import filters from 2.8.0 up to
>>> 2.8.6 uses wv that has a bug that prevents from importing tables. This
>>> is fixed in wv in svn trunk. Sometime soon we will release a new
>>> version of wv abd abiword with this bug fixed.
>>
>> Thanks for the alert on that. I notice Debian is using 2.6.4, but I don't know what version they'll use in their next stable release.
>>
>> On that note (formatting and so on), just how good are the filters for ODT files? There would be several advantages for me using ODT files for storage of the templates and documents, including that I already have all the code needed for handling ODT files. Iv'e seen comments along the way, and I understand there's always the push for perfection, but in practice, is ODT handling behaving?
>>
>>
>>
>> Hal-----------------------------------------------
>> To unsubscribe from this list, send a message to
>> abiword-user-request@abisource.com with the word
>> unsubscribe in the message body.
>>
>
-----------------------------------------------
To unsubscribe from this list, send a message to
abiword-user-request@abisource.com with the word
unsubscribe in the message body.
Received on Fri Dec 31 02:56:12 2010
This archive was generated by hypermail 2.1.8 : Fri Dec 31 2010 - 02:56:12 CET