]> git.nbdom.net Git - nb.git/commitdiff
function FileType()
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Wed, 14 Dec 2022 16:44:13 +0000 (17:44 +0100)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Wed, 14 Dec 2022 16:44:13 +0000 (17:44 +0100)
etc/vim/source/comment.vim
etc/vim/source/functions.vim
etc/vim/source/vars.vim

index 4a29837c7228e2661be820652222d5c053a86501..4b1cd942f75338acb935164fdfbadb6b4781c933 100644 (file)
@@ -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\+')
index b13b4cc987ea4381cf396cc29e0fe1f0a87530be..98eedd009ff5543a5f8ebdc8f8bb44e327f8079f 100644 (file)
@@ -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
-
index 1edee6205b32cf8c0ed77ff24d945a6325be56ea..2ae22cd62e42b0002af3708212728ef5426bac7b 100644 (file)
@@ -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 = {