namespaces sequences strings ;
IN: editors.vim
-TUPLE: vim ;
+SINGLETON: vim
-editor-class [ T{ vim } ] initialize
+MIXIN: vim-base
+
+INSTANCE: vim vim-base
+
+editor-class [ vim ] initialize
SYMBOL: vim-path
SYMBOL: vim-tabs?
-M: vim vim-ui? f ;
+M: vim-base vim-ui? f ;
-M: vim find-vim-path "vim" ?find-in-path ;
+M: vim-base find-vim-path "vim" ?find-in-path ;
: actual-vim-path ( -- path )
\ vim-path get [ find-vim-path ] unless* ;
-M: vim editor-command
+M: vim-base editor-command
[
actual-vim-path dup string? [ , ] [ % ] if
vim-ui? [ "-g" , ] when
,
] { } make ;
-M: vim editor-detached? f ;
+M: vim-base editor-detached? f ;