Edytor tekstu konsoli ze skrótami klawiaturowymi podobnymi do systemu Windows (Ctrl-Z, X, C, V)


31

Ok, zdaję sobie sprawę, że ryzykuję wojnę religijną, zadając pytanie o edytory tekstu, ale proszę bardzo.

Wymagania

  • Najczęściej używany do edycji plików konfiguracyjnych
  • Tekstowy nie GUI
  • Dostępne dla Raspian smak Debiana
  • Nie wymaga uczenia się użytkownika GUI dla Windows / Mac (bez vi / vim)
  • W pełni wykorzystuje klucze znajdujące się na nowoczesnych klawiaturach, tj. Home, end, pgup, pgdn, del
  • Używaj skrótów klawiaturowych znajdujących się prawie we wszystkich aplikacjach GUI, np. Cofnij ( Ctrl-Z), Ponów ( Shift-Ctrl-Z), Zaznacz wszystko ( Ctrl-A), Wytnij ( Ctrl-X), Kopiuj ( Ctrl-C), Wklej ( Ctrl-V), Rozwiń zaznaczenie ( Shift-Arrow), Pomiń słowo ( Ctrl-Arrow), Usuń wybór ( Del) itp
  • Opcjonalnie : obsługa myszy do zmiany pozycji kursora i zaznaczania tekstu

Z pewnością nie jest to duże pytanie w dzisiejszych czasach?


2
„Nie wymaga uczenia się” brzmi jak niezwykle restrykcyjne (i być może nierealistyczne) kryterium, szczególnie gdy prosisz o narzędzie CLI ...
jasonwryan

1
nanobyłoby blisko. Nie będzie miał dokładnie takich samych skrótów, ale podobne skróty, aby wykonać tę samą operację. lub możesz utworzyć .nanorc i mieć niestandardowe skróty
h3rrmiller

2
@ jasonwryan Jako doświadczony użytkownik systemu Windows (lub Mac) mam już wiedzę wymaganą do korzystania z nowoczesnego edytora tekstu przy użyciu samej klawiatury. Chciałbym skorzystać z tego samego doświadczenia w narzędziu Linux CLI.
Greg Woods

3
Skróty, których oczekujesz, to modyfikacje Microsoftu zgodne z wytycznymi IBM CUA . Ani modyfikacje CUA, ani MS nie są tradycyjne w świecie unixowym.
Gilles „SO- przestań być zły”

4
@Gilles Nie jestem do końca pewien, czy zgadzam się nazywać te skróty skrótami „Windows”. Każda popularna aplikacja GUI, która wykonuje edycję tekstu, używa tych skrótów na wszystkich głównych platformach. Wiele z tych skrótów również poprzedza system Windows.
jw013

Odpowiedzi:


13

Wypróbowałem wszystkie powyższe rozwiązania (z wyjątkiem tych, które są oczywiście głupie, jak konfiguracje emacs lub vi).

Najlepszy ogólnie jest tylda. Naprawdę wykonany, aby udzielić odpowiedzi na oryginalne pytanie Grega Woodsa. Powinien zostać dodany do wszystkich standardowych repozytoriów Linux.

Jako długoletni użytkownik nano, który znalazł tu swoją drogę, szukając czegoś równie prostego z prawdziwym buforem cofania / ponawiania i standardowymi powiązaniami klawiszy edytora GUI, serdecznie polecam edytor Sanos. Jest mały i robi dokładnie to, czego wymaga oryginalne zapytanie. Jego jedyną wadą jest brak obsługi myszy za umieszczanie kursora. To mój nowy ulubiony minimalny edytor, a nano idzie do śmietnika. Musisz go skompilować, ale jest to trywialny program do skompilowania - pojedynczy plik źródłowy w języku C. Skompilowałem to do „rozsądnego” dla „edytora sanos” (sanos to tak naprawdę mini-os).

