1
0
Fork 0
mirror of https://gitlab.com/niansa/llama_nds.git synced 2025-03-06 20:53:28 +01:00

Added fast scrolling using left/right

This commit is contained in:
niansa 2023-04-08 18:43:23 +02:00
parent 719835fe31
commit 3629e6f272
3 changed files with 30 additions and 10 deletions

View file

@ -164,12 +164,17 @@ void NDSUI::scanButtons() {
scanKeys(); scanKeys();
int keys = keysDownRepeat(); int keys = keysDownRepeat();
// Scrolling // Scrolling
if (keys & KEY_DOWN) { if (scrollOff != 0) {
if (scrollOff != 0) { if (keys & KEY_DOWN) {
scrollOff--; scrollOff -= 1;
} else if (keys & KEY_RIGHT) {
scrollOff -= 5;
} }
} else if (keys & KEY_UP) { }
scrollOff++; if (keys & KEY_UP) {
scrollOff += 1;
} else if (keys & KEY_LEFT) {
scrollOff += 5;
} }
} }

View file

@ -47,10 +47,6 @@ public:
std::getline(std::cin, outstr); std::getline(std::cin, outstr);
return outstr.c_str(); return outstr.c_str();
} }
static void clearScreen() {
consoleClear();
}
}; };
#define IPPROTO_TCP 0 #define IPPROTO_TCP 0

View file

@ -33,18 +33,37 @@ basiccoro::AwaitableTask<void> async_main(Runtime& rt, AsyncManager &aMan, NDSUI
// Display prompt // Display prompt
auto& msg = ui.addLogMessage(ui.createLogMessage("Bot", "Initializing...")); auto& msg = ui.addLogMessage(ui.createLogMessage("Bot", "Initializing..."));
// Hide keyboard
keyboardHide();
// Clear console
consoleClear();
// Run inference // Run inference
std::string result; std::string result;
co_await client.ask(prompt, [&msg, &ui] (unsigned progress) -> basiccoro::AwaitableTask<void> { co_await client.ask(prompt, [&msg, &ui] (unsigned progress) -> basiccoro::AwaitableTask<void> {
msg = ui.createLogMessage("Bot", (std::to_string(progress)+"%")); msg = ui.createLogMessage("Bot", (std::to_string(progress)+"%"));
// Check if ready to generate
if (progress == 100) {
// Show help
std::cout << "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"
"Stop now: [START] Abort \n"
"Stop soon: [SELECT] Cancel" << std::flush;
}
co_return; co_return;
}, [&result, &msg, &ui] (std::string_view token) -> basiccoro::AwaitableTask<void> { }, [&result, &msg, &ui] (std::string_view token) -> basiccoro::AwaitableTask<void> {
// Update message with current generation result
result.append(token); result.append(token);
msg = ui.createLogMessage("Bot", result+"..."); msg = ui.createLogMessage("Bot", result+"...");
co_return; co_return;
}); });
msg = ui.createLogMessage("Bot", result); msg = ui.createLogMessage("Bot", result);
std::cout << "\n";
// Clear console
consoleClear();
// Show keyboard
keyboardShow();
} }
} }