#emc-devel | Logs for 2009-08-11

[00:59:27] <jepler> cool, git format-patch will usefully transmit changes in binary files, at least as long as the base64(?) representation will fit within the permitted message size. ex: http://pastebin.ca/1524547
[01:01:42] <jepler> and boy do they not mince words on that mailing list: http://article.gmane.org/gmane.comp.version-control.git/125449
[03:11:15] <CIA-41> EMC: 03jepler 07master * r35832755d4d5 10/ (3 files in 2 dirs): factor out non-axis-dependent stuff from axis.py
[03:11:55] <jepler> http://emergent.unpy.net/files/sandbox/gremlin.png (no, it doesn't do anything useful)
[03:33:35] <cradek> **sigh** the tool thrower is working great
[03:34:00] <cradek> someone went to A LOT of work to screw it all up and make it use CAT instead of BT tools
[03:34:12] <cradek> now, I'm attempting to put it back
[03:35:07] <cradek> (if I had known all along, I might have left it alone)
[06:57:35] <micges_work> good morning
[06:58:21] <micges_work> jepler: maybe ability to add preview as a widget to pyvcp?
[08:28:23] <alex_joni> hi micges_work
[08:45:05] <micges_work> alex_joni: LINUX_2_2 isn't supported in emc at all?
[08:47:51] <micges_work> ok found it ,nm
[08:52:12] <alex_joni> err.. it was
[08:52:34] <alex_joni> not sure if it stil works
[08:53:48] <CIA-41> EMC: 03micges 07master * r8a9604f21de8 10/src/emc/usr_intf/ (emcrsh.cc emcsh.cc): Remove obsolete LINUX_KERNEL_2_2 define
[08:54:31] <micges_work> alex_joni: http://git.linuxcnc.org/gitweb?p=emc2.git;a=commit;h=3b50215b22345632db5b6a23f6dcc6ca602f2883
[09:45:24] <CIA-41> EMC: 03micges 07master * rc9b6226b9093 10/src/emc/usr_intf/usrmot.c: Remove obsolete commands from help command in usrmot
[10:47:08] <jepler> micges_work: I am not interested in that, and imo it doesn't really make sense since pyvcp is for hal but preview is for emc.
[13:09:53] <skunkworks726> logger_dev: bookmark
[13:09:53] <skunkworks726> Just this once .. here's the log: http://www.linuxcnc.org/irc/irc.freenode.net:6667/emcdevel/2009-08-11.txt
[16:54:20] <jepler> * jepler wondrers if 'master' still compiles on breezy (the only realtime machine I can access at the moment)
[16:54:40] <jepler> I can't get a new enough git to check out master, so I had to copy the source across the network
[17:00:45] <jepler> hm, so no log messages / CIAs for the first push that makes a new branch?
[17:00:46] <jepler> oh well
[17:01:17] <SWPadnos> yeah, that's been the pattern so far
[18:11:18] <CIA-41> EMC: 03jepler 07defer-format * r6f573e3f6997 10/src/ (6 files in 2 dirs): make rtai work again
[18:20:52] <jepler> I'll regret saying this before the rubber meets the road, but that went rather easier than I expected
[18:29:34] <skunkworks726> so.. in simple terms - this is so errors are passed as a number lets say instead of strings? then a lookup table will be used?
[18:31:30] <jepler> skunkworks726: no, not at all
[18:31:43] <skunkworks726> heh
[18:31:51] <jepler> that's a terrible system -- somebody has to pick the numbers, for starters
[18:32:29] <jepler> and when you look in the source code at the place where an error is detected you see the numbers or UNENLIGHTENING_ERROR_DEFINES instead of sensible strings
[18:32:48] <skunkworks726> makes sense.
[18:33:34] <skunkworks726> I guess I don't get the formating after vs before.. (mainly - what is the formating) but it really doesn't matter.
[18:33:38] <jepler> in linux, translation is usually done with a system called 'gettext'. The function gettext(s), sometimes written as _(s), takes a string 's', looks it up in a message catalog, and returns the translated version of s
[18:34:03] <jepler> we use gettext in axis, task, and the interpreter to translate messages
[18:34:14] <jepler> but we can't use it in realtime, because it relies on stuff like reading the message catalog from disk
[18:34:39] <skunkworks726> ah - takes too much time I assume.
[18:34:53] <jepler> you can't depend on it not taking too much time, anyway
[18:35:31] <jepler> so anyway, the code for a specific error message might look like this: reportError(_("Can't jog invalid joint number %d."), joint_num);
[18:35:52] <jepler> originally, the formatting of this into the final string, such as "Can't jog invalid joint number 0.", was performed in realtime
[18:36:32] <jepler> now, there is code that gathers the arguments to reportError -- in this case, a string (still in english) and an integer -- and puts them in a buffer.
[18:37:00] <jepler> task checks the buffer for a new item. If there is one, it pulls out the items, translates any that are strings, and performs the formatting
[18:37:45] <skunkworks726> ok - that makes sense to me suprisingly.
[18:51:19] <jepler> hopefully my implementation is as good as my explanation, then
[18:54:25] <skunkworks726> :) thanks jepler.
[18:55:22] <skunkworks726> I think less 'stuff' happening at the motion layer the better.