Style Guide

Tip: While you aren't required to follow this Style Guide to make unofficial Wiki pages, it may help you be a more effective writer, so feel free to adopt these practices!
This article is about style used in English articles. For other uses, see Style Guide (disambiguation).

Interested in contributing to the Extended Knowledge Base? Please read this style guide to gain a better understanding of the framework we're using to craft beautiful documents which aren't just well-written, but easy-to-read.

Our style guide is inspired by successful common conventions such as Wikipedia's, blended with specifics about the Second Life® experience. This guide is open to evolving over time, yet aims to provide consistency you can refer to when in doubt.

Please note that these style guidelines are meant to be more strictly enforced for material that's part of the Second Life Knowledge Base, but you can feel free to apply them elsewhere on this wiki wherever it may be beneficial! Consistency in communication helps clarity to a degree you may find startling.

Read the main Editing Guidelines before editing KB articles. Being well-primed will help you get started smoothly. You should also have a basic understanding of wikicode, a combination of plain text and formatting markup.

Furthermore, feel free to examine any established KB article in detail, such as How do I add someone to my Contacts list?, for examples. Once an article's in the Wiki, of course, you can click the Edit tab near the top of the screen. You'll need to be logged in.

It is not a replacement for industry standards such as The Chicago Manual of Style or The Elements of Style. However, when contributing to Linden Lab's written documentation and communication, it's a good idea to read through these notes to be sure your articles are meeting the standards.

Knowledge Base articles

This section discusses the structure of articles and their arrangement within the Knowledge Base as a whole, sort of.

Knowledge Base article structure

There are two basic types of Knowledge Base article:

  1. The ones that answer a specific question ("How to save textures to your hard drive")
  2. The ones that give some general knowledge about a topic ("Guide to Jobs in Second Life")

In either case, the first paragraph of the article should answer an unspoken question:

  1. After I read this, what should I be able to do? (Pretty self-evident.)
  2. After I read this, what should I understand better?

This can be as simple as making the first paragraph say something like "This article discusses ___."

If all the articles in the Knowledge Base start off this way, readers will become accustomed to finding out very quickly whether the information in a particular article will be useful to them without having to read the whole thing.

Headers

Articles should be divided into headers, each one representing a distinct topic. For instance, in an article about different types of scripted objects, each type could have its own section with a header.

Top-level article headers are the equivalent to a "h2" in modern blog software and other content management systems:

== Header ==

Furthermore, content should begin on the next line, with each paragraph separated by two line breaks (if you use a single line break, text continues on the same line).

In a particularly extensive article, use sub-headers:

== Header ==
Text goes here...

=== Sub-Header ===
Even more text...

==== Sub-Header ====
You get the idea...

Keep flow a foremost priority. A table of contents will automatically appear in an article with four or more headers, but if an article feels tedious to scroll through, you may want to separate sections into their own pages, and link to them instead.

If you don't want an article to have the table of contents, insert this at the top:

__NOTOC__

To save space and right-align the table of contents, use this template:

{{TOCright}}

Note that this template doesn't work well if you are also using a navigation template that floats to the right.

Knowledge Base article scope

One problem that wikis and knowledge bases frequently run into is the proliferation of pages that contain closely interrelated or even duplicate subject matter, but with little connection between them. This is due to a lack of central planning, and the nature of wiki growth.

When it comes to Second Life documentation, we should remember that a FAQ on estate billing should be integrated with — or at the very least, closely linked to — the main article for estate billing. By linking the pages together and clearly indicating this, it provides readers with a clear path to follow to get more help, and editors with a better indicator of what they need to keep track of when editing a given subject.

Duplicate information on multiple pages increases the odds that those pages won’t be updated as that information changes. This vastly reduces the usefulness of the Knowledge Base as a whole. Whenever possible, try to modularize things such that information on how to do something lives in one place only, and gets linked to by other articles. That way, you only have to update it once if it changes.

Knowledge Base article tense

When you tell people what happens when they do things, use the present tense, for example:

As opposed to:

Terminology

Important: The closest thing to an "official glossary" is the Viewer 2 built-in glossary, which uses the content from Viewerhelp:Glossary.

Second Life-specific words

When referring to Linden Lab reflexively, we go with "We recommend" over "Linden Lab recommends," except in the case of something really formal, like a legal communication or something. It's probably likely we won't be writing actual legal briefs anytime soon, though.

If you’re talking about a specific Linden program or service, always, always use the name of the program.

User interface elements

