Wyświetlam obrazy w jednej linii z blokami begin_src i wyników.
Jednak w przypadku dużych obrazów, kiedy przewijam obok dolnej krawędzi obrazu, pojawia się „szarpnięcie” i cały obraz jest przewijany. Podobnie, jeśli przewijam w górę i wpadam na obraz, szarpię się i widzę cały obraz, zamiast stopniowo, stopniowo.
Utrudnia to pracę z dużymi diagramami plantuml / graphviz w trybie org.
Chciałbym płynnego scollowania, aby delikatnie przewijać obraz jak w przeglądarce, bez szarpania.
Próbowałem:
(setq auto-window-vscroll nil)
i również
(setq scroll-margin 1
scroll-conservatively 0
scroll-up-aggressively 0.01
scroll-down-aggressively 0.01)
Próbowałem również pakietu płynnego przewijania i tego fragmentu .
Wydaje się jednak, że obraz w wierszu zajmuje tylko „jedną linię”, a ustawienie emacsa do przewijania tylko za pomocą „jednej linii” nie rozwiązuje problemu.
Jakieś rozwiązanie tego problemu?
[edytuj] Przewijanie klawiatury vs myszy:
Sugerowane jest przewijanie myszy. Przewijanie klawiatury byłoby jednak zaletą, gdyby działało prawidłowe przewijanie myszą.
[edytuj]
Nieco obejściem, ale przydatne do pracy z obrazami w trybie organizacji było otwarcie ich w zewnętrznej aplikacji, która automatycznie ładuje się ponownie po zmianie pliku. Przykładem może być eog (eye of gnome)
lub shutter
lub prievew (on OS X)
. Można to skonfigurować poprzez org-file-apps
dodanie:
extension: \.png\'
Command: eog "%s"
(setq scroll-conservatively 101)
na wszystkie pozostałe ustawienia przewijania wymienione w powyższym pytaniu i skomentuj je, a także wyłącz ten pakiet płynnego przewijania i / lub fragment kodu? Ciąg dokumentów dlascroll-conservatively
stanów: „ Jeśli wartość jest większa niż 100, ponowne wyświetlenie nigdy nie będzie ponownie punktować punktu, ale zawsze przewinie tylko tyle tekstu, aby wyświetlić punkt, nawet jeśli odsuniesz się daleko. Wartość zero oznacza zawsze punkt odniesienia jeśliOdpowiedzi:
Od Emacsa 26.1 bufor można przewijać pojedynczymi pikselami zamiast tylko linii, których można użyć do płynnego przewijania obrazów za pomocą kółka myszy. Aby to osiągnąć, użyłem następującej konfiguracji:
Edytować:
Przekonałem się, że to rozwiązanie ma kilka zastrzeżeń, które mogą być pomocne, aby wiedzieć:
źródło
(require 'pixel-scroll)
ponieważpixel-scroll-mode
jest ładowany automatycznie.Co powiesz na to:
źródło
Problem, jaki rozumiem, polega na tym, że obraz jest pojedynczą linią. Zmiana sposobu przewijania nie rozwiąże problemu.
Jedyne znane mi rozwiązanie polega na pocięciu obrazu tak, aby technicznie było o wiele krótszych obrazów. Można to zrobić za pomocą
insert-sliced-image
.źródło
insert-sliced-image
? Czy można przesłonić,org-toggle-inline-images
aby je najpierw pokroić?insert-sliced-image
, oceniając(describe-function 'insert-sliced-image)
- nie mam żadnego przydatnego opracowania, które można by dodać do dokumentacji. Przejrzałemorg-display-inline-images
kod, ale nie rozumiem, gdzie faktycznie wstawiono obrazy. Jestem pewien, że można go ponownie napisać, aby użyćinsert-sliced-image
, ale nie wiem, jak to zrobić.