fix(stress): shorten terminal buffer name and clean up CSES versions

Problem: stress terminal buffer showed the full nix python path and
absolute script path, making it illegible. CSES language maps included
unused version variants.

Solution: rename stress terminal buffer to a readable
`term://stress.py` format. Use `python` instead of `python3` in
`build_run_cmd`. Trim CSES `LANGUAGE_VERSIONS`, `CSES_LANGUAGES`,
and `EXTENSIONS` to only the default versions.
This commit is contained in:
Barrett Ruth 2026-03-06 20:02:19 -05:00
parent 446f87f98c
commit 516d1b02b7
Signed by: barrett
GPG key ID: A6C96C9349D2FC81
3 changed files with 5 additions and 10 deletions

View file

@ -85,10 +85,10 @@ M.LANGUAGE_VERSIONS = {
python = { python3 = '31', pypy3 = '70' }, python = { python3 = '31', pypy3 = '70' },
}, },
cses = { cses = {
cpp = { ['c++11'] = 'C++11', ['c++17'] = 'C++17', ['c++20'] = 'C++20' }, cpp = { ['c++17'] = 'C++17' },
python = { python3 = 'Python3', pypy3 = 'PyPy3' }, python = { python3 = 'Python3', pypy3 = 'PyPy3' },
java = { java = 'Java' }, java = { java = 'Java' },
rust = { rust2018 = 'Rust2018', rust2021 = 'Rust2021' }, rust = { rust2021 = 'Rust2021' },
}, },
kattis = { kattis = {
cpp = { ['c++17'] = 'C++', ['c++20'] = 'C++', ['c++23'] = 'C++' }, cpp = { ['c++17'] = 'C++', ['c++20'] = 'C++', ['c++23'] = 'C++' },

View file

@ -53,7 +53,7 @@ local function build_run_cmd(file)
end end
return './' .. bin return './' .. bin
elseif ext == 'py' then elseif ext == 'py' then
return 'python3 ' .. file return 'python ' .. file
end end
return './' .. file return './' .. file
end end
@ -171,6 +171,7 @@ function M.toggle(generator_cmd, brute_cmd)
vim.cmd.terminal(cmdline) vim.cmd.terminal(cmdline)
local term_buf = vim.api.nvim_get_current_buf() local term_buf = vim.api.nvim_get_current_buf()
pcall(vim.api.nvim_buf_set_name, term_buf, ("term://stress.py '%s' '%s' '%s'"):format(gen_cmd, brute_run_cmd, binary))
local term_win = vim.api.nvim_get_current_win() local term_win = vim.api.nvim_get_current_win()
local cleaned = false local cleaned = false

View file

@ -31,24 +31,18 @@ HEADERS = {
CONNECTIONS = 8 CONNECTIONS = 8
CSES_LANGUAGES: dict[str, dict[str, str]] = { CSES_LANGUAGES: dict[str, dict[str, str]] = {
"C++11": {"name": "C++", "option": "C++11"},
"C++17": {"name": "C++", "option": "C++17"}, "C++17": {"name": "C++", "option": "C++17"},
"C++20": {"name": "C++", "option": "C++20"},
"Python3": {"name": "Python3", "option": "CPython3"}, "Python3": {"name": "Python3", "option": "CPython3"},
"PyPy3": {"name": "Python3", "option": "PyPy3"}, "PyPy3": {"name": "Python3", "option": "PyPy3"},
"Java": {"name": "Java", "option": "Java"}, "Java": {"name": "Java", "option": "Java"},
"Rust2018": {"name": "Rust", "option": "2018"},
"Rust2021": {"name": "Rust", "option": "2021"}, "Rust2021": {"name": "Rust", "option": "2021"},
} }
EXTENSIONS: dict[str, str] = { EXTENSIONS: dict[str, str] = {
"C++11": "cpp",
"C++17": "cpp", "C++17": "cpp",
"C++20": "cpp",
"Python3": "py", "Python3": "py",
"PyPy3": "py", "PyPy3": "py",
"Java": "java", "Java": "java",
"Rust2018": "rs",
"Rust2021": "rs", "Rust2021": "rs",
} }
@ -443,7 +437,7 @@ class CSESScraper(BaseScraper):
print(json.dumps({"status": "submitting"}), flush=True) print(json.dumps({"status": "submitting"}), flush=True)
ext = EXTENSIONS.get(language_id, "cpp") ext = EXTENSIONS.get(language_id, "cpp")
lang = CSES_LANGUAGES.get(language_id, {}) lang = CSES_LANGUAGES.get(language_id, {"name": "C++", "option": "C++17"})
content_b64 = base64.b64encode(source_code.encode()).decode() content_b64 = base64.b64encode(source_code.encode()).decode()
payload: dict[str, Any] = { payload: dict[str, Any] = {