Spotlight에서 LaTeX 문서를 검색하는 방법은 무엇입니까?


12

El Capitan에서도 Macbook Air 2013-mid의 새로운 구성 요소 (마더 보드, 3x SSD)로 문제를 재현했습니다. 테스트를하는 동안 OS X (El Capitan, Yosemite)를 새로 설치했습니다. .tex 검색이 작동하는 최신 OS X은 Spotlight에서 10.8.5입니다. 현재 Spotlight 검색에 .tex 문서가 없습니다. 테스트

  • 현재 답변으로는 문제를 영구적으로 해결할 수 없습니다. 요세미티에서는 잠시 후 문제가 다시 해결되었습니다. 안정적인 솔루션이 없으며 문제의 원인이 무엇인지 거의 이해하지 못합니다.

설정 구성 선택은 Spotlight와 관련이 없습니다 mdfind. Spotlight와 동등한 터미널 에서 명령 을 직접 사용할 수 있기 때문 입니다. 그러나 Spotlight에서 기본, 최소 및 전체 설정을 시도했습니다. 테스트를 위해 OS X의 기본 설정을 사용합니다. 시스템 및 응용 프로그램

  • 시스템 OS X Yosemite, OS X El Capitan
  • TexShop.app가 설치되었습니다. (MacTeX 2015, mactex-20150613.pkg).
  • Tex 앱 : TextMate2-beta8
  • Spotlight / Finder / 모든 검색 앱이 TeX 파일 및 MacTeX 2015에서 작동하지 않습니다
  • Spotlight는 일부 다른 설정과 MacTeX 2015에서도 예상대로 작동합니다.

이 명령 mdfind(2004 년 6 월 10 일 버전)은 Spotlight 검색과 동일하므로 시스템에서 실패한 내용을 반환하지 않는 간단한 테스트

mdfind sulfas | grep tex

