make the changelog text wrapper respect arma's no-initial-openparen rule

This commit is contained in:
Nick Mathewson 2014-05-14 12:56:09 -04:00
parent 585582fc8c
commit 747f368c6d

View File

@ -23,6 +23,8 @@ import sys
# 100 * the fourth power of overflowed characters
# PLUS
# .1 * a bit more than the cube of ragged space on the last line.
# PLUS
# OPENPAREN_PENALTY for each line that starts with (
#
# We use an obvious dynamic programming algorithm to sorta approximate this.
# It's not coded right or optimally, but it's fast enough for changelogs
@ -44,6 +46,8 @@ OVERFLOW_PENALTY = 2000
ORPHAN_PENALTY = 10000
OPENPAREN_PENALTY = 200
def generate_wrapping(words, divisions):
lines = []
last = 0
@ -65,6 +69,9 @@ def wrapping_quality(words, divisions, width1, width2):
else:
width = width2
if line[0:1] == '(':
total += OPENPAREN_PENALTY
if length > width:
total += OVERFLOW_PENALTY * (
(length - width) ** OVERFLOW_EXPONENT )