2012-11-01 26 views
5

Po wybraniu zmiennej f edytor podświetla inne wystąpienia zmiennej. Do tej pory tak dobrze, ale kiedy próbuje dodać je do listy wyboru z Ctrl+D, dodaje również f, ponieważ występuje w kodzie jako zwykły tekst. Mogę pominąć to z Ctrl+K, ale jeśli edytor już rozpoznaje f jako zmienną, to z pewnością może po prostu wybrać zmienne? Ta opcja nie znajduje się w menu.Jak wybrać zmienne (bez tekstu) o tej samej nazwie?

Skorzystaj z tego fragmentu kodu JavaScript.

f=function(){}; 
f(); 

Przy wyborze pierwszego f, ale również podkreśla f w f(), ale nie f w function.
Podczas wielokrotnego wybierania przy użyciu Ctrl+D wybiera to.

Odpowiedz

6

It's a bug. Post ma również obejście tego problemu.

Zamiast wybierać zmienną, po prostu umieść w niej kursor i naciśnij Ctrl+D. To również ją wybierze, ale tylko inne zmienne (lub to, co redaktor rozpoznaje jako zmienne, w oparciu o granice słów) na kolejnych naciśnięciach Ctrl+D.

0

Można zmodyfikować opcję word_separators, aby nie uwzględniać zmiennego prefiksu (tj. $ dla PHP), więc po dwukrotnym kliknięciu nazwy zmiennej wybrane zostanie również $.

Ta opcja znajduje się w pliku Preferences.sublime-settings w folderze Default. Zalecam dodanie zmodyfikowanego ustawienia do Preferences.sublime-settings w folderze User, zamiast zmieniać ustawienia domyślne.

"word_separators": "./\\()\"'-:,.;<>[email protected]#$%^&*|+=[]{}`~?" 


Edit:

Niestety, obecnie nie ma sposobu, aby zrobić Znajdź & Wymienić w określonym zakresie. Kwestia została podniesiona here, a możesz głosować na nią jako żądanie funkcji na Sublime's UserEcho forum.

+0

To jest w JavaScript, więc zmienna ma właśnie nazwę 'f'. Edytor nie wie jednak, że jest to zmienna. Dodam fragment kodu, aby lepiej to wyjaśnić. –

+0

W takim przypadku niestety nie jest to możliwe bez wtyczki i żadne nie wydaje się jeszcze istnieć w tym celu. Na ich forum jest otwarta prośba o funkcję (zobacz moją edycję), więc proponuję ją tam załadować. – Sara

+0

Hmmm, więc tak naprawdę nie wie o zmiennej (ponieważ nie analizuje kodu), ale dlaczego tylko ** podświetla ** odpowiednie 'f's, ale także ** wybiera **. f' w 'function' przy użyciu' Ctrl + D'? Jeśli wypróbujesz fragment kodu ze składnią JavaScript, zauważysz natychmiast. Jeśli to jeszcze nie zaimplementowano, powinno to być naprawdę łatwe. –

Powiązane problemy