From: Nicolas Boisselier Date: Wed, 14 Dec 2022 16:44:13 +0000 (+0100) Subject: function FileType() X-Git-Url: https://git.nbdom.net/?a=commitdiff_plain;h=b8e4d339216404243a985497b56c9e0a0a7ac338;p=nb.git function FileType() --- diff --git a/etc/vim/source/comment.vim b/etc/vim/source/comment.vim index 4a29837c..4b1cd942 100644 --- a/etc/vim/source/comment.vim +++ b/etc/vim/source/comment.vim @@ -4,6 +4,16 @@ " NB 12.12.22: Functions to comment texts " """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +if exists("_loaded_comment") + finish +endif +let _loaded_comment = 1 + + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Global +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +let $USER_INITIALS = system('printf "%s" ${USER_INITIALS:-`whoami`}') func! CommentMeNow() return $USER_INITIALS . ' ' . strftime('%d.%m.%y') endfunc @@ -18,16 +28,13 @@ func! CommentSubSpecialChar(text) endfor endfunc - " NB 12.12.22 let g:File['path'] = expand('%:p') - " NB 12.12.22 let g:File['ext'] = expand('%:e') - " NB 12.12.22 let g:File['type'] = &filetype func! CommentNewLine() " NB 12.12.22: Create a new line of comment - if ( g:mimeComment->get(&filetype) == '0') + if ( g:mimeComment->get(FileType()) == '0') let comment = '#' - " NB 12.12.22 return Err('No comment defined for filetype '.&filetype) + " NB 12.12.22 return Err('No comment defined for filetype '.FileType()) else - let comment = g:mimeComment->get(&filetype) + let comment = g:mimeComment->get(FileType()) endif let comment = split(comment,'\s\+') call CommentSubSpecialChar(comment) @@ -47,11 +54,11 @@ endfunc func! CommentToggle() " NB 12.12.22: Toggle current line between commented / not commented - if ( g:mimeComment->get(&filetype) == '0') + if ( g:mimeComment->get(FileType()) == '0') let comment = '#' - " NB 12.12.22 return Err('No comment defined for filetype '.&filetype) + " NB 12.12.22 return Err('No comment defined for filetype '.FileType()) else - let comment = g:mimeComment->get(&filetype) + let comment = g:mimeComment->get(FileType()) endif let comment = split(comment,'\s\+') diff --git a/etc/vim/source/functions.vim b/etc/vim/source/functions.vim index b13b4cc9..98eedd00 100644 --- a/etc/vim/source/functions.vim +++ b/etc/vim/source/functions.vim @@ -4,18 +4,38 @@ " See: http://learnvimscriptthehardway.stevelosh.com/chapters/27.html " """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +if exists("_loaded_file") + finish +endif +let _loaded_file = 1 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" File...() +" NB 14.12.22: Return filetype """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -let File = { 'type' : '' } -let $USER_INITIALS = system('printf "%s" ${USER_INITIALS:-`whoami`}') +func! FileType() + + " From aliases + if (g:aliasFileType->has_key(&filetype)) + return g:aliasFileType[&filetype] + endif + + " Trust vim + if (!&filetype->empty()) + return &filetype + endif + + " From ext + let ext = expand('%:e') + if (g:extFileType->has_key(ext)) + return g:extFileType->get(ext]) + endif +endfunc func! FileCheckSyntaxe() - if ( g:mimeCheck->get(&filetype) == '0') + if ( g:mimeCheck->get(FileType()) == '0') let cmd = 'xargs -IZ sh -c "ls -ahl Z" <<<' else - let cmd = g:mimeCheck->get(&filetype) + let cmd = g:mimeCheck->get(FileType()) endif let cmd = cmd . ' "' .expand('%:p') . '"' echo cmd @@ -47,8 +67,3 @@ func! Debug(...) endfunc -function Err(txt) - echo 'ERROR: '.a:txt - return -endfunc - diff --git a/etc/vim/source/vars.vim b/etc/vim/source/vars.vim index 1edee620..2ae22cd6 100644 --- a/etc/vim/source/vars.vim +++ b/etc/vim/source/vars.vim @@ -3,11 +3,16 @@ " " Command to check files per file types " -let mimeExt = { - \ 'bash' : 'sh' +if exists("_loaded_vars") + finish +endif +let _loaded_vars = 1 + +let extFileType = { + \ 'sh' : 'bash' \} -let mimeAliases = { - \ 'bash' : 'sh' +let aliasFileType = { + \ 'sh' : 'bash' \} ">SHELL_REPLACE dbq db=nb t=meta action=table.rows rows.fields=key,val cat=file.check orderby=key format=vim_hash name=mimeCheck preff="$(printf "\t")" let mimeCheck = {