Skip to content

Trouble with some shells like csh #3916

Closed
@PaulWessel

Description

@PaulWessel

It seems that some shells like tcsh and csh will attempt to replace our inset/subset unknown projection width (e.g. -JM?) with a filename via UNIX wildcard expansion, as in this failure . However, unlike bash, zsh, if there is no match then csh will foolishly remove the question mark and GMT fails (as if all text on a commandline is a filename). Users can be told to turn off globbing or escape the question mark with a backslash, but neither are great options.

Looking at my code in gmt_init_module, it should be possible to simply leave off the unknown width without the ? place holder. This is because we have these situations only:

  1. Geographic projection. They all end with the scale or width so we know where to append the actual width
  2. Cartesian -JXwidth or -JXwidth/height. We know if a slash that the height is right after the slash and the width is right after the X.
  3. Polar cylindrical. The scale or width is the first item after -Jp|P, so if that letter is a modifier or NULL then we know where to put it

If we can get away with no specification, then ? can remain a backwards compatible way to do this (and it works fine for sensible shells), but we could move on and simply update the docs accordingly once we find this works.

Metadata

Metadata

Assignees

No one assigned

    Labels

    longtermLong standing issues that need to be resolved

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions