HNHacker News
TopNewBestAskShowJobs

jarusll

99 karma · joined June 30, 2022

surajyadav.net
submissionscomments
jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
I do agree the README was terrible. I've fixed it.
jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
Dmenu like fuzzy search does make sense when you have alot of expansions. I'll add it as I find the need for it myself.
jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
It is not meant to compete with feature rich programs.

Keydogger does one thing and it does it well. If you think it's misbehaving in any way, it's so small you can read and confirm that behaviour.

jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
Looked up `abbrev-mode` and that is a correct analogy. Abbrev mode also handles emojis, pretty cool. But then it's Emacs so I shouldn't be surprised.

Offtopic, I wish my younger self followed RTFM when I used to use Emacs.

jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
It works on Wayland as well AFAIK. I looked up espanso for expanding emojis and it seems they too use `wl-clipboard`
jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
I do realise it now that it's missing it's usage. It's a simple keyboard macro which supports all printable characters for triggers and everything for expansions. It sends native key presses if all the expansion are printable characters. If not, it uses clipboard and sends `Ctrl+V`
jarusll··on Show HN: Keydogger – Minimal keyboard macro for Linux (Wayland)
You get it perfectly. Being auditable was one of the priority which is exactly why it's small.

Regarding the clipboard, it's a third party dependency. I looked into implementing Wayland clipboard myself but it is too deep Wayland. The only reason clipboard exists is because I cannot send non-printable characters using uinput.

jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
So indexing all the components and finding out all the interactions between them. This is exactly what class browsers do, they index all the classes and messages. The interactions could be described using an example/documentation.

This reminds me of Pharo which does all of the above, indexes classes, messages and has a rich documentation support.

jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
This is very well written. 1-3 describes my experience of tinkering in Pharo except I haven't actually built anything with it.
jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
I love debugging and I would prefer this even if it's slower but there are cases where it's not easy to setup a debugger.
jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
I would prefer LSP assists as mentioned above. I love having things within reach. I believe programming should be as painless as possible.

Pharo(Smalltalk) IDE is one of the best IDE I've ever used. It even has a feature where you give input object and output object and it tells you what messages you need to send to get from input to output.

jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
This is exactly what I would do ideally except I couldn't. I can understand that working in startups you would overlook alot of theory and due to hectic nature low quality calls(code/architecture explanation) are not appreciated.

And that's why the first thing I ask during a technical interview is "Do you have internal documentation?".

jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
Fixing bugs has worked out although I had to pull my hair.
jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
1st is exactly what I do while reminding myself that I don't need to understand everything. Somehow for me it's easy to think like that in OO code and not FP.
jarusll··on Ask HN: What are the ways you go about getting comfortable with a new codebase?
Definitely a good advice. Profiling is something I haven't looked into and should be after debugging.