Difference between revisions of "Non Breaking Spaces Before Punctuation In French (espaces insécables)"

From Apache OpenOffice Wiki
Jump to: navigation, search
(undelete paragraph about exclusion the NARROW NO-BREAK SPACE)
 
(54 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<div style="background-color: yellow; text-align: center; font-weight: bold">
+
<div style="width:700px;">
 +
<div style="background-color: yellow; text-align: center; font-weight: bold; padding: 10px;">
 
This specification is still in discussion.<br>
 
This specification is still in discussion.<br>
Please read the Brain-Storming section.
+
Please read the Brain-Storming section on the [[:{{NAMESPACE}} talk:{{PAGENAME}}|discussion page]] page.
 +
 
 +
You can also follow the [http://fr.openoffice.org/servlets/SearchList?list=dev&searchText=ins%C3%A9cable&defaultField=subject&Search=Search discussion in French on dev@fr.openoffice.org].
 
</div>
 
</div>
  
== Brain-Storming ==
 
<div style="background-color: Lavender;">
 
  
ES: the goal is to make a balance between "everything we can make perfect" and help as many people as possible who are missing this feature.
+
[[File:Insecable_logo70.png‎|||center|]]
  
# Provocative: Why do we implement this as a core feature while there's already a working extension for this (http://extensions.services.openoffice.org/project/insecable)?
+
{| align="center"
# Scope: "French". In which country? France, Switzerland, Belgium, Quebec, others? Which references should we have?
+
| __TOC__
# Use always a simple non breaking space (HTML: &nbsp) or follow the subtle differentiations of the French typography rules using a so called "thin space" (espace fine) (HTML: &thinsp - which is a BREAKING space!) depending of the case?
+
|}
## And then re-work the implementation of "Tools - AutoCorrect Options - Custom Quotes" when French is the current character language?
+
# Shouldn't we avoid to through a very language specific feature into the general AutoCorrect Options dialog?
+
  
</div>
 
 
== Abstract ==
 
== Abstract ==
<START '''TYPING''' HERE>
+
 
__TOC__
+
 
 +
In French language, some punctuation signs like ; : ! ? need to have a (non breaking) space between them and the word placed before them.<br>
 +
The current specification describes the automatic insertion of the those spaces over the AutoCorrect Options.
 +
 
  
 
== References ==
 
== References ==
Line 27: Line 28:
 
|-
 
|-
 
| |'''[http://wiki.services.openoffice.org/wiki/Specification#Before_Writing_a_Software_Specification_--_What_Else_Do_I_have_to_Do.3F Prerequisites]'''
 
| |'''[http://wiki.services.openoffice.org/wiki/Specification#Before_Writing_a_Software_Specification_--_What_Else_Do_I_have_to_Do.3F Prerequisites]'''
| [passed/failed]
+
| PASSED
| n/a
+
|  
 
|-
 
|-
 
| '''Product Requirement, RFE, Issue ID''' (required)
 
| '''Product Requirement, RFE, Issue ID''' (required)
| [available/not available]
+
| AVAILABLE
 
| [http://www.openoffice.org/issues/show_bug.cgi?id=17169 17169]
 
| [http://www.openoffice.org/issues/show_bug.cgi?id=17169 17169]
 
|-
 
|-
 
| '''Accessibility Check''' (required)
 
| '''Accessibility Check''' (required)
|
 
 
| PASSED
 
| PASSED
 +
|
 
|-
 
|-
 
| '''[[Test case specification]]''' (required)
 
| '''[[Test case specification]]''' (required)
Line 52: Line 53:
 
| Other, e.g. references to related specs, Product Concept Document
 
| Other, e.g. references to related specs, Product Concept Document
 
|
 
|
| <PLEASE ENTER LOCATION HERE>
+
| http://unicode.org/udhr/n/notes_fra.html
 
|-
 
|-
 
|}
 
|}
Line 91: Line 92:
  
 
== Detailed Specification ==
 
== Detailed Specification ==
<START '''TYPING''' HERE>
+
 
 +
=== Scope ===
 +
 
 +
It is about the automatic insertion or replacement (1) of certain spaces (2) before some punctuation characters (3) in French (4).
 +
 
 +
# <u>Automatic insertion or replacement</u><br>This addresses automatic insertions like defined under "''Tools - AutoCorrect - Options''" while typing and replacements afterward using "''Format - AutoCorrect - Apply''".<br>This '''will not''' consist in expanding the list of possible replacements as defined under "''Tools - AutoCorrect - Replace''"<br>
 +
# <u>Certain spaces</u><br>The French typography uses 3 main spaces before the punctuation signs (See: http://unicode.org/udhr/n/notes_fra.html)<br>- SPACE: U+0020<br>- NARROW NO-BREAK SPACE: U+202F<br>- NO-BREAK SPACE: U+00A0.<br>The current implementation retains only the SPACE and the NO-BREAK SPACE (See section "Exclusion of the NARROW NO-BREAK SPACE (U+202F)" on the [[:{{NAMESPACE}} talk:{{PAGENAME}}|discussion page]]).<br>
 +
# <u>Some punctuation characters</u><br>We focused on four frequently used punctuation signs: ":", ";", "?" and "!".<br>Other signs have already received AutoCorrect mechanisms (simple and double quotes).
 +
# <u>In French</u><br>The typographic rules are not unified across the francophone countries<br>Other rules apply in Canada (fr_CA).
 +
 
 +
=== Behavior and special cases ===
 +
 
 +
* '''General behavior:''' the insertion of a non breaking space is directly triggered by the input of one the mentioned punctuation marks.<br>Thus it works like the insertion of custom quotes in a French language or like the replacement "Automatic *bold* and _underline_".
 +
* '''Special cases:''' there are cases where those punctuation marks are not used in a context of a punctuation but as simple sign.<br>Such a typical context applies to URLs.
 +
** '''URLs:''' In this case the replacement first applies until the "<code>:/</code>" is found. At this point, the non breaking space inserted before "<code>:</code>" is removed and the further insertion of non breaking spaces is disabled for the whole string.<br>Examples ("<code>_</code>" stands for "non breaking space"):
 +
*** typing "<code>http:</code>" becomes "<code>http_:</code>"
 +
*** typing one "<code>/</code>" after "<code>http_:</code>" removes the non breaking space, so we have: "<code>http:/</code>"
 +
*** none of any further punctuation mark inserted in this string will trigger the replacement, so that we get:
 +
**** "<code><nowiki>http://www.mysite.com:8080/index.php?test=1</nowiki></code>"<br>and '''NOT''':
 +
**** "<code>http_://www.mysite.com_:8080/index.php_?test=1</code>"
 +
** '''Repetition:''' the insertion of a non breaking space does not occur when such punctuation marks are repeated one after each other.<br>Examples:
 +
*** "<code>word_???</code>"
 +
*** "<code>word_?!!</code>"
 +
 
 +
==== Exclusion of the NARROW NO-BREAK SPACE (U+202F) ====
 +
 
 +
While the traditional typography usages recommend the use of a space called "''espace fine insécable''", their electronic implementation as NARROW NO-BREAK SPACE (U+202F) character reveals many drawbacks:<br>
 +
* A minority of fonts contain this character<br>
 +
* Many software (browsers) don't handle this character as no-break space.<br> This would lead to unexpected layouts when exporting to HTML.<br>
 +
* The original description of what "''espace fine insécable''" should be is not covered by the electronic standards.<br>
 +
See: http://www.cs.tut.fi/~jkorpela/html/french.html, Section "Spacing"<br>
 +
<code>"''The French language uses special spacing in connection with several punctuation characters, for example before an exclamation mark. For example, Lexique des Règles Typographiques en usage à l'Imprimerie Nationale says that there should be a "½ cadratin" wide space after an opening quotation mark and before a closing quotation mark. That would half an em space, i.e. an en space. Quite obviously, such spaces should be non-breaking, but there is no non-breaking en space in Unicode!''"</code>
 +
* The manual insertion (if needed) of this character requires much more manipulation ("Insert - Special Character") than a simple space ([Space] key) or the no-break space ([Ctrl+Shift+Space])
 +
 
 +
=== General francophone usages ===
 +
 
 +
(These usages correspond to the fr_FR, fr_BE, fr_CH, fr_LU and fr_MC locales)
 +
 
 +
==== The rule ====
 +
 
 +
The following table shows the space-character-space rules as officially defined in France
 +
(See: http://unicode.org/udhr/n/notes_fra.html)
 +
 
 +
{| class="prettytable"
 +
! before
 +
! punctuation sign
 +
! after
 +
 
 +
|-
 +
| U+202F NARROW NO-BREAK SPACE
 +
| <center><nowiki>;</nowiki></center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+202F NARROW NO-BREAK SPACE
 +
| <center>!</center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+202F NARROW NO-BREAK SPACE
 +
| <center>?</center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+00A0 NO-BREAK SPACE
 +
| <center>:</center>
 +
| U+0020 SPACE
 +
 
 +
|}
 +
 
 +
 
 +
==== The Implementation ====
 +
 
 +
The following table shows the space-character-space implementation with regard to section [[#Exclusion of the NARROW NO-BREAK SPACE (U+202F)|Exclusion of the NARROW NO-BREAK SPACE (U+202F)]]
 +
 
 +
{| class="prettytable"
 +
! before
 +
! punctuation sign
 +
! after
 +
 
 +
|-
 +
| U+00A0 NO-BREAK SPACE
 +
| <center><nowiki>;</nowiki></center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+00A0 NO-BREAK SPACE
 +
| <center>!</center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+00A0 NO-BREAK SPACE
 +
| <center>?</center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+00A0 NO-BREAK SPACE
 +
| <center>:</center>
 +
| U+0020 SPACE
 +
 
 +
|}
 +
 
 +
 
 +
==== Special Cases ====
 +
 
 +
* '''non breaking space manually added:'''<br>In case the user already added a space between the word and the punctuation sign such as '<code>word<nb&nbsp;space>:</code>', there is '''no  replacement'''.
 +
* '''space manually added:'''<br>In case the user already added a space between the word and the punctuation sign such as '<code>word<space>:</code>', the '''space''' will be replaced by a '''non breaking space'''.
 +
* '''tab manually added:'''<br>In case the user already added a tab between the word and the punctuation sign such as '<code>word<tab>:</code>', there is '''no  replacement'''..<br> It is then assume that the user doesn't want to use the normal typographical rules but wishes to format his text as a plain text table.
 +
 
 +
=== Usages effective in Canada (Québec) ===
 +
 
 +
(These usages correspond to the fr_CA locale)
 +
 
 +
==== The Rule and Implementation ====
 +
 
 +
The following table shows the space-character-space implementation as defined in http://www.olf.gouv.qc.ca/RESSOURCES/ti/espacements_20030605.pdf
 +
 
 +
{| class="prettytable"
 +
! before
 +
! punctuation sign
 +
! after
 +
 
 +
|-
 +
| no space
 +
| <center><nowiki>;</nowiki></center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| no space
 +
| <center>!</center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| no space
 +
| <center>?</center>
 +
| U+0020 SPACE
 +
 
 +
|-
 +
| U+00A0 NO-BREAK SPACE
 +
| <center>:</center>
 +
| U+0020 SPACE
 +
 
 +
|}
 +
 
 +
==== Special Cases ====
 +
 
 +
* '''non breaking space manually added before ";" "!" "?":'''<br>In case the user already added a non breaking space between the word and the punctuation sign such as '<code>word<nb&nbsp;space>?</code>', this space will be suppressed.<br>Before ":" the rule defined for fr_FR applies (no replacement).
 +
* '''space manually added before ";" "!" "?":'''<br>In case the user already added a space between the word and the punctuation sign such as '<code>word<space>?</code>', this space will be suppressed.<br>Before ":" the rule defined for fr_FR applies (replacement with a non breaking space).
 +
* '''tab manually added:''' See the rule defined for fr_FR applies (no replacement).
 +
 
 +
=== UI ===
 +
 
 +
Option under  "[[AutoCorrect_Options_-_Localized_Options | Tools - AutoCorrect Options - Localized Options]]"<br>
 +
[[File:Insecable_UI.png‎|||center|]]
 +
 
 +
==== 1. The check box group ====
 +
 
 +
{| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 0;  border: 1px #cccccc solid; border-collapse: collapse; width: 100%"
 +
|-
 +
| width="200"  bgcolor="#dddddd" | '''Property''' || bgcolor="#dddddd" | '''State''' || bgcolor="#dddddd" | '''Comment'''
 +
|-
 +
| '''Visible:'''
 +
| When the language is set to "French" in the upper list box.
 +
| CAUTION: this condition will NOT be implemented for OOo 3.3<br>Until implementation, this element will be always visible.
 +
|}
 +
 
 +
==== 2. [M] CheckBox ====
 +
{| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 0;  border: 1px #cccccc solid; border-collapse: collapse; width: 100%"
 +
|-
 +
| width="200"  bgcolor="#dddddd" | '''Property''' || bgcolor="#dddddd" | '''State''' || bgcolor="#dddddd" | '''Comment'''
 +
|-
 +
| '''Visible:'''
 +
| Always
 +
| CAUTION: Writer only! Other applications don't have this check box.
 +
|-
 +
| '''Enabled:'''
 +
| Always
 +
|
 +
|-
 +
| '''Disabled:'''
 +
| Never
 +
|
 +
|-
 +
| '''Tristate:'''
 +
| None
 +
|
 +
|-
 +
| '''Checked:'''
 +
| Yes
 +
|
 +
|-
 +
|-
 +
|'''CheckBox Label:'''
 +
| <code>Add non breaking space before specific punctuation marks in French text</code>
 +
| This is the wording for OOo 3.3. The final version will be:<br><code>Add non breaking space before specific punctuation marks</code><br>Same label for both [M] and [T] check boxes.
 +
|}
 +
 
 +
==== 3. [T] CheckBox ====
 +
{| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 0;  border: 1px #cccccc solid; border-collapse: collapse; width: 100%"
 +
|-
 +
| width="200"  bgcolor="#dddddd" | '''Property''' || bgcolor="#dddddd" | '''State''' || bgcolor="#dddddd" | '''Comment'''
 +
|-
 +
| '''Visible:'''
 +
| Always
 +
|
 +
|-
 +
| '''Enabled:'''
 +
| Always
 +
|
 +
|-
 +
| '''Disabled:'''
 +
| Never
 +
|
 +
|-
 +
| '''Tristate:'''
 +
| None
 +
|
 +
|-
 +
| '''Checked:'''
 +
| Yes
 +
|
 +
|-
 +
|-
 +
|'''CheckBox Label:'''
 +
| <code>Add non breaking space before specific punctuation marks in French text</code>
 +
| This is the wording for OOo 3.3. The final version will be:<br><code>Add non breaking space before specific punctuation marks</code><br>Same label for both [M] and [T] check boxes.
 +
|}
 +
 
 +
 
 
[[Specification_Template_Help#Detailed_Specification|Help]] | [[UI-Elements|User Interface Element Templates]] | [[Specification_Example|Example Spec]]
 
[[Specification_Template_Help#Detailed_Specification|Help]] | [[UI-Elements|User Interface Element Templates]] | [[Specification_Example|Example Spec]]
  
Line 113: Line 342:
 
# For specific implementation details, architecture: [mailto:mt@openoffice.org mt@openoffice.org] (Malte Timmermann)
 
# For specific implementation details, architecture: [mailto:mt@openoffice.org mt@openoffice.org] (Malte Timmermann)
 
# For specific UX and testing questions: [mailto:es@openoffice.org es@openoffice.org] (Éric Savary)
 
# For specific UX and testing questions: [mailto:es@openoffice.org es@openoffice.org] (Éric Savary)
 +
 +
== Documentation ==
 +
 +
'''Context:'''<br>
 +
Help called on "Tools - AutoCorrect Options - Localized Options"
 +
 +
'''Content:'''<br>
 +
"Inserts a non breaking space before ";", "!", "?" ":" when the character language is set to French (France, Belgium, Switzerland, Luxembourg, Monaco) and before ":" only when the character language is set to French (Canada)"
  
 
== Migration ==
 
== Migration ==
<START TYPING HERE --- If this part is irrelevant state a reason for its absence.>
+
Does not apply.
  
 
== Configuration ==
 
== Configuration ==
<START TYPING HERE --- If this part is irrelevant state a reason for its absence.>
+
Remember the option "Tools - AutoCorrect - Options - French punctuation" when updating.
 
+
[[Specification_Template_Help#Configuration|Help]] | [[Configuration-Table|Configuration Table Template]]
+
{| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 0;  border: 1px #cccccc solid; border-collapse: collapse; width: 100%"
 +
|-
 +
| bgcolor="#dddddd" | '''Configuration''' || bgcolor="#dddddd" | '''Group''' || bgcolor="#dddddd" | '''Setting''' || bgcolor="#dddddd" | '''Type''' || bgcolor="#dddddd" | '''Default''' || bgcolor="#dddddd" | '''Comment'''
 +
|-
 +
| Common.xcs
 +
| AutoCorrect
 +
| AddNonBreakingSpace
 +
| Boolean
 +
| True
 +
|
 +
|-
 +
| Writer.xcs
 +
| AutoFunction/Format/Option
 +
| AddNonBreakingSpace
 +
| Boolean
 +
| True
 +
|
 +
|-
 +
|}
  
 
== File Format ==
 
== File Format ==
<START TYPING HERE --- If this part is irrelevant state a reason for its absence.> [[Specification_Template_Help#File_Format|Help]]
+
Does not apply.
 
+
[[Specification_Template_Help#File Format|Help]] | [[File Format Table|File Format Table Template]]
+
  
 
== Open Issues ==
 
== Open Issues ==
Line 131: Line 384:
  
 
[[Category:Specification]]
 
[[Category:Specification]]
 +
</div>

Latest revision as of 06:00, 29 August 2012

This specification is still in discussion.
Please read the Brain-Storming section on the discussion page page.

You can also follow the discussion in French on dev@fr.openoffice.org.


Insecable logo70.png

Abstract

In French language, some punctuation signs like ; : ! ? need to have a (non breaking) space between them and the word placed before them.
The current specification describes the automatic insertion of the those spaces over the AutoCorrect Options.


References

Reference Document Check Location (URL)
Prerequisites PASSED
Product Requirement, RFE, Issue ID (required) AVAILABLE 17169
Accessibility Check (required) PASSED
Test case specification (required) [available/not available] <PLEASE ENTER LOCATION HERE>
IDL Specification [available/not available] <PLEASE ENTER LOCATION HERE>
Software Specification Rules n/a n/a
Other, e.g. references to related specs, Product Concept Document http://unicode.org/udhr/n/notes_fra.html

Contacts

Role Name E-Mail Address
Developer Cédric Bosdonnat cedricbosdo@openoffice.org
Quality Assurance Éric Savary es@openoffice.org
Documentation Uwe Fischer ufi@openoffice.org
User Experience Cédric Bosdonnat
Éric Savary
cedricbosdo@openoffice.org
es@openoffice.org

Acronyms and Abbreviations

Acronym / Abbreviation Definition
<WYSIWYG> <What You See Is What You Get>

Detailed Specification

Scope

It is about the automatic insertion or replacement (1) of certain spaces (2) before some punctuation characters (3) in French (4).

  1. Automatic insertion or replacement
    This addresses automatic insertions like defined under "Tools - AutoCorrect - Options" while typing and replacements afterward using "Format - AutoCorrect - Apply".
    This will not consist in expanding the list of possible replacements as defined under "Tools - AutoCorrect - Replace"
  2. Certain spaces
    The French typography uses 3 main spaces before the punctuation signs (See: http://unicode.org/udhr/n/notes_fra.html)
    - SPACE: U+0020
    - NARROW NO-BREAK SPACE: U+202F
    - NO-BREAK SPACE: U+00A0.
    The current implementation retains only the SPACE and the NO-BREAK SPACE (See section "Exclusion of the NARROW NO-BREAK SPACE (U+202F)" on the discussion page).
  3. Some punctuation characters
    We focused on four frequently used punctuation signs: ":", ";", "?" and "!".
    Other signs have already received AutoCorrect mechanisms (simple and double quotes).
  4. In French
    The typographic rules are not unified across the francophone countries
    Other rules apply in Canada (fr_CA).

Behavior and special cases

  • General behavior: the insertion of a non breaking space is directly triggered by the input of one the mentioned punctuation marks.
    Thus it works like the insertion of custom quotes in a French language or like the replacement "Automatic *bold* and _underline_".
  • Special cases: there are cases where those punctuation marks are not used in a context of a punctuation but as simple sign.
    Such a typical context applies to URLs.
    • URLs: In this case the replacement first applies until the ":/" is found. At this point, the non breaking space inserted before ":" is removed and the further insertion of non breaking spaces is disabled for the whole string.
      Examples ("_" stands for "non breaking space"):
      • typing "http:" becomes "http_:"
      • typing one "/" after "http_:" removes the non breaking space, so we have: "http:/"
      • none of any further punctuation mark inserted in this string will trigger the replacement, so that we get:
        • "http://www.mysite.com:8080/index.php?test=1"
          and NOT:
        • "http_://www.mysite.com_:8080/index.php_?test=1"
    • Repetition: the insertion of a non breaking space does not occur when such punctuation marks are repeated one after each other.
      Examples:
      • "word_???"
      • "word_?!!"

Exclusion of the NARROW NO-BREAK SPACE (U+202F)

While the traditional typography usages recommend the use of a space called "espace fine insécable", their electronic implementation as NARROW NO-BREAK SPACE (U+202F) character reveals many drawbacks:

  • A minority of fonts contain this character
  • Many software (browsers) don't handle this character as no-break space.
    This would lead to unexpected layouts when exporting to HTML.
  • The original description of what "espace fine insécable" should be is not covered by the electronic standards.

See: http://www.cs.tut.fi/~jkorpela/html/french.html, Section "Spacing"
"The French language uses special spacing in connection with several punctuation characters, for example before an exclamation mark. For example, Lexique des Règles Typographiques en usage à l'Imprimerie Nationale says that there should be a "½ cadratin" wide space after an opening quotation mark and before a closing quotation mark. That would half an em space, i.e. an en space. Quite obviously, such spaces should be non-breaking, but there is no non-breaking en space in Unicode!"

  • The manual insertion (if needed) of this character requires much more manipulation ("Insert - Special Character") than a simple space ([Space] key) or the no-break space ([Ctrl+Shift+Space])

General francophone usages

(These usages correspond to the fr_FR, fr_BE, fr_CH, fr_LU and fr_MC locales)

The rule

The following table shows the space-character-space rules as officially defined in France (See: http://unicode.org/udhr/n/notes_fra.html)

before punctuation sign after
U+202F NARROW NO-BREAK SPACE
;
U+0020 SPACE
U+202F NARROW NO-BREAK SPACE
!
U+0020 SPACE
U+202F NARROW NO-BREAK SPACE
?
U+0020 SPACE
U+00A0 NO-BREAK SPACE
:
U+0020 SPACE


The Implementation

The following table shows the space-character-space implementation with regard to section Exclusion of the NARROW NO-BREAK SPACE (U+202F)

before punctuation sign after
U+00A0 NO-BREAK SPACE
;
U+0020 SPACE
U+00A0 NO-BREAK SPACE
!
U+0020 SPACE
U+00A0 NO-BREAK SPACE
?
U+0020 SPACE
U+00A0 NO-BREAK SPACE
:
U+0020 SPACE


Special Cases

  • non breaking space manually added:
    In case the user already added a space between the word and the punctuation sign such as 'word<nb space>:', there is no replacement.
  • space manually added:
    In case the user already added a space between the word and the punctuation sign such as 'word<space>:', the space will be replaced by a non breaking space.
  • tab manually added:
    In case the user already added a tab between the word and the punctuation sign such as 'word<tab>:', there is no replacement..
    It is then assume that the user doesn't want to use the normal typographical rules but wishes to format his text as a plain text table.

Usages effective in Canada (Québec)

(These usages correspond to the fr_CA locale)

The Rule and Implementation

The following table shows the space-character-space implementation as defined in http://www.olf.gouv.qc.ca/RESSOURCES/ti/espacements_20030605.pdf

before punctuation sign after
no space
;
U+0020 SPACE
no space
!
U+0020 SPACE
no space
?
U+0020 SPACE
U+00A0 NO-BREAK SPACE
:
U+0020 SPACE

Special Cases

  • non breaking space manually added before ";" "!" "?":
    In case the user already added a non breaking space between the word and the punctuation sign such as 'word<nb space>?', this space will be suppressed.
    Before ":" the rule defined for fr_FR applies (no replacement).
  • space manually added before ";" "!" "?":
    In case the user already added a space between the word and the punctuation sign such as 'word<space>?', this space will be suppressed.
    Before ":" the rule defined for fr_FR applies (replacement with a non breaking space).
  • tab manually added: See the rule defined for fr_FR applies (no replacement).

UI

Option under " Tools - AutoCorrect Options - Localized Options"

Insecable UI.png

1. The check box group

Property State Comment
Visible: When the language is set to "French" in the upper list box. CAUTION: this condition will NOT be implemented for OOo 3.3
Until implementation, this element will be always visible.

2. [M] CheckBox

Property State Comment
Visible: Always CAUTION: Writer only! Other applications don't have this check box.
Enabled: Always
Disabled: Never
Tristate: None
Checked: Yes
CheckBox Label: Add non breaking space before specific punctuation marks in French text This is the wording for OOo 3.3. The final version will be:
Add non breaking space before specific punctuation marks
Same label for both [M] and [T] check boxes.

3. [T] CheckBox

Property State Comment
Visible: Always
Enabled: Always
Disabled: Never
Tristate: None
Checked: Yes
CheckBox Label: Add non breaking space before specific punctuation marks in French text This is the wording for OOo 3.3. The final version will be:
Add non breaking space before specific punctuation marks
Same label for both [M] and [T] check boxes.


Help | User Interface Element Templates | Example Spec

Accessibility

Accessibility is the responsibility of the I-Team, beginning with UX, DEV and QA, to ensure that the following requirements are fulfilled:

  1. Is the feature fully keyboard accessible?
    (Ex: "I can go everywhere and use every function using the keyboard only"

    Does not apply
  2. Have I specified visual alternatives for the case that the specified feature includes audio as output?
    Does not apply
  3. Are text alternatives for all icons and graphics available?
    Does not apply
  4. Don't provide important information in colors alone
    (Ex: marking important information hard coded in red)

    Does not apply
  5. Does the specified feature respect system settings for font, size, and color for all windows and user interface elements?
    Does not apply
  6. Have I ensured that flash rates do not exceed 2 hertz for blinking text, objects, or other elements? In any case, try to avoid flashing UI elements
    Does not apply
  7. Ensure that assistive technology (AT) (like ZoomText or Orca) is able to read everything.
    Does not apply

QUESTIONS?

If you need help while designing, implementing or testing the accessibility of the UI, ask/visit:

  1. The accessibility check list at the OpenOffice.org Wiki
  2. accessibility@ui.openoffice.org (The accessibility mailing lists, preferred)
  3. For specific implementation details, architecture: mt@openoffice.org (Malte Timmermann)
  4. For specific UX and testing questions: es@openoffice.org (Éric Savary)

Documentation

Context:
Help called on "Tools - AutoCorrect Options - Localized Options"

Content:
"Inserts a non breaking space before ";", "!", "?" ":" when the character language is set to French (France, Belgium, Switzerland, Luxembourg, Monaco) and before ":" only when the character language is set to French (Canada)"

Migration

Does not apply.

Configuration

Remember the option "Tools - AutoCorrect - Options - French punctuation" when updating.

Configuration Group Setting Type Default Comment
Common.xcs AutoCorrect AddNonBreakingSpace Boolean True
Writer.xcs AutoFunction/Format/Option AddNonBreakingSpace Boolean True

File Format

Does not apply.

Open Issues

<State a bulleted list of issues Issue here>

Personal tools