A teraz, aby powtórzyć pytanie, które większość odpowiedzi i głosów wydaje się ignorować: prośba jest o prosty, prosty edytor, który po prostu działa i używa standardowych powiązań GUI (które, nawiasem mówiąc, nie należą do systemu Windows).

Dwa, które polecam, i fte, są jedynymi, które wypełniają rachunek, a fte jest zbyt dziwaczny w xterm.


Skompilowałem Sanos, ale klawisze Shift + strzałka nie działają, również Shift działa na wielkie litery, używam szpachli do ssh
BioHazard

To jest najlepsza odpowiedź imho. Próbowałem obu, a Shift + Strzałki do wyboru i Ctrl + C Ctrl + V itd. Działają w obu. Musiałem wyłączyć sprzeczne skróty klawiaturowe w emulatorze terminali, jak na przykład Shift + Up, aby przewijać jedną linię wstecz.
SoleSoul

Interesujące jest to, że edytor Sanos ma tylko ~ 2000 wierszy kodu, ma Cofnij-C, Cofnij, wybieraj Shift i dobrze obsługuje karty. Wygląda na to, że funkcja unindent () ma błąd. Myślę, że byłby to świetny punkt wyjścia do zbudowania potężniejszego edytora.
PJ Brunet

mój Boże. Dziękuję za to. spróbowałem tyldy przez 20 sekund i powiedziałem „tak, tego właśnie chcę!” Twoje zdrowie!
Paul Erlenmeyer

11

Wypróbuj Micro.

https://github.com/zyedidia/micro

Micro to edytor tekstowy oparty na terminalach, który ma być łatwy w obsłudze i intuicyjny, jednocześnie wykorzystując pełne możliwości nowoczesnych terminali. Jest dostarczany jako pojedynczy, statyczny plik binarny z bateriami, bez żadnych zależności, i możesz go teraz pobrać i używać.

Jak sama nazwa wskazuje, micro ma być następcą nanoedytora, ponieważ jest łatwy do zainstalowania i obsługi w mgnieniu oka, ale micro ma również przyjemność z korzystania z niego przez cały czas, niezależnie od tego, czy pracujesz w terminalu, ponieważ wolisz (jak ja) lub dlatego, że musisz (przez ssh).

Zrzuty ekranu i kolory

Jest prawie idealny. Wybór strzałki Shift działa idealnie. Control-C (cięcie), Control-V (wklej), Control-Z (cofnij), Control-S (zapisz) wszystkie działają zgodnie z oczekiwaniami. Doskonale wcina i unindents zaznaczenia.

Potrzebujesz emulatora terminala, który poprawnie obsługuje klawisz Shift. Terminator działa dobrze po wyjęciu z pudełka. Niektóre terminale oparte na Androidzie nie obsługują wyboru zmiany biegów, ale JuiceSSH (najpopularniejszy w Google Play) działa, chociaż jeszcze go nie testowałem.


2
I doskonałe wsparcie myszy i piękne podświetlanie składni.
PJ Brunet,

Jest to prawdopodobnie najbardziej „nowoczesny”, o czym świadczy domyślny schemat kolorów i wybór obsługiwanych języków. Jednak skróty klawiaturowe różnią się znacznie od czegoś takiego jak Sublime, PIA je zmienia, a wiele skrótów klawiaturowych po prostu nie jest obsługiwanych.
Aleksandr Dubinsky

9

joejest, IMO, najlepszy z redaktorów-którzy-nie-vi. Jest to przyzwoity, w pełni funkcjonalny edytor sam w sobie, a nie uproszczony minimalny edytor taki jak nano.

Jeśli są wywoływane jako jstarlub joe, domyślne powiązania klawiszy są podobne do WordStar , które były również używane w wielu innych programach na przestrzeni lat, w tym w edytorze IDE Borland Turbo Pascal i Turbo C, więc powinno być znane wielu użytkownikom. Jeśli zostanie wywołany, ponieważ jmacpowiązania klawiszy są emacspodobne. Wiązania klawiszy można konfigurować, a jeśli nie możesz znaleźć konfiguracji, która najbardziej Ci odpowiada, możesz ją dodać samodzielnie lub skopiować i zmodyfikować istniejącą.

