Time Nick Message 10:46 sfan5 it would help if you included quick reproduction code in your issues 10:51 MTDiscord sfan5: was about the first thing I was gonna do today, it's really simple tho 10:57 MTDiscord sfan5: done 15:24 MTDiscord 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 Shouldn't be dangerous: ESC should directly take them to the game menu where they can leave. 16:01 MTDiscord 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 Agreed 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: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 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: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: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 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: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 would there be any loss if the wiki just disappeared? 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 over half of the wiki is abandoned and or marked for deletion 19:55 celeron55 not related to bus factor 19:55 MTDiscord 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 ^ this 19:57 erlehmann how to actually clone github wiki 19:57 MTDiscord 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 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 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 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 If we choose to go full repo & PRs, we should have a doc team 20:03 MTDiscord 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 Also a one approval rule 20:03 MTDiscord we've done that idea before, wasn't enough traction yet 20:03 MTDiscord for the docs repo, and an autogenerated .md site 20:03 MTDiscord it wasnt official 20:04 MTDiscord or advertised 20:04 MTDiscord we already have an official doc folder 20:04 MTDiscord it contains lua_api.txt among other things 20:04 MTDiscord it just needs to be cleaned up 20:04 MTDiscord 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 and put it in a subfolder, and have a different team do PRs for it 20:04 MTDiscord 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 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 just rename it from .txt to .md 20:05 MTDiscord unfortunately that might cause lotta "rebase needed" labels 20:05 MTDiscord that's mediocre, because lua_api.txt is a reference 20:06 MTDiscord we also need a tutorial or example set, similar to rubenwardy's book 20:06 MTDiscord .md has all the rich text you need 20:06 MTDiscord it supports HTML 20:06 MTDiscord 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 ^ 20:06 MTDiscord I've done it, not what I'm talking about 20:06 MTDiscord I rendered it with pandoc to HTML instead 20:06 MTDiscord the current wiki provides explanation and examples. 20:06 MTDiscord we should try to do the same, hopefully 20:07 MTDiscord 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 I personally use LaTeX for more professional work that still .git repo diffs nicely 20:07 MTDiscord 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 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 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 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 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 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 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 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 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 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 yeah, i would agree a separate repo is more ideal 20:15 benrob0329 good old "git submodule update --init --recursive" 20:15 MTDiscord you dont even need to submodule to build the software 20:15 MTDiscord 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 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 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 . s/github hosted website/minetest.net 20:20 MTDiscord Thats a good point 20:21 MTDiscord and again, dependabot to keep stuff up to date 20:28 MTDiscord 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 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 I'll get back to you on that 20:33 MTDiscord 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: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 oof, guess I'll have to get a better IRC client if I'm going to contribute to this docs channel 20:50 MTDiscord Hexchat is generally my go-to, Quassel is the other major one 20:53 MTDiscord 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 @ExeVirus Blame Libera for not providing the chathistory IRCv3 feature :P 20:57 MTDiscord Oh, that sounds awesome 20:57 MTDiscord 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 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: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:30 MTDiscord 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: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 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) 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 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 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: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 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.