This seems to do it for me as well. I'm trying this (watch linewraps)
(in a button, for testing)
on mouseUp
put shell("ioreg") into tList
filter tList with "*IOUSBDevice*"
-- | | | +-o DeskJet 8...@1d100000 <class IOUSBDevice, \
-- registered, matched, active, busy 0, retain 8>
-- | | | +-o IR recei...@5d100000 <class IOUSBDevice, \
-- registered, matched, active, busy 0, retain 8>
-- | | | +-o Apple Internal Keyboard / track...@5d200000
<class \
-- IOUSBDevice, registered, matched, active, busy 0,
retain 10>
-- | | | +-o iousbwirelesscontrollerdev...@1a100000 <class \
-- IOUSBDevice, registered, matched, active, busy 0,
retain 10>
-- | | | +-o wireless laser notebook mo...@1a200000 <class \
-- IOUSBDevice, registered, matched, active, busy 0,
retain 8>
-- | | | +-o Built-in isi...@fd400000 <class IOUSBDevice, \
-- registered, matched, active, busy 0, retain 9>
filter tList without "*Keyboard*"
filter tList without "* IR *"
filter tList without "*Wireless*"
filter tList without "*mouse*"
filter tList without "*iSight*"
-- ?? other things to filter out to leave only printers ??
repeat for each line d in tList
put offset("+-o",d)+4 into startChar
put offset("<class",d)-1 into endChar
put sr(char startChar to endChar of d) into d2
put offset("@",d2) into aChar
put char 1 to aChar-1 of d2 & cr after newList
end repeat
delete char -1 of newList
put newList
end mouseUp
At my site this morning, this returns "Deskjet 845C" when the printer
is plugged in, and empty if is isn't. What else should be filtered out
to leave only the name of the connected printer? There are probably
other USB devices that wouldn't be caught by what I have so far. I'll
have my beta testers' feedback to work with, but anyone else with a
Mac who can chime in here is welcome....
... and, anyone know the significance of the number after the @
character for each device? Could I use this to catch printers as
opposed to other devices?
TIA,
-- Peter
Peter M. Brigham
pmb...@gmail.com
http://home.comcast.net/~pmbrig
On Nov 20, 2009, at 12:14 AM, Phil Davis wrote:
This is the best so far!
Phil Davis
JosepM wrote:
Hi,
Also you can use from the shell:
lpstat -p --> to see the available printers
lpstat -d --> to know the default printer name
and to send directly to the printer:
lpr -P <name of the printer> -o page-ranges=1 -o landscape <path to
the file
to print>
If you check the lpr command in CUPS manual you can see a lot of
options to
control the job sended to the printer. The question is capture the
name of
the printer or class. The name use "_" for spaces, assigning the
name directly don't work, almost
for me.
Salut,
Josep
--
Phil Davis
PDS Labs
Professional Software Development
http://pdslabs.net
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution