mirror of
https://github.com/evennia/evennia.git
synced 2026-04-05 23:47:16 +02:00
Markup, whitespace, typo and code style fixes
This commit is contained in:
parent
dc1545cb27
commit
5111fb9a1e
1 changed files with 36 additions and 27 deletions
|
|
@ -44,6 +44,7 @@ _DA = object.__delattr__
|
|||
|
||||
_DEFAULT_WIDTH = settings.CLIENT_DEFAULT_WIDTH
|
||||
|
||||
|
||||
def is_iter(iterable):
|
||||
"""
|
||||
Checks if an object behaves iterably.
|
||||
|
|
@ -62,6 +63,7 @@ def is_iter(iterable):
|
|||
"""
|
||||
return hasattr(iterable, '__iter__')
|
||||
|
||||
|
||||
def make_iter(obj):
|
||||
"""
|
||||
Makes sure that the object is always iterable.
|
||||
|
|
@ -201,7 +203,7 @@ def justify(text, width=_DEFAULT_WIDTH, align="f", indent=0):
|
|||
distribute odd spaces randomly to one of the gaps.
|
||||
"""
|
||||
line_rest = width - (wlen + ngaps)
|
||||
gap = " " # minimum gap between words
|
||||
gap = " " # minimum gap between words
|
||||
if line_rest > 0:
|
||||
if align == 'l':
|
||||
line[-1] += " " * line_rest
|
||||
|
|
@ -211,7 +213,7 @@ def justify(text, width=_DEFAULT_WIDTH, align="f", indent=0):
|
|||
pad = " " * (line_rest // 2)
|
||||
line[0] = pad + line[0]
|
||||
line[-1] = line[-1] + pad + " " * (line_rest % 2)
|
||||
else: # align 'f'
|
||||
else: # align 'f'
|
||||
gap += " " * (line_rest // max(1, ngaps))
|
||||
rest_gap = line_rest % max(1, ngaps)
|
||||
for i in range(rest_gap):
|
||||
|
|
@ -250,8 +252,7 @@ def justify(text, width=_DEFAULT_WIDTH, align="f", indent=0):
|
|||
wlen += word[1]
|
||||
ngaps += 1
|
||||
|
||||
|
||||
if line: # catch any line left behind
|
||||
if line: # catch any line left behind
|
||||
lines.append(_process_line(line))
|
||||
indentstring = " " * indent
|
||||
return "\n".join([indentstring + line for line in lines])
|
||||
|
|
@ -360,7 +361,7 @@ def time_format(seconds, style=0):
|
|||
minutes = seconds // 60
|
||||
seconds -= minutes * 60
|
||||
|
||||
retval = ""
|
||||
retval = ""
|
||||
if style == 0:
|
||||
"""
|
||||
Standard colon-style output.
|
||||
|
|
@ -522,13 +523,13 @@ def pypath_to_realpath(python_path, file_ending='.py', pypath_prefixes=None):
|
|||
"""
|
||||
path = python_path.strip().split('.')
|
||||
plong = osjoin(*path) + file_ending
|
||||
pshort = osjoin(*path[1:]) + file_ending if len(path) > 1 else plong # in case we had evennia. or mygame.
|
||||
pshort = osjoin(*path[1:]) + file_ending if len(path) > 1 else plong # in case we had evennia. or mygame.
|
||||
prefixlong = [osjoin(*ppath.strip().split('.'))
|
||||
for ppath in make_iter(pypath_prefixes)] \
|
||||
if pypath_prefixes else []
|
||||
for ppath in make_iter(pypath_prefixes)] \
|
||||
if pypath_prefixes else []
|
||||
prefixshort = [osjoin(*ppath.strip().split('.')[1:])
|
||||
for ppath in make_iter(pypath_prefixes) if len(ppath.strip().split('.')) > 1] \
|
||||
if pypath_prefixes else []
|
||||
for ppath in make_iter(pypath_prefixes) if len(ppath.strip().split('.')) > 1]\
|
||||
if pypath_prefixes else []
|
||||
paths = [plong] + \
|
||||
[osjoin(_EVENNIA_DIR, prefix, plong) for prefix in prefixlong] + \
|
||||
[osjoin(_GAME_DIR, prefix, plong) for prefix in prefixlong] + \
|
||||
|
|
@ -616,6 +617,7 @@ dbid_to_obj = dbref_to_obj
|
|||
_UNICODE_MAP = {"EM DASH": "-", "FIGURE DASH": "-", "EN DASH": "-", "HORIZONTAL BAR": "-",
|
||||
"HORIZONTAL ELLIPSIS": "...", "RIGHT SINGLE QUOTATION MARK": "'"}
|
||||
|
||||
|
||||
def latinify(unicode_string, default='?', pure_ascii=False):
|
||||
"""
|
||||
Convert a unicode string to "safe" ascii/latin-1 characters.
|
||||
|
|
@ -643,7 +645,7 @@ def latinify(unicode_string, default='?', pure_ascii=False):
|
|||
# point name; e.g., since `name(u'á') == 'LATIN SMALL
|
||||
# LETTER A WITH ACUTE'` translate `á` to `a`. However, in
|
||||
# some cases the unicode name is still "LATIN LETTER"
|
||||
# although no direct equivalent in the Latin alphabeth
|
||||
# although no direct equivalent in the Latin alphabet
|
||||
# exists (e.g., Þ, "LATIN CAPITAL LETTER THORN") -- we can
|
||||
# avoid these cases by checking that the letter name is
|
||||
# composed of one letter only.
|
||||
|
|
@ -910,6 +912,8 @@ def delay(timedelay, callback, *args, **kwargs):
|
|||
|
||||
_TYPECLASSMODELS = None
|
||||
_OBJECTMODELS = None
|
||||
|
||||
|
||||
def clean_object_caches(obj):
|
||||
"""
|
||||
Clean all object caches on the given object.
|
||||
|
|
@ -1146,8 +1150,6 @@ def all_from_module(module):
|
|||
# module if available (try to avoid not imports)
|
||||
members = getmembers(mod, predicate=lambda obj: getmodule(obj) in (mod, None))
|
||||
return dict((key, val) for key, val in members if not key.startswith("_"))
|
||||
#return dict((key, val) for key, val in mod.__dict__.items()
|
||||
# if not (key.startswith("_") or ismodule(val)))
|
||||
|
||||
|
||||
def callables_from_module(module):
|
||||
|
|
@ -1209,7 +1211,7 @@ def variable_from_module(module, variable=None, default=None):
|
|||
else:
|
||||
# get all
|
||||
result = [val for key, val in mod.__dict__.items()
|
||||
if not (key.startswith("_") or ismodule(val))]
|
||||
if not (key.startswith("_") or ismodule(val))]
|
||||
|
||||
if len(result) == 1:
|
||||
return result[0]
|
||||
|
|
@ -1348,6 +1350,7 @@ def class_from_module(path, defaultpaths=None):
|
|||
# alias
|
||||
object_from_module = class_from_module
|
||||
|
||||
|
||||
def init_new_player(player):
|
||||
"""
|
||||
Deprecated.
|
||||
|
|
@ -1442,7 +1445,7 @@ def string_partial_matching(alternatives, inp, ret_index=True):
|
|||
# (this will invalidate input in the wrong word order)
|
||||
submatch = [last_index + alt_num for alt_num, alt_word
|
||||
in enumerate(alt_words[last_index:])
|
||||
if alt_word.startswith(inp_word)]
|
||||
if alt_word.startswith(inp_word)]
|
||||
if submatch:
|
||||
last_index = min(submatch) + 1
|
||||
score += 1
|
||||
|
|
@ -1488,7 +1491,7 @@ def format_table(table, extra_space=1):
|
|||
for ir, row in enumarate(ftable):
|
||||
if ir == 0:
|
||||
# make first row white
|
||||
string += "\n{w" + ""join(row) + "{n"
|
||||
string += "\n|w" + ""join(row) + "|n"
|
||||
else:
|
||||
string += "\n" + "".join(row)
|
||||
print string
|
||||
|
|
@ -1539,6 +1542,8 @@ def get_evennia_pids():
|
|||
|
||||
from gc import get_referents
|
||||
from sys import getsizeof
|
||||
|
||||
|
||||
def deepsize(obj, max_depth=4):
|
||||
"""
|
||||
Get not only size of the given object, but also the size of
|
||||
|
|
@ -1562,21 +1567,22 @@ def deepsize(obj, max_depth=4):
|
|||
|
||||
"""
|
||||
def _recurse(o, dct, depth):
|
||||
if max_depth >= 0 and depth > max_depth:
|
||||
if 0 <= max_depth < depth:
|
||||
return
|
||||
for ref in get_referents(o):
|
||||
idr = id(ref)
|
||||
if not idr in dct:
|
||||
if idr not in dct:
|
||||
dct[idr] = (ref, getsizeof(ref, default=0))
|
||||
_recurse(ref, dct, depth+1)
|
||||
sizedict = {}
|
||||
_recurse(obj, sizedict, 0)
|
||||
#count = len(sizedict) + 1
|
||||
size = getsizeof(obj) + sum([p[1] for p in sizedict.values()])
|
||||
return size
|
||||
|
||||
# lazy load handler
|
||||
_missing = object()
|
||||
|
||||
|
||||
class lazy_property(object):
|
||||
"""
|
||||
Delays loading of property until first access. Credit goes to the
|
||||
|
|
@ -1597,14 +1603,14 @@ class lazy_property(object):
|
|||
|
||||
"""
|
||||
def __init__(self, func, name=None, doc=None):
|
||||
"Store all properties for now"
|
||||
"""Store all properties for now"""
|
||||
self.__name__ = name or func.__name__
|
||||
self.__module__ = func.__module__
|
||||
self.__doc__ = doc or func.__doc__
|
||||
self.func = func
|
||||
|
||||
def __get__(self, obj, type=None):
|
||||
"Triggers initialization"
|
||||
"""Triggers initialization"""
|
||||
if obj is None:
|
||||
return self
|
||||
value = obj.__dict__.get(self.__name__, _missing)
|
||||
|
|
@ -1614,7 +1620,9 @@ class lazy_property(object):
|
|||
return value
|
||||
|
||||
_STRIP_ANSI = None
|
||||
_RE_CONTROL_CHAR = re.compile('[%s]' % re.escape(''.join([unichr(c) for c in range(0,32)])))# + range(127,160)])))
|
||||
_RE_CONTROL_CHAR = re.compile('[%s]' % re.escape(''.join([unichr(c) for c in range(0, 32)]))) # + range(127,160)])))
|
||||
|
||||
|
||||
def strip_control_sequences(string):
|
||||
"""
|
||||
Remove non-print text sequences.
|
||||
|
|
@ -1675,12 +1683,12 @@ def m_len(target):
|
|||
return len(ANSI_PARSER.strip_mxp(target))
|
||||
return len(target)
|
||||
|
||||
#------------------------------------------------------------------
|
||||
# -------------------------------------------------------------------
|
||||
# Search handler function
|
||||
#------------------------------------------------------------------
|
||||
# -------------------------------------------------------------------
|
||||
#
|
||||
# Replace this hook function by changing settings.SEARCH_AT_RESULT.
|
||||
#
|
||||
|
||||
|
||||
def at_search_result(matches, caller, query="", quiet=False, **kwargs):
|
||||
"""
|
||||
|
|
@ -1696,7 +1704,7 @@ def at_search_result(matches, caller, query="", quiet=False, **kwargs):
|
|||
should the result pass through.
|
||||
caller (Object): The object performing the search and/or which should
|
||||
receive error messages.
|
||||
query (str, optional): The search query used to produce `matches`.
|
||||
query (str, optional): The search query used to produce `matches`.
|
||||
quiet (bool, optional): If `True`, no messages will be echoed to caller
|
||||
on errors.
|
||||
|
||||
|
|
@ -1774,6 +1782,7 @@ class LimitedSizeOrderedDict(OrderedDict):
|
|||
super(LimitedSizeOrderedDict, self).update(*args, **kwargs)
|
||||
self._check_size()
|
||||
|
||||
|
||||
def get_game_dir_path():
|
||||
"""
|
||||
This is called by settings_default in order to determine the path
|
||||
|
|
@ -1784,7 +1793,7 @@ def get_game_dir_path():
|
|||
|
||||
"""
|
||||
# current working directory, assumed to be somewhere inside gamedir.
|
||||
for i in range(10):
|
||||
for _ in range(10):
|
||||
gpath = os.getcwd()
|
||||
if "server" in os.listdir(gpath):
|
||||
if os.path.isfile(os.path.join("server", "conf", "settings.py")):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue