pourimoto commited on
Commit
c8eb419
·
verified ·
1 Parent(s): 3dc10af

Create config.py

Browse files
Files changed (1) hide show
  1. config.py +164 -0
config.py ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """
2
+ config.py
3
+ Configuration and constants
4
+ """
5
+
6
+ # ---------------------------------------------------------------------------
7
+ # Directories ignored during scan
8
+ # ---------------------------------------------------------------------------
9
+
10
+ IGNORE_DIRS_DEFAULT = (
11
+ ".git,.idea,.vscode,__pycache__,.pytest_cache,node_modules,"
12
+ "venv,.venv,env,build,dist,.next,.cache,"
13
+ "site-packages,.mypy_cache,target,.gradle,"
14
+ "bin,obj"
15
+ )
16
+
17
+ # ---------------------------------------------------------------------------
18
+ # Binary / ignored extensions
19
+ # ---------------------------------------------------------------------------
20
+
21
+ IGNORE_EXTENSIONS = {
22
+ ".exe",
23
+ ".dll",
24
+ ".so",
25
+ ".dylib",
26
+ ".png",
27
+ ".jpg",
28
+ ".jpeg",
29
+ ".gif",
30
+ ".ico",
31
+ ".svg",
32
+ ".webp",
33
+ ".zip",
34
+ ".rar",
35
+ ".7z",
36
+ ".tar",
37
+ ".gz",
38
+ ".pdf",
39
+ ".mp4",
40
+ ".mp3",
41
+ ".wav",
42
+ ".mov",
43
+ ".woff",
44
+ ".woff2",
45
+ ".ttf",
46
+ ".eot",
47
+ ".pyc",
48
+ ".class",
49
+ ".jar",
50
+ ".db",
51
+ ".sqlite3",
52
+ ".lock",
53
+ ".bin",
54
+ ".dat",
55
+ }
56
+
57
+ # ---------------------------------------------------------------------------
58
+ # Extension → Language
59
+ # ---------------------------------------------------------------------------
60
+
61
+ LANGUAGE_MAP = {
62
+ ".py": "Python",
63
+ ".js": "JavaScript",
64
+ ".jsx": "JavaScript (JSX)",
65
+ ".ts": "TypeScript",
66
+ ".tsx": "TypeScript (TSX)",
67
+ ".html": "HTML",
68
+ ".css": "CSS",
69
+ ".scss": "SCSS",
70
+ ".json": "JSON",
71
+ ".yaml": "YAML",
72
+ ".yml": "YAML",
73
+ ".toml": "TOML",
74
+ ".xml": "XML",
75
+ ".md": "Markdown",
76
+ ".sql": "SQL",
77
+ ".java": "Java",
78
+ ".go": "Go",
79
+ ".rb": "Ruby",
80
+ ".php": "PHP",
81
+ ".c": "C",
82
+ ".cpp": "C++",
83
+ ".cs": "C#",
84
+ ".swift": "Swift",
85
+ ".kt": "Kotlin",
86
+ ".sh": "Shell",
87
+ ".txt": "Text",
88
+ ".env": "Environment",
89
+ ".ini": "INI",
90
+ ".cfg": "Config",
91
+ ".rst": "reStructuredText",
92
+ }
93
+
94
+ # ---------------------------------------------------------------------------
95
+ # Categories
96
+ # ---------------------------------------------------------------------------
97
+
98
+ EXTENSION_CATEGORIES = {
99
+ "Python": {
100
+ ".py",
101
+ },
102
+ "JavaScript / TypeScript": {
103
+ ".js",
104
+ ".jsx",
105
+ ".ts",
106
+ ".tsx",
107
+ },
108
+ "Web": {
109
+ ".html",
110
+ ".css",
111
+ ".scss",
112
+ },
113
+ "Configuration": {
114
+ ".json",
115
+ ".yaml",
116
+ ".yml",
117
+ ".toml",
118
+ ".xml",
119
+ ".ini",
120
+ ".cfg",
121
+ ".env",
122
+ },
123
+ "Documentation": {
124
+ ".md",
125
+ ".txt",
126
+ ".rst",
127
+ },
128
+ "Other Languages": {
129
+ ".java",
130
+ ".go",
131
+ ".rb",
132
+ ".php",
133
+ ".c",
134
+ ".cpp",
135
+ ".cs",
136
+ ".swift",
137
+ ".kt",
138
+ ".sql",
139
+ ".sh",
140
+ },
141
+ }
142
+
143
+ # ---------------------------------------------------------------------------
144
+ # Token estimation
145
+ # ---------------------------------------------------------------------------
146
+
147
+ CHARS_PER_TOKEN = 4.0
148
+
149
+ # ---------------------------------------------------------------------------
150
+ # Output defaults
151
+ # ---------------------------------------------------------------------------
152
+
153
+ DEFAULT_MAX_FILE_SIZE_MB = 2.0
154
+ DEFAULT_MAX_TOKENS = 0
155
+
156
+ OUTPUT_MARKDOWN = "Markdown"
157
+ OUTPUT_XML = "XML"
158
+
159
+ OUTPUT_MD_EXT = "md"
160
+ OUTPUT_XML_EXT = "xml"
161
+
162
+ PREVIEW_LIMIT = 3000
163
+
164
+ MAX_WORKERS = 16