config/rails에서navcommands를 정의할 때 샌드박스에서 허용되지 않습니다.윌
묘사
안녕!프로젝트에 특정한navcommands(내가 이전에 참여한 세 개의 메인 js 프로젝트는 저장 모델/시도/집합에 있어서 서로 다른 약속이 있기를 바란다).
config/rails를 만들었습니다.vim 파일 및 navcommand 정의를 배치합니다.
autocmd User Rails Rnavcommand jcollection app/assets/javascripts/backbone/collections/ -glob=**/* -suffix=.js.coffee
autocmd User Rails Rnavcommand jmodel app/assets/javascripts/backbone/models/ -glob=**/* -suffix=.js.coffee
autocmd User Rails Rnavcommand jview app/assets/javascripts/backbone/views/ -glob=**/* -suffix=.js.coffee
autocmd User Rails Rnavcommand jrouter app/assets/javascripts/backbone/routers/ -glob=**/* -suffix=.js.coffee
autocmd User Rails Rnavcommand template app/assets/javascripts/backbone/templates/ -glob=**/* -suffix=.hbs
vim을 시작하는 동안 다음 오류가 발생했습니다.Error detected while processing /home/jumski/work/ebookmakr/config/rails.vim:
line 3:
E48: Not allowed in sandbox: autocmd User Rails Rnavcommand admin app/admin/ -suffix=.rb
너는 이것이 가능한지 아닌지 아니?어디에서 해결 방안을 찾습니까?
미리 감사
토론 #1
이 문제 는 나 에게 매우 중요 한 문제 다.우선, 해결 방법:autocmd User Rails exe 'source ' .
\ fnameescape(rails#app().path('config/myunsafecommands.vim'))
기본적으로 :sandbox source config/rails.vim
은 거친 망치로 모든 항목의 배치를 안전하게 제공할 수 있도록 허용하는 문제에 대해 흔들리고 있다.나는 :sandbox
을 포기하고 임의의 코드를 실행할 수 있도록 허락하는 것은 좋은 생각이 아니라고 생각한다.가장 좋은 해결 방안은
config/vim.json
또는 유사한 파일(JSON, Vim에서 해석하기 쉽기 때문)이 될 수 있다고 생각합니다.{
"navcommands": {
"jcollection": {
"path": "app/assets/javascripts/backbone/collections",
"glob": "**/*",
"suffix": ".js.coffee",
}
}
}
네비게이션 코드는 이미 매우 낡았다. (그것은 여전히 Vim 6 호환성으로 작성된 것이다. 으) 그래서 나는 줄곧 이 문제를 해결하고 싶지 않았다.나도 너처럼 갖고 싶어.토론 #2
네, 처음 통과했습니다.config/rails.vim
에서 어리석은 데이터 구조를 사용했다.자세한 내용은 변경될 수 있습니다.돌려봐!토론 #셋
너무 좋아요!즉시 테스트하고 싶어서 rails vim을 업데이트했고 다음 내용을
config/rails.vim
에 넣었습니다.
let b:rails_file_types = {
\ 'jmodel': {
\ 'prefix': ['app/assets/javascripts/backbone/models'],
\ 'suffix': '.js.coffee',
\ 'affinity': 'model'}}
보아하니 그것은 출처가 없는 것 같다. :Rjmodel
은 일하지 않는다. 나는 let b:rails_file_types
으로 이 변수를 검사할 수 없다우선,neo bundle가 뭔가를 망쳤을 수도 있다고 생각합니다. 저는vim rails의 최신 제출을 하지 않았지만
:help rails
을 통해 최신 버전이 있다는 것을 확인했기 때문에 다른 곳에서 문제가 생겼다고 생각합니다.무슨 생각 있어요?
감사합니다!
Wojtek
토론 #4
에서 새로운 Vim 인스턴스를 시도합니다.2013년 1월 5일 토요일 오후 2:22, Wojtek [email protected]:
Great!
Wanted to test it immediately, so I updated my rails-vim and put following into config/rails.vim:
let b:rails_file_types = { \ 'jmodel': { \ 'prefix': ['app/assets/javascripts/backbone/models'], \ 'suffix': '.js.coffee', \ 'affinity': 'model'}}
It looks like it is not sourced, :Rjmodel is not working and i cannot inspect this variable with let b:rails_file_types
First i thought maybe neo-bundle fucked something up and i do not have recent commits for vim-rails, but looking into :help rails I have confirmed that i have recent version, so I assume problem is somewhere else.
Do you have any ideas? Thanks! Wojtek
— Reply to this email directly or view it on GitHubhttps://github.com/tpope/vim-rails/issues/195#issuecomment-11918366.
토론 #5
오, 더 가능한 해석.모뎀을 사용해야 합니다.:verbose set modeline?
에서 뭘 보고했어?토론 #6
그것은 모형의 물건이다.지금 모든 것이 저주 같다.
감사합니다:)
토론 #7
은 다른 방법을 사용하기로 결정했습니다.https://github.com/tpope/vim-rails/commit/8d10657107f56f19c9010cfb12c8705d101452e0config/rails.vim
의 방법은 현재 여전히 유효하지만, 나는 그것을 끌어내릴 수 있다.토론 #8
aa 및 분류의 이름을 투영으로 변경합니다.나는 분류하는 것을 좋아하지 않는다. 분류는 나로 하여금 OO류를 생각하게 한다.토론 #9
im에서 구성/환경을 만들고 있습니다.rb와 config/editor.미친 듯이비rails 프로젝트에도 사용감사합니다:)
토론 #10
예, 이 안에는 틀림없이 다른 플러그인이 숨겨져 있습니다. 이것이 바로 제가:Rmodel
에서 :Emodel
, :RSmodel
에서 :Smodel
까지의 느린 과도를 시작한 이유입니다.Rails가 아닌 애플리케이션에서 R
을 사용할 이유가 없습니다.토론 #11
annd 형식과 파일 이름을 완전히 변경했습니다.만약 당신이 이전을 시도할 수 있다면, 저에게 당신이 어떤 문제가 있는지 알려주시면, 저는 감격해 마지 않을 것입니다.만약 문서가 분명하다면, 너는 아주 좋은 테스트가 될 것이다.비록 좀 지루하지만, 이것은 단도직입적이어야 한다.그것은 뒤로 호환되기 때문에 모든 항목을 한 번에 전환할 필요가 없다.
토론 #12
에서 제 주요 프로젝트의editor.json
을 방금 이전했습니다.editor.json
을 projections.json
(정의되지 않은 명령) 으로 바꾸면 작동하지 않지만, 옛 이름과 함께 사용할 수 있습니다. (물론, 기조를 재정립한vim rails:)문서에 추가할 점은 예측과 관련된 모든 내용을 json의 루트
projections
키에 두어야 한다는 것이다. 아직 초보자에게는 명확하지 않기 때문에 추측해야 한다.나는 다른 문제를 발견하지 못했다.이전은 매우 간단한 것 같다.이 물건은 수백 번의 버튼을 진동시키고 저장할 수 있는데, 내가 무슨 말을 할 수 있겠는가? 나는 정말 그것을 좋아한다. 고맙다:)
토론 #13
당신이projections.json
을 사용할 때, 그것은 투영 키 아래에 있지 않을 것이다.이것은 아마도 그것이 너에게 적합하지 않은 원인일 것이다.토론 #14
하하.확인:)토론 #15
Hmpf config/editor에서 마이그레이션하는 동안 비슷한 문제가 발생했습니다.json에서 config/projections로 이동합니다.jsonhttps://gist.github.com/74a1c50f75c34b27364a
투영은 로드되지 않았을 뿐입니다 -: 울음:
(나는 자제와vim를 통해 새로운vim-를 설치했다rails@master)
토론 #16
헤이!사용하는 문법은vim lang입니다. 이것을vimrc에 넣을 수 있습니다.
config/projections.json
을 사용하려면vim 변수가 아닌 순수한 json 대상을 사용하십시오
Reference
이 문제에 관하여(config/rails에서navcommands를 정의할 때 샌드박스에서 허용되지 않습니다.윌), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://github.com/tpope/vim-rails/issues/195텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)