prep: Fix increment script to auto-commit dirty worktree before version bump
This commit is contained in:
+3
-3
@@ -11,20 +11,20 @@ hotkey=Ctrl+Alt+V
|
|||||||
type_delay_us=8000
|
type_delay_us=8000
|
||||||
max_record_seconds=30
|
max_record_seconds=30
|
||||||
# always-on VAD controls
|
# always-on VAD controls
|
||||||
always_on=1
|
always_on=0
|
||||||
# legacy window size (unused by new VAD pipeline, kept for compatibility)
|
# legacy window size (unused by new VAD pipeline, kept for compatibility)
|
||||||
always_on_window_ms=1400
|
always_on_window_ms=1400
|
||||||
|
|
||||||
# live level threshold (0.0 - 1.0)
|
# live level threshold (0.0 - 1.0)
|
||||||
vad_peak_threshold=0.0460
|
vad_peak_threshold=0.0460
|
||||||
# level must stay above threshold this long before speech starts
|
# level must stay above threshold this long before speech starts
|
||||||
vad_trigger_ms=100
|
vad_trigger_ms=153
|
||||||
# level must stay below threshold this long before speech ends
|
# level must stay below threshold this long before speech ends
|
||||||
vad_release_ms=300
|
vad_release_ms=300
|
||||||
# include this much pre-trigger audio in transcript segment
|
# include this much pre-trigger audio in transcript segment
|
||||||
vad_preroll_ms=500
|
vad_preroll_ms=500
|
||||||
# discard segments shorter than this
|
# discard segments shorter than this
|
||||||
vad_min_speech_ms=250
|
vad_min_speech_ms=692
|
||||||
# hard cap for one speech segment
|
# hard cap for one speech segment
|
||||||
vad_max_speech_ms=15000
|
vad_max_speech_ms=15000
|
||||||
|
|
||||||
|
|||||||
+34
-5
@@ -37,6 +37,10 @@ EXAMPLES:
|
|||||||
./increment_and_push.sh -m "Add live debug indicators"
|
./increment_and_push.sh -m "Add live debug indicators"
|
||||||
./increment_and_push.sh -M "Breaking config format update"
|
./increment_and_push.sh -M "Breaking config format update"
|
||||||
./increment_and_push.sh -r -m "Release minor update"
|
./increment_and_push.sh -r -m "Release minor update"
|
||||||
|
|
||||||
|
NOTES:
|
||||||
|
- If the working tree is dirty, the script auto-commits pending changes first
|
||||||
|
as: prep: <commit message>
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -47,11 +51,36 @@ check_git_repo() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
require_clean_worktree() {
|
has_pending_changes() {
|
||||||
if ! git -C "$ROOT_DIR" diff --quiet || ! git -C "$ROOT_DIR" diff --cached --quiet; then
|
if ! git -C "$ROOT_DIR" diff --quiet; then
|
||||||
print_error "Working tree is not clean. Commit or stash changes before running this script."
|
return 0
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
if ! git -C "$ROOT_DIR" diff --cached --quiet; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
if [[ -n "$(git -C "$ROOT_DIR" ls-files --others --exclude-standard)" ]]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
auto_commit_pending_changes() {
|
||||||
|
local message="$1"
|
||||||
|
|
||||||
|
if ! has_pending_changes; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
print_warning "Working tree is dirty. Auto-committing pending changes before version bump."
|
||||||
|
git -C "$ROOT_DIR" add -A
|
||||||
|
|
||||||
|
if git -C "$ROOT_DIR" diff --cached --quiet; then
|
||||||
|
print_warning "No staged changes after auto-add; continuing."
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
git -C "$ROOT_DIR" commit -m "prep: ${message}" >/dev/null
|
||||||
|
print_success "Committed pending changes: prep: ${message}"
|
||||||
}
|
}
|
||||||
|
|
||||||
latest_version_tag() {
|
latest_version_tag() {
|
||||||
@@ -221,7 +250,7 @@ fi
|
|||||||
|
|
||||||
print_status "voice_linux increment and push"
|
print_status "voice_linux increment and push"
|
||||||
check_git_repo
|
check_git_repo
|
||||||
require_clean_worktree
|
auto_commit_pending_changes "$COMMIT_MESSAGE"
|
||||||
|
|
||||||
LATEST_TAG="$(latest_version_tag || true)"
|
LATEST_TAG="$(latest_version_tag || true)"
|
||||||
if [[ -z "$LATEST_TAG" ]]; then
|
if [[ -z "$LATEST_TAG" ]]; then
|
||||||
|
|||||||
@@ -992,6 +992,26 @@ static unsigned int voice_cmd_mods_from_gdk(guint state) {
|
|||||||
return mods;
|
return mods;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int is_modifier_keyval(guint keyval) {
|
||||||
|
switch (keyval) {
|
||||||
|
case GDK_KEY_Shift_L:
|
||||||
|
case GDK_KEY_Shift_R:
|
||||||
|
case GDK_KEY_Control_L:
|
||||||
|
case GDK_KEY_Control_R:
|
||||||
|
case GDK_KEY_Alt_L:
|
||||||
|
case GDK_KEY_Alt_R:
|
||||||
|
case GDK_KEY_Meta_L:
|
||||||
|
case GDK_KEY_Meta_R:
|
||||||
|
case GDK_KEY_Super_L:
|
||||||
|
case GDK_KEY_Super_R:
|
||||||
|
case GDK_KEY_Hyper_L:
|
||||||
|
case GDK_KEY_Hyper_R:
|
||||||
|
return 1;
|
||||||
|
default:
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static gboolean on_window_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data) {
|
static gboolean on_window_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data) {
|
||||||
(void)widget;
|
(void)widget;
|
||||||
gui_state_t *s = (gui_state_t *)user_data;
|
gui_state_t *s = (gui_state_t *)user_data;
|
||||||
@@ -999,6 +1019,20 @@ static gboolean on_window_key_press(GtkWidget *widget, GdkEventKey *event, gpoin
|
|||||||
|
|
||||||
if (!s->cmd_capture_armed) return FALSE;
|
if (!s->cmd_capture_armed) return FALSE;
|
||||||
|
|
||||||
|
if (event->keyval == GDK_KEY_Escape) {
|
||||||
|
s->cmd_capture_armed = 0;
|
||||||
|
s->cmd_capture_keyval = 0;
|
||||||
|
s->cmd_capture_mods = 0;
|
||||||
|
gtk_label_set_text(GTK_LABEL(s->cmd_capture_label), "Capture cancelled");
|
||||||
|
gtk_button_set_label(GTK_BUTTON(s->cmd_capture_btn), "Capture");
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_modifier_keyval(event->keyval)) {
|
||||||
|
gtk_label_set_text(GTK_LABEL(s->cmd_capture_label), "Hold modifier(s), then press a non-modifier key...");
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
s->cmd_capture_keyval = (unsigned int)event->keyval;
|
s->cmd_capture_keyval = (unsigned int)event->keyval;
|
||||||
s->cmd_capture_mods = voice_cmd_mods_from_gdk(event->state);
|
s->cmd_capture_mods = voice_cmd_mods_from_gdk(event->state);
|
||||||
s->cmd_capture_armed = 0;
|
s->cmd_capture_armed = 0;
|
||||||
|
|||||||
+1
-2
@@ -21,6 +21,5 @@ open bracket|text|[
|
|||||||
close bracket|text|]
|
close bracket|text|]
|
||||||
open brace|text|{
|
open brace|text|{
|
||||||
close brace|text|}
|
close brace|text|}
|
||||||
over|key|65293:0
|
|
||||||
end of command|key|65293:3
|
end of command|key|65293:3
|
||||||
over.|text|Return
|
over.|key|65293:2
|
||||||
|
|||||||
Reference in New Issue
Block a user