cedet-semantic Mailing List for CEDET (Page 2)
Brought to you by:
zappo
You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(6) |
Oct
(5) |
Nov
(2) |
Dec
(44) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(15) |
Feb
(15) |
Mar
(6) |
Apr
|
May
(1) |
Jun
(14) |
Jul
(7) |
Aug
(5) |
Sep
(11) |
Oct
|
Nov
(11) |
Dec
(18) |
2003 |
Jan
(36) |
Feb
(21) |
Mar
(36) |
Apr
(17) |
May
(48) |
Jun
(8) |
Jul
(6) |
Aug
(10) |
Sep
(14) |
Oct
(12) |
Nov
(43) |
Dec
(61) |
2004 |
Jan
(40) |
Feb
(69) |
Mar
(44) |
Apr
(57) |
May
(48) |
Jun
(36) |
Jul
(45) |
Aug
(29) |
Sep
(11) |
Oct
(28) |
Nov
(19) |
Dec
(23) |
2005 |
Jan
(55) |
Feb
(37) |
Mar
(24) |
Apr
(17) |
May
(10) |
Jun
|
Jul
(19) |
Aug
(7) |
Sep
(19) |
Oct
(21) |
Nov
(13) |
Dec
(12) |
2006 |
Jan
(21) |
Feb
(15) |
Mar
(51) |
Apr
(5) |
May
(6) |
Jun
(25) |
Jul
(11) |
Aug
(13) |
Sep
(16) |
Oct
(16) |
Nov
(1) |
Dec
(1) |
2007 |
Jan
|
Feb
|
Mar
(10) |
Apr
(6) |
May
(28) |
Jun
(37) |
Jul
(19) |
Aug
(21) |
Sep
(25) |
Oct
(8) |
Nov
(4) |
Dec
(9) |
2008 |
Jan
(9) |
Feb
(40) |
Mar
(49) |
Apr
(28) |
May
(83) |
Jun
(17) |
Jul
(20) |
Aug
(12) |
Sep
(22) |
Oct
(29) |
Nov
(41) |
Dec
(67) |
2009 |
Jan
(12) |
Feb
(46) |
Mar
(67) |
Apr
(12) |
May
(25) |
Jun
(61) |
Jul
(44) |
Aug
(43) |
Sep
(35) |
Oct
(22) |
Nov
(27) |
Dec
(21) |
2010 |
Jan
(26) |
Feb
(24) |
Mar
(30) |
Apr
(23) |
May
(55) |
Jun
(21) |
Jul
(12) |
Aug
(28) |
Sep
(60) |
Oct
(38) |
Nov
(16) |
Dec
(10) |
2011 |
Jan
(15) |
Feb
(23) |
Mar
(9) |
Apr
(9) |
May
|
Jun
(21) |
Jul
(32) |
Aug
(45) |
Sep
(38) |
Oct
(28) |
Nov
(14) |
Dec
(4) |
2012 |
Jan
(8) |
Feb
(22) |
Mar
(17) |
Apr
(13) |
May
(7) |
Jun
(21) |
Jul
(18) |
Aug
(7) |
Sep
(46) |
Oct
(94) |
Nov
(17) |
Dec
(12) |
2013 |
Jan
(33) |
Feb
(30) |
Mar
(62) |
Apr
(64) |
May
(15) |
Jun
(22) |
Jul
(22) |
Aug
(8) |
Sep
(7) |
Oct
(15) |
Nov
(17) |
Dec
(11) |
2014 |
Jan
(1) |
Feb
(5) |
Mar
(5) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
(18) |
Oct
(24) |
Nov
(22) |
Dec
(23) |
2015 |
Jan
(11) |
Feb
(29) |
Mar
(7) |
Apr
(8) |
May
|
Jun
(1) |
Jul
(1) |
Aug
(24) |
Sep
(2) |
Oct
(19) |
Nov
(13) |
Dec
(8) |
2016 |
Jan
(2) |
Feb
(22) |
Mar
(12) |
Apr
(6) |
May
(1) |
Jun
(1) |
Jul
|
Aug
(6) |
Sep
(14) |
Oct
(7) |
Nov
(1) |
Dec
|
2017 |
Jan
(9) |
Feb
(2) |
Mar
(1) |
Apr
(6) |
May
(12) |
Jun
(1) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
(6) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(6) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(4) |
Aug
|
Sep
|
Oct
(3) |
Nov
(19) |
Dec
(4) |
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(8) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Anand T. <ata...@gm...> - 2019-11-18 02:58:00
|
Hi Ian, Good news- I started with emacs branch as base and then added required code/ files from semantic branch. So the final patch should be easier to merge with emacs. That said, we are still lacking several key features like support for enum, refactoring etc. But must highlight that semantic has the right framework for adding such support. Regards, Anand On Sat, Nov 16, 2019, 22:32 ian martins <ia...@jh...> wrote: > Hi Anand, that looks great. I'd be happy to test you patch, although based > on Eric's response maybe the patch will have to be recreated against the > version of semantic in emacs and submitted there. > > Eric, I only discovered semantic recently. I found it while looking for > context-aware autocomplete. I can't use it yet because I would use it for > java and currently semantic requires imports for all class dependencies, > even classes in the same package. I think this is the issue Anand is fixing. > > On Thu, Nov 14, 2019 at 7:37 AM Eric Ludlam <er...@si...> wrote: > >> >> On 11/14/19 12:46 AM, Anand Tamariya wrote: >> > Hi, >> > I've been able to get Java editing working using semantic. It would be >> > nice if it can be tested by more users before I submit a patch. >> > >> > Here's a demo of the features: >> > https://youtu.be/MWpvKSTz4qc >> > >> > Important: Use *M-x semantic-java-update-classpath* or *M-x >> > ede-customize-project* for setting/updating classpath. >> >> Hi Anand, >> >> Thanks for sharing the demo/video. It is a nice example of several of >> the features. I found it hard to read b/c the font was so small, and >> yuotube made it fuzzy when I enlarged it. I probably should have asked >> for higher resolution or something. >> >> Main development of these tools has moved over to Emacs. Cross merging >> between source-forge and emacs-devel became too difficult once eieio >> started changing. Recently I have been slowly sending patches of small >> chunks of what remains on SF to emacs-devel. >> >> I am also curious how many folks continue to use the tools. Are the >> lists quiet because everything works great (ha ha), or because getting >> changes in is difficult, or something else? >> >> Eric >> >> >> _______________________________________________ >> cedet-semantic mailing list >> ced...@li... >> https://lists.sourceforge.net/lists/listinfo/cedet-semantic >> >> |
From: ian m. <ia...@jh...> - 2019-11-16 17:02:57
|
Hi Anand, that looks great. I'd be happy to test you patch, although based on Eric's response maybe the patch will have to be recreated against the version of semantic in emacs and submitted there. Eric, I only discovered semantic recently. I found it while looking for context-aware autocomplete. I can't use it yet because I would use it for java and currently semantic requires imports for all class dependencies, even classes in the same package. I think this is the issue Anand is fixing. On Thu, Nov 14, 2019 at 7:37 AM Eric Ludlam <er...@si...> wrote: > > On 11/14/19 12:46 AM, Anand Tamariya wrote: > > Hi, > > I've been able to get Java editing working using semantic. It would be > > nice if it can be tested by more users before I submit a patch. > > > > Here's a demo of the features: > > https://youtu.be/MWpvKSTz4qc > > > > Important: Use *M-x semantic-java-update-classpath* or *M-x > > ede-customize-project* for setting/updating classpath. > > Hi Anand, > > Thanks for sharing the demo/video. It is a nice example of several of > the features. I found it hard to read b/c the font was so small, and > yuotube made it fuzzy when I enlarged it. I probably should have asked > for higher resolution or something. > > Main development of these tools has moved over to Emacs. Cross merging > between source-forge and emacs-devel became too difficult once eieio > started changing. Recently I have been slowly sending patches of small > chunks of what remains on SF to emacs-devel. > > I am also curious how many folks continue to use the tools. Are the > lists quiet because everything works great (ha ha), or because getting > changes in is difficult, or something else? > > Eric > > > _______________________________________________ > cedet-semantic mailing list > ced...@li... > https://lists.sourceforge.net/lists/listinfo/cedet-semantic > > |
From: Eric L. <er...@si...> - 2019-11-15 23:16:34
|
On 11/15/19 8:22 AM, Hector Lahoz wrote: > On Thu, 14 Nov 2019 at 12:36, Eric Ludlam <er...@si...> wrote: >> >> I am also curious how many folks continue to use the tools. Are the >> lists quiet because everything works great (ha ha), or because getting >> changes in is difficult, or something else? >> > > In my case I am a user but I think it's too complicated for me to help > in development. > Let's just make this list a little less quiet :-) I'm glad the tools are working out for you Hector. Indeed, the bar is high to contribute to Emacs projects for newcomers, as you have to learn emacs, then elisp, then whatever tool you want to help with, and finally, you need to satisfy the gnu copyright release thing. Sounds like an Emacs class is needed. :) Eric |
From: Hector L. <hec...@gm...> - 2019-11-15 12:22:58
|
On Thu, 14 Nov 2019 at 12:36, Eric Ludlam <er...@si...> wrote: > > I am also curious how many folks continue to use the tools. Are the > lists quiet because everything works great (ha ha), or because getting > changes in is difficult, or something else? > In my case I am a user but I think it's too complicated for me to help in development. Let's just make this list a little less quiet :-) |
From: Eric L. <er...@si...> - 2019-11-14 12:36:19
|
On 11/14/19 12:46 AM, Anand Tamariya wrote: > Hi, > I've been able to get Java editing working using semantic. It would be > nice if it can be tested by more users before I submit a patch. > > Here's a demo of the features: > https://youtu.be/MWpvKSTz4qc > > Important: Use *M-x semantic-java-update-classpath* or *M-x > ede-customize-project* for setting/updating classpath. Hi Anand, Thanks for sharing the demo/video. It is a nice example of several of the features. I found it hard to read b/c the font was so small, and yuotube made it fuzzy when I enlarged it. I probably should have asked for higher resolution or something. Main development of these tools has moved over to Emacs. Cross merging between source-forge and emacs-devel became too difficult once eieio started changing. Recently I have been slowly sending patches of small chunks of what remains on SF to emacs-devel. I am also curious how many folks continue to use the tools. Are the lists quiet because everything works great (ha ha), or because getting changes in is difficult, or something else? Eric |
From: Anand T. <ata...@gm...> - 2019-11-14 05:46:30
|
Hi, I've been able to get Java editing working using semantic. It would be nice if it can be tested by more users before I submit a patch. Here's a demo of the features: https://youtu.be/MWpvKSTz4qc Important: Use *M-x semantic-java-update-classpath* or *M-x ede-customize-project* for setting/updating classpath. Regards, Anand |
From: ian m. <ia...@jh...> - 2019-10-18 10:26:16
|
Eric, thanks for the quick response and thanks for the pointers. I'll see what I can do. On Mon, Oct 14, 2019 at 8:18 PM Eric Ludlam <er...@si...> wrote: > On 10/14/19 3:12 PM, ian martins wrote: > > Hello, > > > > I want to use semantic for completion in java, but it doesn't seem to > > find classes in the same package as the class being visited in the > > current buffer. > > > > For example, if I have the following package structure: > > > > mypackage/MyClassA > > /MyClassB > > > > and I open MyClassA in a buffer and try to auto complete the methods of > > an object of type MyClassB, semantic says > > "semantic-analyze-possible-completions-default: Cannot find types for > > `MyClassB classB'" > > > > I found that if I add an "import mypackage.MyClassB;" at the top of > > MyClassA, it'll work. But this shouldn't be necessary. Is this > intentional? > > > > I'm tested on > > emacs 24.5, semantic 2.2 and > > emacs 26.3, semantic 2.2. > > Hi Ian, > > I haven't been working on semantic in a few years, and I never did > serious java development myself, but maybe I can provide a couple pointers. > > The base 'java' support with semantic is pretty simple, as per you > discovering you need to be specific about what to import. Think of it > as assuming java acts like C. > > The semantic/db-javap.el support file had a range of semanticdb database > tables designed to wrap directories and jar files so you can look up > symbols. These were the wrappers that made semantic aware of some of the > java library structure. I don't recall the specifics, but reading > through it, it looks like it has the feature you want via > `semanticdb-table-java-directory' and some overrides for the symbol > analyzer. > > This can be found in cedet from sourceforge. I can't find the file in > the version of cedet included with Emacs. > > I'm going to assume you are using semantic that is built into emacs > since cedet from SF doesn't work well with newer versions of emacs due > to the conversion of eieio. > > It might be possible to pull that one file over along with a copy of > cedet-java.el and enable it. It might need changes based on the changes > to eieio. I don't really know why it was left out of emacs. > > If you get it working, I'd recommend sending it along to emacs > maintainers so it can be included. > > Eric > |
From: Eric L. <er...@si...> - 2019-10-15 00:18:12
|
On 10/14/19 3:12 PM, ian martins wrote: > Hello, > > I want to use semantic for completion in java, but it doesn't seem to > find classes in the same package as the class being visited in the > current buffer. > > For example, if I have the following package structure: > > mypackage/MyClassA > /MyClassB > > and I open MyClassA in a buffer and try to auto complete the methods of > an object of type MyClassB, semantic says > "semantic-analyze-possible-completions-default: Cannot find types for > `MyClassB classB'" > > I found that if I add an "import mypackage.MyClassB;" at the top of > MyClassA, it'll work. But this shouldn't be necessary. Is this intentional? > > I'm tested on > emacs 24.5, semantic 2.2 and > emacs 26.3, semantic 2.2. Hi Ian, I haven't been working on semantic in a few years, and I never did serious java development myself, but maybe I can provide a couple pointers. The base 'java' support with semantic is pretty simple, as per you discovering you need to be specific about what to import. Think of it as assuming java acts like C. The semantic/db-javap.el support file had a range of semanticdb database tables designed to wrap directories and jar files so you can look up symbols. These were the wrappers that made semantic aware of some of the java library structure. I don't recall the specifics, but reading through it, it looks like it has the feature you want via `semanticdb-table-java-directory' and some overrides for the symbol analyzer. This can be found in cedet from sourceforge. I can't find the file in the version of cedet included with Emacs. I'm going to assume you are using semantic that is built into emacs since cedet from SF doesn't work well with newer versions of emacs due to the conversion of eieio. It might be possible to pull that one file over along with a copy of cedet-java.el and enable it. It might need changes based on the changes to eieio. I don't really know why it was left out of emacs. If you get it working, I'd recommend sending it along to emacs maintainers so it can be included. Eric |
From: ian m. <ia...@jh...> - 2019-10-14 19:12:49
|
Hello, I want to use semantic for completion in java, but it doesn't seem to find classes in the same package as the class being visited in the current buffer. For example, if I have the following package structure: mypackage/MyClassA /MyClassB and I open MyClassA in a buffer and try to auto complete the methods of an object of type MyClassB, semantic says "semantic-analyze-possible-completions-default: Cannot find types for `MyClassB classB'" I found that if I add an "import mypackage.MyClassB;" at the top of MyClassA, it'll work. But this shouldn't be necessary. Is this intentional? I'm tested on emacs 24.5, semantic 2.2 and emacs 26.3, semantic 2.2. Thanks, Ian |
From: Eric L. <er...@si...> - 2019-07-09 23:22:11
|
Hi David, I poked around at this a little, and found the below patch should solve the issue. Unlike other languages supported by semantic, scheme can find a complete sexp, but when it opens it up, find no tag there-in. To counter this, the below patch creates an error tag to keep things running. This basically says that there is a lexically complete expression there but we can't do anything with it. I suppose this concept could be generally useful, but in this one-off case, it should at least let you keep using the tools. This patch is against CEDET on sourceforge, and will need to be bubbled up to core Emacs. I don't have commit permissions there. Thanks Eric diff --git a/lisp/cedet/semantic/bovine/scm.by b/lisp/cedet/semantic/bovine/scm.by index cde959f1..cb5acf45 100644 --- a/lisp/cedet/semantic/bovine/scm.by +++ b/lisp/cedet/semantic/bovine/scm.by @@ -67,6 +67,8 @@ scheme-in-list: DEFINE symbol expression (INCLUDE-TAG (file-name-nondirectory (read $2)) (read $2) ) | symbol sequence (CODE-TAG $1 nil) + | ;; No match, error + (TAG "Bad Tag in Sexp" 'error) ; name-args: semantic-list On 7/7/19 5:17 AM, David Palma wrote: > Hi Eric, > > Electric-pair mode doesn't affect the syntax table. I mentioned electric > pair mode because it triggers the bug by closing the parenthesis before > the S-expression is properly written, which semantic tries to parse. > This is my backtrace: > > Debugger entered: ((118 126)) > semantic--tag-expand((118 126)) > semantic-repeat-parse-whole-stream(((semantic-list 1 . 116) > (semantic-list 118 . 126)) nil nil) > semantic-parse-region-default(1 128 nil nil nil) > semantic-parse-region(1 128) > semantic-fetch-tags() > semantic-idle-scheduler-refresh-tags() > semantic-idle-core-handler() > semantic-idle-scheduler-function() > apply(semantic-idle-scheduler-function nil) > timer-event-handler([t 0 1 0 t semantic-idle-scheduler-function nil > idle 0]) > input-pending-p(t) > sit-for(0) > dframe-timer-fn() > apply(dframe-timer-fn nil) > timer-event-handler([t 0 1 0 t dframe-timer-fn nil idle 0]) > > > As an example, this is the file I used to test it: > > (define (accumulate op init seq) > (if (null? seq) > init > (op (car seq) (accumulate op init (cdr seq))))) > > (define) > > Regards, > David > > > On 7/7/19 1:27 AM, Eric Ludlam wrote: >> Hi David & others, >> >> I haven't been keeping up with CEDET stuff for a while and am not in a >> position to do debugging and patching anymore. >> >> In your case, it sounds like electric pair mode is messing with the >> syntax table which semantic depends on. Do you have a way to check >> what is going on with the syntax table? For any such change to the >> table, you can add a revert to the syntax table to what it should be >> w/out any changes in semantic/bovine/scm.el @ the end of the file. See >> 'semantic-lex-syntax-modifications'. For example, if you need to >> redefine some piece of syntax, just copy something from scheme.el's >> scheme-mode-syntax-table. >> >> To look at differences in syntax table, do C-h s before and after >> enabling the offending mode. >> >> >> Alternately, setup debug-on-quit, and hit Ctrl-g to see where things >> are hanging. That could reveal which underlying services semantic >> depends on which may have been overridden by the mode. We can then see >> what it takes to work around it. >> >> Hope this helps >> Eric >> >> On 7/2/19 4:14 AM, David Palma wrote: >>> This bug has already been reported here: >>> >>> https://sourceforge.net/p/cedet/mailman/message/36185774/ >>> >>> I couldn't apply the changes that David pointed out, nor do I know >>> wheter it is applicable to the current version of semantic. It >>> happens when electric pair mode is activated and the syntax inside >>> the matching parentheses is invalid. Unfortunately, this makes >>> semantic unusable for me and semantic has to be disabled. >>> >>> Best regards, >>> >>> >>> David >>> >>> >>> >>> _______________________________________________ >>> cedet-semantic mailing list >>> ced...@li... >>> https://lists.sourceforge.net/lists/listinfo/cedet-semantic >>> > |
From: David P. <dbp...@gm...> - 2019-07-07 09:17:49
|
Hi Eric, Electric-pair mode doesn't affect the syntax table. I mentioned electric pair mode because it triggers the bug by closing the parenthesis before the S-expression is properly written, which semantic tries to parse. This is my backtrace: Debugger entered: ((118 126)) semantic--tag-expand((118 126)) semantic-repeat-parse-whole-stream(((semantic-list 1 . 116) (semantic-list 118 . 126)) nil nil) semantic-parse-region-default(1 128 nil nil nil) semantic-parse-region(1 128) semantic-fetch-tags() semantic-idle-scheduler-refresh-tags() semantic-idle-core-handler() semantic-idle-scheduler-function() apply(semantic-idle-scheduler-function nil) timer-event-handler([t 0 1 0 t semantic-idle-scheduler-function nil idle 0]) input-pending-p(t) sit-for(0) dframe-timer-fn() apply(dframe-timer-fn nil) timer-event-handler([t 0 1 0 t dframe-timer-fn nil idle 0]) As an example, this is the file I used to test it: (define (accumulate op init seq) (if (null? seq) init (op (car seq) (accumulate op init (cdr seq))))) (define) Regards, David On 7/7/19 1:27 AM, Eric Ludlam wrote: > Hi David & others, > > I haven't been keeping up with CEDET stuff for a while and am not in a > position to do debugging and patching anymore. > > In your case, it sounds like electric pair mode is messing with the > syntax table which semantic depends on. Do you have a way to check > what is going on with the syntax table? For any such change to the > table, you can add a revert to the syntax table to what it should be > w/out any changes in semantic/bovine/scm.el @ the end of the file. > See 'semantic-lex-syntax-modifications'. For example, if you need to > redefine some piece of syntax, just copy something from scheme.el's > scheme-mode-syntax-table. > > To look at differences in syntax table, do C-h s before and after > enabling the offending mode. > > > Alternately, setup debug-on-quit, and hit Ctrl-g to see where things > are hanging. That could reveal which underlying services semantic > depends on which may have been overridden by the mode. We can then see > what it takes to work around it. > > Hope this helps > Eric > > On 7/2/19 4:14 AM, David Palma wrote: >> This bug has already been reported here: >> >> https://sourceforge.net/p/cedet/mailman/message/36185774/ >> >> I couldn't apply the changes that David pointed out, nor do I know >> wheter it is applicable to the current version of semantic. It >> happens when electric pair mode is activated and the syntax inside >> the matching parentheses is invalid. Unfortunately, this makes >> semantic unusable for me and semantic has to be disabled. >> >> Best regards, >> >> >> David >> >> >> >> _______________________________________________ >> cedet-semantic mailing list >> ced...@li... >> https://lists.sourceforge.net/lists/listinfo/cedet-semantic >> |
From: Eric L. <er...@si...> - 2019-07-07 00:27:14
|
Hi David & others, I haven't been keeping up with CEDET stuff for a while and am not in a position to do debugging and patching anymore. In your case, it sounds like electric pair mode is messing with the syntax table which semantic depends on. Do you have a way to check what is going on with the syntax table? For any such change to the table, you can add a revert to the syntax table to what it should be w/out any changes in semantic/bovine/scm.el @ the end of the file. See 'semantic-lex-syntax-modifications'. For example, if you need to redefine some piece of syntax, just copy something from scheme.el's scheme-mode-syntax-table. To look at differences in syntax table, do C-h s before and after enabling the offending mode. Alternately, setup debug-on-quit, and hit Ctrl-g to see where things are hanging. That could reveal which underlying services semantic depends on which may have been overridden by the mode. We can then see what it takes to work around it. Hope this helps Eric On 7/2/19 4:14 AM, David Palma wrote: > This bug has already been reported here: > > https://sourceforge.net/p/cedet/mailman/message/36185774/ > > I couldn't apply the changes that David pointed out, nor do I know > wheter it is applicable to the current version of semantic. It happens > when electric pair mode is activated and the syntax inside the matching > parentheses is invalid. Unfortunately, this makes semantic unusable for > me and semantic has to be disabled. > > Best regards, > > > David > > > > _______________________________________________ > cedet-semantic mailing list > ced...@li... > https://lists.sourceforge.net/lists/listinfo/cedet-semantic > |
From: David P. <dbp...@gm...> - 2019-07-02 08:14:47
|
This bug has already been reported here: https://sourceforge.net/p/cedet/mailman/message/36185774/ I couldn't apply the changes that David pointed out, nor do I know wheter it is applicable to the current version of semantic. It happens when electric pair mode is activated and the syntax inside the matching parentheses is invalid. Unfortunately, this makes semantic unusable for me and semantic has to be disabled. Best regards, David |
From: Noam P. <npo...@gm...> - 2018-07-10 13:43:01
|
On 10 July 2018 at 09:09, Andreas Marschke <and...@gm...> wrote: > Are there efforts to import the code from Sourceforge anew into the emacs > tree or is it intended to remain there as it pertains to features not > intended to be shipped with Emacs? There is a long-running/stalled effort towards this. https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23792 https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28878 |
From: Andreas M. <and...@gm...> - 2018-07-10 13:09:32
|
Hi all! In a quest to add some improvements to CEDET/Semantic I came across the fact of the splintered codebases people are potentially working on. We have the CEDET project on SourceForge with changes going beyond the initial import into emacs. And then there is the version shipped with Emacs. When comparing the code basis one of the most immediate things that struck me, was the availability of tests and that there was even rudimentary unit testing employed, This is not the case for the code in Emacs tree. Are there efforts to import the code from Sourceforge anew into the emacs tree or is it intended to remain there as it pertains to features not intended to be shipped with Emacs? If possible I'd like to use the existing unit-test infrastructure in the emacs tree to add validation to the changes that I'm making and since as I understand it, there's otherwise existing development effort still going into the code shipped with emacs I'd prefer to not double my efforts and have to make it shippable/maintainable in 2 places. Any and all explanations of the current situation would be very welcome. Kind regards, Andreas Marschke. |
From: <de...@bl...> - 2018-07-05 18:14:54
|
Hello, I have a few directory trees which together comprise source code for the majority of my system (kernel, userland, etc). I would like semantic to be aware of these sources, such that I can jump to tag definitions, implementations, etc, similar to the functionality that is available for Emacs Lisp. Note, that I want to be able to jump to *implementations* (source content) as well as definitions (header content). Note also that these are directory trees, with many nested folders. My understanding is that an omniscience database is appropriate to this task. After much digging around (on the web, this list, info manual, source code, etc), I have found various references and instructions, but have been unable to get anything working. It's all too scattered at this point to easily list what I've tried and what results that has yielded, so let's start simple, from scratch... What is the correct way to go about this? Should I be trying to use an omniscience database? How do I generate and use such a database? Let's assume for now that I'm working with C code, and that the directory tree is located at /usr/src/motif/git. If it matters, I'm using Emacs 24/25 with CEDET 2.0. -- Matthew R. Trower P.S. In case I'm *really* going into left field here, the original problem I was trying to solve was this: semantic understands about my system headers in /usr/include, but those are only definitions. I know of no easy way for me to jump to the corresponding implementation, even though the source is available elsewhere on my system... |
From: Eric L. <er...@si...> - 2018-07-05 11:21:13
|
Hi Andreas, This is a good reminder I should update the web site to direct folks more toward emacs-devel. I usually see folks posting code snippets and diffs right to the emacs-devel mailing list. I'm sure pointing to git branches is fine too. To contribute you also will need to do an assignment of those changes to the fsf unless they are very small. You can cc cedet-semantic with emacs-devel to keep both sets of readers up to date. Testing is a good question. The CEDET repository on sourceforge has a deep set of tests for parsing, command completion, etc. Most were never brought over into emacs. I'm not too familiar with what is over there anymore so maybe it is better now. Thanks Eric On 07/04/2018 10:31 PM, Andreas Marschke wrote: > Hi Eric! > > Thanks for the recommendation. I have looked at wisent/bison & bovine > under semantic and the tags code. > > If my understanding is correct, it is best to MR anything against the > emacs repository, correct? > > IIUIC 'CONTRIBUTING' does not address lisp changes explicitly but it > appears most development changes are supposed to be sent to emacs-devel > mailing list. Correct? > Was there any notes on how to best present them? Is referring to a > branch on github/gitlab and commit-id in the repository? Or attaching a > patch generated from that? > > I will also most likely have questions around wisent and how to write > the changes properly, those questions should also go to emacs-devel? > > How is semantic/cedet being tested? Purely by using it in Emacs? Would > it be beneficial to introduce unittests based in some form testing > semantic against files and tags at points? > > Thanks again, > > Andreas Marschke. > > > > On Sun, 1 Jul 2018 at 04:37, Eric Ludlam <er...@si... > <mailto:er...@si...>> wrote: > > Hi Andreas, > > It is certainly possible to make the CEDET/Semantic infrastructure do > what you are asking, but several pieces are missing. > > I don't believe that annotations are supported by the parser. I don't > know enough about annotations or Java to be sure, but a short test > on my > part indicates it isn't part of the method tag. Someone will need to > update semantic/wisent/java-tags.wy (and probably java.wy which is a > parallel full language parser) to add annotations. > > Once it is part of the parser, adding a keybinding, probably in the ede > java support to run the test would probably be pretty easy as long as > there is an EDE wrapper around whichever build system you are > using. If > there isn't a build system, you can probably create an EDE wrapper > based > on the existing java flavors like ede/maven2.el or the like. > > There is existing android ede support in the CEDET version on > sourceforge which I don't think made it into emacs proper. I've had a > hard time keeping up with it as Android dev has moved forward faster > than my occasional android development. That ede wrapper has a few > custom key bindings for build / upload that might make a reasonable > model for what you want to do. > > If possible, I would recommend you do your development against the > Emacs > build. The version in cedet/git has gotten stale since the eieio > update > in Emacs and I have no way to promote changes to there anymore. > > Thanks > Eric > > On 06/29/2018 09:02 AM, Andreas Marschke wrote: > > Hi everyone! > > > > I'm looking for a way to find java annotations on methods/classes > and > > detect them as attribute on methods found in a file. > > So for example, in a class like this: > > > > package com.example.app; > > > > public class Example > > { > > public Example() { /* ... */ } > > @Test > > public void exampleTest() { /* ... */ } > > > > @SuppressWarnings("static-access") > > public void exampleMethod() { /* ... */ } > > } > > > > In a class like the above, I'd love to have the ability to do > something > > like: > > (semantic-tags-java-get-annotations (semantic-current-tag)) > > ;; ("Test"), for `exampleTest()' > > (semantic-tags-java-get-annotations (semantic-current-tag)) > > ;; ("SuppressWarnings" . "static-access"), for `exampleMethod()' > > > > Is something like this possible with semantic? Is there another > > tool/library that I could use to get at the annotations? > > > > The goal is to do something akin to the way Android Studio for > example > > can kick off a test with only a single test selected. I know the > > commandline param to do it but would like to automate it down to > a key > > chord that would execute the test based on the test method my > pointer is in. > > > > Any suggestions tips or pointers would be appreciated. > > > > Kind regards, > > > > Andreas Marschke. > > > > > > > ------------------------------------------------------------------------------ > > Check out the vibrant tech community on one of the world's most > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > > > > > _______________________________________________ > > cedet-semantic mailing list > > ced...@li... > <mailto:ced...@li...> > > https://lists.sourceforge.net/lists/listinfo/cedet-semantic > > > > > > -- > Mit freundlichen Grüßen, > > Andreas Marschke. > _________________________________________________________ > Web: http://www.andreas-marschke.name > Blog: http://andreasmarschke.wordpress.com > Github: http://github.com/andreas-marschke |
From: Andreas M. <and...@gm...> - 2018-07-05 02:31:23
|
Hi Eric! Thanks for the recommendation. I have looked at wisent/bison & bovine under semantic and the tags code. If my understanding is correct, it is best to MR anything against the emacs repository, correct? IIUIC 'CONTRIBUTING' does not address lisp changes explicitly but it appears most development changes are supposed to be sent to emacs-devel mailing list. Correct? Was there any notes on how to best present them? Is referring to a branch on github/gitlab and commit-id in the repository? Or attaching a patch generated from that? I will also most likely have questions around wisent and how to write the changes properly, those questions should also go to emacs-devel? How is semantic/cedet being tested? Purely by using it in Emacs? Would it be beneficial to introduce unittests based in some form testing semantic against files and tags at points? Thanks again, Andreas Marschke. On Sun, 1 Jul 2018 at 04:37, Eric Ludlam <er...@si...> wrote: > Hi Andreas, > > It is certainly possible to make the CEDET/Semantic infrastructure do > what you are asking, but several pieces are missing. > > I don't believe that annotations are supported by the parser. I don't > know enough about annotations or Java to be sure, but a short test on my > part indicates it isn't part of the method tag. Someone will need to > update semantic/wisent/java-tags.wy (and probably java.wy which is a > parallel full language parser) to add annotations. > > Once it is part of the parser, adding a keybinding, probably in the ede > java support to run the test would probably be pretty easy as long as > there is an EDE wrapper around whichever build system you are using. If > there isn't a build system, you can probably create an EDE wrapper based > on the existing java flavors like ede/maven2.el or the like. > > There is existing android ede support in the CEDET version on > sourceforge which I don't think made it into emacs proper. I've had a > hard time keeping up with it as Android dev has moved forward faster > than my occasional android development. That ede wrapper has a few > custom key bindings for build / upload that might make a reasonable > model for what you want to do. > > If possible, I would recommend you do your development against the Emacs > build. The version in cedet/git has gotten stale since the eieio update > in Emacs and I have no way to promote changes to there anymore. > > Thanks > Eric > > On 06/29/2018 09:02 AM, Andreas Marschke wrote: > > Hi everyone! > > > > I'm looking for a way to find java annotations on methods/classes and > > detect them as attribute on methods found in a file. > > So for example, in a class like this: > > > > package com.example.app; > > > > public class Example > > { > > public Example() { /* ... */ } > > @Test > > public void exampleTest() { /* ... */ } > > > > @SuppressWarnings("static-access") > > public void exampleMethod() { /* ... */ } > > } > > > > In a class like the above, I'd love to have the ability to do something > > like: > > (semantic-tags-java-get-annotations (semantic-current-tag)) > > ;; ("Test"), for `exampleTest()' > > (semantic-tags-java-get-annotations (semantic-current-tag)) > > ;; ("SuppressWarnings" . "static-access"), for `exampleMethod()' > > > > Is something like this possible with semantic? Is there another > > tool/library that I could use to get at the annotations? > > > > The goal is to do something akin to the way Android Studio for example > > can kick off a test with only a single test selected. I know the > > commandline param to do it but would like to automate it down to a key > > chord that would execute the test based on the test method my pointer is > in. > > > > Any suggestions tips or pointers would be appreciated. > > > > Kind regards, > > > > Andreas Marschke. > > > > > > > ------------------------------------------------------------------------------ > > Check out the vibrant tech community on one of the world's most > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > > > > > _______________________________________________ > > cedet-semantic mailing list > > ced...@li... > > https://lists.sourceforge.net/lists/listinfo/cedet-semantic > > > -- Mit freundlichen Grüßen, Andreas Marschke. _________________________________________________________ Web: http://www.andreas-marschke.name Blog: http://andreasmarschke.wordpress.com Github: http://github.com/andreas-marschke |
From: Eric L. <er...@si...> - 2018-07-01 02:37:39
|
Hi Andreas, It is certainly possible to make the CEDET/Semantic infrastructure do what you are asking, but several pieces are missing. I don't believe that annotations are supported by the parser. I don't know enough about annotations or Java to be sure, but a short test on my part indicates it isn't part of the method tag. Someone will need to update semantic/wisent/java-tags.wy (and probably java.wy which is a parallel full language parser) to add annotations. Once it is part of the parser, adding a keybinding, probably in the ede java support to run the test would probably be pretty easy as long as there is an EDE wrapper around whichever build system you are using. If there isn't a build system, you can probably create an EDE wrapper based on the existing java flavors like ede/maven2.el or the like. There is existing android ede support in the CEDET version on sourceforge which I don't think made it into emacs proper. I've had a hard time keeping up with it as Android dev has moved forward faster than my occasional android development. That ede wrapper has a few custom key bindings for build / upload that might make a reasonable model for what you want to do. If possible, I would recommend you do your development against the Emacs build. The version in cedet/git has gotten stale since the eieio update in Emacs and I have no way to promote changes to there anymore. Thanks Eric On 06/29/2018 09:02 AM, Andreas Marschke wrote: > Hi everyone! > > I'm looking for a way to find java annotations on methods/classes and > detect them as attribute on methods found in a file. > So for example, in a class like this: > > package com.example.app; > > public class Example > { > public Example() { /* ... */ } > @Test > public void exampleTest() { /* ... */ } > > @SuppressWarnings("static-access") > public void exampleMethod() { /* ... */ } > } > > In a class like the above, I'd love to have the ability to do something > like: > (semantic-tags-java-get-annotations (semantic-current-tag)) > ;; ("Test"), for `exampleTest()' > (semantic-tags-java-get-annotations (semantic-current-tag)) > ;; ("SuppressWarnings" . "static-access"), for `exampleMethod()' > > Is something like this possible with semantic? Is there another > tool/library that I could use to get at the annotations? > > The goal is to do something akin to the way Android Studio for example > can kick off a test with only a single test selected. I know the > commandline param to do it but would like to automate it down to a key > chord that would execute the test based on the test method my pointer is in. > > Any suggestions tips or pointers would be appreciated. > > Kind regards, > > Andreas Marschke. > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > _______________________________________________ > cedet-semantic mailing list > ced...@li... > https://lists.sourceforge.net/lists/listinfo/cedet-semantic > |
From: Andreas M. <and...@gm...> - 2018-06-29 13:03:18
|
Hi everyone! I'm looking for a way to find java annotations on methods/classes and detect them as attribute on methods found in a file. So for example, in a class like this: package com.example.app; public class Example { public Example() { /* ... */ } @Test public void exampleTest() { /* ... */ } @SuppressWarnings("static-access") public void exampleMethod() { /* ... */ } } In a class like the above, I'd love to have the ability to do something like: (semantic-tags-java-get-annotations (semantic-current-tag)) ;; ("Test"), for `exampleTest()' (semantic-tags-java-get-annotations (semantic-current-tag)) ;; ("SuppressWarnings" . "static-access"), for `exampleMethod()' Is something like this possible with semantic? Is there another tool/library that I could use to get at the annotations? The goal is to do something akin to the way Android Studio for example can kick off a test with only a single test selected. I know the commandline param to do it but would like to automate it down to a key chord that would execute the test based on the test method my pointer is in. Any suggestions tips or pointers would be appreciated. Kind regards, Andreas Marschke. |
From: Jeff S. <sa...@gm...> - 2018-02-20 06:02:25
|
In the semantic manual on the GNU website ( https://www.gnu.org/software/emacs/manual/html_node/semantic/Create-System-Databases.html#Create-System-Databases), it claims that the database file created by semanticdb-create-ebrowse-database will be saved in the directory specified by semanticdb-default-system-save-directory. However, in Emacs 25.3, it saves the database in the directory specified by semanticdb-default-save-directory. The docstring in the Emacs code states this, so it's only the online documentation that is incorrect. I've looked at the source for 24.5 and it also uses semanticdb-default-save-directory. The same for the master branch in the emacs git tree, as well as the emacs-23 branch. It tripped me up a bit because I was planning on having the system databases generated in a separate directory from the regular databases (I use different Linux and BSD systems with the same Emacs config and often the same projects). Not a big deal, but correcting the docs might save the next guy a few minutes of confusion. Figured I'd let you know. |
From: Shiyao MA <i...@in...> - 2018-01-14 13:49:43
|
Hi Eric, Thanks for that. Best, |
From: Eric L. <er...@si...> - 2018-01-14 13:44:19
|
If this is in a project where there is a header that defines your set of defines used in your code, you can set 'semantic-lex-c-preprocessor-symbol-file' to that file. Then all the defines will be set. If you don't have that, you can just write one and stash it anywhere. Internally the semantic parser uses 'hideif', so if there is a way to do this in hideif, then it will probably translate to semantic, but I haven't fiddled with that. You could also rewrite semantic-c-hideif-defined to do something different. I recommend the symbol file, b/c it will be more explicit and easy to add things to. Eric On 01/12/2018 06:43 AM, Shiyao MA wrote: > Now I have a question: > > Is it possible to set all the symbol to a default value "" ? > > There are many #ifdef macros in the code, I'd like semantic assume all > the macros are defined. > > Best, > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > _______________________________________________ > cedet-semantic mailing list > ced...@li... > https://lists.sourceforge.net/lists/listinfo/cedet-semantic > |
From: Shiyao MA <i...@in...> - 2018-01-12 12:06:28
|
Now I have a question: Is it possible to set all the symbol to a default value "" ? There are many #ifdef macros in the code, I'd like semantic assume all the macros are defined. Best, |
From: Shiyao MA <i...@in...> - 2018-01-12 11:34:44
|
Hi, For example this file: wget https://raw.githubusercontent.com/torvalds/linux/master/include/linux/skbuff.h open emacs on this file, and enable semantic-mode, here is the result i get with (semantic-fetch-tags). https://gist.githubusercontent.com/introom/74e5205cf5f3cf21059a3768002abff2/raw/69cfeae1ee4dbff5bbefe2b90ff73a398a71fc18/gistfile1.txt It has some results, but lots, lots, are missing. For example, __skb_put_u8 Thanks. -- Best, Shiyao |