54 karma · joined December 16, 2023
I have been experimenting with xdotool windowmap/windowunmap and override_redirect (and maybe LD_PRELOAD?) to try get something like EXWM to work without creating another X server, by capturing windows. I'm doing this in vim though.
By the way, neovim has an apparently working EXWM-like plugin, NXWM/nwm: https://github.com/altermo/nwm
ʕ•ᴥ•ʔ Bear vs. ʕ·ᴥ·ʔ Build EAR
The compilation database tool (https://github.com/rizsotto/Bear), is extremely helpful. It got CCLS/clangd working for me over multiple in-house build systems at a vfx studio.
It also is super helpful for debugging. I have used it a lot alongside a script which converts a compile_commands.json to a sequence of commands, so I can edit them individually without fiddling with the build system, and then once fixed (such as adding a flag to one TU) try to find the way to do that in the build system.
Then it is a pragmatic decision, using tmux you get to use the ecosystem of things like tmuxinator which explicitly target tmux to get a known number of terminal features like splits. What I learn from the OP, is that there are technical reasons that tmux is not a "good design" - like Kovid's comments on how it constrains innovation in terminal designs - which might lead someone to consider, what actually does tmux do and could my workflow be implemented otherwise?
It might be a bunch of unixy hacks and tricks (as another commenter here said) but it can work. I'd imagine recreating something like tmuxinator would be hard though, but it could also be interesting, like having arbitrary GUI programs configured to appear in "splits" using tiling integrated seamlessly within the terminals. But yeah, if the workflow is already set up and serviceable and supported with a community, using tmux, then I'd just keep using it.
He makes an intriguing point.
There are a few algorithms like some cloth sims based on particle positions and springs, which can be coded easily, but that was misleading to me when trying to improve, I had to dig a lot more into physics and numerical analysis then mapping the problem to code, which can end up clunky and with a lot of magic numbers.
Also I am really enjoying your article, still reading it with wikipedia open on the side haha.
So I guess I don't need to think too much of the functionness of splitting up a code-block, I suppose this example contradiction would also apply and more cleanly if just thinking of the compiler considering blocks of code individually e.g. in a greedy algorithm.
(Actually reading the intro again I think I overcomplicated this and he actually does mean just splitting into code blocks. My mistake)
I love wikipedia and I read to procrastinate by reading the articles for everything I am interested in so I have found quite a lot of factually incorrect information or statements of fact which are really philosophical opinions. However usually these problems coexist with a certain change in writing style (loss of formatting, grammatical errors, random capitalizations, change of tone, etc.). I find I haven't found many problems with content written in the usual "wikipedia" style, so I assume the hardcore wk editors who enforce this style care a lot about factual accuracy. However I don't read enough outside of wikipedia so I wouldn't know if everything is correct...
(actually now that I think about, maybe I am more likely to agree with things in the wikipedia style. But I think the style errors and factual errors are at least a bit correlated.)
I do something similar to what you are doing with Kakoune daemon mode, but I work in the shell within a vim context. I have bound "e" in diff/stage views of tig to send a message to the current vim to open a new tab for that file at that line.
I have not tried magit yet but am going to now to at least extract some great ideas from it and somehow get it in my current workflow.
I am still learning, but I have so far only applied inverse methods to systems where the physics is well-defined and the model already accepted as "real". For example, CT scanner algorithms which model the photon counters and attenuation through matter (although this can get complicated...), with the output being data in well-defined format (like the distribution of matter). I do see people using inverse solvers or AI to derive something which isn't an "image" but a model of the physics (does that make sense?). The extreme version of this which I have seen once before, is a paper using AI to extract algebraic forms of PDEs from videos of fluids. To what extent does the AI user have to understand/"pre-model" the physics, and to what extent does the AI generate understanding in some way? Apologies if this is misinformed as I am still outside the research community, and don't very actively read papers.
Currently I am trying to learn background to understand electromagnetic properties of materials with an interest to apply this to computer graphics. I eventually want to learn what processes are currently done for extracting material properties from scans, etc., along the lines of the classic gonioreflectometers. In this space, from the papers I look at, it looks like AI is unavoidable and I am sure an extremely useful tool but I definitely want to be careful not to get lost in misunderstanding.