Let me work in mathematicians' notation for a bit and then switch back to Dirac notation.

Suppose you start with a Hilbert space $\mathscr H$, which you can understand as a space of functions from some coordinate space $S$ into $\mathbb C$, i.e. if $f\in\mathscr H$ then $f:R\to \mathbb C$, and that you have some suitable notion of inner product $(·,·):\mathscr H\times \mathscr H\to\mathbb C$, like e.g. an integral over $R$. (Note that here $(·,·)$ should be linear on the second argument.)

Given this structure, for every vector $f\in\mathscr H$ you can define a linear functional $\varphi_f:\mathscr H\to \mathbb C$, i.e. a function tha takes elements $g\in \mathscr H$ and assigns them complex numbers $\varphi_f(g)\in \mathbb C$, whose action is given specifically by $\varphi_f(g) = (f,g)$. As such, $\varphi_f$ lives in $\mathscr H^*$, the *dual* of $\mathscr H$, which is the set of all (bounded and/or continuous) linear functionals from $\mathscr H$ to $\mathbb C$.

There's plenty of other interesting functionals around. For example, if $\mathscr H$ is a space of functions $f:R\to \mathbb C$, then another such functional is an evaluation at a given point $x\in R$: i.e. the map $\chi_x:\mathscr H\to\mathbb C$ given by
$$\chi_x(g) = g(x).$$
In general, this map is not actually bounded nor continuous (w.r.t. the topology of $\mathscr H$), but you can ignore that for now; most physicists do.

Thus, you have this big, roomy space of functionals $\mathscr H^*$, and you have this embedding of $\mathscr H$ into $\mathscr H^*$ given by $\varphi$. In general, though, $\varphi$ may or may not cover the entirety of $\mathscr H^*$.

The correspondence of this into Dirac notation goes as follows:

$f$ is denoted $|f\rangle$ and it's called a ket.

$\varphi_f$ is denoted $\langle f|$ and it's called a bra.

$\chi_x$ is denoted $\langle x|$, and it's also called a bra.

Putting these together you start getting some of the things you wanted:

`2.`

$\langle x |f\rangle$ is $\chi_x(f) = f(x)$, i.e. just the wavefuntion.

`6.`

$\langle f | g \rangle$ is $\varphi_f(g) = (f,g)$, i.e. the iner product of $f$ and $g$ on $\mathscr H$, as it should be.

Note in particular that these just follow from juxtaposing the corresponding interpretations of the relevant bras and kets.

`7.`

Somewhat surprisingly, $\langle f | x\rangle$ *is* actually defined - it just evaluates to $f(x)^*$. This is essentially because, in physicists' brains,

`9.`

$|x\rangle$ is actually defined. It's normally understood as "a function that is infinitelly localized at $x$", which of course takes a physicist to make sense of (or more accurately, to handwave away the fact that it doesn't make sense). This ties in with

`8.'`

