Isso não está claro na documentação, mas -o está em conflito com a maioria dos outros especificadores de formato, opções ie que determinam quais colunas são selecionadas para saída (no estilo Unix, -F , -j , -l ; no entanto -f e -M , que adicionam colunas à seleção, não conflitam com -o ). Eu imagino que o raciocínio é que, se você especificar a lista de colunas explicitamente, também não poderá usar um formato predefinido.
-w funciona com -o porque não é um controle de formato, é um controle de saída: ele modifica a saída de qualquer coluna selecionada.
Você pode achar -O útil: ele se comporta como -o , mas adiciona algumas colunas predefinidas (identificador de processo, estado, TTY, tempo de execução e linha de comando).