/* * Take a list of commands and return all possible syntaxes for these * commands */ private List<String> getSyntaxes(List<String> commands) { if (commands == null) { return null; } ArrayList<String> syntaxes = new ArrayList<String>(); for (String cmd : commands) { String cmdInt = app.getInternalCommand(cmd); Localization loc = app.getLocalization(); String syntaxString; if (component.isForCAS()) { syntaxString = app.getLocalization().getCommandSyntaxCAS(cmdInt); } else { syntaxString = app.getExam() == null ? loc.getCommandSyntax(cmdInt) : app.getExam().getSyntax(cmdInt, loc, app.getSettings()); } if (syntaxString != null) { if (syntaxString.endsWith( component.isForCAS() ? Localization.syntaxCAS : Localization.syntaxStr)) { // command not found, check for macros Macro macro = component.isForCAS() ? null : app.getKernel().getMacro(cmd); if (macro != null) { syntaxes.add(macro.toString()); } else { // syntaxes.add(cmdInt + "[]"); Log.debug("Can't find syntax for: " + cmd); } continue; } for (String syntax : syntaxString.split("\\n")) { syntaxes.add(syntax); } } } return syntaxes; }