JuliaEditorSupport / julia-vim

Vim support for Julia.
http://julialang.org/
Other
755 stars 94 forks source link

similar behaviour than vim-r-plugin #6

Open michelk opened 12 years ago

michelk commented 12 years ago

I am using the vim-r-plugin heavily. Is there something like that for julia?

carlobaldassi commented 12 years ago

No (the current features are syntax highlighting, automatic indentation, support for the matchit plugin), but I shall look into their code and see what I can borrow. Should anyone have suggestions, they're very welcome.

ggarza commented 10 years ago

It looks like they're planning to make the vim-r-plugin compatible with the julia repl. https://github.com/jcfaria/Vim-R-plugin/commit/27cd26dbaa20b311845580fb13b3edf10bd40af8

ggarza commented 10 years ago

The package here https://github.com/one-more-minute/Jewel.jl creates a server that receives communication from light table. It may be possible to use this for vim.

felixjung commented 9 years ago

@ggarza Have a look at the [https://github.com/ervandew/screen](screen plugin) for Vim. It allows you to get all the create-Julia-REPL-tmux-pane, send-to-Julia pane functionality. The corresponding part of my vimrc looks like this:

  " Configure screen for Julia {
    let g:ScreenImpl = "Tmux"
    " Julia
    function SetWD()
      let wd='cd("' . expand('%:p:h') . '")'
      :call g:ScreenShellSend(wd)
    endfunction

    function SourceFile()
      let fp='include("' . expand('%:p') . '")'
      :call g:ScreenShellSend(fp)
    endfunction

    function GetHelp()
      let w = "?" . expand("<cword>")
      :call g:ScreenShellSend(w)
    endfunction

    au FileType julia nmap <LocalLeader>jw :call SetWD()<CR>
    au FileType julia nmap <LocalLeader>js :ScreenShell! julia<CR>
    au FileType julia nmap <LocalLeader>jq :ScreenQuit<CR>
    au FileType julia nmap <space> V:ScreenSend<CR>
    au FileType julia nmap <LocalLeader>aa :call SourceFile()<CR>
    au FileType julia vmap <LocalLeader>s :ScreenSend<CR>
    au FileType julia let g:ScreenShellWidth=100
    au FileType julia let g:ScreenShellTerminal="iTerm"
    au FileType julia let g:ScreenShellExpandTabs=1
    au FileType julia map <LocalLeader>h :call GetHelp()<CR>
  " }

I have not tested all of it but sending an entire file or just the selected areas to Julia seems to work just fine. Obviously you don't get all those extensive features provided by Vim-R, but it's a start to having a nicer development workflow with Vim and Julia.

Happy coding!

Hydrotoast commented 7 years ago

Four years later, should we close this issue?

carlobaldassi commented 7 years ago

@Hydrotoast why? The issue is not solved, it's a legitimate request, and someone may still do something about it.

epwalsh commented 7 years ago

Check out https://github.com/jalvesaq/vimcmdline. I use it all the time as a replacement for Vim-R with Python and now I'm using it with Julia.