Note: I originally reported this in the tracking system at http://pulseaudio.org/ticket. But it does no longer seem active, and the bug is still there, so I repeat the report here.
In src/utils/pacat.c, in the function stream_state_callback, there is this code:
pa_log(_("Connected to device %s (%u, %ssuspended)."),
pa_stream_is_suspended(s) ? "" : "not ");
The word "not" is not available for translation here. And building messages from pieces in this way often breaks translations. I'm sure there are some language where the word "suspended" should have different forms depending on whether it is negated or not.
I would suggest to make two complete messages instead, and select the entire message based on the return value of pa_stream_is_suspended().
An addition/alternative was suggested by "mkbosmans" in my original report:
If someone is going over the source code and review for translation difficulties, then please also look at pa_yes_no in pulsecore/core-util.c. Those little two strings should be translated also.
Perhaps that's even a possible solution here:
pa_log(_("Connected to device %s (%u, suspended: %s)."),
Thanks for the report, and sorry for ignoring the original report.
(In reply to comment #0)
> pa_log(_("Connected to device %s (%u, suspended: %s)."),
I implemented this suggestion. Fixes committed:
The strings "yes" and "no" are not extracted from src/pulsecore/core-util.h to pulseaudio.pot, and therefore will not be translatable.
I use the following command sequence to generate pulseaudio.pot:
Also, there is a similar problem (word puzzle) with "not" here in src/utils/pacat.c, line 410:
pa_log(_("Stream moved to device %s (%u, %ssuspended).%s"), pa_stream_get_device_name(s), pa_stream_get_device_index(s), pa_stream_is_suspended(s) ? "" : _("not "), CLEAR_LINE);
On word puzzles in general: http://techbase.kde.org/Development/Tutorials/Localization/i18n_Mistakes#Pitfall_.232:_Word_Puzzles
Alexander, let us keep one issue per report. The problem originally reported here is fixed. The additional problems you mention are likely not being noticed because of that. I suggest you create a separate report for them, most likely they will have a better chance of being handled that way.