<details><summary><i><b>Expand</b></i> for some nnn magic! :dark_sunglasses:</summary><br><ul>
   <li>Instantly load, sort, filter thousands of files</li>
   <li>Type to navigate with automatic dir selection</li>
+  <li>List input stream and pick entries to stdout or file</li>
   <li>find/fd/grep/ripgrep/fzf from nnn and list in nnn</li>
   <li> Never lose context - start where you quit</li>
   <li>Mount any cloud storage service in a few keypresses</li>
 
                "aEsc  Send to FIFO%-11c^L  Redraw\n"
                  "c?  Help, conf%-13c^G  QuitCD\n"
                  "cq  Quit context%-6c^Q 2Esc  Quit\n"
+                 "cQ  Pick sel/err & quit\n"
                "1FILTER & PROMPT\n"
                  "c/  Filter%-12cAlt+Esc  Clear filter & redraw\n"
                "aEsc  Exit prompt%-12c^L  Clear prompt/last filter\n"
                case SEL_QUITCTX: // fallthrough
                case SEL_QUITCD: // fallthrough
                case SEL_QUIT:
-               case SEL_QUITFAIL:
+               case SEL_QUITERR:
                        if (sel == SEL_QUITCTX) {
                                int ctx = cfg.curctx;
                                for (r = (ctx + 1) & ~CTX_MAX;
                                if (g_state.picker)
                                        selbufpos = 0;
                        }
-                       return sel == SEL_QUITFAIL ? EXIT_FAILURE : EXIT_SUCCESS;
+
+                       if (sel != SEL_QUITERR)
+                               return EXIT_SUCCESS;
+
+                       if (selbufpos && !g_state.picker) {
+                               g_state.pickraw = 1;
+                               return EXIT_SUCCESS;
+                       }
+
+                       return EXIT_FAILURE;
                default:
                        if (xlines != LINES || xcols != COLS)
                                continue;
 
        if (g_state.pickraw || g_state.picker) {
                if (selbufpos) {
-                       fd = g_state.pickraw ? 1 : open(selpath, O_WRONLY | O_CREAT, 0600);
+                       fd = g_state.pickraw ? STDOUT_FILENO : open(selpath, O_WRONLY | O_CREAT, 0600);
                        if ((fd == -1) || (seltofile(fd, NULL) != (size_t)(selbufpos)))
                                xerror();
 
 
        SEL_QUITCTX,
        SEL_QUITCD,
        SEL_QUIT,
-       SEL_QUITFAIL,
+       SEL_QUITERR,
 #ifndef NOMOUSE
        SEL_CLICK,
 #endif
        /* Quit */
        { CONTROL('Q'),   SEL_QUIT },
        /* Quit with an error code */
-       { 'Q',            SEL_QUITFAIL },
+       { 'Q',            SEL_QUITERR },
 #ifndef NOMOUSE
        { KEY_MOUSE,      SEL_CLICK },
 #endif