Skip to content
Kinematics edited this page Jul 23, 2019 · 3 revisions

The commandline version of NetTally allows you to run a tally from the commandline of any system that has .NET Core 1.1 installed. This includes Linux and OSX systems.

Running the commandline program

dotnet nettally.dll <options> <url>

Note that the parameter options may be placed before or after the url that's being tallied.

Parameters

All tally and output options from the main WPF version of NetTally may be accessed via parameter options in the commandline version of the program. The only feature that does not have an equivalent is the Manage Votes window.

Each parameter has a long form, and some have short forms. The long form requires a double hyphen (eg: --threadmark), while the short form only uses a single hyphen (eg: -k).

Any parameter that needs to have a value associated with it (eg: the starting post) should have that value placed after the option flag. If the parameter requires a string value (eg: custom threadmark filters), then the string must be enclosed in quotation marks. (eg: --threadmarkfilters "omake, interlude").

General Parameters

URL

The url for the thread being tallied is a required parameter (also, the only required parameter). It may be copied directly from the browser's location bar, and does not need to be edited as long as the program knows how to determine the base thread from the URL (which should be the case for all actively supported forum types).

No special parameter indicator (such as the -v for Verbose) is needed for the URL. It will be treated as the one separate item on the commandline.

Verbose

Syntax: -v or --verbose

If the verbose flag is set, the program will print the progress output to the stderr channel while it is trying to load the pages from the thread. Because it's being output to the stderr channel, if you pipe the output from running the program as a whole to another tool (eg: the clipboard), the progress data will still show up in the terminal, while the program output is piped to the selected output.

Enable Debug Mode

Syntax: --debug

Set this to enable debug mode.

See also: Debug Mode

Disable Web Proxy

Syntax: --disablewebproxy

Set this to disable the internal web proxy when loading web pages.

See also: Disable web proxy

Post Range Parameters

Threadmark search

Syntax: -k or --threadmark

This defaults to on if no starting or ending post numbers are provided. If set, it will attempt to find the starting post number for the tally based on any threadmarks for the given thread.

If starting or ending post numbers are given, and this flag is not set, then it will not search for any threadmarks. If starting or ending post numbers are given, and this flag is set, then it will search for a threadmark, but fall back to the explicit post numbers if no threadmark is found.

See also: Selecting the range of posts to tally

Starting post

Syntax: -s <number> or --start <number>

This defines the first post number that should be tallied within the thread.

See also: Selecting the rage of posts to tally

Ending post

Syntax: -e <number> or --end <number>

This defines the last post number that should be tallied within the thread. If it is omitted, or given a value of 0, the tally will run to the end of the thread.

See also: Selecting the rage of posts to tally

Posts per page

Syntax: --postsperpage <number>

Use this to define how many posts are on each page of the thread.

The default value for Sufficient Velocity and SpaceBattles (and other XenForo forums) is 25; for Questionable Questing is 30; and for vBulletin forums is 20.

See also: Posts per page

Quest Processing Parameters - General

Partition Mode

Syntax: --partition <partition mode>
Valid partition modes: None, ByLine, ByBlock, ByLineTask, ByBlockAll
Default if no value given: None

The partition mode values are case-sensitive. (This is a bug in the commandline option parsing library. They should be case-insensitive.)

Use this option to set the partition mode for votes in the tally.

See also: Partitioning Modes

Whitespace and punctuation is significant

Syntax: --whitespace

Set this to indicate that the option to treat whitespace and punctuation as significant within each vote line should be true.

See also: Whitespace/Punctuation is significant

Case is significant

Syntax: --case

Set this to indicate that the option to treat case as significant within each vote line should be true.

See also: Case is significant

Plan references must be labeled

Syntax: --mustlabelplans

Set this to indicate that voters must vote for Plan MyPlanName, rather than just MyPlanName, to be counted as voting for MyPlanName.

See also: Plan references must be labeled

Forbid vote label plans

Syntax: --nolabelplans

Set this to indicate that plan labels should not be considered valid for creating plans in the tally.

See also: Forbid vote plan labels

No user proxy votes

Syntax: --nouserproxy

Set this to indicate that user proxy votes will not be allowed.

See also: Disable user proxies

Pin proxy votes

Syntax: --forcepinproxy

Set this to indicate that all user proxy votes will be considered 'pinned'.

See also: Force pinned user proxies

Ignore spoilers

Syntax: --ignorespoilers

Set this to indicate that the tally program should ignore spoilers when constructing votes.

See also: Ignore spoilers

Trim long vote lines

Syntax: --trim

Set this to indicate that the program should try to trim long vote lines.

See also: Trim extended vote descriptions

Quest Processing Parameters - Filters

Threadmark filters

Syntax: --threadmarkfilters "<filters>"
Valid filters: See the wiki section on filters.

Use this to set filters that you want skipped when searching for the last threadmark.

See also: Custom threadmark filters

Username filters

Syntax: --usernamefilters "<filters>"
Valid filters: See the wiki section on filters.

Use this to define usernames to be filtered out of (or included in) the tally.

See also: Custom username filters

Post filters

Syntax: --postfilters "<filters>"
Valid filters: See the wiki section on filters.

Use this to define posts that should not be included in the tally.

See also: Custom task filters

Task filters

Syntax: --taskfilters "<filters>"
Valid filters: See the wiki section on filters.

Use this to define specific tasks to be included in the tally.

See also: Custom task filters

Tally Output Parameters

Display Mode

Syntax: --display <display mode>
Valid display modes: SpoilerAll, Normal, Compact, NormalNoVoters, CompactNoVoters
Default if no value given: SpoilerAll

The display mode values are case-sensitive. (This is a bug in the commandline option parsing library. They should be case-insensitive.)

Use this option to set the display mode for the tally output.

See also: Display Modes

Full Spoilers

Syntax: --spoilerall Default if not used: False

Set this option to enable spoilers around the entirety of the generated output.

See also: Use full spoilers

Display Plans with No Votes

Syntax: --display0votes Default if not used: False

Set this option to enable display of votes for which there are no users who vote for it. That is, for plans that were created, but not voted for.

See also: Display plans with no votes