Pure C, with using the symbols provided by the CMSIS-mandated device headers (i.e. what's in [Cube]\Drivers\CMSIS\Device\ST\[family]\Include\). I also don't use any STM32-specialized IDE - I use programmer editors of my choice, and then gcc and gdb in their command-line form (using make or even simple batch files). This is considered an extreme approach by many on this forum and elsewhere, but works for me as a means to have full control over what I do, avoiding being locked to any particular toolchain or even a mcu family.
For example, this is a simple clock using a similar LCD "glass" on the 'L4 Disco (CMSIS-mandated headers, plus an "augmenting" header here). It may quite well be that the LCD driver on the 'L1 is very similar, bud I did not check. Using the LCD is relatively simple, much of the code just "transforms" the input data to bits in registers driving the individual segments.
JW
PS. Please change your username to a normal nick.