$\langle x' | x\rangle$, the braket between *different* positions $x,x'\in R$, which evaluates to $\delta(x-x')$. Of course, this then means that

`8.`

$\langle x | x\rangle$, with both positions equal, is not actually defined.

If this looks like physicists not caring about rigour in any way, it's because it mostly is. I should stress, though, that it *is* possible to give a rigorous foundation to these states, through a formalism known as rigged Hilbert spaces, where you essentially split $\mathscr H$ and $\mathscr H^*$ into different "layers". On balance, though, this requires more functional analysis than most physicists really learn, and it's not required to successfully operate on these objects.

Having done, that, we now come to some of the places where you've gone down some very strange roads:

`3.`

$\langle x| O\rangle$ does not mean anything. Neither does "operator on an eigenvalue of $O$ that produces the corresponding eigenfunction under a position basis".

`4.`

$|O\rangle$ is not a thing. You **never** put operators inside a ket (and *certainly* not on their own).

Operators always act on the outside of the ket. So, say you have an operator $O:\mathscr H\to\mathscr H$, which in mathematician's notation would take a vector $f\in \mathscr H$ and give you another $O(f)\in \mathscr H$. In Dirac notation you tend to put a hat on $\hat O$, and you use $\hat O|f\rangle$ to mean $O(f)$.

In particular, this is used for the most fundamental bit of notation:

- $\langle f |\hat O|g\rangle$, which a mathematician would denote $\varphi_f(O(g)) = (f,O(g))$, or alternatively (once you've defined the hermitian conjugate $O^*$ of $O$) $\varphi_{O^*(f)}(g) = (O^*(f),g)$.

This includes as a special case

`5.`

$\langle f |G(\hat x)|f\rangle$. This is sometimes abbreviated as $\langle G(\hat x)\rangle$, but that's a good recipe for confusion. In this case, $G:R \to \mathbb C$ is generally a function, but $G(\hat x)$ is a whole different object: it's an operator, so e.g. $G(\hat x)|f\rangle$ lives in $\mathscr H$, and its action is such that this vector has wavefunction
$$ \langle x| G(\hat x) | f \rangle = G(x) f(x).$$
The general matrix element $\langle g |G(\hat x)|f\rangle$ is then taken to be the inner product of $|g\rangle$ with this vector, i.e. $\int_R g(x)^*G(x) f(x)\mathrm dx$, and similarly in the special case $g=f$.

Finally, this brings us to your final two questions:

`10.`

The statement that "the bra portion of the bra-ket is always a dummy variable" is false. As you have seen, $\langle f|$ is perfectly well defined. (Also, $x$ and $p$ are not "dummy" variables, either, again as you have seen above.)

`11.`

Similarly, the statement that "the ket portion is always a function/operator" is also false. You never put operators inside a ket (you put them to the left), and it's generally OK to put $x$'s in there (though, again, this does require either more work to bolt things down, or a willingness to handwave away the problems).

I hope this is enough to fix the problems in your understanding and get you using Dirac notation correctly. It does take a while to wrap one's head around but once you do it is very useful. Similarly, there's plenty of issues in terms of how we formalize things like position kets like $|x\rangle$, but they're all surmountable and, most importantly, they make much more sense once you've been using Dirac notation correctly and comfortably for a while.

## Best Answer

Bra-ket notation is useful because it lets you get rid of excess superscripts and subscripts.

For example, in conventional vector notation you might call the unit vectors in 3D space $\vec{e}_x$, $\vec{e}_y$, and $\vec{e}_z$. There's something like "$\vec{e}$" that you "hang an index on", in order to specify which basis vector you mean. But in bra-ket notation, you can just write the index by itself, as $|x \rangle$, $|y \rangle$, and $|z \rangle$. This is a small space savings in this case, but it gets very useful when there are multiple indices. For example, the state of three independent particles could be written as $$|\mathbf{x}, \mathbf{y}, \mathbf{z} \rangle$$ in bra-ket notation, while without it you would need something annoying like $$\vec{e}_{\vec{x}} \otimes \vec{e}_{\vec{y}} \otimes \vec{e}_{\vec{z}}.$$ You can't ever get rid of the $\vec{e}$ in that notation, because then it would be ambiguous whether $\vec{x}$ by itself is a position vector or a state. It gets even better when you start considering identical particles. If they're bosons, then in completely rigorous mathematical notation you would have to write something like $$\frac{1}{\sqrt{6}} \left( \vec{e}_{\vec{x}} \otimes \vec{e}_{\vec{y}} \otimes \vec{e}_{\vec{z}} + \vec{e}_{\vec{x}} \otimes \vec{e}_{\vec{z}} \otimes \vec{e}_{\vec{y}} + \vec{e}_{\vec{y}} \otimes \vec{e}_{\vec{z}} \otimes \vec{e}_{\vec{x}} + \vec{e}_{\vec{y}} \otimes \vec{e}_{\vec{x}} \otimes \vec{e}_{\vec{z}} + \vec{e}_{\vec{z}} \otimes \vec{e}_{\vec{x}} \otimes \vec{e}_{\vec{y}} + \vec{e}_{\vec{z}} \otimes \vec{e}_{\vec{y}} \otimes \vec{e}_{\vec{x}} \right)$$ while in physics we just continue to write $|\mathbf{x}, \mathbf{y}, \mathbf{z} \rangle$. The reason we can do that is because it is understood that in Dirac notation, the only purpose of the stuff inside the $|$ and $\rangle$ is to act as a descriptor that makes it clear which state we're talking about in the present context. This allows us to suppress irrelevant details, which is essential for doing real calculations.

Another benefit is when you start using bras. For example, you can form things like $$\langle \mathbf{x} | \mathbf{y} \rangle, \quad | \mathbf{x} \rangle \langle \mathbf{y}|.$$ From the shape alone you can easily tell that the first is a number and the second is a linear operator. Of course, you could do the same thing in vector notation with conjugate transposes, $$\vec{e}_{\vec{x}}^\dagger \vec{e}_{\vec{y}}, \quad \vec{e}_{\vec{x}} \vec{e}_{\vec{y}}^\dagger$$ but this will probably give you wrist strain writing it and eye pain reading it. (Sometimes people just write $\vec{e}_{\vec{x}} \vec{e}_{\vec{y}}$ for the latter and call it a "dyadic", but I think this is even worse because it's ambiguous inside larger expressions.) Dirac notation looks even better when you consider conjugation. In Dirac notation this is done for bras and kets by flipping everything horizontally, while for vector notation you have to add and remove daggers.