As @drew asked me to do here I'm asking one question per problem
I'm trying to enable/disable visual-fill-column when there is one window/multiple windows.
(defun my-visual-fill-one-window ()
(global-visual-fill-column-mode -1)
(if (one-window-p)
(global-visual-fill-column-mode 1)
(global-visual-fill-column-mode -1)))
(add-hook 'window-state-change-hook 'my-visual-fill-one-window)
Could it be possible to adapt this function to work not when there's only one window but when they are just split vertically