2017-12-03 23 views
1

나는이 다음이 포함 된 GM 스크립트 : 그래서 최근에 (즉, 가끔 발생)지역 CSS 리소스는 인식되지

... 
// @grant   GM_addStyle 
... 
// @resource  css my.css 
... 

GM_addStyle(GM_getResourceText('css')) // the error occurs here 

... 

은 GM이 config.xml에서이 스크립트를 던졌다 :

  • 내가
  • 새로운 이름이 같은 스크립트,
  • 복사 된 모든 파일을 생성, 스크립트가 /*.OLD에 폴더 이름 (*.css 등) *.OLD에서 스크립트 파일 (<name>.user.js) 자체를 제외하고
  • 코드를 새로 작성한 스크립트 파일에 붙여 넣으십시오.

는 이제 다시 실행하지만, 발생 :

Error: No resource with name "css" 

왜이? 은 위에 선언 된이고 은 스크립트의 폴더에으로 존재합니다. (또한 선언과 실제 파일 이름 사이/소문자 차이가 없다.)

UPDATE

윈도우 7 교수 SP 1 (64 비트), FF 56.0.2 (64 비트), GM 3.17

답변

1

Greasemonkey, 이전 버전 4는 xml 파일로 이동하지 않았습니다. 또한 *.db 파일을 사용하고 시작시 스크립트 폴더도 검사했습니다. 몇 년 동안 두 파일 중 하나를 엉망으로 만들 필요가 없습니다.

어쨌든, 문제의 방법은 GM 버전에서 작동하지 않는 스크립트를 다시 설치하는 유일한 방법입니다. 보통 @require 또는 @resource을 손상된 구성으로 다시 복사 할 수 없습니다. 그리스 몽키는 여전히 혼란 스럽다.

이 그것을 수정해야 : 잘못된 스크립트의 디렉토리에서

  1. 복사 필요한 모든, 지역 파일을 시스템 임시 경로 나 gm_scripts 폴더도에있는 작업 디렉토리에.
    폴더 트리 또는 Git 저장소 등을 사용하여 Firefox 외부에서 스크립트를 보존/추적하는 것이 좋습니다.
  2. Greasemonkey의 스크립트 관리자를 사용하여 기존 스크립트를 제거합니다 (있는 경우).
  3. Firefox를 종료하십시오. 작업 관리자을 사용하여 Firefox 프로세스가 메모리에 남아 있지 않도록하십시오. *.user.js 파일을 가지고 작업 폴더에
  4. , @resource@require D 또는 D, 로컬, 모든 파일이 존재하는 것을 보장한다.
    @require 또는 @resource 경로가 실행 가능한 서버 경로를 가리키는 경우 파일을 로컬 드라이브에 둘 필요는 없습니다 (Greasemonkey는 스크립트 설치시 한 번 다시 가져옵니다).
  5. Firefox를 다시 시작하십시오.
  6. Windows 탐색기에서 *.user.js 파일을 Firefox로 끌어다 놓습니다. 스크립트를 설치하라는 메시지가 나타납니다.
  7. 설치를 확인하면 Firefox가 로컬 파일을 올바르게 복사하고 네트워크 파일을 가져 오므로 스크립트가 올바르게 실행됩니다.




추가 신용 : (4+) 심각하게 불구하고 역기능 파이어 폭스 (57+)와 그리스 몽키의 현재 버전 이후, Tampermonkey과 마이그레이션 고려 더 나은 브라우저. 사실, Greasemonkey itself recommends migrating to Tampermonkey or Violentmonkey.

지금까지, 나는 크롬의 악 "grabbyness"하지 않고, the UR Browser 가장 확장 가능하고 안정적인 둘 것으로 나타났습니다. (Opera는 더 많은 스크립트/확장 프로그램을 중단하고 Vivaldi는 유망하지만 버그가 있으며 다른 것들은 여러 가지 문제가 있습니다.)