Dodatna ozadja, posodobitve konfiguracij
parent
a7d51fbc40
commit
3bc40a3cd2
|
@ -35,7 +35,7 @@ output eDP-1 {
|
||||||
#output "*" background ~/Slike/Wallpapers/1596344206877.jpg fill
|
#output "*" background ~/Slike/Wallpapers/1596344206877.jpg fill
|
||||||
#output "*" background "~/riz0m/Photos/sri lanka/IMG_20220220_120730.jpg" fill
|
#output "*" background "~/riz0m/Photos/sri lanka/IMG_20220220_120730.jpg" fill
|
||||||
#output "*" background "~/Slike/☭/bigstock-Sutjeska-National-Park-Bosnia-63011269.jpg" fill
|
#output "*" background "~/Slike/☭/bigstock-Sutjeska-National-Park-Bosnia-63011269.jpg" fill
|
||||||
output "*" background "~/sredstva/dotfiles/ozadje.jpg" fill
|
output "*" background "~/sredstva/dotfiles/ozadje2.jpg" fill
|
||||||
# Zamik dobimo z SIRINA / SCALE
|
# Zamik dobimo z SIRINA / SCALE
|
||||||
output HDMI-A-2 pos 1601 0 scale 1
|
output HDMI-A-2 pos 1601 0 scale 1
|
||||||
output HDMI-A-1 pos 1601 0 scale 1
|
output HDMI-A-1 pos 1601 0 scale 1
|
||||||
|
|
|
@ -2,11 +2,13 @@
|
||||||
;;; This format is meant to be slightly human-readable;
|
;;; This format is meant to be slightly human-readable;
|
||||||
;;; nevertheless, you probably don't want to edit it.
|
;;; nevertheless, you probably don't want to edit it.
|
||||||
;;; -*- End Of Bookmark File Format Version Stamp -*-
|
;;; -*- End Of Bookmark File Format Version Stamp -*-
|
||||||
(("FLUXUS navodilo"
|
(("org-capture-last-stored" (filename . "~/org/zapiski.org")
|
||||||
|
(front-context-string . "** TODO Vrstni r")
|
||||||
|
(rear-context-string . "2024-01-05 pet]\n") (position . 661)
|
||||||
|
(last-modified 26008 34892 637157 892000))
|
||||||
|
("FLUXUS navodilo"
|
||||||
(filename . "~/sredstva/fluxus/docs/fluxus-manual.[en].org")
|
(filename . "~/sredstva/fluxus/docs/fluxus-manual.[en].org")
|
||||||
(front-context-string . "#+TITLE: Fluxus:")
|
(front-context-string . "#+TITLE: Fluxus:") (rear-context-string)
|
||||||
(rear-context-string)
|
(position . 1) (last-modified 25693 29993 875550 300000))
|
||||||
(position . 1)
|
("IRS" (filename . "~/rs/megla-sync/org/irs.org"))
|
||||||
(last-modified 25693 29993 875550 300000))
|
)
|
||||||
("IRS"
|
|
||||||
(filename . "~/rs/megla-sync/org/irs.org")))
|
|
||||||
|
|
|
@ -6,8 +6,7 @@ Razdeljena je na poglavja ohlapno glede na vlogo oz področje. Področja so neko
|
||||||
|
|
||||||
V primeru napak pri nalaganju ne pozabimo na uporaben ukaz ~emacs --debug-init~.
|
V primeru napak pri nalaganju ne pozabimo na uporaben ukaz ~emacs --debug-init~.
|
||||||
|
|
||||||
* Sekcije
|
* Zagon
|
||||||
** Zagon
|
|
||||||
|
|
||||||
~debug-on-error~ uresničimo, če bi radi sprožili razhroščevalnik, kadar pride do napake (zelo priročno pri reševanju težav).
|
~debug-on-error~ uresničimo, če bi radi sprožili razhroščevalnik, kadar pride do napake (zelo priročno pri reševanju težav).
|
||||||
|
|
||||||
|
@ -38,7 +37,7 @@ Po zagunu izpiši čas nalaganja.
|
||||||
(emacs-init-time)))))
|
(emacs-init-time)))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Nalaganje paketov
|
* Nalaganje paketov
|
||||||
|
|
||||||
Vklopi prikazovanje statistik naloženih paketov (prikažemo jih z ~M-x use-package-report~).
|
Vklopi prikazovanje statistik naloženih paketov (prikažemo jih z ~M-x use-package-report~).
|
||||||
|
|
||||||
|
@ -67,7 +66,135 @@ Rezultate merjenja lahko pogledamo z ~M-x benchmark-init/show-durations-tabulate
|
||||||
(add-hook 'after-init-hook 'benchmark-init/deactivate))
|
(add-hook 'after-init-hook 'benchmark-init/deactivate))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** EVIL
|
* Vezane tipke
|
||||||
|
|
||||||
|
S paketom ~general~ je definiranih več kategorij tipkovničnih bližnjic, ki so združene po svoji funkciji, podobno kot poglavja tega dokumenta. Če v ukaznem načinu kliknemo ~SPC~ (ali pa v tekstovnem načinu ~C-SPC~), se nam prikažejo tipke kategorij, po kliku na posamezno pa ukazi, ki jih sprožimo (ali pa podkategorije).
|
||||||
|
|
||||||
|
|
||||||
|
V sledečim podpoglavjih so navedene kategorije posameznih bližnjic. Imajo dokaj samoopisna imena. Paket ~which key~ sproti izpisuje, kaj kateri gumb počne oz. kam nas pelje dalje.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(setq kategorije-bliznjic '())
|
||||||
|
|
||||||
|
(use-package general
|
||||||
|
:defer t
|
||||||
|
:config
|
||||||
|
(general-evil-setup)
|
||||||
|
|
||||||
|
;; Leader key nastavitev (za prozenje ukazov)
|
||||||
|
(general-create-definer start/leader-keys
|
||||||
|
:states '(normal insert visual emacs)
|
||||||
|
:keymaps 'override
|
||||||
|
:prefix "SPC"
|
||||||
|
:global-prefix "C-SPC")
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
|
** Splošne bližnice
|
||||||
|
|
||||||
|
Tukaj se nahajate samo bližnjici za preklop med bufferji (kako bi to lepo prevedli?).
|
||||||
|
In pa ukaz za ponovno naložit konfiguracijo emacsa.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(defun ponovno-nalozi-config () (ineractive) (load-file "~/.emacs.d/init.el"))
|
||||||
|
|
||||||
|
(start/leader-keys
|
||||||
|
;; Osnovne bliznjice
|
||||||
|
"[" 'previous-buffer
|
||||||
|
"]" 'next-buffer
|
||||||
|
"r" 'ponovno-nalozi-config
|
||||||
|
)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Upravljanje z okni
|
||||||
|
|
||||||
|
Navigacijo med okni izvajamo s klasičnimi HJKL UNIX smernimi tipkami, recimo okno pod trenutnim izberemo s ~SPC w j~. Posamezno okno pa lahko razdvojimo vertikalno ali horizontalno s ~SPC w v~ oz. ~SPC w s~. ~SPC w d~ "ubije" trenutni buffer in okno.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(start/leader-keys
|
||||||
|
"w" '(:ignore t :wk "window")
|
||||||
|
"w j" 'windmove-down
|
||||||
|
"w k" 'windmove-up
|
||||||
|
"w h" 'windmove-left
|
||||||
|
"w l" 'windmove-right
|
||||||
|
"w s" 'split-window-below
|
||||||
|
"w v" 'split-window-right
|
||||||
|
"w d" 'kill-buffer-and-window)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Upravljanje z bufferji
|
||||||
|
|
||||||
|
Bližnjice za delo z bufferji se začnejo z ~b~. Ne pozabimo na splošni
|
||||||
|
bližnjici (~[~ in ~]~ za prejšnji / naslednji buffer).
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(start/leader-keys
|
||||||
|
"b" '(:ignore t :wk "buffer")
|
||||||
|
"b b" 'switch-to-buffer
|
||||||
|
"b p" 'previous-buffer
|
||||||
|
"b n" 'next-buffer
|
||||||
|
"b e" 'eval-buffer
|
||||||
|
"b s" (defun scratch-buffer () "Show scratch buffer" (interactive) (switch-to-buffer "*scratch*"))
|
||||||
|
"b d" 'kill-current-buffer
|
||||||
|
"b k" 'kill-buffer)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
|
** Evalviranje
|
||||||
|
|
||||||
|
TODO napiši navodila
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(start/leader-keys
|
||||||
|
;; EVAL ukazi
|
||||||
|
"e" '(:ignore t :wk "eval")
|
||||||
|
"e b" 'eval-buffer
|
||||||
|
"e e" 'eval-expression
|
||||||
|
"e r" 'eval-region)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Datoteke
|
||||||
|
|
||||||
|
Bližnjice za delo z datotekami se začnejo s ~f~.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(defun odpri-konfiguracijo () (interactive) (find-file "~/.emacs.d/config.org"))
|
||||||
|
(defun odpri-init () (interactive) (find-file "~/.emacs.d/init.el"))
|
||||||
|
(defun odpri-todo () (interactive) (find-file "~/org/todo.org"))
|
||||||
|
(defun odpri-zapiske () (interactive) (find-file "~/org/zapiski.org"))
|
||||||
|
|
||||||
|
(start/leader-keys
|
||||||
|
"f" '(:ignore t :wk "file")
|
||||||
|
"f f" 'counsel-find-file
|
||||||
|
"f c" 'odpri-konfiguracijo :wk "odpri konfiguracijo (config.org)"
|
||||||
|
"f i" 'odpri-init :wk "odpri init.el"
|
||||||
|
"f z" 'odpri-zapiske
|
||||||
|
"f t" 'odpri-todo)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Vplogled / introspekcija
|
||||||
|
|
||||||
|
Emacs nudi kup uporabnih funkcij, ki so nepogrešljive na poti učenja o funkcionalnosti. Zaenkrat sem definiral bližnjice do štirih od njih; opis funkcije, tipke, simbola (to so recimo rezervirana imena spremenljivk), načina (~mode~).
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(start/leader-keys
|
||||||
|
"d" '(:ignore :t :wk "describe")
|
||||||
|
"d f" 'describe-function
|
||||||
|
"d k" 'describe-key
|
||||||
|
"d s" 'describe-symbol
|
||||||
|
"d m" 'describe-mode)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Konec
|
||||||
|
|
||||||
|
Dodamo manjkajoči zaklepaj. :)
|
||||||
|
To pa je malo grdo pri pismenem programiranju.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* EVIL
|
||||||
|
|
||||||
Ta sekcija vsebuje razne konfiguracije povezane z ~evil-mode~ - modalnim načino editiranja, podobnim vi/vim urejevalnikom.
|
Ta sekcija vsebuje razne konfiguracije povezane z ~evil-mode~ - modalnim načino editiranja, podobnim vi/vim urejevalnikom.
|
||||||
|
|
||||||
|
@ -125,132 +252,25 @@ Evil v ~treemacs~ drevesu datotečnega sistema.
|
||||||
(use-package treemacs-evil :after treemacs)
|
(use-package treemacs-evil :after treemacs)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Vezane tipke
|
* Emacs splošno
|
||||||
|
** Kolaborativno urejanje - CRDT
|
||||||
|
|
||||||
S paketom ~general~ je definiranih več kategorij tipkovničnih bližnjic, ki so združene po svoji funkciji, podobno kot poglavja tega dokumenta. Če v ukaznem načinu kliknemo ~SPC~ (ali pa v tekstovnem načinu ~C-SPC~), se nam prikažejo tipke kategorij, po kliku na posamezno pa ukazi, ki jih sprožimo (ali pa podkategorije).
|
Paket ~crdt~ omogoča istočasno urejanje bufferjev, kar je superuporabno :)
|
||||||
|
Paziti pa moramo na verzije emacsa; zaznali smo težave pri mešanju emacs 30/29 s starejšimi (28, 27) - znaki se lahko med odjemalci pomešajo. Emacs 29 in 30 bi morala vredu sodelovati.
|
||||||
|
|
||||||
V sledečim podpoglavjih so navedene kategorije posameznih bližnjic. Imajo dokaj samoopisna imena. Paket ~which key~ sproti izpisuje, kaj kateri gumb počne oz. kam nas pelje dalje.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(setq kategorije-bliznjic '())
|
(use-package crdt
|
||||||
|
|
||||||
(use-package general
|
|
||||||
:defer t
|
:defer t
|
||||||
:config
|
:general
|
||||||
(general-evil-setup)
|
|
||||||
|
|
||||||
;; Leader key nastavitev (za prozenje ukazov)
|
|
||||||
(general-create-definer start/leader-keys
|
|
||||||
:states '(normal insert visual emacs)
|
|
||||||
:keymaps 'override
|
|
||||||
:prefix "SPC"
|
|
||||||
:global-prefix "C-SPC")
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
|
|
||||||
*** Splošne bližnice
|
|
||||||
|
|
||||||
Tukaj se nahajate samo bližnjici za preklop med bufferji (kako bi to lepo prevedli?).
|
|
||||||
In pa ukaz za ponovno naložit konfiguracijo emacsa.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(defun ponovno-nalozi-config () (load-file "~/.emacs.d/init.el"))
|
|
||||||
|
|
||||||
(start/leader-keys
|
(start/leader-keys
|
||||||
;; Osnovne bliznjice
|
"c" '(:ignore t :wk "crdt")
|
||||||
"[" 'previous-buffer
|
"c c" 'crdt-connect
|
||||||
"]" 'next-buffer
|
"c u" 'crdt-list-users
|
||||||
"r" 'ponovno-nalozi-config
|
"c s" 'crdt-share-buffer
|
||||||
)
|
"c b" 'crdt-list-buffers))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Upravljanje z okni
|
** Ivy dopolnjevanje/iskanje
|
||||||
|
|
||||||
Navigacijo med okni izvajamo s klasičnimi HJKL UNIX smernimi tipkami, recimo okno pod trenutnim izberemo s ~SPC w j~. Posamezno okno pa lahko razdvojimo vertikalno ali horizontalno s ~SPC w v~ oz. ~SPC w s~. ~SPC w d~ "ubije" trenutni buffer in okno.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(start/leader-keys
|
|
||||||
"w" '(:ignore t :wk "window")
|
|
||||||
"w j" 'windmove-down
|
|
||||||
"w k" 'windmove-up
|
|
||||||
"w h" 'windmove-left
|
|
||||||
"w l" 'windmove-right
|
|
||||||
"w s" 'split-window-below
|
|
||||||
"w v" 'split-window-right
|
|
||||||
"w d" 'kill-buffer-and-window)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
*** Upravljanje z bufferji
|
|
||||||
|
|
||||||
Bližnjice za delo z bufferji se začnejo z ~b~. Ne pozabimo na splošni
|
|
||||||
bližnjici (~[~ in ~]~ za prejšnji / naslednji buffer).
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(start/leader-keys
|
|
||||||
"b" '(:ignore t :wk "buffer")
|
|
||||||
"b b" 'switch-to-buffer
|
|
||||||
"b p" 'previous-buffer
|
|
||||||
"b n" 'next-buffer
|
|
||||||
"b e" 'eval-buffer
|
|
||||||
"b s" (defun scratch-buffer () "Show scratch buffer" (interactive) (switch-to-buffer "*scratch*"))
|
|
||||||
"b d" 'kill-current-buffer
|
|
||||||
"b k" 'kill-buffer)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
|
|
||||||
*** Evalviranje
|
|
||||||
|
|
||||||
TODO napiši navodila
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(start/leader-keys
|
|
||||||
;; EVAL ukazi
|
|
||||||
"e" '(:ignore t :wk "eval")
|
|
||||||
"e b" 'eval-buffer
|
|
||||||
"e e" 'eval-expression
|
|
||||||
"e r" 'eval-region)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
*** Datoteke
|
|
||||||
|
|
||||||
Bližnjice za delo z datotekami se začnejo s ~f~.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(defun odpri-konfiguracijo () (interactive) (find-file "~/.emacs.d/config.org"))
|
|
||||||
(defun odpri-init () (interactive) (find-file "~/.emacs.d/init.el"))
|
|
||||||
|
|
||||||
(start/leader-keys
|
|
||||||
"f" '(:ignore t :wk "file")
|
|
||||||
"f f" 'counsel-find-file
|
|
||||||
"f c" 'odpri-konfiguracijo :wk "odpri konfiguracijo (config.org)"
|
|
||||||
"f i" 'odpri-init :wk "odpri init.el")
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
*** Vplogled / introspekcija
|
|
||||||
|
|
||||||
Emacs nudi kup uporabnih funkcij, ki so nepogrešljive na poti učenja o funkcionalnosti. Zaenkrat sem definiral bližnjice do štirih od njih; opis funkcije, tipke, simbola (to so recimo rezervirana imena spremenljivk), načina (~mode~).
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(start/leader-keys
|
|
||||||
"d" '(:ignore :t :wk "describe")
|
|
||||||
"d f" 'describe-function
|
|
||||||
"d k" 'describe-key
|
|
||||||
"d s" 'describe-symbol
|
|
||||||
"d m" 'describe-mode)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
*** Konec
|
|
||||||
|
|
||||||
Dodamo manjkajoči zaklepaj. :)
|
|
||||||
To pa je malo grdo pri pismenem programiranju.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
** Emacs splošno
|
|
||||||
*** Ivy dopolnjevanje/iskanje
|
|
||||||
~ivy~ je sistem za avtomatsko dopolnjevanje, uporaben preko celotnega emacsa.
|
~ivy~ je sistem za avtomatsko dopolnjevanje, uporaben preko celotnega emacsa.
|
||||||
Nudi tudi prijaznejši način menjave bufferja, kar nastavimo na ~SPC ,~ ter ~SPC b b~.
|
Nudi tudi prijaznejši način menjave bufferja, kar nastavimo na ~SPC ,~ ter ~SPC b b~.
|
||||||
|
|
||||||
|
@ -330,8 +350,63 @@ Nastavimo uporabo rekurzivnih minibufferjev za dopolnjevanje ter nastavimo še n
|
||||||
(when glob (setq opts (concat "-g !" glob (and opts " ") opts))))))
|
(when glob (setq opts (concat "-g !" glob (and opts " ") opts))))))
|
||||||
(apply fn in dir opts args)))
|
(apply fn in dir opts args)))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
** Pomoč / introspekcija
|
||||||
|
|
||||||
** ORG
|
Paket ~helpful~ obarva strani za pomoč ter doda več kontekstualnih informacij in pa nekaj funkcij za lažje razumevanje kaj je kje, recimo ~helpful-at-point~, ~helpful-callable~, ~helpful-command~...
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package helpful :defer t)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
~which-key~ prikazuje minibuffer z razlago, katere tipkovnične bližnjice so na voljo.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package which-key
|
||||||
|
:defer t
|
||||||
|
:config
|
||||||
|
;; Allow C-h to trigger which-key before it is done automatically
|
||||||
|
(setq which-key-show-early-on-C-h t)
|
||||||
|
;; make sure which-key doesn't show normally but refreshes quickly after it is
|
||||||
|
;; triggered.
|
||||||
|
(setq which-key-idle-delay 0.4)
|
||||||
|
(setq which-key-idle-secondary-delay 0.05)
|
||||||
|
(which-key-mode))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Varnostne kopije
|
||||||
|
|
||||||
|
Privzeto emacs dodaja varnostne kopije fajlov v iste direktorije kot so originali, kar zna malo nasmetiti. Zato nastavimo direktorij, kam naj jih shranjuje ter nastavimo nekaj drugih priročnih stvari, naj kopira fajle namesto preimenovanja, brisanje starih (z nastavljenimi omejitvami ter verzioniranje varnostnih kopij.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(setq
|
||||||
|
backup-directory-alist
|
||||||
|
`(("." . ,(concat user-emacs-directory "saves")))
|
||||||
|
backup-by-copying t
|
||||||
|
delete-old-versions t
|
||||||
|
kept-new-versions 6
|
||||||
|
kept-old-versions 2
|
||||||
|
version-control t)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Za vsak odprt fajl emacs ustvari lockfile, kar tudi zna smetiti (so pa zato, da obvestijo če več ljudi istočasno odpre fajl). To izklopimo.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(setq create-lockfiles nil)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Ne odpiraj pdf datotek
|
||||||
|
|
||||||
|
PDF dokumenti so včasih zelo veliki, raje jih odpirajmo s sistemskim preglejevalnikom.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package openwith
|
||||||
|
:defer t
|
||||||
|
:config
|
||||||
|
(setq openwith-associations '(("\\.pdf\\'" "xdg-open" (file))))
|
||||||
|
(openwith-mode t))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* ORG
|
||||||
|
|
||||||
Orgmode je način, v katerem je spisan tale dokument. Orgmode je marsikaj, lahko bi ga pa strnili v razširitev navadnega (plain) teksta.
|
Orgmode je način, v katerem je spisan tale dokument. Orgmode je marsikaj, lahko bi ga pa strnili v razširitev navadnega (plain) teksta.
|
||||||
|
|
||||||
|
@ -380,7 +455,7 @@ Koledarski teden naj se začne s ponedeljkom, kot je pri nas konvencija.
|
||||||
(setq calendar-week-start-day 1)
|
(setq calendar-week-start-day 1)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Diagrami
|
** Diagrami
|
||||||
|
|
||||||
Razširitev orgmode z diagramiranje preko [[https://graphviz.org/docs/layouts/dot/][DOT]] ter [[https://ditaa.sourceforge.net/#usage][ditaa]].
|
Razširitev orgmode z diagramiranje preko [[https://graphviz.org/docs/layouts/dot/][DOT]] ter [[https://ditaa.sourceforge.net/#usage][ditaa]].
|
||||||
|
|
||||||
|
@ -406,7 +481,7 @@ Delovanje tega paketa je odvisno od globalne namestitve javascript paketa z npm:
|
||||||
(scheme . t))))
|
(scheme . t))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Stanja opravil
|
** Stanja opravil
|
||||||
|
|
||||||
Stanja opravil. Stanja (v naslovih) menjamo s ~S-<levo>~ in ~S-<desno>~.
|
Stanja opravil. Stanja (v naslovih) menjamo s ~S-<levo>~ in ~S-<desno>~.
|
||||||
|
|
||||||
|
@ -415,7 +490,7 @@ Stanja opravil. Stanja (v naslovih) menjamo s ~S-<levo>~ in ~S-<desno>~.
|
||||||
'((sequence "TODO" "V DELU" "TESTIRANJE" "DOKUMENTIRANJE" "KONČANO"))))
|
'((sequence "TODO" "V DELU" "TESTIRANJE" "DOKUMENTIRANJE" "KONČANO"))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Nemoteno pisanje
|
** Nemoteno pisanje
|
||||||
|
|
||||||
Način ~writeroom-mode~ omogoča nemoteno pisanje; trenutni buffer raztegne čez cel zaslon in v sredino centrira širinsko-omejen tekst. Tako buffer izgleda bolj kot popisan list papirja.
|
Način ~writeroom-mode~ omogoča nemoteno pisanje; trenutni buffer raztegne čez cel zaslon in v sredino centrira širinsko-omejen tekst. Tako buffer izgleda bolj kot popisan list papirja.
|
||||||
|
|
||||||
|
@ -426,7 +501,7 @@ Način ~writeroom-mode~ omogoča nemoteno pisanje; trenutni buffer raztegne čez
|
||||||
:hook ((org-mode . (lambda () (display-line-numbers-mode -1)))))
|
:hook ((org-mode . (lambda () (display-line-numbers-mode -1)))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Sinhronizacija koledarjev
|
** Sinhronizacija koledarjev
|
||||||
|
|
||||||
Paket ~org-caldav~ omogoča sinhronizacijo koledarskih dogodkov v org dokumente.
|
Paket ~org-caldav~ omogoča sinhronizacijo koledarskih dogodkov v org dokumente.
|
||||||
TODO popravi/preveri delovanje?
|
TODO popravi/preveri delovanje?
|
||||||
|
@ -447,7 +522,7 @@ TODO popravi/preveri delovanje?
|
||||||
:inbox "~/org/koledarji/megla-in.org"))))
|
:inbox "~/org/koledarji/megla-in.org"))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Izgled
|
** Izgled
|
||||||
|
|
||||||
Za šminko olepšamo predpone (pod)poglavij v simbole namesto vrst zvezdic.
|
Za šminko olepšamo predpone (pod)poglavij v simbole namesto vrst zvezdic.
|
||||||
|
|
||||||
|
@ -503,7 +578,17 @@ Naslov dokumenta ter naslove in podnaslove prikaži z drugimi pisavami in veliko
|
||||||
`(org-document-title ((t (,@headline ,@variable-tuple :height 2.0 :underline nil))))))
|
`(org-document-title ((t (,@headline ,@variable-tuple :height 2.0 :underline nil))))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Izvoz
|
(lepši) zamiki naslovov. Potrebuje ~svg-lib~.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
;(use-package svg-lib :defer t)
|
||||||
|
;(use-package org-margin
|
||||||
|
; :after org svg-lib
|
||||||
|
; :vc "https://github.com/rougier/org-margin"
|
||||||
|
; :init (org-margin-mode 1))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Izvoz
|
||||||
|
|
||||||
V HTML org izvozu obarvaj bloke kode.
|
V HTML org izvozu obarvaj bloke kode.
|
||||||
|
|
||||||
|
@ -511,7 +596,7 @@ V HTML org izvozu obarvaj bloke kode.
|
||||||
(use-package htmlize :after org-mode :defer t)
|
(use-package htmlize :after org-mode :defer t)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Grafični vmesnik
|
* Grafični vmesnik
|
||||||
|
|
||||||
Barvna tema je [[https://github.com/greduan/emacs-theme-gruvbox][gruvbox]], v varjanti ~gruvbox-dark-soft~.
|
Barvna tema je [[https://github.com/greduan/emacs-theme-gruvbox][gruvbox]], v varjanti ~gruvbox-dark-soft~.
|
||||||
|
|
||||||
|
@ -538,7 +623,7 @@ Uporabimo nerd ikone. ~POZOR~ pisavo naložimo z ukazom ~M-x nerd-icons-install-
|
||||||
;(use-package all-the-icons)
|
;(use-package all-the-icons)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Drsenje (skrolanje)
|
** Drsenje (skrolanje)
|
||||||
|
|
||||||
Omogočimo gladko piksel skrolanje, v emacsu od verzije 29 dalje in nastavimo dve opciji, ki sta skopirani od drugje in za njih nevem kaj počneta. Mislim da vpivata na to, kako je, ko pridrsaš do dna okna.
|
Omogočimo gladko piksel skrolanje, v emacsu od verzije 29 dalje in nastavimo dve opciji, ki sta skopirani od drugje in za njih nevem kaj počneta. Mislim da vpivata na to, kako je, ko pridrsaš do dna okna.
|
||||||
|
|
||||||
|
@ -549,7 +634,7 @@ Omogočimo gladko piksel skrolanje, v emacsu od verzije 29 dalje in nastavimo dv
|
||||||
(setq scroll-margin 8)
|
(setq scroll-margin 8)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Prihranimo prostor
|
** Prihranimo prostor
|
||||||
|
|
||||||
Nekaj prostora prihranimo z umikom menija in orodne vrstice, iz katere tudi umaknemo ikone.
|
Nekaj prostora prihranimo z umikom menija in orodne vrstice, iz katere tudi umaknemo ikone.
|
||||||
|
|
||||||
|
@ -585,24 +670,10 @@ Zmanjšamo razmike med okni.
|
||||||
(window-divider-mode t)
|
(window-divider-mode t)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Tekst
|
* Tekst
|
||||||
|
|
||||||
V široko paleto funkcionalnosti emacsa spada tudi urejanje navadnega teksta.
|
V široko paleto funkcionalnosti emacsa spada tudi urejanje navadnega teksta.
|
||||||
|
|
||||||
Za začetek nastavimo uporabo dveh navadnih presledkov za tab zamik.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(setq-default tab-width 2)
|
|
||||||
(setq-default indent-tabs-mode nil)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
Vklopimo avtomatsko zapiranje oklepajev ter emacsovo avtomatsko zamikanje.
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
|
||||||
(electric-indent-mode 1)
|
|
||||||
(electric-pair-mode 1)
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
Tekst naj se prelamlja ob robu okna! Skrolanje na stran je naporno...
|
Tekst naj se prelamlja ob robu okna! Skrolanje na stran je naporno...
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
@ -632,9 +703,8 @@ In pa nenazadnje, čeravno je ORGMODE superioren, naložimo še podporo za [[htt
|
||||||
(use-package markdown-mode :mode "\\.(md|markdown)\\'")
|
(use-package markdown-mode :mode "\\.(md|markdown)\\'")
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Splošne emacs razširitve
|
* Splošne emacs razširitve
|
||||||
|
* Delo s projekti
|
||||||
** Delo s projekti
|
|
||||||
|
|
||||||
Knjižnica za projektne interakcije. Vsak projekt je svoja git zbirka. Lajša menjavo med projekti, iskanje datotek v posameznem projektu in tako dalje.
|
Knjižnica za projektne interakcije. Vsak projekt je svoja git zbirka. Lajša menjavo med projekti, iskanje datotek v posameznem projektu in tako dalje.
|
||||||
|
|
||||||
|
@ -678,7 +748,7 @@ Datoteke sortiraj glede na nedavno uporabljene bufferje in nato nedavno odprte.
|
||||||
(use-package counsel-projectile :after projectile)
|
(use-package counsel-projectile :after projectile)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Oblikovanje teksta
|
** Oblikovanje teksta
|
||||||
|
|
||||||
[[https://editorconfig.org/][Editorconfig]] omogoča nastavljanje oblikovanje tekstovnih fajlov na ravni posameznega projekta.
|
[[https://editorconfig.org/][Editorconfig]] omogoča nastavljanje oblikovanje tekstovnih fajlov na ravni posameznega projekta.
|
||||||
|
|
||||||
|
@ -688,7 +758,7 @@ Datoteke sortiraj glede na nedavno uporabljene bufferje in nato nedavno odprte.
|
||||||
(editorconfig-mode 1))
|
(editorconfig-mode 1))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Datotečno drevo
|
** Datotečno drevo
|
||||||
|
|
||||||
~treemacs~ nudi vizualni drevesni pregled nad datotekami in direktoriji za posamezni projekt.
|
~treemacs~ nudi vizualni drevesni pregled nad datotekami in direktoriji za posamezni projekt.
|
||||||
Vklop je nastavljen na ~SPC t~. Številke vrstic nas v drevesnem bufferju ne zanima. Pridodamo še paket za ~projectile~ podporo.
|
Vklop je nastavljen na ~SPC t~. Številke vrstic nas v drevesnem bufferju ne zanima. Pridodamo še paket za ~projectile~ podporo.
|
||||||
|
@ -704,11 +774,24 @@ Vklop je nastavljen na ~SPC t~. Številke vrstic nas v drevesnem bufferju ne zan
|
||||||
(use-package treemacs-projectile :after treemacs)
|
(use-package treemacs-projectile :after treemacs)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Programiranje
|
* Programiranje
|
||||||
|
** Splošno
|
||||||
|
|
||||||
*** Splošno
|
Za začetek nastavimo uporabo dveh navadnih presledkov za tab zamik.
|
||||||
|
|
||||||
Samodejno zapiranje oklepajev.
|
#+begin_src emacs-lisp
|
||||||
|
(setq-default tab-width 2)
|
||||||
|
(setq-default indent-tabs-mode nil)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Vklopimo avtomatsko zapiranje oklepajev ter emacsovo avtomatsko zamikanje.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(electric-indent-mode 1)
|
||||||
|
; (electric-pair-mode 1)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
Samodejno zapiranje oklepajev. Tega ne rabimo ker imamo ~electric-pair-mode~, ki je vgrajen v emacs in lepše obravnava zamik teksta ob vstopu v novo vrstico.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package smartparens-mode
|
(use-package smartparens-mode
|
||||||
|
@ -741,7 +824,13 @@ Avtomatsko oblikovanje kode za razne programske jezike. Kličemo ga ročno. TODO
|
||||||
(use-package format-all :defer t)
|
(use-package format-all :defer t)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** GIT
|
~direnv~ integracija omogoča uporabo definiranih okoljskih spremenljivk na posameznih projektih (recimo vključitev drush v PATH za drupal).
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package direnv :config (direnv-mode))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** GIT
|
||||||
|
|
||||||
~magit~ paket je super za delo z git sistemom za deljeno verzioniranje kode ali drugih podatkov.
|
~magit~ paket je super za delo z git sistemom za deljeno verzioniranje kode ali drugih podatkov.
|
||||||
|
|
||||||
|
@ -751,18 +840,37 @@ Avtomatsko oblikovanje kode za razne programske jezike. Kličemo ga ročno. TODO
|
||||||
:general
|
:general
|
||||||
(start/leader-keys
|
(start/leader-keys
|
||||||
"g" '(:ignore t :wk "magit")
|
"g" '(:ignore t :wk "magit")
|
||||||
"g s" 'magit-status))
|
"g s" 'magit-status)
|
||||||
|
:config
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
Z ~magit-todos~ si malo olajšamo spremlajnje TODO-jev v drevesu kode.
|
Sledeča konfiguracija prepreči zamrznitev ko stage-amo spremembe preko TRAMP povezave.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package magit-todos
|
(defun my--tramp-send-command--workaround-stty-icanon-bug (conn-vec orig-command &rest args)
|
||||||
:after magit
|
"See: https://github.com/magit/magit/issues/4720"
|
||||||
:config (magit-todos-mode 1))
|
(let ((command
|
||||||
|
(if (string= "stty -icrnl -icanon min 1 time 0" orig-command)
|
||||||
|
"stty -icrnl"
|
||||||
|
orig-command)))
|
||||||
|
(append (list conn-vec command) args)))
|
||||||
|
|
||||||
|
(defun my--tramp-send-command--workaround-stty-icanon-bug--filter-args (args)
|
||||||
|
(apply #'my--tramp-send-command--workaround-stty-icanon-bug args))
|
||||||
|
|
||||||
|
(advice-add 'tramp-send-command :filter-args
|
||||||
|
#'my--tramp-send-command--workaround-stty-icanon-bug--filter-args))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Tree-sitter
|
Z ~magit-todos~ si malo olajšamo spremlajnje TODO-jev v drevesu kode. Zaenkrat onemogočeno, zaradi težavo preko TRAMP povezav.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
;(use-package magit-todos
|
||||||
|
; :after magit
|
||||||
|
; :config (magit-todos-mode 1))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Tree-sitter
|
||||||
|
|
||||||
Tree-sitter je knjižnica za inkrementalno razčlenjevanje (parsing) programske kode. Na podlagi definicij slovnic za različne programske jezike (namestimo jih z ~M-x treesit-install-language-grammar~) omogoča obarvanja kode, priporočila in podobno. To počne nekoliko hitreje kot klasični načini. Tukaj so definicije nadomestnih treesit načinov za določene programske jezike.
|
Tree-sitter je knjižnica za inkrementalno razčlenjevanje (parsing) programske kode. Na podlagi definicij slovnic za različne programske jezike (namestimo jih z ~M-x treesit-install-language-grammar~) omogoča obarvanja kode, priporočila in podobno. To počne nekoliko hitreje kot klasični načini. Tukaj so definicije nadomestnih treesit načinov za določene programske jezike.
|
||||||
|
|
||||||
|
@ -790,7 +898,7 @@ Spodaj pa je primer nastavitev ročnih asociacij s fajli, za menjavo z klasični
|
||||||
; (add-to-list 'auto-mode-alist item))
|
; (add-to-list 'auto-mode-alist item))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** LISP
|
** LISP
|
||||||
|
|
||||||
To poglavje zajema nastavitve raznih LISP dialektov.
|
To poglavje zajema nastavitve raznih LISP dialektov.
|
||||||
|
|
||||||
|
@ -804,8 +912,12 @@ Vsi LISPi, tudi vgrajeni emacs-lisp, so bolj berljivi z mavričnim obarvanjem ok
|
||||||
~Geiser~ lajša delo s scheme jeziki, nastavljeno za [[https://www.gnu.org/software/guile/][GNU Guile]]. Omogoča recimo povezovanje v REPL (read-eval-print-loope).
|
~Geiser~ lajša delo s scheme jeziki, nastavljeno za [[https://www.gnu.org/software/guile/][GNU Guile]]. Omogoča recimo povezovanje v REPL (read-eval-print-loope).
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
(use-package scheme-mode
|
||||||
|
:ensure f
|
||||||
|
:mode "\\.scm\\'")
|
||||||
|
|
||||||
(use-package geiser-guile
|
(use-package geiser-guile
|
||||||
:mode "\\.scm\\'"
|
:defer t
|
||||||
:general
|
:general
|
||||||
(start/leader-keys
|
(start/leader-keys
|
||||||
:infix "s"
|
:infix "s"
|
||||||
|
@ -834,7 +946,15 @@ Kdaj delam tudi z [[https://racket-lang.org/][racket]].
|
||||||
(use-package racket-mode :mode "\\.rkt\\'")
|
(use-package racket-mode :mode "\\.rkt\\'")
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Spletno
|
Poskusimo še common lisp - SLIME!
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package slime
|
||||||
|
:defer t
|
||||||
|
:config (setq inferior-lisp-program "/usr/bin/sbcl"))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Spletno
|
||||||
|
|
||||||
Način za obarvanje html, twig in podobne kode (jinja?) se imenuje ~web-mode~.
|
Način za obarvanje html, twig in podobne kode (jinja?) se imenuje ~web-mode~.
|
||||||
Dodamo še pripadajoč paket za olepševanje kode (avtomatsko prilagoditev zamikov kode).
|
Dodamo še pripadajoč paket za olepševanje kode (avtomatsko prilagoditev zamikov kode).
|
||||||
|
@ -865,7 +985,7 @@ Pri spletnem programiranju zelo prav pride tudi [[https://github.com/pashky/rest
|
||||||
(use-package restclient :defer t)
|
(use-package restclient :defer t)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
**** PHP
|
*** PHP
|
||||||
|
|
||||||
Podpora za programiranje s PHP domačo spletno stranjo oz. hipertekstualnim predprocesorjem.
|
Podpora za programiranje s PHP domačo spletno stranjo oz. hipertekstualnim predprocesorjem.
|
||||||
|
|
||||||
|
@ -881,7 +1001,9 @@ Bližnjica za cache rebuild na drupalu (dela tudi preko SSH!).
|
||||||
(start/leader-keys
|
(start/leader-keys
|
||||||
"d d" (defun drupal-cache-rebuild ()
|
"d d" (defun drupal-cache-rebuild ()
|
||||||
(interactive)
|
(interactive)
|
||||||
(shell-command "drush cr"))))
|
;(shell-command "drush cr")
|
||||||
|
(projectile-run-shell-command-in-root "./vendor/bin/drush cr")
|
||||||
|
)))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
Sicer obstaja tudi način ki lajša delanje z drupalom.
|
Sicer obstaja tudi način ki lajša delanje z drupalom.
|
||||||
|
@ -890,7 +1012,7 @@ Sicer obstaja tudi način ki lajša delanje z drupalom.
|
||||||
(use-package drupal-mode :after php-mode)
|
(use-package drupal-mode :after php-mode)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
**** Javascript
|
*** Javascript
|
||||||
|
|
||||||
Najprej nastavimo zamike.
|
Najprej nastavimo zamike.
|
||||||
|
|
||||||
|
@ -924,7 +1046,7 @@ Vue način lajša razvoj z [[https://vuejs.org/][vue javascript ogrodjem]]. Inte
|
||||||
(use-package rjsx-mode :after js2-mode)
|
(use-package rjsx-mode :after js2-mode)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Python
|
** Python
|
||||||
|
|
||||||
Zamik na 2 presledka.
|
Zamik na 2 presledka.
|
||||||
|
|
||||||
|
@ -952,7 +1074,7 @@ Nastavljen naj bo na ~python3~.
|
||||||
(setq python-shell-interpreter "python3")))))
|
(setq python-shell-interpreter "python3")))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Živo kodiranje
|
** Živo kodiranje
|
||||||
|
|
||||||
[[https://supercollider.github.io/][supercollider]] je platforma za zvočno sintezo in algoritmično kompozicijo. Uporabna tudi za živo kodiranje. Vključuje svoje integrirano razvijalsko okolje, integrira se pa tudi z emacsom.
|
[[https://supercollider.github.io/][supercollider]] je platforma za zvočno sintezo in algoritmično kompozicijo. Uporabna tudi za živo kodiranje. Vključuje svoje integrirano razvijalsko okolje, integrira se pa tudi z emacsom.
|
||||||
|
|
||||||
|
@ -1036,7 +1158,7 @@ Nastaviti mu moramo lokacijo ~BootTidal.hs~ datoteke, ki jo lahko namestimo s [[
|
||||||
(global-set-key (kbd "C-M-.") #'sardine/stop-code)
|
(global-set-key (kbd "C-M-.") #'sardine/stop-code)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Konfiguracijski jeziki
|
** Konfiguracijski jeziki
|
||||||
|
|
||||||
YAML in TOML sta dva primera konfiguracijskih jezikov, s katerima kdaj delam.
|
YAML in TOML sta dva primera konfiguracijskih jezikov, s katerima kdaj delam.
|
||||||
|
|
||||||
|
@ -1045,13 +1167,13 @@ YAML in TOML sta dva primera konfiguracijskih jezikov, s katerima kdaj delam.
|
||||||
(use-package toml-mode :mode "\\.toml\\'")
|
(use-package toml-mode :mode "\\.toml\\'")
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Arduino
|
** Arduino
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package arduino-mode :mode "\\.ino\\'")
|
(use-package arduino-mode :mode "\\.ino\\'")
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
*** Jezikovni strežnik
|
** Jezikovni strežnik
|
||||||
|
|
||||||
Podpora za protokol jezikovnega strežnika (LSP - Language Server Protocol) precej izboljša izkušnjo programiranja s priporočevanjem in dopolnjevanjem. Emacs spremeni v IDE (integrirano razvojno okolje).
|
Podpora za protokol jezikovnega strežnika (LSP - Language Server Protocol) precej izboljša izkušnjo programiranja s priporočevanjem in dopolnjevanjem. Emacs spremeni v IDE (integrirano razvojno okolje).
|
||||||
|
|
||||||
|
@ -1070,20 +1192,20 @@ S sledečimi nastavitvami pospešimo delovanje.
|
||||||
(setq read-process-output-max (* 1024 1024))) ;; 1mb
|
(setq read-process-output-max (* 1024 1024))) ;; 1mb
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** E-pošta
|
* E-pošta
|
||||||
|
|
||||||
Emacs že vključuje ~mu4e~ ([[https://www.djcbsoftware.nl/code/mu/][mu]] za emacs), modul ki omogoča brskanje po prejeti e-pošti.
|
Emacs že vključuje ~mu4e~ ([[https://www.djcbsoftware.nl/code/mu/][mu]] za emacs), modul ki omogoča brskanje po prejeti e-pošti.
|
||||||
Pred uporabo je treba konfigurirati nekaj več stvari, potrebujemo recimo ~isync~ za pridobivanje pošte (tudi starejši ~mbsync~ je vredu), program ~mu~ za indeksiranje prejetih mejlov, oba pa tudi primerno nastavljena.
|
Pred uporabo je treba konfigurirati nekaj več stvari, potrebujemo recimo ~isync~ za pridobivanje pošte (tudi starejši ~mbsync~ je vredu), program ~mu~ za indeksiranje prejetih mejlov, oba pa tudi primerno nastavljena.
|
||||||
|
|
||||||
*** isync
|
** isync
|
||||||
|
|
||||||
TODO
|
TODO
|
||||||
|
|
||||||
*** mu
|
** mu
|
||||||
|
|
||||||
TODO
|
TODO
|
||||||
|
|
||||||
*** mu4e
|
** mu4e
|
||||||
|
|
||||||
Vključimo paket in nastavimo ukaz za pridobivanje mejlov, ki ga sproži ~mu4e~.
|
Vključimo paket in nastavimo ukaz za pridobivanje mejlov, ki ga sproži ~mu4e~.
|
||||||
|
|
||||||
|
@ -1114,7 +1236,7 @@ Preglednost lahko izboljšamo s paketom za ikone.
|
||||||
|
|
||||||
TODO spisat dodatne konfiguracije, tega še ne uporabljam res.
|
TODO spisat dodatne konfiguracije, tega še ne uporabljam res.
|
||||||
|
|
||||||
*** Primeri za (i)zgled
|
** Primeri za (i)zgled
|
||||||
|
|
||||||
Zanimivi paketi:
|
Zanimivi paketi:
|
||||||
- dashboard: https://github.com/rougier/mu4e-dashboard
|
- dashboard: https://github.com/rougier/mu4e-dashboard
|
||||||
|
@ -1126,3 +1248,11 @@ Pedenanje izgleda:
|
||||||
- mu4e look & feel: https://www.reddit.com/r/emacs/comments/mzgsm0/mu4e_look_and_feel/
|
- mu4e look & feel: https://www.reddit.com/r/emacs/comments/mzgsm0/mu4e_look_and_feel/
|
||||||
- nano-mu4e: https://github.com/rougier/nano-emacs/blob/master/nano-mu4e.el
|
- nano-mu4e: https://github.com/rougier/nano-emacs/blob/master/nano-mu4e.el
|
||||||
- system crafters o emacs emailu: https://www.youtube.com/watch?v=yZRyEhi4y44&list=PLEoMzSkcN8oM-kA19xOQc8s0gr0PpFGJQ
|
- system crafters o emacs emailu: https://www.youtube.com/watch?v=yZRyEhi4y44&list=PLEoMzSkcN8oM-kA19xOQc8s0gr0PpFGJQ
|
||||||
|
|
||||||
|
* Razno
|
||||||
|
|
||||||
|
Zone nyancat!
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package zone-nyan :defer t)
|
||||||
|
#+end_src
|
||||||
|
|
105
.emacs.d/init.el
105
.emacs.d/init.el
|
@ -1,3 +1,4 @@
|
||||||
|
;;; -*- lexical-binding: t -*-
|
||||||
;; Naloži konfiguracije iz ORG datoteke
|
;; Naloži konfiguracije iz ORG datoteke
|
||||||
(org-babel-load-file "~/.emacs.d/config.org")
|
(org-babel-load-file "~/.emacs.d/config.org")
|
||||||
|
|
||||||
|
@ -13,56 +14,6 @@
|
||||||
; :config
|
; :config
|
||||||
; (rg-enable-default-bindings))
|
; (rg-enable-default-bindings))
|
||||||
|
|
||||||
;; Pomoc
|
|
||||||
(use-package helpful :defer t)
|
|
||||||
|
|
||||||
;; Pomoc za keybinde
|
|
||||||
(use-package which-key
|
|
||||||
:defer t
|
|
||||||
:config
|
|
||||||
;; Allow C-h to trigger which-key before it is done automatically
|
|
||||||
(setq which-key-show-early-on-C-h t)
|
|
||||||
;; make sure which-key doesn't show normally but refreshes quickly after it is
|
|
||||||
;; triggered.
|
|
||||||
(setq which-key-idle-delay 0.4)
|
|
||||||
(setq which-key-idle-secondary-delay 0.05)
|
|
||||||
(which-key-mode))
|
|
||||||
|
|
||||||
(use-package zone-nyan :defer t)
|
|
||||||
|
|
||||||
;; Backup fajli emacsa
|
|
||||||
(setq
|
|
||||||
backup-by-copying t ; don't clobber symlinks
|
|
||||||
backup-directory-alist
|
|
||||||
`(("." . ,(concat user-emacs-directory "backups")))
|
|
||||||
backup-directory-alist
|
|
||||||
`(("." . ,(concat user-emacs-directory "saves")))
|
|
||||||
delete-old-versions t
|
|
||||||
kept-new-versions 6
|
|
||||||
kept-old-versions 2
|
|
||||||
version-control t) ; use versioned backups
|
|
||||||
|
|
||||||
;; Ne delaj lock fajlov (smetijo namrec)
|
|
||||||
(setq create-lockfiles nil)
|
|
||||||
|
|
||||||
;; File asociacije
|
|
||||||
(use-package openwith
|
|
||||||
:defer t
|
|
||||||
:config
|
|
||||||
(setq openwith-associations '(("\\.pdf\\'" "xdg-open" (file))))
|
|
||||||
(openwith-mode t))
|
|
||||||
|
|
||||||
;; Kolaborativno urejanje
|
|
||||||
(use-package crdt
|
|
||||||
:defer t
|
|
||||||
:general
|
|
||||||
(start/leader-keys
|
|
||||||
"c" '(:ignore t :wk "crdt")
|
|
||||||
"c c" 'crdt-connect
|
|
||||||
"c u" 'crdt-list-users
|
|
||||||
"c s" 'crdt-share-buffer
|
|
||||||
"c b" 'crdt-list-buffers))
|
|
||||||
|
|
||||||
;; ELISP test
|
;; ELISP test
|
||||||
(defun odpri-dnevnik ()
|
(defun odpri-dnevnik ()
|
||||||
(interactive)
|
(interactive)
|
||||||
|
@ -98,28 +49,29 @@
|
||||||
(setq dashboard-set-init-info t))
|
(setq dashboard-set-init-info t))
|
||||||
|
|
||||||
;; Bolj fajni IELM REPL
|
;; Bolj fajni IELM REPL
|
||||||
(use-package ielm
|
|
||||||
:defer t
|
|
||||||
:hook (ielm-mode-hook . (lambda ()
|
|
||||||
(eldoc-mode)
|
|
||||||
;(paredit-mode)
|
|
||||||
|
|
||||||
(defun g-ielm-init-history ()
|
(defun g-ielm-init-history ()
|
||||||
|
"Persistent ielm history."
|
||||||
(let ((path (expand-file-name "ielm/history" user-emacs-directory)))
|
(let ((path (expand-file-name "ielm/history" user-emacs-directory)))
|
||||||
(make-directory (file-name-directory path) t)
|
(make-directory (file-name-directory path) t)
|
||||||
(setq-local comint-input-ring-file-name path))
|
(setq-local comint-input-ring-file-name path))
|
||||||
(setq-local comint-input-ring-size 10000)
|
(setq-local comint-input-ring-size 10000)
|
||||||
(setq-local comint-input-ignoredups t)
|
(setq-local comint-input-ignoredups t)
|
||||||
(comint-read-input-ring))
|
(comint-read-input-ring))
|
||||||
(g-ielm-init-history)
|
|
||||||
(defun g-ielm-write-history (&rest _args)
|
(defun g-ielm-write-history (&rest _args)
|
||||||
(with-file-modes #o600
|
(with-file-modes #o600
|
||||||
(comint-write-input-ring)))
|
(comint-write-input-ring)))
|
||||||
|
(use-package ielm
|
||||||
|
:defer t
|
||||||
|
:hook (ielm-mode-hook . (lambda ()
|
||||||
|
(eldoc-mode)
|
||||||
|
;(paredit-mode)
|
||||||
|
(g-ielm-init-history)))
|
||||||
|
:config
|
||||||
(advice-add 'ielm-send-input :after 'g-ielm-write-history)
|
(advice-add 'ielm-send-input :after 'g-ielm-write-history)
|
||||||
(define-key inferior-emacs-lisp-mode-map (kbd "C-l")
|
(define-key inferior-emacs-lisp-mode-map (kbd "C-l")
|
||||||
'comint-clear-buffer)
|
'comint-clear-buffer)
|
||||||
(define-key inferior-emacs-lisp-mode-map (kbd "C-r")
|
(define-key inferior-emacs-lisp-mode-map (kbd "C-r")
|
||||||
'helm-comint-input-ring))))
|
'helm-comint-input-ring))
|
||||||
|
|
||||||
;; Sinhronizacija podnapisov (uporablja mpv!)
|
;; Sinhronizacija podnapisov (uporablja mpv!)
|
||||||
(use-package subed
|
(use-package subed
|
||||||
|
@ -171,19 +123,21 @@
|
||||||
"/home/g1smo/rs/org/irs_old.org" "/home/g1smo/rs/org/kaki.org"
|
"/home/g1smo/rs/org/irs_old.org" "/home/g1smo/rs/org/kaki.org"
|
||||||
"/home/g1smo/rs/org/prepoznava-komadov.org"))
|
"/home/g1smo/rs/org/prepoznava-komadov.org"))
|
||||||
'(package-selected-packages
|
'(package-selected-packages
|
||||||
'(mu4e org-mode restclient php-ts-mode org-bullets magit-todos
|
'(scheme-mode direnv svg-lib slime org-pandoc-import mu4e org-mode
|
||||||
|
restclient php-ts-mode org-bullets magit-todos
|
||||||
treesit-auto eat zone-nyan yaml-mode writeroom-mode
|
treesit-auto eat zone-nyan yaml-mode writeroom-mode
|
||||||
which-key web-mode web-beautify vue-mode undo-tree
|
which-key web-mode web-beautify vue-mode undo-tree
|
||||||
treemacs-projectile treemacs-evil toml-mode tidal subed smex
|
treemacs-projectile treemacs-evil toml-mode tidal
|
||||||
smartparens sclang-extensions rjsx-mode rg
|
subed smex smartparens sclang-extensions rjsx-mode rg
|
||||||
rainbow-delimiters racket-mode quelpa-use-package pyvenv
|
rainbow-delimiters racket-mode quelpa-use-package
|
||||||
org-caldav openwith ob-mermaid mu4e-marker-icons
|
pyvenv org-caldav openwith ob-mermaid
|
||||||
mu4e-dashboard magit lsp-mode htmlize helpful guix
|
mu4e-marker-icons mu4e-dashboard magit lsp-mode
|
||||||
gruvbox-theme general geiser-guile format-all flycheck
|
htmlize helpful guix gruvbox-theme general
|
||||||
fluxus-mode extempore-mode evil-org evil-collection
|
geiser-guile format-all flycheck fluxus-mode
|
||||||
editorconfig drupal-mode doom-modeline dashboard crdt
|
extempore-mode evil-org evil-collection editorconfig
|
||||||
counsel-projectile company benchmark-init arduino-mode
|
drupal-mode doom-modeline dashboard crdt
|
||||||
all-the-icons 2bit))
|
counsel-projectile company benchmark-init
|
||||||
|
arduino-mode all-the-icons 2bit))
|
||||||
'(tool-bar-mode nil)
|
'(tool-bar-mode nil)
|
||||||
'(warning-minimum-level :error)
|
'(warning-minimum-level :error)
|
||||||
'(which-key-mode t))
|
'(which-key-mode t))
|
||||||
|
@ -198,16 +152,17 @@
|
||||||
'(line-number-current-line ((t (:background "#32302f" :foreground "#fe8019"))))
|
'(line-number-current-line ((t (:background "#32302f" :foreground "#fe8019"))))
|
||||||
'(org-block ((t (:extend t :background "#3c3836"))))
|
'(org-block ((t (:extend t :background "#3c3836"))))
|
||||||
'(org-code ((t (:foreground "#dd6f48"))))
|
'(org-code ((t (:foreground "#dd6f48"))))
|
||||||
'(org-document-title ((t (:underline nil :weight bold :height 2.0 :family "Sans Serif"))))
|
'(org-document-title ((t (:inherit default :weight bold :family "Sans Serif" :height 2.0 :underline nil))))
|
||||||
'(org-level-1 ((t (:extend nil :weight bold :height 1.75 :family "Sans Serif"))))
|
'(org-level-1 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.75))))
|
||||||
'(org-level-2 ((t (:extend nil :weight bold :height 1.45 :family "Sans Serif"))))
|
'(org-level-2 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.45))))
|
||||||
'(org-level-3 ((t (:extend nil :weight bold :height 1.25 :family "Sans Serif"))))
|
'(org-level-3 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.25))))
|
||||||
'(org-level-4 ((t (:extend nil :weight bold :height 1.1 :family "Sans Serif"))))
|
'(org-level-4 ((t (:inherit default :weight bold :family "Sans Serif" :height 1.1))))
|
||||||
'(org-level-5 ((t (:extend nil :weight bold :family "Sans Serif"))))
|
'(org-level-5 ((t (:extend nil :weight bold :family "Sans Serif"))))
|
||||||
'(org-level-6 ((t (:inherit default :weight bold :foreground "#DCDCCC" :family "Sans Serif"))))
|
'(org-level-6 ((t (:inherit default :weight bold :foreground "#DCDCCC" :family "Sans Serif"))))
|
||||||
'(org-level-7 ((t (:inherit default :weight bold :foreground "#DCDCCC" :family "Sans Serif"))))
|
'(org-level-7 ((t (:inherit default :weight bold :foreground "#DCDCCC" :family "Sans Serif"))))
|
||||||
'(org-level-8 ((t (:inherit default :weight bold :foreground "#DCDCCC" :family "Sans Serif"))))
|
'(org-level-8 ((t (:inherit default :weight bold :foreground "#DCDCCC" :family "Sans Serif"))))
|
||||||
'(org-verbatim ((t (:foreground "#fb4933")))))
|
'(org-verbatim ((t (:foreground "#fb4933"))))
|
||||||
|
'(window-divider-first-pixel ((t (:foreground "#626262")))))
|
||||||
|
|
||||||
|
|
||||||
;; supercollider mode load
|
;; supercollider mode load
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
("~/projekti/jugofuturizem/" "~/sredstva/dotfiles/" "/sshx:jurijp@dev.radiostudent.si:/var/www/new.radiostudent.si/" "~/projekti/glasbeni-indeks/" "~/projekti/PIXELSYNTH/" "~/projekti/hm/" "~/kompot/Kompot/" "~/projekti/radio-muse/" "~/projekti/radio-muse/web/themes/custom/indiere2/")
|
("~/sredstva/dotfiles/" "~/projekti/kegel/" "~/projekti/jugofuturizem/" "~/projekti/mobilizon/" "~/projekti/hm/" "~/projekti/PIfcamp 2021/" "/sshx:jurijp@dev.radiostudent.si:/var/www/new.radiostudent.si/" "~/projekti/glasbeni-indeks/" "~/projekti/PIXELSYNTH/" "~/kompot/Kompot/" "~/projekti/radio-muse/" "~/projekti/radio-muse/web/themes/custom/indiere2/")
|
|
@ -70,8 +70,8 @@ disk "/home" {
|
||||||
}
|
}
|
||||||
|
|
||||||
ipv6 {
|
ipv6 {
|
||||||
format_up = "IPv6 "
|
format_up = " IPv6"
|
||||||
format_down = "IPv6 "
|
format_down = " IPv6"
|
||||||
}
|
}
|
||||||
|
|
||||||
memory {
|
memory {
|
||||||
|
|
6
.zshrc
6
.zshrc
|
@ -142,7 +142,7 @@ alias imgcrop1920="mogrify -resize 1920x1920 "
|
||||||
|
|
||||||
|
|
||||||
# Za LXD!
|
# Za LXD!
|
||||||
if command -v go; then
|
if command -v go &> /dev/null; then
|
||||||
export PATH="${PATH}:$(go env GOPATH)/bin:/sbin:/usr/sbin"
|
export PATH="${PATH}:$(go env GOPATH)/bin:/sbin:/usr/sbin"
|
||||||
fi
|
fi
|
||||||
#export LD_LIBRARY_PATH="$(go env GOPATH)/deps/dqlite/.libs/:$(go env GOPATH)/deps/raft/.libs/:${LD_LIBRARY_PATH}"
|
#export LD_LIBRARY_PATH="$(go env GOPATH)/deps/dqlite/.libs/:$(go env GOPATH)/deps/raft/.libs/:${LD_LIBRARY_PATH}"
|
||||||
|
@ -156,3 +156,7 @@ fi
|
||||||
# Terminal podpora
|
# Terminal podpora
|
||||||
alias termfix="TERM=rxvt-256color "
|
alias termfix="TERM=rxvt-256color "
|
||||||
#export TERM=rxvt-256color
|
#export TERM=rxvt-256color
|
||||||
|
|
||||||
|
export ANDROID_HOME="$HOME/Android/Sdk"
|
||||||
|
export PATH=$PATH:$ANDROID_HOME/emulator
|
||||||
|
export PATH=$PATH:$ANDROID_HOME/platform-tools
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 499 KiB |
Binary file not shown.
After Width: | Height: | Size: 3.1 MiB |
Loading…
Reference in New Issue