From gambas.fr at ...176... Fri Jan 1 18:21:23 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Fri, 1 Jan 2010 18:21:23 +0100 Subject: [Gambas-devel] I wish an happy new year to all the Gambas Users ! Message-ID: <6324a42a1001010921g69c9cefcv2fe1b39356052e3@...178...> From nospam.nospam.nospam at ...176... Mon Jan 4 04:25:17 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Mon, 4 Jan 2010 14:25:17 +1100 Subject: [Gambas-devel] gb3 Split() problem Message-ID: Gb3 does not correctly split when the separator is a "\r\n" combination: Dim aText As String Dim bText As String Dim aLines As String[] Dim bLines As String[] aText = File.Load("Text1") bText = Replace(aText, "\n", "\r\n") aLines = Split(aText, "\n") bLines = Split(bText, "\r\n") The gb3 documentation states, "Separators is a list of sperators characters", and one of the examples given uses " \n", however gb3 does correctly split a "\r\n" combination. Instead, gb3 returns an extra void. Using the IgnoreVoid parameter is not an option because the code is dealing with RFC 3977 compliant data, which uses "\r\n\r\n" to signify paragraph marks; using IgnoreVoid means that the paragraph marks are completely lost and cannot be reconstructed. Screenshot-aLines (String[]).png shows the expected result for: bLines = Split(bText, "\r\n") Screenshot-bLines (String[]).png shows the actual result. -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot-aLines (String[]).png Type: image/png Size: 20107 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot-bLines (String[]).png Type: image/png Size: 22415 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: SplitTest.tar.gz Type: application/x-gzip Size: 8982 bytes Desc: not available URL: From gambas at ...1... Mon Jan 4 11:25:23 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Mon, 4 Jan 2010 11:25:23 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: Message-ID: <201001041125.23451.gambas@...1...> > Gb3 does not correctly split when the separator is a "\r\n" combination: > > Dim aText As String > Dim bText As String > Dim aLines As String[] > Dim bLines As String[] > > aText = File.Load("Text1") > bText = Replace(aText, "\n", "\r\n") > > aLines = Split(aText, "\n") > bLines = Split(bText, "\r\n") > > The gb3 documentation states, "Separators is a list of sperators > characters", That means that both "\r" and "\n" are separator characters. Split() can only deal with one character separators. To split between "\r\n", you must write your own function. Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Mon Jan 4 12:33:23 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Mon, 4 Jan 2010 22:33:23 +1100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <201001041125.23451.gambas@...1...> References: <201001041125.23451.gambas@...1...> Message-ID: 2010/1/4 Beno?t Minisini : >> Gb3 does not correctly split when the separator is a "\r\n" combination: >> >> ? Dim aText As String >> ? Dim bText As String >> ? Dim aLines As String[] >> ? Dim bLines As String[] >> >> ? aText = File.Load("Text1") >> ? bText = Replace(aText, "\n", "\r\n") >> >> ? aLines = Split(aText, "\n") >> ? bLines = Split(bText, "\r\n") >> >> The gb3 documentation states, "Separators is a list of sperators >> characters", > > That means that both "\r" and "\n" are separator characters. Split() can only > deal with one character separators. But " \n" in the example is two characters; there is a space before the \n and the documentation explicitly uses the plural for separators, not the singular. It also refers to a "list", and a list implies more than one. > To split between "\r\n", you must write your own function. I'm ok with that answer because I can deal with it in code, but what you are saying is that "Separators is NOT a list of sperators [sic] characters", but that the "Separator is a single character". Is that correct? From gambas at ...1... Mon Jan 4 12:51:06 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Mon, 4 Jan 2010 12:51:06 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: <201001041125.23451.gambas@...1...> Message-ID: <201001041251.06323.gambas@...1...> > 2010/1/4 Beno?t Minisini : > >> Gb3 does not correctly split when the separator is a "\r\n" combination: > >> > >> Dim aText As String > >> Dim bText As String > >> Dim aLines As String[] > >> Dim bLines As String[] > >> > >> aText = File.Load("Text1") > >> bText = Replace(aText, "\n", "\r\n") > >> > >> aLines = Split(aText, "\n") > >> bLines = Split(bText, "\r\n") > >> > >> The gb3 documentation states, "Separators is a list of sperators > >> characters", > > > > That means that both "\r" and "\n" are separator characters. Split() can > > only deal with one character separators. > > But " \n" in the example is two characters; there is a space before > the \n and the documentation explicitly uses the plural for > separators, not the singular. It also refers to a "list", and a list > implies more than one. > > > To split between "\r\n", you must write your own function. > > I'm ok with that answer because I can deal with it in code, but what > you are saying is that "Separators is NOT a list of sperators [sic] > characters", but that the "Separator is a single character". > > Is that correct? > Yes, I have added an explicit warning to the Split documentation, as apparently it was not clear enough. Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Mon Jan 4 13:05:08 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Mon, 4 Jan 2010 23:05:08 +1100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <201001041251.06323.gambas@...1...> References: <201001041125.23451.gambas@...1...> <201001041251.06323.gambas@...1...> Message-ID: 2010/1/4 Beno?t Minisini : > Yes, I have added an explicit warning to the Split documentation, as > apparently it was not clear enough. Ok, I don't have an issue with that because I can deal with it, but about this... StringArray = Split ( String AS String [ , Separators AS String , Escape AS String , IgnoreVoid AS Boolean , KeepEscape AS Boolean ] ) I will change "Separators AS String" to "Separator AS String", in accordance with what the UI actually says. I will also fix this, which uses two characters: Elt = Split(" Gambas Almost Means BASIC !\n'Do you agree ?'", " \n", "'") " \n" is wrong. I will also simplify the example: Elt = Split(" Gambas Almost Means BASIC !\n'Do you agree ?'", " \n", "'") The control characters, question marks. and exclamation marks make it extremely difficult to immediately understand that the separator is singular. Are you ok with that? Regards, From gambas at ...1... Mon Jan 4 13:10:35 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Mon, 4 Jan 2010 13:10:35 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: <201001041251.06323.gambas@...1...> Message-ID: <201001041310.35607.gambas@...1...> > 2010/1/4 Beno?t Minisini : > > Yes, I have added an explicit warning to the Split documentation, as > > apparently it was not clear enough. > > Ok, I don't have an issue with that because I can deal with it, but > about this... > > StringArray = Split ( String AS String [ , Separators AS String , > Escape AS String , IgnoreVoid AS Boolean , KeepEscape AS Boolean ] ) > > I will change "Separators AS String" to "Separator AS String", in > accordance with what the UI actually says. > > I will also fix this, which uses two characters: > > Elt = Split(" Gambas Almost Means BASIC !\n'Do you agree ?'", " \n", "'") > > " \n" is wrong. No, you can have several different separators. Each character in the "Separators" is a possible separator. This is the reason why Separator is written in the plural. > > I will also simplify the example: > > Elt = Split(" Gambas Almost Means BASIC !\n'Do you agree ?'", " \n", "'") > > The control characters, question marks. and exclamation marks make it > extremely difficult to immediately understand that the separator is > singular. > > Are you ok with that? > > Regards, > You can add simpler examples, but do not remove the complex ones, are AFAIK, they are correct. Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Mon Jan 4 13:47:42 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Mon, 4 Jan 2010 23:47:42 +1100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <201001041310.35607.gambas@...1...> References: <201001041251.06323.gambas@...1...> <201001041310.35607.gambas@...1...> Message-ID: 2010/1/4 Beno?t Minisini : >> 2010/1/4 Beno?t Minisini : >> > Yes, I have added an explicit warning to the Split documentation, as >> > apparently it was not clear enough. >> >> Ok, I don't have an issue with that because I can deal with it, but >> about this... >> >> StringArray = Split ( String AS String [ , Separators AS String , >> Escape AS String , IgnoreVoid AS Boolean , KeepEscape AS Boolean ] ) >> >> I will change "Separators AS String" to "Separator AS String", in >> accordance with what the UI actually says.b >> >> I will also fix this, which uses two characters: >> >> Elt = Split(" Gambas Almost Means BASIC ?!\n'Do you agree ?'", " \n", "'") >> >> " \n" is wrong. > > No, you can have several different separators. Each character in the > "Separators" is a possible separator. This is the reason why Separator is > written in the plural. I'm sorry, Benoit, but if you if you allow more than one character as a separator then the failure to correctly deal with "\r\n" looks like a bug to me. I'm not trying to be difficult here, but really, "\r\n" is just as much a sequence of ASCII characters as is "aZ". And by what you just said, "||" should result in a clean split without voids, but it most certainly does not. Look at the attached code. If the text uses "||" as the separator then the Split function returns voids for the second bar. The separator is singular, no two ways about it. To put it another way, again without being rude, your answer does not match the facts. >> I will also simplify the example: >> >> Elt = Split(" Gambas Almost Means BASIC ?!\n'Do you agree ?'", " \n", "'") >> >> The control characters, question marks. and exclamation marks make it >> extremely difficult to immediately understand that the separator is >> singular. >> >> Are you ok with that? >> >> Regards, >> > > You can add simpler examples, but do not remove the complex ones, are AFAIK, > they are correct. IMO, not a single one of the examples are correct based on the facts. Anyway, we still have issues to sort out before I get to changing the documentation, squire :) Regards, -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot.png Type: image/png Size: 5585 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: SplitTest2.tar.gz Type: application/x-gzip Size: 8847 bytes Desc: not available URL: From gambas.fr at ...176... Mon Jan 4 13:22:41 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Mon, 4 Jan 2010 13:22:41 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: <201001041125.23451.gambas@...1...> <201001041251.06323.gambas@...1...> Message-ID: <6324a42a1001040422x796b10f1y9646536a86b82e0b@...178...> 2010/1/4 Kadaitcha Man : > 2010/1/4 Beno?t Minisini : > >> Yes, I have added an explicit warning to the Split documentation, as >> apparently it was not clear enough. > > Ok, I don't have an issue with that because I can deal with it, but > about this... > > StringArray = Split ( String AS String [ , Separators AS String , > Escape AS String , IgnoreVoid AS Boolean , KeepEscape AS Boolean ] ) > > I will change "Separators AS String" to "Separator AS String", in > accordance with what the UI actually says. > > I will also fix this, which uses two characters: > > Elt = Split(" Gambas Almost Means BASIC ?!\n'Do you agree ?'", " \n", "'") > > " \n" is wrong. "/n" represent just one character in fact ... chr(10) it's a special escaped character > > I will also simplify the example: > > Elt = Split(" Gambas Almost Means BASIC ?!\n'Do you agree ?'", " \n", "'") > > The control characters, question marks. and exclamation marks make it > extremely difficult to immediately understand that the separator is > singular. > > Are you ok with that? > > Regards, > > ------------------------------------------------------------------------------ > This SF.Net email is sponsored by the Verizon Developer Community > Take advantage of Verizon's best-in-class app development support > A streamlined, 14 day to market process makes app distribution fast and easy > Join now and get one step closer to millions of Verizon customers > http://p.sf.net/sfu/verizon-dev2dev > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel > From gambas at ...1... Mon Jan 4 14:21:04 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Mon, 4 Jan 2010 14:21:04 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: <201001041310.35607.gambas@...1...> Message-ID: <201001041421.04177.gambas@...1...> > 2010/1/4 Beno?t Minisini : > >> 2010/1/4 Beno?t Minisini : > >> > Yes, I have added an explicit warning to the Split documentation, as > >> > apparently it was not clear enough. > >> > >> Ok, I don't have an issue with that because I can deal with it, but > >> about this... > >> > >> StringArray = Split ( String AS String [ , Separators AS String , > >> Escape AS String , IgnoreVoid AS Boolean , KeepEscape AS Boolean ] ) > >> > >> I will change "Separators AS String" to "Separator AS String", in > >> accordance with what the UI actually says.b > >> > >> I will also fix this, which uses two characters: > >> > >> Elt = Split(" Gambas Almost Means BASIC !\n'Do you agree ?'", " \n", > >> "'") > >> > >> " \n" is wrong. > > > > No, you can have several different separators. Each character in the > > "Separators" is a possible separator. This is the reason why Separator is > > written in the plural. > > I'm sorry, Benoit, but if you if you allow more than one character as > a separator then the failure to correctly deal with "\r\n" looks like > a bug to me. > > I'm not trying to be difficult here, but really, "\r\n" is just as > much a sequence of ASCII characters as is "aZ". And by what you just > said, "||" should result in a clean split without voids, but it most > certainly does not. Look at the attached code. If the text uses "||" > as the separator then the Split function returns voids for the second > bar. The separator is singular, no two ways about it. > > To put it another way, again without being rude, your answer does not > match the facts. > > >> I will also simplify the example: > >> > >> Elt = Split(" Gambas Almost Means BASIC !\n'Do you agree ?'", " \n", > >> "'") > >> > >> The control characters, question marks. and exclamation marks make it > >> extremely difficult to immediately understand that the separator is > >> singular. > >> > >> Are you ok with that? > >> > >> Regards, > > > > You can add simpler examples, but do not remove the complex ones, are > > AFAIK, they are correct. > > IMO, not a single one of the examples are correct based on the facts. > Anyway, we still have issues to sort out before I get to changing the > documentation, squire :) > > Regards, > Did you try the examples? They work as expected. What "facts" are you talking about? The fact are the results returned by the intepreter, and they perfectly match the examples. The examples are right. Split(xxx, "\r\n") does not mean that you will split the string between the "\r\n" sequence, but that either "\r" or "\n" can be a separator. Maybe it is just a misunderstanding based on the fact that English is not my native language and is not as precise as French? AFAIK, you are the first one that does not understand the Split documentation, so until that, I thought it was perfectly clear. I am against replacing "Separators" by "Separator", because using the plural form is less ambiguous. It shows that there is something special in the argument. Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Mon Jan 4 14:22:15 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Tue, 5 Jan 2010 00:22:15 +1100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <201001041310.35607.gambas@...1...> References: <201001041251.06323.gambas@...1...> <201001041310.35607.gambas@...1...> Message-ID: 2010/1/4 Beno?t Minisini : > No, you can have several different separators. Each character in the > "Separators" is a possible separator. This is the reason why Separator is > written in the plural. Hang about... Are you saying that if the Separators are defined as "aZ" then "a" and "Z" are two different separators? If so, why is Separator defined as a string, which is a sequence of characters? If "aZ" is a string then it is a string, not two individual characters meaning two different things. That is,"aZ" means exactly that "aZ", not "a" OR "Z". A string comprising "aZ" is not "a" or "Z", it is "aZ", end of story. But if you say that "aZ" defines two distinct separators then "a" is Char and "Z" is Char, and gb does not have a Char type. There is a serious logic problem here, Benoit. I'm sorry to ruin your introduction to 2010, but these are genuine problems that need to be dealt with if you want gb3 to be released to the unthinking masses this year. I might suspect that you are using regex to simply solve a complex problem but I wouldn't come right out and say such a thing, hey. Sorry, squire. You''ll have to work harder to get past this old fool. I get to 72 in late February. :() From gambas at ...1... Mon Jan 4 14:31:14 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Mon, 4 Jan 2010 14:31:14 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: <201001041310.35607.gambas@...1...> Message-ID: <201001041431.15150.gambas@...1...> > 2010/1/4 Beno?t Minisini : > > No, you can have several different separators. Each character in the > > "Separators" is a possible separator. This is the reason why Separator is > > written in the plural. > > Hang about... > > Are you saying that if the Separators are defined as "aZ" then "a" and > "Z" are two different separators? Yes! > > If so, why is Separator defined as a string, which is a sequence of > characters? Because then the function is faster. > > If "aZ" is a string then it is a string, not two individual characters > meaning two different things. That is,"aZ" means exactly that "aZ", > not "a" OR "Z". > > A string comprising "aZ" is not "a" or "Z", it is "aZ", end of story. > But if you say that "aZ" defines two distinct separators then "a" is > Char and "Z" is Char, and gb does not have a Char type. One more reason to use a string instead of, well, an array of Byte for example. > > There is a serious logic problem here, Benoit. > I don't see the relation with logic. The function works that way, and it is documented that way. Maybe the syntax is not 100% Bjarne Stroustrup compliant, but the goal was having a little function for splitting that is fast, small, and that fits 90% of the programmer needs. > I'm sorry to ruin your introduction to 2010, but these are genuine > problems that need to be dealt with if you want gb3 to be released to > the unthinking masses this year. I don't think that Split() is the problem in Gambas 3! > > I might suspect that you are using regex to simply solve a complex > problem but I wouldn't come right out and say such a thing, hey. > I've never used any regex in my Gambas program until now, so I'm fine. Regards, -- Beno?t Minisini From arosa at ...615... Mon Jan 4 14:53:47 2010 From: arosa at ...615... (Toni) Date: Mon, 04 Jan 2010 14:53:47 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <201001041431.15150.gambas@...1...> References: <201001041310.35607.gambas@...1...> <201001041431.15150.gambas@...1...> Message-ID: <4B41F2EB.4010304@...615...> I have been following this discussion thread with interest. Let me give you my 5 cents about it... I am sure that if "Separators" parameter in Split was an array of single chars (I guest that is "byte" in Gambas), then it would cristal clear that each char is a separator by itself ... But to me, one of the main benefits about using Gambas is such this kind simplifications. On the other hand I agree with Kadaitcha Man that it would be nice being able to use a multiple char separator ( aka. string separators with a length > 1) in gb3. Regards, En/na Beno?t Minisini ha escrit: >> 2010/1/4 Beno?t Minisini : >> >>> No, you can have several different separators. Each character in the >>> "Separators" is a possible separator. This is the reason why Separator is >>> written in the plural. >>> >> Hang about... >> >> Are you saying that if the Separators are defined as "aZ" then "a" and >> "Z" are two different separators? >> > > Yes! > > >> If so, why is Separator defined as a string, which is a sequence of >> characters? >> > > Because then the function is faster. > > >> If "aZ" is a string then it is a string, not two individual characters >> meaning two different things. That is,"aZ" means exactly that "aZ", >> not "a" OR "Z". >> >> A string comprising "aZ" is not "a" or "Z", it is "aZ", end of story. >> But if you say that "aZ" defines two distinct separators then "a" is >> Char and "Z" is Char, and gb does not have a Char type. >> > > One more reason to use a string instead of, well, an array of Byte for > example. > > >> There is a serious logic problem here, Benoit. >> >> > > I don't see the relation with logic. The function works that way, and it is > documented that way. Maybe the syntax is not 100% Bjarne Stroustrup compliant, > but the goal was having a little function for splitting that is fast, small, > and that fits 90% of the programmer needs. > > >> I'm sorry to ruin your introduction to 2010, but these are genuine >> problems that need to be dealt with if you want gb3 to be released to >> the unthinking masses this year. >> > > I don't think that Split() is the problem in Gambas 3! > > >> I might suspect that you are using regex to simply solve a complex >> problem but I wouldn't come right out and say such a thing, hey. >> >> > > I've never used any regex in my Gambas program until now, so I'm fine. > > Regards, > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From nospam.nospam.nospam at ...176... Mon Jan 4 15:17:25 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Tue, 5 Jan 2010 01:17:25 +1100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <6324a42a1001040422x796b10f1y9646536a86b82e0b@...178...> References: <201001041125.23451.gambas@...1...> <201001041251.06323.gambas@...1...> <6324a42a1001040422x796b10f1y9646536a86b82e0b@...178...> Message-ID: 2010/1/4 Fabien Bodard : > "/n" represent just one character in fact ... I know full well that "/n" is one character. I also know full well that " /n" is two characters. And still we are left with " /n", like "||", being two distinct separators. > chr(10) it's a special escaped character Chr(10) is not a special escaped character unless I use " Escape AS String". I do not recall ever using that in the examples I have given to you. So, I repeat my question, if I specify "||" as the separator, am I specifying "||" as the separator or am I specifying "|" as a separator and "|" as a different separator entirely? The questions here are these: 1) Are you correct? 2) Is the UI correct? 3) Is the documentation correct? My answer is that you are wrong and the documentation is wrong. That means the UI is correct. Separator is singular. From nospam.nospam.nospam at ...176... Mon Jan 4 15:37:47 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Tue, 5 Jan 2010 01:37:47 +1100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: <4B41F2EB.4010304@...615...> References: <201001041310.35607.gambas@...1...> <201001041431.15150.gambas@...1...> <4B41F2EB.4010304@...615...> Message-ID: 2010/1/5 Toni : > I am sure that if "Separators" parameter in Split was an array of single > chars (I guest that is "byte" in Gambas), then it would cristal clear that > each char is a separator by itself ...? But to me, one of the main benefits > about using Gambas is such this kind simplifications. > > On the other hand I agree with Kadaitcha Man that it would be nice being > able to use a multiple char separator? ( aka. string separators with a > length > 1) in gb3. The whole point of this discussion, Tony, is if we are using a single or multiple character terminator. I have no issue with 'string separators with a length = 1)'. I only have an issue with being told that the developer is right, that the documentation is right, and that the UI is right, when all three of them say and do different things. The UI says that the separator is singular. The behaviour is provably singular. Your point and my argument only make sense if gb supports Char, which it does not. That means then, a separator of "aZ" really means "a" OR "Z", and not the the literal "aZ". I don't care that gb treats "aZ" as two distinct separators. I care only to know that gb does indeed treat "aZ" as two distinct separators. Do you see the subtle difference? I can work around any of the answers, but which answer is correct? Of the three possibilities, the code I attached proves that the UI is correct. Not Benoit, not Fabien. The UI. The UI says that the separator is singular. From gambas.fr at ...176... Mon Jan 4 21:34:13 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Mon, 4 Jan 2010 21:34:13 +0100 Subject: [Gambas-devel] gb3 Split() problem In-Reply-To: References: <201001041310.35607.gambas@...1...> <201001041431.15150.gambas@...1...> <4B41F2EB.4010304@...615...> Message-ID: <6324a42a1001041234y641645bdv4cb9e654b5b40401@...178...> http://gambasdoc.org/help/lang/split seem corrected 2010/1/4 Kadaitcha Man : > 2010/1/5 Toni : > >> I am sure that if "Separators" parameter in Split was an array of single >> chars (I guest that is "byte" in Gambas), then it would cristal clear that >> each char is a separator by itself ...? But to me, one of the main benefits >> about using Gambas is such this kind simplifications. >> >> On the other hand I agree with Kadaitcha Man that it would be nice being >> able to use a multiple char separator? ( aka. string separators with a >> length > 1) in gb3. > > The whole point of this discussion, Tony, is if we are using a single > or multiple character terminator. I have no issue with 'string > separators with a length = 1)'. I only have an issue with being told > that the developer is right, that the documentation is right, and that > the UI is right, when all three of them say and do different things. > > The UI says that the separator is singular. The behaviour is provably > singular. Your point and my argument only make sense if gb supports > Char, which it does not. That means then, a separator of "aZ" really > means "a" OR "Z", and not the the literal "aZ". > > I don't care that gb treats "aZ" as two distinct separators. I care > only to know that gb does indeed treat "aZ" as two distinct > separators. > > Do you see the subtle difference? > > I can work around any of the answers, but which answer is correct? > > Of the three possibilities, the code I attached proves that the UI is > correct. Not Benoit, not Fabien. The UI. > > The UI says that the separator is singular. > > ------------------------------------------------------------------------------ > This SF.Net email is sponsored by the Verizon Developer Community > Take advantage of Verizon's best-in-class app development support > A streamlined, 14 day to market process makes app distribution fast and easy > Join now and get one step closer to millions of Verizon customers > http://p.sf.net/sfu/verizon-dev2dev > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel > From nospam.nospam.nospam at ...176... Fri Jan 8 08:49:37 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Fri, 8 Jan 2010 18:49:37 +1100 Subject: [Gambas-devel] gb3 help text obscuring important information Message-ID: The attached image shows how gb3 IDE popup text obscures important information provided by another gb3 IDE popup item. Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is off and all available help text options are off. The problem is even worse when "Display property help" is turned on. Both sets of information are important but one obscures the other. Any suggestions? -------------- next part -------------- A non-text attachment was scrubbed... Name: mockup.png Type: image/png Size: 58088 bytes Desc: not available URL: From nospam.nospam.nospam at ...176... Fri Jan 8 11:06:00 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Fri, 8 Jan 2010 21:06:00 +1100 Subject: [Gambas-devel] gb3 editor anomalies Message-ID: Unfortunately I can't provide you with an example that reproduces these problems because they occur in the IDE editor when editing code and they appear to be random. spurious1.png, spurious2.png, and spurious3.png all show extraneous text that did not exist in the code until I pasted text elsewhere into the editor. I am convinced that in all cases and without exception, the Find/Replace window has been visible, as shown in spurious4.png, however I cannot tie this issue down. In spurious3.png, the code marked in red had a line exactly like those two marked in blue. The code read like this: Case mConst.QH_REPLYTO_MID However some unknown action caused the above to be replaced with the text shown in the image (spurious3.png). I did not make the changes shown in any of the images. As I said, in all cases where this has happened, the Find/Replace window has been visible. That is the only thing I can point to as consistent with this issue occurring. There are also other anomalies in the gb3 editor. I like to use the vertical split view when tracing a code problem but I cannot use it because the text in the lower half of the split view gets horribly confused. It's as if there are hidden backspace characters in the text so that when you cursor right, the insertion point goes left. I have witnessed these behaviours in three clean installs of Ubuntu 9.10 with qt4 installed, and in Linux UE 2.5. As with the first problem, I can offer no definitive examples to reproduce this issue. Since I can't reproduce the problem this is a heads up for you to alert you that something isn't right. -------------- next part -------------- A non-text attachment was scrubbed... Name: spurious1.png Type: image/png Size: 10678 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: spurious2.png Type: image/png Size: 7180 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: spurious3.png Type: image/png Size: 21910 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: spurious4.png Type: image/png Size: 8935 bytes Desc: not available URL: From gambas.fr at ...176... Fri Jan 8 12:26:55 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Fri, 8 Jan 2010 12:26:55 +0100 Subject: [Gambas-devel] gb3 help text obscuring important information In-Reply-To: References: Message-ID: <6324a42a1001080326ha615ba3q39478f3d1ba01518@...178...> 2010/1/8 Kadaitcha Man : > The attached image shows how gb3 IDE popup text obscures important > information provided by another gb3 IDE popup item. > > Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is > off and all available help text options are off. The problem is even > worse when "Display property help" is turned on. > > Both sets of information are important but one obscures the other. Any > suggestions? > > ------------------------------------------------------------------------------ > This SF.Net email is sponsored by the Verizon Developer Community > Take advantage of Verizon's best-in-class app development support > A streamlined, 14 day to market process makes app distribution fast and easy > Join now and get one step closer to millions of Verizon customers > http://p.sf.net/sfu/verizon-dev2dev > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel > > you are on gnome or kde ? From nospam.nospam.nospam at ...176... Fri Jan 8 12:55:09 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Fri, 8 Jan 2010 22:55:09 +1100 Subject: [Gambas-devel] gb3 help text obscuring important information In-Reply-To: <6324a42a1001080326ha615ba3q39478f3d1ba01518@...178...> References: <6324a42a1001080326ha615ba3q39478f3d1ba01518@...178...> Message-ID: 2010/1/8 Fabien Bodard : > 2010/1/8 Kadaitcha Man : >> The attached image shows how gb3 IDE popup text obscures important >> information provided by another gb3 IDE popup item. >> >> Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is >> off and all available help text options are off. The problem is even >> worse when "Display property help" is turned on. >> >> Both sets of information are important but one obscures the other. Any >> suggestions? >> >> ------------------------------------------------------------------------------ >> This SF.Net email is sponsored by the Verizon Developer Community >> Take advantage of Verizon's best-in-class app development support >> A streamlined, 14 day to market process makes app distribution fast and easy >> Join now and get one step closer to millions of Verizon customers >> http://p.sf.net/sfu/verizon-dev2dev >> _______________________________________________ >> Gambas-devel mailing list >> Gambas-devel at lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/gambas-devel >> >> > > you are on gnome or kde ? Both, but the base is Ubuntu, which would be gnome. From nospam.nospam.nospam at ...176... Fri Jan 8 13:16:27 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Fri, 8 Jan 2010 23:16:27 +1100 Subject: [Gambas-devel] Another gb3 IDE Editor anomaly Message-ID: The gb3 IDE attemps to correct programmer mistakes by modifying " &SOMEFIELD" into "& SOMEFIELD", however it fails to correctly modify the assumed error if SOMEFIELD contains an underscore. For example, this line: oPost.FinalPost &= mConst.$crlf &HDR_NEWSGROUPS & oPost.NewsgroupsHeader Becomes: oPost.FinalPost &= mConst.$crlf & HD R_NEWSGROUPS & oPost.NewsgroupsHeader See attached image. This isn't a major issue but it may present problems to new users. Regards, -------------- next part -------------- A non-text attachment was scrubbed... Name: IDE_Editor.png Type: image/png Size: 9501 bytes Desc: not available URL: From gambas.fr at ...176... Fri Jan 8 20:28:55 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Fri, 8 Jan 2010 20:28:55 +0100 Subject: [Gambas-devel] gb3 help text obscuring important information In-Reply-To: References: <6324a42a1001080326ha615ba3q39478f3d1ba01518@...178...> Message-ID: <6324a42a1001081128p4b8747a2je854c49f88e7c1d1@...178...> 2010/1/8 Kadaitcha Man : > 2010/1/8 Fabien Bodard : >> 2010/1/8 Kadaitcha Man : >>> The attached image shows how gb3 IDE popup text obscures important >>> information provided by another gb3 IDE popup item. >>> >>> Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is >>> off and all available help text options are off. The problem is even >>> worse when "Display property help" is turned on. >>> >>> Both sets of information are important but one obscures the other. Any >>> suggestions? >>> i've tested both in gnome and kde, with and without help and with and without compiz.. and i see nothing like that ... Maybe Benoit on mandriva can be more lucky :/ >>> ------------------------------------------------------------------------------ >>> This SF.Net email is sponsored by the Verizon Developer Community >>> Take advantage of Verizon's best-in-class app development support >>> A streamlined, 14 day to market process makes app distribution fast and easy >>> Join now and get one step closer to millions of Verizon customers >>> http://p.sf.net/sfu/verizon-dev2dev >>> _______________________________________________ >>> Gambas-devel mailing list >>> Gambas-devel at lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/gambas-devel >>> >>> >> >> you are on gnome or kde ? > > Both, but the base is Ubuntu, which would be gnome. > > ------------------------------------------------------------------------------ > This SF.Net email is sponsored by the Verizon Developer Community > Take advantage of Verizon's best-in-class app development support > A streamlined, 14 day to market process makes app distribution fast and easy > Join now and get one step closer to millions of Verizon customers > http://p.sf.net/sfu/verizon-dev2dev > _______________________________________________ > Gambas-devel mailing list > Gambas-devel at lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/gambas-devel > From rterry at ...627... Fri Jan 8 22:05:07 2010 From: rterry at ...627... (richard terry) Date: Sat, 9 Jan 2010 08:05:07 +1100 Subject: [Gambas-devel] gb3 editor anomalies - a possible explanation In-Reply-To: References: Message-ID: <201001090805.07173.rterry@...627...> On Friday 08 January 2010 21:06:00 Kadaitcha Man wrote: > Unfortunately I can't provide you with an example that reproduces > these problems because they occur in the IDE editor when editing code > and they appear to be random. > > spurious1.png, spurious2.png, and spurious3.png all show extraneous > text that did not exist in the code until I pasted text elsewhere into > the editor. I am convinced that in all cases and without exception, > the Find/Replace window has been visible, as shown in spurious4.png, > however I cannot tie this issue down. > > In spurious3.png, the code marked in red had a line exactly like those > two marked in blue. The code read like this: > > Case mConst.QH_REPLYTO_MID > > However some unknown action caused the above to be replaced with the > text shown in the image (spurious3.png). I did not make the changesrterry at ...627... > shown in any of the images. As I said, in all cases where this has > happened, the Find/Replace window has been visible. That is the only > thing I can point to as consistent with this issue occurring. > > There are also other anomalies in the gb3 editor. I like to use the > vertical split view when tracing a code problem but I cannot use it > because the text in the lower half of the split view gets horribly > confused. It's as if there are hidden backspace characters in the text > so that when you cursor right, the insertion point goes left. > > I have witnessed these behaviours in three clean installs of Ubuntu > 9.10 with qt4 installed, and in Linux UE 2.5. As with the first > problem, I can offer no definitive examples to reproduce this issue. > > Since I can't reproduce the problem this is a heads up for you to > alert you that something isn't right. > How about his as a explanation. On my linux the mouse scroll button is also a paste button. I've noticed that if I use the scroll bar on the mouse to scroll down the gambas IDE, then sometimes I get large numbers of 'pasting' into my code just like your pictures (ie I put too much pressure on the mouse wheel). I reckon its the fact that depressioning the middle mouse button is a paste action. I just scroll using the scroll bars and it dosn't happen. Regards Richard From nospam.nospam.nospam at ...176... Fri Jan 8 23:05:07 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sat, 9 Jan 2010 09:05:07 +1100 Subject: [Gambas-devel] gb3 help text obscuring important information In-Reply-To: <6324a42a1001081128p4b8747a2je854c49f88e7c1d1@...178...> References: <6324a42a1001080326ha615ba3q39478f3d1ba01518@...178...> <6324a42a1001081128p4b8747a2je854c49f88e7c1d1@...178...> Message-ID: 2010/1/9 Fabien Bodard : > 2010/1/8 Kadaitcha Man : >> 2010/1/8 Fabien Bodard : >>> 2010/1/8 Kadaitcha Man : >>>> The attached image shows how gb3 IDE popup text obscures important >>>> information provided by another gb3 IDE popup item. >>>> >>>> Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is >>>> off and all available help text options are off. The problem is even >>>> worse when "Display property help" is turned on. >>>> >>>> Both sets of information are important but one obscures the other. Any >>>> suggestions? >>>> > > i've tested both in gnome and kde, with and without help and with and > without compiz.. and i see nothing like that ... Urgh. Ok, ta. > Maybe Benoit on mandriva can be more lucky :/ From nospam.nospam.nospam at ...176... Fri Jan 8 23:09:13 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sat, 9 Jan 2010 09:09:13 +1100 Subject: [Gambas-devel] gb3 editor anomalies - a possible explanation In-Reply-To: <201001090805.07173.rterry@...627...> References: <201001090805.07173.rterry@...627...> Message-ID: 2010/1/9 richard terry : > On Friday 08 January 2010 21:06:00 Kadaitcha Man wrote: >> Unfortunately I can't provide you with an example that reproduces >> these problems because they occur in the IDE editor when editing code >> and they appear to be random. >> >> spurious1.png, spurious2.png, and spurious3.png all show extraneous >> text that did not exist in the code until I pasted text elsewhere into >> the editor. I am convinced that in all cases and without exception, >> the Find/Replace window has been visible, as shown in spurious4.png, >> however I cannot tie this issue down. >> >> In spurious3.png, the code marked in red had a line exactly like those >> two marked in blue. The code read like this: >> >> Case mConst.QH_REPLYTO_MID >> >> However some unknown action caused the above to be replaced with the >> text shown in the image (spurious3.png). I did not make the > changesrterry at ...627... >> shown in any of the images. As I said, in all cases where this has >> happened, the Find/Replace window has been visible. That is the only >> thing I can point to as consistent with this issue occurring. >> >> There are also other anomalies in the gb3 editor. I like to use the >> vertical split view when tracing a code problem but I cannot use it >> because the text in the lower half of the split view gets horribly >> confused. It's as if there are hidden backspace characters in the text >> so that when you cursor right, the insertion point goes left. >> >> I have witnessed these behaviours in three clean installs of Ubuntu >> 9.10 with qt4 installed, and in Linux UE 2.5. As with the first >> problem, I can offer no definitive examples to reproduce this issue. >> >> Since I can't reproduce the problem this is a heads up for you to >> alert you that something isn't right. >> > How about his as a explanation. On my linux the mouse scroll button is also a > paste button. > > I've noticed that if I use the scroll bar on the mouse to scroll down the > gambas IDE, then sometimes I get large numbers of 'pasting' into my code just > like your pictures (ie I put too much pressure on the mouse wheel). > > I reckon its the fact that depressioning the middle mouse button is a paste > action. > > I just scroll using the scroll bars and it dosn't happen. I don't paste using the mouse, only the kbd. From ronstk at ...124... Fri Jan 8 23:53:44 2010 From: ronstk at ...124... (Ron_1st) Date: Fri, 8 Jan 2010 23:53:44 +0100 Subject: [Gambas-devel] gb3 editor anomalies - a possible explanation In-Reply-To: References: <201001090805.07173.rterry@...627...> Message-ID: <201001082353.45227.ronstk@...124...> On Friday 08 January 2010, Kadaitcha Man wrote: > I don't paste using the mouse, only the kbd. > Richard is telling you that _pushing_ on the scrollwheel is also a paste action. Whenyou use the scrollwheel to browse your code this can happen sometimes. This pasting action is from the X-server and may results in a accidently paste. Best regards, Ron_1st -- From gambas at ...1... Sat Jan 9 00:49:45 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sat, 9 Jan 2010 00:49:45 +0100 Subject: [Gambas-devel] Another gb3 IDE Editor anomaly In-Reply-To: References: Message-ID: <201001090049.45350.gambas@...1...> > The gb3 IDE attemps to correct programmer mistakes by modifying " > &SOMEFIELD" into "& SOMEFIELD", however it fails to correctly modify > the assumed error if SOMEFIELD contains an underscore. For example, > this line: > > oPost.FinalPost &= mConst.$crlf &HDR_NEWSGROUPS & oPost.NewsgroupsHeader > > Becomes: > > oPost.FinalPost &= mConst.$crlf & HD R_NEWSGROUPS & oPost.NewsgroupsHeader > > See attached image. > > This isn't a major issue but it may present problems to new users. > > Regards, > I didn't have the time yet to look at all your posts. I just can say that I have a refresh problem with the editor when there is a popup displayed on it that is hidden. But not everytime! (That would be too easy...). I never found why, so I think there is maybe some Qt bug there. But I'm not sure. As for the "&HDR_NEWSGROUP", it is because the syntax analyzer is a bit stupid. &H is the syntax for hexadecimal numbers, so it takes &HD for an hexadecimal number, and then takes the rest for an identifer. Maybe it could be more clever by taking into accound that there is no space and another alphanumeric caracter just after &HD. I will see what I can do... Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Sat Jan 9 00:51:21 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sat, 9 Jan 2010 10:51:21 +1100 Subject: [Gambas-devel] gb3 editor anomalies - a possible explanation References: <201001090805.07173.rterry@...627...> <201001082353.45227.ronstk@...124...> Message-ID: <76EA778755B54028818A02672F93D8A7@...645...> Ron_1st wrote: > On Friday 08 January 2010, Kadaitcha Man wrote: >> I don't paste using the mouse, only the kbd. >> > > Richard is telling you that _pushing_ on the scrollwheel is > also a paste action. Whenyou use the scrollwheel to browse > your code this can happen sometimes. Hmmm. It makes sense when you put it that way. > This pasting action is from the X-server and may results > in a accidently paste. Ok, it may be associated with scrolling, I'll keep my eye on it. From nospam.nospam.nospam at ...176... Sat Jan 9 00:54:18 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sat, 9 Jan 2010 10:54:18 +1100 Subject: [Gambas-devel] gb3 editor anomalies - a possible explanation References: <201001090805.07173.rterry@...627...> Message-ID: <513F5DB8ACEC4BC9B32C4998FD4CCBB3@...645...> richard terry wrote: > I've noticed that if I use the scroll bar on the mouse to scroll down > the gambas IDE, then sometimes I get large numbers of 'pasting' into > my code just like your pictures (ie I put too much pressure on the > mouse wheel). > > I reckon its the fact that depressioning the middle mouse button is a > paste action. > > I just scroll using the scroll bars and it dosn't happen. Ron_1st clarified what you meant. Thanks. My mouse is brand new and the problem occurred with the old mouse as well. With this mouse it's difficult to put too much pressure on the mouse wheel because it has a firm click action, which needs a deliberate click. Nevertheless I will keep my eye on the scrolling, thank you. From nospam.nospam.nospam at ...176... Sat Jan 9 02:17:14 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sat, 9 Jan 2010 12:17:14 +1100 Subject: [Gambas-devel] Another gb3 IDE Editor anomaly In-Reply-To: <201001090049.45350.gambas@...1...> References: <201001090049.45350.gambas@...1...> Message-ID: 2010/1/9 Beno?t Minisini : >> The gb3 IDE attemps to correct programmer mistakes by modifying " >> &SOMEFIELD" into "& SOMEFIELD", however it fails to correctly modify >> the assumed error if SOMEFIELD contains an underscore. For example, >> this line: >> >> ?oPost.FinalPost &= mConst.$crlf &HDR_NEWSGROUPS & oPost.NewsgroupsHeader >> >> Becomes: >> >> ?oPost.FinalPost &= mConst.$crlf & HD R_NEWSGROUPS & oPost.NewsgroupsHeader >> >> See attached image. >> >> This isn't a major issue but it may present problems to new users. >> >> Regards, >> > > I didn't have the time yet to look at all your posts. > > I just can say that I have a refresh problem with the editor when there is a > popup displayed on it that is hidden. But not everytime! (That would be too > easy...). I never found why, so I think there is maybe some Qt bug there. But > I'm not sure. > > As for the "&HDR_NEWSGROUP", it is because the syntax analyzer is a bit > stupid. &H is the syntax for hexadecimal numbers, so it takes &HD for an > hexadecimal number, and then takes the rest for an identifer. Maybe it could > be more clever by taking into accound that there is no space and another > alphanumeric caracter just after &HD. I will see what I can do... Thanks. It's not a big deal that needs fix for me. It was posted fyi. From nospam.nospam.nospam at ...176... Sat Jan 9 08:26:12 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sat, 9 Jan 2010 18:26:12 +1100 Subject: [Gambas-devel] gb3 stack backtrace and Unknown symbol Message-ID: Instructions for replicating what I describe here are contained in Module2.module of the attached code. When you follow those instructions you will find additional steps documented in Module1.module. When debugging code execution across multiple modules it is not possible to inspect the values of variables in a routine of another module if you select the module by clicking on the module's tab in the IDE. Gambas issues an "Unknown symbol" message when you try to insect a variable, even if the routine in the module is an active part of the current trace. The only way to get at the variables in another module is to double-click on the relevant method or routine in the stack backtrace window, even if the module window is already open in another tab. When you double-click on the relevant method or routine in the stack backtrace window, you can't go back to the previous module by clicking on the module's tab in the IDE and still see the variables for that module because gb3 now issues "Unknown symbol" messages for that module instead. Again, you must double-click the previous module.methodname in the stack backtrace window, despite the module's code window already being open in another tab. Is this behaviour by design? -------------- next part -------------- A non-text attachment was scrubbed... Name: UnknownSymbol.tar.gz Type: application/x-gzip Size: 9087 bytes Desc: not available URL: From gambas at ...1... Sat Jan 9 12:49:09 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sat, 9 Jan 2010 12:49:09 +0100 Subject: [Gambas-devel] gb3 stack backtrace and Unknown symbol In-Reply-To: References: Message-ID: <201001091249.09704.gambas@...1...> > Instructions for replicating what I describe here are contained in > Module2.module of the attached code. When you follow those > instructions you will find additional steps documented in > Module1.module. > > When debugging code execution across multiple modules it is not > possible to inspect the values of variables in a routine of another > module if you select the module by clicking on the module's tab in the > IDE. Gambas issues an "Unknown symbol" message when you try to insect > a variable, even if the routine in the module is an active part of the > current trace. > > The only way to get at the variables in another module is to > double-click on the relevant method or routine in the stack backtrace > window, even if the module window is already open in another tab. When > you double-click on the relevant method or routine in the stack > backtrace window, you can't go back to the previous module by clicking > on the module's tab in the IDE and still see the variables for that > module because gb3 now issues "Unknown symbol" messages for that > module instead. Again, you must double-click the previous > module.methodname in the stack backtrace window, despite the module's > code window already being open in another tab. > > Is this behaviour by design? > Yes, like in any debugger: local variables are stored in the stack. Knowing which routine you want to inspect is not enough, you must know the stack context. Think about recursive routines, for example. So clicking on the source code window is not enough. You must tell the debugger the stack context by clicking in the stack backtrace window. Otherwise it would be ambiguous. Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Sat Jan 9 14:04:27 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sun, 10 Jan 2010 00:04:27 +1100 Subject: [Gambas-devel] gb3 stack backtrace and Unknown symbol In-Reply-To: <201001091249.09704.gambas@...1...> References: <201001091249.09704.gambas@...1...> Message-ID: 2010/1/9 Beno?t Minisini : >> Is this behaviour by design? >> > > Yes, Ok, ta. From gambas.fr at ...176... Sun Jan 10 10:57:20 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Sun, 10 Jan 2010 10:57:20 +0100 Subject: [Gambas-devel] An idea Message-ID: <6324a42a1001100157n2699d589x230898d25d91299a@...178...> What about doing something to forbid the generation of the executable in the Project directory and a warning message when we are trying to copy the whole project into itself ? fabien Bodard From nospam.nospam.nospam at ...176... Sun Jan 10 12:13:40 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Sun, 10 Jan 2010 22:13:40 +1100 Subject: [Gambas-devel] An idea In-Reply-To: <6324a42a1001100157n2699d589x230898d25d91299a@...178...> References: <6324a42a1001100157n2699d589x230898d25d91299a@...178...> Message-ID: 2010/1/10 Fabien Bodard : > What about doing something to forbid the generation of the executable > in the Project directory and a warning message when we are trying to > copy the whole project into itself ? ???? ?????? ???????? ??????????? ????????????????????????????????????????????????????????????????????????????????????????????????? HTH From Karl.Reinl at ...646... Tue Jan 12 20:47:57 2010 From: Karl.Reinl at ...646... (Charlie Reinl) Date: Tue, 12 Jan 2010 20:47:57 +0100 Subject: [Gambas-devel] pb moving project to gambas3 Message-ID: <1263325677.6406.18.camel@...102...> Salut, the attached project is a gambas2 project which is under svn. If you open it with gambas3, after clicking [Open] the question that it is gambas2 project, the thinks run different, but not well (NULL object in Project.IsAdded (line 4563 but ver old rev., but also tested and reproduced with r2609)). -- Amicalement Charlie -------------- next part -------------- A non-text attachment was scrubbed... Name: gambas2-project.tar.bz2 Type: application/x-bzip-compressed-tar Size: 16013 bytes Desc: not available URL: From nospam.nospam.nospam at ...176... Sat Jan 16 04:39:09 2010 From: nospam.nospam.nospam at ...176... (nospam.nospam.nospam at ...176...) Date: Sat, 16 Jan 2010 14:39:09 +1100 Subject: [Gambas-devel] PING > Benoit --> Conv function Message-ID: Benoit, ConvertedString = Conv (String AS String, SourceCharset AS String, DestinationCharset AS String) AS String Before I update the English page for the Conv function (http://gambasdoc.org/help/lang/conv), can you confirm that Gambas passes both the SourceCharset and DestinationCharset to the iconv() GNU library function, unfiltered and unaltered. That is, can you confirm that the Gambas Conv function can convert any encoding pair supported by iconv()? I want to update the Conv page to reflect what I just discovered, which you probably knew anyway but it isn't documented... I have just made Gambas convert encoded Turkish (iso-8859-9), Korean (EUC-KR), Simplified Chinese (GB2312), Arabic (windows-1256), Cyrillic (koi8-r) and Japanese (iso-2022-jp) into human-readable UTF-8. For example: From: ^[$B=iJbE*$J;v$G$9$,!V%a!<%k!W$K$D$$^[(B To: ???????????????? From: ?????????????????????????? To: ???????????????????? Suggested addition to web page: Gambas can convert, amongst many other encodings, Turkish (ISO-8859-9), Korean (EUC-KR), Simplified Chinese (GB2312), Arabic (WINDOWS-1256), Cyrillic (KOI8-R) and Japanese (ISO-2022-JP) into human-readable UTF-8 text. For a full list of supported international text conversions visit http://www.gnu.org/software/libiconv OR Gambas can convert, amongst many other encodings, Turkish (iso-8859-9), Korean (EUC-KR), Simplified Chinese (GB2312), Arabic (windows-1256), Cyrillic (koi8-r) and Japanese (iso-2022-jp) into human-readable UTF-8. For a full list of supported international text conversions type iconv -l in a command line. Are you ok with that? From gambas at ...1... Sun Jan 17 21:45:42 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sun, 17 Jan 2010 21:45:42 +0100 Subject: [Gambas-devel] PING > Benoit --> Conv function In-Reply-To: References: Message-ID: <201001172145.42156.gambas@...1...> > Benoit, > > ConvertedString = Conv (String AS String, SourceCharset AS String, > DestinationCharset AS String) AS String > > Before I update the English page for the Conv function > (http://gambasdoc.org/help/lang/conv), can you confirm that Gambas > passes both the SourceCharset and DestinationCharset to the iconv() > GNU library function, unfiltered and unaltered. That is, can you > confirm that the Gambas Conv function can convert any encoding pair > supported by iconv()? > > I want to update the Conv page to reflect what I just discovered, > which you probably knew anyway but it isn't documented... I have just > made Gambas convert encoded Turkish (iso-8859-9), Korean (EUC-KR), > Simplified Chinese (GB2312), Arabic (windows-1256), Cyrillic (koi8-r) > and Japanese (iso-2022-jp) into human-readable UTF-8. > > For example: > From: ^[$B=iJbE*$J;v$G$9$,!V%a!<%k!W$K$D$$^[(B > To: ???????????????? > > From: ?????????????????????????? > To: ???????????????????? > > Suggested addition to web page: > Gambas can convert, amongst many other encodings, Turkish > (ISO-8859-9), Korean (EUC-KR), Simplified Chinese (GB2312), Arabic > (WINDOWS-1256), Cyrillic (KOI8-R) and Japanese (ISO-2022-JP) into > human-readable UTF-8 text. For a full list of supported international > text conversions visit http://www.gnu.org/software/libiconv > > OR > > Gambas can convert, amongst many other encodings, Turkish > (iso-8859-9), Korean (EUC-KR), Simplified Chinese (GB2312), Arabic > (windows-1256), Cyrillic (koi8-r) and Japanese (iso-2022-jp) into > human-readable UTF-8. For a full list of supported international text > conversions type iconv -l in a command line. > > Are you ok with that? > Yes: the encoding are directly passed to the iconv function, so your guesses are right. Regards, -- Beno?t Minisini From nospam.nospam.nospam at ...176... Wed Jan 20 13:10:53 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Wed, 20 Jan 2010 23:10:53 +1100 Subject: [Gambas-devel] Yet another PING > Benoit Message-ID: No response required to this part: The code below compiles fine, and it runs, however it experiences odd behaviour: For nZ = 0 To aName.Count - 1 Letter = Mid(aSplitPhrase[iSplitPhrasePtr], 1, 1) If LCase(Letter) = LCase(Mid(aName[nZ], 1, 1)) Then aSplitPhrase[iSplitPhrasePtr] = ReplaceFirstOccurence(aSplitPhrase[iSplitPhrasePtr], Letter, "/" & Letter & "/") OutputText &= aSplitPhrase[iSplitPhrasePtr] & mConst.$crlf If iSplitPhrasePtr < aSplitPhrase.Count - 1 Then ' Don't point past end iSplitPhrasePtr += 1 End If ^^^^^^^^^^^ Else If Trim(aName[nZ]) = mConst.$empty Then OutputText &= Trim(aName[nZ]) & mConst.$crlf Else OutputText &= "/" OutputText &= Trim(aName[nZ]) OutputText &= "/" & mConst.$crlf End If ^^^^^^^^^^^ End If ^^^^^^^^^^^ Next At first glance, to the untrained eye, all looks well. However the code has been copied from .NET 2008, pasted into gb3 and modified to run under gb3. Neither the editor nor the compiler recognises "End If" as an error. In addition, "End Function" also causes other issues, which I won't go into right now, even though the code compiles and runs, though there are visibly verifiable problems in the IDE as a result. The issue of "End" followed by some unknown statement is a big problem for translation projects because it causes unnecessary debugging, and despite my respect for you and the team regarding the work done to date, the help text simply sucks and is not any help at all. The wider issue is that gb's failure to reject obvious errors reflects more on gb than it does on the programmer's knowledge of the language. I would like a response to this, if you see fit: My opinion is that, whilst I should be aware of these problems, gb should still reject anything following the End statement that is not expected. "If" and "Function" being two examples. Comments also not requiring a response: Of course, despite fixing the above, I still haven't found what is causing the problem I'm trying to solve. I merely realised the above as a problem while trying to sort out another problem :) From david_villalobos_c at ...7... Wed Jan 20 15:01:00 2010 From: david_villalobos_c at ...7... (David Villalobos Cambronero) Date: Wed, 20 Jan 2010 06:01:00 -0800 (PST) Subject: [Gambas-devel] Error compiling last rev Message-ID: <203157.85774.qm@...588...> I got this error compiling last rev, Mandriva 2010.0 32 Bits KDE make[3]: se ingresa al directorio `/home/david/Gambas3/main' Making all in gbc make[4]: se ingresa al directorio `/home/david/Gambas3/main/gbc' /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DGAMBAS_PATH="\"/usr/local/bin\"" -pipe -Wall -Wno-unused-value -fsigned-char -fnested-functions -fvisibility=hidden -g -O3 -I../share -MT libgbcopt_la-gb_table.lo -MD -MP -MF .deps/libgbcopt_la-gb_table.Tpo -c -o libgbcopt_la-gb_table.lo `test -f 'gb_table.c' || echo './'`gb_table.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DGAMBAS_PATH=\"/usr/local/bin\" -pipe -Wall -Wno-unused-value -fsigned-char -fnested-functions -fvisibility=hidden -g -O3 -I../share -MT libgbcopt_la-gb_table.lo -MD -MP -MF .deps/libgbcopt_la-gb_table.Tpo -c gb_table.c -fPIC -DPIC -o .libs/libgbcopt_la-gb_table.o cc1: error: no se reconoce la opci?n de l?nea de comando "-fnested-functions" make[4]: *** [libgbcopt_la-gb_table.lo] Error 1 make[4]: se sale del directorio `/home/david/Gambas3/main/gbc' make[3]: *** [all-recursive] Error 1 make[3]: se sale del directorio `/home/david/Gambas3/main' make[2]: *** [all] Error 2 make[2]: se sale del directorio `/home/david/Gambas3/main' make[1]: *** [all-recursive] Error 1 make[1]: se sale del directorio `/home/david/Gambas3' make: *** [all] Error 2 Regards -- David From gambas at ...1... Wed Jan 20 15:08:49 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Wed, 20 Jan 2010 15:08:49 +0100 Subject: [Gambas-devel] Error compiling last rev In-Reply-To: <203157.85774.qm@...588...> References: <203157.85774.qm@...588...> Message-ID: <201001201508.49955.gambas@...1...> > I got this error compiling last rev, Mandriva 2010.0 32 Bits KDE > > make[3]: se ingresa al directorio `/home/david/Gambas3/main' > Making all in gbc > make[4]: se ingresa al directorio `/home/david/Gambas3/main/gbc' > /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. > -DGAMBAS_PATH="\"/usr/local/bin\"" -pipe -Wall -Wno-unused-value > -fsigned-char -fnested-functions -fvisibility=hidden -g -O3 -I../share > -MT libgbcopt_la-gb_table.lo -MD -MP -MF .deps/libgbcopt_la-gb_table.Tpo > -c -o libgbcopt_la-gb_table.lo `test -f 'gb_table.c' || echo > './'`gb_table.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. > -DGAMBAS_PATH=\"/usr/local/bin\" -pipe -Wall -Wno-unused-value > -fsigned-char -fnested-functions -fvisibility=hidden -g -O3 -I../share -MT > libgbcopt_la-gb_table.lo -MD -MP -MF .deps/libgbcopt_la-gb_table.Tpo -c > gb_table.c -fPIC -DPIC -o .libs/libgbcopt_la-gb_table.o cc1: error: no se > reconoce la opci?n de l?nea de comando "-fnested-functions" make[4]: *** > [libgbcopt_la-gb_table.lo] Error 1 > make[4]: se sale del directorio `/home/david/Gambas3/main/gbc' > make[3]: *** [all-recursive] Error 1 > make[3]: se sale del directorio `/home/david/Gambas3/main' > make[2]: *** [all] Error 2 > make[2]: se sale del directorio `/home/david/Gambas3/main' > make[1]: *** [all-recursive] Error 1 > make[1]: se sale del directorio `/home/david/Gambas3' > make: *** [all] Error 2 > > > > Regards > > > -- > David > > Fixed in revision #2621! -- Beno?t Minisini From david_villalobos_c at ...7... Fri Jan 22 18:28:12 2010 From: david_villalobos_c at ...7... (David Villalobos Cambronero) Date: Fri, 22 Jan 2010 09:28:12 -0800 (PST) Subject: [Gambas-devel] Don't open, Just a TRY Message-ID: <31624.64334.qm@...587...> Saludos -- David From gambas at ...1... Sun Jan 24 18:12:56 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sun, 24 Jan 2010 18:12:56 +0100 Subject: [Gambas-devel] Yet another PING > Benoit In-Reply-To: References: Message-ID: <201001241812.56354.gambas@...1...> > No response required to this part: > > The code below compiles fine, and it runs, however it experiences odd > behaviour: > > For nZ = 0 To aName.Count - 1 > Letter = Mid(aSplitPhrase[iSplitPhrasePtr], 1, 1) > If LCase(Letter) = LCase(Mid(aName[nZ], 1, 1)) Then > aSplitPhrase[iSplitPhrasePtr] = > ReplaceFirstOccurence(aSplitPhrase[iSplitPhrasePtr], Letter, "/" & > Letter & "/") > OutputText &= aSplitPhrase[iSplitPhrasePtr] & mConst.$crlf > If iSplitPhrasePtr < aSplitPhrase.Count - 1 Then > ' Don't point past end > iSplitPhrasePtr += 1 > End If > ^^^^^^^^^^^ > Else > If Trim(aName[nZ]) = mConst.$empty Then > OutputText &= Trim(aName[nZ]) & mConst.$crlf > Else > OutputText &= "/" > OutputText &= Trim(aName[nZ]) > OutputText &= "/" & mConst.$crlf > End If > ^^^^^^^^^^^ > End If > ^^^^^^^^^^^ > Next > > At first glance, to the untrained eye, all looks well. However the > code has been copied from .NET 2008, pasted into gb3 and modified to > run under gb3. > > Neither the editor nor the compiler recognises "End If" as an error. "End If" is an alternate syntax for "Endif" in Gambas. > > In addition, "End Function" also causes other issues, which I won't go > into right now, even though the code compiles and runs, though there > are visibly verifiable problems in the IDE as a result. > > The issue of "End" followed by some unknown statement is a big problem > for translation projects because it causes unnecessary debugging, and > despite my respect for you and the team regarding the work done to > date, the help text simply sucks and is not any help at all. The wider > issue is that gb's failure to reject obvious errors reflects more on > gb than it does on the programmer's knowledge of the language. > I don't understand the problem at all. > I would like a response to this, if you see fit: > > My opinion is that, whilst I should be aware of these problems, gb > should still reject anything following the End statement that is not > expected. "If" and "Function" being two examples. Actually I did that for make porting VB code easier! "End If" is allowed instead of "Endif". "End Function" is allowed instead of "End" only if the "Function" keyword was used to declare the function. "End Sub" is allowed instead of "End" only if the "Sub" or "Procedure" keyword was used to declare the function. > > Comments also not requiring a response: > > Of course, despite fixing the above, I still haven't found what is > causing the problem I'm trying to solve. I merely realised the above > as a problem while trying to sort out another problem :) > Maybe you should tell what the odd behaviour is exactly. But "End If" is clearly not the problem. Regards, -- Beno?t Minisini From gambas at ...1... Sun Jan 24 18:17:45 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sun, 24 Jan 2010 18:17:45 +0100 Subject: [Gambas-devel] gb3 help text obscuring important information In-Reply-To: References: <6324a42a1001081128p4b8747a2je854c49f88e7c1d1@...178...> Message-ID: <201001241817.45977.gambas@...1...> > 2010/1/9 Fabien Bodard : > > 2010/1/8 Kadaitcha Man : > >> 2010/1/8 Fabien Bodard : > >>> 2010/1/8 Kadaitcha Man : > >>>> The attached image shows how gb3 IDE popup text obscures important > >>>> information provided by another gb3 IDE popup item. > >>>> > >>>> Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is > >>>> off and all available help text options are off. The problem is even > >>>> worse when "Display property help" is turned on. > >>>> > >>>> Both sets of information are important but one obscures the other. Any > >>>> suggestions? > > > > i've tested both in gnome and kde, with and without help and with and > > without compiz.. and i see nothing like that ... > > Urgh. Ok, ta. > > > Maybe Benoit on mandriva can be more lucky :/ > No. The completion popup is always shown on top of the signature popup whatever I tried. Do you have the completion popup hidden all the time? Or sometimes? -- Beno?t Minisini From nospam.nospam.nospam at ...176... Mon Jan 25 09:39:27 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Mon, 25 Jan 2010 19:39:27 +1100 Subject: [Gambas-devel] gb3 help text obscuring important information In-Reply-To: <201001241817.45977.gambas@...1...> References: <6324a42a1001081128p4b8747a2je854c49f88e7c1d1@...178...> <201001241817.45977.gambas@...1...> Message-ID: 2010/1/25 Beno?t Minisini : >> 2010/1/9 Fabien Bodard : >> > 2010/1/8 Kadaitcha Man : >> >> 2010/1/8 Fabien Bodard : >> >>> 2010/1/8 Kadaitcha Man : >> >>>> The attached image shows how gb3 IDE popup text obscures important >> >>>> information provided by another gb3 IDE popup item. >> >>>> >> >>>> Environment is Linux UE 2.5 with qt4 correctly configured. Compiz is >> >>>> off and all available help text options are off. The problem is even >> >>>> worse when "Display property help" is turned on. >> >>>> >> >>>> Both sets of information are important but one obscures the other. Any >> >>>> suggestions? >> > >> > i've tested both in gnome and kde, with and without help and with and >> > without compiz.. and i see nothing like that ... >> >> Urgh. Ok, ta. >> >> > Maybe Benoit on mandriva can be more lucky :/ >> > > No. The completion popup is always shown on top of the signature popup > whatever I tried. > > Do you have the completion popup hidden all the time? Or sometimes? It appeared to be all the time, but I just found an instance where it is correctly displayed I have this line, for example: EpochTime = Replace(EpochTime, mConst.$lf, mConst.$empty) Now, if I backspace m and e from "Replace(EpochTime", sometimes I get what is shown in snapshot1.png, and sometimes I get what is shown in snapshot2.png. It isn't predictable. The popup for the variable named EpochTime is obscured by the signature popup in snapshot2.png. This seems to happen more often than not, even if I use the exact same steps whenever I test it. When I get the variable popup obscured by the signature, as in snapshot2, if I then backspace the f in "Replace(EpochTime, mConst.$lf", it displays as shown in snapshot3, however it appears to be inconsistent. As I said, if I repeat the same steps I don't always get the same result. If I click on another line in the editor to change the insertion point then go back to backspace the f in "Replace(EpochTime, mConst.$lf" then I get what is shown in snapshot4. -------------- next part -------------- A non-text attachment was scrubbed... Name: snapshot1.png Type: image/png Size: 18350 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: snapshot2.png Type: image/png Size: 17663 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: snapshot3.png Type: image/png Size: 37973 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: snapshot4.png Type: image/png Size: 40912 bytes Desc: not available URL: From nospam.nospam.nospam at ...176... Mon Jan 25 09:54:05 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Mon, 25 Jan 2010 19:54:05 +1100 Subject: [Gambas-devel] Yet another PING > Benoit In-Reply-To: <201001241812.56354.gambas@...1...> References: <201001241812.56354.gambas@...1...> Message-ID: 2010/1/25 Beno?t Minisini : > Maybe you should tell what the odd behaviour is exactly. But "End If" is > clearly not the problem. Forget End If for now, the real problem is End Function. I don't use gb2 and don't have it installed, so I can't test gb2, but in gb3, End Function causes function and method names to disappear from the dropdown list in the editor toolbar. Image attached. When Function is added at 1), the method at 2) disappears at 3). -------------- next part -------------- A non-text attachment was scrubbed... Name: snapshot1.png Type: image/png Size: 115494 bytes Desc: not available URL: From gambas at ...1... Mon Jan 25 13:00:11 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Mon, 25 Jan 2010 13:00:11 +0100 Subject: [Gambas-devel] Yet another PING > Benoit In-Reply-To: References: <201001241812.56354.gambas@...1...> Message-ID: <201001251300.11614.gambas@...1...> > 2010/1/25 Beno?t Minisini : > > Maybe you should tell what the odd behaviour is exactly. But "End If" is > > clearly not the problem. > > Forget End If for now, the real problem is End Function. > > I don't use gb2 and don't have it installed, so I can't test gb2, but > in gb3, End Function causes function and method names to disappear > from the dropdown list in the editor toolbar. > > Image attached. > > When Function is added at 1), the method at 2) disappears at 3). > Mmm... I can't reproduce this behaviour. Can you send me the class or form file that shows the bug? -- Beno?t Minisini From nospam.nospam.nospam at ...176... Tue Jan 26 02:28:23 2010 From: nospam.nospam.nospam at ...176... (Kadaitcha Man) Date: Tue, 26 Jan 2010 12:28:23 +1100 Subject: [Gambas-devel] Yet another PING > Benoit In-Reply-To: <201001251300.11614.gambas@...1...> References: <201001241812.56354.gambas@...1...> <201001251300.11614.gambas@...1...> Message-ID: 2010/1/25 Beno?t Minisini : > Mmm... I can't reproduce this behaviour. Can you send me the class or form > file that shows the bug? I have sent some non-functioning code and another screen snapshot to gambas at ...647... Regards, From matteo.lisi at ...648... Wed Jan 27 09:31:12 2010 From: matteo.lisi at ...648... (Matteo Lisi) Date: Wed, 27 Jan 2010 09:31:12 +0100 Subject: [Gambas-devel] How to develop gambas components Message-ID: <4B5FF9D0.304@...648...> Hi ! My name is Matteo and it's first time taht I posto on gambas-devel mailing list. I'm writing because I need to develop a Gambas component in C/C++. I found an old documentation about components development on the web, but I think that it's not good ... Thanks From gambas at ...1... Wed Jan 27 10:40:35 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Wed, 27 Jan 2010 10:40:35 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <4B5FF9D0.304@...648...> References: <4B5FF9D0.304@...648...> Message-ID: <201001271040.35732.gambas@...1...> > > Hi ! > > > > My name is Matteo and it's first time taht I posto on gambas-devel mailing > > list. > > > > I'm writing because I need to develop a Gambas component in C/C++. > > > > I found an old documentation about components development on the web, but > > I think that it's not good ... > > > > Thanks > > > > I'll try to explain my project: > > > > I have an Arm 9 system, and I have to run gambas interpreter > > on in. This Arm 9 exchange data across the SPI with a > > Microchip PIC. > > > > Whereas we want to develop and debug the Arm application > > from a PC, we thought to exchange data from PC to Arm and > > viceversa through UDP socket. When we debug on the PC the > > gambas application, we use the gambas IDE, and when we want > > to read or write data to PIC WE use a UDP socket to send > > data to ARM 9. > > > > But when we execute the gambas program on ARM system we read > > or write data to PIC through the SPI. > > > > My components , used without graphic interface, have to > > export the same interface to Pc and Arm but, if compiled for > > PC the link channel has to be UDP socket, while if compiled > > for Arm have to use the SPI interface. > > > > On the arm system there will be a task that export an UDP > > Server and take the data arrived from SPI. > > > > I hope that I explained well ! > > > > If I have my low level function , both UDP and SPI , how I > > can insert my C++ class on the gambas enviroment ? > > > > thanks a lot for all your reply ! > > > > Apparently you have very specific needs. > > But I think what you really need is a way to have the IDE on one computer, > and the debugged program on another computer. Then you won't have to > adapt the way to send data to the PIC. Am I wrong? > As said on the user mailing-list, finally, you don't really need a component, but a way to debug on the ARM from the PC. To debug a program, the IDE run your project in debugging mode. A text debugger embedded into the interpreter is run, and it communicated with the IDE through two named pipes. If the IDE could run the project directly on ARM, it would be a matter or replacing the two named pipes by one socket to get the same result. So now I have two problems: 1) How to run a program on another computer from the IDE? I suggest using ssh. 2) How to communicate? The debugged program should create a socket on a specific port, and the IDE should be able to use it automatically. I think a TCP socket is needed. What do you think? -- Beno?t Minisini From matteo.lisi at ...648... Wed Jan 27 11:32:14 2010 From: matteo.lisi at ...648... (Matteo Lisi) Date: Wed, 27 Jan 2010 11:32:14 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <201001271040.35732.gambas@...1...> References: <4B5FF9D0.304@...648...> <201001271040.35732.gambas@...1...> Message-ID: <4B60162E.8070008@...648...> An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: EngicamLogo.gif Type: image/gif Size: 5625 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: MDAP.gif Type: image/gif Size: 4268 bytes Desc: not available URL: From gambas at ...1... Thu Jan 28 12:47:51 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Thu, 28 Jan 2010 12:47:51 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <4B60162E.8070008@...648...> References: <4B5FF9D0.304@...648...> <201001271040.35732.gambas@...1...> <4B60162E.8070008@...648...> Message-ID: <201001281247.51191.gambas@...1...> > >So now I have two problems: > > > >1) How to run a program on another computer from the IDE? I suggest using > > ssh. > > > >2) How to communicate? The debugged program should create a socket on a > >specific port, and the IDE should be able to use it automatically. I think > > a TCP socket is needed. > > > >What do you think? > > for the number 2: > Ok the TCP socket is a good Idea. I can develop an application on ARM > System that accept TCP connection ad reroute the debuuger command on the > debugger fifo (if i remember well) and viceversa. Same think on the PC > side. > > The IDE use the same FIFO , couple of process redirect the fifo on TCP > socket from PC to arm and viceversa. > > for the number 1: > yes the SSH it's a good solution , or we can use the ARM task that open an > UDP socket and start/stop the process. > > What do you think ? > I'd like to integrate this feature directly in the IDE, so: - If you can tell me exactly how you will do that, it would be cool! - I prefer using ssh to run the process, not to be specific. The debugged process on ARM needs five channels of communication with the IDE: - Its standard input, redirected so that the IDE can send data to it. - Its standard output, redirected so that the IDE gets it. - Its standard error output, redirected so that the IDE gets it. - The debugger fifo #1, used by the IDE to control the process. - The debugger fifo #2, used by the process to send the result of debugger commands to the IDE. By using ssh, I think that standard i/o will be automatically redirected, the standard output and standard error output being mixed. Then the IDE would have to create one socket to replace the two fifos, and give the debugged process which IP and which port number to use. But you will have to configure in the IDE which port to use to debug. Do you see another way that would not require any configuration from the IDE? -- Beno?t Minisini From matteo.lisi at ...648... Thu Jan 28 14:03:39 2010 From: matteo.lisi at ...648... (Matteo Lisi) Date: Thu, 28 Jan 2010 14:03:39 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <201001281247.51191.gambas@...1...> References: <4B5FF9D0.304@...648...> <201001271040.35732.gambas@...1...> <4B60162E.8070008@...648...> <201001281247.51191.gambas@...1...> Message-ID: <4B618B2B.5070202@...648...> An HTML attachment was scrubbed... URL: From gambas at ...1... Thu Jan 28 23:51:16 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Thu, 28 Jan 2010 23:51:16 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <4B618B2B.5070202@...648...> References: <4B5FF9D0.304@...648...> <201001281247.51191.gambas@...1...> <4B618B2B.5070202@...648...> Message-ID: <201001282351.16728.gambas@...1...> > No , I think that the IP address must the insert from IDE.. > > But We can create two task , that "transparently" , link the fifos on the > systems. > > On the debbugger target the first task will be a server, instead on the > IDE system the task will be a client. > > I can call from IDE this task with the IP address like arguments, while on > the target I can run the task via ssh. > > What do you think about this solution ? > > Regards ! > I don't see why creating intermediate processes just for redirecting data, if they are not really needed. Most of the debugger features (the IDE part and the debugged process part) are included in the gb.debug component. Adding socket management to this component, or writing an external process for that is almost the same job. I just find keeping it inside the gb.debug component far more simpler. Do you want to add socket feature to the gb.debug component? I will give all the needed information of course. -- Beno?t Minisini From matteo.lisi at ...648... Fri Jan 29 10:10:55 2010 From: matteo.lisi at ...648... (Matteo Lisi) Date: Fri, 29 Jan 2010 10:10:55 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <201001282351.16728.gambas@...1...> References: <4B5FF9D0.304@...648...> <201001281247.51191.gambas@...1...> <4B618B2B.5070202@...648...> <201001282351.16728.gambas@...1...> Message-ID: <4B62A61F.6060804@...648...> An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: EngicamLogo.gif Type: image/gif Size: 5625 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: MDAP.gif Type: image/gif Size: 4268 bytes Desc: not available URL: From gambas at ...1... Sat Jan 30 16:42:20 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sat, 30 Jan 2010 16:42:20 +0100 Subject: [Gambas-devel] How to develop gambas components In-Reply-To: <4B62A61F.6060804@...648...> References: <4B5FF9D0.304@...648...> <201001282351.16728.gambas@...1...> <4B62A61F.6060804@...648...> Message-ID: <201001301642.20778.gambas@...1...> > >I don't see why creating intermediate processes just for redirecting data, > > if they are not really needed. > > You are right ! > I confess: I thought the fastest solution for my problem ;) > > Ok I will add the socket management on the gb.debug components, please > give me all the information about it ! > > I need also the information about how to develop my SPI gambas components. > > Thank Beno?t > Let's go, but please can you stop using HTML mails when posting to the mailing-list? -- Beno?t Minisini From gambas at ...1... Sat Jan 30 16:52:32 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sat, 30 Jan 2010 16:52:32 +0100 Subject: [Gambas-devel] Enhancing the gb.debug component Message-ID: <201001301652.32226.gambas@...1...> Hi, Matteo. This is for you, but I want that all the discussion stays on the mailing-list, for other people interested in. The gb.debug component sources are located in the /main/lib/debug directory of Gambas sources. main.c --> Component initialization and component classes declaration. debug.c --> The internal debugger, run by the interpreter when the "-g" option is passed to it. print.c --> Debugger functions to print values of expressions, variables... CDebug.c --> The Debug class, used by the IDE for driving a debugged process. Fifo that communicate with the debugged process are created there. gb.debug.h --> Declaration of the API provided by the interpreter to the gb.debug component, and the API provided by the gb.debug component to the interpreter. Please look into the source code first, and ask me questions. This way, I will be able to understand what your C skills are, which will help me to guide you more easily. Regards, -- Beno?t Minisini From dima.malkov.russia at ...176... Sun Jan 31 11:53:02 2010 From: dima.malkov.russia at ...176... (Dima Malkov) Date: Sun, 31 Jan 2010 20:53:02 +1000 Subject: [Gambas-devel] Developing components with C++ for C++libraries Message-ID: <1f13ba8b1001310253p2cf2fe66g767612d9f1be946e@...178...> There is some library, written with C++. I want to use its power with Gambas. It's a static library. So, using the documentation for Gambas, I have made an empty component. I used gb.mysql component as template, because it consists of only 1 pair of header and source files. I included the header of my library. While compiling there were mistakes, because gcc tried to compile namespaces, etc. I resolved this problem. All compilled well. Then while including component in Gambas-project there was an error #162. I added empty function GB_INIT() in <<>>. That is all I can do with the documentation. But I don't know, what is the next step must be done. Regards, Dima Malkov. From gambas.fr at ...176... Sun Jan 31 12:28:06 2010 From: gambas.fr at ...176... (Fabien Bodard) Date: Sun, 31 Jan 2010 12:28:06 +0100 Subject: [Gambas-devel] an esthetic purpose Message-ID: <6324a42a1001310328l2dbafb4fv8b492a16488bf6af@...178...> why not set the background and the forground of the project treeview, the hierarchy windows, the property windows, the console with the ide theme background and normal line colors ? From gambas at ...1... Sun Jan 31 20:11:50 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sun, 31 Jan 2010 20:11:50 +0100 Subject: [Gambas-devel] Developing components with C++ for C++libraries In-Reply-To: <1f13ba8b1001310253p2cf2fe66g767612d9f1be946e@...178...> References: <1f13ba8b1001310253p2cf2fe66g767612d9f1be946e@...178...> Message-ID: <201001312011.50357.gambas@...1...> > There is some library, written with C++. I want to use its power with > Gambas. > It's a static library. > > So, using the documentation for Gambas, I have made an empty component. > I used gb.mysql component as template, because it consists of only 1 > pair of header and source files. > I included the header of my library. While compiling there were > mistakes, because gcc tried to compile namespaces, etc. I resolved > this problem. All compilled well. Then while including component in > Gambas-project there was an error #162. I added empty function > GB_INIT() in <<>>. That is all I can do with the > documentation. > > But I don't know, what is the next step must be done. > > Regards, > Dima Malkov. > gb.db.mysql is not a good starting point, as it is not a component that declares classes, but that acts a "driver" for the gb.db component. Moreover, it a C component, not a C++ one. I suggest starting from gb.pdf, which is a C++ component using a C++ shared library, with only a few classes. Please look at it, and come back to tell me what you understood about class declaration. And can you tell me which library you want to access, and give me more details about what your needs are? Because some interpreter special features may be needed or not, and your component could be part of Gambas. Regards, -- Beno?t Minisini From gambas at ...1... Sun Jan 31 20:17:04 2010 From: gambas at ...1... (=?utf-8?q?Beno=C3=AEt_Minisini?=) Date: Sun, 31 Jan 2010 20:17:04 +0100 Subject: [Gambas-devel] Developing components with C++ for C++libraries In-Reply-To: <201001312011.50357.gambas@...1...> References: <1f13ba8b1001310253p2cf2fe66g767612d9f1be946e@...178...> <201001312011.50357.gambas@...1...> Message-ID: <201001312017.04046.gambas@...1...> > > gb.db.mysql is not a good starting point, as it is not a component that > declares classes, but that acts a "driver" for the gb.db component. > Moreover, it a C component, not a C++ one. ... that acts as a "driver" for the gb.db component. Moreover it is a C component, not a C++ one. Mmm... apparently I'm a bit tired! -- Beno?t Minisini