Jestem zbyt dużym viużytkownikiem, aby sam z niego korzystać, ale często polecam go osobom, które nie lubią lub chcą nauczyć się edytora modalnego vi, z dobrymi wynikami.

Oto opis w pakiecie debian:

Joe, lub własny edytor Joe, przypomina większość edytorów tekstu na PC: sekwencje klawiszy przypominają edytory WordStar i Turbo C, ale zestaw funkcji jest znacznie większy niż tych. Joe ma wszystkie funkcje, których powinien oczekiwać użytkownik systemu Unix: pełne wykorzystanie termcap / terminfo, pełną integrację z systemem Unix w stylu VI, potężny plik konfiguracyjny i system wyszukiwania wyrażeń regularnych. Posiada również sześć kart pomocy, które są zawsze dostępne, oraz intuicyjny, prosty i przemyślany interfejs użytkownika.

Joe ma świetny algorytm optymalizacji aktualizacji ekranu, wiele okien (przez które można przewijać) i brakuje mylącego pojęcia nazwanych buforów. Posiada historię poleceń, rozszerzenie TAB w menu wyboru plików, funkcje cofania i ponawiania, (nie) wcięcia i formatowanie akapitów, filtrowanie podświetlonych bloków przez dowolne zewnętrzne polecenie Unix, edycję potoku do lub z polecenia oraz blokowanie przenoszenia, kopiowania, usuń lub filtruj.

Za pomocą prostych plików konfiguracyjnych w stylu QEdit Joe można skonfigurować do emulacji edytorów, takich jak Pico i Emacs, wraz z pełną imitacją WordStar i wersją trybu ograniczonego (pozwala edytować tylko pliki określone w wierszu poleceń). Joe ma również odroczoną aktualizację ekranu, aby obsłużyć TypeAhead, i zapewnia, że ​​odroczenie nie zostanie pominięte przez buforowanie tty. Jest użyteczny nawet przy 2400 bodach i będzie działał na każdym rozsądnym terminalu.

Jest, AFAIK, spakowany dla wszystkich dystrybucji, a źródło jest dostępne na http://joe-editor.sourceforge.net/ - zdebianizowane źródło powinno się skompilować na Raspian, jeśli nie ma jeszcze pakietu binarnego.


1
Dziękuję za sugestie. Może to być przydatne dla kogoś, ale nigdy nie podobały mi się skróty w stylu Wordstar. Mogę ponownie rozważyć, kiedy potrzebuję bardziej bogatego w funkcje edytora.
Greg Woods

11
-1: Skróty klawiaturowe Joe wydają się tak samo „niekonwencjonalne” jak vima lub nano. Na przykład CTRL + A nie „wybiera wszystkiego”, CTL + F nie „wyszukuje”.
Garrett,

Używam Joe od 1994 roku i nie sądzę, że jest to najlepsza odpowiedź na to pytanie, chociaż Joe jest stosunkowo łatwy w porównaniu do Vima. Zauważyłem, że Joe zniknął z niektórych dystrybucji, ale możesz łatwo dostać „Jupp” (oparty na Joe) za pomocą yum lub apt-get. Jupp ma wybór SHIFT. Wytnij i wklej jest trochę dziwne w Jupp, ale łatwo się go nauczyć, Control-J o pomoc.
PJ Brunet

3
Przepraszam, ale czy to naprawdę odpowiada na pytanie? joejest równie trudny do wyjścia, jak vimi skróty Windows nie działają.
mafu

Znów głos przyniósł mi tę odpowiedź. Jak wskazał Gilles w swojej odpowiedzi , dostępne są skróty klawiszowe CUA joe.
cas

7

Wypróbuj edytor tekstu FTE . Dostępnych jest wiele wersji; ten, którego szukasz, prawdopodobnie sfteznajduje się w fte-terminalpakiecie Debiana .

