I want to make a conditional bind for q If tabcount is greater than or equal to 1, nnoremap <silent> q :tabclose<CR> Else nnoremap <silent> q :qa<CR> (or quit or what have you)
q
tabcount
nnoremap <silent> q :tabclose<CR>
nnoremap <silent> q :qa<CR>
Yes, there is tabpagenr(). There is always at least one tab so, "greater than or equal to 1" is always true.
tabpagenr()
nnoremap <silent> q : if tabpagenr('$') > 1 \ | tabclose \ | else \ | quit \ | endif<cr>
However, that's literally the behaviour of :quit.
:quit