Paragraph and character style separation
Posted: Sat Dec 13, 2008 9:22 pm
I have a question about how Mellel implements styles. I'm not sure why the character style options are separated from the paragraph styles. I expect that there is a good reason behind Redler's decision, and I hope that others can help me understand why these style elements are separated and how I can better use this separation to my advantage. I apologize if this post is somewhat long, but I think it's important to lay out my question as completely as possible in order to help others see why I am confused.
In my mind, the overarching purpose of styles is to move from descriptive formatting to logical formatting. Instead of saying "I want this piece of text to be Arial 16pt bold," I can say "I want this text to be a level one header," which also means that all level 1 headers will have the same formatting.
It seems that separating the character style options from the paragraph styles makes it harder to focus on logical formatting. Instead of saying, "I want this text to be a level 1 header," I now have to say "I want the paragraph features--spacing, indent, etc.--to be like the level 1 header paragraph, and I want the character features--font, size, etc.--to be like a level 1 header." In other words, instead of thinking about just the logical description (level 1 header), I am thinking about 2 aspects.
In fact, the two aspects I am thinking about are probably descriptive formatting issues--exactly what styles are supposed to move away from! This becomes evident if one makes use of the ability to associate a character style with multiple paragraph styles. Let's take a body text paragraph style and two character styles: Char1 and Char2. How would one decide to use Char1 rather than Char2? It would be a different of character formatting: I want to use Char1's font (for example) for body text rather than Char2. That means that I am thinking about Char1 and Char2 in terms of fonts rather than logical functions, and it would make sense to name Char1 and Char2 by their fonts. Thus, the abstraction from description falls apart and the character styles become descriptive rather than logical. In this case, it would make more sense to just include the character information within the logical style "body text," since changing from Char1 to Char2 is no different than defining the logical style of body text to include the characteristics included within the character style.
(I can't think of an example where one would think of Char1 and Char2 in logical terms but would still want to separate character formatting from paragraph formatting. The best example I can think of is having the character styles of normal text and small text and choosing which one to associate with the body text paragraph style. Why would that be better than having font size included as part of the "body text" style definition and deciding how large or small to make body text?)
What about reusing a character style in multiple paragraph styles? Let's take a body text character style and use it in both a body text paragraph style and a block quote paragraph style. In this situation, one manages to keep the focus on logical formatting rather than descriptive formatting. But, is there an advantage to this approach over having all of the formatting--character and paragraph--in one style? The only advantage I can think of is that it becomes possible to change the body text font in one place and have it change both paragraph styles at once.
But the ability to link styles together shouldn't necessarily depend on a separation between character formatting and paragraph formatting. I might want to link the size of the first line indents between the body text style and the block quote style, so that if I change the body text to indent 2ems instead of .5in, all the indents will change in a similar manner. How does separating character formatting from paragraph formatting help here? For this situation, I think OpenOffice does a good job in allowing one to link styles; the features of a child style that are changed from the parent become independent, but if a shared feature is changed in the parent, it changes in all of its children as well. Is there something that Mellel's style setup allows one to do that is not possible to replicate in this manner?
Finally, one might just define a paragraph style and an associated character style for each logical function. This seems to be the preference for Mellel's default style set: the body paragraph style is associated with the body character style, the title paragraph style with the title character style, and so forth. This just seems to result in the need to set up more styles initially--instead of defining (say) 10 initial styles, one defines 10 paragraph styles and 10 character styles. The inelegance of this approach is almost painful in the case of note styles. In Mellel's default style set, there are four note styles (footnote, footnote small, endnote, and endnote small), two paragraph styles (note text and note text small), and two character styles (note text and note text small). That's 8 styles for 2 kinds of notes (since mixing footnote and footnote small, or endnote and endnote small, would make one's formatting inconsistent and defeat the point of styles)!
In all of these situations, the character styles become focused on description rather than logical function. (In the notes example, the paragraph styles also become descriptive.) If one wants to do character-level styling logically, the way Mellel handles style variations seems far more useful. For instance, style variation A is normal text, B is emphasized text (which is a logical definition: one emphasizes roman text by italicizing it but emphasizes italics text by setting it back in roman, or making it bold. Thus, how B is described will vary between body text, which is normally roman, and a header level that is normally italicized, but the logical function is the same in either case.).
I hope I have clearly laid out why I think Mellel's separation between character and paragraph styles doesn't make sense to me. I would appreciate any thoughts on why Mellel makes this separation so that I can more effectively make use of styles in my work.
Alternatively, I hope I have provided some helpful feedback on how Mellel's styles might be improved. In short, I would eliminate the distinction between character and paragraph styles, add the ability to link styles hierarchically as in OpenOffice, and emphasize that style variations are best used to represent logical formatting within another style.
In my mind, the overarching purpose of styles is to move from descriptive formatting to logical formatting. Instead of saying "I want this piece of text to be Arial 16pt bold," I can say "I want this text to be a level one header," which also means that all level 1 headers will have the same formatting.
It seems that separating the character style options from the paragraph styles makes it harder to focus on logical formatting. Instead of saying, "I want this text to be a level 1 header," I now have to say "I want the paragraph features--spacing, indent, etc.--to be like the level 1 header paragraph, and I want the character features--font, size, etc.--to be like a level 1 header." In other words, instead of thinking about just the logical description (level 1 header), I am thinking about 2 aspects.
In fact, the two aspects I am thinking about are probably descriptive formatting issues--exactly what styles are supposed to move away from! This becomes evident if one makes use of the ability to associate a character style with multiple paragraph styles. Let's take a body text paragraph style and two character styles: Char1 and Char2. How would one decide to use Char1 rather than Char2? It would be a different of character formatting: I want to use Char1's font (for example) for body text rather than Char2. That means that I am thinking about Char1 and Char2 in terms of fonts rather than logical functions, and it would make sense to name Char1 and Char2 by their fonts. Thus, the abstraction from description falls apart and the character styles become descriptive rather than logical. In this case, it would make more sense to just include the character information within the logical style "body text," since changing from Char1 to Char2 is no different than defining the logical style of body text to include the characteristics included within the character style.
(I can't think of an example where one would think of Char1 and Char2 in logical terms but would still want to separate character formatting from paragraph formatting. The best example I can think of is having the character styles of normal text and small text and choosing which one to associate with the body text paragraph style. Why would that be better than having font size included as part of the "body text" style definition and deciding how large or small to make body text?)
What about reusing a character style in multiple paragraph styles? Let's take a body text character style and use it in both a body text paragraph style and a block quote paragraph style. In this situation, one manages to keep the focus on logical formatting rather than descriptive formatting. But, is there an advantage to this approach over having all of the formatting--character and paragraph--in one style? The only advantage I can think of is that it becomes possible to change the body text font in one place and have it change both paragraph styles at once.
But the ability to link styles together shouldn't necessarily depend on a separation between character formatting and paragraph formatting. I might want to link the size of the first line indents between the body text style and the block quote style, so that if I change the body text to indent 2ems instead of .5in, all the indents will change in a similar manner. How does separating character formatting from paragraph formatting help here? For this situation, I think OpenOffice does a good job in allowing one to link styles; the features of a child style that are changed from the parent become independent, but if a shared feature is changed in the parent, it changes in all of its children as well. Is there something that Mellel's style setup allows one to do that is not possible to replicate in this manner?
Finally, one might just define a paragraph style and an associated character style for each logical function. This seems to be the preference for Mellel's default style set: the body paragraph style is associated with the body character style, the title paragraph style with the title character style, and so forth. This just seems to result in the need to set up more styles initially--instead of defining (say) 10 initial styles, one defines 10 paragraph styles and 10 character styles. The inelegance of this approach is almost painful in the case of note styles. In Mellel's default style set, there are four note styles (footnote, footnote small, endnote, and endnote small), two paragraph styles (note text and note text small), and two character styles (note text and note text small). That's 8 styles for 2 kinds of notes (since mixing footnote and footnote small, or endnote and endnote small, would make one's formatting inconsistent and defeat the point of styles)!
In all of these situations, the character styles become focused on description rather than logical function. (In the notes example, the paragraph styles also become descriptive.) If one wants to do character-level styling logically, the way Mellel handles style variations seems far more useful. For instance, style variation A is normal text, B is emphasized text (which is a logical definition: one emphasizes roman text by italicizing it but emphasizes italics text by setting it back in roman, or making it bold. Thus, how B is described will vary between body text, which is normally roman, and a header level that is normally italicized, but the logical function is the same in either case.).
I hope I have clearly laid out why I think Mellel's separation between character and paragraph styles doesn't make sense to me. I would appreciate any thoughts on why Mellel makes this separation so that I can more effectively make use of styles in my work.
Alternatively, I hope I have provided some helpful feedback on how Mellel's styles might be improved. In short, I would eliminate the distinction between character and paragraph styles, add the ability to link styles hierarchically as in OpenOffice, and emphasize that style variations are best used to represent logical formatting within another style.