shell.fish fix + scripts/ss.py for shellgpt

This commit is contained in:
Anton Volnuhin 2023-05-08 05:48:02 +03:00
parent 0a66808152
commit 6dbe39c2c4
3 changed files with 51 additions and 2 deletions

View File

@ -43,7 +43,7 @@ if test -f /usr/local/Caskroom/miniconda/base/bin/conda
end
# <<< conda initialize <<<
source shell.fish
source ~/.config/fish/shell.fish
end

View File

@ -34,7 +34,7 @@ SETUVAR _tide_prompt_29777:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5b
SETUVAR _tide_prompt_34539:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x40PWD\x40\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x20\u25b6\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m18\x3a04\x3a49\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm
SETUVAR _tide_prompt_35266:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x40PWD\x40\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x20\u25b6\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m18\x3a06\x3a49\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm
SETUVAR _tide_prompt_36013:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x40PWD\x40\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x20\u276e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m18\x3a08\x3a39\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm
SETUVAR _tide_prompt_41715:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b6\x1b\x5b38\x3b2\x3b135\x3b175\x3b175m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20I\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2571\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0bc\x1e\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0ba\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2571\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2005\x3a45\x3a16\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b4
SETUVAR _tide_prompt_42959:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b6\x1b\x5b38\x3b2\x3b135\x3b175\x3b175m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20I\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2571\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0bc\x1e\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0ba\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2571\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2005\x3a47\x3a08\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b4
SETUVAR _tide_prompt_4468:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x40PWD\x40\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x20\u276f\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m20\x3a13\x3a25\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm
SETUVAR _tide_prompt_46838:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x40PWD\x40\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b37m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0mmaster\x1b\x5b38\x3b2\x3b255\x3b0\x3b0m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x1b\x5b38\x3b2\x3b255\x3b0\x3b0m\x1b\x5b38\x3b2\x3b215\x3b175\x3b0m\x1b\x5b38\x3b2\x3b215\x3b175\x3b0m\x20\x212\x1b\x5b38\x3b2\x3b0\x3b175\x3b255m\x20\x3f2\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x20\u276f\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m06\x3a16\x3a28\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm
SETUVAR _tide_prompt_50535:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x40PWD\x40\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x20\u25b6\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m01\x3a51\x3a58\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm

View File

@ -0,0 +1,49 @@
import argparse
import subprocess
import shlex
def main():
sgpt_options_parser = argparse.ArgumentParser(add_help=False)
sgpt_options_parser.add_argument('--model', type=str, choices=['gpt-3.5-turbo', 'gpt-4', 'gpt-4-32k'])
sgpt_options_parser.add_argument('--temperature', type=float)
sgpt_options_parser.add_argument('--top-probability', type=float)
sgpt_options_parser.add_argument('--cache', action="store_true")
sgpt_options_parser.add_argument('--no-cache', action="store_true")
sgpt_options_parser.add_argument('--chat', type=str)
sgpt_options_parser.add_argument('-s', '--shell', action='store_true')
sgpt_options_parser.add_argument('--code', action='store_true')
sgpt_options_parser.add_argument('--no-code', action='store_true')
sgpt_options_parser.add_argument('--editor', action="store_true")
sgpt_options_parser.add_argument('--no-editor', action="store_true")
sgpt_options_parser.add_argument('--repl', type=str)
sgpt_options_parser.add_argument('--show-chat', type=str)
sgpt_options_parser.add_argument('--list-chat', action="store_true")
sgpt_options_parser.add_argument('--no-list-chat', action="store_true")
sgpt_options, remaining_args = sgpt_options_parser.parse_known_args()
query_parser = argparse.ArgumentParser()
query_parser.add_argument('query', nargs=argparse.REMAINDER, help='The prompt to generate completions for')
query_args = query_parser.parse_args(remaining_args)
command = "sgpt"
for key, value in vars(sgpt_options).items():
if value:
if key == 'shell':
command += f" -s"
else:
if isinstance(value, bool):
command += f" --{key.replace('_', '-')}"
else:
command += f" --{key.replace('_', '-')} {value}"
if query_args.query:
prompt = ' '.join(query_args.query)
command += f' "{prompt}"'
subprocess.call(shlex.split(command))
if __name__ == "__main__":
main()