This file is indexed.

/usr/lib/python3/dist-packages/aeidon/__init__.py is in python3-aeidon 0.24.3-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
# -*- coding: utf-8 -*-

# Copyright (C) 2005-2009 Osmo Salomaa
#
# This file is part of Gaupol.
#
# Gaupol is free software: you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
# Foundation, either version 3 of the License, or (at your option) any later
# version.
#
# Gaupol is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along with
# Gaupol. If not, see <http://www.gnu.org/licenses/>.

"""
Reading, writing and manipulating text-based subtitle files.

:mod:`aeidon` is a Python package that provides classes and functions for
dealing with text-based subtitle files of many different formats. Functions
exist for reading and writing subtitle files as well as manipulating subtitle
data, i.e. positions (times or frames) and texts. Two examples of basic use
of the :mod:`aeidon` package follow below.

Converting a file from the SubRip format to the MicroDVD format::

    project = aeidon.Project()
    project.open_main("/path/to/file.srt", "utf_8")
    project.set_framerate(aeidon.framerates.FPS_23_976)
    project.save_main(aeidon.files.new(aeidon.formats.MICRODVD,
                                       "/path/to/file.sub",
                                       "utf_8"))

Making all subtitles in a file appear two seconds earlier::

    project = aeidon.Project()
    project.open_main("/path/to/file.srt", "utf_8")
    project.shift_positions(None, aeidon.as_seconds(-2))
    project.save_main()

:mod:`aeidon` handles positions as either times (as strings of form
``HH:MM:SS.SSS``), frames (as integers) or in some cases seconds (as floats).
All these can be used with functions that edit subtitle data regardless of what
the native position type of the file format used is.

:mod:`aeidon` handles two separate documents that comprise a project -- a main
and a translation document. These correspond to separate files, but the
subtitles are common since positions are shared.

:mod:`aeidon` includes an undo/redo-system. Any subtitle data-editing methods
of :class:`aeidon.Project` (ones marked with the :func:`aeidon.deco.revertable`
decorator) can be undone and redone. If using :mod:`aeidon` in a context where
reverting actions is never needed, greater flexibility can be achieved by
accessing the subtitles directly (via :attr:`aeidon.Project.subtitles`).

:var CONFIG_HOME_DIR: Path to the user's local configuration directory
:var DATA_DIR: Path to the global data directory
:var DATA_HOME_DIR: Path to the user's local data directory
:var DEBUG: ``True`` to perform additional run-time checks

   `DEBUG` is used in many cases at import time and should thus not be set
   directly, but rather by setting a non-blank value, e.g. "1", to either of
   environment variables ``AEIDON_DEBUG`` or ``GAUPOL_DEBUG``.

:var LOCALE_DIR: Path to the global locale directory
:var RE_ANY_TAG: Regular expression for markup tags of any format
:var RUNNING_SPHINX: ``True`` if generating API documentation with sphinx

   `RUNNING_SPHINX` allows one to conditially do some funky things to ensure
   that autogenerated API documentation is correct, while also avoiding that
   funk during normal use of aeidon or gaupol.

:var align_methods: Enumerations for subtitle align methods
:var documents: Enumerations for document types
:var formats: Enumerations for subtitle file format types
:var framerates: Enumerations for framerate types
:var modes: Enumerations for position unit types
:var newlines: Enumerations for newline character types
:var players: Enumerations for video player application types
:var registers: Enumerations for action action reversion register types
"""

import os
import re
import sys

__version__ = "0.24.3"

RUNNING_SPHINX = (sys.argv[0].endswith("autogen.py") or
                  sys.argv[0].endswith("sphinx-build"))

DEBUG = ((bool(os.environ.get("AEIDON_DEBUG", "")) or
          bool(os.environ.get("GAUPOL_DEBUG", "")))
         and not RUNNING_SPHINX)

RE_ANY_TAG = re.compile(r"(^[/\\_]+|<.*?>|\{.*?\})")

from aeidon.paths import *
from aeidon.position import *
from aeidon import deco
from aeidon import i18n
from aeidon import util
from aeidon import temp
from aeidon.contractual import *
from aeidon.delegate import *
from aeidon.singleton import *
from aeidon.mutables import *
from aeidon.observable import *
from aeidon.errors import *
from aeidon.enum import *
from aeidon.enums.align_methods import *
from aeidon.enums.documents import *
from aeidon.enums.framerates import *
from aeidon.enums.modes import *
from aeidon.enums.newlines import *
from aeidon.enums.players import *
from aeidon.enums.registers import *
from aeidon.enums.formats import *
from aeidon import encodings
from aeidon import languages
from aeidon import countries
from aeidon import locales
from aeidon import scripts
from aeidon.metadata import *
from aeidon.calculator import *
from aeidon.finder import *
from aeidon.parser import *
from aeidon.liner import *
from aeidon import containers
from aeidon.subtitle import *
from aeidon.file import *
from aeidon import files
from aeidon.markup import *
from aeidon import tags
from aeidon.converter import *
from aeidon.pattern import *
from aeidon.patternman import *
from aeidon.clipboard import *
from aeidon.revertable import *
from aeidon import agents
from aeidon.project import *
from aeidon.unittest import *