Bezmyszkizm w pracy programisty

0

Witam. Jakiś czas temu może jeszcze w tym roku natknąłem się na Vima i Qutebrowser. Pomysł pracy na samej klawiaturze nie wydaje mi się jakąś pretensjonalną fanaberią. Jeśli tak się da, to wg mnie jest to dużo przyjemniejsze niż przeskakiwanie na mysz żeby coś kliknąć co chwilę. Pytanie tylko czy jest to warte zachodu w sytuacji gdy większość IDE jest jednak robione pod pracę klawiatura + mysz, podobnie środowiska do zarządzania bazami danych no i strony internetowe. Dodatkowo w biznesie raczej nie robi się aplikacji pod maniaków VIMa, tylko tak żeby na wszystko dało się najechać myszą albo palcem, a programista przecież też częściej lub rzadziej musi odpalić aplikację tak jak klient. Bardzo bym prosił niezależnie czy jesteście na tak, czy na nie żebyście powiedzieli w paru słowach jak wygląda organizacja pracy na ekranie w waszej pracy, bo od tego jak kto sobie ustawia monitory i jakich używa biurek jest chyba oddzielny temat.

0

W czasach MS-DOS programy pisano pod obsługę tylko za pomocą klawiatury. Niestety obecnie większość softu nawet na Linux jest pisana pod mysz. O ile z jakąś vim'ową nakładką da radę przeglądać internet o tyle sporo innych rzeczy jest uciążliwych (np. programy graficzne, edycja wideo, wszystko GUI). Także jak dla mnie nie ma to sensu, warto jedynie znać skróty tak żeby nie łapać za mysz gdy nie jest tak naprawdę potrzebna.

0

Z samą klawiaturą raczej będzie ciężko, ale o ile to możliwe to próbuje używać myszki jak najmniej. Nie musisz używać qutebrowsera żeby nawigować po stronach klawiaturą, możesz użyć rozszerzenia Vimium dla chroma, jeśli chodzi o IDE to JetBrainsy mają plugin IdeaVim, który w pewnym stopniu "emuluje" vima, w VScode też pewnie coś takiego jest. A jeśli jesteś na Linuxie to polecam przesiąść się na jakiegoś tiling windows manaagera np i3

0

Hejka,
DE = fvwm
mysz praktycznie używam tylko do przeglądarki bo samą klawiaturą się nie da.
Wszystko inne robię na klawiaturze. Znacznie wygodniej się tak funkcjonuje.
W pewnym momencie łapiesz się, że od lat nie używałeś menedżera plików. Nawet nie mam go zainstalowanego. Konsola po prostu milion razy wygodniejsza.

vim/nvim & tmuxa master race


Ostatecznie to też zależy co robisz prawda? i jakich programów używasz, czasami gui to jedyny wybór.

0

gdy większość IDE jest jednak robione pod pracę klawiatura + mysz

Hmm, tu się zdecydowanie nie zgodzę. Używam codziennie IntelliJ + plugin IdeaVim i po mysz sięgam bardzo rzadko. Całą nawigację (skok do klasy/pliku, szukanie czegokolwiek) masz pod klawiaturą, edytujesz kod i skaczesz po pliku normalnie vimowym mappingiem (większość komend działa) + wszystkie dobrodziejstwa IntelliJ (tylko trzeba dobrze poustawiać keybinding IDE, bo niektóre skróty plugin kradnie i trzeba wyłączyć albo zmienić).

Po mysz sięgam, jak teraz pomyślę, chyba tylko jak scrolluję historię gita, albo czasem jak przeglądam kod nieznanego projektu, wtedy ctrl-klikanie jest szybsze.

1

A i najwazniejsze, jesli korzystasz z czegoś co ma vim-owe bindingi to zamien sobie ESC i CaspLocka miejscami, inaczej dostaniesz zwichniecia nadgarstka :)

0
ksh napisał(a):

Hejka,
DE = fvwm
mysz praktycznie używam tylko do przeglądarki bo samą klawiaturą się nie da.
Wszystko inne robię na klawiaturze. Znacznie wygodniej się tak funkcjonuje.
W pewnym momencie łapiesz się, że od lat nie używałeś menedżera plików. Nawet nie mam go zainstalowanego. Konsola po prostu milion razy wygodniejsza.

