mirror of
https://github.com/arduino/Arduino.git
synced 2025-01-17 06:52:18 +01:00
Command line --get-pref may be used without name of the target pref.
If pref name is missing, all prefs are printed on stdout. Should fix/mitigate #2982
This commit is contained in:
parent
a48906e0c2
commit
935becec64
@ -90,7 +90,7 @@ public class SplashScreenHelper {
|
||||
}
|
||||
|
||||
private void printText(String str) {
|
||||
System.out.println(str);
|
||||
System.err.println(str);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -477,13 +477,7 @@ public class Base {
|
||||
// Do nothing (intended for only changing preferences)
|
||||
System.exit(0);
|
||||
} else if (parser.isGetPrefMode()) {
|
||||
String value = PreferencesData.get(parser.getGetPref(), null);
|
||||
if (value != null) {
|
||||
System.out.println(value);
|
||||
System.exit(0);
|
||||
} else {
|
||||
System.exit(4);
|
||||
}
|
||||
BaseNoGui.dumpPrefs(parser);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -570,6 +570,12 @@ public class BaseNoGui {
|
||||
System.exit(0);
|
||||
}
|
||||
else if (parser.isGetPrefMode()) {
|
||||
dumpPrefs(parser);
|
||||
}
|
||||
}
|
||||
|
||||
protected static void dumpPrefs(CommandlineParser parser) {
|
||||
if (parser.getGetPref() != null) {
|
||||
String value = PreferencesData.get(parser.getGetPref(), null);
|
||||
if (value != null) {
|
||||
System.out.println(value);
|
||||
@ -577,6 +583,13 @@ public class BaseNoGui {
|
||||
} else {
|
||||
System.exit(4);
|
||||
}
|
||||
} else {
|
||||
System.out.println("#PREFDUMP#");
|
||||
PreferencesMap prefs = PreferencesData.getMap();
|
||||
for (Map.Entry<String, String> entry : prefs.entrySet()) {
|
||||
System.out.println(entry.getKey() + "=" + entry.getValue());
|
||||
}
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -58,7 +58,7 @@ public class LegacyTargetBoard implements TargetBoard {
|
||||
String board = containerPlatform.getId() + "_" + id;
|
||||
board = board.toUpperCase();
|
||||
prefs.put("build.board", board);
|
||||
System.out
|
||||
System.err
|
||||
.println(format(_("Board {0}:{1}:{2} doesn''t define a ''build.board'' preference. Auto-set to: {3}"),
|
||||
containerPlatform.getContainerPackage().getId(),
|
||||
containerPlatform.getId(), id, board));
|
||||
|
@ -51,7 +51,7 @@ public class LegacyTargetPackage implements TargetPackage {
|
||||
TargetPlatform platform = new LegacyTargetPlatform(arch, subFolder, this);
|
||||
platforms.put(arch, platform);
|
||||
} catch (TargetPlatformException e) {
|
||||
System.out.println(e.getMessage());
|
||||
System.err.println(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -73,10 +73,9 @@ public class CommandlineParser {
|
||||
}
|
||||
if (a == ACTION.GET_PREF) {
|
||||
i++;
|
||||
if (i >= args.length) {
|
||||
BaseNoGui.showError(null, I18n.format(_("Argument required for {0}"), a.value), 3);
|
||||
if (i < args.length) {
|
||||
getPref = args[i];
|
||||
}
|
||||
getPref = args[i];
|
||||
}
|
||||
if (a == ACTION.INSTALL_BOARD) {
|
||||
i++;
|
||||
|
@ -27,7 +27,7 @@ SYNOPSIS
|
||||
|
||||
*arduino* [*--verify*|*--upload*] [*--board* __package__:__arch__:__board__[:__parameters__]] [*--port* __portname__] [*--pref* __name__=__value__] [*-v*|*--verbose*] [--preserve-temp-files] [__FILE.ino__]
|
||||
|
||||
*arduino* [*--get-pref* __preference__]
|
||||
*arduino* [*--get-pref* [__preference__]]
|
||||
|
||||
*arduino* [*--install-boards* __package name__:__platform architecture__[:__version__]]
|
||||
|
||||
@ -63,10 +63,11 @@ ACTIONS
|
||||
*--upload*::
|
||||
Build and upload the sketch.
|
||||
|
||||
*--get-pref* __preference__::
|
||||
*--get-pref* [__preference__]::
|
||||
Prints the value of the given preference to the standard output
|
||||
stream. When the value does not exist, nothing is printed and
|
||||
the exit status is set (see EXIT STATUS below).
|
||||
If no preference is given as parameter, it prints all preferences.
|
||||
|
||||
*--install-boards* __package name__:__platform architecture__[:__version__]::
|
||||
Fetches available board support (platform) list and install the specified one, along with its related tools. If __version__ is omitted, the latest is installed. If a platform with the same version is already installed, nothing is installed and program exits with exit code 1. If a platform with a different version is already installed, it's replaced.
|
||||
|
Loading…
x
Reference in New Issue
Block a user