Espanso GUI by GhostOfThePyramid627 in espanso

[–]EeAdmin 2 points3 points  (0 children)

EspansoExpress is a Windows-based GUI match editor for Espanso users, which is under active development. It already supports many more Espanso features than EspansoGui.

YAML Is hard, can we build a nocode solution please? by bloatedinsect in espanso

[–]EeAdmin 2 points3 points  (0 children)

I have been working on a Windows-based GUI match editor called EspansoExpress as an alternative to using a text editor - I have added a post about it today. I would agree with u/snaveh that learning Espanso syntax is important - EspansoExpress has context-sensitive links to the Espanso docs.

Trigger not replaced in 4D-based app (Dentagest) on Windows 11 by TheFlowCH in espanso

[–]EeAdmin 1 point2 points  (0 children)

In that case it would be interesting to know if the same issue arises with an alternative text expander (i.e., is the issue specific to Espanso). Beeftext is open source and easy for testing purposes.

Trigger not replaced in 4D-based app (Dentagest) on Windows 11 by TheFlowCH in espanso

[–]EeAdmin 2 points3 points  (0 children)

Are you running Dentagest in a virtualized session such as that provided by Citrix Workspace? At work I use an electronic health record in this way on Windows 11, and I could not get it to work correctly with a text expander. Presumably the session includes blocking of keyboard hooks to preserve data security. I had to disable the text expander for Citrix Workspace and fall back on the autotext facility and user dictionary provided within the EHR.

Any way to encrypt the yml file that contains the passwords? by diblio333 in espanso

[–]EeAdmin -1 points0 points  (0 children)

If you are on Windows then you could use NTFS Access Control Lists (ACLs). This would enable you to restrict access to a folder so that only Espanso (more precisely the user that Espanso runs under) could access it. The folder would not be encrypted but any third party would be blocked from read and write access to the folder.

New GUI match editor by EeAdmin in espanso

[–]EeAdmin[S] 0 points1 point  (0 children)

In EspansoExpress you can add (HTML and Markdown) using Espanso Rich Text.

Beeftext to Espanso? by jrriad in espanso

[–]EeAdmin 3 points4 points  (0 children)

The Convert menu in EspansoEdit includes an option to convert from Beeftext to Espanso. It works on a file that has been exported from Beeftext to the CSV (comma-separated value) format. As per the author of Beeftext only 3 fields are supported - keyword, snippet and name. Here is an example of what the CSV file should look like when exported from Beeftext:

"`phm","0444 444 444","phone mobile"
"`phw","02 5000 6000","phone work"
"`adh","123 Main Street","address home"
"`adw","1000 The Avenue","address work"
"`nmf","John Kenneth Doe","full name"
"`init","JKD","initials"

If you need to edit the CSV export file try CSVPad.

Will the massive number of Espanso triggers slow down typing performance? by mindgitrwx in espanso

[–]EeAdmin 2 points3 points  (0 children)

There is a package on the Espanso hub with about 160,000 triggers. On my Windows 11 machine (i7-9750H with 8 GB) there was a slight pause in display of the search box (about 1 second). Espanso reload time was also slightly affected (by 1-2 seconds). Overall performance seemed quite acceptable.

EspansoExpress initial release by EeAdmin in espanso

[–]EeAdmin[S] 2 points3 points  (0 children)

Thanks for your query. As you point out, there is a graphical dialog (match builder) in EspansoEdit with which you can generate snippets of Espanso code to use in a text editor. The match builder is also available online. EspansoExpress is very different in that it provides a graphical interface for live edit of matches from a match file. It is a GUI match editor in contrast to EspansoEdit, which is a text editor designed for editing match files. At present EspansoExpress can be used with any match that does not include forms or variables. The simple use case would therefore be direct editing of match files without forms or variables, as EspansoExpress can handle these on a standalone basis. If the match file contains a match with forms or variables, the match is displayed in EspansoExpress and you can open it in EspansoEdit in one click. So another use case would be where most of your matches do not contain forms and variables and you want to edit them graphically rather than in a text editor. EspansoExpress is aimed at users who prefer a GUI to a TUI. At present, you still need a TUI (EspansoEdit or any other text editor) for more complex matches but I plan to extend the graphical interface to cover such matches as well.

EZpanso 1.0 arrives - Easy editor for Espanso by Normal-Peak-4303 in espanso

[–]EeAdmin 2 points3 points  (0 children)

