I’m toying around with the trial version of NWP and stumbled upon a problem with cross-references:

No matter how I set the language of a paragraph, the directional above/below cross-references always appear in the form of the English words “above” and “below”. It’s obvious that this makes no sense (except for English texts of course).

Is there a way to properly set the localization of these variables? Maybe any settings I didn’t see? Or maybe via a macro?

As a workaround I can search/replace these words in the final phase of document creation, but this will also destroy the hyperlinks in the PDF output I guess.

Currently those cross-reference terms only change themselves based on the active application localization (ie: the language in effect for NWP's user-interface). That means you can only have one translation of "above" or "below" used across all open documents.

I'll file a feature request that this should be language dependent (ie: change the translation based on the language applied to the inserted cross-reference), and that the words used for each language should be customizable by the user in NWP's preferences.

martin wrote:I'll file a feature request that this should be language dependent (ie: change the translation based on the language applied to the inserted cross-reference), and that the words used for each language should be customizable by the user in NWP's preferences.

Hi Martin,

I’m back to Nisus, 4 years after my original post above, and this time I even purchased it

Thanks to the introduction of a proper hyphenation system with Nisus 2.0.3 in 2012 I now can use Nisus also for languages other than English. This is a good thing for a multilingual word processor, and the hyphenation seems to work really great

I completely forgot about the “above“ issue. When I stumbled upon my old thread here I was absolutely confident that this had been solved somewhere in the course of the last years, so my surprise was quite big when I learned that it hadn’t.

I literally didn’t want to believe that I still have to switch the interface language in order to prevent Nisus from placing English words into my German or French text, so … I searched for the location of these “above” constants, and I found them in the Localizable.strings file inside of the .lproj folders in the app bundle.

Heck, I’m sure you know that this file is meant for static interface elements of an app, but certainly not for document content stuff!

---

Apparently the issue is still on the very bottom of your todo list, if at all. But, by the way, even clumsy old Word gets this right! So you don’t want to tell me that your devs are not capable getting this done, too

Or maybe you are not completely aware how non-sensical the current implementation is?

An example:

[Skip this example if you already know the workflow.]

I regularly have to work with texts in German, French and English. Not even mixed languages in one document, just language versions of a text in separated documents. You see, nothing exotic.

My Nisus interface (as well as the whole OS) is set to English, that means I can work with these cross references in English document without any precautions. Fine.

However, before opening the French or German document – or at latest before producing a PDF – I have to switch Nisus’ interface to the corresponding language and relaunch. Crazy!

And even worse, I have to repeat this everytime I do a minor correction in one of the documents, since upon opening a document Nisus resets the “above” words according to the current interface language!

[End of example.]

OK, since I know about these mechanics I won’t use “above” words in cross references. But it gets dangerous if you are co-working with somebody who uses Nisus with a localized interface and thus isn’t aware of the pitfall. If I forget to double-check the files I receive from him, I run the risk of ending up with literal “above”s in the French PDF.

Sorry for the longish text, but this is such a blatant dysfunction that really should be taken care of.

---

Here’s a proposal how to implement it in a sensical (and pragmatic) way:

Take the “above” localizations out of Localizable.strings, obviously.

I’ve seen Nisus now has “Language Sensitive QuickFixes”. This is great. Take that opportunity to store special variables there with the abbreviations “__above”/“__below” and the language-specific translation as expansion text. This has the additional, huge advantage that it’s user-configurable! (See addendum below.)

Call that variable when an “above” cross reference is inserted.

Thanks for reading (and maybe considering),

Tom

PS: Don’t take this as a rant! I really fell in love with NWP 2.1.2, and that’s why this issue strikes me almost emotionally

---------------------------------------------

Addendum:

Your current German translation of above/below is ‘obenstehend’/‘untenstehend’. This is barely usable, since it’s an adjective that only works well in its inflected form and in an attributive role. The right translation is ‘oben’/‘unten’. This is basically a local adverb and can be used in a flexible way, as attribute or alone. (Word uses it too.)

I'm sorry this issue still stands. I can see how it would be quite problematic to work with documents of different languages considering the current behavior of the "above" and "below" automatic text. I'll see what can be done to expedite improving Nisus Writer's behavior.

axolotl wrote:I’m back to Nisus, 4 years after my original post above, and this time I even purchased it
...
I really fell in love with NWP 2.1.2, and that’s why this issue strikes me almost emotionally

Hopefully we get this issue resolved, to justify your purchase and restore your love!

Here’s a proposal how to implement it in a sensical (and pragmatic) way:
...
I’ve seen Nisus now has “Language Sensitive QuickFixes”. This is great. Take that opportunity to store special variables there with the abbreviations “__above”/“__below” and the language-specific translation as expansion text. This has the additional, huge advantage that it’s user-configurable!

I agree that it would be best if these bits of text were user customizable. But I think in the long-run that using that a magic QuickFix entry is not a great solution. It might be acceptable as a short-stop solution, but eventually there should be a proper interface that lets the user edit these two words, either in the Language preferences or the insert cross-reference dialog.

Thank you very much for your feedback! We do appreciate having this kind of discussion with our customers.

But I think in the long-run that using that a magic QuickFix entry is not a great solution. It might be acceptable as a short-stop solution, but eventually there should be a proper interface that lets the user edit these two words, either in the Language preferences or the insert cross-reference dialog.

This sounds great, yes. But this also sounds as if it could take another four years…

The main thing is to get the “above” words out of the app-language-specific Localizable.strings and into the text-language-specific .nlang files in …/Application Support/Nisus Writer Pro/Languages/ . That’s where they belong to, IMHO. This shouldn’t be complicated at all, no GUI additions necessary! Since the .nlang files are readable XML, the “above” words will already be (rawly) user-editable there, no matter if they are inside the typos dict or elsewhere in the .nlang file.

Then, in the version (or two versions) after next, add a nice GUI access in Language Preferences

We haven't yet added a preference to control the localizations of the "above" and "below" suffixes used in cross-references, but we just released Nisus Writer Pro 2.1.4 which improves the situation. Instead of always using the single language of the application itself, the cross-references are now sensitive to the text's applied language. I hope that's a helpful step forward for you.

Thanks for the good news. But it behaves exactly as it did before, it gives me an English “above” in a 100% German text. (And the strings are still in Nisus\ Writer\ Pro.app/Contents/Resources/de.lproj/Localizable.strings.)

axolotl wrote:Thanks for the good news. But it behaves exactly as it did before, it gives me an English “above” in a 100% German text.

Is your text marked as German? Languages in Nisus Writer work like other kinds of formatting, eg: just like you can have a document with multiple fonts applied, you can have a document with multiple languages applied. For more on this, see our FAQ on language.

If you have any questions, or still can't get the above/below suffix to respect your applied language, please let me know.

axolotl wrote:Is your text marked as German? Languages in Nisus Writer work like other kinds of formatting, eg: just like you can have a document with multiple fonts applied, you can have a document with multiple languages applied.

No I don’t have multiple languages applied, not to the bookmark not to the reference, not even in the whole text.