Skip to content

Commit cabac8f

Browse files
committed
Support detecting unicorn pid and binding
1 parent 3ec82c9 commit cabac8f

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

autoload/rails.vim

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1523,9 +1523,20 @@ endfunction
15231523

15241524
call s:add_methods('readable', ['preview_urls'])
15251525

1526+
function! s:app_server_pid() dict abort
1527+
for type in ['server', 'unicorn']
1528+
let pidfile = self.path('tmp/pids/'.type.'.pid')
1529+
if filereadable(pidfile)
1530+
let pid = get(readfile(pidfile, 'b', 1), 0, 0)
1531+
if pid
1532+
return pid
1533+
endif
1534+
endif
1535+
endfor
1536+
endfunction
1537+
15261538
function! s:app_server_binding() dict abort
1527-
let pidfile = self.path('tmp/pids/server.pid')
1528-
let pid = get(readfile(pidfile, 'b', 1), 0, 0)
1539+
let pid = self.server_pid()
15291540
if pid
15301541
if self.cache.has('server')
15311542
let old = self.cache.get('server')
@@ -1549,7 +1560,7 @@ function! s:app_server_binding() dict abort
15491560
return ''
15501561
endfunction
15511562

1552-
call s:add_methods('app', ['server_binding'])
1563+
call s:add_methods('app', ['server_pid', 'server_binding'])
15531564

15541565
function! s:Preview(bang, lnum, uri) abort
15551566
let binding = rails#app().server_binding()
@@ -1794,8 +1805,7 @@ function! s:app_server_command(kill, bg, arg) dict abort
17941805
let arg = empty(a:arg) ? '' : ' '.a:arg
17951806
let flags = ' -d\| --daemon\| --help'
17961807
if a:kill || a:arg =~# '^ *[!-]$' || (a:bg && arg =~# flags)
1797-
let pidfile = self.path('tmp/pids/server.pid')
1798-
let pid = get(s:readfile(pidfile), 0, 0)
1808+
let pid = self.server_pid()
17991809
if pid
18001810
echo "Killing server with pid ".pid
18011811
if !has("win32")

0 commit comments

Comments
 (0)