this post was submitted on 07 Mar 2025
1 points (100.0% liked)

Linux

51586 readers
478 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

As my time with linux, I created a lot of scripts. Some of them have input parameters and sometimes I just forget this parameters.

So I wonder if there is some way to create autocomplete parameters, like i autocomplete a path by pressing the tab key?

For example a script. ./test.sh can be completed with parameter-one, eg. ./test.sh parameter-one or ./test.sh parameter-two. If i type now ./test.sh followed by tab it should add parameter-one if i press tab again it should change to parameter-two.

How can I do that? I'm on bash…

you are viewing a single comment's thread
view the rest of the comments
[–] Flagstaff@programming.dev -1 points 5 days ago (6 children)
[–] trevor@lemmy.blahaj.zone 0 points 5 days ago* (last edited 5 days ago) (5 children)

Espanso is probably the most useful software that nobody is using. I can't live without it.

I hope it gets an update soon...

[–] Flagstaff@programming.dev 0 points 5 days ago (4 children)

Its .YML formatting is really clunky. It feels like it takes up twice as much line space as .AHK (for example), which can do a lot of this kind of stuff in a single line. But I wanna go cross-platform and this is all I can find...

[–] trevor@lemmy.blahaj.zone 0 points 5 days ago (1 children)

I like YAML, as long as you aren't using complicated syntax. Using the | operator will get you some flexible usage that's mostly easy enough to read. YAML definitely has its problems though. If you want, I can share some snippets of my config.

Sadly though, due to Espanso not having a working RPM build for Wayland (or a Flatpak, which they're working on), it's not quite as cross-platform as I want it to be. It won't work on any of the cool uBlue-derived distros that I've gravitated toward, so I'm hoping we get a nice, big update this year.

[–] Flagstaff@programming.dev 0 points 5 days ago (1 children)

Did you put in a request for this? And sure, I'm always interested in seeing how others use it—especially to complex levels.

[–] trevor@lemmy.blahaj.zone 1 points 8 hours ago* (last edited 8 hours ago) (1 children)

It took me a while to get around to this so I could sanitize some of the highly-personal stuff there (mostly just a bunch of URLs because I don't use browser bookmarks lol), but here's a condensed version of what I like to use Espanso for.

The second half is ...interesting. I wanted a way to autofill passwords from my password manager in any application, not just a browser. It's a very homebrewed solution, and it only works on Windows and Linux because macOS blocks tools like Espanso from viewing or modifying login input fields.

Did you put in a request for this?

For a Wayland Flatpak or RPM? I haven't looked in a long time, but I believe there's an open issue for a Wayland RPM.

Edit: Found them: Flatpak issue and RPM issue.

[–] Flagstaff@programming.dev 1 points 4 hours ago* (last edited 2 hours ago)

macOS blocks tools like Espanso from viewing or modifying login input fields.

I wonder if SikuliX may be of interest to you, then. I just invoke KeePassXC's built-in autotyper; it's not too much more painful for me. Anyway, thanks for sharing! We certainly use it for very different things. Here's a Reddit search URL generation script that I use sporadically:

  - trigger: '`rs'
    replace: '{{output}}'
    vars:
      - name: form
        type: form
        params:
          layout: |
            [[subdomain]]
            Subreddit (optional): [[subreddit]]
            Query:
            [[query]]
          fields:
            subdomain:
              type: choice
              values:
                - www
                - old
              default: old
      - name: output
        type: script
        params:
          args:
            - python
            - -c
            - |
              if '{{form.subreddit}}':
                print(f'https://{{form.subdomain}}.reddit.com/r/{{form.subreddit}}/search?q={{form.query}}&restrict_sr=on&include_over_18=on')
              else:
                print(f'https://{{form.subdomain}}.reddit.com/search?q={{form.query}}&include_over_18=on')

I wanna make a Lemmy equivalent of this, eventually...

Update: Okay, just did for my instance!

  - trigger: "`lemmy"
    propagate_case: true
    replace: "https://programming.dev/search?q=%7B%7Blemmy.query%7D%7D&type=%7B%7Blemmy.search%7D%7D&listingType=All&page=1&sort=%7B%7Blemmy.timeframe%7D%7D"
    vars:
      - name: "lemmy"
        type: form
        params:
          layout: |
            Query: [[query]]
            Filter: [[search]]Time Frame: [[timeframe]]
          fields:
            query:
            search:
              type: list
              values:
                - All
                - Comments
                - Communities
                - Posts
                - Users
                - URL
              default: All
            timeframe:
              type: list
              values:
                - TopWeek
                - TopMonth
                - TopThreeMonths
                - TopSixMonths
                - TopNineMonths
                - TopYear
                - TopAll
              default: TopAll

It'd be nice to be able to improve the layout's appearance, but I don't know how to do that...

load more comments (2 replies)
load more comments (2 replies)
load more comments (2 replies)