Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #20350

Re: multi-line Strings

From BGB <cr88192@hotmail.com>
Newsgroups comp.lang.java.programmer
Subject Re: multi-line Strings
Date 2012-12-15 02:56 -0600
Organization albasani.net
Message-ID <kahe48$5vk$1@news.albasani.net> (permalink)
References <7f36342c-2331-4484-874b-4a0f8953f160@googlegroups.com> <ka6lj0$mgp$1@news2.ipartners.pl> <50c74c8a$0$282$14726298@news.sunsite.dk> <ka876s$9ja$1@news.albasani.net> <kah1hp$678$1@dont-email.me>

Show all headers | View raw


On 12/14/2012 11:23 PM, Joshua Cranmer wrote:
> On 12/11/2012 3:02 PM, BGB wrote:
>> if the bulk of the string literals are things internal to the program
>> (rather than intended for an end user), then it makes little sense to
>> move them to external resources (IME, most string literals tend to be
>> program internal anyways, with human-readable messages few and far
>> between, and most of these in-turn being internal debugging messages).
>
> You must not work with large user-facing applications then. :-) My
> practice is very nearly the opposite--most string literals are either
> involved with debugging to log files, keys to preferences/other
> configuration, or keys to human readable messages. The latter two
> classes are things that tend to be grouped outside of the program itself
> for simple reasons of reducing management complexity (Clang even uses an
> external file for its command line arguments, kind of [1], despite not
> doing any localization of strings).
>

I am mostly working on 3D stuff... (mostly a game, but also some 3D 
tools, ...).

its "user facing" side is mostly the 3D renderer, sound mixing, and 
user-input handling (mouse, keyboard actions, keyboard shortcuts, ...).

text isn't really a big part of the normal experience, nor much 
information presented as natural-language text (there is a fair amount 
more in terms of variables and formatted numerical output, but this 
isn't really the same).


most of the code in the project, however, is internal infrastructural 
code, most not really having much direct user interaction.


basically, it is a project which is slightly over 1 Mloc (1 million 
lines of code). a few of the bigger chunks here are mostly stuff related 
to my scripting language, and also the 3D renderer. together, they make 
up a large percentage of the total codebase, followed roughly by the 
"server end" in 3rd place (the server-end is what holds most of the 
"gameplay logic", like physics code, weapons and items logic, enemy-AI 
logic / behaviors, and so on...).


currently, there is very little in terms of a GUI (traditional GUI 
elements are almost completely absent from the program).

there is an interactive console though, which mostly functions in a 
manner vaguely similar to the Linux shell interface though (type 
commands, see results). typically, commands are terse names, and don't 
usually generate much printed output. these commands are implemented 
in-program, and operate in terms of a program-local virtual-filesystem. 
where relevant, commands have similar names and behaviors to their Linux 
analogues (cd, ls, cat, pwd, ...). (there is little obvious reason 
though why anyone would want to change these though, like 'cd' or 'ls' 
should probably be fairly universal independent of language?...).

there is an in-program text-editor though, which provides an interface 
partway between MS-Edit and Vim (cosmetically, it looks a little more 
like MS-Edit, but handles user input in many ways a little more like 
Vim, with ALT-';' switching to the command-entry prompt, ...).

some parts of the engine are controlled by "cvars" though, which 
function in a manner vaguely similar to environment variables.


or, IOW, there is lots of stuff going on, and lots of stuff for the user 
to interact with, just relatively little where textual feedback is 
really called for (at least much beyond debug messages). (and, 
presumably, normal users/players shouldn't normally be messing around in 
the console anyways, apart from maybe to enter cheat-codes).


>> with user-readable strings, the program could still be developed under a
>> policy like "if you need the messages in a language you can read, either
>> learn English (or Japanese or Chinese or similar) or get a dictionary",
>> so making them external may not make much sense in this case.
>
> Even if you don't need to provide translated messages, there is benefit
> to centralizing program messages in external files. Ensuring consistency
> is one key benefit that I can think of.
>

could be, but it doesn't really tend to be a big use case.
most of what is printed, is usually an indication of where the message 
is being printed from (function/method names and similar), and a terse 
description of the event, and usually a few items giving the values of 
relevant arguments or variables.

given most of this isn't really intended for end users, it doesn't 
really make much sense for translation.

granted, a person could translate any voice-acted dialogue, which would 
probably be a bigger use-case for translation I think, but at the 
moment, there isn't a whole lot of this either (that is actually 
relevant to gameplay).