wprowadź opis zdjęcia tutaj


Fajna sugestia, ale próba zaznaczenia tekstu za pomocą Shift + Strzałka w dół spowodowała załadowanie wiadomości „FIXME” powodujących uszkodzenie ekranu. Skróty pochodzą z lat osiemdziesiątych ... Ctrl-Ins do kopiowania? Alt-Backspace dla Cofnij? Niektóre opcje to czysty maniak linux: „Kopiuj - dołącz”? Nie powinnam czytać instrukcji obsługi polecenia Kopiuj! Plusem jest to, że lubię przeglądarkę katalogów podczas uruchamiania.
Greg Woods

1
Dziwne. Pierwszą rzeczą, jakiej próbowałem, było Shift + Strzałka w dół, aby zaznaczyć tekst, a następnie Ctrl-C i Ctrl-V, aby skopiować i wkleić, ponieważ pomyślałem, że tego też spróbujesz. Wszyscy pracowali dla mnie.
Jim Paris

Hmm Dziwny. Byłem w wersji terminalowej, którą otrzymałem z sudo apt-get install fte-terminal. Spróbuję jeszcze raz, kiedy będę miał kilka minut.
Greg Woods,

1
To samo tutaj. Może zależy to od używanego emulatora terminala; mój jest xterm.
Jim Paris,

ma to sens, ponieważ Diakonos też nie działał poprawnie. Będę musiał przejrzeć opcje dostępne w PuTTY
Greg Woods

7

Krótko mówiąc: użyj nano

Możesz łatwo dostosować nanodo swoich wymagań, zwłaszcza w odniesieniu do pożądanych skrótów klawiaturowych. Aby to zrobić, spójrz na bindparametr, który możesz ustawić w ~/.nanorcpliku lokalnym . Oczywiście możesz również pobrać gotowe pliki konfiguracyjne (patrz poniżej).

Możesz powiązać kombinacje klawiszy wzorowane na Ctrl+poprzedzającym ^i za Alt+pomocą M-(„Meta”). Niestety wydaje się, że nie ma możliwości powiązania kombinacji zawierających Shiftklucz. W nano domyślnie pominąć WordWise są Ctrl+Spacei Meta+Space. Jakby tego było mało, nie można też wiązać klawiszy strzałek . Ale może możesz żyć z tymi wadami.

Ponieważ spójrz na dobrą stronę: w rzeczywistości na github znajduje się pakiet , zawierający głównie ulepszone podświetlanie składni, ale także z prawie wszystkimi pożądanymi skrótami klawiszowymi . Zainstaluj go, dzwoniąc , ale pamiętaj, że bieżący zostanie nadpisany podczas procesu.make~/.nanorc

Myślę, że powinieneś spróbować, chociaż Shift+Arrowwybór wydaje się być jednym z najwyższych priorytetów. W nano, byś użył Ctrl+Ado zainicjowania trybu selekcji, więc nie musisz nawet Shiftcały czas naciskać! I zawsze możesz użyć Ctrl+Shift+Xskrótów itp., Które udostępnia twój terminal. Jak zapewne zauważyliście, jestem całkiem zadowolony nano, być może częściowo z powodu bycia byłym użytkownikiem systemu Windows.


Edycja: Oto zrzut ekranu pokazujący niektóre istotne powiązania klawiszy na dolnym pasku pomocy.

Edytor Nano wyposażony w pakiet ustawień github.com/craigbarnes/nanorc


5

Cream to konfiguracja vima, która jest niemodalna i wykorzystuje wszystkie skróty klawiaturowe, takie jak Ctrl + X, Ctrl + V, których możesz się spodziewać.

