Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explain how to customize with Dhall #1

Open
Tracked by #20
georgefst opened this issue Jul 1, 2020 · 5 comments
Open
Tracked by #20

Explain how to customize with Dhall #1

georgefst opened this issue Jul 1, 2020 · 5 comments
Labels
documentation Improvements or additions to documentation

Comments

@georgefst
Copy link
Owner

dhall would be very cool...

@georgefst
Copy link
Owner Author

georgefst commented Jul 6, 2020

Started in 5833a12, and expanded since.

I should probably document it though...

@georgefst georgefst added the documentation Improvements or additions to documentation label Jul 25, 2020
@georgefst georgefst changed the title Customisable button layout Explain how to customize with Dhall Jul 26, 2020
@georgefst
Copy link
Owner Author

We should encourage downloading dhall and/or dhall-lsp-server, drawing attention to the fact that the config can be typechecked before passsing to monpad.

@movefasta
Copy link

movefasta commented Aug 8, 2020

Hi, @georgefst ! Explain please how to customize ? What exactly i should to do? I tried to rebuild app with replaced default.dhall in https://github.com/georgefst/monpad/blob/master/Build.hs#L98 but it seems doesn't work

@movefasta
Copy link

Hi, @georgefst ! Explain please how to customize ? What exactly i should to do? I tried to rebuild app with replaced default.dhall in https://github.com/georgefst/monpad/blob/master/Build.hs#L98 but it seems doesn't work

i've done it with cli arguments )

@georgefst
Copy link
Owner Author

Hi @movefasta!

In what way did changing the build script not work? That sounds like it should. Anyway, as you discovered, that's unnecessary unless you wanted to bake a different default in to the executable - layout configs can be loaded at runtime.

Documenting this is high on my todo list, and something I'll definitely be fixing before I announce Monpad widely. If you've got any specific questions, I'll be happy to answer them.

I've also been meaning to encourage contributions, so let me know if you've come up with something cool. Or open a PR adding it to the dhall folder.

P.S. I've just pushed two changes that make trying out configs a lot easier:

  • Layouts will be reloaded on each new connection if the file has changed on disk, so you just need to refresh the web page, rather than restart the server.
  • There is a separate executable monpad-layout-test, which will watch a file, and regenerate an SVG output whenever it changes. Many SVG viewers (including Gnome's eog) will auto-reload SVGs, so this provides instant feedback. However, we are slightly hamstrung by Allow loading of any Dhall value as Void dhall-lang/dhall-haskell#1521 - as a result, this tool currently requires a Layout {} {}, and can't accept the Linux-specific Layout Evdev.AbsAxis Evdev.Key.

@georgefst georgefst mentioned this issue Feb 8, 2021
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants