Suppose you always want to talk about two things simultaneously for some reason. When you say "a set $A$" you actually mean a pair of sets $(A_1, A_2)$, when you say "a function $f : A \to B$" you mean a pair of functions $f_1 : A_1 \to B_1$, $f_2 : A_2 \to B_2$. When you say a statement $p$ is true, you actually mean $p_1$ is true and $p_2$ is true. Then from an external perspective there obviously are truth values which "are neither true nor false", namely $(true, false)$ and $(false, true)$. (Note that the partial order of truth values is not a total order here, so it is not very similar to fractional numbers.)
This is the internal language of the topos $\mathrm{Sh}(\{*\} \sqcup \{*\})$, the sheaf topos on the discrete two-point space. (A sheaf on this space is just a pair of sets.) If you take $\mathrm{Sh}(X)$ instead, for $X$ any topological space, there are as many internal truth values as $X$ has open subsets.
Be careful, however, to distinguish between internal and external statements. The truth values $p = (\mathrm{true}, \mathrm{false})$ and $(\mathrm{true}, \mathrm{true})$ are different externally, but the internal statement "$p$ is different from $\mathrm{true}$" has truth value $(\mathrm{false}, \mathrm{true})$, so it is not valid (everywhere).
Also note that $\mathrm{Sh}(\{*\} \sqcup \{*\})$ is a boolean topos, that is, the internal language is in fact classical -- the law of omniscience (excluded middle) is valid internally. For example, $p \lor (\lnot p) = (\mathrm{true}, \mathrm{false}) \lor (\mathrm{false}, \mathrm{true}) = (\mathrm{true} \lor \mathrm{false}, \mathrm{false} \lor \mathrm{true}) = (\mathrm{true}, \mathrm{true})$.