4
4
5
5
rootDir = os .path .dirname (os .path .abspath (__file__ ))
6
6
initDir = os .path .dirname (os .path .abspath (sys .argv [0 ]))
7
- appdataDir = os .path .join (os .getenv ('APPDATA' ), "Furglitch" , "MO2SE" )
8
- logDir = os .path .join (appdataDir , 'logs' , f'{ dt .now ().strftime ('%Y-%m-%d %H%M%S' )} .log' )
7
+ if os .name == 'nt' :
8
+ configDir = os .path .join (os .getenv ('APPDATA' ), "Furglitch" , "MO2SG" )
9
+ log .info ("Windows OS detected" )
10
+ log .info (f"Config Directory: { configDir } " )
11
+ elif os .name == 'posix' :
12
+ configDir = os .path .join (os .path .expanduser ('~' ), ".config" , "Furglitch" , "MO2SG" )
13
+ log .info ("Linux OS detected" )
14
+ log .info (f"Config Directory: { configDir } " )
15
+ else :
16
+ msg .showwarning ("Warning" ,"Unsupported OS" )
17
+ log .warning ("Unsupported OS" )
18
+ sys .exit (1 )
19
+ logDir = os .path .join (configDir , 'logs' , f'{ dt .now ().strftime ('%Y-%m-%d %H%M%S' )} .log' )
9
20
resourceDir = os .path .join (rootDir , "resources" )
10
21
iconDir = os .path .join (resourceDir , "icon.ico" )
11
22
22
33
subCasing = 'Unchanged'
23
34
24
35
# Logging
25
- if not os .path .exists (os .path .join (appdataDir , 'logs' )): os .makedirs (os .path .join (appdataDir , 'logs' ))
36
+ if not os .path .exists (os .path .join (configDir , 'logs' )): os .makedirs (os .path .join (configDir , 'logs' ))
26
37
open (logDir , "w" ).close ()
27
38
log .basicConfig (
28
39
filename = logDir ,
29
40
level = log .DEBUG ,
30
41
format = '%(asctime)s - %(levelname)s - %(message)s' ,
31
42
datefmt = '%Y-%m-%d %H:%M:%S'
32
43
)
33
- log .info ("MO2SE Started" )
44
+ log .info ("MO2SG Started" )
34
45
35
46
# Menu Functions
36
47
def fileNew ():
@@ -216,14 +227,14 @@ def casingSet(type, case):
216
227
217
228
def settingsGet ():
218
229
global theme , themeAccent , header , catCasing , subCasing
219
- if not os .path .exists (os .path .join (appdataDir , 'MO2SE .json' )):
230
+ if not os .path .exists (os .path .join (configDir , 'MO2SG .json' )):
220
231
data = {"theme" : {"name" : theme , "accent" : themeAccent }, "header" : header , "casing" : {"cat" : catCasing , "sub" : subCasing }}
221
- f = open (os .path .join (appdataDir , 'MO2SE .json' ), "w" )
232
+ f = open (os .path .join (configDir , 'MO2SG .json' ), "w" )
222
233
json .dump (data , f , indent = 4 )
223
234
f .close ()
224
235
log .info ("Default Settings File Created" )
225
236
else :
226
- with open (os .path .join (appdataDir , 'MO2SE .json' ), "r" ) as f :
237
+ with open (os .path .join (configDir , 'MO2SG .json' ), "r" ) as f :
227
238
data = json .load (f )
228
239
if data ["theme" ]["name" ] in themeGet ("name" ): theme = data ["theme" ]["name" ]
229
240
else : theme = "Nord"
@@ -239,7 +250,7 @@ def settingsGet():
239
250
240
251
def settingsCheck ():
241
252
global theme , themeAccent , header , catCasing , subCasing
242
- with open (os .path .join (appdataDir , 'MO2SE .json' ), "r" ) as f :
253
+ with open (os .path .join (configDir , 'MO2SG .json' ), "r" ) as f :
243
254
data = json .load (f )
244
255
if theme == data ["theme" ]["name" ] and themeAccent == data ["theme" ]["accent" ] and header == data ["header" ] and catCasing == data ["casing" ]["cat" ] and subCasing == data ["casing" ]["sub" ]:
245
256
log .info ("Settings match saved settings" )
@@ -250,7 +261,7 @@ def settingsCheck():
250
261
251
262
def settingsSave ():
252
263
global theme , header , themeAccent , casing
253
- with open (os .path .join (appdataDir + '/MO2SE .json' ), "w" ) as f :
264
+ with open (os .path .join (configDir + '/MO2SG .json' ), "w" ) as f :
254
265
data = {"theme" : {"name" : theme , "accent" : themeAccent }, "header" : header , "casing" : {"cat" : catCasing , "sub" : subCasing }}
255
266
json .dump (data , f , sort_keys = True , indent = 4 )
256
267
log .info (f"Settings Saved: Theme { theme } , Theme Accent { themeAccent } , Header { header } , Category Casing { catCasing } , Subcategory Casing { subCasing } " )
0 commit comments