Chcę policzyć, ile słów ma w nim mój dokument LaTeX. Mogę to zrobić, przechodząc na stronę internetową po pakiet texcount i używając tam interfejsu internetowego. ale to nie jest idealne.
Wolę mieć skrót w emacs, aby po prostu zwrócić liczbę słów w pliku (lub idealnie liczbę słów w pliku i we wszystkich plikach wywoływanych przez \input
lub \include
w dokumencie). Pobrałem skrypt texcount, ale nie wiem co z nim zrobić. Oznacza to, że nie wiem, gdzie umieścić .pl
plik i jak go wywołać w emacsie.
To znaczy: chcę skrót klawiszowy do polecenia powłoki. Chcę, aby polecenie powłoki uruchomiło texcount na bieżącym aktywnym buforze i zwróciło wszystkie słowa w minibuforze.
Używam Ubuntu i emacs22, jeśli to pomaga ...
źródło
Oto nieco ładniejsza wersja powyższego skryptu (obsługuje spacje w nazwach plików, generuje wyjście w jednym wierszu itp.).
LaTeX
Haki są dla AuCTeX.źródło
Krótka wersja:
M-! texcount <file.tex> RET
Chciałbym po prostu użyć dołączonego emacsa,
shell-command
który jestM-! <cmd> RET
wraz z
texcount
(texcount.pl), który jest instalowany z większością dystrybucji lateksowych. Podczas edycji dokumentu po prostu naciśnijM-!
Entertexcount <tex-file>
i naciśnij Return.źródło
Łatwą kombinacją innych opublikowanych tutaj rozwiązań byłoby:
źródło
Na przyszłość, kilka z tych odpowiedzi można by poprawić, używając funkcji shell-quote-argument, aby upewnić się, że spacje i inne zabawne formatowanie w nazwie pliku będą obsługiwane poprawnie. Na przykład, aby poprawić odpowiedź plgx:
źródło
Możesz także użyć wbudowanego
M-x tex-count-words
. Aby utworzyć skrót klawiaturowy, dodaj do.emacs
źródło
Nie wiem, czy to pomogłoby komukolwiek, ale kiedy pisałem pracę magisterską, chciałem zrobić dwie rzeczy; (1) policz liczbę słów dla całej pracy magisterskiej (zamiast jednego rozdziału) i (2) użyj niestandardowego skryptu licznika. Chodziło o to, że omijałoby to takie sekcje jak streszczenia, deklaracje itp. I wybierało tylko odpowiednie rozdziały.
Policz słowa z pliku głównego
Rozwiązanie tutaj było proste; dowiedz się, czy plik, w którym się znajdujemy, jest plikiem głównym, w przeciwnym razie wyślij go na adres
texcount
.Użyj skryptu niestandardowego
Zrobiłem to, dodając
custom-tex-counter
zmienną lokalną do dołączonego pliku, wskazując skrypt bash, który był odpowiedzialny za liczenie słów.Zadeklaruj zmienną niestandardową
Dodaj ścieżkę do zmiennych lokalnych (koniec
.tex
pliku)Łącząc to z powyższym
Dla odniesienia oto, jak wyglądał mój własny skrypt (nie zapomnij, aby był wykonywalny):
Zasadniczo jedyne, co robi, to
grep
nieskomentowane rozdziały i dodatki z pliku głównego i policz tam słowa.Możesz zmienić regex dla każdego projektu, aby pasował do struktury, której używasz, ale jeśli konsekwentnie używasz tej samej struktury, możesz umieścić skrypt bash gdzieś na swojej ścieżce i uczynić go zmienną globalną w emacs zamiast lokalnej.
źródło