Skip to content

Commit 324b973

Browse files
committed
Simplify the error message handling
1 parent 657f053 commit 324b973

File tree

1 file changed

+11
-18
lines changed

1 file changed

+11
-18
lines changed

pygmt/alias.py

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ def _value(self) -> str | list[str] | None:
200200

201201
class AliasSystem:
202202
"""
203-
Alias system for converting long-form PyGMT parameters to GMT short-form options.
203+
Alias system for mapping PyGMT's long-form parameters to GMT's short-form options.
204204
205205
This class is initialized with keyword arguments, where each key is a GMT option
206206
flag, and the corresponding value is an ``Alias`` object or a list of ``Alias``
@@ -281,37 +281,30 @@ def update(self, kwargs: Mapping[str, Any]):
281281
# Long-form parameters exist.
282282
if aliases := self.aliasdict.get(short_param):
283283
if not isinstance(aliases, Sequence): # Single Alias object.
284-
_params = repr(aliases.name)
285-
_msg_long_params = f"Use long-form parameter {_params} instead."
284+
_msg_long = f"Use long-form parameter {aliases.name!r} instead."
286285
else: # Sequence of Alias objects.
287-
_params = ", ".join(
288-
[repr(alias.name) for alias in aliases if not alias.prefix]
289-
)
290-
_modifiers = ", ".join(
291-
[
292-
repr(alias.name) + f" ({alias.prefix})"
293-
for alias in aliases
294-
if alias.prefix
295-
]
296-
)
297-
_msg_long_params = (
298-
f"Use long-form parameters {_params}, "
299-
f"with optional parameters {_modifiers} instead."
286+
_params = [f"{v.name!r}" for v in aliases if not v.prefix]
287+
_modifiers = [
288+
f"{v.name!r} ({v.prefix})" for v in aliases if v.prefix
289+
]
290+
_msg_long = (
291+
f"Use long-form parameters {', '.join(_params)}, "
292+
f"with optional parameters {', '.join(_modifiers)} instead."
300293
)
301294

302295
# Long-form parameters are already specified.
303296
if short_param in self.kwdict:
304297
msg = (
305298
f"Short-form parameter {short_param!r} conflicts with "
306299
"long-form parameters and is not recommended. "
307-
f"{_msg_long_params}"
300+
f"{_msg_long}"
308301
)
309302
raise GMTInvalidInput(msg)
310303

311304
# Long-form parameters are not specified.
312305
msg = (
313306
f"Short-form parameter {short_param!r} is not recommended. "
314-
f"{_msg_long_params}"
307+
f"{_msg_long}"
315308
)
316309
warnings.warn(msg, category=SyntaxWarning, stacklevel=2)
317310

0 commit comments

Comments
 (0)