Time |
Nick |
Message |
00:05 |
|
AliasAlreadyTake joined #minetest-dev |
01:30 |
|
kilbith_ joined #minetest-dev |
01:53 |
|
erlehmann joined #minetest-dev |
03:22 |
|
Extex joined #minetest-dev |
05:00 |
|
MTDiscord joined #minetest-dev |
06:07 |
|
Extex joined #minetest-dev |
06:11 |
|
Extex joined #minetest-dev |
06:12 |
|
Extex joined #minetest-dev |
06:30 |
|
Extex joined #minetest-dev |
07:58 |
|
v-rob joined #minetest-dev |
09:01 |
|
calcul0n__ joined #minetest-dev |
09:15 |
|
troller joined #minetest-dev |
09:34 |
|
calcul0n_ joined #minetest-dev |
09:59 |
|
Fleckenstein joined #minetest-dev |
10:26 |
|
calcul0n joined #minetest-dev |
10:46 |
sfan5 |
it would help if you included quick reproduction code in your issues |
10:51 |
MTDiscord |
<luatic> sfan5: was about the first thing I was gonna do today, it's really simple tho |
10:57 |
MTDiscord |
<luatic> sfan5: done |
11:18 |
|
appguru joined #minetest-dev |
11:40 |
|
calcul0n_ joined #minetest-dev |
14:00 |
|
appguru joined #minetest-dev |
15:24 |
MTDiscord |
<exe_virus> Oh that would be great to fix! Also the ability to make the client unable to escape out or click out of a formspec. I.e. only the server can let the leave the formspec. (dangerous if the modder is bad, but needed in general). |
15:26 |
MTDiscord |
<luatic> Shouldn't be dangerous: ESC should directly take them to the game menu where they can leave. |
15:46 |
|
Taoki joined #minetest-dev |
15:52 |
|
troller joined #minetest-dev |
16:01 |
MTDiscord |
<exe_virus> That's a good idea, if figured we would just ignore the esc, but that makes a lot more sense |
16:07 |
erlehmann |
as long as “client can not escape formspec with esc” is not the default … (i have encountered a bunch of situations where i used esc to close the formspec) |
16:13 |
MTDiscord |
<exe_virus> Agreed |
16:18 |
|
Extex joined #minetest-dev |
17:38 |
|
Yad joined #minetest-dev |
17:40 |
|
calcul0n joined #minetest-dev |
17:41 |
Yad |
Greetings! I've finally familiarized myself sufficiently with the Lua API in order to feel like I can chat usefully here. :) |
17:42 |
|
calcul0n joined #minetest-dev |
17:45 |
Yad |
What syntax would be good for a node referencing itself? Such as in on_rightclick = function (pos, self, clicker) |
17:45 |
Yad |
I can do things like minetest.chat_send_all(minetest.get_node(pos).name) |
17:46 |
Yad |
But fail with things like self:get_properties().name |
17:46 |
sfan5 |
fyi modding and Lua questions still go to #minetest |
17:47 |
sfan5 |
but I also don't understand the question so maybe it's that |
17:47 |
Yad |
Oh! Thanks sfan5, I had assumed the question was too advanced heheh |
18:07 |
MTDiscord |
<Jordach> There are minetest games that require the formspec to be completed to continue |
18:15 |
Yad |
I really appreciate this article https://dev.minetest.net/List_of_hardcoded_features |
18:32 |
|
calcul0n joined #minetest-dev |
18:33 |
celeron55 |
https://github.com/minetest/minetest.github.io/issues/222#issuecomment-1003136627 |
18:59 |
Yad |
celeron55: Ah yes, that's right...someone even tried to steal the project's domain name some years ago? |
19:06 |
celeron55 |
i'd rather not talk about it. but yes, they claimed to have planned even that |
19:11 |
|
calcul0n_ joined #minetest-dev |
19:12 |
Yad |
Strange. And yes, it's wise not to not discuss such sensitive topics with people you just met on IRC. :) |
19:14 |
Krock |
why not? should we be ashamed of the humanity as how it currently is? c'mon please. |
19:16 |
Krock |
hmm. It might be interesting to see whether automatic camera adjustments for rotating parents make sense |
19:16 |
MTDiscord |
<Benrob0329> OC has become the boogyman, Krock. Everyone is scared to say his name now :P |
19:16 |
Krock |
especially when yaw changes are interpolated, this might provide a way better game experience compared to jittery camera setters |
19:18 |
celeron55 |
Yad: not that, but just the fact that they're looking for attention |
19:21 |
Yad |
Krock: I was referring to how we cannot disprove the suggestion that I am the aggressor in disguise, or the general principle of not talking about things which might be involved in lawsuits. :) |
19:21 |
Yad |
celeron55: Ah yes, also wise you are: "don't feed the trolls" :) |
19:22 |
celeron55 |
i sense a distinct lack of core team comments in the issue though |
19:22 |
Krock |
I can provide my two cents, but it won't help any further. I do not care about donations. |
19:23 |
celeron55 |
core devs: i need your comment in the issue up there ^ |
19:23 |
celeron55 |
yes, write that there |
19:23 |
celeron55 |
i can't have public trust in this donation thing unless the people who don't care about donations write those words into that issue |
19:24 |
celeron55 |
zughy will go around the entire internet complaining about it and his arguments are valid |
19:24 |
celeron55 |
so please read that thing and write a comment, the internet is waiting |
19:28 |
celeron55 |
i promise not to write such a long text until next year |
19:33 |
Krock |
celeron55: next year is in 2 days FWIW |
19:33 |
celeron55 |
8-) |
19:36 |
|
Fixer joined #minetest-dev |
19:47 |
erlehmann |
celeron55 are there actual contingency plans for all that hosting stuff? like multiple people having access to keep bus factor high? |
19:48 |
erlehmann |
asking bc i have been part of projects where one person managed a domain and there's this pandemic thing making me acutely aware of human frailty |
19:49 |
erlehmann |
and also i have witnessed stuff like the clamity thing where one person ruins it for everyone bc they are done with it a lot. granted, that can prob not happen to minetest ig. |
19:51 |
ShadowNinja |
There are multiple people with access to the domain and GitHub org. |
19:52 |
erlehmann |
that's good to know. |
19:52 |
erlehmann |
hope you all have 2fa etc. pp. |
19:53 |
celeron55 |
yes, there's backup access for DNS |
19:54 |
celeron55 |
but not for forum and wiki data |
19:54 |
MTDiscord |
<Jonathon> would there be any loss if the wiki just disappeared? |
19:54 |
|
benrob0329 joined #minetest-dev |
19:54 |
celeron55 |
the wikis have ended up quite unimportant |
19:54 |
celeron55 |
forum, depends on who you ask |
19:55 |
erlehmann |
i am thinking about this from an attackers perspective: what if an attacker got access: could they nuke the forum history? if yes, might be a good idea to backup some more. regularly, automatically. |
19:55 |
celeron55 |
that's a different scenario |
19:55 |
MTDiscord |
<Jonathon> over half of the wiki is abandoned and or marked for deletion |
19:55 |
celeron55 |
not related to bus factor |
19:55 |
MTDiscord |
<exe_virus> ironically, I still use the wiki sometimes, it has some gems |
19:55 |
erlehmann |
imo the wiki is just an entry drug to either the lua API txt file, github stuff or the logs of this channel in particular |
19:56 |
erlehmann |
some code in the wiki has funny typos that you are only able to solve if you actually understand the issue (and has been having that for quite some time). if this was deliberate, i find it funny. if not, sad. |
19:57 |
benrob0329 |
The wiki would do better as an actual Github Wiki IMO, the 2 Mediawikis are really overkill and difficult to contribute to |
19:57 |
MTDiscord |
<Sublayer plank> ^ this |
19:57 |
erlehmann |
how to actually clone github wiki |
19:57 |
MTDiscord |
<Sublayer plank> git clone https://github.com/minetest/wiki |
19:58 |
erlehmann |
i did not know this was posible. thank. |
19:58 |
benrob0329 |
Yeah, Github wikis are just git repos with markdown files |
19:58 |
MTDiscord |
<Jonathon> agreed having wiki be in github would be better |
19:58 |
benrob0329 |
can be synced with Gitlab or other platforms too for backup |
19:59 |
MTDiscord |
<Sublayer plank> I had written up this draft forum topic for converting the wikis into github pages hosted sites with markdown files as the actual pages, and editing would be done by pull requests but I never posted it |
19:59 |
benrob0329 |
(might require someone to have a script sitting in cron though, I'm not sure if Gitlab will auto sync wikis like it can other repos) |
19:59 |
erlehmann |
from about 5 years of working on it stuff at the same company i have learned that the easiest long-term thing is to put the docs in the main repo and render it out, i.e. static stuff. |
19:59 |
erlehmann |
Sublayer plank if you have written it up, maybe just post it? i think it is a good idea. sounds like one. |
20:00 |
erlehmann |
editing docs via PR is such a breeze compared to wiki GUI workflow that makes commenting on it hard |
20:00 |
benrob0329 |
Actually, maybe just having a mtdocs repo would be the best way to go about it |
20:01 |
benrob0329 |
Seperate the docs from the main portion of code so that it can be updated without needing to conflict with actual code PRs |
20:01 |
erlehmann |
thats the thing: people almost always think that having stuff like grammars, example, docs outside of the main repo is a good idea. i have never seen it work for more than about a few months once. |
20:02 |
MTDiscord |
<luatic> erlehmann: Minetest PRs are never a breeze |
20:02 |
benrob0329 |
You'd need to require a docs PR be made for engine changes like what's currently required for updating the in-repo docs |
20:02 |
erlehmann |
yes ofc |
20:03 |
MTDiscord |
<luatic> If we choose to go full repo & PRs, we should have a doc team |
20:03 |
MTDiscord |
<Jonathon> any solution is better than the current one given there basically no access, it is worse than trying to get a pr merged currently |
20:03 |
MTDiscord |
<luatic> Also a one approval rule |
20:03 |
MTDiscord |
<exe_virus> we've done that idea before, wasn't enough traction yet |
20:03 |
MTDiscord |
<exe_virus> for the docs repo, and an autogenerated .md site |
20:03 |
MTDiscord |
<Jonathon> it wasnt official |
20:04 |
MTDiscord |
<Jonathon> or advertised |
20:04 |
MTDiscord |
<luatic> we already have an official doc folder |
20:04 |
MTDiscord |
<luatic> it contains lua_api.txt among other things |
20:04 |
MTDiscord |
<luatic> it just needs to be cleaned up |
20:04 |
MTDiscord |
<exe_virus> true, we could bring it into the minetest repo |
20:04 |
erlehmann |
also having statically generated docs from info from the main repo enables you to do weird stuff. i once made some thing for a work project where the docs basically only contained examples that worked because the static generator was actually using the current commit of the software. |
20:04 |
MTDiscord |
<exe_virus> and put it in a subfolder, and have a different team do PRs for it |
20:04 |
MTDiscord |
<luatic> and that already has an autogenerated MD site at GitLab |
20:04 |
erlehmann |
i am with luatic |
20:04 |
erlehmann |
just use the doc folder |
20:04 |
celeron55 |
i think it's quite critical docs for a thing are in the same repo as the thing, so that updating docs can be easily required and checked as part of any change |
20:04 |
erlehmann |
that is true too! |
20:05 |
erlehmann |
that way you also sidestep any packaging issues with distributions. |
20:05 |
celeron55 |
the doc generation can be another project though, as long as compatibility problems are avoided |
20:05 |
erlehmann |
the minetest package just contains the up to date docs for free |
20:05 |
MTDiscord |
<exe_virus> agreed, but maybe we can also do something more rich-text than just the current lua_api.txt? |
20:05 |
celeron55 |
but maybe not even that |
20:05 |
MTDiscord |
<luatic> just rename it from .txt to .md |
20:05 |
MTDiscord |
<luatic> unfortunately that might cause lotta "rebase needed" labels |
20:05 |
MTDiscord |
<exe_virus> that's mediocre, because lua_api.txt is a reference |
20:06 |
MTDiscord |
<exe_virus> we also need a tutorial or example set, similar to rubenwardy's book |
20:06 |
MTDiscord |
<luatic> .md has all the rich text you need |
20:06 |
MTDiscord |
<luatic> it supports HTML |
20:06 |
MTDiscord |
<exe_virus> I agree .md is enough |
20:06 |
benrob0329 |
Fun fact: you can use pandoc to render lua_api.txt to a really nice PDF with sections and links that actually feels like a reference document |
20:06 |
MTDiscord |
<luatic> ^ |
20:06 |
MTDiscord |
<exe_virus> I've done it, not what I'm talking about |
20:06 |
MTDiscord |
<luatic> I rendered it with pandoc to HTML instead |
20:06 |
MTDiscord |
<exe_virus> the current wiki provides explanation and examples. |
20:06 |
MTDiscord |
<exe_virus> we should try to do the same, hopefully |
20:07 |
MTDiscord |
<luatic> I'd be surprised if pandoc got the syntax highlighting right |
20:07 |
erlehmann |
having written an o'reilly book http://internetmeme.de (free dl, but only in german) i *strongly* suggest to use RST if you know you need something more powerful than MD. otherwise you have horrible HTML kludges as soon as you have non-trivial tables. you don't need to believe me that, but i will say “i told you so”. |
20:07 |
Pexin |
you're not talking about removing the .txt version I hope? |
20:07 |
erlehmann |
pandoc is p nice |
20:07 |
MTDiscord |
<exe_virus> I personally use LaTeX for more professional work that still .git repo diffs nicely |
20:07 |
MTDiscord |
<luatic> erlehmann: are you two brothers? |
20:08 |
erlehmann |
luatic no we are not. but this is not the first time someone asked. |
20:08 |
MTDiscord |
<exe_virus> Nope, I'm saying: 1 keep lua_api.txt, 2 delete wiki, 3 make new equivalent of wiki in docs sub-folder, using .md files and images |
20:08 |
erlehmann |
exe_virus that is the wrong way around |
20:08 |
erlehmann |
step “make replacement” needs to come before step “kill the old thing” |
20:08 |
MTDiscord |
<exe_virus> sure, sorry. 1 , 3, 2 |
20:08 |
benrob0329 |
I much prefer AsciiDoc to RST, it's simpler than LaTeX while still powerful enough for anything I've ever had to do, but I digress into bikeshedding |
20:09 |
MTDiscord |
<luatic> I prefer Lua DSLs |
20:09 |
erlehmann |
whatever you chose, i can offer help on a) markdown (mainly: LOL ambiguous) b) RST c) HTML d) SVG e) the sphinx doc generator |
20:10 |
benrob0329 |
Anyways, I think that we (mostly) all agree that having a docs repo for further examples and explanations would be nice |
20:11 |
MTDiscord |
<Sublayer plank> https://forum.minetest.net/viewtopic.php?f=3&t=27635 posted it |
20:11 |
erlehmann |
i am pretty sure me and celeron55 do not agree and argue having the docs in the main repo |
20:11 |
erlehmann |
<celeron55> i think it's quite critical docs for a thing are in the same repo as the thing, so that updating docs can be easily required and checked as part of any change |
20:11 |
benrob0329 |
So all of the wiki-style docs should be in the main repo? |
20:12 |
Krock |
documentation must be where the code is. both have to be kept up-to-date. anything else results in confusion and bad version tracking |
20:12 |
MTDiscord |
<Sublayer plank> documentation that would be in the dev wiki should be in the main repo, documentation that would be in the normal wiki should be in another repo IMO |
20:12 |
benrob0329 |
Last I checked getting doc PRs merged wasn't much easier than anything else |
20:12 |
benrob0329 |
the "normal" wiki is really just the MTG wiki for the most part |
20:12 |
benrob0329 |
MTG can have it's own Wiki on the repo easily |
20:12 |
MTDiscord |
<Sublayer plank> hm I didn't think this thorugh did I |
20:12 |
benrob0329 |
*it's own repo |
20:12 |
celeron55 |
the problem though is that then we can't have a separate docs team on github as anyone updating docs will have access to code too |
20:13 |
celeron55 |
which isn't ideal |
20:13 |
benrob0329 |
Gotta love Github team organization |
20:13 |
MTDiscord |
<Jonathon> thats incorrect, you can add users per repo |
20:13 |
erlehmann |
why have a separate docs team though? shouldn't people be required to update the docs when they change APIs or add new ones? |
20:13 |
erlehmann |
github orgs suck so much i have to use it for work :( |
20:13 |
celeron55 |
i mean, if docs are in the same repo as the code |
20:13 |
MTDiscord |
<Jonathon> ah true |
20:14 |
erlehmann |
make it a submodule? |
20:14 |
benrob0329 |
if it's not in the main repo it can likely have a wider scope and grow seperately to the code, ie be more equivalent to the dev wiki |
20:14 |
benrob0329 |
a submodule would work, but everyone hates submodules |
20:14 |
MTDiscord |
<Jonathon> yeah, i would agree a separate repo is more ideal |
20:15 |
benrob0329 |
good old "git submodule update --init --recursive" |
20:15 |
MTDiscord |
<Jonathon> you dont even need to submodule to build the software |
20:15 |
MTDiscord |
<Jonathon> so that wouldnt be a issue like the irrlicht debate |
20:15 |
celeron55 |
i wonder if any existing known project has a docs repo as a submodule... actually, should the code repo be a submodule of the docs repo? that would make the synchronization a task for the docs team |
20:16 |
MTDiscord |
<Jonathon> you could just use depandabot to auto make prs to update the submodule |
20:16 |
celeron55 |
it doesn't sounds right either way |
20:16 |
celeron55 |
-s |
20:16 |
benrob0329 |
Everything sucks but what sucks less? |
20:17 |
MTDiscord |
<Jonathon> if you make the docs a submodule you could probably use them as a submodule to the github hosted website to have a hosted version of them |
20:18 |
MTDiscord |
<Jonathon> . s/github hosted website/minetest.net |
20:20 |
MTDiscord |
<Benrob0329> Thats a good point |
20:21 |
MTDiscord |
<Jonathon> and again, dependabot to keep stuff up to date |
20:28 |
MTDiscord |
<Benrob0329> I have an idea,why don't we not commit to any particular solution, but make an official docs repo and see how it develops? |
20:28 |
MTDiscord |
<Benrob0329> The effort can always be reworked into a better solution later if its decided to say, keep everything in the main repo |
20:28 |
celeron55 |
if you have a plan and a team, i'll make you the repo |
20:29 |
MTDiscord |
<Benrob0329> I'll get back to you on that |
20:33 |
MTDiscord |
<Jonathon> id be will to contribute |
20:34 |
benrob0329 |
I've made the #minetest-docs channel (at least for now) to help centralize the discussion |
20:35 |
erlehmann |
dependabot sucks but i am in no mood to go into this rn |
20:37 |
|
v-rob joined #minetest-dev |
20:39 |
v-rob |
Merging #11848 and #11821 in 10 minutes |
20:39 |
ShadowBot |
https://github.com/minetest/minetest/issues/11848 -- Improve TTF support for pixel-style fonts by v-rob |
20:39 |
ShadowBot |
https://github.com/minetest/minetest/issues/11821 -- Add padding[] element to formspecs by v-rob |
20:49 |
MTDiscord |
<exe_virus> oof, guess I'll have to get a better IRC client if I'm going to contribute to this docs channel |
20:50 |
|
ROllerozxa joined #minetest-dev |
20:50 |
MTDiscord |
<Benrob0329> Hexchat is generally my go-to, Quassel is the other major one |
20:53 |
MTDiscord |
<exe_virus> I've used hex-chat, my only complaint is that I have no good log of recent chat. I mean, dev and hub and minetest all do via the website log, but I doubt your new one does by default? |
20:54 |
appguru |
Thunderbird's builtin chat client keeps logs |
20:55 |
v-rob |
Merged |
20:56 |
Yad |
appguru: I'd love to be able to run Thunderbird for a calendar (as Sunbird used to) without email, but that's off-topic here. :) |
20:57 |
MTDiscord |
<Benrob0329> @ExeVirus Blame Libera for not providing the chathistory IRCv3 feature :P |
20:57 |
MTDiscord |
<exe_virus> Oh, that sounds awesome |
20:57 |
MTDiscord |
<exe_virus> I will commence my blaming |
20:57 |
appguru |
Benrob0329: Such a feature requires keeping logs in the first place |
20:58 |
appguru |
Privacy-focused users might prefer it if no central authority logged their messages |
20:58 |
appguru |
Of course, this doesn't matter for channels such as this one, but it'd have to be opt-in |
21:02 |
|
GreenXenith joined #minetest-dev |
21:02 |
|
v-rob joined #minetest-dev |
21:02 |
celeron55 |
i love how my carefully worded explanation and request for comments ended up with basically a single response of "feck off we don't care" from the core team. i guess if zughy has half a brain and reads that he'll get it |
21:08 |
|
ROllerozxa joined #minetest-dev |
21:17 |
erlehmann |
exe_virus this is a bit weird, but you can get chat history by using an xmpp irc transport and then using basically any modern xmpp client |
21:17 |
erlehmann |
ofc the transport has to run all the time |
21:29 |
|
v-rob joined #minetest-dev |
21:30 |
MTDiscord |
<exe_virus> right, the thing always has to run all the time, that's the drawback of irc in this case. But I understand the privacy |
21:36 |
celeron55 |
i hate to suggest it but i think all of you that are thinking about the doc team are on discord. you can literally just ask GreenXenith to bridge the channel there if you feel like it |
21:37 |
celeron55 |
i don't have a valid reason to deny it |
21:38 |
benrob0329 |
We may, but for now I think that the IRC channel is fine. |
21:38 |
appguru |
Bridge it |
21:38 |
appguru |
We need the logging |
21:38 |
benrob0329 |
This was only born today, we're still getting our ducks in a row. If Green wants to bridge it that's fine though. |
21:40 |
v-rob |
Where is this IRC channel anyway? |
21:40 |
appguru |
v-rob: #minetest-docs |
21:40 |
v-rob |
And what was wrong with #minetest-doc? It's mostly abandoned, but I don't see why it can't be repurposed |
21:41 |
v-rob |
And it has logs |
21:41 |
celeron55 |
you could even borrow #-hub to get a bridged channel for a couple of days, it's not like it's used for anything anyway |
21:42 |
celeron55 |
oh yeah #minetest-doc has logs, i didn't even realize |
21:42 |
appguru |
v-rob: it was forgotten |
21:42 |
celeron55 |
it looks like the logging was stopped during 2019? |
21:42 |
erlehmann |
> i think all of you that are thinking about the doc team are on discord |
21:42 |
erlehmann |
lol |
21:44 |
benrob0329 |
I thought there was an old doc channel, but the current working name for this team is minetest-docs anyways so *shrug* |
21:45 |
v-rob |
Never mind, #minetest-doc's logging doesn't work anymore |
21:45 |
appguru |
#minetest-docs it is then |
21:46 |
|
v-rob joined #minetest-dev |
21:48 |
|
GreenXenith joined #minetest-dev |
21:49 |
v-rob |
Anyhow, I'd appreciate it if people could test #8679 and mash their keyboards to see if keys work as intended |
21:49 |
ShadowBot |
https://github.com/minetest/minetest/issues/8679 -- Add FormSpec key and mouse events by v-rob |
21:52 |
MTDiscord |
<exe_virus> hurm.... is this the right route? Like aren't we trying to merge formspecs and HUD? so wouldn't we just duplicate inputs to both the "formspec" and the "game" (if the formspec is a HUD formspec) |
21:55 |
|
MTDiscord joined #minetest-dev |
22:01 |
v-rob |
Well, the fundamental difference between HUD and GUI is that the GUI can receive focus, e.g. the focus is on a text field or a button or whatever, so events are necessarily sent to the GUI instead of the game. The HUD doesn't get focus at all, so events are sent to the game and not to the HUD, so there is be no duplication. Of course, formspecs themselves will be replaced anyway, so this doesn't necessarily cause problems in the future |
22:01 |
v-rob |
in any case -- it's more of a stopgap solution for modders in the time between now and the new GUI since this is a highly anticipated feature. |
22:01 |
Yad |
v-rob: focus as in keyboard focus, yes |
22:01 |
v-rob |
Mouse focus too |
22:01 |
Yad |
v-rob: precisely ;) |
22:02 |
Yad |
v-rob: I'm glad to hear a new GUI is in the works, too! This is the first news of it for me. |
22:02 |
MTDiscord |
<exe_virus> time estimate? do you want help V-rob? I'm curious your thoughts on that particular piece |
22:02 |
v-rob |
Time estimate for the new GUI? |
22:03 |
MTDiscord |
<exe_virus> yep |
22:04 |
Yad |
Is there anywhere I can glimpse a preview of the progress so far? |
22:06 |
v-rob |
No idea. I'm working on a piece-by-piece basis. I can give time estimates for specific parts, though. If I put my mind to it, I can get the Unicode I've been working on finished in a few weeks. If some SDL2 support for Irrlicht gets merged, I can make the event system in very little time. Since hecks has the OpenGL code merged into Irrlicht, I can write drawing code at any time. Those are all the fundamentals, really. |
22:07 |
v-rob |
If I exposed those APIs to CSM Lua, anyone could write their own GUI from there in pure Lua if they wanted to. |
22:07 |
v-rob |
Unicode is probably the hardest part |
22:09 |
v-rob |
Writing actual GUI widgets is really the easy part. With proper Unicode support, even multiline textareas are relatively easy. |
22:10 |
v-rob |
As for any progress to show off, not really. Nothing I've written has any visible results, only framework code. |
22:15 |
|
Fixer_ joined #minetest-dev |
22:18 |
v-rob |
So, if there was anything to help with, SDL2 would probably be best right now. Unicode is hard to help with since it's so darn hard to wrap your head around. It took me a few months to understand it all. |
22:26 |
erlehmann |
v-rob regarding https://github.com/minetest/minetest/issues/8679 why are you sending keycodes at all? hasn't this been a mess on the web? |
22:27 |
erlehmann |
i probably misunderstand it |
22:29 |
v-rob |
Hmm, not sure about what else I could send |
22:30 |
v-rob |
I think JavaScript sends raw key numbers, but this sends names, which are certainly a step up at least |
22:32 |
v-rob |
So I guess I'm not sure what you're saying |
22:35 |
erlehmann |
v-rob just so i understand this correctly: what happens if i press the ß-key on my keyboard? layout is neo2. |
22:35 |
v-rob |
Do you have to use Shift to press it? |
22:35 |
erlehmann |
no |
22:35 |
erlehmann |
for x11 this is: keycode 34 (keysym 0xdf, ssharp) |
22:36 |
erlehmann |
the ß-key is right of the q-key on my keyboard |
22:36 |
erlehmann |
ß is one of the 30 letters used in the german alphabet (which are the 26 latin letters plus üöäß) |
22:37 |
erlehmann |
and yes, i am using this particularly convoluted example to further my understanding |
22:37 |
v-rob |
No, it's a valid question, and one I'm looking into right now. The whole idea of getting people to test is to find problems with it. |
22:38 |
erlehmann |
so the thing is, as of yet i have found exactly one app that got keyboard layout right |
22:38 |
erlehmann |
the i3 window manager |
22:38 |
erlehmann |
what it does is set an initial layout based on the key positions, but the configuration has the symbols that get emitted |
22:39 |
v-rob |
It looks like Irrlicht lists this as OEM 8, None. Let me look at SDL |
22:41 |
erlehmann |
btw, regarding mouse input. i encountered kids on a server who were unable to craft because they did not have a mouse. that is a problem with current minetest though. not with your proposal. |
22:41 |
erlehmann |
they stole my friends chest contents though |
22:43 |
v-rob |
SDL doesn't have that keycode either. |
22:43 |
v-rob |
So, it would show up as Unknown Key |
22:45 |
erlehmann |
i see. |
22:45 |
v-rob |
Likely as would the other German-specific keys you mentioned. The other ones could show up \, [, or something like that since Irrlicht lists those as OEM keys |
22:46 |
v-rob |
It is, without a doubt, a thoroughly imperfect system |
22:46 |
erlehmann |
i am not sure what exactly the use case for the *arbitrary* keys |
22:47 |
erlehmann |
all the mcl* usecases i know could be solved with having access to the mapped keys only in formspecs |
22:47 |
erlehmann |
this would also prevent abuse and further accessability |
22:47 |
v-rob |
Mainly keyboard shortcuts. For instance, in kilbith's i3, he might want to map C to some craft guide function, S to set focus on the search bar, or maybe Ctrl+S, or whatever. |
22:48 |
v-rob |
Things that can't be solved by mapped keys, but using keys that should be on most keyboards. |
22:48 |
erlehmann |
one thing we would like to have is the ability to shift-click armor into armor slots, since it can not be crafted further. fleckenstein can probably elaborate on that. |
22:48 |
erlehmann |
granted, this is a very tiny use case |
22:49 |
v-rob |
That sounds like a listrings issue, but you might be able to hack it in with this PR |
22:49 |
erlehmann |
listrings? |
22:49 |
v-rob |
If inventory lists don't eat the Shift key |
22:49 |
erlehmann |
i think we can not detect that unfortunately |
22:49 |
erlehmann |
not sure rn |
22:49 |
erlehmann |
do not take my word for it |
22:49 |
v-rob |
It's a formspec element that makes shift+clicking possible |
22:49 |
erlehmann |
ah! |
22:50 |
erlehmann |
my overall question is how to make this accessible for people who do not have the keys that kilbith, the friendliest dev, has set. |
22:50 |
v-rob |
Heh |
22:50 |
erlehmann |
^^ |
22:50 |
v-rob |
One question first: can you bind ß in key settings? |
22:50 |
erlehmann |
let me see |
22:50 |
v-rob |
In normal Minetest |
22:52 |
erlehmann |
v-rob yes i totally can. |
22:52 |
erlehmann |
on another computer that has it as oem-4 though |
22:54 |
Yad |
v-rob: I'm glad people still appreciate that letter of the German alphabet. :) |
22:55 |
v-rob |
Gotcha. That proves me wrong when I assumed the OEM keys were stable |
22:55 |
erlehmann |
v-rob well it is just another keyboard. thinkpad t60 vs thinkad x390 |
23:00 |
v-rob |
To answer the earlier question: letter and number keys like ABC123 are all stable, and I don't know of keyboards that don't have them. Keys like arrows, tab, enter, backspace, F1-F12, shift, delete, etc. are also stable. Apparently, however, as you just proved, things like ', \, [, ], ` are definitely not stable, meaning I'll have to remove them from the API. They may be stable on SDL, but that's a question for another time. |
23:01 |
v-rob |
Therefore, I think that i3 will be forced to be accessible since I won't make any non-accessible keys available in the API. |
23:01 |
v-rob |
That's the hope, at least |
23:09 |
erlehmann |
v-rob, what do you mean with “stable” though? |
23:09 |
v-rob |
As in, the keycodes are the same across all keyboards according to the ISO standard |
23:10 |
v-rob |
The OEM keys will not always have the same character for the same keycodes, although I hoped they would |
23:11 |
erlehmann |
i have another question, do you consider deadkeys or not |
23:11 |
erlehmann |
i can press ^ + space to get a circumflex |
23:11 |
erlehmann |
i can also press ^ + 1 to get ¹ |
23:11 |
erlehmann |
not sure if this is relevant if you keep to 26 latin letters + numerals |
23:13 |
v-rob |
If you can bind the dead key in Minetest right now, it has to be bindable after my PR. The resulting character isn't really important, only the keycode. In any case, they won't make it into my PR's API since they aren't cross-keyboard. |
23:14 |
erlehmann |
how exactly did you figure out the characters common to latin keyboards anyway? some script? |
23:14 |
erlehmann |
it is an interesting question after all |
23:15 |
v-rob |
Just Irrlicht's EKEY_CODE enum compared to SDL's SDL_Keycode enum. I took the codes common to both. |
23:15 |
v-rob |
It was a slow process :P |
23:16 |
erlehmann |
i have something funny for you, j in neo2 is at the location next to the bottom right shift key |
23:17 |
erlehmann |
so the bottom row right above the row with the spacebar is: lshift ü ö ä p z b m , . j rshift |
23:18 |
v-rob |
It should emit the same keycode as J on a QWERTY keyboard. Hopefully. |
23:18 |
erlehmann |
now i have one keyboard where the physical key for that is labeled “- —”, one where it is labeled “/ ?” and one where it is labeled “E €” |
23:18 |
v-rob |
If it doesn't, we're all doomed |
23:18 |
erlehmann |
granted, the last one is probably irrelevant |
23:18 |
erlehmann |
let me check on two different machines. how do i check, bind in minetest? |
23:19 |
v-rob |
yeah |
23:19 |
v-rob |
That's basically the main test |
23:19 |
erlehmann |
and with keycode you mean what minetest displays in the config right? |
23:20 |
v-rob |
Yeah |
23:20 |
v-rob |
So the J key should display J regardless of keyboard layout |
23:24 |
erlehmann |
v-rob j-key seems to be j. but circumflex (left of 1) is on one machine i have OEM 5 and … i found something funny |
23:25 |
erlehmann |
i can bind a neo2 modifier key which minetest then interprets as binding the left mouse key |
23:26 |
erlehmann |
pressing the actual key in game does nothing |
23:26 |
erlehmann |
but in the keyboard settings dialog, it sets the thing to the left mouse key |
23:26 |
erlehmann |
mod4 actually |
23:27 |
erlehmann |
on the physical keyboard of the thinkpad x390 it is right of the left shift key and labeled “> < |” |
23:27 |
erlehmann |
this looks like a bug |
23:28 |
v-rob |
Oh yuk. I can probably explain that: Irrlicht has mice buttons in the keycode enum (don't ask me why), and Minetest uses those since mice buttons are bindable. It's hacky and certainly a bug. |
23:28 |
erlehmann |
well it is nice that they are bindable |
23:28 |
v-rob |
yeah |
23:28 |
erlehmann |
btw your thing with the mousewheels seems reallyhacky |
23:29 |
v-rob |
Which thing? |
23:29 |
erlehmann |
to me mousewheel is just more buttons |
23:29 |
erlehmann |
> type: The type of the mouse event. One of "press", "release", "move", or "wheel". |
23:29 |
erlehmann |
the wheel thing does not make sense to me |
23:29 |
erlehmann |
maybe i am misinformed here, but aren't mousewheels just additional buttons? |
23:30 |
v-rob |
Well, pressing the mouse wheel registers as a "press" event as the middle mouse button |
23:30 |
v-rob |
Scrolling it registers a "wheel" event. Maybe it should be called a "scroll" event since laptop touchpads also can scroll. |
23:31 |
|
Extex joined #minetest-dev |
23:31 |
erlehmann |
oh so this is an sdl or irrlicht thing ig? |
23:31 |
v-rob |
Scrolling's just entirely separate from pressing in general, not just in one input system. |
23:31 |
erlehmann |
ah ok |
23:31 |
erlehmann |
i wonder what happens for people who press mouse 1 and mouse 2 together to get mouse 3 (middle) |
23:31 |
erlehmann |
with your proposal |
23:32 |
v-rob |
If Irrlicht does it's job right, it will give mouse 3. My PR doesn't touch Irrlicht, so nothing should change there. |