My first association is to add to each unit its type number. So if you will have the IC with two comparators and two AND gates you will give the comparators the type 1, the gates the type 2 and the power supply type 3. That way annotation will know which element can be used in replace for other.
My problem is/was that I didn’t heard (or didn’t remembered) about de-morgan when found that feature in Protel so I used it as I needed. After 20 years of such use for me DeMorgan means simply different picture (for IC used to add supply, for resistors used to make 1/4 shorter symbol, for capacitor used to make 1/2 shorter symbol, for dual diodes used to have them in serie or with common pin at one side, for relays used to have coil pins reversed, for optocouplers to revert LED, for Ethernet connector to revert RX/TX order and so on…).
As I am designing schematics really only used by me and don’t work in any team so In that subject I live like at desert island. When I written in this thread first time to use DeMorgan I just thought all understand DeMorgan as me - as just different symbol (with or without power supply pins added) don’t remembering that it comes from A&&B == !(!A || !B).
In KiCad in pin properties it is named as body styles (DeMorgan is only in () ) so it seems to be similar to my understanding. Also allowing to specify that pin is ‘Common to all units’ looks like it is specially added just for supply pins as I am using it (can’t imagine other purpose of this flag).
As I don’t use the schematic style with all IC supplies symbols accumulated in one place I prefer to have the power pins at one of gates. As I suppose to use only 1G and 2G the problem for me is only about 2G buffers/inverters, as gates I will use 1G as SOT23-6 (or SOT363) has not enough pins for 2G.
As I have left the old PC with Protel installed on it may be when V6 comes I should move to new PC with old one with V5 designs left to be able to open something just with no problems
Currently I have only 2 symbols using DeMorgan to add power pins. It will be not a big pain to adopt them manually for new rules.
Good testifies to you (I used Google translator, hope that means what I wonted to say).
In past (Protel) I used sometimes edge cuts in footprints. The most important from my point of view is when I used it to mount the module:
https://www.dresden-elektronik.com/product/24-ghz-avr-derfmega256-23m00.html
As it is not destined to hand solder it and we needed only few items with it I placed it at its back making the opening exactly to fit for its shield then used it in 4 PCBs that way that edge cuts from footprint composed with not closed edge cuts of PCB. That way I only once had to ensure myself that my precision dimension measurements and calculations are correct. I didn’t used it in KiCad yet.