On 17.02.2012 22:55, Alexander Yakushev wrote:
> Thanks for the detailed review, Uli!
>
> I completely agree with nearly everything you noted. There are but a few
> things that I don't quite understand.
>> +-- Generate a pattern matching expression that ignores case.
>> +-- @param s Original pattern matching expresion.
>> +local function nocase (s)
>> + s = string.gsub(s, "%a",
>> + function (c)
>> + return string.format("[%s%s]", string.lower(c),
>> + string.upper(c))
>> + end)
>> + return s
>> +end
>> I can stand colortext(), but this really does not belong into this module.
>> Also,
>> I'm worried about the amount of dark magic in this function.
>> And since nocase() is only used on a user-specified pattern, I think this
>> can be
>> removed completely.
> This function generates a regular expression for a string that ignores
> character case. So for the input "offi" it returns "[oO][fF][fF][iI]".
> This function is necessary to let the user not care about the character
> case when entering the application name.
> I see the point that it should be located elsewhere. What is the
> idiomatic place for the helper functions like this one then? Maybe
> "gears" module? Or is there a different solution for this task?
How about doing stuff the other way around: Instead of making a magic-pattern,
you could run the client's name through string.lower().
But still, I don't really see why people can't be bothered to spell stuff
correctly.
>> At first I wanted to complain about the non-standard header. Then I checked
>> the
>> URL. No way. The code there doesn't have any copyright headers, there are no
>> licenses attached. You are submitting someone else's code and modify the
>> license
>> in the process (all of awesome is GPLv2). This is a copyright violation.
>>
>> ...
>>
>> Not your name either, so same problem. This time it doesn't even say were
>> this
>> file is from.
>>
>> ...
>>
>> So could someone make Antonio add proper license information to his stuff? If
>> you really want to make me really happy, make him submit his own code
>> himself.
>> That way git will track him as the author, too.
> Well, I can contact Antonio, but what exactly should I ask him to do?
> Suppose if he doesn't want to license his work under GPL, does it mean
> that I can't reuse his code?
Correct.
> What if he licenses it under BSD, for instance?
Hm, good question. I'd ask jd on his opinion, but it would certainly complicate
things.
> I can ask him to commit his code to Awesome himself, but the code
> Menubar uses is not exactly his original code (I modified it here and
> there). Should he then commit first so I can provide a patch to his code
> after? Would it be OK if he committed files unrelevant when being
> alone, and then I commit a patch that finally forms a sort of end-user
> widget?
> I am pretty sure that Antonio will be willing to cooperate (if I manage
> to get in touch with him), so what will be the easiest way for us both
> to do everything properly? I am not quite good at these license mechanics:).
Yet another good question. I guess I'd be ok with a mail from him to this
mailing list which just says that he doesn't mind.
But I think it would be best if there aren't two different copies of this code,
but just a single version which everyone can use.
> Here's a brief description about all this:
> http://awesome.naquadah.org/wiki/Menubar . I can certainly provide a
> short clarification in the module documentation. Will it be acceptable
> to give a link to the wiki in the documentation in order to save some space?
Just the first sentence would be fine with me for documenting the module() call:
Menubar is a dmenu-like applications menu extension for Awesome.
> Thank you again, I appreciate the time you've spent.
Sorry that it took me so long to take a look. :-)
Uli
--
Q: Because it reverses the logical flow of conversation.
A: Why is putting a reply at the top of the message frowned upon?
--
To unsubscribe, send mail to [email protected].