blob: af7cee33683d8fc5a093ac770f05d2cb4c28ac34 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# Copyright (C) 2009-2013 Roman Zimbelmann <hut@hut.pm>
# This software is distributed under the terms of the GNU GPL version 3.
"""A console file manager with VI key bindings.
It provides a minimalistic and nice curses interface with a view on the
directory hierarchy. The secondary task of ranger is to figure out which
program you want to use to open your files with.
"""
import sys
import os
# Information
__license__ = 'GPL3'
__version__ = '1.6.1'
__author__ = __maintainer__ = 'Roman Zimbelmann'
__email__ = 'hut@hut.pm'
# Constants
RANGERDIR = os.path.dirname(__file__)
TICKS_BEFORE_COLLECTING_GARBAGE = 100
TIME_BEFORE_FILE_BECOMES_GARBAGE = 1200
MAX_RESTORABLE_TABS = 3
MACRO_DELIMITER = '%'
DEFAULT_PAGER = 'less'
LOGFILE = '/tmp/ranger_errorlog'
CACHEDIR = os.path.expanduser("~/.cache/ranger")
USAGE = '%prog [options] [path]'
VERSION = 'ranger-master %s\n\nPython %s' % (__version__, sys.version)
# If the environment variable XDG_CONFIG_HOME is non-empty, CONFDIR is ignored
# and the configuration directory will be $XDG_CONFIG_HOME/ranger instead.
CONFDIR = '~/.config/ranger'
# Debugging functions. These will be activated when run with --debug.
# Example usage in the code:
# import ranger; ranger.log("hello world")
def log(*objects, **keywords):
"""Writes objects to a logfile (for the purpose of debugging only.)
Has the same arguments as print() in python3.
"""
from ranger import arg
if LOGFILE is None or not arg.debug or arg.clean: return
start = keywords.get('start', 'ranger:')
sep = keywords.get('sep', ' ')
end = keywords.get('end', '\n')
_file = keywords['file'] if 'file' in keywords else open(LOGFILE, 'a')
_file.write(sep.join(map(str, (start, ) + objects)) + end)
def log_traceback():
from ranger import arg
if LOGFILE is None or not arg.debug or arg.clean: return
import traceback
traceback.print_stack(file=open(LOGFILE, 'a'))
from ranger.core.main import main
|