diff options
| author | auric <104602845+ihateamongus@users.noreply.github.com> | 2025-09-08 21:19:14 -0500 |
|---|---|---|
| committer | auric <104602845+ihateamongus@users.noreply.github.com> | 2025-09-08 21:19:14 -0500 |
| commit | e61da07522a060da98fa3a56db3d0360469b26cf (patch) | |
| tree | c72d276bffa4dafe22ae0e4f694acfadb40b8ca1 /archive/st/patch/opencopied.c | |
| parent | d11aec86841f77edd6eba3e07aa1e7e591e9da2a (diff) | |
organize repository layout
Diffstat (limited to 'archive/st/patch/opencopied.c')
| -rw-r--r-- | archive/st/patch/opencopied.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/archive/st/patch/opencopied.c b/archive/st/patch/opencopied.c new file mode 100644 index 0000000..9b07c58 --- /dev/null +++ b/archive/st/patch/opencopied.c @@ -0,0 +1,19 @@ +void +opencopied(const Arg *arg) +{ + int res; + size_t const max_cmd = 2048; + char * const clip = xsel.clipboard; + if (!clip) { + fprintf(stderr, "Warning: nothing copied to clipboard\n"); + return; + } + + /* account for space/quote (3) and \0 (1) and & (1) */ + /* e.g.: xdg-open "https://st.suckless.org"& */ + size_t const cmd_size = max_cmd + strlen(clip) + 5; + char cmd[cmd_size]; + + snprintf(cmd, cmd_size, "%s \"%s\"&", (char *)arg->v, clip); + res = system(cmd); +}
\ No newline at end of file |