W przeciwieństwie do Vima nie jest obce osobom przyzwyczajonym do aplikacji GUI systemu Windows, takich jak Notatnik. Jeśli możesz używać Notatnika, możesz użyć Kremu.

  • Może być używany do edycji plików konfiguracyjnych
  • Tekstowy, a także GUI
  • Dostępne dla Raspian smak Debiana
  • Dla użytkownika GUI Windows / Mac nie jest wymagana nauka
  • W pełni wykorzystuje klucze znajdujące się na nowoczesnych klawiaturach, tj. Home, end, pgup, pgdn, del
  • Używaj skrótów klawiaturowych znajdujących się prawie we wszystkich aplikacjach GUI, np. Cofnij (Ctrl-Z), Ponów (Shift-Ctrl-Z), Zaznacz wszystko (Ctrl-A), Wytnij (Ctrl-X), Kopiuj (Ctrl-C), Wklej (Ctrl-V), Rozwiń zaznaczenie (Shift-Arrow), Pomiń słowo (Ctrl-Arrow), Usuń zaznaczenie (Del) itp
  • Obsługa myszy do zmiany pozycji kursora i zaznaczania tekstu

Zajęło mi to chwilę, aby go znaleźć, cream -vprzejście do trybu tekstowego, a klawisz F12 - menu.
PJ Brunet


3

Diakonos spełnia również większość wymagań:

Sfrustrowani innymi edytorami konsoli? Wiesz już, jakie klawisze należy nacisnąć w aplikacjach GUI, aby otwierać, zapisywać, kopiować, wycinać, wklejać i cofać. Dlaczego edytor tekstowy konsoli powinien zachowywać się inaczej? Odpowiedź: nie powinno.

Witamy w Diakonos, edytorze tekstu konsoli z mapowaniem klawiszy, które już znasz. Łatwy w użyciu i łatwy w konfiguracji, ale silny w rękach zaawansowanych użytkowników.

Pakiet Debian istnieje, nie mam informacji o żądanym smaku.


Dzieki za sugestie. Mogę apt-get po Raspian. Nadal nie można wybrać shift i innych funkcji. Ale jak sugeruje @ jim-paris, prawdopodobnie jest to problem z emulatorem terminali.
Greg Woods

2

Spójrz na edytor Sanos:

http://www.jbox.dk/sanos/editor.htm

Tylko plik binarny o rozmiarze 28 KB może zrobić to, co próbują zrobić wszyscy inni redaktorzy - i zawieść.

Robi dokładnie to, o co poprosił PO:

Shift + strzałki, aby podświetlić tekst

Ctrl-X, C, V do wycinania / kopiowania / wklejania

Możesz także mieć jednocześnie kilka otwartych plików i polecenia „potokuj”. Na przykład naciśnij Ctrl-P i po monicie wpisz:

cat yourfile

i wstawi twój plik w miejscu kursora. W ten sposób masz do dyspozycji pełną moc poleceń bash (użyj grep, aby wstawić tylko określone części pliku).


1

Odpowiedź brzmi: kotek + tylda (KiTTY to rozwidlenie od wersji 0.66 PuTTY) chłopaki! Całe moje życie było kłamstwem: D

http://www.9bis.net/kitty/?page=Download

Naprawiono błąd shift + klawisze strzałek dostarczane z kitem (również klawisze Shift + strzałka nie działały w innych klientach ssh)


Wydaje się, że przynajmniej część problemu pochodzi z terminala, więc nie mogę się doczekać, aby to wypróbować.
Greg Woods,

1

Poniższe zostało przetestowane przy użyciu nano z terminala w MS-Windows.
Dzięki temu twój nano będzie o krok bliżej, obsługując „uniwersalne” skróty do kopiowania / wycinania / wklejania itp. (Przynajmniej w świecie Windows).
Dodaj te linie do pliku/etc/nanorc

bind ^c copytext main
bind ^x cut main
bind ^v uncut main
bind ^z undo main
bind ^y redo main
bind ^f whereis main
bind F3 findnext main
bind ^h replace main

Pamiętaj, że działają one dla całej linii, jeśli nie wybierzesz najpierw tekstu: - /

