v1.5.5
This commit is contained in:
110
main.py
Normal file
110
main.py
Normal file
@@ -0,0 +1,110 @@
|
||||
import configparser
|
||||
import sys,os
|
||||
import fun
|
||||
version = "1.5.0"
|
||||
|
||||
config = configparser.ConfigParser()
|
||||
if not os.path.exists(os.path.expanduser('~') + '/.ashrc'):
|
||||
with open(os.path.expanduser('~') + '/.ashrc', 'w') as f:
|
||||
pass
|
||||
config.read(os.path.expanduser('~') + '/.ashrc')
|
||||
if not config.has_option('ash', 'ash_theme'):
|
||||
# 添加新的节(section)
|
||||
config.add_section('ash')
|
||||
config.set('ash', 'ash_theme', 'default')
|
||||
with open(os.path.expanduser('~') + '/.ashrc', 'w') as f:
|
||||
config.write(f)
|
||||
|
||||
if not config.has_option('ash', 'plugin'):
|
||||
config.set('ash', 'plugin', '')
|
||||
with open(os.path.expanduser('~') + '/.ashrc', 'w') as f:
|
||||
config.write(f)
|
||||
|
||||
def hhelp():
|
||||
print(f"""
|
||||
AutozShell v{version}
|
||||
ash
|
||||
-v version
|
||||
""")
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
|
||||
if len(sys.argv) > 1:
|
||||
if sys.argv[1] == '-h':
|
||||
hhelp()
|
||||
|
||||
elif sys.argv[1] == '-v':
|
||||
print(f"AutozShell v{version}")
|
||||
|
||||
|
||||
elif sys.argv[1] == 'theme':
|
||||
# if len(sys.argv) > 2:
|
||||
# 判断theme目录里有没有这个主题文件
|
||||
# print(os.listdir("./theme/" + sys.argv[2]))
|
||||
if sys.argv[2] in os.listdir("./theme"):
|
||||
print(f"Set theme to {sys.argv[2]}")
|
||||
os.system("python3 ./theme/" + sys.argv[2] + "/theme.py")
|
||||
config.set('ash', 'ash_theme', sys.argv[2])
|
||||
with open(os.path.expanduser('~') + '/.ashrc', 'w') as f:
|
||||
config.write(f)
|
||||
|
||||
elif sys.argv[1] == 'plugin':
|
||||
if len(sys.argv) > 2:
|
||||
# 判断plugin目录里有没有这个插件文件
|
||||
if sys.argv[2] in os.listdir("./plugin"):
|
||||
|
||||
print(f"Set plugin to {sys.argv[2]}")
|
||||
if config.get('ash', 'plugin') == '':
|
||||
config.set('ash', 'plugin', sys.argv[2])
|
||||
else:
|
||||
config.set('ash', 'plugin', config['ash']['plugin'] + "," + sys.argv[2])
|
||||
|
||||
with open(os.path.expanduser('~') + '/.ashrc', 'w') as f:
|
||||
config.write(f)
|
||||
print("插件已添加,请重新启动ash以生效")
|
||||
|
||||
|
||||
if sys.argv[2] == 'list':
|
||||
print(f"Plugin list: {config['ash']['plugin']}")
|
||||
|
||||
# 取消插件
|
||||
elif sys.argv[1] == 'unplugin':
|
||||
if len(sys.argv) > 2:
|
||||
|
||||
# 判断plugin目录里有没有这个插件文件
|
||||
if sys.argv[2] in os.listdir("./plugin"):
|
||||
|
||||
print(f"Unset plugin to {sys.argv[2]}")
|
||||
|
||||
pluginlist = config['ash']['plugin'].split(',')
|
||||
|
||||
pluginlist.remove(sys.argv[2])
|
||||
|
||||
config.set('ash', 'plugin', ','.join(pluginlist))
|
||||
|
||||
with open(os.path.expanduser('~') + '/.ashrc', 'w') as f:
|
||||
config.write(f)
|
||||
|
||||
print("插件已取消,请重新启动ash以生效")
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
elif not sys.argv[1] in fun.fun_list:
|
||||
# 判断是不是sh文件
|
||||
if sys.argv[1].endswith('.sh'):
|
||||
|
||||
os.system(f"bash {sys.argv[1]}")
|
||||
else:
|
||||
print(f"Command not found: {sys.argv[1]}")
|
||||
|
||||
|
||||
|
||||
else:
|
||||
print(f"""AutozShell {version}
|
||||
Help:ash -h""")
|
||||
import chatmode
|
||||
Reference in New Issue
Block a user