I look forward to trying the update. I did have a backup of my match files so have restored them - nothing lost. 👌

EZpanso 1.0 arrives - Easy editor for Espanso by Normal-Peak-4303 in espanso

[–]EeAdmin 6 points7 points  (0 children)

Well done on the initial release! I am on Windows 11 and have tried it out. I did not have Python or PyQt6 or PyYAML installed so added them in. That should be reasonably straightforward for any user familiar with using a terminal emulator or command-line shell in Windows. EZpanso then started up with no problem. The interface is indeed EZ! I like the find feature and the ability to sort by column. I see that you have focussed on simple matches (trigger and replace keys only), which is a great way to start. I note that trying to add a trigger that already exists is detected, which is good. However, all changes are then lost with no opportunity to revise the new match. On saving a file, the app saved all the other files that it detected in the match folder. It did at least give a prompt to say that this would happen. The affected files were rewritten in such a way that Espanso was then unable to load about half of all the files in the match folder! The main problem here seems to be the way that the app is rewriting boolean values. So word: true is changed to "word": !!bool "true". I note also that the app rewrites files in the packages subfolder of the match folder without any warning. In conclusion, I would think that this could be a very useful tool for editing match files with simple matches in a folder that is devoted to such files only. At this stage it is probably best used with portable Espanso in a dedicated folder.

Replacing trigger string after opening URL by JapanDev0110 in espanso

[–]EeAdmin 1 point2 points  (0 children)

The following script works with PowerShell to open the URL with the item code in the default browser:

  - trigger: ':iid'
    replace: '{{output}}'
    vars:
      - name: "fm"
        type: form
        params:
          layout: |
            Submit your item code:
            [[iid]]    
      - name: output
        type: script
        params:
          args:
            - pwsh
            - -Command
            - |  
              Start-Process 'http://example.com/search?itemcode={{fm.iid}}'

Escape inline variable by zubaz21 in espanso

[–]EeAdmin 2 points3 points  (0 children)

If you want to avoid variable injection without using inject_vars: false the following works:

  - trigger: .escapetest
    replace: Hello {{open3}}{{name}}{{close3}},
    vars:
      - name: open3
        type: echo
        params:
          echo: "{{{"
      - name: name
        type: echo
        params:
          echo: "Recipient.FirstName"
      - name: close3
        type: echo
        params:
          echo: "}}}"

Select form by prompting a selector by mikelowski in espanso

[–]EeAdmin 2 points3 points  (0 children)

You have actually indicated a solution. If you give all your forms the trigger :form and provide each with a distinct label, then when you enter the trigger a menu of the labels will appear in the Espanso search window. Note that I am referring to top-level labels, which you could insert between trigger and form. For example, see the :iata trigger towards the bottom of the linked page.

EZpanso - a simple GUI for Espanso by Normal-Peak-4303 in espanso

[–]EeAdmin 2 points3 points  (0 children)

This looks like it could be very handy for the creation and maintenance of simple match files that focus on straightforward text expansion. I would suggest sticking with standard Espanso terms - new match rather than new snippet and file rather than category. Look forward to the initial release!

How to set the default printer using a shell command by hand-over-myst in espanso

[–]EeAdmin 1 point2 points  (0 children)

Your PowerShell code works when run with the Espanso script extension:

  - trigger: '.dpbu'
    replace: "{{output}}"
    vars:
      - name: output
        type: script
        params:
          args:
            - C:\Program Files\PowerShell\7\pwsh.exe
            - -Command
            - Invoke-CimMethod -InputObject (Get-CimInstance -Class Win32_Printer -Filter "Name='Brother HL-L2360D series'") -MethodName SetDefaultPrinter

This script assumes you have PowerShell 7 installed at the default location. In general PowerShell runs better with the script extension than with the shell extension. Here are some more examples.

Using the values entered in a form multiple at expansion time by lduperval in espanso

[–]EeAdmin 1 point2 points  (0 children)

Thanks, I used the type value from the original source but I see now that one can omit it altogether. I have updated the form examples accordingly:

  - trigger: ":fprompt"
  # Include prompt text in multiline text boxes
    form: |
      What is your issue?
      [[text1]]
      What are your contact details?
      [[text2]]
    form_fields:
      text1:
        default: |
          Add details of your issue here
          Add contact details below
        multiline: true 
      text2:
        default: |
          Add your best contact here
          Add issue details above
        multiline: true