vim/nvim & tmuxa master race


Ostatecznie to też zależy co robisz prawda? i jakich programów używasz, czasami gui to jedyny wybór.

Używasz nvima jako swojego głównego "IDE" do pracy, czy tylko czasami, zeby cos na szybko zmienic w pliku

0

Nasz nauczyciel na studiach w emacs bez myszy programował.

1

Vim + Konsola + kaskadujący menedżer okien i jazda. Pracuję w ten sposób od lat, nawet profesjonalnie w Javie dawałem radę z terminala. xD Nie jest to na pewno dla każdego, ale mi to bardzo odpowiada. Trzeba dużo rzeczy pamiętać, ale akurat pamięć mam dobrą, za to szukanie odpowiedniego guzika/opcji w menu/pliku w drzewku jest wyzwaniem.

0

A teraz z neovima, można szybko IDE zrobić

0

W przeglądarkach prawie da się bez myszki pracować, kliknięcie buttona to można ctrl+f -> button -> esc -> enter.

Ale tak nie da się wywołać hover efektu więc jak są jakieś elementy pod hover to nie ma jak tego wywołac.

Jak są jakieś elementy onclick, ale nie są to <a> elementy to też nie idzie kliknąć, trzeba wtedy customowe skrypty js.
Np. z inputa nie da się entera wysłać jak to nie jest in <form>, a zwykły input z jakimś onclikiem na divie.

Dodatkowo dalej jeśli na stronie jest sprawdzane czy event pochodzi z legalnego źródła, tzn wysłała go przeglądarka, a nie javascript.
To nawet skryptami tego nie obejdziesz bo musisz kod javascript zpatchować przed załadowaniem strony.

Scrollowanie strony pg up/down, arrows, zakładki, wszystko na skrótach bez problemowo.

Dalej można nawet bez jakiś zewnętrznych pluginów próbować coś w stylu.
F12 -> ctrl + ` -> i jakimś skryptem wywołać coś.

A już programowanie to spoko, ja poza przeglądarką nie używam myszki, neovim + terminal + musisz mieć wszystko dostępne z cli, np. jak w springu programujesz to jest dostępny spring-cli i możesz sobie projekt spring czy inny z konsoli łatwo wygenerować.

Jak człowiek używa skrótów klawiszowych to czuje się bardziej świadomy tego co robi.

0

@elwis: @lion137 No dobra. Ja rozumiem, że ładnie mi to pokoloruje składnie. Będę bardzo szybko pisał, ale co z debugowaniem? Wtedy przeskakujecie na zwykłe IDE?

1

@paranoise: Już to kiedyś wrzucałem, ale nie mogę tego tematu znaleźć to wrzucę jeszcze raz.
Tak można bezproblemowo debugować w neovim za pomocą dap, debugger adapter protocol, to jest ten sam co jest w vscode.

neovim_test.gif

0
paranoise napisał(a):

@elwis: @lion137 No dobra. Ja rozumiem, że ładnie mi to pokoloruje składnie. Będę bardzo szybko pisał, ale co z debugowaniem? Wtedy przeskakujecie na zwykłe IDE?

Pewnie, że nie, GDB jest świetnym debuggerem. Śmiem twierdzić, że da się z nim zrobić więcej niż w większości graficznych (może wszystkich) debuggerów. Można też go zintegrować z ulubionym edytorem. Można pisać do niego skrypty, definiować całe procesy debugowania.

Chociaż generalnie preferuję dobry statycznie typowany język, który ogranicza potrzebę debugowania.

0

Brzmyszkizm jak najbardziej. Można np używać touchpada

0

Ja ograniczam myszkę do minimum. Jak programuję to nie używam wcale. Mam neovim + hyprland + zellij. Debugowanie jak kolega wyżej napisał. W przeglądarce wtyczka ze skrótami jak w vim. Bazy danych, AWS (minimalna konfiguracja przez web za pomocą myszki), terraform wszystko w terminalu. Ogólnie moim zdaniem nie ma co forsować, jeśli masz dużo "klikanego" interfejsu, to świat się nie zawali jak będziesz używać myszki.

0

Ja znam gostka który używa lynxa.
Jak się coś nie otwiera poprawnie to strona jest skreślona. xDDD

1 użytkowników online, w tym zalogowanych: 0, gości: 1