문제는 시스템이 파일 형식 .tex`를 인식하지 못한다는 것입니다. 첫 번째는 시스템이 인식하도록하는 것입니다.

Finder / Spotlight에서 .tex 만 검색하라는 tjt263의 제안

출력 Spotlight .tex또는 터미널 명령은 내 시스템에서 tex 파일을 올바르게 제공합니다. 그러나 by와 같은 다른 용어로 결합하면 .tex diabetes더 이상 tex 파일이 없습니다. 수입 업체 mdimport -L:

2015-09-22 15:31:42.352 mdimport[8163:707] Paths: id(502) (
    "/Library/Spotlight/iBooksAuthor.mdimporter",
    "/Library/Spotlight/iWork.mdimporter",
    "/Library/Spotlight/Microsoft Office.mdimporter",
    "/System/Library/Spotlight/Application.mdimporter",
    "/System/Library/Spotlight/Archives.mdimporter",
    "/System/Library/Spotlight/Audio.mdimporter",
    "/System/Library/Spotlight/Automator.mdimporter",
    "/System/Library/Spotlight/Bookmarks.mdimporter",
    "/System/Library/Spotlight/Chat.mdimporter",
    "/System/Library/Spotlight/CoreMedia.mdimporter",
    "/System/Library/Spotlight/Font.mdimporter",
    "/System/Library/Spotlight/iCal.mdimporter",
    "/System/Library/Spotlight/Image.mdimporter",
    "/System/Library/Spotlight/iPhoto.mdimporter",
    "/System/Library/Spotlight/iPhoto8.mdimporter",
    "/System/Library/Spotlight/Mail.mdimporter",
    "/System/Library/Spotlight/MIDI.mdimporter",
    "/System/Library/Spotlight/Notes.mdimporter",
    "/System/Library/Spotlight/PDF.mdimporter",
    "/System/Library/Spotlight/PS.mdimporter",
    "/System/Library/Spotlight/QuartzComposer.mdimporter",
    "/System/Library/Spotlight/RichText.mdimporter",
    "/System/Library/Spotlight/SystemPrefs.mdimporter",
    "/System/Library/Spotlight/vCard.mdimporter",
    "/Applications/Microsoft Office 2011/Microsoft Outlook.app/Contents/Library/Spotlight/Microsoft Outlook.mdimporter",
    "/Applications/Xcode.app/Contents/Library/Spotlight/uuid.mdimporter",
    "/Applications/DjView.app/Contents/Library/Spotlight/DjVu.mdimporter"
)

bmikes의 테스트

파인더에서 파일 notes.tex를 검색 할 수 없습니다. 이제 Finder에서 검색 할 수있는 notes.txt로 변경합니다. 이것은 검색 프로그램 문제 (Spotlight, md ..., 내가 사용하는 모든 것을 주석으로 여러 번 설명 했음)가 아니라고 제안합니다. 그래서 tex는 시스템에서 문제가 있습니다. 동일한 파일이지만 두 개의 다른 엔딩으로 출력됩니다. txt 파일 출력 :

15:42:23:Desktop:masi$ mdls 8.9.2015.txt 
kMDItemContentCreationDate     = 2015-09-22 13:38:31 +0000
kMDItemContentModificationDate = 2015-09-22 13:38:31 +0000
kMDItemContentType             = "public.plain-text"
kMDItemContentTypeTree         = (
    "public.plain-text",
    "public.text",
    "public.data",
    "public.item",
    "public.content"
)
kMDItemDateAdded               = 2015-09-22 13:39:22 +0000
kMDItemDisplayName             = "8.9.2015.txt"
kMDItemFSContentChangeDate     = 2015-09-22 13:38:31 +0000
kMDItemFSCreationDate          = 2015-09-22 13:38:31 +0000
kMDItemFSCreatorCode           = ""
kMDItemFSFinderFlags           = 0
kMDItemFSHasCustomIcon         = 0
kMDItemFSInvisible             = 0
kMDItemFSIsExtensionHidden     = 0
kMDItemFSIsStationery          = 0
kMDItemFSLabel                 = 0
kMDItemFSName                  = "8.9.2015.txt"
kMDItemFSNodeCount             = 62503
kMDItemFSOwnerGroupID          = 20
kMDItemFSOwnerUserID           = 502
kMDItemFSSize                  = 62503
kMDItemFSTypeCode              = ""
kMDItemKind                    = "Plain Text Document"
kMDItemLogicalSize             = 62503
kMDItemPhysicalSize            = 65536

tex 파일의 출력 :

15:42:27:Desktop:masi$ mdls 8.9.2015.tex 
kMDItemContentCreationDate     = 2015-09-22 13:38:31 +0000
kMDItemContentModificationDate = 2015-09-22 13:38:31 +0000
kMDItemContentType             = "org.tug.tex"
kMDItemContentTypeTree         = (
    "org.tug.tex",
    "public.text",
    "public.data",
    "public.item",
    "public.content"
)
kMDItemDateAdded               = 2015-09-22 13:42:37 +0000
kMDItemDisplayName             = "8.9.2015.tex"
kMDItemFSContentChangeDate     = 2015-09-22 13:38:31 +0000
kMDItemFSCreationDate          = 2015-09-22 13:38:31 +0000
kMDItemFSCreatorCode           = ""
kMDItemFSFinderFlags           = 0
kMDItemFSHasCustomIcon         = 0
kMDItemFSInvisible             = 0
kMDItemFSIsExtensionHidden     = 0
kMDItemFSIsStationery          = 0
kMDItemFSLabel                 = 0
kMDItemFSName                  = "8.9.2015.tex"
kMDItemFSNodeCount             = 62503
kMDItemFSOwnerGroupID          = 20
kMDItemFSOwnerUserID           = 502
kMDItemFSSize                  = 62503
kMDItemFSTypeCode              = ""
kMDItemKind                    = "TeX document"
kMDItemLogicalSize             = 62503
kMDItemPhysicalSize            = 65536

원하는 명령 :

mkdir /Users/masi/Desktop/masi
18:07:56:~:masii$ cp /tmp/8.9.2015.tex /Users/masi/Desktop/masi/
18:08:09:~:masi$ cd /Users/masi/Desktop/masi/
18:08:16:masi:masi$ echo osteoporosis > test_file.txt
18:08:24:masi:masi$ mdfind osteoporosis |grep /Users/masi/Desktop/masi/
/Users/masi/Desktop/masi/test_file.txt
18:08:47:masi:masi$ mdls -name kMDItemContentType test_file.txt 
kdItemContentType = (public.plain-text)
18:09:49:masi:masi$ mv test_file.txt test_file.tex
18:10:14:masi:masi$ mdfind osteoporosis | grep /Users/masi/Desktop/masi/
18:10:20:masi:masi$ mdls -name kMDItemContentType test_file.tex 
kMDItemContentType = "org.tug.tex"

채팅에서 사용 및 토론하는 최신 진단 도구

잘 숨겨진 명령 임의의 파일 또는 UTI 유형을 여는 응용 프로그램에 대해 시작 서비스 데이터베이스를 쿼리 할 수 ​​있습니까?

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump | grep -n7 org.tug.tex

MacTeX 2015의 TeXShop에는 TeX.mdimporter가 없습니다. 설치 의 마지막 줄에 있습니다 mdimport -L:

"/Applications/TeX/TeXShop.app/Contents/Library/Spotlight/TeX.mdimporter")

Patrix에 실패했습니다

mkdir -p ~/Library/Spotlight; ln -s /Applications/TeX/TeXShop.app/Contents/Library/Spotlight/TeX.mdimporter ~/Library/Spotlight/

그 후 rm ~/Library/Spotlight/TeX.mdimporterHardDisc를 Prevent -panel 패널로 이동하여 신속하게 제거하여 Spotlight 색인을 재설정했습니다. 이제 시스템 색인을 작성하는 데 시간이 걸립니다.

나쁜 상태로 돌아갈 때까지 하루 동안 일한 klanomath의 답변 결과

mdfind에 불안정한 일부 .tex 파일이 있습니다. 이 제안서의 처음부터 하루를 사용한 후 상태가 다시 불량 상태로 돌아갔습니다.

  • 골다공증 검색은 하루 전과 동일한 파일을 반환하지만 검색에 표시되지 않은 파일은 최근에 편집 한 시간과 최근에 충분히 일치하여 검색에 표시되지 않습니다.
  • 최근에 편집 한 파일 만 표시되며 실제로는 3.5 개월 된 파일도 표시됩니다.

실행 18:25:06:~:masi$ /usr/bin/mdimport -d3 /Users/masi/Dropbox/Internal\ Diseases/24.9.2015.tex및 점점

(Debug) Import: file:/Users/masi/Dropbox/Internal Diseases/24.9.2015.tex plugin:file://localhost/Library/Spotlight/TeX.mdimporter/ /Library/Spotlight/TeX.mdimporter
(Info) Import: edu.uo.texshop.tex 
(Debug) Import: Attributes for file /Users/masi/Dropbox/Internal Diseases/24.9.2015.tex: {
    ":MD:kMDExtendedImportDictionary" =     {
    };
    "_kMDItemFinderLabel" = 0;
    "com_apple_metadata_modtime" = 464803819;
    kMDItemContentCreationDate = "2015-09-23 19:57:11 +0000";
    kMDItemContentModificationDate = "2015-09-24 16:10:19 +0000";
    kMDItemContentType = "edu.uo.texshop.tex";
    kMDItemContentTypeTree =     (
        "edu.uo.texshop.tex",
        "public.text",
        "public.data",
        "public.item",
        "public.content",
        "public.plain-text",
        "org.tug.tex"
    );
    kMDItemDateAdded = "2015-09-23 19:57:11 +0000";
    kMDItemDisplayName =     {
        "" = "24.9.2015.tex";
    };
    kMDItemKind =     {
        "" = "TeX File";
        en = "TeX File";
        pt = "Documento TeX";
    };
    kMDItemLogicalSize = 18220;
    kMDItemPhysicalSize = 20480;
    kMDItemTextContent = "\...";
}
2015-09-24 18:25:50.335 mdimport[6875:707] Imported '/Users/masi/Dropbox/Internal Diseases/24.9.2015.tex' of type 'edu.uo.texshop.tex' with plugIn /Library/Spotlight/TeX.mdimporter.
2015-09-24 18:25:50.336 mdimport[6875:707] Attributes: {
    ":MD:kMDExtendedImportDictionary" =     {
    };
    "_kMDItemFinderLabel" = 0;
    "_kMDItemStaticInterestScore" = "0.5";
    "com_apple_metadata_modtime" = 464803819;
    kMDItemContentCreationDate = "2015-09-23 19:57:11 +0000";
    kMDItemContentModificationDate = "2015-09-24 16:10:19 +0000";
    kMDItemContentType = "edu.uo.texshop.tex";
    kMDItemContentTypeTree =     (
        "edu.uo.texshop.tex",
        "public.text",
        "public.data",
        "public.item",
        "public.content",
        "public.plain-text",
        "org.tug.tex"
    );
    kMDItemDateAdded = "2015-09-23 19:57:11 +0000";
    kMDItemDisplayName =     {
        "" = "24.9.2015.tex";
    };
    kMDItemKind =     {
        "" = "TeX File";
        en = "TeX File";
        pt = "Documento TeX";
    };
    kMDItemLogicalSize = 18220;
    kMDItemPhysicalSize = 20480;
    kMDItemTextContent = "\...";
}

문제의 근원을 추측하십시오 : /Volumes/Disc/.Spotlight-V100 / ...

로 다른 시점에서 메모리의 역학을 조사하여 fdupes -rd /Volumes/Disc2/다음 샘플은 인덱싱 중입니다.

[1] /Users/masi/Dropbox/det2/plan.tex
[2] /Volumes/Disc2/.Spotlight-V100/Store-V2/440B4DE1-129F-46AB-9D58-14F473B0282A/Cache/0000/0000/0003/213630.txt
[3] /Volumes/Disc2/.Spotlight-V100/Store-V2/440B4DE1-129F-46AB-9D58-14F473B0282A/Cache/0000/0000/0003/213631.txt
[4] /Volumes/Disc2/.Spotlight-V100/Store-V2/440B4DE1-129F-46AB-9D58-14F473B0282A/Cache/0000/0000/0003/213633.txt
... [10] sometimes much more
---

여기서 파일 내용은 두 개의 빈 줄입니다. 인덱스에 대해 Spotlight에서 작성된 많은 중복 항목이 있습니다. Spotlight의 색인은 기능면에서 많은 부분이 중복되어 있습니다. 또한 다른 매체에서이 동작을 연구했습니다. 인덱싱 중 및 인덱싱이 완료된 안정적인 기간 동안 생성 된 더미 / 중복 파일이 많이 있습니다. 애플은 Spotlight가 사용하는 인덱스를 디자인하는 데 나쁜 일을했다고 생각합니다.


mdfind / Spotlight / Finder로 LaTeX 문서를 어떻게 검색 할 수 있습니까?


A) 스포트라이트, 파일 형식 및 시작 서비스 데이터베이스의 교차로 인해 복잡하다는 점에서 좋은 질문입니다 .b) 많은 부분이 필요하며 대화방에서 문제를 논의하고 문제 해결을 반복합니다. 게시물이 필요 이상으로 복잡해지지 않도록합니다. chat.stackexchange.com/rooms/info/29405/…
bmike

1
질문 텍스트에 답변을 추가하지 말고 대신 아래 답변으로 게시하십시오.
nohillside

여기에도 같은 문제가 있습니다. 그 위에 .tex 문서의 아이콘은 공백 (일반)입니다. 아마도 두 가지 문제가 관련되어 있습니까?
user11126

@ user11126 허용되는 답변을 참조하십시오. Apple은 수년간 문제를 해결하려는 동기가 없었습니다. 허용 된 답변과 Spotlight가없는 제안을보십시오. 터미널 접근 방식이 훨씬 좋습니다. --두번째로-MacTex를 설치하지 않았거나 구성에 버그가있을 수 있습니다.
Léo Léopold Hertz 준영

답변:


5

이것은 일반 텍스트 파일을 처리하기 위해 스포트라이트 임포터가 필요하지 않기 때문에 사용하는 TEX 용 편집기 / 소프트웨어의 결과 일 수 있습니다. (따라서 앱의 커스텀 임포터를 삭제하거나 업데이트 / 다른 임포터를 선택할 수 있습니다).

사건을 추측하는 대신 문제가있는 곳을 정리하는 방법이 있습니다. 편집기가 ** kMDItemContentType **을 색인화되지 않은 것으로 변경하거나 충돌하는 타사 스포트라이트 확장명을 가질 수 있습니다. 다음 중 어떤 것 (또는 더 예상치 못한 것)이 발생하는지 알 수있는 방법은 다음과 같습니다.

A) 확장자를 .txt에서 .tex로 변경할 때 스포트라이트가 임의의 텍스트 파일을 색인합니까?
B) 파일의 메타 데이터를 비교하여 사용중인 내용을 확인하십시오.mdls


A를 테스트하려면 텍스트 편집을 열고 한 단어를 문서에 붙여 넣으십시오 : 골다공증

필요한 경우, (아마 리치 텍스트의) 일반 텍스트 문서를 변환 - Shift + 명령 + T (또는 형식 메뉴 사용 - 일반 텍스트 만들기) file.txt를 같이 바탕 화면과 저장을 - 형식 메뉴를 말한다면 리치를 확인 그런 다음 텍스트 는 키를 누르지 말고 문서를 저장하십시오.

이 시점에서 스포트라이트는 파일을 즉시 보게됩니다. 그렇지 않은 경우 스포트라이트 문제가 있고 .tex 파일 문제가 아닙니다. 일반 텍스트 파일의 색인을 생성하지 않도록 스포트라이트가 중단 된 경우 이는 매우 기본적인 문제입니다. 이 작업이 작동하면 .txt 확장자를 .tex로 변경하고 스포트라이트를 다시 확인하십시오.


테스트 B의 경우- mdls명령을 사용 하여 파일과 스포트라이트로 작동하는 TextEdit 파일 간의 메타 데이터 차이점을 검사하십시오. 다음 필드에 특히주의하십시오.

kMDItemContentType             = "public.plain-text"
kMDItemContentTypeTree         = (
    "public.plain-text",
    "public.text",
    "public.data",
    "public.item",
    "public.content"
)
kMDItemKind                    = "Plain Text Document"

.txt를 .tex로 변경하면 이것으로 변경됩니다 (.tex의 파일 확장자를 주장하는 응용 프로그램이 없으므로 일반 및 ad / hoc와 달리 시작 서비스 / 스포트 라이트 분류 및 적절한 kMDItemContentType / kMDItemKind에 매핑합니다 유형:

kMDItemContentType             = "dyn.ah62d4rv4ge81k3p2"
kMDItemContentTypeTree         = (
    "dyn.ah62d4rv4ge81k3p2",
    "public.data",
    "public.item"
)
kMDItemKind                    = "Document"

터미널 기술이 아직 개발되지 않은 경우 잘라 내기 / 붙여 넣기를 할 수있는 간단한 테스트가 있습니다. 데스크탑에서 파일 이름 test_file의 내용을 삭제하므로 아래 명령을 붙여 넣기 전에 확실하지 않은 경우 백업하십시오.

cd ~/Desktop/
echo osteoporosis > test_file.txt
mdfind osteoporosis | grep Desktop
mdls  -name kMDItemContentType test_file.txt 
mv test_file.txt test_file.tex
mdfind osteoporosis | grep Desktop
mdls  -name kMDItemContentType test_file.tex 

mdfind명령은 Spotlight를 사용하는 것과 동일하므로 터미널 검색이 해당 시점의 Spotlight 검색과 일치하는지 확인하십시오.

각주로서, 이러한 도구는 파손 정도를 진단하는 데에만 필요하며 결국 스포트라이트 검색을 대체 할 수는 없습니다. 스포트라이트만으로는 스포트라이트 문제를 진단 할 수 없습니다. 또한 ~/Desktop서브 시스템을 파킹하는 동안 충돌 보고서 또는 기타 스포트라이트 진단이 발생하는 경우 단계를 수행하는 동안 콘솔 로그를 볼 수 있습니다 .

또한 일반 텍스트 문서는 검색 할 수 있지만 텍스트 문서는 검색 할 수 없으면 문제가 빨리 발생합니다. 업데이트에서 .tex 파일은 "org.tug.tex"유형이라고 언급했습니다. 시작 서비스 데이터베이스를 탐색하여 시스템 파일이이 파일을 구문 분석하고 제거하는 수입 업체를 찾아서 제거 할 수 있습니다. TEX 응용 프로그램을 추측하고 일시적으로 삭제하여 일시적으로 스포트라이트를 "고정"하는지 확인하십시오.

lsregister -dump| grep -n7 org.tug.tex

lsregister/ System에 잘 숨겨져있는 도구가있는 곳 -실행 서비스에 대해 읽으려면 SuperUser의이 스레드를 참조하십시오 : /superuser/323599/ 이 스레드 : Finder의 "연결 프로그램"메뉴에 중복 된 항목 시도해야 할 이상한 일을 위해 Launch Services 를 재 구축 한 후에도 . 나는 약 20 분 동안 시스템에서 누락 된 내용을 고소 할 수 있다고 확신하지만, 당신이 접근 할 수있는 방식으로 모든 가능성을 기록하고 약간의 대답을 추측하는 것이 예상보다 어렵습니다.



Textmate 개발자에게 연락하여이 주장을 확인하고 싶습니다. 이 문제는 이제 엘 캐피 탄에서도 재현됩니다.
Léo Léopold Hertz 준영

4

Mac OS X 10.8이 설치된 가상 시스템에서 Spotlight 문제를 재현하려고했습니다.

MacTex-20150613을 설치하고 TexShop 및 LaTeXiT를 포함한 모든 구성 요소 (> 300)를 업데이트 한 후 * .tex 파일에서 내용을 검색하는 데 아무런 문제가 없었습니다.

입력 후 :

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user

* .tex 파일에서 내용을 검색하는 기능을 잃어 버렸습니다.

그렇게 할 수있는 능력을 되 찾으려면 다음을 수행했습니다.

  • 로그인 한 관리자로서 나는 파일 복사 /Applications/TeX/TeXShop.app/Contents/Library/Spotlight/TeX.mdimporter을/ 도서관 / 스포트 라이트 /

    sudo cp -R /Applications/TeX/TeXShop.app/Contents/Library/Spotlight/TeX.mdimporter  /Library/Spotlight/
    
  • 먼저 /.Spotlight-V100 폴더 (Finder 메뉴 표시 줄-> 이동-> 폴더로 이동 ... 및 /.Spotlight-V100 입력)로 이동하여이 폴더의 모든 파일과 폴더를 이동하여 시스템의 재색 인화를 준비했습니다. 쓰레기통에. 그렇게하려면 관리자 암호를 입력해야합니다. 폴더를 입력하지 못하면 루트로 로그인하고 (/ System / Library / CoreServices / Directory Utility.app를 사용하여 먼저 루트를 활성화해야 할 수 있음) 폴더의 내용을 루트로 제거하십시오.
  • 맥을 재부팅
  • 관리자로 로그인하여 휴지통을 비 웁니다. 재색 인화가 자동으로 시작됩니다.

mdls , xattr 및 기타 도구를 사용하여 파일 상태 또는 시스템의 여러 상태 (여러 VM 스냅 샷 포함)에서 서비스 시작과 같은 모든 관련 정보를 지속적으로 확인한 결과 흥미 롭 거나 의심스러운 점은 없었습니다.


새 VM에서 위의 모든 단계를 더 철저히 반복하여 mdimport -d3Spotlight의 동작을 확인하는 데 사용 했습니다.

바닐라 맥 OS X에서 .tex 파일은 dyn.random 임포터를 사용하여 올바르게 임포트됩니다 :

host:~user$ /usr/bin/mdimport -d3 /Users/user/Desktop/sample.tex
(Debug) Import: file:/Users/user/Desktop/sample.tex plugin:(null) (null)
2015-09-23 20:20:42.359 mdimport[313:707] Imported '/Users/user/Desktop/sample.tex' of type 'dyn.ah62d4rv4ge81k3p2' with no plugIn. 

내용 (키워드)이 발견되었습니다.

Tex.apps 중 하나를 설치했지만 시작하지 않은 후 Mac OS X에도 동일하게 적용됩니다. 임포터는 RichText.mdimporter로 변경되었습니다.

host:~ user$ /usr/bin/mdimport -d3 /Users/user/Desktop/sample.tex
(Debug) Import: file:/Users/user/Desktop/sample.tex plugin:file://localhost/System/Library/Spotlight/RichText.mdimporter/ /System/Library/Spotlight/RichText.mdimporter
(Info) Import: public.tex 

Tex.app (내 경우에는 TeXShop)을 시작한 후 임포터는 TeXShop 번들 깊이에있는 기본 TeX.mdimporter를 사용합니다.

host:~ user$ /usr/bin/mdimport -d3 /Users/user/Desktop/sample.tex
(Debug) Import: file:/Users/user/Desktop/sample.tex plugin:file://localhost/Applications/TeX/TeXShop.app/Contents/Library/Spotlight/TeX.mdimporter/ /Applications/TeX/TeXShop.app/Contents/Library/Spotlight/TeX.mdimporter
(Info) Import: edu.uo.texshop.tex 

TexShop 및 LaTeXiT를 포함한 MacTex-20150613을 업데이트 한 후 색인 생성이 완전히 중단되었습니다.

host:~ user$ /usr/bin/mdimport -d3 /Users/user/Desktop/sample-2.tex
(Debug) Import: file:/Users/user/Desktop/sample-2.tex plugin:(null) (null)
2015-09-23 21:29:49.278 mdimport[5541:707] Imported '/Users/user/Desktop/sample-2.tex' of type 'public.tex' with no plugIn.

플러그인 TeX.mdimporter (TexShop 내부)의 올바른 경로가 없어져서 새 * .tex 파일을 색인화하는 기능이 사라졌습니다. dyn.random 또는 RichText.mdimporter와 같은 다른 플러그인은 아마도 'public.tex'유형의 파일을 색인화하지 않기 때문에 들어 가지 않을 것입니다. (최소한 새로운) .tex 파일의 컨텐츠 검색은 더 이상 가능하지 않습니다.

TeX.mdimporter를 / Library / Spotlight 컨텐츠로 복사 한 후 색인이 복원됩니다.

host:~ user$ /usr/bin/mdimport -d3 /Users/user/Desktop/sample-3.tex
(Debug) Import: file:/Users/user/Desktop/sample-3.tex plugin:file://localhost/Library/Spotlight/TeX.mdimporter/ /Library/Spotlight/TeX.mdimporter
(Info) Import: public.tex 

모든 .tex 파일을 올바르게 다시 색인화하려면 (특히 콘텐츠 키워드를 검색 할 수없는 파일) 스포트라이트 데이터베이스를 다시 작성하거나 (응답의 첫 부분 확인) 모든 .tex 파일의 수정 날짜를 변경하여 다시 색인화해야합니다. .


흥미 롭군 수입업자는 전체 텍스트 검색을 수행해야합니까? 임포터를 삭제하면 일반 텍스트 스포트라이트가 모든 파일을 처리하도록해야합니다. (그리고 그럼에도 불구하고 거대한 +
1-

나는 특별한 수입으로 내 모든 파일을 검색 할 수 있어요,하지만 난 더 이상 10.8을 운영하지 않는 ... 감사 @klanomath
bmike

@ 어쩌면 mdutil -s ~/Dropbox첫 번째 명령 sudo mdutil -s ~/Dropbox표시를 실행하는 동안 오류가 발생 합니까?
klanomath

@Masi 오류 메시지이지만 권한이 없어서 명령을 실행하는 "bash"오류가 아닙니다 (오류가 발생했습니다). mdutil보관 용 폴더를 색인 할 수 없다는 오류 메시지 입니다. .tex 파일을 어떻게 교환합니까 (dl / ul)? Dropbox 폴더에?
klanomath

@Masi Disc2는 Dropbox와 같은 두 번째 볼륨 또는 클라우드 앱 / 서비스입니까?
klanomath

4

이 문제를 해결 한 방법은 다음과 같습니다.

노트. 솔루션을 처음 게시 한 이후에도 여전히 작동합니다. 당시 나는 Mac OS 10.11.5와 TeXShop 3.62를 사용하고있었습니다. 이제는 Mac OS 10.12.3 및 TeXShop 3.77입니다. .plist 파일을 편집하려면 (아래 설명 참조) Xcode를 사용합니다.

mdls먼저이 명령을 사용하여 모든 .tex 파일이보고 된 것을 발견했습니다 kMDItemContentType = “public.tex”(시스템이 다르게보고되면 다음 지침을 적절히 수정해야합니다).

TeXShop을 마우스 오른쪽 버튼으로 클릭하고 Show Package Contents를 선택하여 TeXShop> Contents를 열었습니다. 다음과 같이 public.tex를 Document Content Type UTI로 추가하여 Info.plist를 수정했습니다 (파란색으로 강조 표시된 줄 참조).

info.plist 편집

그런 다음 TeXShop> Contents> Library> Spotlight> TeX.mdimporter> Contents에서 Info.plist를 수정했습니다 (TeX.mdimporter의 Show Package Contents 실행). 위와 마찬가지로 적절한 위치에 public.tex를 추가했습니다. 다음 사진을보십시오 :

TeX.mdimporter의 Info.plist 편집

그 후 Spotlight는 .tex 파일의 내용을 검색합니다.


이것을 이해하기 위해 한 줄을 얻는 것이 좋을 것입니다. 작동 방식에 대한 확인은 아직 없습니다.
Léo Léopold Hertz 준영

나는 당신이 평범한 텍스트 편집기로 우리를 보여줬으면 좋겠다. Xcode의 테이블은 혼란 스럽습니다.
Dellu

시에라에 다시 일하는 것! 어떤 구호!
Florian

2

이것은 Spotlight MetaData 가져 오기에 문제가있는 것 같습니다. "TexLive"패키지에 의해 설치된 "Spotlight Plugin"의 경로가 없거나 손상되었거나 손상되었습니다.

내 컴퓨터의 "mdimport -L"출력에는 다음 줄이 포함됩니다.

"/ Applications / TeX / TeX Live Utility.app/Contents/Library/Spotlight/DVIImporter.mdimporter"

출력에 비슷한 줄이 표시되지 않습니다. 좋은 해결책은 MacTeX-2015 배포 ( https://www.tug.org/mactex/) 에서 "TeX Live"배포를 다시 설치하는 것입니다. 이렇게하면 깨진 mdimport 경로가 수정됩니다.

mactex-20150613.pkg


3
단축 링크를 사용하지 마십시오. 대상을 혼란스럽게합니다.
grg

재색 인화로 문제가 해결되지 않았습니다.
Léo Léopold Hertz 준영

1

스포트라이트 없이도 가능하다면

파일 목록을 가져 오려면 각 파일을 개별적으로 찾아보십시오.

동일한보기에서 모든 파일 이름과 일치 항목을 가져 오려면 Time...재귀 적으로 탐색 하여 디렉토리의 모든 파일을 검색하는 데 사용하십시오.

  • 파일 / 심 볼링 된 파일 [fd0]

    find -L . -type d -path './Time*' \ 
        -exec grep -d "recurse" series {} + | 
    cut -c -80
    
  • directoryNames에 공백이없는 .tex 파일 ( source )

    find -L $(find . -type l -name 'Math*') -name '*.tex' \
        -exec fgrep word /dev/null {} + |
    cut -c -80
    

스포트라이트 인 경우

임시 해결책은 안정적인 솔루션이므로 일부 폴더에서 .tex 문서 대신 .txt 문서를 사용하는 것입니다.

cat *.tex > summary_all.txt

다른 시도

  • 나는 .tex 파일을 검색하기위한 터미널 방법 찾기 위해 노력하고 여기 에 대한 열기 찾기를 뷰어에서 클릭하여 PATH를 초래이야?
  • mdfind를 .tex의 다른 도구 로 바꾸는 방법에 대해 mdfind 여기 를 바꾸려고 합니까?

1
파일에서 재귀 검색을 어떻게 수행합니까? 내가 당신을 올바르게 이해한다면, 당신은 두 개의 find 서술문을 다음과 같이 하나로 find -L . -type d -path './Time*' -exec grep -d "recurse" series {} +
옮길

0

더 바람직한 해결책을 찾지 못하면 언제든지 시도해보십시오 mdfind. Spotlight의 CLI 대응 인 것으로
알고 있습니다 . 나는 그것을 자주 사용하고 매우 도움이된다고 생각합니다. 사용하려면 기본 Terminal.app 을 연 다음 명령 및 인수를 다음과 같이 입력하십시오.

username@hostname:~$ mdfind osteoporosis.tex

또는 제목을 모르는 경우 모든 LaTeX 파일을 다음과 같이 간단히 나열 할 수 있습니다.

username@hostname:~$ mdfind .tex

이러한 쿼리가 비슷한 문자열 (예 : '.text')과 일치 할 가능성이 있습니다.

username@hostname:~$ mdfind osteoporosis.tex | grep '\.tex$'

그리고 / 또는 더 간단하게 : (이것은 아마도 당신의 상황에 가장 적합한 옵션 일 것입니다 :)

username@hostname:~$ mdfind .tex | grep '\.tex$'

| grep '\.tex$'명령에 추가 하면 기본적으로 다른 필터를 통해 결과를 실행 하여 LaTeX 확장자를 포함하지 않는 파일 이름을 제거합니다 . 문자열 끝에 '.tex'가 있습니다.


참고 : 일부 파일 형식은 허용하는 것 같지 않습니다 스포트 라이트mdfind식별하거나 자신에 의해 그들을 찾을 내용 . Spotlight 는 자신이 알고있는 파일 유형 만 색인 할 수있기 때문입니다. Apple은 가장 일반적인 파일 형식을 색인화하기위한 플러그인을 제공하지만 전부는 아닙니다. 분명히 MacTex 사본에 LaTeX Spotlight 임포터가 포함되어 있어야 하지만 그것이 깨지거나 빠졌거나 부적절하면 여기에서 훌륭한 것을 찾을 수 있습니다 :
http://wiesmann.codiferes.net/wordpress/?page_id=262


또한 Mac OS X 용 LyX에서 제공 :
http://wiki.lyx.org/Mac/Spotlight/
TeXShop과 번들로 제공 :
http://pages.uoregon.edu/koch/texshop/


이 질문에 대한 토론과 뒤 / 앞뒤는 chat.stackexchange.com/rooms/29405/… 를 참조하십시오 .
bmike

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.