It would be good to have some standard terms that we use across the Knowledge Base to refer to elements of the UI.

Maintaining consistency makes it easier for readers to understand what we're talking about, whether they realize it or not.

In general, capitalize and spell user interface (UI) elements exactly as they are in the interface. If there's some inconsistent capitalization in the UI, note it and we'll put it in a bucket that we'll eventually give to somebody. If there's a misspelling or a typo in the UI, that's probably bug material!

Note: In Viewer 2, we're considering calling these simply "notifications," as they really serve only to notify a Resident that something's occurred, and don't present a yes/no choice, which is what most "dialogs" typically do these days.

Deprecated terminology

As Second Life has matured, Linden-favored terms have changed as well. We should take care to only use the current words for the concepts and items we describe, both to avoid confusion, as well as to avoid potential legal issues, such as the example of writing "money" rather than "Linden Dollars". Linden Dollars aren't money!

For example, "Private Islands" is a term we’ve deprecated in favor of "Estates" (when there's a group of Private Regions together) or "Private Region". (As many Residents have noted, if you have two adjacent non-mainland Regions, why are they individually considered "islands"?)

Please keep in mind that these are general guidelines; context is everything!

So, we use:

These terms may be in common usage among Residents, but it’s important to maintain a consistent message.

When it comes to search keywords, it’s important to remember that we do have to respect common usage. Thus, keywords for common terms should be placed on the appropriate pages.

What to capitalize

Follow standard rules for capitalization; that is, capitalize:

Also capitalize:

In general, capitalize any interface element (names of fields, buttons, menus, etc) exactly as it appears in the Second Life Viewer.

Do not capitalize the following words/phrases:

Use of jargon

If you’re writing help docs for Second Life, you hopefully know the difference between a prim and a Class 4 server, but do the Residents reading your article? Depending on the audience your article is geared towards, they very well may not. With that in mind, we can avoid confusion in one of the following ways:

As a rule of thumb, if you’re working on something involving advanced subject matter, (such as a page on prim torturing) basic terms like "rez" or "IP address" might not need to be defined.

If you’re writing an article titled "I just started. What do I do now?", everything will be new to those reading. When writing for a general audience, the trick is balancing between the phrases "rez a prim" and "create a primitive, one of the simple building blocks that can be used to create everything you see in Second Life".

Supplementary to the Glossary, let's remember jargon that might be confusing or just plain opaque to new Resis or non-English speakers. Such as:

All SL-specific terms should be spelled properly based on their predominant usage. For example, it's "rez" and "rezzed", not "res" and "ressed".

Certain terms should be capitalized, others should not. Others will be changed in time.

Again, refer to the glossary for proper contextual usage.

"First life"

Avoid using the term "first life" for anything that takes place in, well, first life. You can usually write around places where this comes up by including the phrase "outside of Second Life," which is handy.

Formatting

This section covers the actual formatting of text. Should that thing be bold? Do we italicize the names of fields? Fortunately, since we're sticking more or less to HTML in the Knowledge Base, this will be extremely simple.

General rules

Titles and subtitles

Use sentence capitalization for all titles and headings. This means to capitalize the first letter in the heading (as well as other words that are normally capitalized such as proper nouns). Do not capitalize other words that would not normally be capitalized. For example:

Lists

What follows are some guidelines surrounding lists.

Numbered lists

Use numbered lists for a series of steps that must be followed in order:

# Click the '''Log in''' button.
# Read the Messsage of the Day.
# Smile!

Results in:

  1. Click the Log in button.
  2. Read the Messsage of the Day.
  3. Smile!

In general, each item or instruction in a numbered list should be a complete sentence and should be punctuated accordingly — that is, with a period, an exclamation point or (in rare cases) a question mark.

Unordered lists

Use bullet points for series of brief points. They're often found in the form of mid-article "Quick tips" or "Related resources" at the end of an article:

* Consider that!
* Consider this!
** A sub-point, but don't go overboard on these.

If you find yourself writing bullet points with long paragraphs, consider whether a list is the best format.


Files, paths, URLs, code, and other typed user input

Use the <code> tag to show a background-colored, fixed-pitch font for file names, directory paths, URLs (or portions thereof), code snippets, and other typed user input. For example:

Put lengthy URLs on a separate line using the <pre> tag.

For multi-line code samples, use the syntax highlighting extension; for example:

 # Hello World in Python

 def main():
     print "Hello World!"
 
 if __name__ == '__main__':
     main()

Tables

We use Template:KBtable, to automatically style tables consistently. Template:KBtablehead is used if the table has a header row. The overall emphasis is on minimal, elegant readability without too much "boxiness". The style is subject to future revision.

For example, this:

{| {{KBtable}}
|- {{KBtablehead}}
!  
! Column A
! Column B
! Column C

|- 
| '''Row A'''
| fill
| in
| these

|- 
| '''Row B'''
| values
| and 
| win

|}

becomes:

Column A Column B Column C
Row A fill in these
Row B values and win

For advanced users, further styling is available.

Warnings, notes, tips, and other templates

If there's something you think deserves some special emphasis in a Knowledge Base article, make a warning, a note, or a tip out of it. The following table describes the main KB templates, part of a larger group of KB templates.

Template Wiki code Description What it looks like
Template:KBwarning {{KBwarning|Foo}} A strong notice of what NOT to do, and if applicable, the consequences, including something that can cause harm or damage.
⚠️ Warning: Foo
Template:KBcaution {{KBcaution|Foo}} An important notice of what NEEDS to or SHOULD be done — basically, the opposite of KBwarning.
Important: Foo
Template:KBtip {{KBtip|Foo}} A helpful hint to make a process easier to do.
Tip: Foo
Template:KBnote {{KBnote|Foo}} Additional considerations and things that are good to know.
Note: Foo
Template:KBtrivia {{KBtrivia|Foo}} Optional, bonus knowledge. These are least relevant of the templates and an article should be able to be understood entirely without trivia.
Trivia: Foo

For example, here is an item that deserves use of the KBCaution template:

Important: Be sure to click the Save button or your work will be lost!

Troubleshooting

If you have problems including certain styling or a link in a template, a "?" or other characters may be interfering. Use the format "{{TemplateName|1=text}}" with the "1=". For example:

{{KBcaution|1=[http://forums-archive.secondlife.com/327/85/252954/1.html Don't click this!]}}

becomes (RIGHT):

⚠️ Warning: Don't click this!

instead of (WRONG):

⚠️ Warning: http://forums-archive.secondlife.com/327/85/252954/1.html Don't click this!]

Links

Link liberally! Links make it easier to discover more info about a given topic, and save someone the trouble of searching. If faced with a choice whether to link to relevant details or not, you can safely err on the side of linking.

Link to relevant pages where more info is provided or there are terms that benefit from further definition. For instance, in an article about performance tips:

If you're in a crowded area, make sure to enable Avatar Impostors.

This has a dual benefit:

  1. Saves space because you don't need to explain an advanced concept in the current article, since the knowledge already exists — a primer sentence or two is fine.
  2. Makes it easier to navigate through related topics, as famously illustrated in xkcd.

Imperative sentences

Linking "imperative sentences", as long as they're not an eyesore long, is encouraged to prompt action and tell the reader what happens if they click that link:

Also, citing articles where there may be ambiguity, whether they're in the Knowledge Base or elsewhere, should be done like this:

Images

Pictures show Second Life as-is. They can be uploaded using the "Upload file" form. All images must be uploaded to this Wiki, we can't link to externally-hosted files.

Generally, upload images as PNG, since it's lossless and the Wiki will dynamically resize them to JPGs.

Images should be inserted into articles at a width of 640 pixels (640px), or less if the original image dimensions are readable at smaller sizes. This tends to be a good balance between visibility and content balance:

[[Image:Flying-car.jpg|640px]]

Results in:

The original flying car is 1024px wide.

If an image has extreme dimensions, such as being very narrow and vertically long, consider cropping it selectively in an image editor, then reupload.

Thumbnails can be used sparingly if there's a need to include multiple images:

[[Image:Flying-car.jpg|none|thumb|''Oh look! A flying car!'']]

Results in:

Oh look! A flying car!

Also! You can link an image to another Wiki page or external site.

Styles

Captions for screenshots! If you're going to put a sentence next to a screenshot, it should include some useful information that's not readily apparent in the actual screenshot itself.

Revisions

Images can be automatically replaced by another with the same filename. This is useful if there's a new version of the Second Life Viewer with user interface changes and you have fresh screenshots. Simply upload, then confirm you want to replace the older version. This replaces it for all linked instances on the Wiki. If you make a mistake, you can revert.

Videos

You can embed videos & multimedia to make articles more useful and fun. Video tutorials make it easier to understand kinetic, 3D concepts. For example, "{{KBvideo|3578377}}" becomes:

<videoflash type="vimeo">3578377|640|480</videoflash>

Like images, embed videos at a width of 640px. See Template:KBvideo for more info. Also whenever appropriate: include the video in its own section with "Video tutorial" header, and a text summary of what it's about. This can be done as bullet points.

We standardized on Vimeo for Torley's official video tutorials which you can search through, or "vidtuts" for short. (We also have an alternative Widgets extension, but it conflicts with FlaggedRevs, so don't use it for videos on official Knowledge Base articles.)

⚠️ Warning: Flash was discontinued in the 2020s, meaning that currently there is no easy way to embed videos on the SL Wiki. This has been reported to Linden Lab and we await a solution.

Navigation Templates

Stuff to do for the Old Knowledge Base: This spec is still being defined. COME SEE Torley if you have questions.


You can use navigation templates to provide easy links to related articles, as shown in the actual example of Template:Navbox/Adult to the right. They can be any articles you choose; all you have to do is insert the template code at the top of a page. For ease of maintenance, you should create a new template when designing a Navbox for a new set of related articles.

Best practices

Navigation templates provide helpful navigation:

Navigation templates provide navigation between existing articles:

Style

Many style concerns with navigation templates are automatically covered by the Navbox template. However, here are a few additional style guidelines:

Grammar and language

This section contains tips on grammar and dialect that are useful.

Thoughts on style

"The best way to be boring is to leave nothing out" -Voltaire

Edit articles consistent with their original "vibe" as established by employees of Linden Lab. Some topics will obviously be more jovial than others. Language (English and international equivalents) should be terse enough to communicate succinctly, but not so dry that it's boring. Humor is useful to get the point across with examples, but shouldn't distract from understanding.

Overall, since this is reference material, the Knowledge Base's tone is more formal than casual venues than the Official Second Life Blogs. When in doubt, consult existing articles by the Doc Team and ask!

Common grammatical errors

Semicolons are used to separate two clauses of a compound sentence while still indicating a closer relationship between the two clauses than a period would. We can think of them as somewhere between a comma and a period.

Try to avoid using a comma where a semicolon would be more appropriate. If you're unsure, ask someone.

For a more detailed explanation of semicolons, see UW-Madison's Writer's Handbook entry on semicolon usage.

Note: The best is to use short, concise sentences rather than longer ones.

Latin abbreviations

Latin abbreviations such as "e.g." may not be universally understood, and can cause difficulty with translation. Follow the guidelines below:

Do not use Use instead
i.e. that is
e.g. for example
etc. and so on

Mixing menus and windows

We use ">" to indicate hierarchy, and it's usually unnecessary to state "menu" unless there's abject confusion or the article is for newcomers.

The same applies for the pie menu, where ">" is explicitly shown for deeper levels.

When UI elements are mixed, make this obvious.

We're aware the latter is used by the technically-savvy and in brief Issue Tracker reports, but for the purposes of explaining Second Life as clearly as possible to newer Residents, we do the former.

Keystrokes

We're aware some conventions prefer "+" over "-" as a joiner, and some operating systems (like Mac OS X's own menus) dispense with them entirely. However, this Style Guide is about Second Life; for now, represent shortcuts as they're shown in the Viewer menus.

To visually prettify your keystrokes and make them stand out, use Template:K. For example:

The full list of special keys is shown when editing Template:K/core.

Dialect

As Second Life began with a predominantly American user base, all Second Life English-language documentation should be standardized on American English. (We may revisit this policy in the far future, but it would require such an extensive overhaul to so many documents that it seems somewhat suboptimal from a time cost/benefit standpoint, given the other things we could be working on)

This means:

Writing in another dialect may be a hard habit to get into. It's to be expected that some mistakes will slip through. We'll still work to correct them, but these sorts of errors should be considered low-priority, trumped first by technical inaccuracy and simply incorrect grammar and sentence structure.

Trademarks

The first instance of Second Life® in an article should have a registered trademark after it to assert our brand. Our trademarks should always be respected, and you can learn more.

Advanced additions

The Second Life Wiki keeps growing and we laud Resident enthusiasm to evolve styles. Be aware some styles are very useful for other sections on the Wiki but don't apply to us yet. Various issues of note are recorded on User:Torley/Code.

Please don't make any broad style changes without consulting with the Documentation Team first. We're here to help and would be happy to have a look.

Commentary

If you want to discuss an article, don't place inline comments unless it's an article which explicitly invites them, because it leads to clutter. Instead, use the Discussion ("Talk") tab, located at the top of every article. The same style guidelines apply here, and you should sign your commentary for clear attribution.