Difference between revisions of "Mount Sneffels"

From Dissent
Jump to navigation Jump to search
(Two sentence wonder.)
 
(Adapting internal documentation for use here.)
 
Line 1: Line 1:
'''Mount Sneffels''' is a Python framework for converting a CSV file to pages for the LPRC Button and Sticker Guide.  It's being written and maintained by [[James Gholston]].
+
'''Mount Sneffels''' is a Python framework for converting a CSV file to pages for the LPRC Button and Sticker Guide.  It's written and and currently maintained by [[James Gholston]].
 +
 
 +
 
 +
Configuration file should be saved in a robust format such as .ods until it's time to feed it into Mt Sneffels.  Then save it as a .csv file (comma separated values text, UTF-8 or maybe 7 bit ASCII for best results)
 +
 
 +
Comments in the spreahsheet start with a number sign (#) in the NAME column and are ignored unless they're a setting value that starts with a hashbang (#!) which a small part of the engine will look at to find settings declared in the spreadsheet/CSV file.
 +
 
 +
If a setting, place its value, if any, in the SORT column.
 +
 
 +
==Spreadsheet Columns and What Should Go In Them==
 +
*'''NAME'''
 +
Message on or terse description of button.  This is also used for anchor tags.  Avoid commas.
 +
MUST BE UNIQUE WITHIN THE SPREADSHEET
 +
 
 +
*'''SORT'''
 +
How to sort this.  ie without articles.
 +
...Or perhaps if the listed name isn't how to sort at all
 +
For use in your spreadsheet software; ignored by Mt Sneffels unless it's a setting value
 +
Mt Sneffels depends on the spreadsheet already being sorted.
 +
 
 +
*'''DESCR'''
 +
Explanation of button message. 
 +
Include full name or term of anything that's an abbreviation or acronym on the button
 +
and source of button message if known.
 +
If specific to a single state, say it here.
 +
 
 +
*'''SEE_INSTEAD'''
 +
If this is here to direct the reader to elsewhere, that elsewhere goes here. 
 +
Must be a valid NAME or a comma separated list of valid NAMEs
 +
These items should only have NAME, SORT, and SEE_INSTEAD populated
 +
 
 +
*'''SEE_ALSO'''
 +
Related message(s) that might be of interest, especially if this one isn't available at the event table
 +
Must be a valid NAME or a comma separated list of valid NAMEs
 +
 
 +
*'''Descr_Auth'''
 +
Who wrote the description.  Internal documentation only, unused by Mt Sneffels
 +
 
 +
*'''Longdescr_Auth'''
 +
Who wrote the long description, if different from short description authorship.
 +
Internal documentation only, unused by Mt Sneffels
 +
 
 +
*'''STRUCT'''
 +
Which structural category?  One application of this information is to better separate into specialized button sets.
 +
 
 +
*'''TOPIC'''
 +
Which topic category?  One application of this information is to better separate into specialized button sets.
 +
 
 +
*'''LPRC Tier'''
 +
Tier assignment to assist with quantities in sets; designed for the audiences that LPRC template is aimed at
 +
:    I: High Demand & Core Principles
 +
:    II: Strong and Popular Libertarian Stances
 +
:  III: Targeted Policy Advocacy
 +
:    IV: Deep Libertarian Concepts
 +
:    V: Special Interest & Complex or Very Low Demand
 +
 
 +
Internal documentation only, unused by Mt Sneffels
 +
 
 +
*'''CSLSIDE'''
 +
Does this have outreach versions?  (mostly deprecated and only used as a fallback).  Yes the name of this column is a misnomer as it includes more than just CSLSide.
 +
 
 +
*'''LPRC'''
 +
Does this have LPRC versions?  (mostly deprecated and only used as a fallback)
 +
 
 +
*'''SETS'''
 +
List of sets this is included in.  Only for sets that don't have their own columns in this spreadsheet.
 +
Use a comma separated list of sets if more than one.  Best reserved for sets that have a very small set of messages.  If it has a bunch, declare a column for it in #!setcolumns instead.
 +
 
 +
*'''IMG'''
 +
Name of the image showing this.  Must have for release builds.
 +
 
 +
*'''25'''
 +
1 if available in 25mm outreach, otherwise leave blank.
 +
 
 +
*'''O32'''
 +
1 if available in 32mm outreach, otherwise leave blank.
 +
 
 +
*'''O44'''
 +
1 if available in 44mm outreach, otherwise leave blank.
 +
 
 +
*'''O58'''
 +
1 if available in 58mm outreach, otherwise leave blank.
 +
 
 +
*'''O75'''
 +
1 if available in 75mm outreach, otherwise leave blank.
 +
 
 +
*'''OSQ'''
 +
1 if available as square outreach, otherwise leave blank.
 +
 
 +
*'''RSQ'''
 +
1 if available as square LPRC, otherwise leave blank.
 +
 
 +
*'''R25'''
 +
1 if available in 25mm LPRC, otherwise leave blank.
 +
 
 +
*'''R32'''
 +
1 if available in 32mm LPRC, otherwise leave blank.
 +
 
 +
*'''R44'''
 +
1 if available in 44mm LPRC, otherwise leave blank.
 +
 
 +
*'''R58'''
 +
1 if available in 58mm LPRC, otherwise leave blank.
 +
 
 +
*'''R75'''
 +
1 if available in 75mm LPRC, otherwise leave blank.
 +
 
 +
*'''Allbuttons'''
 +
Date current versions added to AllButtonSort or best guess<BR />
 +
YYYY-MM-DD format<BR />
 +
If 2023-03-25 or earlier, set to 2023-03-25<BR />
 +
Internal documentation only, ignored by Mt Sneffels.
 +
 
 +
*'''LPRC 240 58mm, Et C'''
 +
Indications of presence in various button sets.
 +
Depend on setcolumns setting being correctly parsed by Mt Sneffels
 +
 
 +
 
 +
==Spreadsheet-Controlled Settings==
 +
*'''#!basename'''
 +
Used to automatically create directory and file names.  For example, ''Colson_Mill_Catalog_''
 +
 
 +
*'''#!notice'''
 +
Does there need to be a notice or description at the top?  Put it here.  Not yet supported
 +
 
 +
*'''#!cssfile'''
 +
Now supports importing a CSS file.  This is the global CSS.  Page-specific CSS is specified elsewhere and not yet supported.
 +
 
 +
*'''#!width'''
 +
Width of contentboxes.  Include CSS units (ie 3.5in) -- default is unset and that's an option
 +
Support is currently broken.  Just hard code it into the CSS file for now.
 +
 
 +
*'''#!columns'''
 +
How many columns on each page?  Default is 2
 +
Support is currently broken.  Just hard code it into the CSS file for now.
 +
 
 +
*'''#!colwidth'''
 +
column width.  Include CSS units (ie 3.5in)
 +
Support is currently broken.  Just hard code it into the CSS file for now.
 +
 
 +
*'''#!imgwid'''
 +
Fixed width of item images.  Include CSS units (ie 3.33in)
 +
Support is currently broken.  Just hard code it into the CSS file for now.
 +
 
 +
*'''#!debug'''
 +
Debugging level.  0 for almost nothing; 11 to be insane about it
 +
 
 +
*'''#!missing_img'''
 +
Name of image file to use when the one it's supposed to have is missing
 +
 
 +
*'''#!headtitle'''
 +
What to display as the title of the generated HTML page?
 +
 
 +
*'''#!headline'''
 +
What to display as the title within and at the top of the HTML page itself.
 +
 
 +
*'''#!headboxheight'''
 +
How much room to make for the headline and notice?  Include CSS units (ie 1in)
 +
Support is currently broken.  Just hard code it into the CSS file for now.
 +
 
 +
*'''#!debug'''
 +
Set to 0 for minimum debugging output; set to 11 to be insane about it.
 +
 
 +
*'''#!strict'''
 +
Set to 1 or greater to be obnoxious about detected problems; set to 11 to be as obnoxious as possible.
 +
 
 +
*'''#!nosave'''
 +
Do we actually save this (set to 0) or just pretend really hard (set to 1)
 +
 
 +
*'''#!setcolumns'''
 +
Extra columns for set data.  Separate with commas.
 +
 
 +
*'''#!longdescr'''
 +
Preferentially use verbose descriptions when available (set to 1), or prefer short descriptions (set to 0).  As of Colson Mill, there are very few long descriptions.
 +
 
  
{{Subminimal}}
 
  
 
[[Category:Projects]]
 
[[Category:Projects]]

Latest revision as of 21:58, 19 May 2024

Mount Sneffels is a Python framework for converting a CSV file to pages for the LPRC Button and Sticker Guide. It's written and and currently maintained by James Gholston.


Configuration file should be saved in a robust format such as .ods until it's time to feed it into Mt Sneffels. Then save it as a .csv file (comma separated values text, UTF-8 or maybe 7 bit ASCII for best results)

Comments in the spreahsheet start with a number sign (#) in the NAME column and are ignored unless they're a setting value that starts with a hashbang (#!) which a small part of the engine will look at to find settings declared in the spreadsheet/CSV file.

If a setting, place its value, if any, in the SORT column.

Spreadsheet Columns and What Should Go In Them

  • NAME

Message on or terse description of button. This is also used for anchor tags. Avoid commas. MUST BE UNIQUE WITHIN THE SPREADSHEET

  • SORT

How to sort this. ie without articles. ...Or perhaps if the listed name isn't how to sort at all For use in your spreadsheet software; ignored by Mt Sneffels unless it's a setting value Mt Sneffels depends on the spreadsheet already being sorted.

  • DESCR

Explanation of button message. Include full name or term of anything that's an abbreviation or acronym on the button and source of button message if known. If specific to a single state, say it here.

  • SEE_INSTEAD

If this is here to direct the reader to elsewhere, that elsewhere goes here. Must be a valid NAME or a comma separated list of valid NAMEs These items should only have NAME, SORT, and SEE_INSTEAD populated

  • SEE_ALSO

Related message(s) that might be of interest, especially if this one isn't available at the event table Must be a valid NAME or a comma separated list of valid NAMEs

  • Descr_Auth

Who wrote the description. Internal documentation only, unused by Mt Sneffels

  • Longdescr_Auth

Who wrote the long description, if different from short description authorship. Internal documentation only, unused by Mt Sneffels

  • STRUCT

Which structural category? One application of this information is to better separate into specialized button sets.

  • TOPIC

Which topic category? One application of this information is to better separate into specialized button sets.

  • LPRC Tier

Tier assignment to assist with quantities in sets; designed for the audiences that LPRC template is aimed at

I: High Demand & Core Principles
II: Strong and Popular Libertarian Stances
III: Targeted Policy Advocacy
IV: Deep Libertarian Concepts
V: Special Interest & Complex or Very Low Demand

Internal documentation only, unused by Mt Sneffels

  • CSLSIDE

Does this have outreach versions? (mostly deprecated and only used as a fallback). Yes the name of this column is a misnomer as it includes more than just CSLSide.

  • LPRC

Does this have LPRC versions? (mostly deprecated and only used as a fallback)

  • SETS

List of sets this is included in. Only for sets that don't have their own columns in this spreadsheet. Use a comma separated list of sets if more than one. Best reserved for sets that have a very small set of messages. If it has a bunch, declare a column for it in #!setcolumns instead.

  • IMG

Name of the image showing this. Must have for release builds.

  • 25

1 if available in 25mm outreach, otherwise leave blank.

  • O32

1 if available in 32mm outreach, otherwise leave blank.

  • O44

1 if available in 44mm outreach, otherwise leave blank.

  • O58

1 if available in 58mm outreach, otherwise leave blank.

  • O75

1 if available in 75mm outreach, otherwise leave blank.

  • OSQ

1 if available as square outreach, otherwise leave blank.

  • RSQ

1 if available as square LPRC, otherwise leave blank.

  • R25

1 if available in 25mm LPRC, otherwise leave blank.

  • R32

1 if available in 32mm LPRC, otherwise leave blank.

  • R44

1 if available in 44mm LPRC, otherwise leave blank.

  • R58

1 if available in 58mm LPRC, otherwise leave blank.

  • R75

1 if available in 75mm LPRC, otherwise leave blank.

  • Allbuttons

Date current versions added to AllButtonSort or best guess
YYYY-MM-DD format
If 2023-03-25 or earlier, set to 2023-03-25
Internal documentation only, ignored by Mt Sneffels.

  • LPRC 240 58mm, Et C

Indications of presence in various button sets. Depend on setcolumns setting being correctly parsed by Mt Sneffels


Spreadsheet-Controlled Settings

  • #!basename

Used to automatically create directory and file names. For example, Colson_Mill_Catalog_

  • #!notice

Does there need to be a notice or description at the top? Put it here. Not yet supported

  • #!cssfile

Now supports importing a CSS file. This is the global CSS. Page-specific CSS is specified elsewhere and not yet supported.

  • #!width

Width of contentboxes. Include CSS units (ie 3.5in) -- default is unset and that's an option Support is currently broken. Just hard code it into the CSS file for now.

  • #!columns

How many columns on each page? Default is 2 Support is currently broken. Just hard code it into the CSS file for now.

  • #!colwidth

column width. Include CSS units (ie 3.5in) Support is currently broken. Just hard code it into the CSS file for now.

  • #!imgwid

Fixed width of item images. Include CSS units (ie 3.33in) Support is currently broken. Just hard code it into the CSS file for now.

  • #!debug

Debugging level. 0 for almost nothing; 11 to be insane about it

  • #!missing_img

Name of image file to use when the one it's supposed to have is missing

  • #!headtitle

What to display as the title of the generated HTML page?

  • #!headline

What to display as the title within and at the top of the HTML page itself.

  • #!headboxheight

How much room to make for the headline and notice? Include CSS units (ie 1in) Support is currently broken. Just hard code it into the CSS file for now.

  • #!debug

Set to 0 for minimum debugging output; set to 11 to be insane about it.

  • #!strict

Set to 1 or greater to be obnoxious about detected problems; set to 11 to be as obnoxious as possible.

  • #!nosave

Do we actually save this (set to 0) or just pretend really hard (set to 1)

  • #!setcolumns

Extra columns for set data. Separate with commas.

  • #!longdescr

Preferentially use verbose descriptions when available (set to 1), or prefer short descriptions (set to 0). As of Colson Mill, there are very few long descriptions.