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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

CodeSurfer-like dynamic code highlighting, zoom in and zoom out transformations. #75

Open
bwplotka opened this issue Apr 22, 2020 · 2 comments

Comments

@bwplotka
Copy link
Contributor

bwplotka commented Apr 22, 2020

Hello 馃憢

Thanks for this awesome tool! We can't wait to use it for our future consistent presentations 馃挭

Problem

There is one important missing feature in Googe slides and that's why for the latest conference presentations we went for MDX Deck + CodeSurfer

The missing feature is dynamic code highlights, zoom-in, zoom-out transition so you can explain line by line what you are changing. We did this presentation on GoDays and FOSDEM and the feedback was extremely positive. The audience could follow the code much easier and we could explain more than just using static slides with limited size.

You can see the code and effect here: https://github.com/kakkoyun/are-you-testing-your-observability

The tradeoff was enormous though. The MDX Deck has some bugs and it's extremely tedious to set up, use, and build. Especially if you are not a frontend developer - you are essentially building a website. It's brittle, impossible to make it work for all projector resolutions etc, generating PDF's is impossible and you cannot link to one slide. We wrote more CSS than content 馃う

How to solve it?

So we are looking for another solution that will give us dynamic code, zoom in, zoom outs, and dynamic highlight transformations.

Do you think it will be possible to add some pseudo markdown components that will allow doing so? Do you think it is possible? Would you accept such a contribution? We are happy to help, just we definitely need some pointers 馃

Proposal

The idea would be to base on markdown code blocks with code surfer FOCUS:

`` `go 2:3,4[2:3]

Line1
Line2
Line3

`` `

This will highlight line 2 3 and second, third and fourth character of line 4.

Then we would need some way of describing which slides would be part of the transformation e.g.:

`` `go 2 <slide204>

Line1
Line2

newline
`` `

This will focus our code block on line 2, and animate removal of line3 and animate addition of newline. What to animate will be based on diff from code block on slide 204.
I think with just this simple logic we could achieve a lot and generate Google slides with code and transformations which will add, remove, change fonts etc..

Sounds doable? 馃 Thanks for help in advance!

cc @kakkoyun

@bwplotka
Copy link
Contributor Author

bwplotka commented Jun 6, 2020

Any feedback, pointers, suggestions? 馃

@bwplotka
Copy link
Contributor Author

bwplotka commented Jun 7, 2020

Looks like it's currently impossible to control animations through API, here is some feature request tracker https://issuetracker.google.com/issues/80441863

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant