You just factor out the diagonal from L on both sides and L becomes unit lower triangular. Here it is
using LinearAlgebra
n=10
r = 5
A = randn(n,r)
A = A * A'
tol = 1e-15
F = cholesky(Hermitian(A), RowMaximum(); tol = tol, check = false)
r = F.rank # rank
L = F.L # lower triangular Cholesky factor
p = F.p # permutation of the rows/columns of A
d = diag(F.L) # diagonal of L
L[:, 1:r] = L[:,1:r] / Diagonal(d[1:r]) # Scale to make L unit lower.
L = UnitLowerTriangular(L)
d = vcat(d[1:r], zeros(n-r)) # last n-r diagonal elements should be zero. (A has rank r.)
D = Diagonal(d.^2) # The diagonal has a contribution from $L$ and $L'$, which square.
@show opnorm(A[p, p] - L * D * L') # check the backward error.
In most applications you could probably work with the Cholesky factor directly, so I’m not sure there’s much advantage in pulling out D from the triangular factors.