Still no good way to achieve this?
There's a not-so-ugly workaround for through hole wire jumpers (mainly used to cross traces on single- or double-layer boards)
Place a two-pad footprint, where the pads are through holes having the same pin number, then manually assign the necessary net to each of the pads manually in the properties dialog, then connect both ends of the trace that has to cross over other traces to the pads.
By this point, it's all fine except that you still have the ratsnest line between the pads: kicad thinks that the pins with the same number are not connected (the reason of which is beyond me). The workaround I mentioned, and that was mentioned in one of the previous posts, is to connect the pads on a virtual layer that will be ignored in fabrication.
But what do we do for SMD jumpers, for which zero-ohm resistors are used? Everything said above applies to them, except that they cannot be connected in a different layer, unless you place vias under the pads, but I'm not sure that's even going to work, and besides, how do we exclude them from fabrication (unless it's a DIY board)?
In Proteus, for example, you can simply place a footprint (doesn't have to be in the schematic, which is correct) with two pads with the same pin number, which are immediately treated as internally connected, and then simply connect a trace to them as you need, and they automatically assume the net of the trace that you connected. It glitches when you use more than one jumper on the same trace, but that's a different story. I imagined something similar would be possible in KiCad, but apparently it takes years (there's that ages old issue) and great courage to decide whether the pins with the same number are connected internally in the device or not. I have an easy answer: check the datasheets. Yes they most definitely are. If you don't want them connected, use different pin numbers, that's it.