Filenames with spaces; output beside the input file; warning fixes (from dev c08eb1bbfa4c)

- Filenames may contain spaces: quote on the command line; filename
  lists use a standalone "/" separator; unseparated names that do not
  exist are rejoined into names that do (announced); leading ~ expands.
- Without -o, output is written to the input file's directory; -o fully
  specifies the output directory and basename.
- "Word not parsed" warnings now appear without -v, only for text that
  survives removal, with correct line numbers.
- New tst/filename_test.sh regression suite.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-26 23:22:59 +02:00
parent d9c98ac86d
commit fd9a370af7
21 changed files with 430 additions and 34 deletions

View File

@@ -87,6 +87,11 @@ public:
input_sources_t m_sources {};
std::string m_result {};
std::vector<Katom> m_katoms {};
// False on the sub-Machine that re-reads an @eval result (Eval::eval):
// result text is machine-generated -- a renderer's raw target markup
// (e.g. a LaTeX column spec "@{}...") legitimately fails katom parsing
// and must not produce "Word not parsed" warnings.
bool m_warn_unparsed = true;
};
/*