Hello, I usually run the same command with async-shell-command, however I have to navigate back to the last command history to trigger my last run command, is there any way async-shell-command (and shell-command) can autofill with last run command so that I just hit enter without extra steps?

  • nqminhuit@fediverser.communick.devOPB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    I saw your final version on your config, just a small question, what does '(shell-command-history . 1) means? If I understand it correctly, it returns a new list without the last 1 item from the original list, however I tried to evaluate it on emacs but it does not return the value.

    • abbreviatedman@fediverser.communick.devB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Yeah, that one took some digging! I found the relevant bit in the Elisp manual. I should have some elisp for you to access the area of the manual within Emacs but I’m not there yet. : ) Here’s the HTML version.

      That bit of a code is a cons pair, a list of the symbol shell-command-history and the number 1. The history argument to completing-read (and therefore by extension read-shell-command) can take in either a symbol for a history variable or a cons pair of a history variable symbol and an index to start with.