File: ls.pyx

package info (click to toggle)
obitools 3.0.1~b26%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 26,788 kB
  • sloc: ansic: 24,299; python: 657; sh: 27; makefile: 20
file content (41 lines) | stat: -rwxr-xr-x 1,095 bytes parent folder | download | duplicates (2)
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
#cython: language_level=3

from obitools3.uri.decode import open_uri
from obitools3.apps.config import logger
from obitools3.dms import DMS
from obitools3.dms.taxo.taxo cimport Taxonomy
from obitools3.apps.optiongroups import addMinimalInputOption
from obitools3.utils cimport tostr, bytes2str_object

 
__title__="Print a preview of a DMS, view, column...."


def addOptions(parser):    
    addMinimalInputOption(parser)
    group = parser.add_argument_group('obi ls specific options')

    group.add_argument('-l',
                     action="store_true", dest="ls:longformat",
                     default=False,
                     help="Detailed list in long format with all metadata.")


def run(config):

    DMS.obi_atexit()
    
    logger("info", "obi ls")

    # Open the input
    input = open_uri(config['obi']['inputURI'])
    if input is None:
        raise Exception("Could not read input")
    
    # Print representation
    if config['ls']['longformat']:
        print(input[1].repr_longformat())
    else:
        print(repr(input[1]))
    
    input[0].close(force=True)