>> even with language-specific strings, unless using magic numbers, a
>> string may still be needed to refer to them.
>
> And a constant String is often used instead of copy-pasting the literal
> around.
>
> [1] The "kind of" is that this is turned into compiled code by a build
> step.
>

could be, depends on whether the literal is one-off, or used more than 
once...

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

multi-line Strings bob smith <bob@coolfone.comze.com> - 2012-12-10 08:22 -0800
  Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 11:43 -0500
    Re: multi-line Strings Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-12-10 09:36 -0800
    Re: multi-line Strings markspace <-@.> - 2012-12-10 09:42 -0800
      Re: multi-line Strings Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-12-10 09:51 -0800
        Re: multi-line Strings markspace <-@.> - 2012-12-10 10:27 -0800
          Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-10 13:43 -0500
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 15:08 -0500
              Re: multi-line Strings markspace <-@.> - 2012-12-10 13:05 -0800
              Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-10 16:22 -0500
                Re: multi-line Strings markspace <-@.> - 2012-12-10 13:36 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 16:52 -0500
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-10 18:04 -0500
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 00:17 +0000
                Re: multi-line Strings markspace <-@.> - 2012-12-10 17:35 -0800
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 01:56 +0000
                Re: multi-line Strings markspace <-@.> - 2012-12-10 18:00 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 21:16 -0500
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:21 +0000
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-10 22:12 -0600
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-11 05:01 -0400
                Re: multi-line Strings markspace <-@.> - 2012-12-11 09:46 -0800
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:26 +0000
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 16:25 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 21:10 -0500
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:31 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:30 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-15 03:35 -0600
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-15 11:54 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-15 08:53 -0500
                Re: multi-line Strings Jim Janney <jjanney@shell.xmission.com> - 2012-12-16 12:19 -0700
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 13:24 +0000
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-16 17:21 -0800
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 14:03 +0000
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-18 09:05 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-17 20:13 -0400
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 13:38 +0000
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-19 19:48 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 21:07 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-19 08:26 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 16:36 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-21 12:51 -0600
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-21 14:05 -0600
                Re: multi-line Strings "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-12-15 18:22 +0100
                Re: multi-line Strings Robert Klemme <shortcutter@googlemail.com> - 2012-12-16 00:34 +0100
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-16 02:56 -0600
                Re: multi-line Strings Robert Klemme <shortcutter@googlemail.com> - 2012-12-16 14:07 +0100
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-16 13:44 -0600
                Re: multi-line Strings "Peter J. Holzer" <hjp-usenet2@hjp.at> - 2012-12-16 17:43 +0100
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:37 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-10 22:03 -0600
                Re: multi-line Strings Joshua Cranmer <Pidgeot18@verizon.invalid> - 2012-12-11 10:43 -0600
                Re: multi-line Strings Martin Gregorie <martin@address-in-sig.invalid> - 2012-12-11 22:44 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-10 21:09 -0500
      Re: multi-line Strings Sebastian <sebastian@undisclosed.invalid> - 2012-12-12 10:40 +0100
        Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-12 20:28 -0500
    Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-10 13:42 -0600
  Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-11 07:58 +0100
    Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-11 10:08 -0500
      Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-11 09:41 -0600
      Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 15:02 -0600
        Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:27 -0500
        Re: multi-line Strings Joshua Cranmer <Pidgeot18@verizon.invalid> - 2012-12-14 23:23 -0600
          Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-15 02:56 -0600
    Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-11 16:31 -0500
      Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 17:07 -0600
        Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-11 15:31 -0800
          Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-11 19:41 -0600
      Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-13 07:43 +0100
        Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-12 23:09 -0800
        Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-13 06:34 -0400
          Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-14 07:35 +0100
            Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-14 02:44 -0600
              Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-14 11:48 +0100
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-14 05:10 -0600
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-14 15:18 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:16 -0500
            Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-14 05:55 -0400
              Re: multi-line Strings "William Bonawentura" <nie@ma.mnie.pl> - 2012-12-14 11:50 +0100
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-14 05:12 -0600
                Re: multi-line Strings Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2012-12-14 11:24 -0800
                Re: multi-line Strings markspace <-@.> - 2012-12-14 11:47 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-14 12:26 -0800
                Re: multi-line Strings markspace <-@.> - 2012-12-14 12:53 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:36 -0500
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-15 12:06 +0000
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:23 -0500
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-15 08:16 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:24 -0500
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-15 13:36 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-16 17:36 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-14 12:30 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:43 -0500
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-14 17:36 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:46 -0500
                Re: multi-line Strings BGB <cr88192@hotmail.com> - 2012-12-16 04:29 -0600
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-17 20:45 -0400
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-17 17:11 -0800
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-17 20:25 -0500
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-17 18:13 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 06:34 -0400
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-18 10:54 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 18:57 -0400
                Re: multi-line Strings Eric Sosman <esosman@comcast-dot-net.invalid> - 2012-12-18 20:02 -0500
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-18 17:13 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:35 -0500
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-18 15:12 -0800
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-19 10:00 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:31 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:29 -0500
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-19 20:44 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 21:50 -0500
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-19 23:15 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-20 06:00 -0400
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-20 08:56 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-19 19:33 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-17 21:43 -0500
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-17 22:09 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:59 -0500
                Re: multi-line Strings "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-18 13:22 +0000
                Re: multi-line Strings Leif Roar Moldskred <leifm@dimnakorr.com> - 2012-12-18 07:52 -0600
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:58 -0500
                Re: multi-line Strings Gene Wirchenko <genew@telus.net> - 2012-12-18 09:10 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:56 -0500
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 19:05 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:42 -0500
                Re: multi-line Strings Jim Janney <jjanney@shell.xmission.com> - 2012-12-17 22:18 -0700
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-17 21:46 -0500
                Re: multi-line Strings Peter Duniho <NpOeStPeAdM@NnOwSlPiAnMk.com> - 2012-12-17 21:01 -0800
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:46 -0500
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-17 21:51 -0500
                Re: multi-line Strings Patricia Shanahan <pats@acm.org> - 2012-12-17 19:41 -0800
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-18 19:19 -0400
                Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-18 20:50 -0500
                Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-19 05:23 -0400
                Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-19 13:25 -0800
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:14 -0500
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:14 -0500
          Re: multi-line Strings Jukka Lahtinen <jtfjdehf@hotmail.com.invalid> - 2012-12-14 23:43 +0200
            Re: multi-line Strings Arne Vajhøj <arne@vajhoej.dk> - 2012-12-14 22:20 -0500
              Re: multi-line Strings Arved Sandstrom <asandstrom2@eastlink.ca> - 2012-12-17 20:47 -0400
  Re: multi-line Strings Jim Janney <jjanney@shell.xmission.com> - 2012-12-12 08:33 -0700
    Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-12 11:32 -0800
      Re: multi-line Strings markspace <-@.> - 2012-12-12 11:45 -0800
  Re: multi-line Strings Lew <lewbloch@gmail.com> - 2012-12-15 13:33 -0800
    Re: multi-line Strings Sven Köhler <remove-sven.koehler@gmail.com> - 2012-12-29 18:18 +0100

csiph-web