Autocomplete not working with Eclipse Oxygen Javascript project - eclipse

I'm using Eclipse Oxygen (4.7) with the Eclipse Web Tools Platform installed on Ubuntu 16.04.3. Auto-completion of variables and functions only works provided that the variable or function is local to the file that I'm currently working on. Auto-completion attempts using Ctrl-Space for variables and functions that are located outside the current file result in the dialog with No Default Proposals. Also, auto-completion for var/funcs within the current file are case sensitive, otherwise no proposals are displayed (a problem that I didn't have with previous versions of eclipse).
My project is a JS project and I am using the JS perspective. Under the Source files and folder in the global scope section of the Include Path of my project, the source tab shows Included: (All). Is there something else I need to do?
As a side note, I can't correctly configure the syntax highlighting for Javascript source files successfully. Certain things work fine, but others (like local variables) refuse to use the color that I've selected. Are these all bugs?
NOTE: I'm using the Darkest Dark eclipse theme. I don't know if that has any impact on auto-completion (but seems likely it would for syntax high-lighting).

I had the same problem in Eclipse Oxygen using Ubuntu 18.03, and I fixed it doing next:
Go to Window -> Preference -> Javascript -> Editor -> Content Assist -> Advanced and put the configuration like this one
After that I was able to autocomplete Javascript code.

Related

How to enable collapse/expand code blocks feature in eclipse

I'm using the following version of eclipse on windows 7 desktop. On my ColdFusion files opened in eclipse I don't see +/- symbols for collapsing/expanding blocks of code. On the tool bar I can't find any option for enabling this feature. I don't see an option for Java-->Editor... either. In Preferences section I see only the options shown in the attached image:
Eclipse IDE for Java Developers
Version: Mars Release (4.5.0)
Build id: 20150621-1200
UPDATE Using the help from #E-Riz I found the folding option in Preferences and enabled all the options there as shown in the updated image below. But still I'm not seeing +/- symbols in the code editor to collapse/expand the code blocks. I've tried closing and reopening eclipse, as well.
As you can see there are no +/- sings in the file below although the editor used is CFEclipse:
The feature is called folding. If you enter "folding" (without the quotes) in the Preferences search field, you'll find the places where it's configured.
I don't know if you have a plug-in specifically for editing ColdFusion files; if you do, it may or may not support folding. For example, CFEclipse has folding support, so if you open your files in that editor, you should see it.

How to configure nodeclipse for auto completion?

I have just installed this eclipse plugin. But I found it can neither show a list of functions when typing '.', nor use templates like 'if...else...'.
Read http://www.nodeclipse.org/ carefully
Features Creating default structure for New Node
Project and New Node Source File Generating Express project
with Wizard JavaScript Syntax highlighting Bracket
matching and marking selection occurences with background color
Content Assistant within one file Go to definition with
Ctrl+click when JSDoc is
used Refactoring within one file
(Alt+Shift+R) JSON files highlight and
validation NPM support Debugging - Breakpoint,
Trace, Variables, Expressions, etc... via Eclipse debugger plugin for
V8 Setting project properties for JSHint-Eclipse
automatically; JSHint
settings template
Passing arguments to Node application and Node.js,
specifying environment variables values to use Running
CoffeeScript *.coffee files Running *.js files with
PhantomJS, MongoDB Shell or Java 8 Nashorn jjs util
Bundled together with Markdown Editor, GitHub Flavored Markdown,
StartExplorer (for system explorer and shell), RegEx, Icon Editor,
MongoDB, RestClient Tool and other plugins (20+ in total, check
update site and Nodeclispe Plugin
List) Support for Eclipse Juno, Kepler, Luna M3
As of 0.7 completion work as standard JSDT functionality, that is
for objects defined in the same class,
for objects annotated with with JSDoc
If you want more, do it yourself with help from the other people.
I suggest you that you install tern.java which uses the powerful JavaScript inference engine tern.js. You have a node.js module which provides node.js completion. As Nodeclipse editor is based on JSDT, you can use it with tern.

Eclipse Indigo "Save Actions" are not being applied

I'm new to Eclipse and downloaded the following version:
Eclipse Java EE IDE for Web Developers.
Version: Indigo Release
Build id: 20110615-0604
[edit] Eclipse Platform Version 3.7
I have edited Java > Editor > Save Actions to do the following: Remove trailing white spaces on all lines, Correct indentation
When I save the .java file, those actions are not applied... is this a bug?
Found this that might be related: https://bugs.eclipse.org/bugs/show_bug.cgi?id=350475
Assuming that this relates to JavaScript files, then the related Eclipse bug could be helpful.
The problem (as I've just experienced) is that you can edit the JavaScript -> Save Actions preferences via the context menu when editing a JavaScript file, but the actions will not be run.
The solution is to right click on the project containing the .js file, and select Configure -> Convert to JavaScript project.
The bad news is that this will then will also enable Eclipse's not-so-great JavaScript validation, therefore telling you that libraries such as moment.min.js are broken.
Well for those of you who have found this topic... I did find 2 solutions, no thanks to Eclipse, other than the fact that it is open source and people can write plugins.
Eclipse Platform Version 3.7
AnyEdit - plugin that does it for you when you Save file (I believe this is what eclipse SHOULD be doing)
Go to: Window > Preferences. Then under General > Keys. Make sure drop down for Scheme: is Default and enter 'remove trailing' in the filter. You should then see "Remove Trailing Whitespace" under the command column. Bind it to your own key command.
The only drawback to #2 is that you have to actually press the key binding while editing the file, kindof like a cleanup action.
Too bad Eclipse hasn't taken the approach that ALL file types should be configurable in this way... sometimes I miss TextPad.
Old question, but at least for newer Eclipse versions there's a better solution: Go to the project properties, then to Project Facets. If it tells you that your project isn't in faceted form yet, then convert it. Afterwards (or if it already was faceted), just enable the JavaScript checkbox.
I had the same issue with Eclipse 4.4 (Luna) and this fixed it for me, the save actions are now executed on save.
Adding to jlh's answer, I also had to configure the JavaScript include path of the project to enable save actions. Before that even a manual "Clean Up ..." from the source menu wouldn't work.

Eclipse autocomplete not working in some Java files

I have noticed that autocomplete is not working in some of java files in Eclipse.
Also, the files where autocomplete is not working, display a hollow "J" as the icon for the Java file. The files where autocomplete is working, icon for java file is a filled "J"
I am wondering if someone can point out what went wrong all of suddent, why the change in icons and why autocomplete and syntax highlighting is turned-off in the files with a hollow "J" icon?
Thanks.
update
Basically, I was doing what VonC has suggested but Eclipse was not refreshing that it why I was thinking that VonC's suggestion isn't working, after doing a refresh, the problem resolved.
Since this question is highly ranked on Google, I will add a solution to fix general auto complete issue, not for 'hollow J' ones.
Try Window (Windows/Linux) or Eclipse (OS X) -> Preferences -> Java -> Editor -> Content Assist -> Restore Defaults
also
Content Assist -> Advanced -> Restore Defaults
some answers (restore defaults) above do not work for some adt bundle installs as of jan '13.
in those cases, go to
Window -> Preferences -> Java -> Editor -> Content Assist -> Advanced
and tick on the JAVA PROPOSAL options.
In this following picture, MyClass.java has a hollow J, because it is explicitly excluded from the sources to build:
Could you go to the properties of the project, "Java Build Path" Section, "Source" tab and see if some exclusion filter has been set ?
It is usual for instance to define:
**/Test*.java
to exclude at first building any unit-test class (when you have a large set of sources and do not want to be presented with Test classes during auto-completion, or do not want them considered during source searches).
Those with a hollow J aren't part of the build path of the project, so they can't participate in the normal build process and therefore auto-complete won't be enabled for these files (and other Java editor features!). You must add the folders with the Java files to be built to the build path using the 'source path' section of the project properties. This can be accessed by right clicking on a project in the project navigator / package explorer and going to Properties. See http://www.informit.com/articles/article.aspx?p=367962 for details.
Additionally, if the files aren't part of a Java project in the first place, you must create a project and move the files in, or put the files in an existing one. Again, make sure these file are under a source directory as described by that section of the project properties.
(source: teradata.com)
I cope with the issue by deleting the file if autocomplete does not work. Just before copying the source code. Then I have recreated the java file with the same name. Pasted the source code previously copied.
As an addendum to the #VonC answer, make sure that the Java files are part of the Inclusion pattern. I had a case where a build process was creating the project while only including .js files and not the Java files:
You can manually edit the inclusions via the Edit button. In my case, a fix was made to the build script to make it permanent.
Neither Restoring Defaults or my build path (file was already in package directory w/other files where auto-complete was working) fixed problem. Fix for me was to close the file explicitly (right click on file name in tab) and re-open. Interestingly, just re-starting Eclipse didn't work either.
Make sure you have the right directory structure. I believe that:
Hollow J icon beside Java file - will not be build
Normal J icon beside Java file - is a file to be build.
I made a mistake when I created webapp artefact. By default it does not create folder for Java, but for resources. I mistakenly put my sources there.
Have a look - see the difference.
I was able to get this fixed in Visual Studio Code, VSCode but entering crtl-shift-p and typing in clean. When I did that I ran the "Java: Clean Java Language Sever Workspace" command. This fixed my autocomplete issue for me.

Eclipse "go to definition" problem

I'm using PyDev for eclipse and am experiencing some issues with "go to definition". It works for most modules, but for some site packages it does not. It does the "bump" sound and then nothing happens. One of the packages that doesn't work is Twisted, which is weird since the source is included and right there. Any idea how to fix this?
The go to definition works just fine. The problem was that eclipse didn't know where to find the source. You can go to window > preferences > pydev > interpreter > New folder, and add the folders missing. Even though you've added site-packages to the configuration, you still have to add subfolders separately to get code assist and to be able to go to the definition.
Pydev (also bundle with the Aptana distro) does not seem to have any bug exactly similar to the one you are describing.
Here is the list of bugs including the word "definition" for PyDev: bugs
You could open a bug report there with the exact version of eclipse, pydev, java used
But first:
What version of Pydev are you using? The open-source one or the commercial one (i.e. open-source + Pydev extensions)?
Because the matrix feature is quite clear:
Feature List Pydev "Open Source" Pydev Extensions
---------------------------------------------------------------
Go to definition BRM* Pydev Extensions(2)
BRM*: Bicycle Repair Man is an open-source program that provides 'go-to-definition' and refactoring. Its 'go-to-definition' only works for Python, and only works 'well' for global or local tokens (does not work very well on methods from parameters or on 'self'). It is currently 'unsupported'.
Pydev Extensions (2): Pydev extensions provides a 'go-to-definition' that works for python and jython, and should work even on methods from parameters and 'self'.