Jeśli masz problemy zaznaczania tekstu w nano przy shift+arrow-keysczym należy pamiętać, to nie wydaje się być związane z nano ale programie terminala! Nie działa w PuTTY, ale działa np. W Kitty (rozwidlenie PuTTY, wersja Windows / wersja Linux ) lub klienta SSH Google'a dla Chrome.

(Używam Bustera Debiana)


0

Le to inne rozwiązanie. Przypomina Norton Commander (sławę Midnight Commander), ale może bardziej intuicyjny.

W MC naciśnij F3, aby rozpocząć i zakończyć wybór regionu, a następnie użyj F5 lub F6, aby go skopiować lub przenieść. Na Le F5 rozpoczyna się wybór, a jeśli przejdziesz do przodu, F6 go zakończy. Jeśli przejdziesz do poprzedniej selekcji, F6 doda do niej wszystko, lub jeśli przejdziesz do tyłu i naciśniesz F5, wszystko do niej zostanie dodane. Możesz więc użyć F5 lub F6 tak, jakby to był F3 w MC. Jeśli naciśniesz F5 i przejdziesz do tyłu i naciśniesz go ponownie, wybierze ten region. Jeśli naciśniesz F6 i przejdziesz dalej i naciśniesz go ponownie, wybierze ten region.

Aby zainstalować użyj:

apt-get install le

lub pobierz źródło i kompilację (przetestowałem na Debianie sid):

http://lav.yar.ru/download/le/le-1.14.9.tar.gz

Oto pakiet Debian: http://packages.debian.org/sid/le


0

Próbowałem Nano, Joe, Pico itp. Chociaż są one łatwiejsze niż Emacs lub Vi [m], wszystkie mają dziwne, specyficzne interfejsy użytkownika w przeciwieństwie do innych programów od lat 80.

Ale tam nowoczesne Cua zgodny edytory Linux tam!

Ktoś polecił FTE. Jest długo nieobsługiwany, ale istnieje obecnie rozwidlenie o nazwie eFTE: http://sourceforge.net/projects/efte/

Jest całkiem niezły; na przykład jest w stanie uwięzić klawisz Alt w celu uzyskania dostępu do menu, nawet gdy działa w oknie emulatora terminala X.

Jest też inny, który lubię, zwany Tilde, który jest obecnie utrzymywany i ma dostępne najnowsze pakiety. http://os.ghalkes.nl/tilde/


1
Edytor tyldy powinien być właściwą odpowiedzią. Ten edytor jest naprawdę dobry!

0

Ostatnio natknąłem się na MinEd [ http://towo.net/mined/]

# Option "emul": emulation mode, especially control key function mapping; 
# takes a single-letter value: 
# e: emacs mode 
# s: WordStar mode 
# w: Windows keyboard mode 
# W: Windows behaviour (-w, CRLF for new files, cmd.exe with ESC !) 
# p: pico mode 
# m: mined default 
#emul m

Najwyraźniej jest w testach Debiana i ma obsługę myszy, ale jeszcze tego nie próbowałem.
PJ Brunet,

0

Fiflo to minimalistyczne rozwiązanie. Obsługiwane skróty klawiaturowe: Ctrl+Arrows Ctrl+Backslash Ctrl+D Ctrl+O Ctrl+Q Ctrl+O Ctrl+F1-F4.

Używam go, ponieważ nie mam czasu, aby otworzyć etc/nanorc.


0

mcedit jest najlepszy. przynajmniej wysyła cię do lat 90 z interfejsem użytkownika. żadnych strzałek SHIFT jak we wszystkich wymienionych edytorach, ale bardzo interfejs Norton Commander, klawisze Fx, CtrlO, aby zobaczyć powłokę. Zapamiętuje pozycję po powrocie, rozpoznaje wyróżnienie nawet w przypadku mało prawdopodobnych plików (bez rozszerzenia). Bardziej inteligentne, zbliżone do alternatyw dla Windows i dalekie od alternatyw dla Unixa (lepsze).

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.