aboutsummaryrefslogtreecommitdiff
path: root/autoload
diff options
context:
space:
mode:
authormitermayer <mitermayer.reis@gmail.com>2018-05-10 13:36:09 -0700
committermitermayer <mitermayer.reis@gmail.com>2018-05-16 09:29:20 -0700
commit98845cdbbe243f4a62adbd73cbe7febec1f41efa (patch)
tree3ebd4356d5e9519f9a90656adb24ed32a6653987 /autoload
parentbce2e04822de1a6cf568a576f585f932a73e9ecc (diff)
downloadvim-prettier-98845cdbbe243f4a62adbd73cbe7febec1f41efa.tar.xz
Adding presets
- adding facebook presets as a configurable option to overwrite prettier defaults
Diffstat (limited to 'autoload')
-rw-r--r--autoload/prettier.vim2
-rw-r--r--autoload/prettier/presets/fb.vim13
-rw-r--r--autoload/prettier/resolver/config.vim14
-rw-r--r--autoload/prettier/resolver/preset.vim8
4 files changed, 36 insertions, 1 deletions
diff --git a/autoload/prettier.vim b/autoload/prettier.vim
index c5e21e5..fae1ef8 100644
--- a/autoload/prettier.vim
+++ b/autoload/prettier.vim
@@ -72,7 +72,7 @@ function! prettier#Prettier(...) abort
let l:config = getbufvar(bufnr('%'), 'prettier_ft_default_args', {})
if l:execCmd != -1
- let l:cmd = l:execCmd . prettier#resolver#config#buildCliArgs(l:config)
+ let l:cmd = l:execCmd . prettier#resolver#config#buildCliArgs(prettier#resolver#preset#build(l:config))
" close quickfix if it is opened
call prettier#utils#quickfix#close()
diff --git a/autoload/prettier/presets/fb.vim b/autoload/prettier/presets/fb.vim
new file mode 100644
index 0000000..4715b88
--- /dev/null
+++ b/autoload/prettier/presets/fb.vim
@@ -0,0 +1,13 @@
+" Return facebook style config overwrite presets
+function! prettier#presets#fb#config() abort
+ return {
+ \ 'bracketSpacing': 'false',
+ \ 'jsxBracketSameLine': 'true',
+ \ 'printWidth': 80,
+ \ 'parser': 'flow',
+ \ 'singleQuote': 'true',
+ \ 'tabWidth': 2,
+ \ 'trailingComma': 'all',
+ \ 'useTabs': 'false',
+ \ }
+endfunction
diff --git a/autoload/prettier/resolver/config.vim b/autoload/prettier/resolver/config.vim
index ffdd8ff..91fc247 100644
--- a/autoload/prettier/resolver/config.vim
+++ b/autoload/prettier/resolver/config.vim
@@ -8,6 +8,18 @@ function! prettier#resolver#config#buildCliArgs(config) abort
\ s:Flag_tab_width(a:config) . ' ' .
\ s:Flag_print_width(a:config) . ' ' .
\ s:Flag_parser(a:config) . ' ' .
+ \ ' --semi=' .
+ \ get(a:config, 'semi', g:prettier#config#semi) .
+ \ ' --single-quote=' .
+ \ get(a:config, 'singleQuote', g:prettier#config#single_quote) .
+ \ ' --bracket-spacing=' .
+ \ get(a:config, 'bracketSpacing', g:prettier#config#bracket_spacing) .
+ \ ' --jsx-bracket-same-line=' .
+ \ get(a:config, 'jsxBracketSameLine', g:prettier#config#jsx_bracket_same_line) .
+ \ ' --arrow-parens=' .
+ \ get(a:config, 'arrowParens', g:prettier#config#arrow_parens) .
+ \ ' --trailing-comma=' .
+ \ get(a:config, 'trailingComma', g:prettier#config#trailing_comma) .
\ ' --config-precedence=' .
\ get(a:config, 'configPrecedence', g:prettier#config#config_precedence) .
\ ' --prose-wrap=' .
@@ -17,6 +29,8 @@ function! prettier#resolver#config#buildCliArgs(config) abort
\ ' --no-editorconfig '.
\ ' --loglevel error '.
\ ' --stdin '
+ " TODO
+ " check to see if --no-editorconfig is still needed
return l:cmd
endfunction
diff --git a/autoload/prettier/resolver/preset.vim b/autoload/prettier/resolver/preset.vim
new file mode 100644
index 0000000..a0891d2
--- /dev/null
+++ b/autoload/prettier/resolver/preset.vim
@@ -0,0 +1,8 @@
+" Build config using predefined preset
+function! prettier#resolver#preset#build(fileTypeConfigOverwrites) abort
+ if ( g:prettier#preset#config ==# 'fb' )
+ return extend(prettier#presets#fb#config(), a:fileTypeConfigOverwrites)
+ endif
+
+ return a:fileTypeConfigOverwrites
+endfunction