The Autocomplete Popup

Single character commands like “+” or “=” are the quickest way to build common expressions like Add and Equal, but are too limited to create all of the objects needed. To simplify the process of creating symbolic expressions, a pop-up window appears when you type the name of an object into an empty box. The window displays an alphabetized list of symbolic objects that begin with the letter or letters you have entered into the box. The available objects include all objects that are defined in the libraries currently being loaded and whose name matches the characters typed. This matching ignores the object namespace.

The autocomplete popup appears any time you type characters into an empty box as long as the first character is not numeric. The popup appears when the second character is typed to avoid being distracted by the pop-up when you type expressions like x + y + z. The autocomplete pop-up will also appear if you double-click on an object that is just a simple name or highlight that object and press Alt + A. The pop-up won’t appear if you double click on an object that is defined in one of the libraries.

To insert an object into the document from the autocomplete pop-up, double-click the object or press the Enter key, the Tab key, or the Spacebar. Use can use the Up Arrow, Down Arrow, Page Up, Page Down, Home and End keys to navigate the autocomplete list. Use the Escape key to close the pop-up window without changing the highlighted expression.

If you aren't sure what the name of the object is that you want to create, start by making a guess. In many cases, there is more than one name that will bring up an object in the autocomplete popup. For example, you may not remember that GTE is the name of the "greater than or equal" object, but if you just type "greater" into the empty box, the object you want will be included in the results (see the section on Autocomplete Objects to see how this is done).

Other examples of grouped objects include:
  • set - shows a list of objects used in set theory
  • calc - shows a list integral, derivative and limit objects
  • trig - shows a list of objects from trigonometry
  • greek - shows a list of all of the symbols in the Greek alphabet

If you don't find the object you want by guessing at the name, you can look in The Object Browser which provides multiple ways to search for objects included in the libraries.

For objects that include parameters, such as f[0], there is a button with a Down Arrow to the right of the object allows you to select the object with fewer parameters. To expand the list of options, click the Down Arrow to the right of the object in the pop-up or press the Alt + Down Arrow keystroke combination. As an example, you would select Simply rather than Simplify[expr] if you wanted to pass the Simplify function itself into an expression rather than Simplify acting on an expression.

The Show All button in the autocomplete popup

The autocomplete popup window normally only shows objects that can be type consistent when placed into the highlighted location in the current expression. For example, if the expression you are working on is "x + []", and the highlight is on the empty box, if you type "tru", the autocomplete popup won't show the "True" object because it's typed as Bool and that isn't consistent with the allowed types for the Add object.

The Show All button at the bottom of the autocomplete popup window allows you to see all of the objects that match the characters typed into the highlighted location even if the object isn't type consistent. When Show All is selected, the list of objects also include objects with the Autocomplete: Ignore property that are not normally shown in the autocomplete list.

With the autocomplete window showing, you can also use Alt + A keystroke to toggle between showing all objects and showing only type consistent objects.

NOTE:

If you create a new object definition, it typically won't show up in the autocomplete list until after you run the build. Until the build is run, the new object will still be treated as having an undefined type which can prevent it from being included in the autocomplete results unless you click the Show All button.