Jak sprawić, by linijka była zawsze pokazywana w Sublime text 2?


289

Używam Sublime Text 2 i chcę, aby linijka była pokazywana w każdym pliku o określonej wysokości linii. Ale muszę pokazać to ręcznie w każdym pliku.

Odpowiedzi:


115

Edytuj wartość „linijki” w ustawieniach domyślnych, aby zawierała numer kolumny, na której ma być wyświetlana linijka, i będzie ona trwała.


151
Przewijaj, aby uzyskać bardziej szczegółową odpowiedź autorstwa @ssorallen.
Don Spaulding

20
W rzeczywistości nie powinieneś edytować ustawień domyślnych. Są one domyślne z jakiegoś powodu i zamiast tego należy je zastąpić ustawieniami użytkownika, jak wyjaśniono w odpowiedzi @ ssorallen. Zmiana ustawień domyślnych oznacza, że ​​Twoje linijki znikną podczas następnej aktualizacji Sublime i na pewno nie spodoba ci się to.
Olivier Lacan

704

Przejdź do Sublime Text > Preferencje > Ustawienia - Użytkownik

Dodaj "rulers"ustawienie z liniami, które chcesz dla linijki:

// Adds a single vertical ruler at column 80
"rulers": [80],

Jeśli chcesz mieć wiele linijek, rozdziel wartości przecinkiem:

// Adds two vertical rulers: one at column 80 and one at column 120
"rulers": [80, 120],

Władcy się nie pokazują? Linijki są wyświetlane tylko w przypadku korzystania z czcionki Monospace, która jest domyślną czcionką dla Sublime Text . Upewnij się, że używasz czcionki Monospace, jeśli powyższe ustawienia nie działają.


To mi nie zadziałało. Próbowałem nawet uruchomić go ponownie, ale nic. Czy to zależy od używanego motywu? Mam jasny motyw z białym tłem.
commadelimited

1
@ Ustawienia adsorpcji -> Plik użytkownika jest używany. Właściwość My rulers: „rulers”: [80,120], ale przy tych szerokościach kolumn nie są wyświetlane żadne linijki. Losowo mam linijkę w 160, ale nie mogę jej znaleźć w ustawieniach domyślnych ani w ustawieniach użytkownika.
commadelimited

1
@ssorallen Wykonano oba. Pojawiają się „linijki” z wcięć tabulatorów, ale nie te z mojego końca linii. To dziwne, ponieważ pokazuje się z moim plikiem konfiguracyjnym w systemie Windows, ale nie w systemie Mac.:/ Dziękuję za pomoc w debugowaniu :)
TicViking

1
Miałem dokładnie ten sam problem i udało mi się go naprawić, usuwając plik preferencji użytkownika w folderze AppData dla wysublimowanego tekstu. ... / Pakiety / Użytkownik
RogueDeus

1
Chciałem dodać i powiedzieć, że nadal działa to na Sublime Text 3. Najpierw będziesz chciał wyłączyć wszystkie linijki, które aktualnie ustawiasz na otwartych kartach, ponieważ zastąpią one ustawienia użytkownika (tylko dla tej karty). Po zapisaniu ustawień użytkownika na wszystkich otwartych kartach wyświetli się linijka
Kamikaze Rusher,

49

Nigdy nie edytuj Settings - Default; Settings - Userzamiast tego edytuj . Jeśli zaktualizujesz wersję SublimeText, stracisz wszystkie ustawienia, ponieważ Settings - Defaultzostaną zastąpione.

W folderach Packages folder „User /” będzie ignorowany między aktualizacjami SublimeText, ustawienia tutaj będą trwałe.

Aby włączyć trwałe linijki w dowolnym dokumencie, dodaj ustawienia w Defaults - User:

{
  "rulers": [75, 80, 85]
}

W tym przykładzie zostaną wyświetlone 3 linijki o długości 75, 80 i 85 znaków.


2
Trafne spostrzeżenie. Zaktualizowałem swoją odpowiedź, aby sugerować edycję ustawień użytkownika zamiast domyślnych.
Ross Allen,

Istnieją również ustawienia specyficzne dla składni, które są przydatne do wyświetlania linijki w jednym języku (powiedzmy w Pythonie, gdzie PEP8 wymaga 79 znaków w wierszu), ale nie w każdym innym języku.
Fred

5

Jak inni wcześniej stwierdzili, wybierz Preferencje -> Ustawienia - Użytkownik i zmień

"rulers": [],

do

"rulers": [80],

aby wyświetlić jedną linijkę w kolumnie 80.

Teraz, jeśli chodzi o ścieranie, wydaje się, że należy użyć czcionki o stałej szerokości, aby wyświetlić linijki, więc trzeba będzie również zmienić

"font_face": "",

do

"font_face": "Monospace",

lub dowolna inna czcionka o stałej szerokości.

Myślenie o tym ma sens. Jeśli różne znaki mają różne szerokości, linijka może potencjalnie nie być pojedynczą linią, ale wiązką irytujących segmentów linii. Zauważyłem to podczas korzystania z domyślnej czcionki, a moje numery kolumn nie były takie same dla tej samej pozycji pionowej. Jednocześnie moja fantazyjna linijka została określona, ​​ale nie wyświetlona. Zmiana czcionki na Monospace rozwiązała oba problemy.


1
Warto wspomnieć, że może nie być "rulers"wpisu Preferences -> Settings-User. W takim przypadku musisz go utworzyć.
Tass

1

Chociaż odpowiedź Rossa Allena jest świetna, nie jest najwygodniejsza, jeśli chcesz włączyć lub wyłączyć linijki lub zmienić szerokość w różnych punktach podczas korzystania z Sublime.

Na szczęście ktoś stworzył pakiet, który pozwala ci to zrobić.

https://packagecontrol.io/packages/QuickRulers

Pakiet działa zarówno w Sublime Text 2, jak i 3.


Instrukcje instalacji:

  1. Zainstaluj PackageControl
  2. Otwórz pakietControll (np. Przez ⌘ + SHIFT + P)
  3. Wpisz „ Zainstaluj ” i wybierz „ Kontrola pakietów: zainstaluj pakiet
  4. Wpisz „ QuickRulers ” i naciśnij, Enteraby zainstalować pakiet QuickRulers .

Możesz uzyskać dostęp do polecenia ( quick_rulers) na kilka różnych sposobów, ale domyślnie jest on ładowany do Omnisearch poprzez „ QuickRulers: Open Panel ”. (tzn. naciśnij⌘ + SHIFT + P i wpisz „ QuickRulers: Otwórz panel ”)


0

Jeśli zmienisz czcionkę, linijka nie będzie wyświetlana. Np. Ustawiłem "font_face": "Lucida Grande", a linijka zniknęła.


To samo tutaj, zmienione "font_face": "Input"i "rulers": [80]zniknęło z mojego pliku konfiguracyjnego. Wygląda na błąd ST3.
Marek Ka.

0

Właśnie miałem ten problem i zauważyłem, że mój władca pojawił się tylko wtedy, gdy zostałem lekko przewinięty w prawo w poziomie. Okazuje się, że przyczyną tego znikania było to, że byłem nieco powiększony. Naciśnij, Cmd+0aby upewnić się, że jesteś powiększony do domyślnego rozmiaru 100%, zanim spróbujesz innych rzeczy, na wypadek, gdyby to był twój problem.

(Używam Sublime Text 3)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.