code logs -> 2016 -> Wed, 06 Apr 2016< code.20160405.log - code.20160407.log >
--- Log opened Wed Apr 06 00:00:13 2016
00:08
<&ToxicFrog>
Hmm.
00:08
<&ToxicFrog>
This is a problem.
00:10
<&ToxicFrog>
When sizing a UI element, it's told the bounding box it has available to it.
00:10
<&ToxicFrog>
It does any trimming needed, passes that BB to its children and tells them to size themselves.
00:11 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has quit [Ping timeout: 121 seconds]
00:12
<&ToxicFrog>
Then, based on those, it sizes itself and then positions its children.
00:13
<&ToxicFrog>
Unfortunately, where the wheels come off is that some of the children may need to know the parent's size to size themselves!
00:14
<&Derakon>
I have precisely one UI element in µManager (my work program) that works like that.
00:14
<&Derakon>
It's a nightmare.
00:14
<&McMartin>
... This seems like it should be a traditional problem with a traditional solution.
00:14
<&Derakon>
I strongly encourage you to arrange your UI so you don't need that.
00:14
<&McMartin>
For sufficiently "spider is eating your face" definitions of "solution"
00:15
<&Derakon>
Generally you would have a layout manager which can handle things like "this element grows to fill available space", "this element has a left-border of 5px", "these two elements split available space horizontally in a 75/25 split", etc.
00:15
<&Derakon>
I assume this is ttymor?
00:15
<&McMartin>
Yeah, iOS includes a literal linear-equation constraint solver
00:15
<&McMartin>
You set constraints to set formulas and it does solutions as needed
00:16 * Vornicus throws css at the problem, done.
00:16 himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Connection closed]
00:16
<&Derakon>
The recommended layout manager in Java this days is MigLayout, where you do things like "panel.add(component, "alignx right, gapleft fill, growy");"
00:16
<&ToxicFrog>
Derakon: yes, it is.
00:17
<&Derakon>
TF: unfortunately I'm not aware of any layout managers for curses~
00:17
<&ToxicFrog>
I'm not even using curses, I'm just slinging raw vt220 codes
00:17
<&McMartin>
Derakon: Does this MigLayout have a newsletter I can subscribe to?
00:18
<&ToxicFrog>
But yeah, the bit specifically where it's going wrong is the log window
00:18
<&McMartin>
Looks like miglayout.com?
00:18
<&ToxicFrog>
Which is a Box with Size(40, inf), meaning 40 cells wide and as many as its container will give it high
00:18
<&ToxicFrog>
And it contains within it a List with Size(inf, inf), so it should fill the box perfectly.
00:19
<&Derakon>
McM: yes.
00:19
<&ToxicFrog>
The problem is what what actually happens is this:
00:19
<&ToxicFrog>
- top-level screen passes the screen-sized BB to the Box
00:20
<&ToxicFrog>
- Box trims off decoration size and passes the resulting BB to the List
00:20
<&ToxicFrog>
- List cheerfully fills the entire screen, sans borders
00:20
<&Derakon>
I think you want, like, a view onto the list.
00:20
<&Derakon>
In Java this would be a ScrollPane.
00:21
<&Derakon>
Its size is just whatever its BB size is, but when it renders it shows a window into whatever it contains.
00:22
<&ToxicFrog>
That's the intent, yes, and Size(inf,inf) is "the size of your bounding box"
00:23
<&ToxicFrog>
The problem is that the Box doesn't realize its BB width is clamped at 40 until after telling its children to size themselves.
00:23
<&Derakon>
Wait, so the order is "List determines size it needs" and then "BB is passed to List"?
00:23
<&ToxicFrog>
Conversely, I can't tell it to size itself first because some elements size themselves to be just large eough to hold their childnre
00:23
<&ToxicFrog>
no
00:23
<&ToxicFrog>
baby hapnhik
00:24
<&Derakon>
Heh.
00:24
<&Derakon>
Man, I don't know how layout managers work, I just use the things.
00:24
< catalyst>
I suspect WPF's flexibility has ruined my ability to use anything else for GUIs
00:31
<&McMartin>
I got the impression that WPF was optimized for specific use cases and that one often had to go back to WinForms if one was not in that usecase
00:31
<&McMartin>
But I have no actual evidence for this either way
00:35
<~Vornicus>
TF: this sounds like List isn't even looking at the box's bb.
00:36
<~Vornicus>
'cause if you're on 80x25, and the screen makes no decorations and box has padding 1, you should get to List with the bounding box 38x23 in hand.
00:36
<&ToxicFrog>
Ok, babby slep
00:36
<&ToxicFrog>
Here's how it works
00:37
<&ToxicFrog>
Widget is passed a BB from its parent. This is the maximum amount of space the widget can use. It's allowed to use less.
00:37
<&ToxicFrog>
However, depending on the sizing rules in effect, it may not be able to figure out what size it wants until it knows the size of its children.
00:38
<&ToxicFrog>
So it trims the BB if necessary and passes the trimmed BB to its children and tells them to size.
00:38
<~Vornicus>
the way HTML handles this is to in fact have two different sizing measurements available, percentage and united
00:38
<&ToxicFrog>
The children use the same routine for sizing, recursively all the way down the widget tree.
00:38
<&ToxicFrog>
Once all children are sized, it then sizes itself.
00:39
<&ToxicFrog>
Possible sizing rules (per axis) are: fixed size; size relative to parent; fill parent BB; shrink to enclose children.
00:39
<~Vornicus>
Okay. I don't see how this would have the effect of List thinking it *actually* has the whole screen to itself.
00:39
<&ToxicFrog>
The Box is passed the whole screen bb, say 80x25
00:39
<~Vornicus>
Right.
00:39
<&ToxicFrog>
It trims that to 78x23 and passes it to List.
00:40
<&ToxicFrog>
List goes "oh, I have the whole screen available" and expands to fill.
00:40
<&ToxicFrog>
Box then goes "ok, all my children are sized, I can compute my own size now! height=fill=25; width=fixed=40;
00:40
<~Vornicus>
But you told me that the box is supposed to have x size 40 up above.
00:40
<&ToxicFrog>
Yes, but like I keep saying, a widget isn't sized until all of its children are
00:40
<~Vornicus>
Stop, that part made no sense.
00:41
<&Derakon>
How does Box know that its width should be 40?
00:41
<&ToxicFrog>
Derakon: when it was constructed, it was given a :size method that returns (40, <height of BB>)
00:41
<~Vornicus>
Box already knows its size is supposed to be 40
00:41
<&Derakon>
Okay, then it should be modifying the BB it hands to its children.
00:41
<&ToxicFrog>
I am clearly explaining this poorly.
00:41
<~Vornicus>
Why isn't List finding that out?
00:42
<&ToxicFrog>
Box doesn't know how large it wants to be until it calls self:size(bb)
00:42
<&Derakon>
But it knows that its max width is 40, right?
00:42
<~Vornicus>
So why is it calling it so late
00:42
<&ToxicFrog>
It cannot safely call that until all of is children have known sizes, because depending on the sizing rules in effect :size() may need to interrogate the size of all of its children.
00:43
<~Vornicus>
If you have an explicit width already it should pass that along.
00:43
<&Derakon>
Well, the problem here is that the children sizes are exceeding the parent's max size, so clearly the children need to be constraining their size choices based on the constraints of the parent.
00:44
<&ToxicFrog>
Yeah.
00:44
<&ToxicFrog>
I'm just struggling with a way to do that that isn't just piling ugly hacks on.
00:45
<&Derakon>
When your size() method is called, you're handed a BB, right?
00:45
<&Derakon>
Which determines the maximum size you are allowed to use?
00:46
<&Derakon>
And the Box in this case is being handed a BB of (full screen) but in actual fact should never use more than (40, maxint)?
00:46 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has joined #code
00:46 mode/#code [+o Reiv] by ChanServ
00:46
<&ToxicFrog>
Derakon: yeah.
00:46
<&Derakon>
So, something like this:
00:46
<&Derakon>
def size(bb):
00:47
<&Derakon>
bb.width = max(bb.width, myMaxWidth)
00:47
<&Derakon>
Er, min.
00:47
<&Derakon>
bb.height = min(bb.height, myMaxHeight)
00:47
<&ToxicFrog>
And I mean, for this specific case, the obvious answer is "call size() before sizing children, trim result, pass to children", but that blows up as soon as I try to instantiate one of the in-game menus, which have a :size() that shrinks to just enclose the contents of the menu itself.
00:47
<&Derakon>
[child.size() for child in children]
00:47
<&Derakon>
deriveSizeFromChildren()
00:48
<&ToxicFrog>
Which means throwing out the way :size() currently works, which is a shame, because I was really quite happy with it :/
00:48
<&Derakon>
:\
00:48
<&Derakon>
Alas, if it doesn't work, then it needs to be changed somehow.
00:48
<&ToxicFrog>
(when you create a widget, you pass size=Size(...) and position=Position(...); these return functions that the layout manager uses to compute the size and position as described above)
00:48
<&ToxicFrog>
Yeah.
00:48
<&Derakon>
It might be worth bringing on board an actual layout manager.
00:49
<@Reiv>
ToxicFrog: What are you doing that involves the phrase in-game-menus
00:49
<&Derakon>
Obviously you can't use it directly, but you could have some kind of hidden GUI with widgets based on the widgets in your console, and let it determine the sizes and alignments for things.
00:49
<&ToxicFrog>
Reiv: still ttymor
00:49
<@Reiv>
'k
00:50
<~Vornicus>
the way it works in html/css is that things down the tree get the explicit size or maximum size if there is one, and then come back up with the size they want. This is way easier with examples, but it is certain that the list and all its items will receive the 40 it needs to know before they try to size themselves.
00:52 catalyst` [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code
00:52 catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [Connection closed]
01:01
<~Vornicus>
(technically: what you've described so far is the "block" display type; the default width for block type elements is 100% of parent's width after any padding issues are handled.)
01:04
<&ToxicFrog>
Right. Which means widgets need a way to ask "given this parent bounding box, what is my real maximum size" on the way down and then "given this parent bounding box and the size of all of my children, what is my final size" on the way back up.
01:04
<~Vornicus>
Sounds sensible.
01:08
<&ToxicFrog>
Which in turn means I need to think up an API for specifying that, blerg.
01:08
<&ToxicFrog>
Maybe Size() now just returns a little subject with maxsize() and realsize() methods or something.
01:11
<~Vornicus>
I'd just have bounds() and size()
01:12
<&McMartin>
"subject"?
01:12
<&ToxicFrog>
subobject, whoops
01:12
<&McMartin>
am disappoint :(
01:13
<~Vornicus>
I don't really see the point in making it, uh, deeper
01:18
<&ToxicFrog>
Vornicus: so, the main reason it's structured the way it is right now is that it makes the API for setting them up pleasingly simple
01:18
<&ToxicFrog>
I guess I could have something like:
01:19
<&ToxicFrog>
ui.Box { ...; size = { 40, inf }; position = { -1, -1 }; }
01:19
<&ToxicFrog>
And then the ctor turns those into bounds() and size() functions
01:22 catadroid [catalyst@Nightstar-ggru38.dab.02.net] has joined #code
01:27 Turaiel[Offline] is now known as Turaiel
01:34 catalyst` [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: Leaving]
01:41 himi [fow035@Nightstar-dm0.2ni.203.150.IP] has joined #code
01:41 mode/#code [+o himi] by ChanServ
02:15 Turaiel is now known as TurTopia
03:41 TurTopia is now known as Turaiel
04:16 io\voted is now known as iospace
04:38 catadroid` [catalyst@Nightstar-7q31jr.dab.02.net] has joined #code
04:40 catadroid [catalyst@Nightstar-ggru38.dab.02.net] has quit [Ping timeout: 121 seconds]
04:41 Derakon is now known as Derakon[AFK]
05:08 Turaiel is now known as Turaiel[Offline]
05:22 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has quit [Ping timeout: 121 seconds]
05:46 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has joined #code
05:46 mode/#code [+o Reiv] by ChanServ
06:16 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has quit [Ping timeout: 121 seconds]
06:22 celticminstrel [celticminst@Nightstar-q0f7bb.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
06:39 Kindamoody[zZz] is now known as Kindamoody
07:06
< crystalclaw|AFK>
ohF***
07:06 crystalclaw|AFK is now known as crystalclaw
07:06
< crystalclaw>
I think I just changed the volume on a radio station's transmitter
07:08
< crystalclaw>
Someone sent me a link to an unsecured transmitter's page, and I accidentally clicked on the volume adjuster and I don't know what it was set at. Thankfully it wasn't live (I don't think) but ohF***
07:13
<~Vornicus>
crystalclaw, as a sound guy, I am obligated by professional standards to say the following
07:13
<~Vornicus>
DON'T TOUCH MY FUCKING LEVELS
07:14
< crystalclaw>
It was an accident! I didn't mean to click.
07:14 * Vornicus graaaaaaghs, chews grumpily on crystalclaw's head.
07:14
< crystalclaw>
After I panic-closed the page, I set it back to close to what I think it was. Hopefully they're not IP logging, I'm not behind any proxies or anything
07:15
< crystalclaw>
Though if they leave their transmitter unsecured...
07:15
<~Vornicus>
dude it's an unsecured control page. They won't think of it
07:15
< crystalclaw>
Hopefully not
07:16
< crystalclaw>
I want to do something to it to troll and make them aware of their vulnerability harmlessly, but HOLY F*** IT'S A RADIO TRANSMITTER!
07:16
<~Vornicus>
you are allowed to swear you know
07:17
< crystalclaw>
oh
07:18
< crystalclaw>
Well, I default to safe rather than sorry
07:18
< crystalclaw>
Don't want to get banned for a stupid mistake, especially since I don't usually swear
07:18
<~Vornicus>
Less you swear, the bigger the bomb goes off when you do, yes.
07:19
<~Vornicus>
But this situation does warrant~
07:20
< crystalclaw>
Apparetly that transmitter manufacturer password protects advanced settings, but not 'basic' stuff or something
07:21
< crystalclaw>
Okay, it wasn't a transmitter, it was a high-quality audio pipe hardware control panel
07:22
< crystalclaw>
Might not be a radio station, but still, WTF
07:22 * crystalclaw sighs in relief
07:23
<~Vornicus>
There are several levels of wtf here
07:23
< crystalclaw>
yes
07:23
< crystalclaw>
What specifically are you referring to though?
07:26
<~Vornicus>
Well there's the fact that the control panel is internet accessible in the first place, there's the weird granularity on the security settings, there's
07:27
< crystalclaw>
Apparently that thing is marketed for intercoms, but it does everything you'd need from a livestreaming setup, so they market it for other things on the side
07:29
< crystalclaw>
well, a basic setup. Why was a radio station using this? (I know at least one station did) http://www.barix.com/products/annuncicom-family/barix/Product/show/annuncicom-15 5/
07:30
< crystalclaw>
Yeah, unsecured controls on the main page is stupid
07:35
<~Vornicus>
If I had to guess that's to allow for instance people in another part of the studio to cut in. But this is a guess.
07:35
< crystalclaw>
Oh, that could be
07:37
< crystalclaw>
I found a search for that device on shodan. the first one I clicked on, under "security configuration" says "not set" for all the password stuff, including telnet
07:38
<&McMartin>
23:19 <~Vornicus> But this situation does warrant~
07:38
<&McMartin>
Ha ha
07:38
<&McMartin>
Yeah, one of my friends was a Mech E and was unusually reluctant to swear
07:39
<&McMartin>
It turns out that this is because the switch you pull when a piece of industrial machinery is about to apply several meganewtons of force to a hapless wall or grad student is the "oh shit" switch
07:39
<&McMartin>
And since that is the threshold for "oh shit" for him he doesn't get the opportunity to swear much
07:40
<~Vornicus>
I used to swear a lot less. One time at college I did in the middle of class and *everyone* turned to look at me.
07:40
<~Vornicus>
with audible gasps
07:40
<&McMartin>
LE GASP
07:40
< crystalclaw>
I don't swear much because then people tend to underestimate me and think I'm innocent >.>
07:41
<&McMartin>
On a totally unrelated note
07:41
<&McMartin>
Am I the only person bothered by the fact that here in Glorious Future Yeary 2016 we have major networked intelligence operations named SHODAN and SKYNET
07:41
<~Vornicus>
No.
07:43
< ion_>
Our internet is literally powered by skynet
07:43
< ion_>
there's a PSU maker who uses the name, their products wind up in things like cisco switches and so forth
07:43
<&McMartin>
Yeah, there's one for flight tracking too, IIRC
07:44
<~Vornicus>
clearly that's SkyNET, not SKYNET
07:51
< crystalclaw>
SO TEMPTED to enable "internet radio" mode on one of these, press the "talk" button on the UI, and listen in for a bit.
07:51
< crystalclaw>
But that could be bad for my health
08:17
< crystalclaw>
I was just searching shodan, and I found a server in isreal that supported telnet. When I connected to it, it said 'Check Point FireWall-1 authenticated Telnet server running on isis1' o.o
08:51 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection reset by peer]
08:53 himi [fow035@Nightstar-dm0.2ni.203.150.IP] has quit [Ping timeout: 121 seconds]
09:05 Kindamoody is now known as Kindamoody|afk
09:18
< abudhabi>
Is JavaFX 8 any good?
10:59 sshine [simon@Nightstar-a7j18s.static.netgroup.dk] has joined #code
11:03
< sshine>
I've got a database layer and a transaction layer on top; and then this method, DBLayer.DeleteRegistration(DBHandle dbHandle, Registration reg) { dbHandle.RequireTransaction(); int regId = reg.Id.Value; ...delete...; dbHandle.RegisterOnPartialCommit(() => reg.Id = null); }, I put the responsibility of passing an actually databased Registration to this method. should that be the responsibility of the transaction layer or the database layer?
11:03
< sshine>
I guess it might be a caller/callee convention thing, but it worries me when functions have assumptions that are stated outside of them.
11:05 Emmy-zZz is now known as Emmy
11:05
< sshine>
err, sorry for the messy explanation. as it is now, the transaction layer contains the assertion; Assert.NotNull(reg.Id); ...; DBLayer.DeleteRegistration(dbHandle, reg);
11:06
< Emmy>
what language is that even?
11:06
< sshine>
it's pseudo-C# :P
11:06
< sshine>
C~?
11:06
< Emmy>
Ah.
11:07
< Emmy>
I don't know any C* any more. :(
11:07
< sshine>
my next language will be one that's actually called F*
11:07
< sshine>
sorry, the language I'm going to look at next. it actually exists now.
11:07
< sshine>
fstar-lang.org
11:08 catadroid [catalyst@Nightstar-htlg4m.dab.02.net] has joined #code
11:08
< sshine>
it's a dependently typed superset of both F# and O'Caml.
11:08
< Emmy>
on the other hand, if you've got questions about Access/VBA/ASQL, i can help with those. :P
11:08
< sshine>
neat!
11:08 * TheWatcher ponders F*
11:08
< sshine>
I don't. but it's nice to know. :P
11:09
< sshine>
TheWatcher, I think one can think of it as a really advanced type-safe macro language on top of F#/O'Caml.
11:09 catadroid` [catalyst@Nightstar-7q31jr.dab.02.net] has quit [Ping timeout: 121 seconds]
11:10 * sshine feels that ever since he started working full-time, he spends a lot less processing power on average understanding new things.
11:10
< Azash>
That'll happen
11:10
< sshine>
I still don't really get dependent types, and I still can't comprehend A Cyborg Manifesto.
11:10
< Azash>
Working a mental job full-time leaves you drained enough to not have spontaneous interest in it
11:11
< sshine>
yeah, must be it.
11:11 * Azash has not made a single credit of progress on his degree for 2+ years
11:11
< sshine>
50 hours a week programming at work and I don't even open my laptop at home for weeks sometimes.
11:11
< sshine>
actually, my laptop was seized by the police this weekend, and I hardly even miss it.
11:12
< Azash>
Oh dear
11:12
<@TheWatcher>
it... what
11:12 catadroid [catalyst@Nightstar-htlg4m.dab.02.net] has quit [Ping timeout: 121 seconds]
11:12
< sshine>
yeah. I was charged of producing explosives. >_<
11:14
< Emmy>
Yeap, that's so very true.
11:14
< sshine>
I was just looking at someone who was making a tiny amount of nitrogen triiodide. it was quite entertaining as it crackles when you walk on it.
11:14
< Emmy>
....wut. do they seize things for that nowadays.
11:15
< sshine>
anyway, about my question: is one convention better than the other? shouldn't the assertion rest in the DB layer?
11:15
< sshine>
Emmy, when you trigger a HazMat bomb squad they do.
11:16
< Emmy>
but how do you trigger a bomb squat :S
11:16
< sshine>
it was all good, though. I got to see the inside of a prison for 12 hours.
11:16
< sshine>
Emmy, you accidentally sprinkle crackling powder everywhere :P
11:16
< Emmy>
...Ah
11:17
< Azash>
Emmy: Well, first you make sure your feet are roughly at shoulder width..
11:17
< sshine>
it was amazingly unstable. even the wind blowing would trigger it.
11:18
< sshine>
I can understand why large amounts of this stuff is punishable by a number of years in prison.
11:19
< sshine>
my friend had just made a tiny pinch of it.
11:25
< sshine>
question: in C#, is adding event handlers idempotent? does this.SomeEvent += this.OnSomeEvent; this.SomeEvent += this.OnSomeEvent; trigger just once?
12:20
<@gnolam>
sshine: ...
12:23
< sshine>
I googled. ok.
13:46 catadroid [catalyst@Nightstar-2isblc.dab.02.net] has joined #code
14:47 Derakon[AFK] is now known as Derakon
15:24 catadroid` [catalyst@Nightstar-2isblc.dab.02.net] has joined #code
15:24 catadroid [catalyst@Nightstar-2isblc.dab.02.net] has quit [The TLS connection was non-properly terminated.]
15:29
< abudhabi>
Anyone here have a yahoo account*
15:29
< abudhabi>
?
15:29 catadroid` [catalyst@Nightstar-2isblc.dab.02.net] has quit [Ping timeout: 121 seconds]
15:29
< abudhabi>
I need to figure out how to set up sending from an external alias in yahoo mail, but I don't want to give yahoo my phone number just for the privilege of taking a screenshot.
16:03 ErikMesoy [Erik@Nightstar-hq72t5.customer.cdi.no] has joined #code
16:03
< ErikMesoy>
Some of what I'm working on for the Great Thing: http://imgur.com/ERtcpA7 Test, production and PDF reference are of course no two alike and all three wrong
16:11
< abudhabi>
You sure it's legal for you to show us this sausage?
16:17 catadroid [catalyst@Nightstar-2isblc.dab.02.net] has joined #code
16:19
< ErikMesoy>
Yes! I explicitly requested approval to do so!
16:20
< ErikMesoy>
The content is freely available at stortinget.no if you can navigate their shit; the layout and other metaphorical sausage ingredient was deemed not confidential.
16:34 celticminstrel [celticminst@Nightstar-q0f7bb.dsl.bell.ca] has joined #code
16:34 mode/#code [+o celticminstrel] by ChanServ
16:49 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
16:49 mode/#code [+qo Vornicus Vornicus] by ChanServ
16:59 sshine [simon@Nightstar-a7j18s.static.netgroup.dk] has quit [[NS] Quit: Leaving]
17:38 gizmore [kvirc@Nightstar-jleto6.dip0.t-ipconnect.de] has joined #code
19:20 catadroid` [catalyst@Nightstar-p4uif5.dab.02.net] has joined #code
19:24 catadroid [catalyst@Nightstar-2isblc.dab.02.net] has quit [Ping timeout: 121 seconds]
19:35 Alek [Alek@Nightstar-n7s.4qg.15.24.IP] has quit [Ping timeout: 121 seconds]
19:38 Alek [Alek@Nightstar-9qtiqv.il.comcast.net] has joined #code
19:38 mode/#code [+o Alek] by ChanServ
19:52 * celticminstrel wonders if bash has a "delete next word" or "delete to end of line" shortcut.
19:54
< [R]>
man bash
19:56
< [R]>
kill-line (C-k)
19:56
< [R]>
Kill the text from point to the end of the line.
19:56
< [R]>
kill-word (M-d)
19:56
< [R]>
Kill from point to the end of the current word, or if between
19:56
< [R]>
words, to the end of the next word. Word boundaries are the same
19:56
< [R]>
as those used by forward-word.
20:01
<&jerith>
Those are pretty standard "emacs" keybindings.
20:01
< [R]>
Yes
20:02
< [R]>
readline (which bash uses) defaults to "emacs" keybindings.
20:02
<&jerith>
M-f and M-b are forward-word and back-word, C-a and C-e are go-to-start-of-line and go-to-end-of-line.
20:02
<&jerith>
I use all of those a lot.
20:38 Alek [Alek@Nightstar-9qtiqv.il.comcast.net] has quit [Connection closed]
20:42 Alek [Alek@Nightstar-9qtiqv.il.comcast.net] has joined #code
20:42 mode/#code [+o Alek] by ChanServ
20:45 macdjord [macdjord@Nightstar-ahbhn1.cable.rogers.com] has quit [Ping timeout: 121 seconds]
20:46 Kindamoody|afk is now known as Kindamoody
20:46 macdjord [macdjord@Nightstar-ahbhn1.cable.rogers.com] has joined #code
20:46 mode/#code [+o macdjord] by ChanServ
21:26 rolller [rolller@Nightstar-e82.a1q.248.49.IP] has joined #code
21:26 rolller [rolller@Nightstar-e82.a1q.248.49.IP] has left #code []
21:53 Reiv [NSwebIRC@Nightstar-q8avec.kinect.net.nz] has joined #code
21:53 mode/#code [+o Reiv] by ChanServ
22:43 catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code
22:49
<@celticminstrel>
Only the kill-line one is working for me... but forward/back word works too...
22:49
< [R]>
The M in this case is alt.
22:49
<@celticminstrel>
Yeah, Alt-d just beeped at me.
22:50
<@celticminstrel>
As did Esc+d
22:51
< [R]>
What's your terminal?
22:51
< [R]>
gnome-terminal or something else that steals short-cuts?
22:51
<@celticminstrel>
Mac Terminal.
22:51
<@celticminstrel>
It only steals command-key shortcuts, I think...
22:52
<@celticminstrel>
The forward/back word shortcuts do work. And delete word backwards works, I think.
22:52
<@celticminstrel>
My manpage mentions something about inputrc.
23:18 * catalyst wonders if it's too late to change it to docpage
23:21
<~Vornicus>
little bit. but it is for manual from the latin word manus for hand, as opposed to from the germanic word for man
23:24 * catalyst is being mostly non-serious
23:26 Emmy is now known as Emmy-zZz
23:30 catalyst [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: Leaving]
23:39 gizmore [kvirc@Nightstar-jleto6.dip0.t-ipconnect.de] has quit [[NS] Quit: KVIrc 4.9.1 Aria http://www.kvirc.net/]
23:46 Kindamoody is now known as Kindamoody[zZz]
--- Log closed Thu Apr 07 00:00:29 2016
code logs -> 2016 -> Wed, 06 Apr 2016< code.20160405.log - code.20160407.log >

[ Latest log file ]